https://github.com/git/git

sort by:
Revision Author Date Message Commit Date
b260d26 Git 2.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> 26 November 2014, 21:18:34 UTC
a2b450d RelNotes: spelling & grammar tweaks Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 26 November 2014, 21:18:04 UTC
652e759 Git 2.2.0-rc3 Signed-off-by: Junio C Hamano <gitster@pobox.com> 21 November 2014, 20:10:56 UTC
7ba2ba7 l10n: remove a superfluous translation for push.c Ralf reported that '--recurse-submodules' option in push.c should not be translated [1]. Before his commit is merged, remove superfluous translations for push.c. [1] http://www.spinics.net/lists/git/msg241964.html Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 20 November 2014, 08:23:43 UTC
e6c1c39 l10n: de.po: translate 2 messages Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 20 November 2014, 06:16:18 UTC
388a439 l10n: de.po: translate 2 new messages Signed-off-by: Phillip Sz <phillip.szelat@gmail.com> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 20 November 2014, 06:16:18 UTC
9aeb4c2 l10n: batch updates for one trivial change In order to catch up with the release of Git 2.2.0 final, make a batch l10n update for the new l10n change brought by commit d52adf1 (trailer: display a trailer without its trailing newline). Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 20 November 2014, 02:53:48 UTC
e3f9cab l10n: git.pot: v2.2.0 round 2 (1 updated) Generate po/git.pot from v2.2.0-rc2-23-gca0107e for git v2.2.0 l10n round 2. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 20 November 2014, 02:03:10 UTC
ca0107e Merge branch 'sv/submitting-final-patch' * sv/submitting-final-patch: SubmittingPatches: final submission is To: maintainer and CC: list 19 November 2014, 21:48:01 UTC
eeb92d7 Merge branch 'sn/tutorial-status-output-example' * sn/tutorial-status-output-example: gittutorial: fix output of 'git status' 19 November 2014, 21:47:59 UTC
bfd6b53 Merge branch 'mh/doc-remote-helper-xref' * mh/doc-remote-helper-xref: doc: add some crossrefs between manual pages 19 November 2014, 21:47:56 UTC
f00e081 Merge branch 'tb/no-relative-file-url' * tb/no-relative-file-url: t5705: the file:// URL should be absolute 19 November 2014, 21:47:53 UTC
d4c4f18 Merge branch 'cc/interpret-trailers' Small fixes to a new experimental command already in 'master'. * cc/interpret-trailers: trailer: display a trailer without its trailing newline trailer: ignore comment lines inside the trailers 19 November 2014, 21:47:52 UTC
e69b1ce Merge git://github.com/git-l10n/git-po * 'master' of git://github.com/git-l10n/git-po: l10n: Update Catalan translation 18 November 2014, 18:27:46 UTC
0cfd333 Merge branch 'jc/doc-commit-only' * jc/doc-commit-only: Documentation/git-commit: clarify that --only/--include records the working tree contents 18 November 2014, 18:19:42 UTC
4d86216 Merge branch 'ta/tutorial-modernize' * ta/tutorial-modernize: gittutorial.txt: remove reference to ancient Git version 18 November 2014, 18:18:28 UTC
3f78278 Merge branch 'da/difftool' Fix-up to a new feature in 'master'. * da/difftool: difftool: honor --trust-exit-code for builtin tools 18 November 2014, 18:16:55 UTC
b3e4c47 l10n: Update Catalan translation Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> 18 November 2014, 03:22:48 UTC
ea4f93e Merge branch 'master' of git://github.com/git-l10n/git-po * 'master' of git://github.com/git-l10n/git-po: l10n: de.po: translate 62 new messages l10n: de.po: Fixup one translation l10n: de.po: use imperative form for command options 17 November 2014, 17:28:23 UTC
d544b2d l10n: de.po: translate 62 new messages Translate 62 new messages came from git.pot update in 16742b0 (l10n: git.pot: proposed updates for v2.2.0 (+62)). Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 15 November 2014, 17:22:05 UTC
744437f l10n: de.po: Fixup one translation English grammar with German words doesn't make it a German translation. ;) Signed-off-by: Stefan Beller <stefanbeller@gmail.com> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 15 November 2014, 17:21:58 UTC
99474b6 difftool: honor --trust-exit-code for builtin tools run_merge_tool() was not setting $status, which prevented the exit code for builtin tools from being forwarded to the caller. Capture the exit status and add a test to guarantee the behavior. Reported-by: Adria Farres <14farresa@gmail.com> Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 14 November 2014, 21:40:38 UTC
49e0c5a Git 2.2.0-rc2 Signed-off-by: Junio C Hamano <gitster@pobox.com> 14 November 2014, 21:31:15 UTC
c616d84 l10n: de.po: use imperative form for command options Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 14 November 2014, 18:21:52 UTC
8942821 gittutorial: fix output of 'git status' 'git status' doesn't output leading '#'s these days. Signed-off-by: Stefan Naewe <stefan.naewe@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 13 November 2014, 18:53:50 UTC
f904f66 t5705: the file:// URL should be absolute The test misused a URL "file://." to mean "relative to here", which we no longer accept. In a file:// URL, typically there is no host, and RFC1738 says that file:///<path> should be used. Update t5705 to use a working URL. Reported-by: Michael Blume <blume.mike@gmail.com> Signed-off-by: Torsten Bögershausen <tboegi@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 13 November 2014, 18:41:56 UTC
faa8fac SubmittingPatches: final submission is To: maintainer and CC: list In an earlier part there is: "re-send it with "To:" set to the maintainer [*1*] and "cc:" the list [*2*]" for the final submission, but later we see "Send it to the list and cc the maintainer." Fix the later one to match the previous. Signed-off-by: Slavomir Vlcek <svlc@inventati.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 13 November 2014, 18:39:24 UTC
f570943 Update draft release notes to 2.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> 12 November 2014, 20:13:39 UTC
9c70e2c Sync with 'maint' 12 November 2014, 20:13:25 UTC
7fa1365 Merge branch 'nd/gitignore-trailing-whitespace' into maint * nd/gitignore-trailing-whitespace: gitignore.txt: fix spelling of "backslash" 12 November 2014, 20:13:12 UTC
bbebdc1 Merge branch 'jk/fetch-reflog-df-conflict' Fix-up a test for portability. * jk/fetch-reflog-df-conflict: t1410: fix breakage on case-insensitive filesystems 12 November 2014, 19:59:58 UTC
2672671 doc: add some crossrefs between manual pages In particular, git-fast-import and -export link to each other, and gitremote-helpers links to existing remote helpers, and vice versa. Also link to fast-import from the remote helper spec, as this is relevant for remote helpers using the fast-import format. Signed-off-by: Max Horn <max@quendi.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 11 November 2014, 22:47:04 UTC
022cf2b gittutorial.txt: remove reference to ancient Git version Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 11 November 2014, 22:46:08 UTC
f6f61cb Sync with maint * maint: 11 November 2014, 20:45:48 UTC
caea1a2 Merge branch 'rs/clean-menu-item-defn' into maint * rs/clean-menu-item-defn: clean: use f(void) instead of f() to declare a pointer to a function without arguments 11 November 2014, 18:20:13 UTC
6066a7e run-command: use void to declare that functions take no parameters Explicitly declare that git_atexit_dispatch() and git_atexit_clear() take no parameters instead of leaving their parameter list empty and thus unspecified. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 10 November 2014, 22:43:19 UTC
80b581d Merge branch 'master' of git://github.com/git-l10n/git-po * 'master' of git://github.com/git-l10n/git-po: l10n: Updated Bulgarian translation of git (2296t,0f,0u) l10n: zh_CN: translations for git v2.2.0-rc0 l10n: sv.po: Update Swedish translation (2296t0f0u) l10n: fr.po (2296t) update for version 2.2.0 l10n: vi.po: Update new message strings l10n: git.pot: v2.2.0 round 1 (62 new, 23 removed) 10 November 2014, 19:59:30 UTC
a4c4708 Sync with maint * maint: Documentation/config.txt: fix minor typo config.txt: fix typo 10 November 2014, 19:26:18 UTC
bd51886 Merge branch 'js/diff-highlight-avoid-sigpipe' * js/diff-highlight-avoid-sigpipe: diff-highlight: exit when a pipe is broken 10 November 2014, 19:26:09 UTC
a79c3a1 Documentation/config.txt: fix minor typo Add a missing article at the beginning of a sentence, and rephrase slightly. Signed-off-by: Thomas Quinot <thomas@quinot.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 10 November 2014, 19:25:26 UTC
71069cd config.txt: fix typo Signed-off-by: Nicolas Dermine <nicolas.dermine@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 10 November 2014, 18:06:25 UTC
b226293 trailer: use CHILD_PROCESS_INIT in apply_command() Initialize the struct child_process variable cp at declaration time. This is shorter, saves a function call and prevents using the variable before initialization by mistake. Suggested-by: Jeff King <peff@peff.net> Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 10 November 2014, 18:03:39 UTC
d52adf1 trailer: display a trailer without its trailing newline Trailers passed to the parse_trailer() function often have a trailing newline. When erroring out, we should display the invalid trailer properly, that means without any trailing newline. Helped-by: Junio C Hamano <gitster@pobox.com> Helped-by: Jeff King <peff@peff.net> Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 10 November 2014, 17:43:59 UTC
2887103 trailer: ignore comment lines inside the trailers Otherwise trailers that are commented out might be processed. We would also error out if the comment line char is also a separator. This means that comments inside a trailer block will disappear, but that was already the case anyway. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 10 November 2014, 17:43:16 UTC
aae828b t1410: fix breakage on case-insensitive filesystems Two tests recently added to t1410 create branches "a" and "a/b" to test d/f conflicts on reflogs. Earlier, unrelated tests in that script create the path "A/B" in the working tree. There's no conflict on a case-sensitive filesystem, but on a case-insensitive one, "git log" will complain that "a/b" is both a revision and a working tree path. We could fix this by using a "--" to disambiguate, but we are probably better off using names that are less confusing to make it more clear that they are unrelated to the working tree files. This patch turns "a/b" into "one/two". Reported-by: Michael Blume <blume.mike@gmail.com> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 10 November 2014, 17:38:53 UTC
66edfe9 Git 2.2.0-rc1 Signed-off-by: Junio C Hamano <gitster@pobox.com> 07 November 2014, 20:01:01 UTC
d956a20 Documentation/git-commit: clarify that --only/--include records the working tree contents With the original phrasing, it is possible to misunderstand as if the contents in the index for only the specified paths are made into the new commit. Signed-off-by: Junio C Hamano <gitster@pobox.com> 07 November 2014, 19:57:57 UTC
a1ad247 Merge branch 'maint' * maint: docs/credential-store: s/--store/--file/ 06 November 2014, 18:52:51 UTC
32da67b Merge branch 'nd/gitignore-trailing-whitespace' Documentation update. * nd/gitignore-trailing-whitespace: gitignore.txt: fix spelling of "backslash" 06 November 2014, 18:52:40 UTC
64b9326 Merge branch 'tm/line-log-first-parent' "git log --first-parent -L..." used to crash. * tm/line-log-first-parent: line-log: fix crash when --first-parent is used 06 November 2014, 18:52:37 UTC
a1671dd Merge branch 'jk/fetch-reflog-df-conflict' Corner-case bugfixes for "git fetch" around reflog handling. * jk/fetch-reflog-df-conflict: ignore stale directories when checking reflog existence fetch: load all default config at startup 06 November 2014, 18:52:32 UTC
6b55f8b Merge branch 'rs/use-child-process-init-more' * rs/use-child-process-init-more: bundle: split out ref writing from bundle_create bundle: split out a helper function to compute and write prerequisites bundle: split out a helper function to create pack data use child_process_init() to initialize struct child_process variables 06 November 2014, 18:52:23 UTC
e44da1b Merge branch 'jk/cache-tree-protect-from-broken-libgit2' The code to use cache-tree trusted the on-disk data too much and fell into an infinite loop. * jk/cache-tree-protect-from-broken-libgit2: cache-tree: avoid infinite loop on zero-entry tree 06 November 2014, 18:51:35 UTC
e50cd67 docs/credential-store: s/--store/--file/ The option name "--store" was used early in development, but never even made it into an applied patch, let alone a released version of git. I forgot to update the matching documentation at the time, though. Noticed-by: Jesse Hopkins <jesse.hopkins@lmco.com> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 06 November 2014, 17:51:08 UTC
03af7cd gitignore.txt: fix spelling of "backslash" Signed-off-by: Ben North <ben@redfrontdoor.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 November 2014, 22:44:47 UTC
251e7da diff-highlight: exit when a pipe is broken While using diff-highlight with other tools, I have discovered that Python ignores SIGPIPE by default. Unfortunately, this also means that tools attempting to launch a pager under Python--and don't realize this is happening--means that the subprocess inherits this setting. In this case, it means diff-highlight will be launched with SIGPIPE being ignored. Let's work with those broken scripts by restoring the default SIGPIPE handler. Signed-off-by: John Szakmeister <john@szakmeister.net> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 November 2014, 21:18:35 UTC
f745acb Documentation: typofixes In addition to fixing trivial and obvious typos, be careful about the following points: - Spell ASCII, URL and CRC in ALL CAPS; - Spell Linux as Capitalized; - Do not omit periods in "i.e." and "e.g.". Signed-off-by: Thomas Ackermann <th.acker@arcor.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 November 2014, 21:14:44 UTC
a8787c5 line-log: fix crash when --first-parent is used line-log tries to access all parents of a commit, but only the first parent has been loaded if "--first-parent" is specified, resulting in a crash. Limit the number of parents to one if "--first-parent" is specified. Reported-by: Eric N. Vander Weele <ericvw@gmail.com> Signed-off-by: Tzvetan Mikov <tmikov@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 November 2014, 20:47:35 UTC
9233887 ignore stale directories when checking reflog existence When we update a ref, we have two rules for whether or not we actually update the reflog: 1. If the reflog already exists, we will always append to it. 2. If log_all_ref_updates is set, we will create a new reflog file if necessary. We do the existence check by trying to open the reflog file, either with or without O_CREAT (depending on log_all_ref_updates). If it fails, then we check errno to see what happened. If we were not using O_CREAT and we got ENOENT, the file doesn't exist, and we return success (there isn't a reflog already, and we were not told to make a new one). If we get EISDIR, then there is likely a stale directory that needs to be removed (e.g., there used to be "foo/bar", it was deleted, and the directory "foo" was left. Now we want to create the ref "foo"). If O_CREAT is set, then we catch this case, try to remove the directory, and retry our open. So far so good. But if we get EISDIR and O_CREAT is not set, then we treat this as any other error, which is not right. Like ENOENT, EISDIR is an indication that we do not have a reflog, and we should silently return success (we were not told to create it). Instead, the current code reports this as an error, and we fail to update the ref at all. Note that this is relatively unlikely to happen, as you would have to have had reflogs turned on, and then later turned them off (it could also happen due to a bug in fetch, but that was fixed in the previous commit). However, it's quite easy to fix: we just need to treat EISDIR like ENOENT for the non-O_CREAT case, and silently return (note that this early return means we can also simplify the O_CREAT case). Our new tests cover both cases (O_CREAT and non-O_CREAT). The first one already worked, of course. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 November 2014, 20:18:44 UTC
72549df fetch: load all default config at startup When we start the git-fetch program, we call git_config to load all config, but our callback only processes the fetch.prune option; we do not chain to git_default_config at all. This means that we may not load some core configuration which will have an effect. For instance, we do not load core.logAllRefUpdates, which impacts whether or not we create reflogs in a bare repository. Note that I said "may" above. It gets even more exciting. If we have to transfer actual objects as part of the fetch, then we call fetch_pack as part of the same process. That function loads its own config, which does chain to git_default_config, impacting global variables which are used by the rest of fetch. But if the fetch is a pure ref update (e.g., a new ref which is a copy of an old one), we skip fetch_pack entirely. So we get inconsistent results depending on whether or not we have actual objects to transfer or not! Let's just load the core config at the start of fetch, so we know we have it (we may also load it again as part of fetch_pack, but that's OK; it's designed to be idempotent). Our tests check both cases (with and without a pack). We also check similar behavior for push for good measure, but it already works as expected. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 November 2014, 20:13:46 UTC
dd83521 RelNotes/2.2.0.txt: fix minor typos Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 November 2014, 19:29:10 UTC
6c31a5e l10n: Updated Bulgarian translation of git (2296t,0f,0u) Signed-off-by: Alexander Shopov <ash@kambanaria.org> 02 November 2014, 17:11:08 UTC
220c313 l10n: zh_CN: translations for git v2.2.0-rc0 Translate 62 new messages (2296t0f0u) for git v2.2.0-rc0. Also changed the translation of bare (repository). Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 02 November 2014, 02:59:00 UTC
94dd79e Merge branch 'fr_2.2.0' of git://github.com/jnavila/git * 'fr_2.2.0' of git://github.com/jnavila/git: l10n: fr.po (2296t) update for version 2.2.0 02 November 2014, 02:12:29 UTC
ac4a73d Merge branch 'master' of git://github.com/nafmo/git-l10n-sv * 'master' of git://github.com/nafmo/git-l10n-sv: l10n: sv.po: Update Swedish translation (2296t0f0u) 02 November 2014, 02:11:27 UTC
5331bfd l10n: sv.po: Update Swedish translation (2296t0f0u) Signed-off-by: Peter Krefting <peter@softwolves.pp.se> 01 November 2014, 19:17:37 UTC
f507e5d l10n: fr.po (2296t) update for version 2.2.0 Signed-off-by: Jean-Noel Avila <jn.avila@free.fr> Signed-off-by: Grégoire Paris <gparis@universcine.com> 01 November 2014, 15:51:49 UTC
4dcd03e l10n: vi.po: Update new message strings Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com> 01 November 2014, 02:07:24 UTC
d07a63e l10n: git.pot: v2.2.0 round 1 (62 new, 23 removed) Generate po/git.pot from v2.2.0-rc0 for git v2.2.0 l10n round 1. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 31 October 2014, 23:47:46 UTC
4ace7ff Git 2.2.0-rc0 Signed-off-by: Junio C Hamano <gitster@pobox.com> 31 October 2014, 18:57:23 UTC
ef59f32 Merge branch 'for-junio' of git://bogomips.org/git-svn * 'for-junio' of git://bogomips.org/git-svn: git-svn: use SVN::Ra::get_dir2 when possible git-svn: add space after "W:" prefix in warning git-svn: (cleanup) remove editor param passing git-svn: prepare SVN::Ra config pieces once Git.pm: add specified name to tempfile template git-svn: disable _rev_list memoization git-svn: save a little memory as fetch progresses git-svn: remove unnecessary DESTROY override git-svn: reload RA every log-window-size git-svn.txt: advertise pushurl with dcommit git-svn: remove mergeinfo rev caching git-svn: cache only mergeinfo revisions git-svn: reduce check_cherry_pick cache overhead git-svn: only look at the root path for svn:mergeinfo git-svn: only look at the new parts of svn:mergeinfo 31 October 2014, 18:50:20 UTC
1d42cf3 Merge branch 'jc/push-cert' * jc/push-cert: receive-pack: avoid minor leak in case start_async() fails 31 October 2014, 18:49:55 UTC
598d7eb Merge branch 'rs/child-process-init' * rs/child-process-init: api-run-command: add missing list item marker 31 October 2014, 18:49:49 UTC
bf1f639 Merge branch 'rs/grep-color-words' Allow painting or not painting (partial) matches in context lines when showing "grep -C<num>" output in color. * rs/grep-color-words: grep: add color.grep.matchcontext and color.grep.matchselected 31 October 2014, 18:49:47 UTC
7ffa35b git-svn: use SVN::Ra::get_dir2 when possible This avoids the following failure with normal "get_dir" on newer versions of SVN (tested with SVN 1.8.8-1ubuntu3.1): Incorrect parameters given: Could not convert '%ld' into a number get_dir2 also has the potential to be more efficient by requesting less data. ref: <1414636504.45506.YahooMailBasic@web172304.mail.ir2.yahoo.com> ref: <1414722617.89476.YahooMailBasic@web172305.mail.ir2.yahoo.com> Signed-off-by: Eric Wong <normalperson@yhbt.net> Cc: Hin-Tak Leung <htl10@users.sourceforge.net> 31 October 2014, 10:34:54 UTC
d9362ef bundle: split out ref writing from bundle_create The bundle_create() function has a number of logical steps: process the input, write the refs, and write the packfile. Recent commits split the first and third into separate sub-functions. It's worth splitting the middle step out, too, if only because it makes the progression of the steps more obvious. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 October 2014, 21:52:45 UTC
e8eb251 bundle: split out a helper function to compute and write prerequisites The new helper compute_and_write_prerequistes() is ugly, but it cannot be avoided. Ideally we should avoid a function that computes and does I/O at the same time, but the prerequisites lines in the output needs the human readable title only to help the recipient of the bundle. The code copies them straight from the rev-list output and immediately discards as no other internal computation needs that information. Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 October 2014, 21:51:47 UTC
5e626b9 bundle: split out a helper function to create pack data The create_bundle() function, while it does one single logical thing, takes a rather large implementation to do so. Let's start separating what it does into smaller steps to make it easier to see what is going on. This is a first step to separate out the actual pack-data generation, after the earlier part of the function figures out which part of the history to place in the bundle. Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 October 2014, 21:45:52 UTC
729dbbd cache-tree: avoid infinite loop on zero-entry tree The loop in cache-tree's update_one iterates over all the entries in the index. For each one, we find the cache-tree subtree which represents our path (creating it if necessary), and then recurse into update_one again. The return value we get is the number of index entries that belonged in that subtree. So for example, with entries: a/one a/two b/one We start by processing the first entry, "a/one". We would find the subtree for "a" and recurse into update_one. That would then handle "a/one" and "a/two", and return the value 2. The parent function then skips past the 2 handled entries, and we continue by processing "b/one". If the recursed-into update_one ever returns 0, then we make no forward progress in our loop. We would process "a/one" over and over, infinitely. This should not happen normally. Any subtree we create must have at least one path in it (the one that we are processing!). However, we may also reuse a cache-tree entry we found in the on-disk index. For the same reason, this should also never have zero entries. However, certain buggy versions of libgit2 could produce such bogus cache-tree records. The libgit2 bug has since been fixed, but it does not hurt to protect ourselves against bogus input coming from the on-disk data structures. Note that this is not a die("BUG") or assert, because it is not an internal bug, but rather a corrupted on-disk structure. It's possible that we could even recover from it (by throwing out the bogus cache-tree entry), but it is not worth the effort; the important thing is that we report an error instead of looping infinitely. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 October 2014, 18:17:51 UTC
81d645d Merge git://ozlabs.org/~paulus/gitk * git://ozlabs.org/~paulus/gitk: gitk: Remove boilerplate for configuration variables gitk: Show detached HEAD if --all is specified gitk: Do not depend on Cygwin's "kill" command on Windows 30 October 2014, 17:07:33 UTC
da0bc94 git-svn: add space after "W:" prefix in warning And minor reformatting while we're in the area. Signed-off-by: Eric Wong <normalperson@yhbt.net> 30 October 2014, 08:31:28 UTC
4ae9a7b git-svn: (cleanup) remove editor param passing Neither find_extra_svk_parents or find_extra_svn_parents ever used the `$ed' parameter. Signed-off-by: Eric Wong <normalperson@yhbt.net> 30 October 2014, 08:29:43 UTC
9fabefb gitk: Remove boilerplate for configuration variables Signed-off-by: Max Kirillov <max@max630.net> Signed-off-by: Paul Mackerras <paulus@samba.org> 29 October 2014, 22:43:15 UTC
4d5e1b1 gitk: Show detached HEAD if --all is specified If HEAD is detached, 'gitk --all' does not show it. This is inconvenient for frontend program, and for example git log does show the detached HEAD. gitk uses git rev-parse to find a list of branches to show. Apparently, the command does not include detached HEAD to output if --all argument is specified. This has been discussed in [1] and stated as expected behavior. So rev-parse's parameters should be tuned in gitk. [1] http://thread.gmane.org/gmane.comp.version-control.git/255996 Signed-off-by: Max Kirillov <max@max630.net> Signed-off-by: Paul Mackerras <paulus@samba.org> 29 October 2014, 22:43:15 UTC
7b68b0e gitk: Do not depend on Cygwin's "kill" command on Windows Windows does not necessarily mean Cygwin, it could also be MSYS. The latter ships with a version of "kill" that does not understand "-f". In msysgit this was addressed by shipping Cygwin's version of kill. Properly fix this by using the stock Windows "taskkill" command instead, which is available since Windows XP Professional. Signed-off-by: Sebastian Schuberth <sschuberth@gmail.com> Signed-off-by: Paul Mackerras <paulus@samba.org> 29 October 2014, 22:43:11 UTC
835e3dd git-svn: prepare SVN::Ra config pieces once Memoizing these initialization functions saves some memory for long fetches which require scanning many unwanted revisions before any wanted revisions happen. Signed-off-by: Eric Wong <normalperson@yhbt.net> 29 October 2014, 19:59:25 UTC
822aaf0 Git.pm: add specified name to tempfile template This should help me track down errors in git-svn more easily: write .git/Git_XXXXXX: Bad file descriptor at /usr/lib/perl5/SVN/Ra.pm line 623 Signed-off-by: Eric Wong <normalperson@yhbt.net> 29 October 2014, 19:59:23 UTC
36666ce Sync with Git 2.1.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 October 2014, 17:50:17 UTC
49c3e92 Git 2.1.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 October 2014, 17:48:45 UTC
ebc2e5a Merge branch 'jk/pack-objects-no-bitmap-when-splitting' into maint * jk/pack-objects-no-bitmap-when-splitting: pack-objects: turn off bitmaps when we split packs 29 October 2014, 17:35:17 UTC
9db1838 Merge branch 'da/mergetool-meld' into maint * da/mergetool-meld: mergetools/meld: make usage of `--output` configurable and more robust 29 October 2014, 17:35:16 UTC
af1b4e3 Merge branch 'rm/gitweb-start-form' into maint * rm/gitweb-start-form: gitweb: use start_form, not startform that was removed in CGI.pm 4.04 29 October 2014, 17:35:16 UTC
27c31d2 Merge branch 'bc/asciidoc-pretty-formats-fix' into maint * bc/asciidoc-pretty-formats-fix: Documentation: fix misrender of pretty-formats in Asciidoctor 29 October 2014, 17:35:10 UTC
a8f01f8 Merge branch 'rs/daemon-fixes' into maint * rs/daemon-fixes: daemon: remove write-only variable maxfd daemon: fix error message after bind() daemon: handle gethostbyname() error 29 October 2014, 17:35:09 UTC
5b509df Update draft release notes to 2.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 October 2014, 17:18:31 UTC
9ce57f1 Merge branch 'da/difftool' Allow diff tool backend to stop early by exiting with a non-zero status. * da/difftool: difftool: add support for --trust-exit-code difftool--helper: exit when reading a prompt answer fails 29 October 2014, 17:09:35 UTC
e82935d Merge branch 'rb/pack-window-memory-config-doc' * rb/pack-window-memory-config-doc: config.txt: pack.windowmemory limit applies per-thread 29 October 2014, 17:09:31 UTC
7654ca6 Merge branch 'mg/lib-gpg-ro-safety' In a tarball extract whose files are all read-only, running GPG tests would have failed due to unwritable files. * mg/lib-gpg-ro-safety: t/lib-gpg: make gpghome files writable 29 October 2014, 17:08:16 UTC
ce71c1f Merge branch 'dm/port2zos' z/OS port * dm/port2zos: compat/bswap.h: detect endianness from XL C compiler macros Makefile: reorder linker flags in the git executable rule git-compat-util.h: support variadic macros with the XL C compiler 29 October 2014, 17:08:07 UTC
c1777a2 Merge branch 'oc/mergetools-beyondcompare' * oc/mergetools-beyondcompare: mergetool: rename bc3 to bc 29 October 2014, 17:08:04 UTC
back to top