当前位置: 首页 > >

git rebase 的使用(一)合并多次提交记录

发布时间:

简介

有时候编写一个功能或者需求会提交多次commit,而有些commit只是修改了一些无关紧要的东西。而过多的commit记录是不利于codereview,并且当遇到特殊情况需要做版本回滚的时候,过多的commit记录也会带来问题。这个时候就需要把一些commit记录进行合并。让每个commit都是一个完整的功能,做到每个commit都是有必要的。


使用示例

现在工作目录中创建一个测试文件gitrebase.txt,并添加内容first commit,提交。

接着再分别提交两次second commit和third commit。如图。


三次commit的信息分别是first commit,second commit,third commit。接下来使用rebase指令把前两次commit合并。


git rebase -i HEAD~3

使用上面的指令查看最*三次commit,如图所示。

进入编辑模式,第一列为操作指令,第二列为commit号,第三列为commit信息。
pick:保留该commit;
reword:保留该commit但是修改commit信息;
edit:保留该commit但是要修改commit内容;
squash:将该commit和前一个commit合并;
fixup:将该commit和前一个commit合并,并不保留该commit的commit信息;
exec:执行shell命令;
drop:删除该commit。

保存退出,进入编辑框,编辑合并后的commit信息“1&2 commit.”到this is a combination of 2 commits的下面。并保存退出。

接下来再使用git log或者使用git rebase -i查看commit信息,如下:

一二两次提交合并成功。



友情链接: hackchn文档网 营销文档网 爱linux网 爱行业网 时尚网