如何在git工作目录被删除时删除它的工作树分支?
我已经删除了它的工作目录,因为这个git工作树不再有用了,于是我在主存储库的目录下删除了git branch-D pubsub-sketch树。引发了一个错误:如何在git工作目录被删除时删除它的工作树分支?,git,Git,我已经删除了它的工作目录,因为这个git工作树不再有用了,于是我在主存储库的目录下删除了git branch-D pubsub-sketch树。引发了一个错误: error: Cannot delete branch 'pubsub-sketch-tree' checked out at '/Users/zhouhancheng/编程/github_own/sketch_worktree/pubsub-sketch_tree' 但是“/用户/周韩城”/编程/github_own/sketc
error: Cannot delete branch 'pubsub-sketch-tree' checked out at '/Users/zhouhancheng/编程/github_own/sketch_worktree/pubsub-sketch_tree'
但是“/用户/周韩城”/编程/github_own/sketch_worktree/pubsub-sketch_tree'已被删除 您使用的是
git worktree
,因此答案如下:
当你完成一个链接的工作树,你可以简单地删除它。存储库中工作树的管理文件(请参阅下面的“详细信息”)最终将被自动删除(请参阅中的gc.worktreePruneExpire
),或者您可以在主工作树或任何链接的工作树中运行git worktree prune
,以清理任何过时的管理文件
(我的重点)。如果Git认为该分支已在辅助工作树中签出,它将不允许您删除该分支。如果辅助工作树已经被删除,但是Git还没有意识到这一点,那么只需运行Git worktree prune
告诉Git去检查
我已经删除了它的工作目录
由于“Git-worktree
”学习了“move
”和“remove
”子命令,使用Git 2.17+(2018年第2季度)会更轻松
参见。参见,、、(2018年2月12日)和(2018年1月24日)的作者。
(于2018年3月14日合并)
工作树删除
:新建命令
此命令允许删除工作树。就像“移动”一样,你不能移动
删除主工作树,或其中包含子模块的工作树
要删除$GIT\u WORK\u TREE
,将删除未跟踪的文件或任何暂存条目
被认为是珍贵的,因此在默认情况下防止移除。忽略
档案并不珍贵
工作树删除:当
$GIT\u WORK\u TREE
已经消失时允许它
“git worktree remove
”基本上由两部分组成
- 删除
$GIT\u工作树
- 删除
(即$GIT\u DIR
)$SUPER\u GIT\u DIR/worktrees/something
$GIT\u WORK\u TREE
已经消失,我们应该能够
通过删除$GIT\u DIR
来完成作业
使用Git 2.17(2018年第二季度),Git worktree remove
将起作用。看见