git 进阶操作

1.blame

 git blame +文件名,可以查看到某个文件每一行最近一次是由谁编辑修改的。-L 22,33 选项可以制定

2.bisect

开始git bisect: 
  $ git bisect start 
标记当前版本为错误: 
  $ git bisect bad 
找到前几个为正确的的版本,做了一个tag(tag20090106),测试为正确的,标记一下: 
  $ git bisect good  tag20090106 
这时git会告诉你选取了一个中间版本,这时就开始编译,测试,如果不通过,执行: 
  $ git bisect bad 
git会用折半方法再向前找一个中间版本,开始编译,测试,如果通过,执行: 
  $ git bisect good 
git将继续定位revision,直到最后定位到一个引入错误的版本,这时再分析原因,再找惹麻烦的工程师PK,PK完了回来收工执行: 
  $ git bisect reset 
git将返回到当前的HEAD.

3.cherry-pick

git cherry-pick +commitId,可以将其他分支的某次提交,拽到当前分支来。

4.git revert

当想撤销历史的某次提交,而不影响这次提交之后的话,使用 git revert + commitId