Git bisect
最近很少有这种突然眼前一亮的时候,今天有点例外。凑着光棍节的热闹,来介绍一下Git bisect。
事情是这样的,S同学下班之前做了一个commit,break了pipeline。等我们发现的时候已经是n个小时之后,也不知道是哪个commit出的问题。这是一个很常见的问题,常见的做法就是git log然后一个个去checkout。Git bisect就是一个替代人肉搜索的一个命令。
git bisect start #start git bisect bad #current branch is bad git bisect good <SHA-1> #some old commit that is good
然后就是
git bisect good
或者
git bisect bad
来告诉git这个commit是否是好的,n个回合之后,就能找出罪魁祸首了。