月: 2021年11月

git switchを使う

どこで読んだかわすれたが、git switchgit restoreの話の記事を少し前に読んだ。

git checkoutは、説明されれば理解はできるが初心者には非常にわかりづらいコマンドのひとつで、「gitは難しい」「わかりづらい」「UIが悪い」といった風評の源のひとつなんじゃないかと個人的には思ってる。でもまあ使っていればなれるので、これまで特に疑問もなく使ってた。が、git switchとrestoreの導入により「checkoutが難しい」(というか、知らないと「この作業をしたいときにどのサブコマンドで実現できるのか」がわからない)という問題は発展的解消を遂げたといえる。よかったね。

よかったね、で終わってしまえばよく、そのまましばらくgit checkoutを使っていたのだけど、こういうのはわかりやすいほうになれるべきなんじゃないかとあるときふと思って、もっぱらgit switchを使うようにしてみた。

最初のステップはとりあえず使うことを心がけるのみだったが、すぐ限界がきた。git checkoutは手元ではgit coというエイリアスで使えるようになってて手軽だし、指が覚えていてつい打ってしまいがち。とくにmainに戻るときとかはgit co mainまで一瞬で打ってしまって気づいたときにはもう遅い。べつに遅くてもいいんだけど、矯正のためにcoというエイリアスを削除してみた。いまだにgit coをやってしまってエラーメッセージをみることがよくあるけど、次第に慣れてきたように思う。

switchのかわりにgit swというエイリアスを作るというのを教えてもらったのでこれも設定してみたが、どうも自分の運指には向いていないようでほとんど使っていない。switchとすべてタイプしてしまうか、swiぐらいまで打ったところでタブ補完してしまうことが多くなった。

(余談だが、10年以上前に同僚にとてもタイピングが速い人がいて、なにかの折にその人になにかのコマンドの使い方を教えてもらいに行ったら、タイピングも速いし正確なのでタブ補完を一切使ってなくて、なおかつ私のタブ補完使いまくりよりも速く入力できていて感心したということがあった。自分はtypoも多いしタブ補完がないと生産性は保てないけど、真にタイピングが上手な人はタブ補完を使わないものなのかもしれない)

まだ移行して日が浅いのでrestoreのほうはほぼ使っていないが、いずれ使う日もくることだろう。

いちおう念のために補足しておくと、移行してみたかったのは上にも書いたように個人的になんとなくそう思ったから、というものであり、広く移行を推奨するわけではありません。どっちでもよいと思う。