зеркало из https://github.com/microsoft/git.git
branch: add worktree info on verbose output
To display worktree path for refs checked out in a linked worktree Signed-off-by: Nickolai Belakovski <nbelakovski@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
ab3138146f
Коммит
6e9381469e
|
@ -172,8 +172,10 @@ This option is only applicable in non-verbose mode.
|
||||||
When in list mode,
|
When in list mode,
|
||||||
show sha1 and commit subject line for each head, along with
|
show sha1 and commit subject line for each head, along with
|
||||||
relationship to upstream branch (if any). If given twice, print
|
relationship to upstream branch (if any). If given twice, print
|
||||||
the name of the upstream branch, as well (see also `git remote
|
the path of the linked worktree (if any) and the name of the upstream
|
||||||
show <remote>`).
|
branch, as well (see also `git remote show <remote>`). Note that the
|
||||||
|
current worktree's HEAD will not have its path printed (it will always
|
||||||
|
be your current directory).
|
||||||
|
|
||||||
-q::
|
-q::
|
||||||
--quiet::
|
--quiet::
|
||||||
|
|
|
@ -367,9 +367,13 @@ static char *build_format(struct ref_filter *filter, int maxwidth, const char *r
|
||||||
strbuf_addf(&local, " %s ", obname.buf);
|
strbuf_addf(&local, " %s ", obname.buf);
|
||||||
|
|
||||||
if (filter->verbose > 1)
|
if (filter->verbose > 1)
|
||||||
|
{
|
||||||
|
strbuf_addf(&local, "%%(if:notequals=*)%%(HEAD)%%(then)%%(if)%%(worktreepath)%%(then)(%s%%(worktreepath)%s) %%(end)%%(end)",
|
||||||
|
branch_get_color(BRANCH_COLOR_WORKTREE), branch_get_color(BRANCH_COLOR_RESET));
|
||||||
strbuf_addf(&local, "%%(if)%%(upstream)%%(then)[%s%%(upstream:short)%s%%(if)%%(upstream:track)"
|
strbuf_addf(&local, "%%(if)%%(upstream)%%(then)[%s%%(upstream:short)%s%%(if)%%(upstream:track)"
|
||||||
"%%(then): %%(upstream:track,nobracket)%%(end)] %%(end)%%(contents:subject)",
|
"%%(then): %%(upstream:track,nobracket)%%(end)] %%(end)%%(contents:subject)",
|
||||||
branch_get_color(BRANCH_COLOR_UPSTREAM), branch_get_color(BRANCH_COLOR_RESET));
|
branch_get_color(BRANCH_COLOR_UPSTREAM), branch_get_color(BRANCH_COLOR_RESET));
|
||||||
|
}
|
||||||
else
|
else
|
||||||
strbuf_addf(&local, "%%(if)%%(upstream:track)%%(then)%%(upstream:track) %%(end)%%(contents:subject)");
|
strbuf_addf(&local, "%%(if)%%(upstream:track)%%(then)%%(upstream:track) %%(end)%%(contents:subject)");
|
||||||
|
|
||||||
|
|
|
@ -328,4 +328,23 @@ test_expect_success '--color overrides auto-color' '
|
||||||
test_cmp expect.color actual
|
test_cmp expect.color actual
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'verbose output lists worktree path' '
|
||||||
|
one=$(git rev-parse --short HEAD) &&
|
||||||
|
two=$(git rev-parse --short master) &&
|
||||||
|
cat >expect <<-EOF &&
|
||||||
|
* (HEAD detached from fromtag) $one one
|
||||||
|
ambiguous $one one
|
||||||
|
branch-one $two two
|
||||||
|
+ branch-two $one ($(pwd)/worktree_dir) one
|
||||||
|
master $two two
|
||||||
|
ref-to-branch $two two
|
||||||
|
ref-to-remote $two two
|
||||||
|
EOF
|
||||||
|
git worktree add worktree_dir branch-two &&
|
||||||
|
git branch -vv >actual &&
|
||||||
|
rm -r worktree_dir &&
|
||||||
|
git worktree prune &&
|
||||||
|
test_i18ncmp expect actual
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
|
Загрузка…
Ссылка в новой задаче