Merge branch 'master' into next

* master:
  Update draft release notes to 1.7.6
  Start 1.7.5.4 draft release notes
  config.c: Remove unused git_config_global() function
  Documentation: do not misinterpret refspecs as bold text
  format-patch: make zero-length subject prefixes prettier
This commit is contained in:
Junio C Hamano
2011-05-31 12:28:25 -07:00
6 changed files with 54 additions and 19 deletions

View File

@@ -0,0 +1,18 @@
Git v1.7.5.4 Release Notes
==========================
Fixes since v1.7.5.3
--------------------
* The single-key mode of "git add -p" was easily fooled into thinking
that it was told to add everthing ('a') when up-arrow was pressed by
mistake.
* "git diff -C -C" used to disable the rename detection entirely when
there are too many copy candidate paths in the tree; now it falls
back to "-C" when doing so would keep the copy candidate paths
under the rename detection limit.
* "git rerere" did not diagnose a corrupt MERGE_RR file in some cases.
And other minor fixes and documentation updates.

View File

@@ -53,11 +53,6 @@ Updates since v1.7.5
* "git commit" learned a "--patch" option to directly jump to the
per-hunk selection UI of the interactive mode.
* "git diff -C -C" used to disable the rename detection entirely when
there are too many copy candidate paths in the tree; now it falls
back to "-C" when doing so would keep the copy candidate paths
under the rename detection limit.
* "git diff" and its family of commands learned --dirstat=0 to show
directories that contribute less than 0.1% of changes.
@@ -72,6 +67,8 @@ Updates since v1.7.5
characters in it, e.g. "Junio C. Hamano" <jch@example.com>. Earlier
it was up to the user to do this when using its output.
* "git format-patch" can take an empty --subject-prefix now.
* "git log" and friends learned a new "--notes" option to replace the
"--show-notes" option. Unlike "--show-notes", "--notes=<ref>" does
not imply showing the default notes.
@@ -93,9 +90,20 @@ Updates since v1.7.5
* p4-import (from contrib) learned a new option --preserve-user.
* "git read-tree -m" learned "--dry-run" option that reports if a merge
would fail without touching the index nor the working tree.
* "git rebase" that does not specify on top of which branch to rebase
the current branch now uses @{upstream} of the current branch.
* "git rebase" finished either normally or with --abort did not
update the reflog for HEAD to record the event to come back to
where it started from.
* "git remote add -t only-this-branch --mirror=fetch" is now allowed. Earlier
a fetch-mode mirror meant mirror everything, but now it only means refs are
not renamed.
* "git rev-list --count" used with "--cherry-mark" counts the cherry-picked
commits separately, producing more a useful output.
@@ -116,11 +124,6 @@ Fixes since v1.7.5
Unless otherwise noted, all the fixes in 1.7.5.X maintenance track are
included in this release.
* The single-key mode of "git add -p" was easily fooled into thinking
that it was told to add everthing ('a') when up-arrow was pressed by
mistake.
(merge tr/add-i-no-escape later)
* "git config" used to choke with an insanely long line.
(merge ef/maint-strbuf-init later)

View File

@@ -181,11 +181,11 @@ CAPABILITIES
When using the import command, expect the source ref to have
been written to the destination ref. The earliest applicable
refspec takes precedence. For example
"refs/heads/*:refs/svn/origin/branches/*" means that, after an
"import refs/heads/name", the script has written to
"refs/heads/{asterisk}:refs/svn/origin/branches/{asterisk}" means
that, after an "import refs/heads/name", the script has written to
refs/svn/origin/branches/name. If this capability is used at
all, it must cover all refs reported by the list command; if
it is not used, it is effectively "*:*"
it is not used, it is effectively "{asterisk}:{asterisk}"
REF LIST ATTRIBUTES
-------------------

View File

@@ -825,11 +825,6 @@ int git_config_system(void)
return !git_env_bool("GIT_CONFIG_NOSYSTEM", 0);
}
int git_config_global(void)
{
return !git_env_bool("GIT_CONFIG_NOGLOBAL", 0);
}
int git_config_early(config_fn_t fn, void *data, const char *repo_config)
{
int ret = 0, found = 0;

View File

@@ -294,8 +294,9 @@ void log_write_email_headers(struct rev_info *opt, struct commit *commit,
if (opt->total > 0) {
static char buffer[64];
snprintf(buffer, sizeof(buffer),
"Subject: [%s %0*d/%d] ",
"Subject: [%s%s%0*d/%d] ",
opt->subject_prefix,
*opt->subject_prefix ? " " : "",
digits_in_number(opt->total),
opt->nr, opt->total);
subject = buffer;

View File

@@ -851,4 +851,22 @@ test_expect_success 'subject lines do not have 822 atom-quoting' '
test_cmp expect actual
'
cat >expect <<'EOF'
Subject: [PREFIX 1/1] header with . in it
EOF
test_expect_success 'subject prefixes have space prepended' '
git format-patch -n -1 --stdout --subject-prefix=PREFIX >patch &&
grep ^Subject: patch >actual &&
test_cmp expect actual
'
cat >expect <<'EOF'
Subject: [1/1] header with . in it
EOF
test_expect_success 'empty subject prefix does not have extra space' '
git format-patch -n -1 --stdout --subject-prefix= >patch &&
grep ^Subject: patch >actual &&
test_cmp expect actual
'
test_done