技術とかの雑なToday I Learnedメモ

コード変更で抜け漏れやミスを少なくするための習慣を読んだ

コード変更で抜け漏れやミスを少なくするための習慣を読んだ

コード変更で抜け漏れやミスを少なくするための習慣 - $shibayu36->blog;

短いけどためになる。

自分は今どうやっているんだっけなと振り返ってみたが、僕はgit diffコマンドを使わず、git add -p相当のことをやってコミットの粒度を分けている。実際の操作はtigなのでちょっと違うけど、やってることは一緒。

で、たとえば既存のコードに手を加えるときに「どうせあとでコミット分けるしいったん全部書き換えちゃえ」みたいな短絡的なことを考えがち。

そんなに変更量が多くなければいいんだけど、変更の行数が多いとコミットを分けるのも大変だし、たとえば「この行は別のコミットにしたいからあとで」と分けようとすると、その変更行のせいでlintが通らずに怒られてコミットできないみたいなことになる(husky/lint-stagedでコミット前にlint実行してるとなる)

なので、そもそもセルフレビュー以前にコミットの粒度に関して考え直す必要がある。今の自分のやり方だとまた同じことが起こり続けるので、むしろgit add -p相当のことは極力やらずに、実装する段階でコミット単位を意識する必要があるという反省をした。

もちろんすべてがうまくいくわけではないのでgit add -pは必要なんだけど、極力減らす感じで。

プルリクエストのセルフレビューに関しては、実装で複雑だなと思った部分はコメントを残すようにしている。

また、gh dpにDraftでのプルリクエストを作成するエイリアスを設定しているので、基本的にプルリクエストはすべてDraftで作成している。

Draftで作成すると、descriptionを記入している間にCIが回り終わってくれるのが良いところ。

ユーザーの導線に影響するコードなら、必ず自動テストだけでなく、自分自身でユーザーの行動をトレースし、違和感がある部分が存在しないかチェックする。チェックした流れについては、PullRequest上に「確認したこと」としてまとめる。必要があればgifアニメを添付しておく

これに関してはやっていないし良さそうなので、取り入れたい。