Commit Graph

20577 Commits

Author SHA1 Message Date
Frank Li
e76177f62a mingw.c: Use the O_BINARY flag to open files
On Windows, non-text files must be opened using the O_BINARY flag.
MinGW does this for us automatically, but Microsoft Visual C++
does not.  So let's be explicit.

Signed-off-by: Frank Li <lznuaa@gmail.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-19 12:11:05 +02:00
Frank Li
d84f77b0cc Test for WIN32 instead of __MINGW32_
The code which is conditional on MinGW32 is actually conditional on Windows.
Use the WIN32 symbol, which is defined by the MINGW32 and MSVC environments,
but not by Cygwin.

Signed-off-by: Frank Li <lznuaa@gmail.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-19 12:11:04 +02:00
Frank Li
8d7c8c95b6 Define SNPRINTF_SIZE_CORR=1 for Microsoft Visual C++
The Microsoft C runtime's vsnprintf function does not add NUL at
the end of the buffer.

Further, Microsoft deprecated vsnprintf in favor of _vsnprintf, so
add a #define to that end.

Signed-off-by: Frank Li <lznuaa@gmail.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-19 12:10:33 +02:00
Johannes Schindelin
1edac2172d MinGW means that we have gcc, so we can add gcc-specific compiler options
These were suggested by Junio at some stage.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-19 10:32:41 +02:00
Johannes Schindelin
95971f14a8 compat/mingw.c: Fix declaration after instruction
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-19 10:32:40 +02:00
Johannes Schindelin
0b79d7e978 Fix a few old-style function declarations in compat/
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-19 10:32:40 +02:00
Frank Li
3c150abb10 Avoid declaration after instruction
Microsoft Visual C++ does not understand this C99 style.

Signed-off-by: Frank Li <lznuaa@gmail.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-19 09:54:27 +02:00
Johannes Schindelin
7ea14c8f59 Merge 'work/symlink' into devel
This merges the (limited) symlink support into 4msysgit.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-18 01:49:37 +02:00
Johan 't Hart
4863902f4f Windows: mark newly-created dot files by fopen() as hidden
Files starting with a dot are considered "hidden", i.e. you have to ask
explicitely to see them.  On Windows, this is not done automatically, as
Windows has its own mechanism.

We already mark dot directories created by mkdir() and dot files created
by open() as hidden, so let's do that with fopen(), too (but only if the
file was just created, not when it already exists).

Naturally, we make this behavior optional on core.hideDotFiles.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Acked-by: Johannes Sixt <j6t@kdbg.org>
2009-08-14 13:38:20 +02:00
Johannes Schindelin
2328ceef54 Windows: mark newly-created files whose name starts with a dot as hidden
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Acked-by: Johannes Sixt <j6t@kdbg.org>
2009-08-14 13:38:20 +02:00
Johannes Schindelin
5d098f4e5f Document the core.hideDotFiles variable
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Acked-by: Johannes Sixt <j6t@kdbg.org>
2009-08-14 13:38:20 +02:00
Johan 't Hart
996ff4a9ae Make auto-hiding dot-files optional on Windows.
Although a file starting with a dot usually ought to be hidden,
there could be reasons users do not want it to happen automatically.

Original patch by Erik Faye-Lund.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Acked-by: Johannes Sixt <j6t@kdbg.org>
2009-08-14 13:38:20 +02:00
Johan 't Hart
8653dacef7 On Windows, mark directory hidden when starting with dot.
In Windows a file or directory starting with a dot is not
automatically hidden. So lets mark it as hidden when
such a directory is created.

This fixes msysGit issue 288.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Acked-by: Johannes Sixt <j6t@kdbg.org>
2009-08-14 13:38:07 +02:00
Johannes Schindelin
afb9111bac Fix style of multi-line comments
In git.git, we want multi-line comments between single /* and */
in a line.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-11 18:08:44 +02:00
Thorvald Natvig
ea20f40819 Symlink support
Add symlink support; with UAC, you may need administrator's privileges
to create symlinks, but you can at least read them.

As reparse points on Windows differentiate between file and directory
links, we just assume that file links are meant for the time being;
it might be very hard to determine the type before the target exists,
but it is thinkable to change the type on-the-fly.

A bridge to cross when we arrive there (read: something for somebody
to fix who actually has that problem).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-08-10 14:30:47 +02:00
Johannes Schindelin
069b288d1b Skip tests requiring 'iconv' when that is not found
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-07-29 22:21:55 +02:00
Erik Faye-Lund
ed04b5ce21 send-email: accept absolute path even on Windows
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-07-29 22:16:26 +02:00
Johannes Schindelin
198cb7c3f0 Handle http.* config variables pointing to files gracefully on Windows
On Windows, we would like to be able to have a default http.sslCAinfo
that points to an MSys path (i.e. relative to the installation root of
Git).  As Git is a MinGW program, it has to handle the conversion
of the MSys path into a MinGW32 path itself.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2009-07-29 22:15:40 +02:00
Johannes Schindelin
965329c18f Merge commit 'mingw/master' into work/1.6.4 2009-07-29 21:44:37 +02:00
Johannes Sixt
b844a3e265 Merge branch 'master' of git://repo.or.cz/alt-git 2009-07-29 21:02:51 +02:00
Junio C Hamano
0a53e9ddea GIT 1.6.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
v1.6.4
2009-07-29 00:32:42 -07:00
Junio C Hamano
441b40d833 Sync with 1.6.3.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-29 00:00:56 -07:00
Junio C Hamano
e276f018f2 GIT 1.6.3.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
v1.6.3.4
2009-07-28 23:59:30 -07:00
Stephen Boyd
5c6d8bb290 config.txt: document add.ignore-errors
Use the description of "--ignore-errors" from git-add.txt as
inspiration.

Signed-off-by: Stephen Boyd <bebarino@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-28 23:56:01 -07:00
Tom Grennan
33016c4913 request-pull: allow ls-remote to notice remote.$nickname.uploadpack
The location to pull from should be converted from the configured nickname
to URL in the message, but ls-remote should be fed the nickname so that
the command uses remote.$nickname.* variables, most notably "uploadpack".

Signed-off-by: Tom Grennan <tgrennan@redback.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-28 23:31:38 -07:00
David Kågedal
f552e51ef9 Update the documentation of the raw diff output format
This includes mentioning the initial hash output of diff-tree, and
changes the header to "raw output format" which is more descriptive.

Signed-off-by: David Kågedal <davidk@lysator.liu.se>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-28 13:32:59 -07:00
Michael J Gruber
02944cc492 git-rerere.txt: Clarify ambiguity of the config variable
Use the less ambiguous
"set variable foo in order to enable bar"
rather than
"set variable foo to enable bar" which may trick users into
assuming that "enable" is a good value for "foo".

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-28 13:30:42 -07:00
Eric Wong
df73af5f66 t9143: do not fail if Compress::Zlib is missing
"git svn gc" will not compress unhandled.log files if
Compress::Zlib is missing.  However, leftover index files should
always be removed, so add a test for this behavior as well.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-26 11:51:45 -07:00
Sean Estabrooks
e24c76bf09 Trivial path quoting fixes in git-instaweb
Bodo Schlecht noticed that Instaweb didn't propely quote all
path instances in the Apache config file it generated.

Acked-by: Eric Wong <normalperson@yhbt.net>

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-26 11:27:27 -07:00
Junio C Hamano
d1926f63ec Merge branch 'gp/maint-rebase-p-onto'
* gp/maint-rebase-p-onto:
  Fix rebase -p --onto
2009-07-26 11:24:13 -07:00
Junio C Hamano
feab68cd91 Merge branch 'en/fast-export'
* en/fast-export:
  fast-export: Document the fact that git-rev-list arguments are accepted
  Add new fast-export testcases
  fast-export: Add a --tag-of-filtered-object option for newly dangling tags
  fast-export: Do parent rewriting to avoid dropping relevant commits
  fast-export: Make sure we show actual ref names instead of "(null)"
  fast-export: Omit tags that tag trees
  fast-export: Set revs.topo_order before calling setup_revisions
2009-07-26 11:23:52 -07:00
Junio C Hamano
d8f7be2ebc GIT 1.6.4-rc3
Signed-off-by: Junio C Hamano <gitster@pobox.com>
v1.6.4-rc3
2009-07-26 00:05:34 -07:00
Nanako Shiraishi
2ceb639f93 Documentation/config.txt: a variable can be defined on the section header line
Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-25 23:58:29 -07:00
Junio C Hamano
ae71760d24 Merge git://git.bogomips.org/git-svn
* git://git.bogomips.org/git-svn:
  git svn: make minimize URL more reliable over http(s)
  git svn: avoid escaping '/' when renaming/copying files
  t9142: stop httpd after the test
  git svn: the branch command no longer needs the full path
  git svn: revert default behavior for --minimize-url
  git svn: add gc command
2009-07-25 22:54:03 -07:00
Eric Wong
5f8b2cbacd git svn: make minimize URL more reliable over http(s)
In addition to path-based restrictions, Subversion servers over
http(s) may have access controls implemented via the LimitExcept
directive in Apache.  In some cases, LimitExcept may be
(arguably) misconfigured to not allow REPORT requests while
allowing OPTIONS and PROPFIND.

This caused problems with our existing minimize_url logic that
only issued OPTIONS and PROPFIND requests when connecting and
using SVN::Ra::get_latest_revnum.  We now call SVN::Ra::get_log
if get_latest_revnum succeeds, resulting in a REPORT request
being sent.  This will increase our chances of tripping access
controls before we start attempting to fetch history.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
2009-07-25 13:37:02 -07:00
Thomas Rast
71c020c53e Disable asciidoc 8.4.1+ semantics for {plus} and friends
asciidoc 8.4.1 changed the semantics of inline backtick quoting so
that they disable parsing of inline constructs, i.e.,

  Input:	`{plus}`
  Pre 8.4.1:	+
  Post 8.4.1:	{plus}

Fix this by defining the asciidoc attribute 'no-inline-literal'
(which, per the 8.4.1 changelog, is the toggle to return to the old
behaviour) when under ASCIIDOC8.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-25 10:07:06 -07:00
Eric Wong
884cce5bd0 git svn: avoid escaping '/' when renaming/copying files
Timothy Schaeffer reported the following:
> Git-svn has been giving me the following error for some time
> when calling "git svn dcommit":
>
> RA layer request failed: PROPFIND request failed on
> '/svn/stf/branches/dev/sw%2Fdpemu%2Finclude%2FNetCnxn.h': PROPFIND of
> '/svn/stf/branches/dev/sw%2Fdpemu%2Finclude%2FNetCnxn.h': 302 Found
> (https://oursvnrepo.net) at /usr/local/libexec/git-core/git-svn line 508
>
> This only occurred when git detected a rename or copy.
>
> Following the lead into git-svn.perl,
> and noticing that some of the '/'s in the path were hex-encoded
> and some were not,
> I changed the regex used to find chars
> to hex-encode in the relative part of the path
> to exclude '/'.
> It works, so far.
> I have included a patch.

While this has previous not been a problem in my experience,
newer versions of SVN may be stricter and this does not
introduce regressions in t9115.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
2009-07-25 04:09:44 -07:00
Eric Wong
5af9b77b55 t9142: stop httpd after the test
Otherwise it would fail in subsequent runs if the same
SVN_HTTPD_PORT was used.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
2009-07-25 04:09:44 -07:00
Eric Wong
eaa14ff8c7 git svn: the branch command no longer needs the full path
This was introduced in 0b2af457a4
("Fix branch detection when repository root is inaccessible")
but reintroduced in the previous commit.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
2009-07-25 04:09:43 -07:00
Eric Wong
6b48829dbb git svn: revert default behavior for --minimize-url
This reverts the --minimize-url behavior change that
appeared recently in commit 0b2af457a4
("Fix branch detection when repository root is inaccessible").

However, we now allow the option to be turned off by allowing
"--no-minimize-url" so people with limited-access setups can
still take advantage of the fix in
0b2af457a4.

Also document the behavior and default settings of minimize-url
in the manpage for the first time.

This introduces a temporary UI regression to allow t9141 to pass
that will be reverted (fixed) in the next commit.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
2009-07-25 04:09:43 -07:00
Robert Allan Zeh
2da9ee0888 git svn: add gc command
Add a git svn gc command that gzips all unhandled.log files, and
removes all index files under .git/svn.

Signed-off-by: Robert Allan Zeh <robert.a.zeh@gmail.com>
Signed-off-by: Eric Wong <normalperson@yhbt.net>
2009-07-25 04:09:43 -07:00
Junio C Hamano
6517452d7a Merge branch 'maint'
* maint:
  t8005: Nobody writes Russian in shift_jis

Conflicts:
	t/t8005-blame-i18n.sh
2009-07-25 02:16:25 -07:00
Junio C Hamano
54bc13ce53 t8005: Nobody writes Russian in shift_jis
The second and third tests of this script expected that Russian strings
are converted between ISO-8859-5 and Shift_JIS in the "blame --porcelain"
format output correctly.

Sure, many platforms may convert between such a combination, but that is
only because one of the base character set of Shift_JIS, JIS X 0208,
defines codepoints for Russian characters (among others); I do not think
anybody uses Shift_JIS when seriously writing Russian, and it is perfectly
understandable if iconv() libraries on some platforms fail converting
between this combination, as it does not matter in reality.

This patch changes the test to verify Japanese strings are converted
correctly between EUC-JP and Shift_JIS in the same procedure.  The point
of the test is not about verifying the platform's iconv() library, but to
see if "git blame" makes correct iconv() library calls when it should.

We could instead use ISO-8859-5 and KOI8-R as the combination, because
they are both meant to represent Russian, in order to make this test
meaningful on more platforms, but we already use Shift_JIS vs EUC-JP
combinations to test other programs in our test suite, so this combination
is safer from the point of view of the portability.  Besides, I do not
read nor write Russian; sorry ;-)

This change allows tests to pass on my (friend's) Solaris 5.11 box.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-25 02:14:56 -07:00
Junio C Hamano
8f5e3ca7d1 Merge branch 'maint'
* maint:
  Fix severe breakage in "git-apply --whitespace=fix"
2009-07-25 01:31:53 -07:00
Junio C Hamano
422a82f213 Fix severe breakage in "git-apply --whitespace=fix"
735c674 (Trailing whitespace and no newline fix, 2009-07-22) completely
broke --whitespace=fix, causing it to lose all the empty lines in a patch.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-25 01:29:20 -07:00
Junio C Hamano
b3601a6338 Update release notes for 1.6.4
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-25 00:51:21 -07:00
Junio C Hamano
130b04ab37 Merge branch 'js/maint-graft-unhide-true-parents'
* js/maint-graft-unhide-true-parents:
  git repack: keep commits hidden by a graft
  Add a test showing that 'git repack' throws away grafted-away parents

Conflicts:
	git-repack.sh
2009-07-25 00:45:03 -07:00
Junio C Hamano
a7c1ef3e03 Merge branch 'av/maint-config-reader'
* av/maint-config-reader:
  After renaming a section, print any trailing variable definitions
  Make section_name_match start on '[', and return the length on success
2009-07-25 00:44:52 -07:00
Junio C Hamano
e34bbd3b3c Merge branch 'jk/maint-send-email-alias-loop'
* jk/maint-send-email-alias-loop:
  send-email: detect cycles in alias expansion
2009-07-25 00:44:45 -07:00
Alex Vandiver
9a5abfc737 After renaming a section, print any trailing variable definitions
Signed-off-by: Alex Vandiver <alex@chmrr.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-07-24 23:42:44 -07:00