7560787 | Ramsay Jones | 19 November 2009, 18:46:24 UTC | git-count-objects: Fix a disk-space under-estimate on Cygwin Cygwin has st_blocks in struct stat, but at least on NTFS, the field counts in blocks of st_blksize bytes, not in 512-byte blocks. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 20 November 2009, 07:41:29 UTC |
aa8dc96 | Greg Price | 19 November 2009, 20:58:29 UTC | Documentation: undocument gc'd function graph_release() graph_release() was removed in 064bfbd. Cut it from the API documentation and a comment. Signed-off-by: Greg Price <price@ksplice.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 20 November 2009, 07:05:17 UTC |
81f4026 | Ramsay Jones | 19 November 2009, 18:41:20 UTC | t9700-perl-git.sh: Fix a test failure on Cygwin The t/t9700/test.pl script uses method invocation syntax when using the Cwd module to determine the current working directory. This fails on cygwin, since cygwin perl specifically checks for any arguments to the cwd() function and croak()'s with the message "Usage: Cwd::cwd()". (In perl v5.8.8 distribution, see the file perl-5.8.8/cygwin/cygwin.c lines 139-157) In order to avoid the problem, we replace the method invocation syntax with a simple function call. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 20 November 2009, 07:01:09 UTC |
df2a79f | Matthieu Moy | 19 November 2009, 15:21:15 UTC | expand_user_path: expand ~ to $HOME, not to the actual homedir. In 395de250d (Expand ~ and ~user in core.excludesfile, commit.template), we introduced the mechanism. But expanding ~ using getpw is not what people overriding $HOME would usually expect. In particular, git looks for the user's .gitconfig using $HOME, so it's better to be consistent. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 19 November 2009, 18:01:12 UTC |
395de25 | Matthieu Moy | 17 November 2009, 17:24:25 UTC | Expand ~ and ~user in core.excludesfile, commit.template These config variables are parsed to substitute ~ and ~user with getpw entries. user_path() refactored into new function expand_user_path(), to allow dynamically allocating the return buffer. Original patch by Karl Chen, modified by Matthieu Moy, and further amended by Junio C Hamano. Signed-off-by: Karl Chen <quarl@quarl.org> Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 18 November 2009, 05:53:11 UTC |
be38ca3 | Philippe Bruhat (BooK) | 17 November 2009, 08:42:39 UTC | Make sure $PERL_PATH is defined when the test suite is run. Some test scripts run Perl scripts as if they were git-* scripts, and thus need to use the same perl that will be put in the shebang line of git*.perl commands. $PERL_PATH therefore needs to be used instead of a bare "perl". The tests can fail if another perl is found in $PATH before the one defined in $PERL_PATH. Example test failure caused by this: the perl defined in $PERL_PATH has Error.pm installed, and therefore the Git.pm's Makefile.PL doesn't install the private copy. The perl from $PATH doesn't have Error.pm installed, and all git*.perl scripts invoked during the test will fail loading Error.pm. Makefile patch by Jeff King <peff@peff.net>. Signed-off-by: Philippe Bruhat (BooK) <book@cpan.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 November 2009, 16:37:03 UTC |
ff68668 | Matthew Ogilvie | 14 November 2009, 18:35:00 UTC | core.autocrlf documentation: mention the crlf attribute The description of the configuration variable is obsolete and wrong (saying only file content is used), not just incomplete. It has used the attribute mechanism for a long time. The documentation of gitattributes mentions the core.autocrlf configuration variable in its description of crlf attribute. Refer to the gitattributes documentation from here as well. Signed-off-by: Matthew Ogilvie <mmogilvi_git@miniinfo.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 November 2009, 06:32:05 UTC |
5183bf6 | Brian Collins | 06 November 2009, 09:22:35 UTC | grep: Allow case insensitive search of fixed-strings "git grep" currently an error when you combine the -F and -i flags. This isn't in line with how GNU grep handles it. This patch allows the simultaneous use of those flags. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Brian Collins <bricollins@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 November 2009, 00:06:46 UTC |
8282de9 | Jeff King | 16 November 2009, 16:02:02 UTC | diffcore-break: save cnt_data for other phases The "break" phase works by counting changes between two blobs with the same path. We do this by splitting the file into chunks (or lines for text oriented files) and then keeping a count of chunk hashes. The "rename" phase counts changes between blobs at two different paths. However, it uses the exact same set of chunk hashes (which are immutable for a given sha1). The rename phase can therefore use the same hash data as break. Unfortunately, we were throwing this data away after computing it in the break phase. This patch instead attaches it to the filespec and lets it live through the rename phase, working under the assumption that most of the time that breaks are being computed, renames will be too. We only do this optimization for files which have actually been broken, as those ones will be candidates for rename detection (and it is a time-space tradeoff, so we don't want to waste space keeping useless data). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 November 2009, 21:21:12 UTC |
f4f19fb | Jeff King | 16 November 2009, 15:56:25 UTC | diffcore-break: free filespec data as we go As we look at each changed file and consider breaking it, we load the blob data and make a decision about whether to break, which is independent of any other blobs that might have changed. However, we keep the data in memory while we consider breaking all of the other files. Which means that both versions of every file you are diffing are in memory at the same time. This patch instead frees the blob data as we finish with each file pair, leading to much lower memory usage. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 November 2009, 21:21:11 UTC |
080cbc1 | Junio C Hamano | 16 November 2009, 08:05:12 UTC | Git 1.6.5.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 November 2009, 08:05:12 UTC |
c6b53c8 | Junio C Hamano | 16 November 2009, 08:03:15 UTC | Merge branch 'bs/maint-pre-commit-hook-sample' into maint * bs/maint-pre-commit-hook-sample: pre-commit.sample: Diff against the empty tree when HEAD is invalid | 16 November 2009, 08:03:15 UTC |
5e9cb86 | Junio C Hamano | 16 November 2009, 08:02:44 UTC | Merge branch 'jk/maint-add-p-empty' into maint * jk/maint-add-p-empty: add-interactive: handle deletion of empty files | 16 November 2009, 08:02:44 UTC |
d404a3e | Junio C Hamano | 16 November 2009, 08:01:56 UTC | Merge branch 'js/maint-diff-color-words' into maint * js/maint-diff-color-words: diff --color-words: bit of clean-up diff --color-words -U0: fix the location of hunk headers t4034-diff-words: add a test for word diff without context Conflicts: diff.c | 16 November 2009, 08:01:56 UTC |
ee16339 | Junio C Hamano | 16 November 2009, 07:08:42 UTC | Merge branch 'tz/maint-rpm' into maint * tz/maint-rpm: Makefile: Ensure rpm packages can be read by older rpm versions | 16 November 2009, 07:08:42 UTC |
1f9d282 | Junio C Hamano | 16 November 2009, 07:07:49 UTC | Merge branch 'jk/maint-format-patch-p-suppress-stat' into maint * jk/maint-format-patch-p-suppress-stat: format-patch: make "-p" suppress diffstat | 16 November 2009, 07:07:49 UTC |
3ad1243 | Junio C Hamano | 16 November 2009, 07:07:38 UTC | Merge branch 'pb/maint-gitweb-blob-lineno' into maint * pb/maint-gitweb-blob-lineno: gitweb: Fix blob linenr links in pathinfo mode | 16 November 2009, 07:07:38 UTC |
958742b | Junio C Hamano | 16 November 2009, 07:07:32 UTC | Merge branch 'jk/maint-1.6.3-ls-files-i' into maint * jk/maint-1.6.3-ls-files-i: ls-files: unbreak "ls-files -i" | 16 November 2009, 07:07:32 UTC |
3e606ea | Junio C Hamano | 16 November 2009, 07:07:27 UTC | Merge branch 'vl/maint-openssl-signature-change' into maint * vl/maint-openssl-signature-change: imap-send.c: fix compiler warnings for OpenSSL 1.0 | 16 November 2009, 07:07:27 UTC |
8d324bf | Junio C Hamano | 16 November 2009, 07:07:17 UTC | Merge branch 'jk/maint-push-config' into maint * jk/maint-push-config: push: always load default config | 16 November 2009, 07:07:17 UTC |
061c4d0 | Junio C Hamano | 16 November 2009, 07:07:07 UTC | Merge branch 'sr/blame-incomplete' into maint * sr/blame-incomplete: blame: make sure that the last line ends in an LF | 16 November 2009, 07:07:07 UTC |
6dbdba0 | Junio C Hamano | 16 November 2009, 07:06:34 UTC | Merge branch 'jc/maint-blank-at-eof' into maint * jc/maint-blank-at-eof: diff -B: colour whitespace errors diff.c: emit_add_line() takes only the rest of the line diff.c: split emit_line() from the first char and the rest of the line diff.c: shuffling code around diff --whitespace: fix blank lines at end core.whitespace: split trailing-space into blank-at-{eol,eof} diff --color: color blank-at-eof diff --whitespace=warn/error: fix blank-at-eof check diff --whitespace=warn/error: obey blank-at-eof diff.c: the builtin_diff() deals with only two-file comparison apply --whitespace: warn blank but not necessarily empty lines at EOF apply --whitespace=warn/error: diagnose blank at EOF apply.c: split check_whitespace() into two apply --whitespace=fix: detect new blank lines at eof correctly apply --whitespace=fix: fix handling of blank lines at the eof | 16 November 2009, 07:06:34 UTC |
dd2195e | Junio C Hamano | 16 November 2009, 00:38:47 UTC | Merge branch 'jc/maint-1.6.3-graft-trailing-space' into maint * jc/maint-1.6.3-graft-trailing-space: info/grafts: allow trailing whitespaces at the end of line | 16 November 2009, 00:38:47 UTC |
69abb19 | Junio C Hamano | 16 November 2009, 00:38:36 UTC | Merge branch 'tr/maint-roff-quote' into maint * tr/maint-roff-quote: Quote ' as \(aq in manpages | 16 November 2009, 00:38:36 UTC |
f411c43 | Junio C Hamano | 16 November 2009, 00:38:18 UTC | Merge branch 'ja/fetch-doc' into maint * ja/fetch-doc: Documentation/merge-options.txt: order options in alphabetical groups Documentation/git-pull.txt: Add subtitles above included option files Documentation/fetch-options.txt: order options alphabetically | 16 November 2009, 00:38:18 UTC |
077f3d4 | Junio C Hamano | 16 November 2009, 00:37:58 UTC | Merge branch 'cb/doc-fetch-pull-merge' into maint * cb/doc-fetch-pull-merge: modernize fetch/merge/pull examples | 16 November 2009, 00:37:58 UTC |
04b3577 | Junio C Hamano | 16 November 2009, 00:37:53 UTC | Merge branch 'jk/maint-cvsimport-pathname' into maint * jk/maint-cvsimport-pathname: cvsimport: fix relative argument filenames | 16 November 2009, 00:37:53 UTC |
a25a2cd | Junio C Hamano | 16 November 2009, 00:37:49 UTC | Merge branch 'jc/receive-pack-auto' into maint * jc/receive-pack-auto: receive-pack: run "gc --auto --quiet" and optionally "update-server-info" gc --auto --quiet: make the notice a bit less verboase | 16 November 2009, 00:37:49 UTC |
14d52b2 | Junio C Hamano | 16 November 2009, 00:37:39 UTC | Merge branch 'gb/maint-gitweb-esc-param' into maint * gb/maint-gitweb-esc-param: gitweb: fix esc_param | 16 November 2009, 00:37:39 UTC |
9453f8a | Junio C Hamano | 16 November 2009, 00:37:36 UTC | Merge branch 'jn/gitweb-patch' into maint * jn/gitweb-patch: gitweb: Do not show 'patch' link for merge commits | 16 November 2009, 00:37:36 UTC |
997c2a4 | Tim Henigan | 15 November 2009, 19:46:25 UTC | Update 'git remote update' usage string to match man page. Commit b344e161 taught 'git remote update' to understand [group | remote] as its argument. The man page was updated to document this change, but the usage string was not. Signed-off-by: Tim Henigan <tim.henigan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 November 2009, 20:24:46 UTC |
a96e9c2 | Todd Zullinger | 11 November 2009, 21:59:52 UTC | Makefile: Ensure rpm packages can be read by older rpm versions The kernel.org hosts where the packages are built are now using Fedora 11, which defaults to sha256 for file digests instead of md5. Older versions of rpm can not handle these packages. Tell rpmbuild to use md5 file digests for better compatibility. Signed-off-by: Todd Zullinger <tmz@pobox.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 November 2009, 23:52:39 UTC |
46ada61 | Stephen Boyd | 14 November 2009, 01:45:46 UTC | git-add.txt: fix formatting of --patch section Extra paragraphs should be prefixed with a plus sign. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 November 2009, 08:26:37 UTC |
6b59f51 | Nicolas Pitre | 11 November 2009, 22:24:42 UTC | give priority to progress messages In theory it is possible for sideband channel #2 to be delayed if pack data is quick to come up for sideband channel #1. And because data for channel #2 is read only 128 bytes at a time while pack data is read 8192 bytes at a time, it is possible for many pack blocks to be sent to the client before the progress message fifo is emptied, making the situation even worse. This would result in totally garbled progress display on the client's console as local progress gets mixed with partial remote progress lines. Let's prevent such situations by giving transmission priority to progress messages over pack data at all times. Signed-off-by: Nicolas Pitre <nico@fluxnic.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 13 November 2009, 22:39:25 UTC |
9deec58 | Junio C Hamano | 11 November 2009, 04:45:23 UTC | check-ref-format -h: it does not know the --print option yet Signed-off-by: Junio C Hamano <gitster@pobox.com> | 11 November 2009, 04:45:23 UTC |
d629c40 | Jonathan Nieder | 09 November 2009, 15:04:58 UTC | merge: do not setup worktree twice Builtins do not need to run setup_worktree() for themselves, since the builtin machinery runs it for them. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2009, 18:50:19 UTC |
6586b1f | Jonathan Nieder | 09 November 2009, 15:04:47 UTC | check-ref-format: update usage string 'git check-ref-format' has learned --branch and --print options since the usage string was last updated. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 November 2009, 18:47:33 UTC |
035b76b | Ramsay Jones | 27 October 2009, 19:11:55 UTC | Makefile: merge two Cygwin configuration sections into one Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 November 2009, 01:58:42 UTC |
f9bbaa3 | Jonathan Nieder | 08 November 2009, 22:07:16 UTC | Add intermediate build products to .gitignore Temporaries such as configure.ac+ and Documentation/*.xml+ sometimes remain after an interrupted build. Tell git not to track them. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 November 2009, 01:04:50 UTC |
1d46f2e | Jeff King | 04 November 2009, 07:19:40 UTC | format-patch: make "-p" suppress diffstat Once upon a time, format-patch would use its default stat plus patch format only when no diff format was given on the command line. This meant that "format-patch -p" would suppress the stat and show just the patch. Commit 68daa64 changed this to keep the stat format when we had an "implicit" patch format, like "-U5". As a side effect, this meant that an explicit patch format was now ignored (because cmd_format_patch didn't know the reason that the format was set way down in diff_opt_parse). This patch unbreaks what 68daa64 did (while still preserving what 68daa64 was trying to do), reinstating "-p" to suppress the default behavior. We do this by parsing "-p" ourselves in format-patch, and noting whether it was used explicitly. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 November 2009, 01:01:36 UTC |
c30eb85 | Björn Steinbrink | 05 November 2009, 10:57:57 UTC | pre-commit.sample: Diff against the empty tree when HEAD is invalid This was already the case for the old "diff --check" call, but the new one that checks whether there are any non-ascii file names was missing it, making that check fail for root commits. Signed-off-by: Björn Steinbrink <B.Steinbrink@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 November 2009, 07:48:09 UTC |
b9759f0 | Petr Baudis | 06 November 2009, 15:08:41 UTC | gitweb: Fix blob linenr links in pathinfo mode In pathinfo mode, we use <base href> that refers to the base location of gitweb in order for various external media links to work well. However, this means that for the page to refer to itself, it must regenerate full link, and this is exactly what the blob view page did not do for line numbers. Signed-off-by: Petr Baudis <pasky@suse.cz> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 November 2009, 17:56:34 UTC |
0a565de | Gisle Aas | 04 November 2009, 21:57:46 UTC | Fix documentation grammar typo Introduced in 492cf3f (More precise description of 'git describe --abbrev', 2009-10-29) Signed-off-by: Gisle Aas <gisle@aas.no> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 05 November 2009, 00:08:55 UTC |
a45d3d7 | Daniel Barkalow | 04 November 2009, 02:52:35 UTC | Allow curl helper to work without a local repository It's okay to use the curl helper without a local repository, so long as you don't use "fetch". There aren't any git programs that would try to use it, and it doesn't make sense to try it (since there's nowhere to write the results), but we may as well be clear. Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 November 2009, 05:41:01 UTC |
c1d45cf | Daniel Barkalow | 04 November 2009, 02:38:51 UTC | Require a struct remote in transport_get() cmd_ls_remote() was calling transport_get() with a NULL remote and a non-NULL url in the case where it was run outside a git repository. This involved a bunch of ill-tested special cases. Instead, simply get the struct remote for the URL with remote_get(), which works fine outside a git repository, and can also take global options into account. This fixes a tiny and obscure bug where "git ls-remote" without a repo didn't support global url.*.insteadOf, even though "git clone" and "git ls-remote" in any repo did. Also, enforce that all callers provide a struct remote to transport_get(). Signed-off-by: Daniel Barkalow <barkalow@iabervon.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 November 2009, 05:39:28 UTC |
b26f39c | Junio C Hamano | 02 November 2009, 06:51:04 UTC | Merge branch 'bg/clone-doc' into maint * bg/clone-doc: git-clone.txt: Fix grammar and formatting | 02 November 2009, 06:51:04 UTC |
7545712 | Dmitry V. Levin | 01 November 2009, 23:09:05 UTC | Makefile: add compat/bswap.h to LIB_H Starting with commit 51ea55190b6e72c77c96754c1bf2f149a4714848, git-compat-util.h includes compat/bswap.h Signed-off-by: Dmitry V. Levin <ldv@altlinux.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 02 November 2009, 03:01:05 UTC |
1e380dd | Vietor Liu | 31 October 2009, 06:36:03 UTC | imap-send.c: fix compiler warnings for OpenSSL 1.0 The openssl/CHANGES file says: Let the TLSv1_method() etc. functions return a 'const' SSL_METHOD pointer and make the SSL_METHOD parameter in SSL_CTX_new, SSL_CTX_set_ssl_version and SSL_set_ssl_method 'const'. In older versions, unqualified pointers were used, so we unfortunately cannot unconditionally update the type of the variable we use. Signed-off-by: Vietor Liu <vietor@vxwo.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 31 October 2009, 21:28:18 UTC |
76fd282 | Junio C Hamano | 30 October 2009, 17:09:06 UTC | diff --color-words: bit of clean-up When we introduced the "word diff" mode, we could have done one of three things: * change fn_out_consume() to "this is called every time a line worth of diff becomes ready from the lower-level diff routine. This function knows two sets of helpers (one for line-oriented diff, another for word diff), and each set has various functions to be called at certain places (e.g. hunk header, context, ...). The function's role is to inspect the incoming line, and dispatch appropriate helpers to produce either line- or word- oriented diff output." * introduce fn_out_consume_word_diff() that is "this is called every time a line worth of diff becomes ready from the lower-level diff routine, and here is what we do to prepare word oriented diff using that line." without touching fn_out_consume() at all. * Do neither of the above, and keep fn_out_consume() to "this is called every time a line worth of diff becomes ready from the lower-level diff routine, and here is what we do to output line oriented diff using that line." but sprinkle a handful of 'are we in word-diff mode? if so do this totally different thing' at random places. This patch is to at least abstract the details of "this totally different thing" out from the main codepath, in order to improve readability. We can later refactor it by introducing fn_out_consume_word_diff(), taking the second route above, but that is a separate topic. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 31 October 2009, 21:25:15 UTC |
d52dc4b | Jonathan Nieder | 29 October 2009, 08:10:30 UTC | clone: detect extra arguments If git clone is given more than two non-option arguments, it silently throws away all but the first one. Complain instead. Discovered by comparing the new builtin clone to the old git-clone.sh. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 October 2009, 22:18:11 UTC |
ebc9d42 | Junio C Hamano | 30 October 2009, 22:15:36 UTC | clone: fix help on options Fix incorrect description of --recursive, and stop listing the historical synonym --naked that is not advertised anywhere. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 October 2009, 22:15:36 UTC |
f740cc2 | Jeff King | 30 October 2009, 15:04:53 UTC | push: fix typo in usage Missing ")". Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 October 2009, 22:12:00 UTC |
492cf3f | Gisle Aas | 29 October 2009, 21:29:35 UTC | More precise description of 'git describe --abbrev' Also adds a note about why the output in the examples might give different output today. Signed-off-by: Gisle Aas <gisle@aas.no> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 October 2009, 21:46:17 UTC |
500348a | Jeff King | 30 October 2009, 19:05:52 UTC | ls-files: unbreak "ls-files -i" Commit b5227d8 changed the behavior of "ls-files" with respect to includes, but accidentally broke the "-i" option The original behavior was: 1. if no "-i" is given, cull all results according to --exclude* 2. if "-i" is given, show the inverse of (1) The broken behavior was: 1. if no "-i" is given: a. for "-o", cull results according to --exclude* b. for index files, always show all 2. if "-i" is given: a. for "-o", shows the inverse of (1a) b. for index files, always show all The fixed behavior keeps the new (1b) behavior introduced by b5227d8, but fixes the (2b) behavior to show only ignored files, not all files. This patch also tweaks the documentation. The original text was somewhat obscure in the first place, but it is also now inaccurate (the relationship between (1b) and (2b) is not quite a "reverse"). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 October 2009, 21:41:29 UTC |
a4ca146 | Johannes Schindelin | 29 October 2009, 10:45:03 UTC | diff --color-words -U0: fix the location of hunk headers Colored word diff without context lines firstly printed all the hunk headers among each other and then printed the diff. This was due to the code relying on getting at least one context line at the end of each hunk, where the colored words would be flushed (it is done that way to be able to ignore rewrapped lines). Noticed by Markus Heidelberg. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 October 2009, 16:42:56 UTC |
168eff3 | Markus Heidelberg | 28 October 2009, 12:24:30 UTC | t4034-diff-words: add a test for word diff without context Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 October 2009, 16:42:52 UTC |
7c3baa9 | Johannes Schindelin | 04 September 2009, 10:22:36 UTC | help -a: do not unnecessarily look for a repository Although 'git help -a' actually doesn't need to be run inside a git repository and uses no repository-specific information, it looks for a git directory. On 'git <TAB><TAB>' the bash completion runs 'git help -a' and unnecessary searching for a git directory can be annoying in auto-mount environments. With this commit, 'git help' no longer searches for a repository when run with the -a option. Reported by Vincent Danjean through http://bugs.debian.org/539273 Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 October 2009, 17:42:17 UTC |
aab7486 | Junio C Hamano | 28 October 2009, 07:03:24 UTC | Merge branch 'maint-1.6.4' into maint * maint-1.6.4: rebase -i: more graceful handling of invalid commands help -i: properly error out if no info viewer can be found | 28 October 2009, 07:03:24 UTC |
ade2ca0 | Sebastian Schuberth | 27 October 2009, 11:23:33 UTC | Do not try to remove directories when removing old links When building Git with MSVC on Windows, directories named after the Git alias are created for the output files, e.g. there is a "git-merge-index" directory next to the "git-merge-index.exe" executable in the build root. Previously, "make all" just checked if "git-merge-index" and "git-merge-index.exe" are the same file, and if not, tried to remove "git-merge-index". This fails in the case of "git-merge-index" being a directory, which is why this is checked now. Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 October 2009, 06:45:41 UTC |
24ab81a | Jeff King | 28 October 2009, 00:52:57 UTC | add-interactive: handle deletion of empty files Usually we show deletion as a big hunk deleting all of the file's text. However, for files with no content, the diff shows just the 'deleted file mode ...' line. This patch cause "add -p" (and related commands) to recognize that line and explicitly ask about deleting the file. We only add the "stage this deletion" hunk for empty files, since other files will already ask about the big content deletion hunk. We could also change those files to simply display "stage this deletion", but showing the actual deleted content is probably what an interactive user wants. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 October 2009, 06:19:04 UTC |
f1be316 | Jan Krüger | 27 October 2009, 14:58:14 UTC | rebase -i: more graceful handling of invalid commands Currently, when there is an invalid command, the rest of the line is still treated as if the command had been valid, i.e. rebase -i attempts to produce a patch, using the next argument as a SHA1 name. If there is no next argument or an invalid one, very confusing error messages appear (the line was '.'; path to git-rebase-todo substituted): Unknown command: . fatal: ambiguous argument 'Please fix this in the file $somefile.': unknown revision or path not in the working tree. Use '--' to separate paths from revisions fatal: Not a valid object name Please fix this in the file $somefile. fatal: bad revision 'Please fix this in the file $somefile.' Instead, verify the validity of the remaining line and error out earlier if necessary. Signed-off-by: Jan Krüger <jk@jk.gs> Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 October 2009, 06:12:44 UTC |
a29aa47 | Gerrit Pape | 27 October 2009, 13:31:33 UTC | help -i: properly error out if no info viewer can be found With this commit, git help -i <cmd> prints an error message and exits non-zero instead of being silent and exit code 0. Reported by Trent W. Buck through http://bugs.debian.org/537664 Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 October 2009, 06:05:24 UTC |
2aae905 | Jeff King | 25 October 2009, 19:15:22 UTC | push: always load default config This is needed because we want to use the advice.pushnonfastforward variable. Previously, we would load the config on demand only when we needed to look at push.default. Which meant that "git push" would load it, but "git push remote" would not, leading to differing behavior. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 October 2009, 02:25:47 UTC |
6c0efa2 | Junio C Hamano | 26 October 2009, 01:37:56 UTC | GIT 1.6.5.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 October 2009, 01:37:56 UTC |
47a876a | Junio C Hamano | 26 October 2009, 01:35:59 UTC | Merge branch 'jc/maint-fix-unpack-zlib-check' into maint * jc/maint-fix-unpack-zlib-check: Fix incorrect error check while reading deflated pack data | 26 October 2009, 01:35:59 UTC |
071b489 | Junio C Hamano | 25 October 2009, 22:34:41 UTC | Merge branch 'maint-1.6.4' into maint * maint-1.6.4: ls-files: excludes should not impact tracked files | 25 October 2009, 22:34:41 UTC |
caa7dac | Junio C Hamano | 25 October 2009, 22:34:27 UTC | Merge branch 'jk/maint-1.6.3-ls-files-no-ignore-cached' into maint-1.6.4 * jk/maint-1.6.3-ls-files-no-ignore-cached: ls-files: excludes should not impact tracked files | 25 October 2009, 22:34:27 UTC |
1c92a08 | Junio C Hamano | 25 October 2009, 22:34:21 UTC | Merge branch 'jn/maint-1.6.3-check-ref-format-doc' into maint-1.6.4 * jn/maint-1.6.3-check-ref-format-doc: Documentation: describe check-ref-format --branch | 25 October 2009, 22:34:21 UTC |
3319df6 | Markus Heidelberg | 24 October 2009, 23:39:19 UTC | t7800-difftool: fix the effectless GIT_DIFFTOOL_PROMPT test GIT_DIFFTOOL_PROMPT doesn't have any effect if overridden with --prompt. Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 October 2009, 00:21:24 UTC |
36e5610 | Andreas Schwab | 24 October 2009, 13:06:57 UTC | Work around option parsing bug in the busybox tar implementation The first argument of the tar command is interpreted as a bundle of letters specifying the mode of operation and additional options, with any option arguments taken from subsequent words on the command line as needed. The implementation of tar in busybox treats this bundle as if preceded by a dash and then parses it by getopt rules, which mishandles 'tar xfo -'. Use 'tar xof -' instead to work this around. Signed-off-by: Andreas Schwab <schwab@linux-m68k.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 24 October 2009, 19:25:01 UTC |
2cf6b4b | Junio C Hamano | 24 October 2009, 05:38:44 UTC | Fix list of released versions in the toc document | 24 October 2009, 05:38:44 UTC |
0adc030 | Junio C Hamano | 24 October 2009, 05:30:42 UTC | Merge branch 'jp/maint-send-email-fold' into maint * jp/maint-send-email-fold: git-send-email.perl: fold multiple entry "Cc:" and multiple single line "RCPT TO:"s | 24 October 2009, 05:30:42 UTC |
64fb90b | Junio C Hamano | 24 October 2009, 05:30:20 UTC | Merge branch 'jn/maint-1.6.3-check-ref-format-doc' into maint * jn/maint-1.6.3-check-ref-format-doc: Documentation: describe check-ref-format --branch | 24 October 2009, 05:30:20 UTC |
70ed433 | Junio C Hamano | 24 October 2009, 05:29:19 UTC | Merge branch 'pv/maint-add-p-no-exclude' into maint * pv/maint-add-p-no-exclude: git-add--interactive: never skip files included in index | 24 October 2009, 05:29:19 UTC |
024ab97 | Junio C Hamano | 23 October 2009, 18:42:39 UTC | Do not fail "describe --always" in a tag-less repository This fixes a regression introduce by d68dc34 (git-describe: Die early if there are no possible descriptions, 2009-08-06). Signed-off-by: Junio C Hamano <gitster@pobox.com> | 23 October 2009, 19:00:41 UTC |
204d363 | Thomas Rast | 22 October 2009, 08:19:06 UTC | Quote ' as \(aq in manpages The docbook/xmlto toolchain insists on quoting ' as \'. This does achieve the quoting goal, but modern 'man' implementations turn the apostrophe into a unicode "proper" apostrophe (given the right circumstances), breaking code examples in many of our manpages. Quote them as \(aq instead, which is an "apostrophe quote" as per the groff_char manpage. Unfortunately, as Anders Kaseorg kindly pointed out, this is not portable beyond groff, so we add an extra Makefile variable GNU_ROFF which you need to enable to get the new quoting. Thanks also to Miklos Vajna for documentation. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 October 2009, 19:59:50 UTC |
7c85d27 | Jari Aalto | 22 October 2009, 19:25:20 UTC | Documentation/merge-options.txt: order options in alphabetical groups Signed-off-by: Jari Aalto <jari.aalto@cante.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 October 2009, 19:39:18 UTC |
3f7a9b5 | Jari Aalto | 22 October 2009, 14:14:57 UTC | Documentation/git-pull.txt: Add subtitles above included option files Signed-off-by: Jari Aalto <jari.aalto@cante.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 October 2009, 19:39:10 UTC |
39eea7b | Junio C Hamano | 22 October 2009, 06:06:14 UTC | Fix incorrect error check while reading deflated pack data The loop in get_size_from_delta() feeds a deflated delta data from the pack stream _until_ we get inflated result of 20 bytes[*] or we reach the end of stream. Side note. This magic number 20 does not have anything to do with the size of the hash we use, but comes from 1a3b55c (reduce delta head inflated size, 2006-10-18). The loop reads like this: do { in = use_pack(); stream.next_in = in; st = git_inflate(&stream, Z_FINISH); curpos += stream.next_in - in; } while ((st == Z_OK || st == Z_BUF_ERROR) && stream.total_out < sizeof(delta_head)); This git_inflate() can return: - Z_STREAM_END, if use_pack() fed it enough input and the delta itself was smaller than 20 bytes; - Z_OK, when some progress has been made; - Z_BUF_ERROR, if no progress is possible, because we either ran out of input (due to corrupt pack), or we ran out of output before we saw the end of the stream. The fix b3118bd (sha1_file: Fix infinite loop when pack is corrupted, 2009-10-14) attempted was against a corruption that appears to be a valid stream that produces a result larger than the output buffer, but we are not even trying to read the stream to the end in this loop. If avail_out becomes zero, total_out will be the same as sizeof(delta_head) so the loop will terminate without the "fix". There is no fix from b3118bd needed for this loop, in other words. The loop in unpack_compressed_entry() is quite a different story. It feeds a deflated stream (either delta or base) and allows the stream to produce output up to what we expect but no more. do { in = use_pack(); stream.next_in = in; st = git_inflate(&stream, Z_FINISH); curpos += stream.next_in - in; } while (st == Z_OK || st == Z_BUF_ERROR) This _does_ risk falling into an endless interation, as we can exhaust avail_out if the length we expect is smaller than what the stream wants to produce (due to pack corruption). In such a case, avail_out will become zero and inflate() will return Z_BUF_ERROR, while avail_in may (or may not) be zero. But this is not a right fix: do { in = use_pack(); stream.next_in = in; st = git_inflate(&stream, Z_FINISH); + if (st == Z_BUF_ERROR && (stream.avail_in || !stream.avail_out) + break; /* wants more input??? */ curpos += stream.next_in - in; } while (st == Z_OK || st == Z_BUF_ERROR) as Z_BUF_ERROR from inflate() may be telling us that avail_in has also run out before reading the end of stream marker. In such a case, both avail_in and avail_out would be zero, and the loop should iterate to allow the end of stream marker to be seen by inflate from the input stream. The right fix for this loop is likely to be to increment the initial avail_out by one (we allocate one extra byte to terminate it with NUL anyway, so there is no risk to overrun the buffer), and break out if we see that avail_out has become zero, in order to detect that the stream wants to produce more than what we expect. After the loop, we have a check that exactly tests this condition: if ((st != Z_STREAM_END) || stream.total_out != size) { free(buffer); return NULL; } So here is a patch (without my previous botched attempts) to fix this issue. The first hunk reverts the corresponding hunk from b3118bd, and the second hunk is the same fix proposed earlier. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 October 2009, 06:19:47 UTC |
a5ca836 | Johannes Schindelin | 20 October 2009, 03:06:28 UTC | blame: make sure that the last line ends in an LF This is convenient when parsing multiple the blame of multiple files, for example: git ls-files -z --exclude-standard -- "*.[ch]" | xargs --null -n 1 git blame -p > output and then analyzing the 'output' file using a seperate script. Currently the parsing is difficult when not all files have a newline at EOF, this patch ensures that even such files have a newline at the end of the blame output. Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com> CC: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 October 2009, 00:16:58 UTC |
550c66f | Björn Gustavsson | 20 October 2009, 20:38:38 UTC | git-clone.txt: Fix grammar and formatting Add the missing definite article ("the") in several places. Change "note to..." to "note for...", since "note to" means that that the note is addressed to someone (source: Google search). Change "progressbar" to "progress bar" (source: Wikipedia). Format git commands, options, and file names consistently using back quotes (i.e. a fixed font in the resulting HTML document). Signed-off-by: Björn Gustavsson <bgustavsson@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 22 October 2009, 00:16:08 UTC |
77e3efb | Junio C Hamano | 20 October 2009, 21:56:40 UTC | receive-pack: run "gc --auto --quiet" and optionally "update-server-info" Introduce two new configuration variables, receive.autogc (defaults to true) and receive.updateserverinfo (defaults to false). When these are set, receive-pack runs "gc --auto --quiet" and "update-server-info" respectively after it finishes receiving data from "git push" and updating refs. Signed-off-by: Junio C Hamano <gitster@pobox.com> Acked-by: Nicolas Pitre <nico@fluxnic.net> | 21 October 2009, 22:32:32 UTC |
dad5f89 | Junio C Hamano | 21 October 2009, 22:26:10 UTC | gc --auto --quiet: make the notice a bit less verboase When "gc --auto --quiet" decides there is something to do, it tells the user what it is doing, as it is going to make the user wait for a bit. But the message was a bit too long. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 October 2009, 22:28:42 UTC |
6b276e1 | Jari Aalto | 21 October 2009, 20:07:49 UTC | Documentation/fetch-options.txt: order options alphabetically git-fetch.{1,html} will be helped with this patch Signed-off-by: Jari Aalto <jari.aalto@cante.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 October 2009, 22:12:01 UTC |
d504f69 | Clemens Buchacher | 21 October 2009, 17:21:23 UTC | modernize fetch/merge/pull examples The "git pull" documentation has examples which follow an outdated style. Update the examples to use "git merge" where appropriate and move the examples to the corresponding manpages. Furthermore, - show that pull is equivalent to fetch and merge, which is still a frequently asked question, - explain the default fetch refspec. Signed-off-by: Clemens Buchacher <drizzd@aon.at> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 October 2009, 21:20:50 UTC |
975457f | Nasser Grainawi | 21 October 2009, 21:06:21 UTC | Document `delta` attribute in "git help attributes". Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 October 2009, 21:07:44 UTC |
814a9bf | Johannes Sixt | 21 October 2009, 11:35:16 UTC | Mark files in t/t5100 as UTF-8 This enables gitk to show the patch text with correct glyphs if the locale is not UTF-8. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 October 2009, 18:27:50 UTC |
66bcb6a | Johannes Sixt | 21 October 2009, 11:35:15 UTC | Remove a left-over file from t/t5100 This mbox file must have been added by accident in e9fe804 (git-mailinfo: Fix getting the subject from the in-body [PATCH] line, 2008-07-14). Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 21 October 2009, 18:27:48 UTC |
3ed0b11 | Matt Kraai | 20 October 2009, 05:22:25 UTC | Documentation/git-gc.txt: change "references" to "reference" Signed-off-by: Matt Kraai <kraai@ftbfs.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 20 October 2009, 07:01:23 UTC |
f6fdbb6 | Jeff King | 19 October 2009, 06:49:55 UTC | cvsimport: fix relative argument filenames One of the first things that cvsimport does is chdir to the newly created git repo. This means that any filenames given to us on the command line will be looked up relative to the git repo directory. This is probably not what the user expects, so let's remember and prepend the original directory for relative filenames. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 19 October 2009, 07:31:02 UTC |
8ef4c28 | Nanako Shiraishi | 19 October 2009, 03:57:01 UTC | git push: say that --tag can't be used with --all or --mirror in help text This replaces an earlier patch by Björn Gustavsson, Message-ID: <4AD75029.1010109@gmail.com> Signed-off-by: しらいし ななこ <nanako3@lavabit.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 19 October 2009, 05:47:48 UTC |
fcb044e | Nanako Shiraishi | 19 October 2009, 02:54:12 UTC | git push: remove incomplete options list from help text 'git push -h' shows usage text with incomplete list of options and then has a separate list of options that are supported. Imitate the way other commands (I looked at 'git diff' for an example) show their options. Signed-off-by: しらいし ななこ <nanako3@lavabit.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 19 October 2009, 05:47:29 UTC |
989119d | Jeff King | 19 October 2009, 04:01:19 UTC | document push's new quiet option Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 19 October 2009, 05:44:22 UTC |
3edd98a | Carlos R. Mafra | 11 October 2009, 13:32:19 UTC | Makefile: clean block-sha1/ directory instead of mozilla-sha1/ 'make clean' should remove the object files from block-sha1/ instead of the non-existent mozilla-sha1/ directory. Signed-off-by: Carlos R. Mafra <crmafra@aei.mpg.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 19 October 2009, 02:45:38 UTC |
b142da2 | Junio C Hamano | 17 October 2009, 06:56:55 UTC | GIT 1.6.5.1 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 October 2009, 06:57:19 UTC |
050dfc4 | Junio C Hamano | 17 October 2009, 06:47:58 UTC | Merge branch 'maint-1.6.4' into maint * maint-1.6.4: grep: do not segfault when -f is used | 17 October 2009, 06:47:58 UTC |
cfe370c | Matt Kraai | 16 October 2009, 14:13:25 UTC | grep: do not segfault when -f is used "git grep" would segfault if its -f option was used because it would try to use an uninitialized strbuf, so initialize the strbuf. Thanks to Johannes Sixt <j.sixt@viscovery.net> for the help with the test cases. Signed-off-by: Matt Kraai <kraai@ftbfs.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 October 2009, 06:47:47 UTC |
fe0a3cb | Junio C Hamano | 14 October 2009, 18:51:03 UTC | info/grafts: allow trailing whitespaces at the end of line When creating an info/grafts under windows, one typically gets a CRLF file. There is no good reason to forbid trailing CR at the end of the line (for that matter, any trailing whitespaces); the code allowed only LF simply because that was good enough for the platforms with LF line endings. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 October 2009, 06:47:03 UTC |
b3118bd | Shawn O. Pearce | 14 October 2009, 14:23:51 UTC | sha1_file: Fix infinite loop when pack is corrupted Some types of corruption to a pack may confuse the deflate stream which stores an object. In Andy's reported case a 36 byte region of the pack was overwritten, leading to what appeared to be a valid deflate stream that was trying to produce a result larger than our allocated output buffer could accept. Z_BUF_ERROR is returned from inflate() if either the input buffer needs more input bytes, or the output buffer has run out of space. Previously we only considered the former case, as it meant we needed to move the stream's input buffer to the next window in the pack. We now abort the loop if inflate() returns Z_BUF_ERROR without consuming the entire input buffer it was given, or has filled the entire output buffer but has not yet returned Z_STREAM_END. Either state is a clear indicator that this loop is not working as expected, and should not continue. This problem cannot occur with loose objects as we open the entire loose object as a single buffer and treat Z_BUF_ERROR as an error. Reported-by: Andy Isaacson <adi@hexapodia.org> Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Acked-by: Nicolas Pitre <nico@fluxnic.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 October 2009, 20:39:37 UTC |
583371a | Nicolas Pitre | 14 October 2009, 03:02:04 UTC | change throughput display units with fast links Switch to MiB/s when the connection is fast enough (i.e. on a LAN). Signed-off-by: Nicolas Pitre <nico@fluxnic.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 October 2009, 08:19:29 UTC |