赞
踩
由于前期没有配置好git,我们的代码要提交到gerrit上进行评审才能合并.而上传到gerrit的时候,git commit时的msg需要一定的格式,所以这样就存在要修改之前多次commit的记录,即修改每次commit时的msg信息,于是有了如下方法:
点击打开链接http://blog.csdn.net/tangkegagalikaiwu/article/details/8542827/
概括起来就是步骤:
1, git rebase -i HEAD~3 设置要进行修改的commit倒数3行,回车之后就进入了类似界面:
pick:*******
pick:*******
pick:*******
每一行pick代表了每一次commit记录,这个时候修改其中一个pick为e或edit,按ctrl+x退出,提示保存,输入y保存回车.2, git commit --amend 回车打开需要修改了当前commit,进行修改后,安装1的保存方法保存退出.
3, git rebase --continue 回车执行修改的生效,如果第一步编辑了多个pick记录的话,接下来会提示你继续使用2命令,然后重复执行2,3,最后都修改完了的话,会提示成功.
以上就是修改commit信息的
另外一个就是在push到远程服务器的时候,因为要在gerrit上进行代码审核,所以会在commit的时候需要一个changed-id,由于最开始我没有把钩子hook保存在当前目录下,导致每次commit时都没有添加changed-id,所以,
1,首先去远程拷贝钩子在本地git目录下:
scp -p -P 29418 xxx@review.rnd.xxxx.com:hooks/commit-msg ${gitdir}/hooks/
hooks的路径一般是 /工程路径/.git/hooks/
这样拷贝下来了,以后每次提交commit都会自动插入changed-id.
但是之前的commit都没有id怎么办呢?很简单,重复上面修改commit的步骤,然后就能自动加入id了.
但是这样做的话,中间的一些别人的commit的id也会改变,导致提交的时候,可能会提交很多别人的修改了.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。