【技术】【总结】git配合gerrit使用的一些总结

gerrit作为一个code review工具,配合git使用。但是代码既然需要review才能入库,就代表着review完了之后有可能需要出现N次修改,才真正merge进git库中。这种情况下,已经push完毕的commit被告知需要修改,就会出现一系列的问题。以下是一些简单的总结:

 

 

1.回退到远程分支(抛弃本地修改,但是untrack文件不受影响,不会被抹掉)填写file的时候回退文件,填写路径的时候回退整个路径下的内容。跟svn上面revert的感觉差不多。

git checkout

 

2.查看log的时候,列出每次commit影响的文件列表

git log --name-only

 

3.修改上一次的commit。当commit已经push完毕,然后代码review之后被告知有些地方需要修改后再合入的时候,不要选择abandon,先在本地完成代码修改,然后输:

git add

git commit --amend

git push ssh://[email protected]:29418/XXXX/Apps/VrLauncherHEAD/refs/for/master

然后gerrit上面就可以看到最新的提交。History里面会有所有的提交记录。

据说还可以直接在页面修改代码,但还没试过。参考http://www.jianshu.com/p/b77fd16894b6

 

4.回退到上一次commit,这种操作不会覆盖本地修改

gitlog   ===>查看想要回退到的commit编号

 

然后选择你需要的那个commit输入,比如:

git reset cfc914555434b15c490833872f05755c1f340277

 

5.玩坏了的情况下,比如各种冲突都不知道怎么解决,想要一个完全clean的working tree(本地的东西全部失去),可以输:

git reset --hard origin/master

 

以上总结的是我用过的一些出坑方法,有不对的地方请指正!

 

 

 

你可能感兴趣的:(技术,总结)