2013年1月18日金曜日

git bisectをつかって不具合が発生したリビジョン(コミット)を見つける

バージョン管理システムを導入する理由の一つとして、
動いていたバージョン動かなくなったバージョンの差分を取る事でバグを早期発見早期治療できるから」
というのがあります。
git bisectコマンドを利用する事で、動かなくなったバージョン簡単に特定することができます。

[git bisectコマンド使い方]
1.作業領域がクリーンな状態かチェック
$git status

  1.1.作業領域に何かしらの変更が加えられている場合は退避する
  $git stash

2.bisectを開始する
$git bisect start

3.HEADが動かなくなっているとgitに伝える
$git bisect bad

4.正常に動作しているリビジョンをgitに伝える
$git bisect good 23b95e2

5.実行すると次に動作確認すべきリビジョンが勝手にチェックアウトされます。

6.チェックアウトされたリビジョンの動作確認を行う。

  6.1.正常に動作しなかった場合はgitにその旨を伝える
  $git bisect bad

  6.2.正常に動作した場合はgitにその旨を伝える
  $git bisect good

7.最初に正常に動作しなかったリビジョンが見つかるまで「5.〜6.」を繰り返します。

8.最初に正常に動作しなかったリビジョンが見つかった場合は次のようなメッセージが出力されます。

f30d46efa8f53b7e1ff1e59c3bf854fcd85de40 is the first bad commit

9.bisectを終了する
$git bisect reset

10.作業領域を退避していた場合は復旧させる
$git stash pop




このエントリーをはてなブックマークに追加

0 件のコメント :

コメントを投稿