a6605d7 | Junio C Hamano | 01 June 2011, 21:11:17 UTC | Sync with 1.7.5.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 June 2011, 21:11:17 UTC |
e5af0de | Junio C Hamano | 01 June 2011, 21:08:26 UTC | Git 1.7.5.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 June 2011, 21:08:26 UTC |
1c6e351 | Junio C Hamano | 01 June 2011, 21:05:22 UTC | Merge branch 'jk/maint-config-alias-fix' into maint * jk/maint-config-alias-fix: handle_options(): do not miscount how many arguments were used config: always parse GIT_CONFIG_PARAMETERS during git_config git_config: don't peek at global config_parameters config: make environment parsing routines static | 01 June 2011, 21:05:22 UTC |
6e1a751 | Junio C Hamano | 01 June 2011, 21:03:07 UTC | Merge branch 'jc/fmt-req-fix' into maint * jc/fmt-req-fix: userformat_find_requirements(): find requirement for the correct format | 01 June 2011, 21:03:07 UTC |
2dd7984 | Junio C Hamano | 01 June 2011, 21:02:52 UTC | Merge branch 'jk/maint-docs' into maint * jk/maint-docs: docs: fix some antique example output docs: make sure literal "->" isn't converted to arrow docs: update status --porcelain format docs: minor grammar fixes to git-status | 01 June 2011, 21:02:52 UTC |
24263cf | Junio C Hamano | 01 June 2011, 21:02:45 UTC | Merge branch 'jn/doc-remote-helpers' into maint * jn/doc-remote-helpers: Documentation: do not misinterpret refspecs as bold text | 01 June 2011, 21:02:45 UTC |
c72b914 | Junio C Hamano | 01 June 2011, 21:02:39 UTC | Merge branch 'kk/maint-prefix-in-config-mak' into maint * kk/maint-prefix-in-config-mak: config.mak.in: allow "configure --sysconfdir=/else/where" | 01 June 2011, 21:02:39 UTC |
6051561 | Jim Meyering | 29 April 2011, 09:42:41 UTC | diffcore-rename.c: avoid set-but-not-used warning Since 9d8a5a5 (diffcore-rename: refactor "too many candidates" logic, 2011-01-06), diffcore_rename() initializes num_src but does not use it anymore. "-Wunused-but-set-variable" in gcc-4.6 complains about this. Signed-off-by: Jim Meyering <meyering@redhat.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 01 June 2011, 20:54:17 UTC |
090a1a5 | Junio C Hamano | 31 May 2011, 19:22:50 UTC | Update draft release notes to 1.7.6 I think we are almost there for the feature freeze. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 31 May 2011, 19:22:50 UTC |
f67d2e8 | Junio C Hamano | 31 May 2011, 19:19:11 UTC | Merge branch 'jk/format-patch-am' * jk/format-patch-am: format-patch: preserve subject newlines with -k clean up calling conventions for pretty.c functions pretty: add pp_commit_easy function for simple callers mailinfo: always clean up rfc822 header folding t: test subject handling in format-patch / am pipeline Conflicts: builtin/branch.c builtin/log.c commit.h | 31 May 2011, 19:19:11 UTC |
1c9d719 | Junio C Hamano | 31 May 2011, 19:09:35 UTC | Merge branch 'jn/doc-remote-helpers' * jn/doc-remote-helpers: Documentation: do not misinterpret refspecs as bold text | 31 May 2011, 19:09:35 UTC |
aca820a | Junio C Hamano | 31 May 2011, 19:09:27 UTC | Merge branch 'jk/format-patch-empty-prefix' * jk/format-patch-empty-prefix: format-patch: make zero-length subject prefixes prettier | 31 May 2011, 19:09:27 UTC |
15af707 | Junio C Hamano | 31 May 2011, 19:09:21 UTC | Merge branch 'ab/i18n-envsubst-doc-fix' * ab/i18n-envsubst-doc-fix: git-sh-i18n--envsubst: add SYNOPSIS section to the documentation | 31 May 2011, 19:09:21 UTC |
b9575e7 | Junio C Hamano | 31 May 2011, 19:09:18 UTC | Merge branch 'jc/log-quiet-fix' * jc/log-quiet-fix: log: --quiet should serve as synonym to -s | 31 May 2011, 19:09:18 UTC |
2177dc6 | Junio C Hamano | 31 May 2011, 19:09:12 UTC | Merge branch 'kk/maint-prefix-in-config-mak' * kk/maint-prefix-in-config-mak: config.mak.in: allow "configure --sysconfdir=/else/where" | 31 May 2011, 19:09:12 UTC |
df873f9 | Junio C Hamano | 31 May 2011, 19:09:08 UTC | Merge branch 'jk/rebase-head-reflog' * jk/rebase-head-reflog: rebase: write a reflog entry when finishing rebase: create HEAD reflog entry when aborting | 31 May 2011, 19:09:08 UTC |
7953156 | Junio C Hamano | 31 May 2011, 19:09:00 UTC | Merge branch 'jk/maint-docs' * jk/maint-docs: docs: fix some antique example output docs: make sure literal "->" isn't converted to arrow docs: update status --porcelain format docs: minor grammar fixes to git-status | 31 May 2011, 19:09:00 UTC |
27c6729 | Junio C Hamano | 31 May 2011, 19:08:55 UTC | Merge branch 'jk/read-in-full-stops-on-error' * jk/read-in-full-stops-on-error: read_in_full: always report errors | 31 May 2011, 19:08:55 UTC |
2cd517c | Junio C Hamano | 31 May 2011, 19:08:52 UTC | Merge branch 'jk/maint-remote-mirror-safer' * jk/maint-remote-mirror-safer: remote: allow "-t" with fetch mirrors | 31 May 2011, 19:08:52 UTC |
efd02e9 | Junio C Hamano | 31 May 2011, 19:08:48 UTC | Merge branch 'jl/read-tree-m-dry-run' * jl/read-tree-m-dry-run: Teach read-tree the -n|--dry-run option unpack-trees: add the dry_run flag to unpack_trees_options | 31 May 2011, 19:08:48 UTC |
2951df7 | Junio C Hamano | 31 May 2011, 19:07:14 UTC | Sync with maint | 31 May 2011, 19:07:14 UTC |
2b0b64e | Junio C Hamano | 31 May 2011, 19:06:40 UTC | Start 1.7.5.4 draft release notes Signed-off-by: Junio C Hamano <gitster@pobox.com> | 31 May 2011, 19:06:40 UTC |
1618297 | Junio C Hamano | 31 May 2011, 19:02:04 UTC | Merge branch 'tr/add-i-no-escape' into maint * tr/add-i-no-escape: add -i: ignore terminal escape sequences | 31 May 2011, 19:02:04 UTC |
398dbe5 | Junio C Hamano | 31 May 2011, 19:01:06 UTC | Merge branch 'vh/config-interactive-singlekey-doc' into maint * vh/config-interactive-singlekey-doc: git-reset.txt: better docs for '--patch' git-checkout.txt: better docs for '--patch' git-stash.txt: better docs for '--patch' git-add.txt: document 'interactive.singlekey' config.txt: 'interactive.singlekey; is used by... | 31 May 2011, 19:01:06 UTC |
82ca090 | Junio C Hamano | 31 May 2011, 19:00:43 UTC | Merge branch 'ml/test-readme' into maint * ml/test-readme: t/README: unify documentation of test function args | 31 May 2011, 19:00:43 UTC |
dd4c0ce | Junio C Hamano | 31 May 2011, 19:00:27 UTC | Merge branch 'ab/i18n-fixup' into maint * ab/i18n-fixup: (24 commits) i18n: use test_i18n{cmp,grep} in t7600, t7607, t7611 and t7811 i18n: use test_i18n{grep,cmp} in t7508 i18n: use test_i18ngrep in t7506 i18n: use test_i18ngrep and test_i18ncmp in t7502 i18n: use test_i18ngrep in t7501 i18n: use test_i18ncmp in t7500 i18n: use test_i18ngrep in t7201 i18n: use test_i18ncmp and test_i18ngrep in t7102 and t7110 i18n: use test_i18ncmp and test_i18ngrep in t5541, t6040, t6120, t7004, t7012 and t7060 i18n: use test_i18ncmp and test_i18ngrep in t3700, t4001 and t4014 i18n: use test_i18ncmp and test_i18ngrep in t3203, t3501 and t3507 i18n: use test_i18ngrep in t2020, t2204, t3030, and t3200 i18n: use test_i18ngrep in lib-httpd and t2019 i18n: do not overuse C_LOCALE_OUTPUT (grep) i18n: use test_i18ncmp in t1200 and t2200 i18n: .git file is not a human readable message (t5601) i18n: do not overuse C_LOCALE_OUTPUT i18n: mark init-db messages for translation i18n: mark checkout plural warning for translation i18n: mark checkout --detach messages for translation ... | 31 May 2011, 19:00:27 UTC |
b3c8931 | Junio C Hamano | 31 May 2011, 19:00:02 UTC | Merge branch 'jc/rename-degrade-cc-to-c' into maint * jc/rename-degrade-cc-to-c: diffcore-rename: fall back to -C when -C -C busts the rename limit diffcore-rename: record filepair for rename src diffcore-rename: refactor "too many candidates" logic builtin/diff.c: remove duplicated call to diff_result_code() | 31 May 2011, 19:00:02 UTC |
e596fd2 | Junio C Hamano | 31 May 2011, 18:59:39 UTC | Merge branch 'rr/doc-content-type' into maint * rr/doc-content-type: Documentation: Allow custom diff tools to be specified in 'diff.tool' Documentation: Add diff.<driver>.* to config Documentation: Move diff.<driver>.* from config.txt to diff-config.txt Documentation: Add filter.<driver>.* to config | 31 May 2011, 18:59:39 UTC |
766d626 | Ramsay Jones | 31 May 2011, 17:23:42 UTC | config.c: Remove unused git_config_global() function Commit 8f323c00 (drop support for GIT_CONFIG_NOGLOBAL, 15-03-2011) removed the git_config_global() function, among other things, since it is no longer required. Unfortunately, this function has since been unintentionally restored by a faulty conflict resolution. Remove it. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 31 May 2011, 17:51:18 UTC |
d98a201 | Junio C Hamano | 31 May 2011, 03:19:21 UTC | Merge branch 'jc/fmt-req-fix' * jc/fmt-req-fix: userformat_find_requirements(): find requirement for the correct format | 31 May 2011, 03:19:21 UTC |
1f9a980 | Junio C Hamano | 31 May 2011, 03:19:14 UTC | Merge branch 'jk/maint-config-alias-fix' * jk/maint-config-alias-fix: handle_options(): do not miscount how many arguments were used config: always parse GIT_CONFIG_PARAMETERS during git_config git_config: don't peek at global config_parameters config: make environment parsing routines static Conflicts: config.c | 31 May 2011, 03:19:14 UTC |
8e4414e | Jonathan Nieder | 30 May 2011, 15:52:56 UTC | Documentation: do not misinterpret refspecs as bold text In v1.7.3.3~2 (Documentation: do not misinterpret pull refspec as bold text, 2010-12-03) many uses of asterisks in expressions like "refs/heads/*:refs/svn/origin/branches/*" were escaped as {asterisk} to avoid being treated as delimiters for bold text, but these two were missed. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 May 2011, 19:55:16 UTC |
e7af8e4 | Jeff King | 30 May 2011, 14:19:05 UTC | format-patch: make zero-length subject prefixes prettier If you give a zero-length subject prefix to format-patch (e.g., "format-patch --subject-prefix="), we will print the ugly: Subject: [ 1/2] your subject here because we always insert a space between the prefix and numbering. Requiring the user to provide the space in their prefix would be more flexible, but would break existing usage. This patch provides a DWIM and suppresses the space for zero-length prefixes, under the assumption that nobody actually wants "[ 1/2]". Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 May 2011, 18:18:59 UTC |
f5008f5 | Ævar Arnfjörð Bjarmason | 29 May 2011, 11:00:35 UTC | git-sh-i18n--envsubst: add SYNOPSIS section to the documentation Change the documentation for the git-sh-i18n--envsubst program to include a SYNOPSIS section. Include the invocation of the program from git-sh-i18n.sh. Not having a SYNOPSIS section caused the "doc" target to fail on Centos 5.5 with asciidoc 8.2.5, while building with 8.6.4 on Debian works just fine. The relevant error was: ERROR: git-sh-i18n--envsubst.txt: line 9: second section must be named SYNOPSIS Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 May 2011, 08:08:32 UTC |
fb674d7 | Junio C Hamano | 30 May 2011, 07:09:55 UTC | Merge branch 'maint' * maint: git-submodule.sh: separate parens by a space to avoid confusing some shells Documentation/technical/api-diff.txt: correct name of diff_unmerge() read_gitfile_gently: use ssize_t to hold read result remove tests of always-false condition rerere.c: diagnose a corrupt MERGE_RR when hitting EOF between TAB and '\0' | 30 May 2011, 07:09:55 UTC |
5b42477 | Junio C Hamano | 30 May 2011, 07:09:41 UTC | Merge branch 'jm/maint-misc-fix' into maint * jm/maint-misc-fix: read_gitfile_gently: use ssize_t to hold read result remove tests of always-false condition rerere.c: diagnose a corrupt MERGE_RR when hitting EOF between TAB and '\0' | 30 May 2011, 07:09:41 UTC |
a059240 | Junio C Hamano | 30 May 2011, 07:09:36 UTC | Merge branch 'bc/maint-submodule-fix-parked' into maint * bc/maint-submodule-fix-parked: git-submodule.sh: separate parens by a space to avoid confusing some shells | 30 May 2011, 07:09:36 UTC |
bcb477f | Junio C Hamano | 30 May 2011, 07:03:52 UTC | Merge branch 'bc/maint-api-doc-parked' into maint * bc/maint-api-doc-parked: Documentation/technical/api-diff.txt: correct name of diff_unmerge() | 30 May 2011, 07:03:52 UTC |
be653d6 | Junio C Hamano | 30 May 2011, 07:00:07 UTC | Merge branch 'mk/grep-pcre' * mk/grep-pcre: git-grep: Fix problems with recently added tests git-grep: Update tests (mainly for -P) Makefile: Pass USE_LIBPCRE down in GIT-BUILD-OPTIONS git-grep: update tests now regexp type is "last one wins" git-grep: do not die upon -F/-P when grep.extendedRegexp is set. git-grep: Bail out when -P is used with -F or -E grep: Add basic tests configure: Check for libpcre git-grep: Learn PCRE grep: Extract compile_regexp_failed() from compile_regexp() grep: Fix a typo in a comment grep: Put calls to fixmatch() and regmatch() into patmatch() contrib/completion: --line-number to git grep Documentation: Add --line-number to git-grep synopsis | 30 May 2011, 07:00:07 UTC |
d0042ab | Michał Kiedrowicz | 26 May 2011, 22:43:59 UTC | git-grep: Fix problems with recently added tests Brian Gernhardt reported that test 'git grep -E -F -G a\\+b' fails on OS X 10.6.7. This is because I assumed \+ is part of BRE, which isn't true on all platforms. The easiest way to make this test pass is to just update expected output, but that would make the test pointless. Its real purpose is to check whether 'git grep -E -F -G' is different from 'git grep -E -G -F'. To check that, let's change pattern to "a+b*c". This should return different match for -G, -F and -E. I also made two small tweaks to the tests. First, I added path "ab" to all calls to future-proof tests. Second, I updated last two tests to better show that 'git grep -P -E' is different from 'git grep -E -P'. Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 30 May 2011, 06:58:50 UTC |
3d109dd | Junio C Hamano | 30 May 2011, 06:51:26 UTC | Merge branch 'jc/notes-batch-removal' * jc/notes-batch-removal: show: --ignore-missing notes remove: --stdin reads from the standard input notes remove: --ignore-missing notes remove: allow removing more than one | 30 May 2011, 06:51:26 UTC |
01f9ffb | Junio C Hamano | 30 May 2011, 06:51:22 UTC | Merge branch 'jk/haves-from-alternate-odb' * jk/haves-from-alternate-odb: receive-pack: eliminate duplicate .have refs bisect: refactor sha1_array into a generic sha1 list refactor refs_from_alternate_cb to allow passing extra data | 30 May 2011, 06:51:22 UTC |
144dfc5 | Junio C Hamano | 30 May 2011, 02:08:51 UTC | Merge branch 'jn/run-command-error-failure' into maint * jn/run-command-error-failure: run-command: handle short writes and EINTR in die_child tests: check error message from run_command | 30 May 2011, 02:08:51 UTC |
01771a8 | Junio C Hamano | 28 May 2011, 19:25:24 UTC | log: --quiet should serve as synonym to -s The previous commit simply hijacked --quiet and essentially made it into a no-op. Instead, take it as a cue that the end user wants to omit the patch output from commands that default to show patches, e.g. "show". Signed-off-by: Junio C Hamano <gitster@pobox.com> | 28 May 2011, 19:25:24 UTC |
53f2ffa | Jeff King | 27 May 2011, 20:16:14 UTC | rebase: write a reflog entry when finishing When we finish a rebase, our detached HEAD is at the final result. We update the original branch ref with this result, and then point the HEAD symbolic ref at the updated branch. We write a reflog for the branch update, but not for the update of HEAD. Because we're already at the final result on the detached HEAD, moving to the branch actually doesn't change our commit sha1 at all. So in that sense, a reflog entry would be pointless. However, humans do read reflogs, and an entry saying "rebase finished: returning to refs/heads/master" can be helpful in understanding what is going on. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 May 2011, 22:52:03 UTC |
ea69619 | Csaba Henk | 27 May 2011, 20:13:02 UTC | rebase: create HEAD reflog entry when aborting When we abort a rebase, we return to the original value of HEAD. Failing to write a reflog entry means we create a gap in the reflog (which can cause "git show HEAD@{5.minutes.ago}" to issue a warning). Plus having the extra entry makes the reflog easier to follow for a human. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 May 2011, 22:52:01 UTC |
5937b79 | Junio C Hamano | 05 May 2011, 01:50:45 UTC | config.mak.in: allow "configure --sysconfdir=/else/where" We do allow vanilla Makefile users to say make sysconfdir=/else/where and config.mak can also be tweaked manually for the same effect. Give the same configurablity to ./configure users as well. Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 May 2011, 20:58:31 UTC |
62b42d3 | Jeff King | 27 May 2011, 02:33:15 UTC | docs: fix some antique example output These diff-index and diff-tree sample outputs date back to the first month of git's existence. The output format has changed slightly since then, so let's have it match the current output. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 May 2011, 05:15:39 UTC |
715e716 | Jeff King | 27 May 2011, 02:32:41 UTC | docs: make sure literal "->" isn't converted to arrow Recent versions of asciidoc will treat "->" as a single-glyph arrow symbol, unless it is inside a literal code block. This is a problem if we are discussing literal output and want to show the ASCII characters. Our usage falls into three categories: 1. Inside a code block. These can be left as-is. 2. Discussing literal output or code, but inside a paragraph. This patch escapes these as "\->". 3. Using the arrow as a symbolic element, such as "use the Edit->Account Settings menu". In this case, the arrow symbol is preferable, so we leave it as-is. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 May 2011, 05:15:38 UTC |
fc17df0 | Jeff King | 27 May 2011, 02:31:51 UTC | docs: update status --porcelain format The --porcelain format was originally identical to the --short format, but designed to be stable as the short format changed. Since this was written, the short format picked up a few incompatible niceties, but this description was never changed. Let's mention the differences. While we're at it, let's add some sub-section headings to make the "output" section a little easier to navigate. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 May 2011, 05:15:36 UTC |
043b5cd | Jeff King | 27 May 2011, 02:31:11 UTC | docs: minor grammar fixes to git-status Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 27 May 2011, 05:15:35 UTC |
9553d2b | Jeff King | 26 May 2011, 22:28:17 UTC | format-patch: preserve subject newlines with -k In older versions of git, we used rfc822 header folding to indicate that the original subject line had multiple lines in it. But since a1f6baa (format-patch: wrap long header lines, 2011-02-23), we now use header folding whenever there is a long line. This means that "git am" cannot trust header folding as a sign from format-patch that newlines should be preserved. Instead, format-patch needs to signal more explicitly that the newlines are significant. This patch does so by rfc2047-encoding the newlines in the subject line. No changes are needed on the "git am" end; it already decodes the newlines properly. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 22:56:55 UTC |
6bf1394 | Jeff King | 26 May 2011, 22:27:49 UTC | clean up calling conventions for pretty.c functions We have a pretty_print_context representing the parameters for a pretty-print session, but we did not use it uniformly. As a result, functions kept growing more and more arguments. Let's clean this up in a few ways: 1. All pretty-print pp_* functions now take a context. This lets us reduce the number of arguments to these functions, since we were just passing around the context values separately. 2. The context argument now has a cmit_fmt field, which was passed around separately. That's one less argument per function. 3. The context argument always comes first, which makes calling a little more uniform. This drops lines from some callers, and adds lines in a few places (because we need an extra line to set the context's fmt field). Overall, we don't save many lines, but the lines that are there are a lot simpler and more readable. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 22:56:47 UTC |
8b8a537 | Jeff King | 26 May 2011, 22:27:24 UTC | pretty: add pp_commit_easy function for simple callers Many callers don't actually care about the pretty print context at all; let's just give them a simple way of pretty-printing a commit without having to create a context struct. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 22:47:20 UTC |
f5799e0 | Brandon Casey | 26 May 2011, 20:52:04 UTC | git-submodule.sh: separate parens by a space to avoid confusing some shells Some shells interpret '(( ))' according to the rules for arithmetic expansion. This may not follow POSIX, but is prevalent in commonly used shells. Bash does not have a problem with this particular instance of '((', likely because it is not followed by a '))', but the public domain ksh does, and so does ksh on IRIX 6.5. So, add a space between the parenthesis to avoid confusing these shells. Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 22:04:05 UTC |
7a45c31 | Brandon Casey | 26 May 2011, 20:46:56 UTC | Documentation/technical/api-diff.txt: correct name of diff_unmerge() Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 21:50:24 UTC |
5b38456 | Jeff King | 26 May 2011, 20:53:38 UTC | mailinfo: always clean up rfc822 header folding Without the "-k" option, mailinfo will convert a folded subject header like: Subject: this is a subject that doesn't fit on one line into a single line. With "-k", however, we assumed that these newlines were significant and represented something that the sending side would want us to preserve. For messages created by format-patch, this assumption was broken by a1f6baa (format-patch: wrap long header lines, 2011-02-23). For messages sent by arbitrary MUAs, this was probably never a good assumption to make, as they may have been folding subjects in accordance with rfc822's line length recommendations all along. This patch now joins folded lines with a single whitespace character. This treats header folding purely as a syntactic feature of the transport mechanism, not as something that format-patch is trying to tell us about the original subject. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 21:13:38 UTC |
00ebc97 | Jeff King | 26 May 2011, 20:41:18 UTC | t: test subject handling in format-patch / am pipeline Commit a1f6baa (format-patch: wrap long header lines, 2011-02-23) changed format-patch's behavior with respect to long header lines, but made no accompanying changes to the receiving side. It was thought that "git am" would handle these folded subjects fine, but there is a regression when using "am -k". Let's add a test documenting this. While we're at it, let's give more complete test coverage to document what should be happening in each case. We test three types of subjects: a short one, one long enough to require wrapping, and a multiline subject. For each, we test these three combinations: format-patch | am format-patch -k | am format-patch -k | am -k We don't bother testing "format-patch | am -k", which is nonsense (you will be adding in [PATCH] cruft to each subject). This reveals the regression above (long subjects have linebreaks introduced via "format-patch -k | am -k"), as well as an existing non-optimal behavior (multiline subjects are not preserved using "-k"). Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 21:11:59 UTC |
56d7c27 | Jeff King | 26 May 2011, 16:30:27 UTC | read_in_full: always report errors The read_in_full function repeatedly calls read() to fill a buffer. If the first read() returns an error, we notify the caller by returning the error. However, if we read some data and then get an error on a subsequent read, we simply return the amount of data that we did read, and the caller is unaware of the error. This makes the tradeoff that seeing the partial data is more important than the fact that an error occurred. In practice, this is generally not the case; we care more if an error occurred, and should throw away any partial data. I audited the current callers. In most cases, this will make no difference at all, as they do: if (read_in_full(fd, buf, size) != size) error("short read"); However, it will help in a few cases: 1. In sha1_file.c:index_stream, we would fail to notice errors in the incoming stream. 2. When reading symbolic refs in resolve_ref, we would fail to notice errors and potentially use a truncated ref name. 3. In various places, we will get much better error messages. For example, callers of safe_read would erroneously print "the remote end hung up unexpectedly" instead of showing the read error. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 20:54:18 UTC |
3eafdc9 | Jeff King | 26 May 2011, 15:11:00 UTC | remote: allow "-t" with fetch mirrors Commit 13fc2c1 (remote: disallow some nonsensical option combinations, 2011-03-30) made it impossible to use "remote add -t foo --mirror". The argument was that specifying specific branches is useless because: 1. Push mirrors do not want a refspec at all. 2. The point of fetch mirroring is to use a broad refspec like "refs/*", but using "-t" overrides that. Point (1) is valid; "-t" with push mirrors is useless. But point (2) ignored another side effect of using --mirror: it fetches the refs directly into the refs/ namespace as they are found upstream, instead of placing them in a separate-remote layout. So 13fc2c1 was overly constrictive, and disallowed reasonable specific-branch mirroring, like: git remote add -t heads/foo -t heads/bar --mirror=fetch which makes the local "foo" and "bar" branches direct mirrors of the remote, but does not fetch anything else. This patch restores the original behavior, but only for fetch mirrors. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 18:38:18 UTC |
b1905ae | Jeff King | 26 May 2011, 16:28:44 UTC | read_gitfile_gently: use ssize_t to hold read result Otherwise, a negative error return becomes a very large read value. We catch this in practice because we compare the expected and actual numbers of bytes (and you are not likely to be reading (size_t)-1 bytes), but this makes the correctness a little more obvious. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 18:25:13 UTC |
5dd5648 | Jim Meyering | 26 May 2011, 13:58:16 UTC | remove tests of always-false condition * fsck.c (fsck_error_function): Don't test obj->sha1 == 0. It can never be true, since that sha1 member is an array. * transport.c (set_upstreams): Likewise for ref->new_sha1. Signed-off-by: Jim Meyering <meyering@redhat.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 18:24:24 UTC |
a9930e3 | Jim Meyering | 26 May 2011, 13:55:50 UTC | plug a DIR buffer leak in rerere.c Signed-off-by: Jim Meyering <jim@meyering.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 18:20:48 UTC |
5743350 | Jim Meyering | 26 May 2011, 13:54:18 UTC | rerere.c: diagnose a corrupt MERGE_RR when hitting EOF between TAB and '\0' If we reach EOF after the SHA1-then-TAB, yet before the NUL that terminates each file name, we would fill the file name buffer with \255 bytes resulting from the repeatedly-failing fgetc (returns EOF/-1) and ultimately complain about "filename too long", because no NUL was encountered. Signed-off-by: Jim Meyering <jim@meyering.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 18:07:52 UTC |
665b051 | Junio C Hamano | 26 May 2011, 17:41:33 UTC | Update 1.7.6 draft release notes Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 17:41:33 UTC |
7eacc2b | Junio C Hamano | 26 May 2011, 17:32:25 UTC | Merge branch 'jn/userdiff-perl-updates' * jn/userdiff-perl-updates: userdiff/perl: tighten BEGIN/END block pattern to reject here-doc delimiters tests: make test_expect_code quieter on success userdiff/perl: catch sub with brace on second line userdiff/perl: match full line of POD headers userdiff/perl: anchor "sub" and "package" patterns on the left t4018 (funcname patterns): minor cleanups t4018 (funcname patterns): make configuration easier to track t4018 (funcname patterns): make .gitattributes state easier to track | 26 May 2011, 17:32:25 UTC |
8784e4d | Junio C Hamano | 26 May 2011, 17:32:19 UTC | Merge branch 'rg/no-gecos-in-pwent' * rg/no-gecos-in-pwent: ident: add NO_GECOS_IN_PWENT for systems without pw_gecos in struct passwd Conflicts: Makefile | 26 May 2011, 17:32:19 UTC |
ce5e953 | Junio C Hamano | 26 May 2011, 17:32:11 UTC | Merge branch 'jk/fetch-mark-complete-optimization' * jk/fetch-mark-complete-optimization: fetch: avoid repeated commits in mark_complete | 26 May 2011, 17:32:11 UTC |
a6f3f17 | Junio C Hamano | 26 May 2011, 17:31:57 UTC | Merge branch 'jn/gitweb-js' * jn/gitweb-js: gitweb: Make JavaScript ability to adjust timezones configurable gitweb.js: Add UI for selecting common timezone to display dates gitweb: JavaScript ability to adjust time based on timezone gitweb: Unify the way long timestamp is displayed gitweb: Refactor generating of long dates into format_timestamp_html gitweb.js: Provide getElementsByClassName method (if it not exists) gitweb.js: Introduce code to handle cookies from JavaScript gitweb.js: Extract and improve datetime handling gitweb.js: Provide default values for padding in padLeftStr and padLeft gitweb.js: Update and improve comments in JavaScript files gitweb: Split JavaScript for maintability, combining on build | 26 May 2011, 17:31:57 UTC |
229e72d | Junio C Hamano | 26 May 2011, 17:31:53 UTC | Merge branch 'jn/ctags-more' * jn/ctags-more: gitweb: Optional grouping of projects by category gitweb: Modularized git_get_project_description to be more generic gitweb: Split git_project_list_body in two functions | 26 May 2011, 17:31:53 UTC |
0a2a5d8 | Junio C Hamano | 26 May 2011, 17:31:47 UTC | Merge branch 'jc/require-work-tree-exists' * jc/require-work-tree-exists: require-work-tree wants more than what its name says | 26 May 2011, 17:31:47 UTC |
1dcfb2a | Junio C Hamano | 26 May 2011, 17:30:28 UTC | Sync with 1.7.5.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 17:30:28 UTC |
3c3e0b3 | Junio C Hamano | 26 May 2011, 16:45:29 UTC | Git 1.7.5.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 17:29:29 UTC |
5a6d82d | Junio C Hamano | 26 May 2011, 17:29:24 UTC | Merge branch 'maint-1.7.4' into maint * maint-1.7.4: | 26 May 2011, 17:29:24 UTC |
bac9c06 | Junio C Hamano | 26 May 2011, 17:28:10 UTC | Merge branch 'jk/git-connection-deadlock-fix' into maint-1.7.4 * jk/git-connection-deadlock-fix: test core.gitproxy configuration send-pack: avoid deadlock on git:// push with failed pack-objects connect: let callers know if connection is a socket connect: treat generic proxy processes like ssh processes Conflicts: connect.c | 26 May 2011, 17:28:10 UTC |
34df9fe | Junio C Hamano | 26 May 2011, 17:27:55 UTC | Merge branch 'js/maint-send-pack-stateless-rpc-deadlock-fix' into maint-1.7.4 * js/maint-send-pack-stateless-rpc-deadlock-fix: sideband_demux(): fix decl-after-stmt send-pack: unbreak push over stateless rpc send-pack: avoid deadlock when pack-object dies early | 26 May 2011, 17:27:55 UTC |
4201472 | Junio C Hamano | 26 May 2011, 17:27:29 UTC | Merge branch 'jk/maint-upload-pack-shallow' into maint-1.7.4 * jk/maint-upload-pack-shallow: upload-pack: start pack-objects before async rev-list | 26 May 2011, 17:27:29 UTC |
d9ac3e4 | Junio C Hamano | 26 May 2011, 16:43:00 UTC | Merge branch 'jm/maint-diff-words-with-sbe' into maint * jm/maint-diff-words-with-sbe: do not read beyond end of malloc'd buffer | 26 May 2011, 16:43:00 UTC |
0531899 | Junio C Hamano | 26 May 2011, 16:42:12 UTC | Merge branch 'kk/maint-prefix-in-config-mak' into maint * kk/maint-prefix-in-config-mak: Honor $(prefix) set in config.mak* when defining ETC_GIT* Revert "Honor $(prefix) set in config.mak* when defining ETC_GIT* and sysconfdir" Honor $(prefix) set in config.mak* when defining ETC_GIT* and sysconfdir | 26 May 2011, 16:42:12 UTC |
5f8937d | Junio C Hamano | 26 May 2011, 16:41:11 UTC | Merge branch 'mg/diff-uiconfig-doc' into maint * mg/diff-uiconfig-doc: config.txt,diff-options.txt: porcelain vs. plumbing for color.diff | 26 May 2011, 16:41:11 UTC |
b73f3d2 | Junio C Hamano | 26 May 2011, 16:40:50 UTC | Merge branch 'ft/gitweb-tar-with-gzip-n' into maint * ft/gitweb-tar-with-gzip-n: gitweb: supply '-n' to gzip for identical output | 26 May 2011, 16:40:50 UTC |
7eacaef | Junio C Hamano | 26 May 2011, 16:39:40 UTC | Merge branch 'ss/doc-svn' into maint * ss/doc-svn: remove noise and inaccuracies from git-svn docs | 26 May 2011, 16:39:40 UTC |
63c11eb | Junio C Hamano | 26 May 2011, 16:39:33 UTC | Merge branch 'jn/format-patch-doc' into maint * jn/format-patch-doc: Documentation/format-patch: suggest Toggle Word Wrap add-on for Thunderbird Documentation: publicize hints for sending patches with GMail Documentation: publicize KMail hints for sending patches inline Documentation: hints for sending patches inline with Thunderbird Documentation: explain how to check for patch corruption | 26 May 2011, 16:39:33 UTC |
ea8ec09 | Junio C Hamano | 26 May 2011, 16:38:44 UTC | Merge branch 'jc/maint-pathspec-stdin-and-cmdline' into maint * jc/maint-pathspec-stdin-and-cmdline: setup_revisions(): take pathspec from command line and --stdin correctly | 26 May 2011, 16:38:44 UTC |
0e66f87 | Junio C Hamano | 26 May 2011, 16:37:41 UTC | Merge branch 'jk/cherry-pick-root-with-resolve' into maint * jk/cherry-pick-root-with-resolve: t3503: test cherry picking and reverting root commits revert: allow reverting a root commit cherry-pick: handle root commits with external strategies | 26 May 2011, 16:37:41 UTC |
93446aa | Junio C Hamano | 26 May 2011, 16:37:04 UTC | Merge branch 'rg/copy-gecos-username' into maint * rg/copy-gecos-username: copy_gecos: fix not adding nlen to len when processing "&" | 26 May 2011, 16:37:04 UTC |
9e0ec12 | Junio C Hamano | 26 May 2011, 16:36:33 UTC | Merge branch 'fc/completion-zsh' into maint * fc/completion-zsh: git-completion: fix regression in zsh support | 26 May 2011, 16:36:33 UTC |
5590fe7 | Junio C Hamano | 26 May 2011, 16:33:25 UTC | Merge branch 'jk/git-connection-deadlock-fix' into maint * jk/git-connection-deadlock-fix: test core.gitproxy configuration send-pack: avoid deadlock on git:// push with failed pack-objects connect: let callers know if connection is a socket connect: treat generic proxy processes like ssh processes Conflicts: connect.c | 26 May 2011, 16:33:25 UTC |
f09937d | Junio C Hamano | 26 May 2011, 16:32:14 UTC | Merge branch 'js/maint-send-pack-stateless-rpc-deadlock-fix' into maint * js/maint-send-pack-stateless-rpc-deadlock-fix: sideband_demux(): fix decl-after-stmt send-pack: unbreak push over stateless rpc send-pack: avoid deadlock when pack-object dies early | 26 May 2011, 16:32:14 UTC |
a02cf90 | Junio C Hamano | 26 May 2011, 16:25:47 UTC | compat/fnmatch/fnmatch.c: give a fall-back definition for NULL Somebody tried to compile fnmatch.c compatibility file on Interix and got an error because no header included in the file on that platform defined NULL. It usually comes from stddef.h and indirectly from other headers like string.h, unistd.h, stdio.h, stdlib.h, etc., but with the way we compile this file from our Makefile, inclusion of the header files that are expected to define NULL in fnmatch.c do not happen because they are protected with "#ifdef STDC_HEADERS", etc. which we do not pass. As the least-impact workaround, give a fall-back definition when none of the headers define NULL. Noticed-by: Markus Duft <mduft@gentoo.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 26 May 2011, 16:25:47 UTC |
46bf76a | Junio C Hamano | 26 May 2011, 15:52:11 UTC | Merge branch 'svn-fe-maint' of git://repo.or.cz/git/jrn into maint * 'svn-fe-maint' of git://repo.or.cz/git/jrn: Revert "t0081 (line-buffer): add buffering tests" | 26 May 2011, 15:52:11 UTC |
5cfe425 | Junio C Hamano | 25 May 2011, 23:23:26 UTC | Merge branch 'jc/bigfile' * jc/bigfile: Bigfile: teach "git add" to send a large file straight to a pack index_fd(): split into two helper functions index_fd(): turn write_object and format_check arguments into one flag | 25 May 2011, 23:23:26 UTC |
84da3e2 | Junio C Hamano | 25 May 2011, 23:23:22 UTC | Merge branch 'js/log-abbrev-commit-config' * js/log-abbrev-commit-config: Add log.abbrevCommit config variable "git log -h": typofix misspelled 'suppress' | 25 May 2011, 23:23:22 UTC |
6741c2e | Junio C Hamano | 25 May 2011, 22:25:44 UTC | Merge branch 'maint' * maint: init/clone: remove short option -L and document --separate-git-dir | 25 May 2011, 22:25:44 UTC |
ea5070c | Jens Lehmann | 25 May 2011, 20:10:41 UTC | Teach read-tree the -n|--dry-run option The option can be used to check if read-tree with the same set of other options like "-m" and "-u" would succeed without actually changing either the index or the working tree. The relevant tests in the t10?? range were extended to do a read-tree -n before the real read-tree to make sure neither the index nor any local files were changed with -n and the same exit code as without -n is returned. The helper functions added for that purpose reside in the new t/lib-read-tree.sh file. The only exception is #13 in t1004 ("unlinking an un-unlink-able symlink"). As this is an issue of wrong directory permissions it is not detected with -n. Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 May 2011, 22:04:25 UTC |
2c9078d | Jens Lehmann | 25 May 2011, 20:07:51 UTC | unpack-trees: add the dry_run flag to unpack_trees_options Until now there was no way to test if unpack_trees() with update=1 would succeed without really updating the work tree. The reason for that is that setting update to 0 does skip the tests for new files and deactivates the sparse handling, thereby making that unsuitable as a dry run. Add the new dry_run flag to struct unpack_trees_options unpack_trees(). Setting that together with the update flag will check if the work tree update would be successful without doing it for real. The only class of problems that is not detected at the moment are file system conditions like ENOSPC or missing permissions. Also the index entries of updated files are not as they would be after a real checkout because lstat() isn't run as the files aren't updated for real. Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 May 2011, 21:32:02 UTC |
a6253d1 | Junio C Hamano | 25 May 2011, 19:23:44 UTC | userformat_find_requirements(): find requirement for the correct format This function was introduced in 5b16360 (pretty: Initialize notes if %N is used, 2010-04-13) to check what kind of information the "log --format=..." user format string wants. The function can be passed a NULL instead of a format string to ask it to check user_format variable kept by an earlier call to save_user_format(). But it unconditionally checked user_format and not the string it was given. The only caller introduced by the change passes NULL, which kept the bug unnoticed, until a new GCC noticed that there is an assignment to fmt that is never used. Noticed-by: Chris Wilson's compiler Signed-off-by: Junio C Hamano <gitster@pobox.com> Acked-by: Jeff King <peff@peff.net> | 25 May 2011, 20:08:10 UTC |
f612a71 | Jakub Narebski | 25 May 2011, 16:35:26 UTC | gitweb: Refactor reading and parsing config file into read_config_file Beside being obvious reduction of duplicated code, this is enables us to easily call site-wide config file in per-installation config file. The actual update to documentation is left for next commit, because of possible exclusive alternative (possible other next commit) of always reading system-wide config file and relying on per-instalation config file overriding system-wide defaults. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Acked-by: John 'Warthog9' Hawley <warthog9@kernel.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 May 2011, 19:36:43 UTC |
600a6a6 | Michael J Gruber | 25 May 2011, 09:55:43 UTC | sh-18n: quell "unused variable" warning show_variables is set but never used. Comment it out rather than remove it so that the relation with upstream remains clear. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 May 2011, 16:35:59 UTC |
09ffc70 | Nguyen Thai Ngoc Duy | 24 May 2011, 16:40:32 UTC | init/clone: remove short option -L and document --separate-git-dir Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 25 May 2011, 16:30:26 UTC |