これはなに

git rebaseしようとしたら、エディタが起動しなくてハマったときの解決メモ。
要点

GitのエディタにVS Codeを設定するときは、下記コマンドのように--waitフラグを追加する必要がある。
git config --global core.editor "code --wait"試行錯誤のメモ

git rebaseしようとしたら、エディタが起動しない。
$ git rebase -i HEAD~4
hint: Waiting for your editor to close the file... error: cannot run editor: No such file or directory
error: unable to start editor 'editor'git configのcore.editorが設定されていなかったのが原因だった。そのため、下記コマンドでエディタをVS Codeに設定した。
git config --global core.editor "code"しかし、再度git rebaseを実行すると、VS Codeは起動するもののgit-rebase-todoファイルを開けない。「ファイルが見つからなかったため、エディターを開くことができませんでした」と言われる始末。

シェル上では実行できたかのように表記された。
$ git rebase -i HEAD~4
Successfully rebased and updated refs/heads/develop.VS CodeのPATHもきちんと通っている。
$ code -v
1.84.0
d037ac076cee195194f93ce6fe2bdfe2969cc82d
x64調査の結果、git-rebase-todoファイルを開けなかったのは、どうやらVS Codeの挙動によるものらしい。VS CodeをGitエディタとして設定する際には、--waitフラグを追加して、Gitがコミットやリベースなどの操作を続行する前にエディタを閉じるのを待つ必要がある。つまり、git configに設定すべき値は下記になる。
git config --global core.editor "code --wait"これにより、今度は正常にgit rebaseが実行できるようになった。めでたしめでたし。