https://github.com/git/git

sort by:
Revision Author Date Message Commit Date
349cb50 Git 2.1.1 Signed-off-by: Junio C Hamano <gitster@pobox.com> 19 September 2014, 21:21:31 UTC
b8f7239 Merge branch 'et/spell-poll-infinite-with-minus-one-only' into maint * et/spell-poll-infinite-with-minus-one-only: upload-pack: keep poll(2)'s timeout to -1 19 September 2014, 21:05:13 UTC
08fd8a0 Merge branch 'nd/fetch-pass-quiet-to-gc-child-process' into maint * nd/fetch-pass-quiet-to-gc-child-process: fetch: silence git-gc if --quiet is given fetch: convert argv_gc_auto to struct argv_array 19 September 2014, 21:05:12 UTC
fb6f843 Merge branch 'jk/prune-top-level-refs-after-packing' into maint * jk/prune-top-level-refs-after-packing: pack-refs: prune top-level refs like "refs/foo" 19 September 2014, 21:05:12 UTC
0448134 Merge branch 'jk/fast-import-fixes' into maint * jk/fast-import-fixes: fast-import: fix buffer overflow in dump_tags fast-import: clean up pack_data pointer in end_packfile 19 September 2014, 21:05:12 UTC
a28e876 Merge branch 'jn/unpack-trees-checkout-m-carry-deletion' into maint * jn/unpack-trees-checkout-m-carry-deletion: checkout -m: attempt merge when deletion of path was staged unpack-trees: use 'cuddled' style for if-else cascade unpack-trees: simplify 'all other failures' case 19 September 2014, 21:05:12 UTC
f715334 Merge branch 'sp/pack-protocol-doc-on-shallow' into maint * sp/pack-protocol-doc-on-shallow: Document LF appearing in shallow command during send-pack/receive-pack 19 September 2014, 21:05:11 UTC
8ec959f Merge branch 'jk/prompt-stash-could-be-packed' into maint * jk/prompt-stash-could-be-packed: git-prompt: do not look for refs/stash in $GIT_DIR 19 September 2014, 21:05:11 UTC
92ea1ac Merge branch 'rs/refresh-beyond-symlink' into maint * rs/refresh-beyond-symlink: read-cache: check for leading symlinks when refreshing index 19 September 2014, 21:05:11 UTC
ffe41f8 Merge branch 'lf/bundle-exclusion' into maint * lf/bundle-exclusion: bundle: fix exclusion of annotated tags 19 September 2014, 21:05:11 UTC
bb6ac5e Merge branch 'jc/apply-ws-prefix' into maint * jc/apply-ws-prefix: apply: omit ws check for excluded paths apply: hoist use_patch() helper for path exclusion up apply: use the right attribute for paths in non-Git patches Conflicts: builtin/apply.c 19 September 2014, 21:05:10 UTC
04cd47f Merge branch 'jk/command-line-config-empty-string' into maint * jk/command-line-config-empty-string: config: teach "git -c" to recognize an empty string Conflicts: config.c 19 September 2014, 21:05:10 UTC
723361a Merge branch 'jk/pretty-empty-format' into maint * jk/pretty-empty-format: pretty: make empty userformats truly empty pretty: treat "--format=" as an empty userformat revision: drop useless string offset when parsing "--pretty" 19 September 2014, 21:05:09 UTC
96db324 Merge git://github.com/git-l10n/git-po * git://github.com/git-l10n/git-po: po/TEAMS: add new members to German translation team l10n: de.po: translate 38 new messages 29 August 2014, 17:18:22 UTC
782ac53 po/TEAMS: add new members to German translation team Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 29 August 2014, 05:08:17 UTC
d35ea4d l10n: de.po: translate 38 new messages Translate 38 new messages came from git.pot update in fe05e19 (l10n: git.pot: v2.1.0 round 1 (38 new, 9 removed)). Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 29 August 2014, 05:07:59 UTC
5d146f7 Document LF appearing in shallow command during send-pack/receive-pack The implementation sends an LF, but the protocol documentation was missing this detail. Signed-off-by: Shawn Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 August 2014, 22:13:55 UTC
4109c28 Merge branch 'jk/diff-tree-t-fix' Fix (rarely used) "git diff-tree -t" regression in 2.0. * jk/diff-tree-t-fix: intersect_paths: respect mode in git's tree-sort 26 August 2014, 18:16:26 UTC
a3d54f9 Merge branch 'jk/pack-shallow-always-without-bitmap' Reachability bitmaps do not work with shallow operations. Fixes regression in 2.0. * jk/pack-shallow-always-without-bitmap: pack-objects: turn off bitmaps when we see --shallow lines 26 August 2014, 18:16:25 UTC
212d781 Merge branch 'jk/fix-profile-feedback-build' Fix profile-feedback build broken in 2.1 for tarball releases. * jk/fix-profile-feedback-build: Makefile: make perf tests optional for profile build 26 August 2014, 18:16:25 UTC
6a143aa checkout -m: attempt merge when deletion of path was staged twoway_merge() is missing an o->gently check in the case where a file that needs to be modified is missing from the index but present in the old and new trees. As a result, in this case 'git checkout -m' errors out instead of trying to perform a merge. Fix it by checking o->gently. While at it, inline the o->gently check into reject_merge to prevent future call sites from making the same mistake. Noticed by code inspection. The test for the motivating case was added by JC. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 August 2014, 22:17:34 UTC
c285171 Merge git://github.com/git-l10n/git-po * git://github.com/git-l10n/git-po: l10n: de.po: improve message when switching branches l10n: de.po: fix typo po/TEAMS: Add Catalan team l10n: Add Catalan translation l10n: fr.po (2257t) update for version 2.1.0 l10n: sv.po: Update Swedish translation (2257t0f0u) l10n: vi.po (2257t): Update translation l10n: Updated Bulgarian translation of git (2257t,0f,0u) l10n: zh_CN: translations for git v2.1.0-rc0 l10n: git.pot: v2.1.0 round 1 (38 new, 9 removed) l10n: Updated Bulgarian translation of git (2247t,0f,0u) l10n: Updated Bulgarian translation of git (2228t,0f,0u) l10n: Fix more typos in the Swedish translations 25 August 2014, 22:12:58 UTC
0fa7f01 git-prompt: do not look for refs/stash in $GIT_DIR Since dd0b72c (bash prompt: use bash builtins to check stash state, 2011-04-01), git-prompt checks whether we have a stash by looking for $GIT_DIR/refs/stash. Generally external programs should never do this, because they would miss packed-refs. That commit claims that packed-refs does not pack refs/stash, but that is not quite true. It does pack the ref, but due to a bug, fails to prune the ref. When we fix that bug, we would want to be doing the right thing here. Signed-off-by: Jeff King <peff@peff.net> Reviewed-by: Michael Haggerty <mhagger@alum.mit.edu> Reviewed-by: Ronnie Sahlberg <sahlberg@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 August 2014, 19:21:17 UTC
c252785 fast-import: fix buffer overflow in dump_tags When creating a new annotated tag, we sprintf the refname into a static-sized buffer. If we have an absurdly long tagname, like: git init repo && cd repo && git commit --allow-empty -m foo && git tag -m message mytag && git fast-export mytag | perl -lpe '/^tag/ and s/mytag/"a" x 8192/e' | git fast-import <input we'll overflow the buffer. We can fix it by using a strbuf. Signed-off-by: Jeff King <peff@peff.net> Reviewed-by: Michael Haggerty <mhagger@alum.mit.edu> Reviewed-by: Ronnie Sahlberg <sahlberg@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 August 2014, 19:20:57 UTC
3c078b9 fast-import: clean up pack_data pointer in end_packfile We have a global pointer pack_data pointing to the current pack we have open. Inside end_packfile we have two new pointers, old_p and new_p. The latter points to pack_data, and the former points to the new "installed" version of the packfile we get when we hand the file off to the regular sha1_file machinery. When then free old_p. Presumably the extra old_p pointer was there so that we could overwrite pack_data with new_p and still free old_p, but we don't do that. We just leave pack_data pointing to bogus memory, and don't overwrite it until we call start_packfile again (if ever). This can cause problems for our die routine, which calls end_packfile to clean things up. If we die at the wrong moment, we can end up looking at invalid memory in pack_data left after the last end_packfile(). Instead, let's make sure we set pack_data to NULL after we free it, and make calling endfile() again with a NULL pack_data a noop (there is nothing to end). We can further make things less confusing by dropping old_p entirely, and moving new_p closer to its point of use. Signed-off-by: Jeff King <peff@peff.net> Reviewed-by: Ronnie Sahlberg <sahlberg@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 August 2014, 19:20:24 UTC
afd11d3 pack-refs: prune top-level refs like "refs/foo" After we have packed all refs, we prune any loose refs that correspond to what we packed. We do so by first taking a lock with lock_ref_sha1, and then deleting the loose ref file. However, lock_ref_sha1 will refuse to take a lock on any refs that exist at the top-level of the "refs/" directory, and we skip pruning the ref. This is almost certainly not what we want to happen here. The criteria to be pruned should not differ from that to be packed; if a ref makes it to prune_ref, it's because we want it both packed and pruned (if there are refs you do not want to be packed, they should be omitted much earlier by pack_ref_is_possible, which we do in this case if --all is not given). We can fix this by switching to lock_any_ref_for_update. This behaves exactly the same with the exception of this top-level check. Signed-off-by: Jeff King <peff@peff.net> Reviewed-by: Michael Haggerty <mhagger@alum.mit.edu> Reviewed-by: Ronnie Sahlberg <sahlberg@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 August 2014, 19:19:50 UTC
869951b l10n: de.po: improve message when switching branches Suggested-by: Stefan Beller <stefanbeller@gmail.com> Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 23 August 2014, 17:17:38 UTC
795b9ff l10n: de.po: fix typo Reported-by: Hartmut Henkel Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com> 23 August 2014, 17:17:38 UTC
47abf17 po/TEAMS: Add Catalan team Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> 23 August 2014, 02:10:30 UTC
0082d82 l10n: Add Catalan translation Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> 23 August 2014, 02:10:22 UTC
6c71f8b upload-pack: keep poll(2)'s timeout to -1 Keep poll's timeout at -1 when uploadpack.keepalive = 0, instead of setting it to -1000, since some pedantic old systems (eg HP-UX) and the gnulib compat/poll will treat only -1 as the valid value for an infinite timeout. Signed-off-by: Edward Thomson <ethomson@microsoft.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 August 2014, 18:19:47 UTC
e09867f intersect_paths: respect mode in git's tree-sort When we do a combined diff, we individually diff against each parent, and then use intersect_paths to do a parallel walk through the sorted results and come up with a final list of interesting paths. The sort order here is that returned by the diffs, which means it is in git's tree-order which sorts sub-trees as if their paths have "/" at the end. When we do our parallel walk, we need to use a comparison function which provides the same order. Since 8518ff8 (combine-diff: optimize combine_diff_path sets intersection, 2014-01-20), we use a simple strcmp to compare the pathnames, and get this wrong. It's somewhat hard to trigger because normally a diff does not produce tree entries at all, and therefore the sort order is the same as a strcmp. However, if the "-t" option is used with the diff, then we will produce diff_filepairs for both trees and files. We can use base_name_compare to do the comparison, just as the tree-diff code does. Even though what we have are not technically base names (they are full paths within the tree), the end result is the same (we do not care about interior slashes at all, only about the final character). However, since we do not have the length of each path stored, we take a slight shortcut: if neither of the entries is a sub-tree then the comparison is equivalent to a strcmp. This lets us skip the extra strlen calls in the common case without having to reimplement base_name_compare from scratch. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 20 August 2014, 20:38:37 UTC
93b5393 Makefile: make perf tests optional for profile build The perf tests need a repository to operate on; if none is defined, we fall back to the repository containing our build directory. That fails, though, for an exported tarball of git.git, which has no repository. Since 5d7fd6d we run the perf tests as part of "make profile". Therefore "make profile" fails out of the box on released tarballs of v2.1.0. We can fix this by making the perf tests optional; if they are skipped, we still run the regular test suite, which should give a lot of profile data (and is what we used to do prior to 5d7fd6d anyway). Signed-off-by: Jeff King <peff@peff.net> Acked-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 19 August 2014, 16:59:22 UTC
6fceed3 fetch: silence git-gc if --quiet is given Noticed-by: Matthew Flaschen <mflaschen@wikimedia.org> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 18 August 2014, 17:14:19 UTC
1991006 fetch: convert argv_gc_auto to struct argv_array Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 18 August 2014, 17:14:08 UTC
6c4ab27 Git 2.1 Signed-off-by: Junio C Hamano <gitster@pobox.com> 15 August 2014, 22:09:12 UTC
41ca19b tests: fix negated test_i18ngrep calls The helper function test_i18ngrep pretends that it found the expected results when it is running under GETTEXT_POISON. For this reason, it must not be used negated like so ! test_i18ngrep foo bar because the test case would fail under GETTEXT_POISON. The function offers a special syntax to test that a pattern is *not* found: test_i18ngrep ! foo bar Convert incorrect uses to this syntax. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 13 August 2014, 20:12:06 UTC
6c1db1b unpack-trees: use 'cuddled' style for if-else cascade Match the predominant style in git by following K&R style for if/else cascades. Documentation/CodingStyle from linux.git explains: Note that the closing brace is empty on a line of its own, _except_ in the cases where it is followed by a continuation of the same statement, ie a "while" in a do-statement or an "else" in an if-statement, like this: if (x == y) { .. } else if (x > y) { ... } else { .... } Rationale: K&R. Also, note that this brace-placement also minimizes the number of empty (or almost empty) lines, without any loss of readability. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 13 August 2014, 17:32:12 UTC
0ecd180 unpack-trees: simplify 'all other failures' case In the 'if (current)' block of twoway_merge, we handle the boring errors by checking if the entry from the old tree, current index, and new tree are present, to get a pathname for the error message from one of them: if (oldtree) return o->gently ? -1 : reject_merge(oldtree, o); if (current) return o->gently ? -1 : reject_merge(current, o); if (newtree) return o->gently ? -1 : reject_merge(newtree, o); return -1; Since this is guarded by 'if (current)', the second test is guaranteed to succeed. Moreover, any of the three entries, if present, would have the same path because there is no rename detection in this code path. Even if some day in the future the entries' paths differ, the 'current' path used in the index and worktree would presumably be the most recognizable for the end user. Simplify by just using 'current'. Noticed by coverity, Id:290002 Signed-off-by: Stefan Beller <stefanbeller@gmail.com> Improved-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 13 August 2014, 17:32:08 UTC
f7f9108 pack-objects: turn off bitmaps when we see --shallow lines Reachability bitmaps do not work with shallow operations, because they cache a view of the object reachability that represents the true objects. Whereas a shallow repository (or a shallow operation in a repository) is inherently cutting off the object graph with a graft. We explicitly disallow the use of bitmaps in shallow repositories by checking is_repository_shallow(), and we should continue to do that. However, we also want to disallow bitmaps when we are serving a fetch to a shallow client, since we momentarily take on their grafted view of the world. It used to be enough to call is_repository_shallow at the start of pack-objects. Upload-pack wrote the other side's shallow state to a temporary file and pointed the whole pack-objects process at this state with "git --shallow-file", and from the perspective of pack-objects, we really were in a shallow repo. But since b790e0f (upload-pack: send shallow info over stdin to pack-objects, 2014-03-11), we do it differently: we send --shallow lines to pack-objects over stdin, and it registers them itself. This means that our is_repository_shallow check is way too early (we have not been told about the shallowness yet), and that it is insufficient (calling is_repository_shallow is not enough, as the shallow grafts we register do not change its return value). Instead, we can just turn off bitmaps explicitly when we see these lines. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 12 August 2014, 19:17:19 UTC
ccad42d read-cache: check for leading symlinks when refreshing index Don't add paths with leading symlinks to the index while refreshing; we only track those symlinks themselves. We already ignore them while preloading (see read_index_preload.c). Reported-by: Nikolay Avdeev <avdeev@math.vsu.ru> Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 10 August 2014, 18:16:20 UTC
67de23d Merge branch 'master' of git://ozlabs.org/~paulus/gitk * 'master' of git://ozlabs.org/~paulus/gitk: gitk: Updated Bulgarian translation (302t,0f,0u) gitk: Add keybinding to switch to parent commit 10 August 2014, 18:03:03 UTC
f82887f Git 2.1-rc2 Signed-off-by: Junio C Hamano <gitster@pobox.com> 08 August 2014, 20:52:16 UTC
09898e7 gitk: Updated Bulgarian translation (302t,0f,0u) Signed-off-by: Alexander Shopov <ash@kambanaria.org> Signed-off-by: Paul Mackerras <paulus@samba.org> 08 August 2014, 06:39:30 UTC
d4ec30b gitk: Add keybinding to switch to parent commit Signed-off-by: Max Kirillov <max@max630.net> Signed-off-by: Paul Mackerras <paulus@samba.org> 08 August 2014, 06:39:02 UTC
2c8544a bundle: fix exclusion of annotated tags In commit c9a42c4 (bundle: allow rev-list options to exclude annotated tags, 2009-01-02), support for excluding annotated tags outside the specified date range was added. However, the wrong order of parameters was chosen when calling memchr(). Fix this by swapping the character to search for with the maximum length parameter. Also cover this behavior with an additional test. Signed-off-by: Lukas Fleischer <git@cryptocrack.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 07 August 2014, 22:35:25 UTC
477a08a apply: omit ws check for excluded paths Whitespace breakages are checked while the patch is being parsed. Disable them at the beginning of parse_chunk(), where each individual patch is parsed, immediately after we learn the name of the file the patch applies to and before we start parsing the diff contained in the patch. One may naively think that we should be able to not just skip the whitespace checks but simply fast-forward to the next patch without doing anything once use_patch() tells us that this patch is not going to be used. But in reality we cannot really skip much of the parsing in order to do such a "fast-forward", primarily because parsing "@@ -k,l +m,n @@" lines and counting the input lines is how we determine the boundaries of individual patches. Signed-off-by: Junio C Hamano <gitster@pobox.com> 07 August 2014, 19:23:55 UTC
3ee2ad1 apply: hoist use_patch() helper for path exclusion up We will be adding a caller to the function a bit earlier in this file in a later patch. Signed-off-by: Junio C Hamano <gitster@pobox.com> 07 August 2014, 19:23:50 UTC
d487b0b apply: use the right attribute for paths in non-Git patches We parse each patchfile and find the name of the path the patch applies to, and then use that name to consult the attribute system to find the whitespace rules to be used, and also the target file (either in the working tree or in the index) to replay the changes against. Unlike a Git-generated patch, a non-Git patch is taken to have the pathnames relative to the current working directory. The names found in such a patch are modified by prepending the prefix by the prefix_patches() helper function introduced in 56185f49 (git-apply: require -p<n> when working in a subdirectory., 2007-02-19). However, this prefixing is done after the patch is fully parsed and affects only what target files are patched. Because the attributes are checked against the names found in the patch during the parsing, not against the final pathname, the whitespace check that is done during parsing ends up using attributes for a wrong path for non-Git patches. Fix this by doing the prefix much earlier, immediately after the header part of each patch is parsed and we learn the name of the path the patch affects. Signed-off-by: Junio C Hamano <gitster@pobox.com> 07 August 2014, 19:17:07 UTC
764c739 Merge branch 'mb/relnotes-2.1' * mb/relnotes-2.1: Release notes: grammatical fixes RelNotes: no more check_ref_format micro-optimization 07 August 2014, 16:44:17 UTC
5261ec5 Release notes: grammatical fixes Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 07 August 2014, 16:44:05 UTC
663d096 various contrib: Fix links in man pages Inspired by 2147fa7e (2014-07-31 git-push: fix link in man page), I grepped through the whole tree searching for 'gitlink:' occurrences. Signed-off-by: Stefan Beller <stefanbeller@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 07 August 2014, 16:43:21 UTC
f7fbc35 l10n: fr.po (2257t) update for version 2.1.0 Signed-off-by: Jean-Noel Avila <jn.avila@free.fr> 07 August 2014, 07:07:18 UTC
f54d3c6 RelNotes: no more check_ref_format micro-optimization Signed-off-by: Junio C Hamano <gitster@pobox.com> 05 August 2014, 18:45:09 UTC
a789ca7 config: teach "git -c" to recognize an empty string In a config file, you can do: [foo] bar to turn the "foo.bar" boolean flag on, and you can do: [foo] bar= to set "foo.bar" to the empty string. However, git's "-c" parameter treats both: git -c foo.bar and git -c foo.bar= as the boolean flag, and there is no way to set a variable to the empty string. This patch enables the latter form to do that. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 05 August 2014, 17:09:17 UTC
b9e343e Merge remote-tracking branch 'l10n/vi/vnwildman/master' * l10n/vi/vnwildman/master: l10n: vi.po (2257t): Update translation 05 August 2014, 15:07:22 UTC
4b71297 Merge branch 'master' of github.com:alshopov/git-po * 'master' of github.com:alshopov/git-po: l10n: Updated Bulgarian translation of git (2257t,0f,0u) 05 August 2014, 14:41:00 UTC
dc4a1ba l10n: sv.po: Update Swedish translation (2257t0f0u) Signed-off-by: Peter Krefting <peter@softwolves.pp.se> 05 August 2014, 12:49:51 UTC
8d38823 l10n: vi.po (2257t): Update translation Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com> 05 August 2014, 00:35:56 UTC
7b69fcb Git 2.1.0-rc1 Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 August 2014, 21:05:06 UTC
b16665e Merge branch 'tf/maint-doc-push' * tf/maint-doc-push: git-push: fix link in man page 04 August 2014, 21:03:45 UTC
18bd789 Merge branch 'ta/doc-config' * ta/doc-config: add documentation for writing config files 04 August 2014, 21:03:25 UTC
aafbee8 l10n: Updated Bulgarian translation of git (2257t,0f,0u) Sync with tags v2.1.0-rc1 and v2.0.4 Signed-off-by: Alexander Shopov <ash@kambanaria.org> 04 August 2014, 18:30:38 UTC
6acbf03 l10n: zh_CN: translations for git v2.1.0-rc0 Translate 37 new messages (2257t0f0u) for git v2.1.0-rc0. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 04 August 2014, 08:42:40 UTC
afc344c Merge commit 'bg/alshopov/master' * commit 'bg/alshopov/master': l10n: Updated Bulgarian translation of git (2247t,0f,0u) l10n: Updated Bulgarian translation of git (2228t,0f,0u) 04 August 2014, 08:38:00 UTC
6d0081a Merge remote-tracking branch 'sv/nafmo/master' * sv/nafmo/master: l10n: Fix more typos in the Swedish translations 04 August 2014, 08:33:18 UTC
fe05e19 l10n: git.pot: v2.1.0 round 1 (38 new, 9 removed) Generate po/git.pot from v2.1.0-rc0 for git v2.1.0 l10n round 1. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 04 August 2014, 06:51:24 UTC
c099f8c l10n: Updated Bulgarian translation of git (2247t,0f,0u) Used make po/git.pot from git-l10n/git-po/master Signed-off-by: Alexander Shopov <ash@kambanaria.org> 03 August 2014, 10:14:03 UTC
642c7fa l10n: Updated Bulgarian translation of git (2228t,0f,0u) Used po/git.pot from git-l10n/git-po/master Signed-off-by: Alexander Shopov <ash@kambanaria.org> 03 August 2014, 10:11:46 UTC
2147fa7 git-push: fix link in man page Signed-off-by: Tony Finch <dot@dotat.at> Signed-off-by: Junio C Hamano <gitster@pobox.com> 31 July 2014, 17:17:37 UTC
aa544bf Sync with 2.0.4 * maint: Git 2.0.4 commit --amend: test specifies authorship but forgets to check 30 July 2014, 21:25:46 UTC
aa0ba07 Update draft release notes to 2.1 Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 July 2014, 21:25:14 UTC
0d9cb2d Merge branch 'jk/more-push-completion' * jk/more-push-completion: completion: complete `git push --force-with-lease=` completion: add some missing options to `git push` completion: complete "unstuck" `git push --recurse-submodules` 30 July 2014, 21:21:14 UTC
c372e7b Merge branch 'sk/mingw-tests-workaround' Make tests pass on msysgit by mostly disabling ones that are infeasible on that platform. * sk/mingw-tests-workaround: t800[12]: work around MSys limitation t9902: mingw-specific fix for gitfile link files t4210: skip command-line encoding tests on mingw MinGW: disable legacy encoding tests t0110/MinGW: skip tests that pass arbitrary bytes on the command line MinGW: Skip test redirecting to fd 4 30 July 2014, 21:21:12 UTC
385e171 Merge branch 'sk/mingw-uni-fix-more' Most of these are battle-tested in msysgit and are needed to complete what has been merged to 'master' already. * sk/mingw-uni-fix-more: Win32: enable color output in Windows cmd.exe Win32: patch Windows environment on startup Win32: keep the environment sorted Win32: use low-level memory allocation during initialization Win32: reduce environment array reallocations Win32: don't copy the environment twice when spawning child processes Win32: factor out environment block creation Win32: unify environment function names Win32: unify environment case-sensitivity Win32: fix environment memory leaks Win32: Unicode environment (incoming) Win32: Unicode environment (outgoing) Revert "Windows: teach getenv to do a case-sensitive search" tests: do not pass iso8859-1 encoded parameter 30 July 2014, 21:21:09 UTC
4b0c0e3 Merge branch 'ep/avoid-test-a-o' * ep/avoid-test-a-o: t9814: fix misconversion from test $a -o $b to test $a || test $b 30 July 2014, 21:21:05 UTC
32f5660 Git 2.0.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 July 2014, 21:19:53 UTC
b9c7d6e pretty: make empty userformats truly empty If the user provides an empty format with "--format=", we end up putting in extra whitespace that the user cannot prevent. This comes from two places: 1. If the format is missing a terminating newline, we add one automatically. This makes sense for --format=%h, but not for a truly empty format. 2. We add an extra newline between the pretty-printed format and a diff or diffstat. If the format is empty, there's no point in doing so if there's nothing to separate. With this patch, one can get a diff with no other cruft out of "diff-tree --format= $commit". Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 July 2014, 19:30:08 UTC
c75e7ad pretty: treat "--format=" as an empty userformat Until now, we treated "--pretty=" or "--format=" as "give me the default format". This was not planned nor documented, but only what happened to work due to our parsing of "--pretty" (which should give the default format). Let's instead let these be an actual empty userformat. Otherwise one must write out the annoyingly long "--pretty=tformat:" to get the same behavior. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 July 2014, 19:30:06 UTC
ae18165 revision: drop useless string offset when parsing "--pretty" Once upon a time, we parsed pretty options by looking for "--pretty" at the start of the string, and then feeding the rest (including an "=") to get_commit_format. Later, commit 48ded91 (log --pretty: do not accept bogus "--prettyshort", 2008-05-25) split this into a separate check for "--pretty" versus "--pretty=". However, when parsing "--pretty", we still passed "arg+8" to get_commit_format. This is useless, since it will always point to the NUL terminator at the end of the string. We can simply pass NULL instead; both parameters are treated the same by get_commit_format. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 July 2014, 19:30:02 UTC
97d6e79 add documentation for writing config files Replace TODO introduced in commit 9c3c22 with documentation explaining Git config API functions for writing configuration files. Signed-off-by: Tanay Abhra <tanayabh@gmail.com> Reviewed-by: Matthieu Moy <Matthieu.Moy@grenoble-inp.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 July 2014, 19:16:07 UTC
d8b396e commit --amend: test specifies authorship but forgets to check The test case "--amend option copies authorship" specifies that the git-commit option `--amend` uses the authorship of the replaced commit for the new commit. Add the omitted check that this property actually holds. Signed-off-by: Fabian Ruch <bafain@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 July 2014, 18:32:12 UTC
583b61c Merge branch 'maint' * maint: t4013: test diff-tree's --stdin commit formatting diff-tree: avoid lookup_unknown_object object_as_type: set commit index alloc: factor out commit index add object_as_type helper for casting objects parse_object_buffer: do not set object type move setting of object->type to alloc_* functions alloc: write out allocator definitions alloc.c: remove the alloc_raw_commit_node() function 28 July 2014, 18:31:46 UTC
d299e9e t4013: test diff-tree's --stdin commit formatting Once upon a time, git-log was just "rev-list | diff-tree", and we did not bother to test it separately. These days git-log is implemented internally, but we want to make sure that the rev-list to diff-tree pipeline continues to function. Let's add a basic sanity test. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 18:31:32 UTC
ad524f8 Merge branch 'jk/misc-fixes-maint' * jk/misc-fixes-maint: apply: avoid possible bogus pointer fix memory leak parsing core.commentchar transport: fix leaks in refs_from_alternate_cb free ref string returned by dwim_ref receive-pack: don't copy "dir" parameter 28 July 2014, 18:30:41 UTC
919eb8a t1402: check for refs ending with a dot This has been illegal since cbdffe4 (check_ref_format(): tighten refname rules, 2009-03-21), but we never tested it. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:42:39 UTC
5e65022 Revert "Merge branch 'dt/refs-check-refname-component-sse'" This reverts commit 6f92e5ff3cdc813de8ef5327fd4bad492fb7d6c9, reversing changes made to a02ad882a17b9d45f63ea448391ac5e9f7948222. 28 July 2014, 17:41:53 UTC
dad2e7f Revert "Merge branch 'dt/refs-check-refname-component-sse-fix'" This reverts commit 779c99fd68dcdaff7d996a1985914154a36a272c, reversing changes made to df4d7d56461c19361a6f32b633e850c7ba6e55e6. 28 July 2014, 17:41:16 UTC
5d7c37a Merge branch 'jk/alloc-commit-id-maint' into maint * jk/alloc-commit-id-maint: diff-tree: avoid lookup_unknown_object object_as_type: set commit index alloc: factor out commit index add object_as_type helper for casting objects parse_object_buffer: do not set object type move setting of object->type to alloc_* functions alloc: write out allocator definitions alloc.c: remove the alloc_raw_commit_node() function 28 July 2014, 17:35:35 UTC
b794ebe diff-tree: avoid lookup_unknown_object We generally want to avoid lookup_unknown_object, because it results in allocating more memory for the object than may be strictly necessary. In this case, it is used to check whether we have an already-parsed object before calling parse_object, to save us from reading the object from disk. Using lookup_object would be fine for that purpose, but we can take it a step further. Since this code was written, parse_object already learned the "check lookup_object" optimization, so we can simply call parse_object directly. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:14:34 UTC
34dfe19 object_as_type: set commit index The point of the "index" field of struct commit is that every allocated commit would have one. It is supposed to be an invariant that whenever object->type is set to OBJ_COMMIT, we have a unique index. Commit 969eba6 (commit: push commit_index update into alloc_commit_node, 2014-06-10) covered this case for newly-allocated commits. However, we may also allocate an "unknown" object via lookup_unknown_object, and only later convert it to a commit. We must make sure that we set the commit index when we switch the type field. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:14:34 UTC
5de7f50 alloc: factor out commit index We keep a static counter to set the commit index on newly allocated objects. However, since we also need to set the index on any_objects which are converted to commits, let's make the counter available as a public function. While we're moving it, let's make sure the counter is allocated as an unsigned integer to match the index field in "struct commit". Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:14:33 UTC
c4ad00f add object_as_type helper for casting objects When we call lookup_commit, lookup_tree, etc, the logic goes something like: 1. Look for an existing object struct. If we don't have one, allocate and return a new one. 2. Double check that any object we have is the expected type (and complain and return NULL otherwise). 3. Convert an object with type OBJ_NONE (from a prior call to lookup_unknown_object) to the expected type. We can encapsulate steps 2 and 3 in a helper function which checks whether we have the expected object type, converts OBJ_NONE as appropriate, and returns the object. Not only does this shorten the code, but it also provides one central location for converting OBJ_NONE objects into objects of other types. Future patches will use that to enforce type-specific invariants. Since this is a refactoring, we would want it to behave exactly as the current code. It takes a little reasoning to see that this is the case: - for lookup_{commit,tree,etc} functions, we are just pulling steps 2 and 3 into a function that does the same thing. - for the call in peel_object, we currently only do step 3 (but we want to consolidate it with the others, as mentioned above). However, step 2 is a noop here, as the surrounding conditional makes sure we have OBJ_NONE (which we want to keep to avoid an extraneous call to sha1_object_info). - for the call in lookup_commit_reference_gently, we are currently doing step 2 but not step 3. However, step 3 is a noop here. The object we got will have just come from deref_tag, which must have figured out the type for each object in order to know when to stop peeling. Therefore the type will never be OBJ_NONE. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:14:33 UTC
fe0444b parse_object_buffer: do not set object type The only way that "obj" can be non-NULL is if it came from one of the lookup_* functions. These functions always ensure that the object has the expected type (and return NULL otherwise), so there is no need for us to set the type. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:14:33 UTC
fe24d39 move setting of object->type to alloc_* functions The "struct object" type implements basic object polymorphism. Individual instances are allocated as concrete types (or as a union type that can store any object), and a "struct object *" can be cast into its real type after examining its "type" enum. This means it is dangerous to have a type field that does not match the allocation (e.g., setting the type field of a "struct blob" to "OBJ_COMMIT" would mean that a reader might read past the allocated memory). In most of the current code this is not a problem; the first thing we do after allocating an object is usually to set its type field by passing it to create_object. However, the virtual commits we create in merge-recursive.c do not ever get their type set. This does not seem to have caused problems in practice, though (presumably because we always pass around a "struct commit" pointer and never even look at the type). We can fix this oversight and also make it harder for future code to get it wrong by setting the type directly in the object allocation functions. This will also make it easier to fix problems with commit index allocation, as we know that any object allocated by alloc_commit_node will meet the invariant that an object with an OBJ_COMMIT type field will have a unique index number. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:14:33 UTC
52604d7 alloc: write out allocator definitions Because the allocator functions for tree, blobs, etc are all very similar, we originally used a macro to avoid repeating ourselves. Since the prior commit, though, the heavy lifting is done by an inline helper function. The macro does still save us a few lines, but at some readability cost. It obfuscates the function definitions (and makes them hard to find via grep). Much worse, though, is the fact that it isn't used consistently for all allocators. Somebody coming later may be tempted to modify DEFINE_ALLOCATOR, but they would miss alloc_commit_node, which is treated specially. Let's just drop the macro and write everything out explicitly. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:14:33 UTC
8c3f3f2 alloc.c: remove the alloc_raw_commit_node() function In order to encapsulate the setting of the unique commit index, commit 969eba63 ("commit: push commit_index update into alloc_commit_node", 10-06-2014) introduced a (logically private) intermediary allocator function. However, this function (alloc_raw_commit_node()) was declared as a public function, which undermines its entire purpose. Introduce an inline function, alloc_node(), which implements the main logic of the allocator used by DEFINE_ALLOCATOR, and redefine the macro in terms of the new function. In addition, use the new function in the implementation of the alloc_commit_node() allocator, rather than the intermediary allocator, which can now be removed. Noticed by sparse ("symbol 'alloc_raw_commit_node' was not declared. Should it be static?"). Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 July 2014, 17:14:33 UTC
49f1cb9 Git 2.1.0-rc0 Signed-off-by: Junio C Hamano <gitster@pobox.com> 27 July 2014, 22:22:22 UTC
3dcacd7 Merge branch 'jk/rebase-am-fork-point' "git rebase --fork-point" did not filter out patch-identical commits correctly. * jk/rebase-am-fork-point: rebase: omit patch-identical commits with --fork-point rebase--am: use --cherry-pick instead of --ignore-if-in-upstream 27 July 2014, 22:14:21 UTC
1673744 Merge branch 'cc/replace-graft' "git replace" learned a "--graft" option to rewrite parents of a commit. * cc/replace-graft: replace: add test for --graft with a mergetag replace: check mergetags when using --graft replace: add test for --graft with signed commit replace: remove signature when using --graft contrib: add convert-grafts-to-replace-refs.sh Documentation: replace: add --graft option replace: add test for --graft replace: add --graft option replace: cleanup redirection style in tests 27 July 2014, 22:14:18 UTC
back to top