Chinaunix首页 | 论坛 | 博客
  • 博客访问: 359537
  • 博文数量: 60
  • 博客积分: 15
  • 博客等级: 民兵
  • 技术积分: 1138
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-20 16:18
个人简介

最多140个字

文章分类

全部博文(60)

文章存档

2016年(1)

2015年(34)

2014年(25)

分类: LINUX

2015-08-04 10:06:58

(前提是bug可以复现git bisect :在提交历史中进行二分查找来尽快地确定哪一次提交引入了错误。例如你刚刚推送了一个代码发布版本到产品环境中,对代码为什么会表现成那样百思不得其解。你回到你的代码中,还好你可以重现那个问题,但是找不到在哪里。你可以对代码执行 bisect 来寻找。

首先你运行 git bisect start 启动,然后你用 git bisect bad 来告诉系统当前的提交已经有问题了。然后你必须告诉 bisect
已知的最后一次正常状态是哪次提交,使用 git bisect good [good_commit],当你完成之后,你应该运行 git bisect reset 来重设你的 HEAD 到你开始前的地方,否则你会处于一个诡异的地方.

类似问题:leetcode/First Bad Version

  1. // Forward declaration of isBadVersion API.
  2. bool isBadVersion(int version);

  3. int firstBadVersion(int n) {
  4.     int low=1;
  5.     int high=n;
  6.     while(low<=high)
  7.     {
  8.         int mid=low+(high-low)/2;
  9.         if(!isBadVersion(mid))//如果不是bug版本;
  10.         {
  11.             low=mid+1;
  12.         }
  13.         else
  14.         {
  15.             high=mid-1;
  16.         }
  17.     }
  18.     return low;
  19. }



阅读(2851) | 评论(0) | 转发(0) |
0

上一篇:git blame

下一篇:Add Two Numbers

给主人留下些什么吧!~~