Merge branch 'ab/get-short-oid'
When a short hexadecimal string is used to name an object but there are multiple objects that share the string as the prefix of their names, the code lists these ambiguous candidates in a help message. These object names are now sorted according to their types for easier eyeballing. * ab/get-short-oid: get_short_oid: sort ambiguous objects by type, then SHA-1 sha1-name.c: move around the collect_ambiguous() function git-p4: change "commitish" typo to "committish" sha1-array.h: align function arguments sha1-name.c: remove stray newline
This commit is contained in:
@ -361,4 +361,25 @@ test_expect_success 'core.disambiguate does not override context' '
|
||||
git -c core.disambiguate=committish rev-parse $sha1^{tree}
|
||||
'
|
||||
|
||||
test_expect_success C_LOCALE_OUTPUT 'ambiguous commits are printed by type first, then hash order' '
|
||||
test_must_fail git rev-parse 0000 2>stderr &&
|
||||
grep ^hint: stderr >hints &&
|
||||
grep 0000 hints >objects &&
|
||||
cat >expected <<-\EOF &&
|
||||
tag
|
||||
commit
|
||||
tree
|
||||
blob
|
||||
EOF
|
||||
awk "{print \$3}" <objects >objects.types &&
|
||||
uniq <objects.types >objects.types.uniq &&
|
||||
test_cmp expected objects.types.uniq &&
|
||||
for type in tag commit tree blob
|
||||
do
|
||||
grep $type objects >$type.objects &&
|
||||
sort $type.objects >$type.objects.sorted &&
|
||||
test_cmp $type.objects.sorted $type.objects
|
||||
done
|
||||
'
|
||||
|
||||
test_done
|
||||
|
Reference in New Issue
Block a user