ca00f80 | Junio C Hamano | 27 July 2015, 19:25:42 UTC | Git 2.4.7 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 July 2015, 19:25:42 UTC |
caac7a3 | Junio C Hamano | 27 July 2015, 19:21:48 UTC | Merge branch 'jk/pretty-encoding-doc' into maint Doc update. * jk/pretty-encoding-doc: docs: clarify that --encoding can produce invalid sequences | 27 July 2015, 19:21:48 UTC |
ff132a1 | Junio C Hamano | 27 July 2015, 19:21:47 UTC | Merge branch 'tb/checkout-doc' into maint Doc update. * tb/checkout-doc: git-checkout.txt: document "git checkout <pathspec>" better | 27 July 2015, 19:21:47 UTC |
3afcec9 | Junio C Hamano | 27 July 2015, 19:21:47 UTC | Merge branch 'ls/hint-rev-list-count' into maint * ls/hint-rev-list-count: rev-list: add --count to usage guide | 27 July 2015, 19:21:47 UTC |
315b3ba | Junio C Hamano | 27 July 2015, 19:21:46 UTC | Merge branch 'mm/branch-doc-updates' into maint * mm/branch-doc-updates: Documentation/branch: document -M and -D in terms of --force Documentation/branch: document -d --force and -m --force | 27 July 2015, 19:21:46 UTC |
bde6a72 | Junio C Hamano | 27 July 2015, 19:21:45 UTC | Merge branch 'jc/fsck-retire-require-eoh' into maint A fix to a minor regression to "git fsck" in v2.2 era that started complaining about a body-less tag object when it lacks a separator empty line after its header to separate it with a non-existent body. * jc/fsck-retire-require-eoh: fsck: it is OK for a tag and a commit to lack the body | 27 July 2015, 19:21:46 UTC |
c185936 | Junio C Hamano | 27 July 2015, 19:21:44 UTC | Merge branch 'et/http-proxyauth' into maint We used to ask libCURL to use the most secure authentication method available when talking to an HTTP proxy only when we were told to talk to one via configuration variables. We now ask libCURL to always use the most secure authentication method, because the user can tell libCURL to use an HTTP proxy via an environment variable without using configuration variables. * et/http-proxyauth: http: always use any proxy auth method available | 27 July 2015, 19:21:44 UTC |
342c14d | Junio C Hamano | 27 July 2015, 19:21:43 UTC | Merge branch 'jc/unexport-git-pager-in-use-in-pager' into maint When you say "!<ENTER>" while running say "git log", you'd confuse yourself in the resulting shell, that may look as if you took control back to the original shell you spawned "git log" from but that isn't what is happening. To that new shell, we leaked GIT_PAGER_IN_USE environment variable that was meant as a local communication between the original "Git" and subprocesses that was spawned by it after we launched the pager, which caused many "interesting" things to happen, e.g. "git diff | cat" still paints its output in color by default. Stop leaking that environment variable to the pager's half of the fork; we only need it on "Git" side when we spawn the pager. * jc/unexport-git-pager-in-use-in-pager: pager: do not leak "GIT_PAGER_IN_USE" to the pager | 27 July 2015, 19:21:44 UTC |
3b175fb | Junio C Hamano | 27 July 2015, 19:21:43 UTC | Merge branch 'mh/strbuf-read-file-returns-ssize-t' into maint Avoid possible ssize_t to int truncation. * mh/strbuf-read-file-returns-ssize-t: strbuf: strbuf_read_file() should return ssize_t | 27 July 2015, 19:21:43 UTC |
6f402a9 | Junio C Hamano | 27 July 2015, 19:21:42 UTC | Merge branch 'kb/config-unmap-before-renaming' into maint "git config" failed to update the configuration file when the underlying filesystem is incapable of renaming a file that is still open. * kb/config-unmap-before-renaming: config.c: fix writing config files on Windows network shares | 27 July 2015, 19:21:42 UTC |
726359b | Junio C Hamano | 27 July 2015, 19:21:42 UTC | Merge branch 'jk/rev-list-no-bitmap-while-pruning' into maint A minor bugfix when pack bitmap is used with "rev-list --count". * jk/rev-list-no-bitmap-while-pruning: rev-list: disable --use-bitmap-index when pruning commits | 27 July 2015, 19:21:42 UTC |
aa0b816 | Junio C Hamano | 27 July 2015, 19:21:41 UTC | Merge branch 'rh/test-color-avoid-terminfo-in-original-home' into maint An ancient test framework enhancement to allow color was not entirely correct; this makes it work even when tput needs to read from the ~/.terminfo under the user's real HOME directory. * rh/test-color-avoid-terminfo-in-original-home: test-lib.sh: fix color support when tput needs ~/.terminfo Revert "test-lib.sh: do tests for color support after changing HOME" | 27 July 2015, 19:21:41 UTC |
7c69600 | Junio C Hamano | 27 July 2015, 19:21:40 UTC | Merge branch 'jk/fix-refresh-utime' into maint Fix a small bug in our use of umask() return value. * jk/fix-refresh-utime: check_and_freshen_file: fix reversed success-check | 27 July 2015, 19:21:40 UTC |
3f8b439 | Junio C Hamano | 27 July 2015, 19:21:39 UTC | Merge branch 'cb/rebase-am-exit-code' into maint "git rebase" did not exit with failure when format-patch it invoked failed for whatever reason. * cb/rebase-am-exit-code: rebase: return non-zero error code if format-patch fails | 27 July 2015, 19:21:39 UTC |
de62fe8 | Junio C Hamano | 27 July 2015, 19:21:38 UTC | Merge branch 'jk/index-pack-reduce-recheck' into maint Disable "have we lost a race with competing repack?" check while receiving a huge object transfer that runs index-pack. * jk/index-pack-reduce-recheck: index-pack: avoid excessive re-reading of pack directory | 27 July 2015, 19:21:38 UTC |
bb3e7b1 | Junio C Hamano | 15 July 2015, 18:45:42 UTC | Git 2.4.6 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 July 2015, 19:31:07 UTC |
b7abfac | Junio C Hamano | 15 July 2015, 18:41:26 UTC | Merge branch 'mm/describe-doc' into maint Docfix. * mm/describe-doc: Documentation/describe: improve one-line summary | 15 July 2015, 18:41:26 UTC |
51d5980 | Junio C Hamano | 15 July 2015, 18:41:26 UTC | Merge branch 'jc/prompt-document-ps1-state-separator' into maint Docfix. * jc/prompt-document-ps1-state-separator: git-prompt.sh: document GIT_PS1_STATESEPARATOR | 15 July 2015, 18:41:26 UTC |
3f20927 | Junio C Hamano | 15 July 2015, 18:41:24 UTC | Merge branch 'es/osx-header-pollutes-mask-macro' into maint * es/osx-header-pollutes-mask-macro: ewah: use less generic macro name ewah/bitmap: silence warning about MASK macro redefinition | 15 July 2015, 18:41:24 UTC |
71a8af6 | Junio C Hamano | 15 July 2015, 18:41:23 UTC | Merge branch 'es/utf8-stupid-compiler-workaround' into maint A compilation workaround. * es/utf8-stupid-compiler-workaround: utf8: NO_ICONV: silence uninitialized variable warning | 15 July 2015, 18:41:23 UTC |
a15ebbc | Junio C Hamano | 15 July 2015, 18:41:22 UTC | Merge branch 'fk/doc-format-patch-vn' into maint Docfix. * fk/doc-format-patch-vn: doc: format-patch: fix typo | 15 July 2015, 18:41:22 UTC |
e9da4e6 | Junio C Hamano | 15 July 2015, 18:41:21 UTC | Merge branch 'pt/t0302-needs-sanity' into maint * pt/t0302-needs-sanity: t0302: "unreadable" test needs SANITY prereq | 15 July 2015, 18:41:21 UTC |
eca143b | Junio C Hamano | 15 July 2015, 18:41:20 UTC | Merge branch 'me/fetch-into-shallow-safety' into maint "git fetch --depth=<depth>" and "git clone --depth=<depth>" issued a shallow transfer request even to an upload-pack that does not support the capability. * me/fetch-into-shallow-safety: fetch-pack: check for shallow if depth given | 15 July 2015, 18:41:20 UTC |
697f67a | Junio C Hamano | 15 July 2015, 18:41:19 UTC | Merge branch 'mh/fsck-reflog-entries' into maint "git fsck" used to ignore missing or invalid objects recorded in reflog. * mh/fsck-reflog-entries: fsck: report errors if reflog entries point at invalid objects fsck_handle_reflog_sha1(): new function | 15 July 2015, 18:41:19 UTC |
ada9ecd | Junio C Hamano | 15 July 2015, 18:41:18 UTC | Merge branch 'af/tcsh-completion-noclobber' into maint The tcsh completion writes a bash scriptlet but that would have failed for users with noclobber set. * af/tcsh-completion-noclobber: git-completion.tcsh: fix redirect with noclobber | 15 July 2015, 18:41:18 UTC |
7c62118 | Junio C Hamano | 15 July 2015, 18:41:17 UTC | Merge branch 'pa/auto-gc-mac-osx' into maint Recent Mac OS X updates breaks the logic to detect that the machine is on the AC power in the sample pre-auto-gc script. * pa/auto-gc-mac-osx: hooks/pre-auto-gc: adjust power checking for newer OS X | 15 July 2015, 18:41:17 UTC |
93eba05 | Junio C Hamano | 15 July 2015, 18:41:16 UTC | Merge branch 'jc/do-not-feed-tags-to-clear-commit-marks' into maint "git format-patch --ignore-if-upstream A..B" did not like to be fed tags as boundary commits. * jc/do-not-feed-tags-to-clear-commit-marks: format-patch: do not feed tags to clear_commit_marks() | 15 July 2015, 18:41:16 UTC |
3096b2e | Jeff King | 08 July 2015, 20:33:52 UTC | check_and_freshen_file: fix reversed success-check When we want to write out a loose object file, we have always first made sure we don't already have the object somewhere. Since 33d4221 (write_sha1_file: freshen existing objects, 2014-10-15), we also update the timestamp on the file, so that a simultaneous prune knows somebody is likely to reference it soon. If our utime() call fails, we treat this the same as not having the object in the first place; the safe thing to do is write out another copy. However, the loose-object check accidentally inverts the utime() check; it returns failure _only_ when the utime() call actually succeeded. Thus it was failing to protect us there, and in the normal case where utime() succeeds, it caused us to pointlessly write out and link the object. This passed our freshening tests, because writing out the new object is certainly _one_ way of updating its utime. So the normal case was inefficient, but not wrong. While we're here, let's also drop a comment in front of the check_and_freshen functions, making a note of their return type (since it is not our usual "0 for success, -1 for error"). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 July 2015, 22:58:28 UTC |
60d708b | Clemens Buchacher | 02 July 2015, 09:11:33 UTC | rebase: return non-zero error code if format-patch fails Since e481af06 (rebase: Handle cases where format-patch fails) we notice if format-patch fails and return immediately from git-rebase--am. We save the return value with ret=$?, but then we return $?, which is usually zero in this case. Fix this by returning $ret instead. Cc: Andrew Wong <andrew.kw.w@gmail.com> Signed-off-by: Clemens Buchacher <clemens.buchacher@intel.com> Helped-by: Jorge Nunes <jorge.nunes@intel.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 July 2015, 22:36:42 UTC |
83fe167 | Matthieu Moy | 02 July 2015, 14:07:21 UTC | Documentation/branch: document -M and -D in terms of --force Now that we have proper documentation for --force's interaction with -d and -m, we can avoid duplication and consider -M and -D as convenience aliases for -m --force and -d --force. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 July 2015, 17:36:54 UTC |
8482d04 | Matthieu Moy | 02 July 2015, 14:07:20 UTC | Documentation/branch: document -d --force and -m --force The --force option was modified in 356e91f (branch: allow -f with -m and -d, 2014-12-08), but the documentation was not updated. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 July 2015, 17:36:51 UTC |
6c8afe4 | Michael Haggerty | 03 July 2015, 13:59:32 UTC | strbuf: strbuf_read_file() should return ssize_t It is currently declared to return int, which could overflow for large files. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 July 2015, 01:25:02 UTC |
124b519 | Junio C Hamano | 03 July 2015, 17:18:45 UTC | pager: do not leak "GIT_PAGER_IN_USE" to the pager Since 2e6c012e (setup_pager: set GIT_PAGER_IN_USE, 2011-08-17), we export GIT_PAGER_IN_USE so that a process that becomes the upstream of the spawned pager can still tell that we have spawned the pager and decide to do colored output even when its output no longer goes to a terminal (i.e. isatty(1)). But we forgot to clear it from the enviornment of the spawned pager. This is not a problem in a sane world, but if you have a handful of thousands Git users in your organization, somebody is bound to do strange things, e.g. typing "!<ENTER>" instead of 'q' to get control back from $LESS. GIT_PAGER_IN_USE is still set in that subshell spawned by "less", and all sorts of interesting things starts happening, e.g. "git diff | cat" starts coloring its output. We can clear the environment variable in the half of the fork that runs the pager to avoid the confusion. Signed-off-by: Junio C Hamano <gitster@pobox.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 04 July 2015, 01:07:21 UTC |
c8a70d3 | Jeff King | 01 July 2015, 18:42:17 UTC | rev-list: disable --use-bitmap-index when pruning commits The reachability bitmaps do not have enough information to tell us which commits might have changed path "foo", so the current code produces wrong answers for: git rev-list --use-bitmap-index --count HEAD -- foo (it silently ignores the "foo" limiter). Instead, we should fall back to doing a normal traversal (it is OK to fall back rather than complain, because --use-bitmap-index is a pure optimization, and might not kick in for other reasons, such as there being no bitmaps in the repository). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 July 2015, 19:00:50 UTC |
75d2e5a | Lawrence Siebert | 01 July 2015, 09:24:11 UTC | rev-list: add --count to usage guide --count should be mentioned in the usage guide, this updates code and documentation. Signed-off-by: Lawrence Siebert <lawrencesiebert@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 July 2015, 16:29:11 UTC |
7a64592 | Karsten Blees | 30 June 2015, 14:34:13 UTC | config.c: fix writing config files on Windows network shares Renaming to an existing file doesn't work on Windows network shares if the target file is open. munmap() the old config file before commit_lock_file. Signed-off-by: Karsten Blees <blees@dcon.de> Acked-by: Jeff King <peff@peff.net> Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 June 2015, 18:01:59 UTC |
5841520 | Enrique Tobis | 26 June 2015, 18:19:04 UTC | http: always use any proxy auth method available We set CURLOPT_PROXYAUTH to use the most secure authentication method available only when the user has set configuration variables to specify a proxy. However, libcurl also supports specifying a proxy through environment variables. In that case libcurl defaults to only using the Basic proxy authentication method, because we do not use CURLOPT_PROXYAUTH. Set CURLOPT_PROXYAUTH to always use the most secure authentication method available, even when there is no git configuration telling us to use a proxy. This allows the user to use environment variables to configure a proxy that requires an authentication method different from Basic. Signed-off-by: Enrique A. Tobis <etobis@twosigma.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 29 June 2015, 16:57:43 UTC |
84d18c0 | Junio C Hamano | 28 June 2015, 18:18:31 UTC | fsck: it is OK for a tag and a commit to lack the body When fsck validates a commit or a tag, it scans each line in the header of the object using helper functions such as "start_with()", etc. that work on a NUL terminated buffer, but before a1e920a0 (index-pack: terminate object buffers with NUL, 2014-12-08), the validation functions were fed the object data in a piece of memory that is not necessarily terminated with a NUL. We added a helper function require_end_of_header() to be called at the beginning of these validation functions to insist that the object data contains an empty line before its end. The theory is that the validating functions will notice and stop when it hits an empty line as a normal end of header (or a required header line that is missing) without scanning past the end of potentially not NUL-terminated buffer. But the theory forgot that in the older days, Git itself happily created objects with only the header lines without a body. This caused Git 2.2 and later to issue an unnecessary warning in some existing repositories. With a1e920a0, we do not need to require an empty line (or the body) in these objects to safely parse and validate them. Drop the offending "must have an empty line" check from this helper function, while keeping the other check to make sure that there is no NUL in the header part of the object, and adjust the name of the helper to what it does accordingly. Noticed-by: Wolfgang Denk <wd@denx.de> Helped-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 June 2015, 21:47:28 UTC |
351d06d | Junio C Hamano | 26 June 2015, 06:03:26 UTC | Merge branch 'jk/stash-require-clean-index' into maint A hotfix for the topic already in 'master'. * jk/stash-require-clean-index: Revert "stash: require a clean index to apply" | 26 June 2015, 06:03:27 UTC |
b1f0802 | Junio C Hamano | 26 June 2015, 06:03:25 UTC | Merge branch 'cb/array-size' into maint * cb/array-size: Fix definition of ARRAY_SIZE for non-gcc builds | 26 June 2015, 06:03:25 UTC |
0df0541 | Junio C Hamano | 25 June 2015, 18:03:05 UTC | Git 2.4.5 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 June 2015, 18:03:05 UTC |
ebf4fc9 | Junio C Hamano | 25 June 2015, 18:02:16 UTC | Merge branch 'sg/merge-summary-config' into maint Doc updates. * sg/merge-summary-config: Documentation: include 'merge.branchdesc' for merge and config as well | 25 June 2015, 18:02:17 UTC |
5fd7227 | Junio C Hamano | 25 June 2015, 18:02:15 UTC | Merge branch 'jk/make-fix-dependencies' into maint Build clean-up. * jk/make-fix-dependencies: Makefile: silence perl/PM.stamp recipe Makefile: avoid timestamp updates to GIT-BUILD-OPTIONS Makefile: drop dependency between git-instaweb and gitweb | 25 June 2015, 18:02:16 UTC |
68538cf | Junio C Hamano | 25 June 2015, 18:02:14 UTC | Merge branch 'sb/pack-protocol-mention-smart-http' into maint Doc updates. * sb/pack-protocol-mention-smart-http: Documentation/technical/pack-protocol: mention http as possible protocol | 25 June 2015, 18:02:14 UTC |
f2bd231 | Junio C Hamano | 25 June 2015, 18:02:13 UTC | Merge branch 'jk/die-on-bogus-worktree-late' into maint The setup code used to die when core.bare and core.worktree are set inconsistently, even for commands that do not need working tree. * jk/die-on-bogus-worktree-late: setup_git_directory: delay core.bare/core.worktree errors | 25 June 2015, 18:02:13 UTC |
6356003 | Junio C Hamano | 25 June 2015, 18:02:12 UTC | Merge branch 'pt/pull-tags-error-diag' into maint There was a dead code that used to handle "git pull --tags" and show special-cased error message, which was made irrelevant when the semantics of the option changed back in Git 1.9 days. * pt/pull-tags-error-diag: pull: remove --tags error in no merge candidates case | 25 June 2015, 18:02:12 UTC |
6998d89 | Junio C Hamano | 25 June 2015, 18:02:11 UTC | Merge branch 'jk/color-diff-plain-is-context' into maint "color.diff.plain" was a misnomer; give it 'color.diff.context' as a more logical synonym. * jk/color-diff-plain-is-context: diff.h: rename DIFF_PLAIN color slot to DIFF_CONTEXT diff: accept color.diff.context as a synonym for "plain" | 25 June 2015, 18:02:11 UTC |
c5baf18 | Junio C Hamano | 25 June 2015, 18:02:10 UTC | Merge branch 'jk/diagnose-config-mmap-failure' into maint The configuration reader/writer uses mmap(2) interface to access the files; when we find a directory, it barfed with "Out of memory?". * jk/diagnose-config-mmap-failure: xmmap(): drop "Out of memory?" config.c: rewrite ENODEV into EISDIR when mmap fails config.c: avoid xmmap error messages config.c: fix mmap leak when writing config read-cache.c: drop PROT_WRITE from mmap of index | 25 June 2015, 18:02:11 UTC |
c533125 | Junio C Hamano | 25 June 2015, 18:02:09 UTC | Merge branch 'jk/squelch-missing-link-warning-for-unreachable' into maint Recent "git prune" traverses young unreachable objects to safekeep old objects in the reachability chain from them, which sometimes caused error messages that are unnecessarily alarming. * jk/squelch-missing-link-warning-for-unreachable: suppress errors on missing UNINTERESTING links silence broken link warnings with revs->ignore_missing_links add quieter versions of parse_{tree,commit} | 25 June 2015, 18:02:10 UTC |
f249409 | Junio C Hamano | 25 June 2015, 18:02:09 UTC | Merge branch 'mm/rebase-i-post-rewrite-exec' into maint "git rebase -i" fired post-rewrite hook when it shouldn't (namely, when it was told to stop sequencing with 'exec' insn). * mm/rebase-i-post-rewrite-exec: t5407: use <<- to align the expected output rebase -i: fix post-rewrite hook with failed exec command rebase -i: demonstrate incorrect behavior of post-rewrite | 25 June 2015, 18:02:09 UTC |
e2c6f7c | Charles Bailey | 24 June 2015, 22:12:07 UTC | Fix definition of ARRAY_SIZE for non-gcc builds The improved ARRAY_SIZE macro uses BARF_UNLESS_AN_ARRAY which expands to a valid check for recent gcc versions and to 0 for older gcc versions but is not defined on non-gcc builds. Non-gcc builds need this macro to expand to 0 as well. The current outer test (defined(__GNUC__) && (__GNUC__ >= 3)) is a strictly weaker condition than the inner test (GIT_GNUC_PREREQ(3, 1)) so we can omit the outer test and cause the BARF_UNLESS_AN_ARRAY macro to be defined correctly on non-gcc builds as well as gcc builds with older versions. Signed-off-by: Charles Bailey <cbailey32@bloomberg.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 June 2015, 00:14:00 UTC |
d5c1b7c | Richard Hansen | 17 June 2015, 21:11:21 UTC | test-lib.sh: fix color support when tput needs ~/.terminfo If tput needs ~/.terminfo for the current $TERM, then tput will succeed before HOME is changed to $TRASH_DIRECTORY (causing color to be set to 't') but fail afterward. One possible way to fix this is to treat HOME like TERM: back up the original value and temporarily restore it before say_color() runs tput. Instead, pre-compute and save the color control sequences before changing either TERM or HOME. Use the saved control sequences in say_color() rather than call tput each time. This avoids the need to back up and restore the TERM and HOME variables, and it avoids the overhead of a subshell and two invocations of tput per call to say_color(). Signed-off-by: Richard Hansen <rhansen@bbn.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 June 2015, 22:16:52 UTC |
e479c5f | Jeff King | 17 June 2015, 18:46:08 UTC | docs: clarify that --encoding can produce invalid sequences In the common case that the commit encoding matches the output encoding, we do not touch the buffer at all, which makes things much more efficient. But it might be unclear to a consumer that we will pass through bogus sequences. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 June 2015, 20:46:36 UTC |
c4ac525 | Torsten Bögershausen | 17 June 2015, 07:54:51 UTC | git-checkout.txt: document "git checkout <pathspec>" better git checkout <pathspec> can be used to reset changes in the working tree. Signed-off-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 June 2015, 20:33:06 UTC |
ca92a66 | Richard Hansen | 17 June 2015, 19:06:25 UTC | Revert "test-lib.sh: do tests for color support after changing HOME" This reverts commit 102fc80d32094ad6598b17ab9d607516ee8edc4a. There are two issues with that commit: * It is buggy. In pseudocode, it is doing: color is set || TERM != dumb && color works && color=t when it should be doing: color is set || { TERM != dumb && color works && color=t } * It unnecessarily disables color when tput needs to read ~/.terminfo to get the control sequences. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 June 2015, 20:05:00 UTC |
eb86a50 | Mike Edgar | 17 June 2015, 11:48:14 UTC | fetch-pack: check for shallow if depth given When a repository is first fetched as a shallow clone, either by git-clone or by fetching into an empty repo, the server's capabilities are not currently consulted. The client will send shallow requests even if the server does not understand them, and the resulting error may be unhelpful to the user. This change pre-emptively checks so we can exit with a helpful error if necessary. Signed-off-by: Mike Edgar <adgar@google.com> Reviewed-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 June 2015, 19:03:58 UTC |
f09bd21 | Junio C Hamano | 16 June 2015, 21:38:01 UTC | Git 2.4.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 June 2015, 21:38:01 UTC |
37d6f93 | Junio C Hamano | 16 June 2015, 21:33:52 UTC | Merge branch 'jk/clone-dissociate' into maint Code clean-up. * jk/clone-dissociate: clone: reorder --dissociate and --reference options clone: use OPT_STRING_LIST for --reference | 16 June 2015, 21:33:52 UTC |
0d9388d | Junio C Hamano | 16 June 2015, 21:33:52 UTC | Merge branch 'sb/submodule-doc-intro' into maint * sb/submodule-doc-intro: submodule doc: reorder introductory paragraphs | 16 June 2015, 21:33:52 UTC |
6de4c80 | Junio C Hamano | 16 June 2015, 21:33:51 UTC | Merge branch 'sb/glossary-submodule' into maint * sb/glossary-submodule: glossary: add "remote", "submodule", "superproject" | 16 June 2015, 21:33:51 UTC |
6588f82 | Junio C Hamano | 16 June 2015, 21:33:50 UTC | Merge branch 'ah/usage-strings' into maint A few usage string updates. * ah/usage-strings: blame, log: format usage strings similarly to those in documentation | 16 June 2015, 21:33:50 UTC |
afd647c | Junio C Hamano | 16 June 2015, 21:33:49 UTC | Merge branch 'mc/commit-doc-grammofix' into maint Doc grammar fix. * mc/commit-doc-grammofix: Documentation/git-commit: grammofix | 16 June 2015, 21:33:49 UTC |
dfb6759 | Junio C Hamano | 16 June 2015, 21:33:47 UTC | Merge branch 'rs/janitorial' into maint Code clean-up. * rs/janitorial: dir: remove unused variable sb clean: remove unused variable buf use file_exists() to check if a file exists in the worktree | 16 June 2015, 21:33:47 UTC |
2cd8ebd | Junio C Hamano | 16 June 2015, 21:33:47 UTC | Merge branch 'sb/test-bitmap-free-at-end' into maint An earlier leakfix to bitmap testing code was incomplete. * sb/test-bitmap-free-at-end: test_bitmap_walk: free bitmap with bitmap_free | 16 June 2015, 21:33:47 UTC |
6b2c0ea | Junio C Hamano | 16 June 2015, 21:33:46 UTC | Merge branch 'dt/clean-pathspec-filter-then-lstat' into maint "git clean pathspec..." tried to lstat(2) and complain even for paths outside the given pathspec. * dt/clean-pathspec-filter-then-lstat: clean: only lstat files in pathspec | 16 June 2015, 21:33:46 UTC |
b76b4cd | Junio C Hamano | 16 June 2015, 21:33:45 UTC | Merge branch 'jk/http-backend-deadlock' into maint Communication between the HTTP server and http_backend process can lead to a dead-lock when relaying a large ref negotiation request. Diagnose the situation better, and mitigate it by reading such a request first into core (to a reasonable limit). * jk/http-backend-deadlock: http-backend: spool ref negotiation requests to buffer t5551: factor out tag creation http-backend: fix die recursion with custom handler | 16 June 2015, 21:33:45 UTC |
070d276 | Junio C Hamano | 16 June 2015, 21:33:44 UTC | Merge branch 'jh/filter-empty-contents' into maint The clean/smudge interface did not work well when filtering an empty contents (failed and then passed the empty input through). It can be argued that a filter that produces anything but empty for an empty input is nonsense, but if the user wants to do strange things, then why not? * jh/filter-empty-contents: sha1_file: pass empty buffer to index empty file | 16 June 2015, 21:33:44 UTC |
659d4c8 | Junio C Hamano | 16 June 2015, 21:33:43 UTC | Merge branch 'jk/stash-options' into maint Make "git stash something --help" error out, so that users can safely say "git stash drop --help". * jk/stash-options: stash: recognize "--help" for subcommands stash: complain about unknown flags | 16 June 2015, 21:33:43 UTC |
4be33f7 | Junio C Hamano | 16 June 2015, 21:33:42 UTC | Merge branch 'mm/log-format-raw-doc' into maint Clarify that "log --raw" and "log --format=raw" are unrelated concepts. * mm/log-format-raw-doc: Documentation/log: clarify sha1 non-abbreviation in log --raw Documentation/log: clarify what --raw means | 16 June 2015, 21:33:43 UTC |
335f1a7 | Junio C Hamano | 16 June 2015, 21:33:41 UTC | Merge branch 'ep/do-not-feed-a-pointer-to-array-size' into maint Catch a programmer mistake to feed a pointer not an array to ARRAY_SIZE() macro, by using a couple of GCC extensions. * ep/do-not-feed-a-pointer-to-array-size: git-compat-util.h: implement a different ARRAY_SIZE macro for for safely deriving the size of array | 16 June 2015, 21:33:41 UTC |
25f600e | Matthieu Moy | 16 June 2015, 13:16:38 UTC | Documentation/describe: improve one-line summary git describe does not show 'the most recent tag that is reachable from a commit', but a descriptive name based on this tag. Fix the description to reflect that. Suggested-by: Albert Netymk <albertnetymk@gmail.com> Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 16 June 2015, 20:19:34 UTC |
1937610 | Jeff King | 15 June 2015, 18:27:22 UTC | Revert "stash: require a clean index to apply" This reverts commit ed178ef13a26136d86ff4e33bb7b1afb5033f908. That commit was an attempt to improve the safety of applying a stash, because the application process may create conflicted index entries, after which it is hard to restore the original index state. Unfortunately, this hurts some common workflows around "git stash -k", like: git add -p ;# (1) stage set of proposed changes git stash -k ;# (2) get rid of everything else make test ;# (3) make sure proposal is reasonable git stash apply ;# (4) restore original working tree If you "git commit" between steps (3) and (4), then this just works. However, if these steps are part of a pre-commit hook, you don't have that opportunity (you have to restore the original state regardless of whether the tests passed or failed). It's possible that we could provide better tools for this sort of workflow. In particular, even before ed178ef, it could fail with a conflict if there were conflicting hunks in the working tree and index (since the "stash -k" puts the index version into the working tree, and we then attempt to apply the differences between HEAD and the old working tree on top of that). But the fact remains that people have been using it happily for a while, and the safety provided by ed178ef is simply not that great. Let's revert it for now. In the long run, people can work on improving stash for this sort of workflow, but the safety tradeoff is not worth it in the meantime. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 15 June 2015, 20:11:17 UTC |
2c185f0 | Junio C Hamano | 14 June 2015, 21:24:49 UTC | Merge tag 'l10n-2.4-maint-de-updates' of git://github.com/git-l10n/git-po into maint l10n-2.4-maint-de-updates * tag 'l10n-2.4-maint-de-updates' of git://github.com/git-l10n/git-po: l10n: de.po: translation fix for fall-back to 3way merge l10n: de.po: punctuation fixes l10n: de.po: grammar fix l10n: de.po: change error message from "sagen" to "Meinten Sie" | 14 June 2015, 21:24:49 UTC |
c54c7b3 | Panagiotis Astithas | 11 June 2015, 14:37:25 UTC | hooks/pre-auto-gc: adjust power checking for newer OS X The output of "pmset -g batt" changed at some point from "Currently drawing from 'AC Power'" to the slightly different "Now drawing from 'AC Power'". Starting the match from "drawing" makes the check work in both old and new versions of OS X. Signed-off-by: Panagiotis Astithas <pastith@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 June 2015, 22:33:39 UTC |
329af6c | Paul Tan | 12 June 2015, 13:29:58 UTC | t0302: "unreadable" test needs SANITY prereq The test expects that "chmod -r ~/.git-credentials" would make it unreadable to the user, and thus needs the SANITY prerequisite. Reported-by: Jean-Yves LENHOF <jean-yves@lenhof.eu.org> Signed-off-by: Paul Tan <pyokagan@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 12 June 2015, 20:57:51 UTC |
a9845c5 | Michael J Gruber | 19 May 2015, 08:51:34 UTC | l10n: de.po: translation fix for fall-back to 3way merge The English version is correct, but misleading: It is not the 3way merge that is being patched also, but that is being fallen back to also. The German version translates the former meaning. Make it translate the latter. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 12 June 2015, 18:40:04 UTC |
47a1657 | Michael J Gruber | 19 May 2015, 08:51:33 UTC | l10n: de.po: punctuation fixes This respects the ellipsis style used in de.po. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 12 June 2015, 18:40:04 UTC |
872b1f2 | Michael J Gruber | 19 May 2015, 08:51:32 UTC | l10n: de.po: grammar fix Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 12 June 2015, 18:40:04 UTC |
39f9819 | Phillip Sz | 09 May 2015, 11:28:55 UTC | l10n: de.po: change error message from "sagen" to "Meinten Sie" We should not use "sagen" if someone has written something wrong. Although it's "say" in English, we should not use it in German and instead use our normal error message. Signed-off-by: Phillip Sz <phillip.szelat@gmail.com> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> | 12 June 2015, 18:39:42 UTC |
ab7fade | Joe Cridge | 10 June 2015, 17:19:24 UTC | git-prompt.sh: document GIT_PS1_STATESEPARATOR The environment variable GIT_PS1_STATESEPARATOR can be used to set the separator between the branch name and the state symbols in the prompt. At present the variable is not mentioned in the inline documentation which makes it difficult for the casual user to identify. Signed-off-by: Joe Cridge <joe.cridge@me.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 June 2015, 21:53:14 UTC |
d614f07 | Frans Klaver | 10 June 2015, 21:01:14 UTC | doc: format-patch: fix typo reroll count documentation states that v<n> will be pretended to the filename. Judging by the examples that should have been 'prepended'. Signed-off-by: Frans Klaver <fransklaver@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 June 2015, 21:37:04 UTC |
0eeb077 | Jeff King | 09 June 2015, 17:24:37 UTC | index-pack: avoid excessive re-reading of pack directory Since 45e8a74 (has_sha1_file: re-check pack directory before giving up, 2013-08-30), we spend extra effort for has_sha1_file to give the right answer when somebody else is repacking. Usually this effort does not matter, because after finding that the object does not exist, the next step is usually to die(). However, some code paths make a large number of has_sha1_file checks which are _not_ expected to return 1. The collision test in index-pack.c is such a case. On a local system, this can cause a performance slowdown of around 5%. But on a system with high-latency system calls (like NFS), it can be much worse. This patch introduces a "quick" flag to has_sha1_file which callers can use when they would prefer high performance at the cost of false negatives during repacks. There may be other code paths that can use this, but the index-pack one is the most obviously critical, so we'll start with switching that one. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 June 2015, 19:26:35 UTC |
0b1f688 | Ariel Faigon | 09 June 2015, 17:25:15 UTC | git-completion.tcsh: fix redirect with noclobber tcsh users who happen to have 'set noclobber' elsewhere in their ~/.tcshrc or ~/.cshrc startup files get a 'File exist' error, and the tcsh completion file doesn't get generated/updated. Adding a `!` in the redirect works correctly for both clobber (default) and 'set noclobber' users. Reviewed-by: Christian Couder <christian.couder@gmail.com> Signed-off-by: Ariel Faigon <github.2009@yendor.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 09 June 2015, 18:21:15 UTC |
19bf6c9 | Michael Haggerty | 08 June 2015, 13:40:05 UTC | fsck: report errors if reflog entries point at invalid objects Previously, if a reflog entry's old or new SHA-1 was not resolvable to an object, that SHA-1 was silently ignored. Instead, report such cases as errors. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 June 2015, 19:40:36 UTC |
d66ae59 | Michael Haggerty | 08 June 2015, 13:40:04 UTC | fsck_handle_reflog_sha1(): new function New function, extracted from fsck_handle_reflog_ent(). The extra is_null_sha1() test for the new reference is currently unnecessary, as reflogs are deleted when the reference itself is deleted. But it doesn't hurt, either. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 08 June 2015, 19:37:32 UTC |
e654eb2 | Eric Sunshine | 05 June 2015, 06:42:16 UTC | utf8: NO_ICONV: silence uninitialized variable warning The last argument of reencode_string_len() is an 'int *' which is assigned the length of the converted string. When NO_ICONV is defined, however, reencode_string_len() is stubbed out by the macro: #define reencode_string_len(a,b,c,d,e) NULL which never assigns a value to the final argument. When called like this: int n; char *s = reencode_string_len(..., &n); if (s) do_something(s, n); some compilers complain that 'n' is used uninitialized within the conditional. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Reviewed-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 05 June 2015, 22:36:35 UTC |
69f9a6e | Junio C Hamano | 05 June 2015, 19:15:57 UTC | Git 2.4.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 05 June 2015, 19:22:33 UTC |
cbac706 | Junio C Hamano | 05 June 2015, 19:00:29 UTC | Merge branch 'dl/branch-error-message' into maint Error messages from "git branch" called remote-tracking branches as "remote branches". * dl/branch-error-message: branch: do not call a "remote-tracking branch" a "remote branch" | 05 June 2015, 19:00:29 UTC |
c538004 | Junio C Hamano | 05 June 2015, 19:00:28 UTC | Merge branch 'jk/skip-http-tests-under-no-curl' into maint Test clean-up. * jk/skip-http-tests-under-no-curl: tests: skip dav http-push tests under NO_EXPAT=NoThanks t/lib-httpd.sh: skip tests if NO_CURL is defined | 05 June 2015, 19:00:28 UTC |
e41f8d9 | Junio C Hamano | 05 June 2015, 19:00:27 UTC | Merge branch 'ps/doc-packfile-vs-pack-file' into maint Doc consistency updates. * ps/doc-packfile-vs-pack-file: doc: fix inconsistent spelling of "packfile" pack-protocol.txt: fix insconsistent spelling of "packfile" git-unpack-objects.txt: fix inconsistent spelling of "packfile" git-verify-pack.txt: fix inconsistent spelling of "packfile" | 05 June 2015, 19:00:27 UTC |
48feda5 | Junio C Hamano | 05 June 2015, 19:00:26 UTC | Merge branch 'fg/document-commit-message-stripping' into maint * fg/document-commit-message-stripping: Documentation: clarify how "git commit" cleans up the edited log message | 05 June 2015, 19:00:26 UTC |
5c2e654 | Junio C Hamano | 05 June 2015, 19:00:25 UTC | Merge branch 'jk/rerere-forget-check-enabled' into maint "git rerere forget" in a repository without rerere enabled gave a cryptic error message; it should be a silent no-op instead. * jk/rerere-forget-check-enabled: rerere: exit silently on "forget" when rerere is disabled | 05 June 2015, 19:00:25 UTC |
4cb9fe3 | Junio C Hamano | 05 June 2015, 19:00:24 UTC | Merge branch 'pt/pull-log-n' into maint "git pull --log" and "git pull --no-log" worked as expected, but "git pull --log=20" did not. * pt/pull-log-n: pull: handle --log=<n> | 05 June 2015, 19:00:24 UTC |
7e46f27 | Junio C Hamano | 05 June 2015, 19:00:23 UTC | Merge branch 'pt/pull-ff-vs-merge-ff' into maint The pull.ff configuration was supposed to override the merge.ff configuration, but it didn't. * pt/pull-ff-vs-merge-ff: pull: parse pull.ff as a bool or string pull: make pull.ff=true override merge.ff | 05 June 2015, 19:00:23 UTC |
0662990 | Junio C Hamano | 05 June 2015, 19:00:22 UTC | Merge branch 'rs/plug-leak-in-pack-bitmaps' into maint The code to read pack-bitmap wanted to allocate a few hundred pointers to a structure, but by mistake allocated and leaked memory enough to hold that many actual structures. Correct the allocation size and also have it on stack, as it is small enough. * rs/plug-leak-in-pack-bitmaps: pack-bitmaps: plug memory leak, fix allocation size for recent_bitmaps | 05 June 2015, 19:00:22 UTC |
7c1ff53 | Junio C Hamano | 05 June 2015, 19:00:22 UTC | Merge branch 'ja/tutorial-asciidoctor-fix' into maint A literal block in the tutorial had lines with unequal lengths to delimit it from the rest of the document, which choke GitHub's AsciiDoc renderer. * ja/tutorial-asciidoctor-fix: doc: fix unmatched code fences | 05 June 2015, 19:00:22 UTC |
413a715 | Junio C Hamano | 05 June 2015, 19:00:20 UTC | Merge branch 'jk/stripspace-asciidoctor-fix' into maint A literal block in the tutorial had lines with unequal lengths to delimit it from the rest of the document, which choke GitHub's AsciiDoc renderer. * jk/stripspace-asciidoctor-fix: doc: fix unmatched code fences in git-stripspace | 05 June 2015, 19:00:21 UTC |
96b7f93 | Junio C Hamano | 05 June 2015, 19:00:19 UTC | Merge branch 'jk/asciidoc-markup-fix' into maint Various documentation mark-up fixes to make the output more consistent in general and also make AsciiDoctor (an alternative formatter) happier. * jk/asciidoc-markup-fix: doc: convert AsciiDoc {?foo} to ifdef::foo[] doc: put example URLs and emails inside literal backticks doc: drop backslash quoting of some curly braces doc: convert \--option to --option doc/add: reformat `--edit` option doc: fix length of underlined section-title doc: fix hanging "+"-continuation doc: fix unquoted use of "{type}" doc: fix misrendering due to `single quote' | 05 June 2015, 19:00:19 UTC |
51f319c | Junio C Hamano | 05 June 2015, 19:00:18 UTC | Merge branch 'ps/bundle-verify-arg' into maint "git bundle verify" did not diagnose extra parameters on the command line. * ps/bundle-verify-arg: bundle: verify arguments more strictly | 05 June 2015, 19:00:18 UTC |
7c997bc | Junio C Hamano | 05 June 2015, 19:00:17 UTC | Merge branch 'mh/write-refs-sooner-2.4' into maint Multi-ref transaction support we merged a few releases ago unnecessarily kept many file descriptors open, risking to fail with resource exhaustion. This is for 2.4.x track. * mh/write-refs-sooner-2.4: ref_transaction_commit(): fix atomicity and avoid fd exhaustion ref_transaction_commit(): remove the local flags variable ref_transaction_commit(): inline call to write_ref_sha1() rename_ref(): inline calls to write_ref_sha1() from this function commit_ref_update(): new function, extracted from write_ref_sha1() write_ref_to_lockfile(): new function, extracted from write_ref_sha1() t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZE update-ref: test handling large transactions properly ref_transaction_commit(): fix atomicity and avoid fd exhaustion ref_transaction_commit(): remove the local flags variable ref_transaction_commit(): inline call to write_ref_sha1() rename_ref(): inline calls to write_ref_sha1() from this function commit_ref_update(): new function, extracted from write_ref_sha1() write_ref_to_lockfile(): new function, extracted from write_ref_sha1() t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZE update-ref: test handling large transactions properly | 05 June 2015, 19:00:17 UTC |