swh:1:snp:6df5a50b8107b6bbe1e51d0239d816a7503c536a

sort by:
Revision Author Date Message Commit Date
3fe4498 Git 1.7.11-rc1 Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 June 2012, 22:56:05 UTC
47829ed Sync with 1.7.10.4 * maint: Git 1.7.10.4 03 June 2012, 22:54:33 UTC
121f71f Git 1.7.10.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 June 2012, 22:53:58 UTC
06de561 Merge branch 'ef/maint-rebase-error-message' into maint When "git rebase" was given a bad commit to replay the history on, its error message did not correctly give the command line argument it had trouble parsing. By Erik Faye-Lund * ef/maint-rebase-error-message: rebase: report invalid commit correctly 03 June 2012, 22:52:18 UTC
5498c5f Update draft release notes to 1.7.11 Signed-off-by: Junio C Hamano <gitster@pobox.com> 01 June 2012, 20:29:48 UTC
3ba4663 Merge branch 'ef/maint-rebase-error-message' By Erik Faye-Lund * ef/maint-rebase-error-message: rebase: report invalid commit correctly 01 June 2012, 20:28:25 UTC
264d5a7 Merge branch 'nh/empty-rebase' * nh/empty-rebase: cherry-pick: regression fix for empty commits 01 June 2012, 20:28:19 UTC
4336b53 Merge branch 'vr/rebase-autosquash-does-not-imply-i' "git rebase -p" used to pay attention to rebase.autosquash which was wrong. "git rebase -p -i" should, but "git rebase -p" by itself should not. By Vincent van Ravesteijn * vr/rebase-autosquash-does-not-imply-i: Do not autosquash in case of an implied interactive rebase 01 June 2012, 20:28:01 UTC
7a824d3 Merge branch 'mm/levenstein-penalize-deletion-less' "git tags" used to suggest "git stage" which was nonsense; it should have favored "git tag". Tweak the cost of deletion to correct it. By Matthieu Moy * mm/levenstein-penalize-deletion-less: Reduce cost of deletion in levenstein distance (4 -> 3) 01 June 2012, 20:27:48 UTC
21e077f Merge branch 'jl/submodule-report-new-path-once' "git submodule init" used to report "registered for path ..." even for submodules that were registered earlier. By Jens Lehmann * jl/submodule-report-new-path-once: submodules: print "registered for path" message only once 01 June 2012, 20:26:46 UTC
2c4888e Sync with maint 01 June 2012, 20:26:16 UTC
6a6d72b Start preparing for 1.7.10.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> 01 June 2012, 20:23:11 UTC
0626fae Merge branch 'ef/http-o-depends-on-gvf' into maint A minor compilation fix. By Erik Faye-Lund * ef/http-o-depends-on-gvf: Makefile: add missing GIT-VERSION-FILE dependency 01 June 2012, 20:22:44 UTC
f344333 Merge git://github.com/git-l10n/git-po By Jiang Xin (4) and others via Jiang Xin * git://github.com/git-l10n/git-po: l10n: Set nplurals of zh_CN.po from 1 to 2 l10n: zh_CN.po: translate 323 new messages l10n: zh.CN.po: update by msgmerge git.pot First release translation for Vietnamese Init translation for Vietnamese l10n: New it.po file with 504 translations Update Swedish translation (728t0f0u) l10n: Update git.pot (41 new messages) 01 June 2012, 20:21:37 UTC
2147cb2 Merge branch 'rs/maint-grep-F' into maint "git grep -e '$pattern'", unlike the case where the patterns are read from a file, did not treat individual lines in the given pattern argument as separate regular expressions as it should. By René Scharfe * rs/maint-grep-F: grep: stop leaking line strings with -f grep: support newline separated pattern list grep: factor out do_append_grep_pat() grep: factor out create_grep_pat() 01 June 2012, 20:01:41 UTC
e2d484c Merge branch 'jk/ident-split-fix' into maint An author/committer name that is a single character was mishandled as an invalid name by mistake. By Jeff King * jk/ident-split-fix: fix off-by-one error in split_ident_line 01 June 2012, 20:01:36 UTC
6c22741 Merge branch 'jk/pretty-commit-header-incomplete-line' into maint By Jeff King * jk/pretty-commit-header-incomplete-line: avoid segfault when reading header of malformed commits 01 June 2012, 20:01:33 UTC
92ddfaa Merge branch 'jk/format-person-part-buffer-limit' into maint By Jeff King * jk/format-person-part-buffer-limit: pretty: avoid buffer overflow in format_person_part 01 June 2012, 19:59:58 UTC
63cdf16 Merge branch 'ap/checkout-no-progress-for-non-tty' into maint "git checkout" gave progress display even when the standard error stream was not connected to the tty, which made little sense. By Avery Pennarun * ap/checkout-no-progress-for-non-tty: checkout: no progress messages if !isatty(2). 01 June 2012, 19:59:51 UTC
9c136bf Merge branch 'maint' of git://github.com/git-l10n/git-po into maint By Peter Krefting via Peter Krefting * 'maint' of git://github.com/git-l10n/git-po: Update Swedish translation (728t0f0u) 01 June 2012, 19:50:41 UTC
f50b565 i18n: apply: split to fix a partial i18n message The 4th arg of "new mode (%o) of %s does not match old mode (%o)%s%s" is blank string or string " of ". Even mark the string " of " for a complete i18n, this message is still hard to translate right. Split it into two slight different messages would make l10n teams happy. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 01 June 2012, 14:43:10 UTC
5ae481e l10n: Set nplurals of zh_CN.po from 1 to 2 In most cases, plural-forms are unnecessary for Chinese. For example, "apple" and "apples" are the same in Chinese, they are both translated as "苹果". While there are exceptions, e.g., the plural form of "he", "she" and "it" is "they" in English. In Chinese, "他(he)", "她(she)", and "它(it)" have plural forms too, they are "他们", "她们", and "它们". But what makes 'nplurals=1' hard to work right for Chinese is: #: bundle.c:192 #, c-format msgid "The bundle requires this ref" msgid_plural "The bundle requires these %d refs" Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 01 June 2012, 09:43:38 UTC
81809b9 l10n: zh_CN.po: translate 323 new messages Update Simplified Chinese translation for 134 fuzzy, 189 new messages from Git v1.7.10.2-548-g9de96. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> Signed-off-by: Zhuang Ya <zhuangya@me.com> 01 June 2012, 09:42:18 UTC
38475f9 Makefile: add missing GIT-VERSION-FILE dependency In 20fc9bc (Set HTTP user agent to git/GIT_VERSION, 2006-04-04), http.o started recording GIT_VERSION, but http.o wasn't added to the list of files that depends on GIT-VERSION-FILE. Fix this, so mofications to GIT-VERSION-FILE will result in an updated user-agent string. Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 31 May 2012, 19:42:53 UTC
8ada959 l10n: zh.CN.po: update by msgmerge git.pot Update of zh_CN.po: 134 fuzzy translations, 189 untranslated messages. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 31 May 2012, 08:34:51 UTC
db484ba First release translation for Vietnamese Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com> 31 May 2012, 04:31:05 UTC
774cfe0 Init translation for Vietnamese Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com> Signed-off-by: Jiang Xin <worldhello.net@gmail.com> 31 May 2012, 04:31:05 UTC
9180fea rebase: report invalid commit correctly In 9765b6a (rebase: align variable content, 2011-02-06), the code to error out was moved up one level. Unfortunately, one reference to a function parameter wasn't rewritten as it should, leading to the wrong parameter being errored on. This error was propagated by 71786f5 (rebase: factor out reference parsing, 2011-02-06) and merged in 78c6e0f (Merge branch 'mz/rebase', 2011-04-28). Correct this by reporting $onto_name istead. Reported-By: Manuela Hutter <manuelah@opera.com> Signed-off-by: Erik Faye-Lund <kusmabite@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 May 2012, 18:59:08 UTC
b2478aa INSTALL: update asciidoc recommendation Since commit 6cf378f (docs: stop using asciidoc no-inline-literal), we no longer support asciidoc versions less than 8.4.1, which introduced inline literals. Note this in the INSTALL document. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 May 2012, 16:07:04 UTC
9d1c225 l10n: New it.po file with 504 translations Signed-off-by: Marco Paolone <marcopaolone@gmail.com> 30 May 2012, 11:30:24 UTC
ac2b0e8 cherry-pick: regression fix for empty commits The earlier "--keep-redundant-commit" series broke "cherry-pick" that is given a commit whose change is already in the current history. Such a cherry-pick would result in an empty change, and should stop with an error, telling the user that conflict resolution may have made the result empty (which is exactly what is happening), but we silently dropped the change on the floor without any message nor non-zero exit code. Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 May 2012, 00:14:41 UTC
c1c259e submodules: print "registered for path" message only once Since 2cd9de3e (submodule add: always initialize .git/config entry) the message "Submodule '\$name' (\$url) registered for path '\$sm_path'" is printed every time cmd_init() is called, e.g. each time "git submodule update" is used with the --init option. This was not intended and leads to bogus output which can confuse users and build systems. Apart from that the $url variable was not set after the first run which did the actual initialization and only "()" was printed in subsequent runs where "($url)" was meant to inform the user about the upstream repo. Fix that by moving the say command in question into the if block where the url is initialized, restoring the behavior that was in place before the 2cd9de3e commit. While at it also remove the comment which still describes the logic used before 2cd9de3e and add a comment about how things work now. Reported-by: Nicolas Viennot and Sid Nair <nicolas@viennot.com> Reported-by: Heiko Voigt <hvoigt@hvoigt.net> Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2012, 20:52:23 UTC
0680f74 Merge git://bogomips.org/git-svn By Jonathan Nieder via Eric Wong * git://bogomips.org/git-svn: git-svn: make Git::SVN::Fetcher a separate file git-svn: rename SVN::Git::* packages to Git::SVN::* git-svn: move Git::SVN::Prompt into its own file 29 May 2012, 20:47:55 UTC
f27e765 t5701: modernize style This test is pretty old and did not follow some of our more modern best practices. In particular: 1. It chdir'd all over the place, leaving later tests to deal with the fallout. Do our chdirs in subshells instead. 2. It did not use test_must_fail. 3. It did not use test_line_count. 4. It checked for the non-existence of a ref by looking in the .git/refs directory (since we pack refs during clone these days, this will always be succeed, making the test useless). Note that one call to "-e .git/refs/..." remains, because it is checking for the existence of a symbolic ref, not a ref itself. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2012, 20:22:13 UTC
a8f4933 Merge branch 'va/git-p4-test' By Vitor Antunes * va/git-p4-test: git-p4: Clean up branch test cases git-p4: Verify detection of "empty" branch creation git-p4: Test changelists touching two branches 29 May 2012, 20:09:20 UTC
261ec7d Merge branch 'jk/ident-gecos-strbuf' Fixes quite a lot of brokenness when ident information needs to be taken from the system and cleans up the code. By Jeff King * jk/ident-gecos-strbuf: (22 commits) format-patch: do not use bogus email addresses in message ids ident: reject bogus email addresses with IDENT_STRICT ident: rename IDENT_ERROR_ON_NO_NAME to IDENT_STRICT format-patch: use GIT_COMMITTER_EMAIL in message ids ident: let callers omit name with fmt_indent ident: refactor NO_DATE flag in fmt_ident ident: reword empty ident error message format-patch: refactor get_patch_filename ident: trim whitespace from default name/email ident: use a dynamic strbuf in fmt_ident ident: use full dns names to generate email addresses ident: report passwd errors with a more friendly message drop length limitations on gecos-derived names and emails ident: don't write fallback username into git_default_name fmt_ident: drop IDENT_WARN_ON_NO_NAME code format-patch: use default email for generating message ids ident: trim trailing newline from /etc/mailname move git_default_* variables to ident.c move identity config parsing to ident.c fmt-merge-msg: don't use static buffer in record_person ... 29 May 2012, 20:09:13 UTC
12d7d15 Merge branch 'jk/fetch-pack-remove-dups-optim' The way "fetch-pack" that is given multiple references to fetch tried to remove duplicates was very inefficient. By Jeff King * jk/fetch-pack-remove-dups-optim: fetch-pack: sort incoming heads list earlier fetch-pack: avoid quadratic loop in filter_refs fetch-pack: sort the list of incoming refs add sorting infrastructure for list refs fetch-pack: avoid quadratic behavior in remove_duplicates fetch-pack: sort incoming heads 29 May 2012, 20:09:08 UTC
a706000 Merge branch 'rs/refs-string-slice' Avoid unnecessary temporary allocations while looking for matching refs inside refs API. By René Scharfe (3) and Junio C Hamano (1) * rs/refs-string-slice: refs: do not create ref_entry when searching refs: use strings directly in find_containing_dir() refs: convert parameter of create_dir_entry() to length-limited string refs: convert parameter of search_ref_dir() to length-limited string 29 May 2012, 20:09:02 UTC
4dbfaee Merge branch 'mh/fetch-pack-constness' Tighten constness of some local variables in a callchain. By Michael Haggerty * mh/fetch-pack-constness: cmd_fetch_pack(): respect constness of argv parameter cmd_fetch_pack(): combine the loop termination conditions cmd_fetch_pack(): handle non-option arguments outside of the loop cmd_fetch_pack(): declare dest to be const 29 May 2012, 20:08:53 UTC
38f2b87 Merge branch 'mh/ref-api-lazy-loose' The code to lazily read loose refs unnecessarily read the refs in a subhierarchy by mistake when we free the data for the subhierarchy. By Michael Haggerty * mh/ref-api-lazy-loose: free_ref_entry(): do not trigger reading of loose refs 29 May 2012, 20:08:35 UTC
32bd3a5 Merge branch 'ng/pack-objects-cleanup' By Nguyễn Thái Ngọc Duy * ng/pack-objects-cleanup: pack-objects: refactor write_object() into helper functions pack-objects, streaming: turn "xx >= big_file_threshold" to ".. > .." 29 May 2012, 20:08:30 UTC
8a6dae1 Do not autosquash in case of an implied interactive rebase The option to autosquash is only used in case of an interactive rebase. When merges are preserved, rebase uses an interactive rebase internally, but in this case autosquash should still be disabled. Signed-off-by: Vincent van Ravesteijn <vfr@lyx.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2012, 18:44:14 UTC
c41494f Reduce cost of deletion in levenstein distance (4 -> 3) Before this patch, a character deletion has the same cost as 2 swaps, or 4 additions, so Git prefers suggesting a completely scrambled command name to removing a character. For example, "git tags" suggests "stage", but not "tag". By setting the deletion cost to 3, we keep it higher than swaps or additions, but prefer 1 deletion to 2 swaps. "git tags" now suggests "tag" in addition to staged. Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2012, 18:12:59 UTC
5d5c556 git-p4: Clean up branch test cases Correct submit description in one test and remove not required commands from another. Signed-off-by: Vitor Antunes <vitor.hda@gmail.com> Acked-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2012, 17:46:00 UTC
ad71f66 git-p4: Verify detection of "empty" branch creation Current implementation of new branch parent detection works on the principle that the new branch is a complete integration, with no changes, of the original files. This test shows this deficiency in the particular case when the new branch is created from a subset of the original files. Signed-off-by: Vitor Antunes <vitor.hda@gmail.com> Acked-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2012, 17:46:00 UTC
9e826df git-p4: Test changelists touching two branches It is possible to modify two different branches in P4 in a single changelist. git-p4 correctly detects this and commits the relevant changes to the different branches separately. This test proves that and avoid future regressions in this behavior. Signed-off-by: Vitor Antunes <vitor.hda@gmail.com> Acked-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 May 2012, 17:45:59 UTC
6f3c0ef Merge branch 'maint' By Peter Krefting via Peter Krefting * maint: Update Swedish translation (728t0f0u) 29 May 2012, 08:48:05 UTC
3f0812f Update Swedish translation (728t0f0u) Signed-off-by: Peter Krefting <peter@softwolves.pp.se> 29 May 2012, 08:28:34 UTC
a618032 git-svn: make Git::SVN::Fetcher a separate file This patch removes a chunk of code (the Git::SVN::Fetcher consumer of libsvn's tree delta protocol) from git-svn.perl and documents its interface so the hurried reader does not have to read that code right away. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net> 29 May 2012, 00:17:59 UTC
72827aa git-svn: rename SVN::Git::* packages to Git::SVN::* Using names in the Git:: namespace means these cannot conflict with a hypothetical binding teaching Subversion to interact with git repositories. Currently the packages are private to git-svn.perl so the choice of name isn't likely to make much difference. This change is mainly meant as preparation for splitting out the packages in question as modules on the public search path. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net> 29 May 2012, 00:17:59 UTC
c102f4c git-svn: move Git::SVN::Prompt into its own file git-svn.perl is very long (around 6500 lines) and although it is nicely split into modules, some new readers do not even notice --- it is too distracting to see all this functionality collected in a single file. Splitting it into multiple files would make it easier for people to read individual modules straight through and to experiment with components separately. Let's start with Git::SVN::Prompt. For simplicity, we install this as a module in the standard search path, just like the existing Git and Git::I18N modules. In the process, add a manpage explaining its interface and that it is not likely to be useful for other projects to avoid confusion. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Eric Wong <normalperson@yhbt.net> 29 May 2012, 00:17:59 UTC
befc5ed Git 1.7.11-rc0 Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 19:19:45 UTC
4acf8e8 Merge branch 'sp/sh-windows-pwd' * sp/sh-windows-pwd: git-sh-setup: define workaround wrappers before they are used 25 May 2012, 19:08:26 UTC
7903e66 Merge branch 'mh/test-keep-prove-cache' By Michael Haggerty * mh/test-keep-prove-cache: t/Makefile: retain cache t/.prove across prove runs 25 May 2012, 19:08:21 UTC
3501b89 Merge branch 'rs/dir-strbuf-read-recursive-fix' Simplification for the codepath to read directories recursively. By René Scharfe * rs/dir-strbuf-read-recursive-fix: dir: simplify fill_directory() dir: respect string length argument of read_directory_recursive() 25 May 2012, 19:07:52 UTC
b19ea23 Merge branch 'fc/git-complete-helper-fix' Resurrects old behaviour of _git/_gitk for external users. 25 May 2012, 19:07:09 UTC
aed79af Merge branch 'ap/checkout-no-progress-for-non-tty' The progress indicator for a large "git checkout" was sent to stderr even if it is not a terminal. 25 May 2012, 19:06:34 UTC
9972c8e Merge branch 'jk/format-person-part-buffer-limit' Avoid buffer overflow in format_person_part() function 25 May 2012, 19:06:16 UTC
407abba Merge branch 'jk/pretty-commit-header-incomplete-line' Fixes error codepath when a malformed commit object has a header line chomped in the middle. 25 May 2012, 19:05:35 UTC
500cf7c Merge branch 'jk/ident-split-fix' An author/committer name that is a single character was mishandled as an invalid name by mistake. 25 May 2012, 19:05:26 UTC
0bc8bea Merge branch 'rs/xdiff-fast-hash-fix' Fixes compilation issue on 32-bit in an earlier series. 25 May 2012, 19:05:02 UTC
ec04a27 Merge branch 'mh/ref-api' Fixes a performance regression in the earlier series. 25 May 2012, 19:04:36 UTC
fca9e00 Merge branch 'rs/maint-grep-F' "git grep -e '$pattern'", unlike the case where the patterns are read from a file, did not treat individual lines in the given pattern argument as separate regular expressions as it should. 25 May 2012, 19:04:19 UTC
4f64464 Sync with 1.7.10.3 25 May 2012, 18:36:25 UTC
26e5c5d Git 1.7.10.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 18:28:43 UTC
69e8260 Merge branch 'hv/submodule-alt-odb' into maint When a submodule repository uses alternate object store mechanism, some commands that were started from the superproject did not notice it and failed with "No such object" errors. The subcommands of "git submodule" command that recursed into the submodule in a separate process were OK; only the ones that cheated and peeked directly into the submodule's repository from the primary process were affected. By Heiko Voigt * hv/submodule-alt-odb: teach add_submodule_odb() to look for alternates 25 May 2012, 18:26:38 UTC
98eb3fc Merge branch 'bp/diff-no-index-strbuf-fix' into maint The directory path used in "git diff --no-index", when it recurses down, was broken with a recent update after v1.7.10.1 release. By Bobby Powers * bp/diff-no-index-strbuf-fix: diff --no-index: don't leak buffers in queue_diff diff --no-index: reset temporary buffer lengths on directory iteration 25 May 2012, 18:25:36 UTC
a3347b9 fmt-merge-message: add empty line between tag and signature verification When adding the information from a tag, put an empty line between the message of the tag and the commented-out signature verification information. At least for the kernel workflow, I often end up re-formatting the message that people send me in the tag data. In that situation, putting the tag message and the tag signature verification back-to-back then means that normal editor "reflow parapgraph" command will get confused and think that the signature is a continuation of the last message paragraph. So I always end up having to first add an empty line, and then go back and reflow the last paragraph. Let's just do it in git directly. The extra vertical space also makes the verification visually stand out more from the user-supplied message, so it looks a bit more readable to me too, but that may be just an odd personal preference. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 18:24:08 UTC
ec84e06 config doc: remove confusion about relative GIT_DIR from FILES section From the FILES section of the git-config(1) manual: $GIT_DIR/config:: Repository specific configuration file. (The filename is of course relative to the repository root, not the working directory.) That's confusing because $GIT_DIR really is relative to the working directory. $ GIT_DIR=.git GIT_EDITOR='pwd; echo editing' $ export GIT_DIR GIT_EDITOR $ git config --edit --local /home/jrn/src/git/Documentation editing .git/config It turns out that the comment is a remnant from older days when the heading said ".git/config" (which is indeed relative to the top of the worktree). It was only when the heading was changed to refer more precisely to <git dir>/config (see v1.5.3.2~18, AsciiDoc tweak to avoid leading dot, 2007-09-14) that the parenthesis stopped making sense. Remove it. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 18:22:02 UTC
59f9b8a format-patch: do not use bogus email addresses in message ids We can ask git_committer_info to be strict about coming up with an email, which will die automatically on a poorly configured machine. This is better than letting invalid message-ids into the wild. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 03:50:19 UTC
8c5b1ae ident: reject bogus email addresses with IDENT_STRICT If we come up with a hostname like "foo.(none)" because the user's machine is not fully qualified, we should reject this in strict mode (e.g., when we are making a commit object), just as we reject an empty gecos username. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 03:50:05 UTC
5bc2dc2 Sync with maint By Jeff King (1) and Junio C Hamano (1) * maint: Update draft release notes to 1.7.10.3 osxkeychain: pull make config from top-level directory 25 May 2012, 00:37:40 UTC
c464918 Update draft release notes to 1.7.10.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 00:37:29 UTC
a8bd582 Merge branch 'jk/maint-status-porcelain-z-b' into maint "git status --porcelain" ignored "--branch" option by mistake. The output for "git status --branch -z" was also incorrect and did not terminate the record for the current branch name with NUL as asked. By Jeff King * jk/maint-status-porcelain-z-b: status: respect "-b" for porcelain format status: fix null termination with "-b" status: refactor null_termination option commit: refactor option parsing 25 May 2012, 00:32:30 UTC
f9bc573 ident: rename IDENT_ERROR_ON_NO_NAME to IDENT_STRICT Callers who ask for ERROR_ON_NO_NAME are not so much concerned that the name will be blank (because, after all, we will fall back to using the username), but rather it is a check to make sure that low-quality identities do not end up in things like commit messages or emails (whereas it is OK for them to end up in things like reflogs). When future commits add more quality checks on the identity, each of these callers would want to use those checks, too. Rather than modify each of them later to add a new flag, let's refactor the flag. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 00:16:41 UTC
c73f384 format-patch: use GIT_COMMITTER_EMAIL in message ids Before commit 43ae9f4, we generated the tail of a message id by calling git_committer_info and parsing the email out of the result. 43ae9f4 changed to use ident_default_email directly, so we didn't have to bother with parsing. As a side effect, it meant we no longer used GIT_COMMITTER_EMAIL at all. In general, this is probably reasonable behavior. Either the default email is sane on your system, or you are using user.email to provide something sane. The exception is if you rely on GIT_COMMITTER_EMAIL being set all the time to override the bogus generated email. This is unlikely to match anybody's real-life setup, but we do use it in the test environment. And furthermore, it's what we have always done, and the change in 43ae9f4 was about cleaning up, not fixing any bug; we should be conservative and keep the behavior identical. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 00:16:41 UTC
c15e198 ident: let callers omit name with fmt_indent Most callers want to see all of "$name <$email> $date", but a few want only limited parts, omitting the date, or even the name. We already have IDENT_NO_DATE to handle the date part, but there's not a good option for getting just the email. Callers have to done one of: 1. Call ident_default_email; this does not respect environment variables, nor does it promise to trim whitespace or other crud from the result. 2. Call git_{committer,author}_info; this returns the name and email, leaving the caller to parse out the wanted bits. This patch adds IDENT_NO_NAME; it stops short of adding IDENT_NO_EMAIL, as no callers want it (nor are likely to), and it complicates the error handling of the function. When no name is requested, the angle brackets (<>) around the email address are also omitted. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 00:16:40 UTC
359b27a ident: refactor NO_DATE flag in fmt_ident As a short-hand, we extract this flag into the local variable "name_addr_only". It's more accurate to simply negate this and refer to it as "want_date", which will be less confusing when we add more NO_* flags. While we're touching this part of the code, let's move the call to ident_default_date() only when we are actually going to use it, not when we have NO_DATE set, or when we get a date from the environment. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 00:16:40 UTC
b00f6cf ident: reword empty ident error message There's on point in printing the name, since it is by definition the empty string if we have reached this code path. Instead, let's be more clear that we are complaining about the empty name, but still show the email address that it is attached to (since that may provide some context to the user). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 25 May 2012, 00:16:34 UTC
654ad40 Avoid sorting if references are added to ref_cache in order The old code allowed many references to be efficiently added to a single directory, because it just appended the references to the containing directory unsorted without doing any searching (and therefore without requiring any intermediate sorting). But the old code was inefficient when a large number of subdirectories were added to a directory, because the directory always had to be searched to see if the new subdirectory already existed, and this search required the directory to be sorted first. The same was repeated for every new subdirectory, so the time scaled like O(N^2), where N is the number of subdirectories within a single directory. In practice, references are often added to the ref_cache in lexicographic order, for example when reading the packed-refs file. So build some intelligence into add_entry_to_dir() to optimize for the case of references and/or subdirectories being added in lexicographic order: if the existing entries were already sorted, and the new entry comes after the last existing entry, then adjust ref_dir::sorted to reflect the fact that the ref_dir is still sorted. Thanks to Peff for pointing out the performance regression that inspired this change. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com> 24 May 2012, 19:16:06 UTC
e9fc64c checkout: no progress messages if !isatty(2). If stderr isn't a tty, we shouldn't be printing incremental progress messages. In particular, this affects 'git checkout -f . >&logfile' unless you provided -q. And git-new-workdir has no way to provide -q. It would probably be better to have progress.c check isatty(2) all the time, but that wouldn't allow things like 'git push --progress' to force progress reporting to on, so I won't try to solve the general case right now. Actual fix suggested by Jeff King. Signed-off-by: Avery Pennarun <apenwarr@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 24 May 2012, 18:29:07 UTC
17a9ac7 osxkeychain: pull make config from top-level directory The default compiler and cflags were mostly "works for me" when I built the original version. We need to be much less careful here than usual, because we know we are building only on OS X. But it's only polite to at least respect the CFLAGS and CC definitions that the user may have provided earlier. While we're at it, let's update our definitions and rules to be more like the top-level Makefile; default our CFLAGS to include -O2, and make sure we use CFLAGS and LDFLAGS when linking. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 24 May 2012, 17:35:40 UTC
3d2a33e fetch-pack: sort incoming heads list earlier Commit 4435968 started sorting heads fed to fetch-pack so that later commits could use more optimized algorithms; commit 7db8d53 switched the remove_duplicates function to such an algorithm. Of course, the sorting is more effective if you do it _before_ the algorithm in question. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 24 May 2012, 17:02:37 UTC
bd578b5 Update draft release notes to 1.7.11 Signed-off-by: Junio C Hamano <gitster@pobox.com> 23 May 2012, 20:54:23 UTC
b83cfa5 Merge branch 'rs/archive-tree-in-tip-simplify' By René Scharfe * rs/archive-tree-in-tip-simplify: archive-tar: keep const in checksum calculation archive: simplify refname handling 23 May 2012, 20:35:22 UTC
8d19426 Merge branch 'js/rev-parse-doc-fix' By Jon Seymour * js/rev-parse-doc-fix: rev-parse doc: --git-dir does not always show a relative path 23 May 2012, 20:35:19 UTC
1221941 Merge branch 'js/rebase-i-p-test-fix' By Johannes Sixt * js/rebase-i-p-test-fix: Fix t3411.3 to actually rebase something 23 May 2012, 20:35:16 UTC
c0f31b8 Merge branch 'bp/diff-no-index-strbuf-fix' Fix regressions to "git diff --no-index" when it recurses down. By Bobby Powers * bp/diff-no-index-strbuf-fix: diff --no-index: don't leak buffers in queue_diff diff --no-index: reset temporary buffer lengths on directory iteration 23 May 2012, 20:35:12 UTC
4809ff8 Merge branch 'hv/submodule-alt-odb' When peeking into object stores of submodules, the code forgot that they might borrow objects from alternate object stores on their own. By Heiko Voigt * hv/submodule-alt-odb: teach add_submodule_odb() to look for alternates 23 May 2012, 20:35:06 UTC
8072766 xdiff: import new 32-bit version of count_masked_bytes() Import the latest 32-bit implementation of count_masked_bytes() from Linux (arch/x86/include/asm/word-at-a-time.h). It's shorter and avoids overflows and negative numbers. This fixes test failures on 32-bit, where negative partial results had been shifted right using the "wrong" method (logical shift right instead of arithmetic short right). The compiler is free to chose the method, so it was only wrong in the sense that it didn't work as intended by us. Reported-by: Øyvind A. Holm <sunny@sunbase.org> Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 23 May 2012, 16:10:17 UTC
7e356a9 xdiff: avoid more compiler warnings with XDL_FAST_HASH on 32-bit machines Hide literals that can cause compiler warnings for 32-bit architectures in expressions that evaluate to small numbers there. Some compilers warn that 0x0001020304050608 won't fit into a 32-bit long, others that shifting right by 56 bits clears a 32-bit value completely. The correct values are calculated in the 64-bit case, which is all that matters in this if-branch. Reported-by: Øyvind A. Holm <sunny@sunbase.org> Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Acked-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com> 23 May 2012, 16:10:03 UTC
9322ce2 xdiff: avoid compiler warnings with XDL_FAST_HASH on 32-bit machines Import macro REPEAT_BYTE from Linux (arch/x86/include/asm/word-at-a-time.h) to avoid 64-bit integer literals, which cause some 32-bit compilers to print warnings. Reported-by: Øyvind A. Holm <sunny@sunbase.org> Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 21:39:49 UTC
e1980c9 refs: do not create ref_entry when searching The search_ref_dir() function is about looking up an existing ref_entry in a sorted array of ref_entry stored in dir->entries, but it still allocates a new ref_entry and frees it before returning. This is only because the call to bsearch(3) was coded in a suboptimal way. Unlike the comparison function given to qsort(3), the first parameter to its comparison function does not need to point at an object that is shaped like an element in the array. Introduce a new comparison function that takes a counted string as the key and an element in an array of ref_entry and give it to bsearch(), so that we do not have to allocate a new ref_entry that we will never return to the caller anyway. Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 21:28:03 UTC
dd02e72 refs: use strings directly in find_containing_dir() Convert the parameter subdirname of search_for_subdir() to a length-limted string and then simply pass the interesting slice of the refname from find_containing_dir(), thereby avoiding to duplicate the string. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 20:32:26 UTC
b9146f5 refs: convert parameter of create_dir_entry() to length-limited string Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 20:32:24 UTC
40ad937 refs: convert parameter of search_ref_dir() to length-limited string Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 20:32:21 UTC
a0de288 fetch-pack: avoid quadratic loop in filter_refs We have a list of refs that we want to compare against the "match" array. The current code searches the match list linearly, giving quadratic behavior over the number of refs when you want to fetch all of them. Instead, we can compare the lists as we go, giving us linear behavior. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 20:31:03 UTC
9e8e704 fetch-pack: sort the list of incoming refs Having the list sorted means we can avoid some quadratic algorithms when comparing lists. These should typically be sorted already, but they do come from the remote, so let's be extra careful. Our ref-sorting implementation does a mergesort, so we do not have to care about performance degrading in the common case that the list is already sorted. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 20:31:03 UTC
ed81c76 add sorting infrastructure for list refs Since we store lists of refs as linked lists, we can use llist_mergesort to efficiently sort them. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 20:31:03 UTC
7db8d53 fetch-pack: avoid quadratic behavior in remove_duplicates We remove duplicate entries from the list of refs we are fed in fetch-pack. The original algorithm is quadratic over the number of refs, but since the list is now guaranteed to be sorted, we can do it in linear time. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 22 May 2012, 20:31:03 UTC
back to top