42

git ワークツリーを使い始めました。動作しているように見えますが、複製されたワークツリーのブランチをチェックアウトしようとすると、次のエラーが発生します。

fatal: '<branch>' is already checked out at '</other/location>'

.git/worktreesディレクトリを削除せずにこれを回避するにはどうすればよいですか?

4

7 に答える 7

42

Git では、同じブランチを 2 回チェックアウトすることはできません。チェックアウトしてから、2 つのワークツリーのいずれかに移動して新しいコミットを作成すると、もう一方に戻ったときに悲惨な状況になるからです。ワークツリー。

実際に他の作業ツリーを削除した場合は、単に実行git worktree pruneして Git にこれを認識させます。他の作業ツリーを実際に削除していない場合は、2 回チェックアウトしないでください。面白くありません。

于 2017-01-09T11:00:23.757 に答える
-1

$pwdこれは、リンクが含まれている場合にも発生することに注意してください。gitおそらくチェックreadlink -fする前にすべきです。$pwd

編集:または、これは実際に電話を逃したためかもしれませんgit worktree prune。今、それは働いています。

于 2018-09-04T07:46:01.797 に答える