這個指令我專案上還沒用過
有在自己的環境玩
挺有趣的
我們要先下
$ git bisect start
再下git bisect bad來告訴git 已知壞掉的版本為何
$ git bisect bad 1bd2f36
再下git bisect good 來告訴git 以確定是好的版本為何
$ git bisect good 37f6a88
Bisecting: 3 revisions left to test after this (roughly 2 steps)
[49f5c491c88d1ac328bb8e8fe778a52a93ccb220] add div element
git會回覆這兩個commit之間有幾個commit
並且選一個commit把它check out 出來給我們測試
如果測試OK就回它
$ git bisect good
接著git會在挑選一個commit並且check out出來給我們測試
若測試不OK就回它
$ git bisect bad
如此反覆直到git回覆
b047b02ea83310a70fd603dc8cd7a6cd13d15c04 is first bad commit
commit b047b02ea83310a70fd603dc8cd7a6cd13d15c04
Author: PJ Hyett <pjhyett@example.com>
Date: Tue Jan 27 14:48:32 2009 -0800
secure this thing
:040000 040000 40ee3e7821b895e52c1695092db9bdc4c61d1730
f24d3c6ebcfc639b1a3814550e62d60b8e68a8e4 M config
我們就可以確認b047b02ea83310a70fd603dc8cd7a6cd13d15c04這個commit就是造成問題的commit
當我們確認後記得要下指令git bisect reset 來重設 HEAD 到開始前的地方
$ git bisect reset