即使在删除worktree和运行worktree prune之后也无法签出分支

时间:2015-10-23 06:35:08

标签: git github

我使用以下命令为branch创建了一个工作树:

Git add worktree <path> <branch-name>

这为我创建了一个新的工作树,并在路径

检查了分支

现在我想删除/删除工作树。执行以下命令:

rm -rf <path>
git worktree prune

理想情况下,这应该删除工作树并删除该路径的引用。所以现在我应该能够结账了。但是,当我运行以下命令结帐到该分支时:

git checkout <branch-name>

我收到此错误:

fatal: '<branch-name>' is already checked out at ''

有人可以帮我解决发生的事情。

4 个答案:

答案 0 :(得分:46)

我通过从存储库目录中删除.git/worktrees/<branch-name>来解决这个问题。

答案 1 :(得分:9)

我认为正确的命令是:git worktree prune

答案 2 :(得分:0)

Git有时有时候喜欢情绪低落,但是对我有用的是,首先使用git bash上的该命令检查哪些工作树仍然处于活动状态

git worktree list

然后,您还将看到所有工作树和问题子树,看到它们后,请查看它保存的分支名称,因为它们包含目录的完整地址。复制整个分支的名称并粘贴原样,或者输入该人的名字

git worktree remove <FullBranchName>  (e.g C:/temp/foldername)

答案 3 :(得分:-5)

如果所有相关的分支和代码都在github ,则可以快速修复 。删除完整的git项目目录。

然后从github再次克隆它,运行(20,'7,8,9|1|X',1,1,1,1,1), (81,'3',1,1,1,1,10), (83,'3',1,1,1,1,15),

提示 Getting just the tip of a remote git branch加快速度