内容简介:git rebase 合并多次提交.
一、应用场景
为什么需要合并多个提交呢?
常常一个功能的开发,修修补补 commit 了 n 多次,带来的结果就是提交过多过杂,不够直观,究竟哪些提交是对应这个功能的呢?还有就是,如果我要将这个功能迁移到其他分支呢?一个个 commit 去 cherry-pick 吗?未免太麻烦了吧!为什么不尝试下将多个 commit 合并成一个呢?
二、功能实现
将多个 commit 合并成一个,用到的主要 git 命名就是 git rebase。先来解释下git rebase 。其实可以把它理解成是 "重新设置基线" ,为你的当前分支重新设置开始点。
git rebase –i ,这里的 "-i" 是指交互模式。就是说你可以干预rebase这个事务的过程,包括设置commit message,暂停commit等等。
1、查看提交历史
git log -10
-10 表示要查看 commit 记录的条数。
2、git rebase -i [commit_log]
git rebase -i 5c946ca764a1a2672f36b7e8e70b647da2609caa
pick : 代表合并后的提交用这个提交的注释;
s : squash命令的简写,代表合并提交中包含这个提交;
d : 代表合并提交中排除这个提交。
3、设置commit message
4、总结
rebase 需要基于一个 commit 来设置你当前的分支的基线,这基线就是当前分支的开始时间轴向后移动到最新的跟踪分支的最后面,这样你的当前分支就是最新的跟踪分支。这里的操作是基于文件事务处理的,所以你不用怕中间失败会影响文件的一致性。在中间的过程中你可以随时取消rebase 事务。git rebase –abort
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
标签: git rebase git rebase
猜你喜欢:- Git合并提交
- git – 如何找出合并提交父母的编号?
- Git小技巧之使用rebase命令合并提交
- Git小技巧之使用rebase命令合并提交
- Git提交错误时如何删除Git提交记录
- 分组字符合并SQL语句 按某字段合并字符串之一(简单合并)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Rework
Jason Fried、David Heinemeier Hansson / Crown Business / 2010-3-9 / USD 22.00
"Jason Fried and David Hansson follow their own advice in REWORK, laying bare the surprising philosophies at the core of 37signals' success and inspiring us to put them into practice. There's no jarg......一起来看看 《Rework》 这本书的介绍吧!