使用git bisect确定引入问题的提交

本文介绍了如何使用git bisect命令通过二分查找算法找出导致编译错误的提交。从确定最近的正常提交开始,逐步标记提交为好或坏,直到找到问题引入的提交。还提及了通过git bisect run自动化此过程的方法,以及一些注意事项。
摘要由CSDN通过智能技术生成

git bisect只是一个git命令,和git pull、git push等常用的命令一样。它的用途是利用二分查找算法快速确定引起问题的提交。下面以确定哪次提交引起编译错误为例介绍git bisect的基本使用方法:

场景

当前最新提交下出现了编译错误(如执行npm run build出现错误),但是由于多人协作开发,不知道哪次提交引入了问题。此时需要确定引入问题的提交,从而缩小代码检查范围。

过程

1.首先尽可能确定最近一次不会出现编译错误的提交,这里我们以当前分支倒数第100次提交为例(实际开发过程中可能不需要估计这么多,但是git bisect由于使用了二分查找可以急速缩小范围,所以估计大些也没关系),此时我们可以使用HEAD~99表示这次提交

2.定位到当前git工程的根目录下,执行下面的命令进入搜索流程:

$ git bisect start HEAD HEAD~99

上面的命令是说HEAD提交会出现编译错误,而HEAD~99提交没有出现编译错误。

3.此时搜索流程启动,工程会变成HEAD和HEAD~99的中间那次提交的状态,此时我们需要确定此次提交是好是坏,执行npm run build查看是否会出现错误:

$ npm run build
如果出现错误,执行:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值