在專案中碰到 bug 怎麼辦
在開發時,有時候可能會發現某個功能有bug,但是這個功能是先前舊的 commit 到 git 上的,
但是無法確定該bug是從哪個時間點發生的,這要怎麼處理?
可以透過 git bisect
使用 git bisect
這個是幹嘛的?
他可以對 git 的 commit 標記,可以標記bad / good,也就是說你可以透過2分法的方式來標記哪修個 commit 是好的以及壞的,
當你標記完之後 git 會自動幫你跳到這兩個commit 中間的commit,此時你就可以繼續測試確認該commit 是否是好的,標記完後,他就會再幫你跳到下一個 commit 中間的 commit,以此2分法的方式一路找到有問題的commit。
範例
以下 a 是最舊的 commit,d 是最新的commit。
a -> b -> c -> d
1 | git bisect start |
--- 到底拉 The End ---