Fork me on GitHub

林德熙

If you have any language confusion,please talk to me lindexi_gd@163.com.

git rebase

rebase可以修改记录,我总是做小更改就提交,仓库有好多看起来很乱的

git没有可以把最后一个提交提交到服务器的能力,可以用rebase

rebase可以合并提交,使用简单

先使用分支做更改

git branch 更改
git checkout 更改

提交更改

git commit 更改

然后到主分支看最新提交

git checkout master
git log

这里写图片描述

记下那提交

把更改合并master

git merge 更改

用rebase把更改多个合为最后一个

git rebase -i 记下的提交

这里写图片描述

在打开的文件的pick除了第一个pick,改为s

用i修改,先按i,修改

这里写图片描述

这里写图片描述

修改完,按esc,:wq保存

然后git会让你写修改commit,按i修改,#开头的是注释,commit是合并多个的。

假如我有三个提交

commit : A
commit : B
commit : C

合并后我就可以写commit : ABC

这里写图片描述

写完按esc,:wq保存

提交就是最后一个

本文会经常更新,请到原文:/lindexi/post/git-rebase/,避免陈旧错误知识的误导,同时有更好的阅读体验。

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系