アヒルのある日

株式会社AHIRUの社員ブログです。毎週更新!社員が自由に思いついたことを書きます。

gitのbisect

こんにちは、最近寒くなってきて外に出るのが億劫なみえないプログラマです。

少し前に、二分探索で問題を特定しよう、というブログがあったのでそれに関連してgitにはそれをやってくれるサブコマンドがあるよーというお話です。

タイトルの通り、git bisect <bad> <good>(それぞれコミットIDやタグなどです)を実行すると、その2つの間のコミットが自動的にチェックアウトされます。

そのあと、自動でテストするスクリプトがあるなら

git bisect run <script>

と対象のスクリプトを指定してやれば自動的な問題のあるコミットを探してチェックアウトしてくれます。

自動でテストするスクリプトがなくても、手動で動作を確認したのち

git bisect good

git bisect bad

を実行していくと自動的に問題のあるコミットを探してくれます。

あまり使ったことはないのですが、こんなのもあるよーという備忘録がてらの記事でした。