Git rebase 的使用
在 Git 中整合来自不同分支的修改主要有两种方法:merge 以及 rebase
Git rebase 概念
**rebase概念:**用来重新应用提交(commits)到新的基础提交上
理解:
- 我们可以将其理解成改变当前分支的base;
- 比如在分支 hotfix 上执行rebase master,那么可以改变 hotfix 的base为master
**作用:**保持提交历史的线性化,避免分叉提交记录。
结合案例理解:
背景:我们需要在 c2 创建 hotfix 分支进行修复 bug
Plan1:采用 merge 来实现
git merge
的操作如下所示,bug修复完后,在 master 上合并 hotfix 分支
通过 log 查看 图结构,如下所示:
nathanchen@192 rebase % git merge hotfix
Merge made by the 'ort' strategy.
foo.js | 1 +
1 file changed, 1 insertion(+)
nathanchen@192 rebase % git log --pretty=oneline --graph
* 64e94a94dc6464bb42fc0c4f48419479d141d335 (HEAD -> master) Merge branch 'hotfix'