即使在删除工作树和 运行 工作树修剪后也无法签出分支

Not able to checkout branch even after removing worktree and running worktree prune

我使用以下命令为分支创建工作树:

Git add worktree <path> <branch-name>

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

的分支

现在我想到了 deleting/removing 工作树。 运行 以下命令:

rm -rf <path>
git worktree prune

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

git checkout <branch-name>

我收到这个错误:

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

有人可以帮助我了解发生的事情吗?

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

然后从 github 再次克隆它,运行 git clone <github-project>

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

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

我认为正确的命令是:

git worktree prune

Git 有时喜欢喜怒无常,但对我有用的是首先在 git bash

上使用此命令检查哪些工作树仍然处于活动状态
git worktree list

然后你会看到你所有的工作树和你的问题child,在你看到它之后,看看它保存的分支名称,因为它们包含你目录的完整地址。复制整个分支名称并按原样粘贴,或者如果那个人

则将其键入
git worktree remove <FullBranchName>  (e.g C:/temp/foldername)