mirror of
https://github.com/git/git
synced 2024-08-27 19:49:21 +00:00
Merge branch 'maint'
* maint: Update draft release notes to 1.7.1.1 notes: Initialise variable to appease gcc notes: check number of parameters to "git notes copy"
This commit is contained in:
commit
1ba5c532e1
|
@ -17,6 +17,13 @@ Fixes since v1.7.1
|
|||
|
||||
* We didn't recognize timezone "Z" as a synonym for "UTC" (75b37e70).
|
||||
|
||||
* In 1.7.0, read-tree and user commands that use the mechanism such as
|
||||
checkout and merge were fixed to handle switching between branches one
|
||||
of which has a file while the other has a directory at the same path
|
||||
correctly even when there are some "confusing" pathnames in them. But
|
||||
the algorithm used for this fix was suboptimal and had a terrible
|
||||
performance degradation especially in larger trees.
|
||||
|
||||
* "git am -3" did not show diagnosis when the patch in the message was corrupt.
|
||||
|
||||
* After "git apply --whitespace=fix" removed trailing blank lines in an
|
||||
|
@ -57,10 +64,15 @@ Fixes since v1.7.1
|
|||
* "git merge --log" used to replace the custom message given by "-m" with
|
||||
the shortlog, instead of appending to it.
|
||||
|
||||
* "git notes copy" without any other argument segfaulted.
|
||||
|
||||
* "git pull" accepted "--dry-run", gave it to underlying "git fetch" but
|
||||
ignored the option itself, resulting in a bogus attempt to merge
|
||||
unrelated commit.
|
||||
|
||||
* "git rebase" did not faithfully reproduce a malformed author ident, that
|
||||
is often seen in a repository converted from foreign SCMs.
|
||||
|
||||
* "git reset --hard" started from a wrong directory and a working tree in
|
||||
a nonstandard location is in use got confused.
|
||||
|
||||
|
@ -68,6 +80,9 @@ Fixes since v1.7.1
|
|||
EHLO/HELO exchange, causing rejected connection from picky servers.
|
||||
It learned --smtp-domain option to solve this issue.
|
||||
|
||||
* "git send-email" did not declare a content-transfer-encoding and
|
||||
content-type even when its payload needs to be sent in 8-bit.
|
||||
|
||||
* "git show -C -C" and other corner cases lost diff metainfo output
|
||||
in 1.7.0.
|
||||
|
||||
|
@ -83,6 +98,6 @@ And other minor fixes and documentation updates.
|
|||
|
||||
--
|
||||
exec >/var/tmp/1
|
||||
O=v1.7.1-195-gb2ebbd8
|
||||
O=v1.7.1-211-g54fcb21
|
||||
echo O=$(git describe HEAD)
|
||||
git shortlog --no-merges HEAD ^$O
|
||||
|
|
|
@ -614,6 +614,10 @@ static int copy(int argc, const char **argv, const char *prefix)
|
|||
}
|
||||
}
|
||||
|
||||
if (argc < 2) {
|
||||
error("too few parameters");
|
||||
usage_with_options(git_notes_copy_usage, options);
|
||||
}
|
||||
if (2 < argc) {
|
||||
error("too many parameters");
|
||||
usage_with_options(git_notes_copy_usage, options);
|
||||
|
|
2
notes.c
2
notes.c
|
@ -716,7 +716,7 @@ static int write_each_non_note_until(const char *note_path,
|
|||
struct write_each_note_data *d)
|
||||
{
|
||||
struct non_note *n = d->next_non_note;
|
||||
int cmp, ret;
|
||||
int cmp = 0, ret;
|
||||
while (n && (!note_path || (cmp = strcmp(n->path, note_path)) <= 0)) {
|
||||
if (note_path && cmp == 0)
|
||||
; /* do nothing, prefer note to non-note */
|
||||
|
|
|
@ -1044,4 +1044,10 @@ test_expect_success 'GIT_NOTES_REWRITE_REF overrides config' '
|
|||
git log -1 > output &&
|
||||
test_cmp expect output
|
||||
'
|
||||
|
||||
test_expect_success 'git notes copy diagnoses too many or too few parameters' '
|
||||
test_must_fail git notes copy &&
|
||||
test_must_fail git notes copy one two three
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
Loading…
Reference in a new issue