swh:1:snp:6df5a50b8107b6bbe1e51d0239d816a7503c536a

sort by:
Revision Author Date Message Commit Date
cff4231 GIT 1.6.3.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 June 2009, 04:15:50 UTC
a69f8c9 Merge branch 'ak/maint-for-each-ref-no-lookup' into maint * ak/maint-for-each-ref-no-lookup: for-each-ref: Do not lookup objects when they will not be used 22 June 2009, 04:15:39 UTC
be273c7 Merge branch 'rc/maint-http-local-slot-fix' into maint * rc/maint-http-local-slot-fix: http*: cleanup slot->local after fclose 22 June 2009, 04:15:31 UTC
d836118 Merge branch 'cb/maint-no-double-merge' into maint * cb/maint-no-double-merge: refuse to merge during a merge 22 June 2009, 04:15:27 UTC
6019b3c Merge branch 'mn/maint-iconv-autoconf' into maint * mn/maint-iconv-autoconf: fix handling of iconv configuration options 22 June 2009, 04:14:25 UTC
44fb185 Merge branch 'lt/maint-unsigned-left-shift' into maint * lt/maint-unsigned-left-shift: Fix big left-shifts of unsigned char 22 June 2009, 04:14:09 UTC
037e9d5 Merge branch 'pb/maint-1.6.2-userdiff-fix' into maint * pb/maint-1.6.2-userdiff-fix: upload-archive: fix infinite loop on Cygwin avoid exponential regex match for java and objc function names 22 June 2009, 04:08:05 UTC
a437900 attribute: whitespace set to true detects all errors known to git That is what the documentation says, but the code pretends as if all the known whitespace error tokens were given. Among the whitespace error tokens, there is one kind that loosens the rule when set: cr-at-eol. Which means that whitespace error token that is set to true ignores a newly introduced CR at the end, which is inconsistent with the documentation. Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 June 2009, 17:43:10 UTC
e2f6331 .gitattributes: CR at the end of the line is an error When a CR is accidentally added at the end of a C source file in the git project tree, "git diff --check" doesn't detect it as an error. $ echo abQ | tr Q '\015' >>fast-import.c $ git diff --check I think this is because the "whitespace" attribute is set to *.[ch] files without specifying what kind of errors are caught. It makes git "notice all types of errors" (as described in the documentation), but I think it is incorrectly setting cr-at-eol, too, and hides this error. Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 June 2009, 17:42:37 UTC
c6720cf t3505: fix abuse of test_expect_code The test wanted to make sure that cherry-pick exits with status 1, but with the way it was placed after "git checkout master &&" meant that it could have misjudged success if checkout barfed with the same failure status. Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 June 2009, 09:01:28 UTC
3ba4f3a Merge branch 'maint-1.6.2' into maint * maint-1.6.2: git-show-ref.txt: remove word and make consistent git-svn documentation: fix typo in 'rebase vs. pull/merge' section use xstrdup, not strdup in ll-merge.c 21 June 2009, 06:48:46 UTC
cd12f53 Merge branch 'maint-1.6.1' into maint-1.6.2 * maint-1.6.1: git-show-ref.txt: remove word and make consistent git-svn documentation: fix typo in 'rebase vs. pull/merge' section use xstrdup, not strdup in ll-merge.c 21 June 2009, 06:48:28 UTC
4258c21 Merge branch 'maint-1.6.0' into maint-1.6.1 * maint-1.6.0: git-show-ref.txt: remove word and make consistent git-svn documentation: fix typo in 'rebase vs. pull/merge' section use xstrdup, not strdup in ll-merge.c 21 June 2009, 06:48:21 UTC
d4900ee git-show-ref.txt: remove word and make consistent Under is better than in because of the nested nature of the .git directory. "also using" sounds a little odd, plus we say combined with later on so just use that. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 June 2009, 06:45:51 UTC
ccf497d git-svn documentation: fix typo in 'rebase vs. pull/merge' section Signed-off-by: Miklos Vajna <vmiklos@frugalware.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 June 2009, 04:20:51 UTC
ef52aaf http.c: fix compiling with libcurl 7.9.2 Change the minimimum required libcurl version for the http.sslKey option to 7.9.3. Previously, preprocessor macros checked for >= 7.9.2, which is incorrect because CURLOPT_SSLKEY was introduced in 7.9.3. This now allows git to compile with libcurl 7.9.2. Signed-off-by: Mark Lodato <lodatom@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 18 June 2009, 17:10:30 UTC
6fb37f8 import-tars: support symlinks Without this patch, symbolic links are turned into empty files. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 18 June 2009, 16:53:53 UTC
1b19fa4 upload-archive: fix infinite loop on Cygwin On Cygwin, poll() reports POLLIN even for file descriptors that have reached their end. This caused git upload-archive to be stuck in an infinite loop, as it only looked at the POLLIN flag. In addition to POLLIN, check if read() returned 0, which indicates end-of-file, and keep looping only as long as at least one of the file descriptors has input. This lets the following command finish on its own when run in a git repository on Cygwin, instead of it getting stuck after printing all file names: $ git archive -v --remote . HEAD >/dev/null Reported-by: Bob Kagy <bobkagy@gmail.com> Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 18 June 2009, 16:52:28 UTC
959e2e6 avoid exponential regex match for java and objc function names In the old regex ^[ \t]*(([ \t]*[A-Za-z_][A-Za-z_0-9]*){2,}[ \t]*\([^;]*)$ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ you can backtrack arbitrarily from [A-Za-z_0-9]* into [A-Za-z_], thus causing an exponential number of backtracks. Ironically it also causes the regex not to work as intended; for example "catch" can match the underlined part of the regex, the first repetition matching "c" and the second matching "atch". The replacement regex avoids this problem, because it makes sure that at least a space/tab is eaten on each repetition. In other words, a suffix of a repetition can never be a prefix of the next repetition. Signed-off-by: Paolo Bonzini <bonzini@gnu.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 18 June 2009, 16:52:10 UTC
48fb7de Fix big left-shifts of unsigned char Shifting 'unsigned char' or 'unsigned short' left can result in sign extension errors, since the C integer promotion rules means that the unsigned char/short will get implicitly promoted to a signed 'int' due to the shift (or due to other operations). This normally doesn't matter, but if you shift things up sufficiently, it will now set the sign bit in 'int', and a subsequent cast to a bigger type (eg 'long' or 'unsigned long') will now sign-extend the value despite the original expression being unsigned. One example of this would be something like unsigned long size; unsigned char c; size += c << 24; where despite all the variables being unsigned, 'c << 24' ends up being a signed entity, and will get sign-extended when then doing the addition in an 'unsigned long' type. Since git uses 'unsigned char' pointers extensively, we actually have this bug in a couple of places. I may have missed some, but this is the result of looking at git grep '[^0-9 ][ ]*<<[ ][a-z]' -- '*.c' '*.h' git grep '<<[ ]*24' which catches at least the common byte cases (shifting variables by a variable amount, and shifting by 24 bits). I also grepped for just 'unsigned char' variables in general, and converted the ones that most obviously ended up getting implicitly cast immediately anyway (eg hash_name(), encode_85()). In addition to just avoiding 'unsigned char', this patch also tries to use a common idiom for the delta header size thing. We had three different variations on it: "& 0x7fUL" in one place (getting the sign extension right), and "& ~0x80" and "& 0x7f" in two other places (not getting it right). Apart from making them all just avoid using "unsigned char" at all, I also unified them to then use a simple "& 0x7f". I considered making a sparse extension which warns about doing implicit casts from unsigned types to signed types, but it gets rather complex very quickly, so this is just a hack. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 18 June 2009, 16:22:46 UTC
bc2bbc4 pull, rebase: simplify to use die() Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 15 June 2009, 04:14:10 UTC
90dce51 use xstrdup, not strdup in ll-merge.c Otherwise, a fluky allocation failure would cause merge configuration settings to be silently ignored. Signed-off-by: Jim Meyering <meyering@redhat.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 14 June 2009, 20:37:14 UTC
50a991e Merge branch 'maint-1.6.2' into maint * maint-1.6.2: git-rerere.txt: grammatical fixups and cleanups 14 June 2009, 00:10:08 UTC
9b7dc71 Merge branch 'maint-1.6.1' into maint-1.6.2 * maint-1.6.1: git-rerere.txt: grammatical fixups and cleanups 14 June 2009, 00:09:50 UTC
dfe5051 Merge branch 'maint-1.6.0' into maint-1.6.1 * maint-1.6.0: git-rerere.txt: grammatical fixups and cleanups http-push.c::remove_locks(): fix use after free 14 June 2009, 00:09:45 UTC
c97038d git-rerere.txt: grammatical fixups and cleanups Rewrite the gc section using unresolved and resolved instead of "not recorded". Add plurals and missing articles. Make some sentences have consistent tense. Try and be more active by removing "that" and simplifying sentences. The terms "hand-resolve" and "hand resolve" were used, so just use "hand resolve" to be more consistent. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 13 June 2009, 19:44:41 UTC
94af7c3 Documentation: git-send-mail can take rev-list arg to drive format-patch The git-send-email docs do not mention except in the usage lines the combined patch formatting/sending ability of git-send-email. This patch expands on the possible arguments to git-send-email and explains the meaning of the rev-list argument. Signed-off-by: Paolo Bonzini <bonzini@gnu.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 12 June 2009, 06:35:05 UTC
a0c0447 Merge branch 'uk/maint-1.5.3-rebase-i-reflog' into maint * uk/maint-1.5.3-rebase-i-reflog: rebase--interactive: remote stray closing parenthesis Conflicts: git-rebase--interactive.sh 11 June 2009, 21:14:00 UTC
795cbe9 rebase--interactive: remote stray closing parenthesis it was introduced in 68a163c9b483ae352fcfee8c4505d113213daa73 Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Cc: Jöhännës "Dschö" Schindëlin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 11 June 2009, 21:01:15 UTC
802f9c9 diff.c: plug a memory leak in an error path Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 09 June 2009, 04:19:26 UTC
3ef67cf fetch-pack: close output channel after sideband demultiplexer terminates fetch-pack runs the sideband demultiplexer using start_async(). This facility requires that the asynchronously executed function closes the output file descriptor (see Documentation/technical/api-run-command.txt). But the sideband demultiplexer did not do that. This fixes it. In certain error situations this could lock up a fetch operation on Windows because the asynchronous function is run in a thread; by not closing the output fd the reading end never got EOF and waited for more data indefinitely. On Unix this is not a problem because the asynchronous function is run in a separate process, which exits after the function ends and so implicitly closes the output. Since the pack that is sent over the wire encodes the number of objects in the stream, during normal operation the reading end knows when the stream ends and terminates by itself, and does not lock up. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 09 June 2009, 04:18:41 UTC
934f82a fix handling of iconv configuration options Fix the way in which the configure script handles --without-iconv (and --with-iconv=no), which it used to essentially ignore. Also fix the way the configure script determines the value of NEEDS_LIBICONV, which would be incorrectly set to 'YesPlease' on systems that lack iconv entirely. Signed-off-by: Marco Nelissen <marcone@xs4all.nl> Signed-off-by: Junio C Hamano <gitster@pobox.com> 09 June 2009, 04:18:02 UTC
956d27a builtin-remote: Make "remote show" display all urls Currently, "git remote -v" lists all urls whereas "git remote show $remote" shows only the first. Make it so that both show all. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 08 June 2009, 22:01:12 UTC
801a011 Documentation: refer to gitworkflows(7) from tutorial and git(1) Add references to the gitworkflows(7) manpage added in f948dd8 (Documentation: add manpage about workflows, 2008-10-19) to both gittutorial(1) and git(1), so that new users might actually discover and read it. Noticed by Randal L. Schwartz. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> 06 June 2009, 20:30:41 UTC
73bb33a daemon: Strictly parse the "extra arg" part of the command Since 1.4.4.5 (49ba83fb67 "Add virtualization support to git-daemon") git daemon enters an infinite loop and never terminates if a client hides any extra arguments in the initial request line which is not exactly "\0host=blah\0". Since that change, a client must never insert additional extra arguments, or attempt to use any argument other than "host=", as any daemon will get stuck parsing the request line and will never complete the request. Since the client can't tell if the daemon is patched or not, it is not possible to know if additional extra args might actually be able to be safely requested. If we ever need to extend the git daemon protocol to support a new feature, we may have to do something like this to the exchange: # If both support git:// v2 # C: 000cgit://v2 S: 0010ok host user C: 0018host git.kernel.org C: 0027git-upload-pack /pub/linux-2.6.git S: ...git-upload-pack header... # If client supports git:// v2, server does not: # C: 000cgit://v2 S: <EOF> C: 003bgit-upload-pack /pub/linux-2.6.git\0host=git.kernel.org\0 S: ...git-upload-pack header... This requires the client to create two TCP connections to talk to an older git daemon, however all daemons since the introduction of daemon.c will safely reject the unknown "git://v2" command request, so the client can quite easily determine the server supports an older protocol. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 06 June 2009, 20:27:52 UTC
16493eb http*: cleanup slot->local after fclose Set slot->local to NULL after doing a fclose() on the file it points to. This prevents the passing of a FILE* pointer to a fclose()'d file to ftell() in http.c::run_active_slot(). This issue was raised by Clemens Buchacher on 30th May 2009: http://www.spinics.net/lists/git/msg104623.html Signed-off-by: Tay Ray Chuan <rctay89@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 06 June 2009, 17:30:16 UTC
6c7f58d GIT 1.6.3.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 June 2009, 05:47:48 UTC
84201ea grep: fix empty word-regexp matches The command "git grep -w ''" dies as soon as it encounters an empty line, reporting (wrongly) that "regexp returned nonsense". The first hunk of this patch relaxes the sanity check that is responsible for that, allowing matches to start at the end. The second hunk complements it by making sure that empty matches are rejected if -w was specified, as they are not really words. GNU grep does the same: $ echo foo | grep -c '' 1 $ echo foo | grep -c -w '' 0 Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 June 2009, 18:32:29 UTC
a9b2d42 blame: correctly handle a path that used to be a directory When trying to see if the same path exists in the parent, we ran "diff-tree" with pathspec set to the path we are interested in with the parent, and expect either to have exactly one resulting filepair (either "changed from the parent", "created when there was none") or nothing (when there is no change from the parent). If the path used to be a directory, however, we will also see unbounded number of entries that talk about the files that used to exist underneath the directory in question. Correctly pick only the entry that describes the path we are interested in in such a case (namely, the creation of the path as a regular file). Noticed by Ben Willard. Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 June 2009, 07:49:34 UTC
8dc3a47 add -i: do not dump patch during application Remove a debugging print that snuck in at 7a26e65 (Revert "git-add--interactive: remove hunk coalescing", 2009-05-16). Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 June 2009, 07:11:15 UTC
40bad52 Update draft release notes for 1.6.3.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> 02 June 2009, 15:11:30 UTC
456cb4c Merge branch 'cb/maint-1.6.0-xdl-merge-fix' into maint * cb/maint-1.6.0-xdl-merge-fix: Change xdl_merge to generate output even for null merges t6023: merge-file fails to output anything for a degenerate merge Conflicts: xdiff/xmerge.c 02 June 2009, 14:48:44 UTC
3489428 Merge branch 'rs/maint-grep-word-regexp-fix' into maint * rs/maint-grep-word-regexp-fix: grep: fix colouring of matches with zero length grep: fix word-regexp at the beginning of lines 02 June 2009, 14:48:09 UTC
b91ffd3 Merge branch 'sb/maint-1.6.2-opt-filename-fix' into maint * sb/maint-1.6.2-opt-filename-fix: apply, fmt-merge-msg: use relative filenames commit: -F overrides -t 02 June 2009, 14:47:03 UTC
f282326 Merge branch 'jc/maint-add-p-coalesce-fix' into maint * jc/maint-add-p-coalesce-fix: t3701: ensure correctly set up repository after skipped tests Revert "git-add--interactive: remove hunk coalescing" Splitting a hunk that adds a line at the top fails in "add -p" 02 June 2009, 14:46:52 UTC
db8af4b Merge branch 'tr/maint-doc-stash-pop' into maint * tr/maint-doc-stash-pop: Documentation: teach stash/pop workflow instead of stash/apply 02 June 2009, 14:43:45 UTC
1f5b9cc grep: fix colouring of matches with zero length If a zero-length match is encountered, break out of loop and show the rest of the line uncoloured. Otherwise we'd be looping forever, trying to make progress by advancing the pointer by zero characters. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 02 June 2009, 05:30:39 UTC
c8c562a refuse to merge during a merge The following is an easy mistake to make for users coming from version control systems with an "update and commit"-style workflow. 1. git pull 2. resolve conflicts 3. git pull Step 3 overrides MERGE_HEAD, starting a new merge with dirty index. IOW, probably not what the user intended. Instead, refuse to merge again if a merge is in progress. Reported-by: Dave Olszewski <cxreg@pobox.com> Signed-off-by: Clemens Buchacher <drizzd@aon.at> Signed-off-by: Junio C Hamano <gitster@pobox.com> 02 June 2009, 02:42:17 UTC
b7dd2d2 for-each-ref: Do not lookup objects when they will not be used This makes commands such as `git for-each-ref --format='%(refname)'`, which are used heavily by the bash_completion code, run about 6 times faster on an uncached repository (3 s intead of 18 s on my linux-2.6 repository with several remotes). Signed-off-by: Anders Kaseorg <andersk@mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2009, 06:56:19 UTC
7b8988e Documentation: teach stash/pop workflow instead of stash/apply Recent discussion on the list showed some comments in favour of a stash/pop workflow: http://marc.info/?l=git&m=124234911423358&w=2 http://marc.info/?l=git&m=124235348327711&w=2 Change the stash documentation and examples to document pop in its own right (and apply in terms of pop), and use stash/pop in the examples. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2009, 06:52:25 UTC
6a01554 fix segfault showing an empty remote In case of an empty list, the search for its tail caused a NULL-pointer dereference. Signed-off-by: Clemens Buchacher <drizzd@aon.at> Reported-by: Erik Faye-Lund <kusmabite@googlemail.com> Acked-by: Jay Soffian <jaysoffian@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 May 2009, 06:16:16 UTC
e57cb01 Prepare for 1.6.3.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> 26 May 2009, 02:20:39 UTC
2a1feb9 Merge branch 'js/maint-no-ln-across-libexec-and-bin' into maint * js/maint-no-ln-across-libexec-and-bin: Add NO_CROSS_DIRECTORY_HARDLINKS support to the Makefile Conflicts: Makefile 26 May 2009, 02:04:29 UTC
5e04a1e Merge branch 'lt/maint-diff-reduce-lstat' into maint * lt/maint-diff-reduce-lstat: Teach 'git checkout' to preload the index contents Avoid unnecessary 'lstat()' calls in 'get_stat_data()' 26 May 2009, 02:04:08 UTC
597a178 Merge branch 'jm/format-patch-no-auto-n-when-k-is-given' into maint * jm/format-patch-no-auto-n-when-k-is-given: format-patch let -k override a config-specified format.numbered 26 May 2009, 02:03:52 UTC
5c44cc9 Merge branch 'do/maint-merge-recursive-fix' into maint * do/maint-merge-recursive-fix: merge-recursive: never leave index unmerged while recursing 26 May 2009, 02:03:43 UTC
4176537 Merge branch 'jk/maint-1.6.0-trace-argv' into maint * jk/maint-1.6.0-trace-argv: fix GIT_TRACE segfault with shell-quoted aliases Conflicts: alias.c 26 May 2009, 02:03:20 UTC
4619136 Merge branch 'np/push-delta' into maint * np/push-delta: allow OFS_DELTA objects during a push 26 May 2009, 02:02:11 UTC
e82f625 Merge branch 'ar/merge-one-file-diag' into maint * ar/merge-one-file-diag: Clarify kind of conflict in merge-one-file helper 26 May 2009, 02:01:59 UTC
2c5942d Merge branch 'ar/unlink-err' into maint * ar/unlink-err: print unlink(2) errno in copy_or_link_directory replace direct calls to unlink(2) with unlink_or_warn Introduce an unlink(2) wrapper which gives warning if unlink failed 26 May 2009, 02:01:50 UTC
43f8f56 Merge branch 'jk/maint-add-empty' into maint * jk/maint-add-empty: add: don't complain when adding empty project root 26 May 2009, 02:01:41 UTC
0e5168f fix cat-file usage message and documentation cat-file with an object on the command line requires an option to tell it what to output (type, size, pretty-print, etc). However, the square brackets in the usage imply that those options are not required. This patch switches them to parentheses to indicate "required but grouped-OR" (curly braces might also work, but this follows the convention used already by "git stash"). While we're at it, let's change the <sha1> specifier in the usage to <object>. That's what the documentation uses, and it does actually use the regular object lookup. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2009, 19:08:15 UTC
fa25075 fetch: report ref storage DF errors more accurately When we fail to store a fetched ref, we recommend that the user try running "git prune" to remove up any old refs that have been deleted by the remote, which would clear up any DF conflicts. However, ref storage might fail for other reasons (e.g., permissions problems) in which case the advice is useless and misleading. This patch detects when there is an actual DF situation and only issues the advice when one is found. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2009, 19:07:07 UTC
f475e08 lock_ref: inform callers of unavailable ref One of the ways that locking might fail is that there is a DF conflict between two refs (e.g., you want to lock "foo/bar" but "foo" already exists). In this case, we return an error, but there is no way for the caller to know the specific problem. This patch sets errno to ENOTDIR, which is the most sensible code. It's what we would see if the refs were stored purely in the filesystem (but these days we must check the namespace manually due to packed refs). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2009, 19:06:54 UTC
32a9023 t3701: ensure correctly set up repository after skipped tests There are two tests that are skipped if file modes are not obeyed by the file system. In this case, the subsequent test failed because the repository was in an unexpected state. This corrects it. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2009, 18:23:30 UTC
f5d4c4d merge-options.txt: Clarify merge --squash With the --squash option, merge sets up the index just like for a real merge, but without the merge info (stages). Say so. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2009, 18:23:18 UTC
5719db9 Change xdl_merge to generate output even for null merges xdl_merge used to have a check to ensure that there was at least some change in one or other side being merged but this suppressed output for the degenerate case when base, local and remote contents were all identical. Removing this check enables correct output in the degenerate case and xdl_free_script handles freeing NULL scripts so there is no need to have the check for these calls. Signed-off-by: Charles Bailey <charles@hashpling.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2009, 06:56:34 UTC
1cd1292 t6023: merge-file fails to output anything for a degenerate merge In the case that merge-file is passed three files with identical contents it wipes the contents of the output file instead of leaving it unchanged. Althought merge-file is porcelain and this will never happen in normal usage, it is still wrong. Signed-off-by: Charles Bailey <charles@hashpling.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2009, 06:46:03 UTC
f5b223a Merge branch 'maint-1.6.2' into maint * maint-1.6.2: http-push.c::remove_locks(): fix use after free 24 May 2009, 22:29:33 UTC
34ab57d Merge branch 'maint-1.6.1' into maint-1.6.2 * maint-1.6.1: http-push.c::remove_locks(): fix use after free 24 May 2009, 22:29:23 UTC
ff6e93f Merge branch 'maint-1.6.0' into maint-1.6.1 * maint-1.6.0: http-push.c::remove_locks(): fix use after free 24 May 2009, 22:29:13 UTC
6589ebf http-push.c::remove_locks(): fix use after free Noticed and reported by Serhat Şevki Dinçer. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Acked-by: Clemens Buchacher <drizzd@aon.at> Signed-off-by: Junio C Hamano <gitster@pobox.com> 24 May 2009, 18:08:31 UTC
dbb6a4a grep: fix word-regexp at the beginning of lines After bol is forwarded, it doesn't represent the beginning of the line any more. This means that the beginning-of-line marker (^) mustn't match, i.e. the regex flag REG_NOTBOL needs to be set. This bug was introduced by fb62eb7fab97cea880ea7fe4f341a4dfad14ab48 ("grep -w: forward to next possible position after rejected match"). Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 23 May 2009, 23:29:05 UTC
4c8d4c1 apply, fmt-merge-msg: use relative filenames Commit dbd0f5c7 (Files given on the command line are relative to $cwd, 2008-08-06) only fixed git-commit and git-tag. But, git-apply and git-fmt-merge-msg didn't get the update and exhibit the same behavior. Fix them and add tests for "apply --build-fake-ancestor" and "fmt-merge-msg -F". Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 23 May 2009, 22:45:52 UTC
aae94ff commit: -F overrides -t Commit dbd0f5c7 (Files given on the command line are relative to $cwd, 2008-08-06) introduced parse_options_fix_filename() as a quick fix for filename arguments used in the parse options API. git-commit was still broken. This means git commit -F log -t temp in a subdirectory would make git think the log message should be taken from temp instead of log. This is because parse_options_fix_filename() calls prefix_filename() which uses a single static char buffer to do its work. Making two calls with two char pointers causes the pointers to alias. To prevent aliasing, we duplicate the string returned by parse_options_fix_filename(). Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 23 May 2009, 22:45:52 UTC
e701fad grep: fix word-regexp colouring As noticed by Dmitry Gryazin: When a pattern is found but it doesn't start and end at word boundaries, bol is forwarded to after the match and the pattern is searched again. When a pattern is finally found between word boundaries, the match offsets are off by the number of characters that have been skipped. This patch corrects the offsets to be relative to the value of bol as passed to match_one_pattern() by its caller. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 May 2009, 01:49:20 UTC
8dfb17e completion: use git rev-parse to detect bare repos Its check is more robust than a config check for core.bare Trivially-Acked-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 May 2009, 01:35:23 UTC
fd73ccf Cope better with a _lot_ of packs You might end up with a situation where you have tons of pack files, e.g. when using hg2git. In this situation, all kinds of operations may end up with a "too many files open" error. Let's recover gracefully from that. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Looks-right-to-me-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 May 2009, 01:23:06 UTC
e64c1b0 for-each-ref: fix segfault in copy_email You can trigger a segfault in git.git by doing: git for-each-ref --format='%(taggeremail)' refs/tags/v0.99 The v0.99 tag is special in that it contains no "tagger" header. The bug is obvious in copy_email, which carefully checks to make sure the result of a strchr is non-NULL, but only after already having used it to perform other work. The fix is to move the check up. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 20 May 2009, 07:06:19 UTC
5acb3e5 show-branch: Fix die message in parse_reflog_param() Commit 76a44c5 (show-branch --reflog: show the reflog message at the top, 2007-01-19) introduced parse_reflog_param(). The die() call was incorrectly passed arg + 9, when it should have been passed arg. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 19:05:22 UTC
076c323 completion: add missing options to show-branch and show Add --oneline and --abbrev-commit to show and --sparse to show-branch. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 05:46:22 UTC
da4b3e8 dir.c: clean up handling of 'path' parameter in read_directory_recursive() Right now we pass two different pathnames ('path' and 'base') down to read_directory_recursive(), and the only real reason for that is that we want to allow an empty 'base' parameter, but when we do so, we need the pathname to "opendir()" to be "." rather than the empty string. And rather than handle that confusion in the caller, we can just fix read_directory_recursive() to handle the case of an empty path itself, by just passing opendir() a "." ourselves if the path is empty. This would allow us to then drop one of the pathnames entirely from the calling convention, but rather than do that, we'll start separating them out as a "filesystem pathname" (the one we use for filesystem accesses) and a "git internal base name" (which is the name that we use for git internally). That will eventually allow us to do things like handle different encodings (eg the filesystem pathnames might be Latin1, while git itself would use UTF-8 for filename information). Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 05:41:46 UTC
b867d32 Fix type-punning issues In these two places we are casting part of our unsigned char sha1 array into an unsigned int, which violates GCCs strict-aliasing rules (and probably other compilers). Signed-off-by: Dan McGee <dpmcgee@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 05:41:18 UTC
e4b09da test: checkout shouldn't say that HEAD has moved if it didn't Signed-off-by: しらいしななこ <nanako3@lavabit.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 02:49:25 UTC
dd42c2f completion: enhance "current branch" display Introduce GIT_PS1_DESCRIBE option you can set to "contains", "branch", or "describe" to tweak the way how a detached HEAD is described. The default behaviour is to describe only exact match with some tag (otherwise use the first 7 hexdigits) as before. Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 02:46:31 UTC
ff790b6 completion: simplify "current branch" in __git_ps1() As I very often work on a detached HEAD, I found it pretty confusing when __git_ps1() said 'some-name'. Did I create a branch with that name by mistake, or do I happen to be on a commit with that exact tag? This patch fixes the issue by enclosing non branch names in a pair of parentheses when used to substitute %s token in __git_ps1() argument. It also fixes a small bug where the branch part is left empty when .git/HEAD is unreadable for whatever reason. The output now says "(unknown)". Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 02:46:31 UTC
8763dbb completion: fix PS1 display during a merge on detached HEAD If your merge stops in a conflict while on a detached HEAD, recent completion code fails to show anything. This was because various cases added to support the operation-in-progress markers (e.g. REBASE, MERGING) forgot that they need to set the variable "b" to something for the result they computed to be displayed at all. Probably not many people make trial merges on a detached HEAD (which is tremendously useful feature of git, by the way), and that may be why this was not noticed for a long time. Acked-By: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 02:46:31 UTC
7a26e65 Revert "git-add--interactive: remove hunk coalescing" This reverts commit 0beee4c6dec15292415e3d56075c16a76a22af54 but with a bit of twist, as we have added "edit hunk manually" hack and we cannot rely on the original line numbers of the hunks that were manually edited. Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 01:52:12 UTC
f67182b Splitting a hunk that adds a line at the top fails in "add -p" Splitting a hunk into two in add -p doesn't work for a diff that adds a new line at the top of the file with other add in the same hunk. Signed-off-by: Matthew Graham <mdg149@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 17 May 2009, 01:52:03 UTC
77ebd56 builtin-checkout: Don't tell user that HEAD has moved before it has Previously, checkout would tell the user this message before moving HEAD, without regard to whether the upcoming move will result in success. If the move failed, this causes confusion. Show the message after the move, unless the move failed. Signed-off-by: Daniel Cordero <theappleman@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 16 May 2009, 19:51:58 UTC
c646217 pre-commit.sample: don't print incidental SHA1 Make the sample pre-commit hook script discard all git-rev-parse output, not just stderr. Otherwise, it would print an SHA1. Signed-off-by: Jim Meyering <meyering@redhat.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 16 May 2009, 18:57:17 UTC
f044fe2 tests: Add tests for missing format-patch long options Exercise format-patch's --signoff, --in-reply-to and --start-number long options. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 16 May 2009, 18:47:19 UTC
ca156cf api-parse-options.txt: use 'func' instead of 'funct' Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 16 May 2009, 18:47:10 UTC
90f2e65 Turn on USE_ST_TIMESPEC for OpenBSD Like Darwin, OpenBSD's stat struct uses st_ctimespec and st_mtimestruct rather than st_ctim and st_mtim. Signed-off-by: Tony Kemp <tony.kemp@newcastle.edu.au> Signed-off-by: Junio C Hamano <gitster@pobox.com> 16 May 2009, 17:23:26 UTC
13c5833 Merge branch 'maint-1.6.2' into maint * maint-1.6.2: ls-tree manpage: output of ls-tree is compatible with update-index ls-tree manpage: use "unless" instead of "when ... is not" 16 May 2009, 07:12:58 UTC
2131951 Merge branch 'maint-1.6.1' into maint-1.6.2 * maint-1.6.1: ls-tree manpage: output of ls-tree is compatible with update-index ls-tree manpage: use "unless" instead of "when ... is not" 14 May 2009, 04:06:11 UTC
58066be Merge branch 'maint-1.6.0' into maint-1.6.1 * maint-1.6.0: ls-tree manpage: output of ls-tree is compatible with update-index ls-tree manpage: use "unless" instead of "when ... is not" 14 May 2009, 04:05:59 UTC
3426e34 Add NO_CROSS_DIRECTORY_HARDLINKS support to the Makefile When the installed programs are tar'ed up and installed on a system where bin/ and libexec/git-core/ live on different file systems, we do not want libexec/git-core/git-* to be hardlinks to bin/git. Noticed by Cedric Staniewski. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 14 May 2009, 03:35:36 UTC
4774780 GIT 1.6.3.1 Signed-off-by: Junio C Hamano <gitster@pobox.com> 13 May 2009, 05:30:29 UTC
235236c Merge branch 'maint-1.6.2' into maint * maint-1.6.2: Revert "checkout branch: prime cache-tree fully" 12 May 2009, 16:58:34 UTC
back to top