git commitの時にコードが自動整形されて凄かった

二つのプロジェクトを掛け持ちしている。
片方のプロジェクトはインデントは半角スペース4つ
もう一つは2つ
普段は2つのプロジェクトを触っているが、偶に4つの方を触ることがある。
困るのはインデントが半角4つのプロジェクトで新規ファイル作成時、
インデントが2つの方になってしまい直すのがクソ面倒臭かった。
わざわざスペースをちまちま入れていかなければならない。
整形ライブラリも入ってないので本当に手作業なのだ。
PR作成時に指摘はしてくれるようになっているが、数が多すぎると見切れないしレビューをしてもらうにも邪魔なのだ。
その時はインデント以外にもルールに沿ってない場所があり、botにものすごい数のコメントつけられて白目剥いた。PRは一旦クローズした。
ものすごく面倒なので自動でフォーマットしてよ!!!と思ったがインデント2つの方にはすでに入っているのだった。

自動整形してくれるライブラリが!!!

コミット前に自動整形させよう

コミット前に何かを実行するにはhuskyというライブラリがいる。
typicode.github.io

また、自動整形にはPretterが必要だ。
typescriptbook.jp
上記はTypeScriptでの説明だが何の言語で使っても大体同じだろう。
また、JavascriptならESLintでのチェックを挟むこともできる。
いちいち構文チェック走らせて、コードの体裁整えて…はしなくてよいのだ。
エラーがあるとそもそもコミットができないので、コミット後に体裁整えとかいうコミットメッセージでコミットしなおしたり、
git rebase -i でスカッシュして隠ぺいしたりしなくていいのだ。
自動整形が入っていないプロジェクトの方は相乗りしている形なので自分が口をはさむ余地はないが、
これからは絶対に自動整形を導入したい。