当我git worktree list
时,显示如下。
/path/to/workspace c943d35 [master]
/path/to/workspace ef4df56 (detached HEAD)
这是我的工作目录(不是worktree目录)。我不知道它是怎么发生的,以及如何清理它。我试过git worktree prune
,但它没有改变任何东西。任何帮助将不胜感激。非常感谢。
答案 0 :(得分:3)
每个链接的工作树在存储库的
$GIT_DIR/worktrees
目录中都有一个私有子目录。
检查main repo/.git/worktrees
的内容,看看是否有可以手动删除的子文件夹。
Git 2.20(Q8 2018)修复了一个错误,如果路径丢失,可以在多个工作树条目下注册相同的路径(例如,手动删除)。
此外,为方便起见,请扩展--force
适用的案例数。
commit 684e742见Jeff King (peff
)(2018年8月30日)
请参阅commit 3a54043,commit f414310,commit 68a6b3a,commit e19831c,commit cb56f55,commit 45059e6,commit 602aaed,commit e5353be,{ {3}}(2018年8月28日)commit 4c5fa9e
(由Eric Sunshine (sunshineco
)合并于Junio C Hamano -- gitster
--,2018年9月17日)
之后为空,请删除
worktree
:如果在.git/worktrees
'remove
为了清洁,“
git worktree prune
”会在修剪完成后删除.git/worktrees
目录。为了保持一致性,如果“
git worktree remove <path>
”在删除后为空,则同样删除.git/worktrees
。