事象
git worktree使うときにVSCodeでgit管理と認識されるケースとされないケースがあって困っていた。
原因
msys2からgit worktreeコマンドでworktreeを切ると次のようになる。
$git worktree list
/home/yumetodo/test/foo 6bf17179b [master]
/home/yumetodo/test/foo_alpha 23b7bcf18 [alpha]
これをpowershellからみるとこう
PS C:\msys64\home\yumetodo\test\foo> git worktree list
C:/msys64/home/yumetodo/test/foo 6bf17179b [master]
/home/yumetodo/test/foo_alpha 23b7bcf18 [alpha] prunable
つまりパス表記がわるい。
workaround
nano .git
してパス表記をC:/
から始まる形式に直すと正しく認識されるようになった
結論
毎回.git
を手書きで直すのはばかげているので、git worktree add
をmsys2からやらずにpowershellなどから実行することにした。
追記
あるAnonymous曰く
WSLを使っていると
/mnt/c/
~が入ってきてさらにカオスになります