【Git】rebase 用法小结
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【Git】rebase 用法小结相关的知识,希望对你有一定的参考价值。
参考技术A rebase在git中是一个非常有魅力的命令,使用得当会极大提高自己的工作效率;相反,如果乱用,会给团队中其他人带来麻烦。它的作用简要概括为:可以对某一段线性提交历史进行编辑、删除、复制、粘贴;因此,合理使用rebase命令可以使我们的提交历史干净、简洁!现在我们在测试分支上添加了四次提交,我们的目标是把最后三个提交合并为一个提交:
这里我们使用命令:
其中 -i 的意思是 --interactive ,即弹出交互式的界面让用户编辑完成合并操作, [startpoint] [endpoint] 则指定了一个编辑区间,如果不指定 [endpoint] ,则该区间的终点默认是当前分支 HEAD 所指向的 commit (注:该区间指定的是一个前开后闭的区间)。
在查看到了log日志后,我们运行以下命令:
或:
然后我们会看到如下界面:
然后是注释修改界面:
当我们项目中存在多个分支,有时候我们需要将某一个分支中的一段提交同时应用到其他分支中,就像下图:
其中, [startpoint] [endpoint] 仍然和上一个命令一样指定了一个编辑区间(前开后闭), --onto 的意思是要将该指定的提交复制到哪个分支上。
所以,在找到C(90bc0045b)和E(5de0da9f2)的提交id后,我们运行以下命令:
注:因为 [startpoint] [endpoint] 指定的是一个前开后闭的区间,为了让这个区间包含C提交,我们将区间起始点向后退了一步。
运行完成后查看当前分支的日志:
此时我们才大功告成!
注:文中如有任何错误,请各位批评指正
以上是关于【Git】rebase 用法小结的主要内容,如果未能解决你的问题,请参考以下文章