зеркало из https://github.com/microsoft/git.git
branch: show targets of deleted symrefs, not sha1s
git branch reports the abbreviated hash of the head commit of a deleted branch to make it easier for a user to undo the operation. For symref branches this doesn't help. Print the symref target instead for them. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
0fe700e311
Коммит
13baa9fe86
|
@ -251,15 +251,18 @@ static int delete_branches(int argc, const char **argv, int force, int kinds,
|
|||
: _("Error deleting branch '%s'"),
|
||||
bname.buf);
|
||||
ret = 1;
|
||||
} else {
|
||||
if (!quiet)
|
||||
printf(remote_branch
|
||||
? _("Deleted remote branch %s (was %s).\n")
|
||||
: _("Deleted branch %s (was %s).\n"),
|
||||
bname.buf,
|
||||
find_unique_abbrev(sha1, DEFAULT_ABBREV));
|
||||
delete_branch_config(bname.buf);
|
||||
continue;
|
||||
}
|
||||
if (!quiet) {
|
||||
printf(remote_branch
|
||||
? _("Deleted remote branch %s (was %s).\n")
|
||||
: _("Deleted branch %s (was %s).\n"),
|
||||
bname.buf,
|
||||
(flags & REF_ISSYMREF)
|
||||
? target
|
||||
: find_unique_abbrev(sha1, DEFAULT_ABBREV));
|
||||
}
|
||||
delete_branch_config(bname.buf);
|
||||
}
|
||||
|
||||
free(name);
|
||||
|
|
|
@ -265,8 +265,7 @@ test_expect_success 'config information was renamed, too' \
|
|||
test_expect_success 'deleting a symref' '
|
||||
git branch target &&
|
||||
git symbolic-ref refs/heads/symref refs/heads/target &&
|
||||
sha1=$(git rev-parse symref | cut -c 1-7) &&
|
||||
echo "Deleted branch symref (was $sha1)." >expect &&
|
||||
echo "Deleted branch symref (was refs/heads/target)." >expect &&
|
||||
git branch -d symref >actual &&
|
||||
test_path_is_file .git/refs/heads/target &&
|
||||
test_path_is_missing .git/refs/heads/symref &&
|
||||
|
@ -276,7 +275,7 @@ test_expect_success 'deleting a symref' '
|
|||
test_expect_success 'deleting a dangling symref' '
|
||||
git symbolic-ref refs/heads/dangling-symref nowhere &&
|
||||
test_path_is_file .git/refs/heads/dangling-symref &&
|
||||
echo "Deleted branch dangling-symref (was 0000000)." >expect &&
|
||||
echo "Deleted branch dangling-symref (was nowhere)." >expect &&
|
||||
git branch -d dangling-symref >actual &&
|
||||
test_path_is_missing .git/refs/heads/dangling-symref &&
|
||||
test_i18ncmp expect actual
|
||||
|
|
Загрузка…
Ссылка в новой задаче