On Tue, Jan 19, 2021 at 4:28 PM Rafael Silva <rafaeloliveira.cs@xxxxxxxxx> wrote: > [...] > Let's teach "git worktree list" a --verbose mode that outputs the reason > why the worktrees are being annotated. The reason is a text that can take > virtually any size and appending the text on the default columned format > will make it difficult to extend the command with other annotations and > not fit nicely on the screen. In order to address this shortcoming the > annotation is then moved to the next line indented followed by the reason > If the reason is not available the annotation stays on the same line as > the worktree itself. > [...] > Signed-off-by: Rafael Silva <rafaeloliveira.cs@xxxxxxxxx> > --- > diff --git a/t/t2402-worktree-list.sh b/t/t2402-worktree-list.sh > @@ -134,6 +134,36 @@ test_expect_success '"list" all worktrees with prunable consistent with "prune"' > +test_expect_success '"list" all worktrees --verbose with locked' ' > + test_when_finished "rm -rf locked1 locked2 out actual expect && git worktree prune" && > + git worktree add locked1 --detach && > + git worktree add locked2 --detach && > + git worktree lock locked1 && > + git worktree lock locked2 --reason "with reason" && > + test_when_finished "git worktree unlock locked1 && git worktree unlock locked2" && Same minor problem here as mentioned in my review of [5/7]: If locking of the second worktree fails then test_when_finished() won't get invoked, so the first worktree won't get unlocked, thus won't be pruned. To fix: git worktree lock locked1 && test_when_finished "git worktree unlock locked1" && git worktree lock locked2 --reason "with reason" && test_when_finished "git worktree unlock locked2" && > + echo "$(git -C locked2 rev-parse --show-toplevel) $(git rev-parse --short HEAD) (detached HEAD)" >expect && > + printf "\tlocked: with reason\n" >>expect && > + git worktree list --verbose >out && > + grep "/locked1 *[0-9a-f].* locked$" out && > + sed -n "s/ */ /g;/\/locked2 *[0-9a-f].*$/,/locked: .*$/p" <out >actual && > + test_cmp actual expect > +'