Merge branch 'maint-1.7.7' into maint
* maint-1.7.7: Git 1.7.7.6 diff-index: enable recursive pathspec matching in unpack_trees Conflicts: GIT-VERSION-GEN
This commit is contained in:
commit
d899cf559b
@ -8,6 +8,10 @@ Fixes since v1.7.7.5
|
|||||||
directory when two paths in question are in adjacent directories and
|
directory when two paths in question are in adjacent directories and
|
||||||
the name of the one directory is a prefix of the other.
|
the name of the one directory is a prefix of the other.
|
||||||
|
|
||||||
|
* A wildcard that matches deeper hierarchy given to the "diff-index" command,
|
||||||
|
e.g. "git diff-index HEAD -- '*.txt'", incorrectly reported additions of
|
||||||
|
matching files even when there is no change.
|
||||||
|
|
||||||
* When producing a "thin pack" (primarily used in bundles and smart
|
* When producing a "thin pack" (primarily used in bundles and smart
|
||||||
HTTP transfers) out of a fully packed repository, we unnecessarily
|
HTTP transfers) out of a fully packed repository, we unnecessarily
|
||||||
avoided sending recent objects as a delta against objects we know
|
avoided sending recent objects as a delta against objects we know
|
||||||
|
@ -469,6 +469,8 @@ static int diff_cache(struct rev_info *revs,
|
|||||||
opts.src_index = &the_index;
|
opts.src_index = &the_index;
|
||||||
opts.dst_index = NULL;
|
opts.dst_index = NULL;
|
||||||
opts.pathspec = &revs->diffopt.pathspec;
|
opts.pathspec = &revs->diffopt.pathspec;
|
||||||
|
opts.pathspec->recursive = 1;
|
||||||
|
opts.pathspec->max_depth = -1;
|
||||||
|
|
||||||
init_tree_desc(&t, tree->buffer, tree->size);
|
init_tree_desc(&t, tree->buffer, tree->size);
|
||||||
return unpack_trees(1, &t, &opts);
|
return unpack_trees(1, &t, &opts);
|
||||||
|
@ -47,6 +47,14 @@ test_expect_success \
|
|||||||
'git diff-index --cached $tree -- path1/ >current &&
|
'git diff-index --cached $tree -- path1/ >current &&
|
||||||
compare_diff_raw current expected'
|
compare_diff_raw current expected'
|
||||||
|
|
||||||
|
cat >expected <<\EOF
|
||||||
|
:100644 100644 766498d93a4b06057a8e49d23f4068f1170ff38f 0a41e115ab61be0328a19b29f18cdcb49338d516 M path1/file1
|
||||||
|
EOF
|
||||||
|
test_expect_success \
|
||||||
|
'"*file1" should show path1/file1' \
|
||||||
|
'git diff-index --cached $tree -- "*file1" >current &&
|
||||||
|
compare_diff_raw current expected'
|
||||||
|
|
||||||
cat >expected <<\EOF
|
cat >expected <<\EOF
|
||||||
:100644 100644 766498d93a4b06057a8e49d23f4068f1170ff38f 0a41e115ab61be0328a19b29f18cdcb49338d516 M file0
|
:100644 100644 766498d93a4b06057a8e49d23f4068f1170ff38f 0a41e115ab61be0328a19b29f18cdcb49338d516 M file0
|
||||||
EOF
|
EOF
|
||||||
|
Loading…
Reference in New Issue
Block a user