闲话git merge 与 git rebase 的区别
来源:互联网 发布:佛山网络推广公司 编辑:程序博客网 时间:2024/06/05 05:54
最近换工作,面试碰到一次笔试考这两个的区别。开始学习git的时候,这两个的区别是有了解过的。但是时间长了加上之前公司应用得少了,所以当时记得很模糊。笔试完就赶紧回家整理了下,希望可以借此加深印象。
merge
如果一开始我们的分支情况如下图,有一个主分支 master 及一个开发分支 deve:
假定我们目前处在 master 主分支上,进行 git merge deve 操作会发生什么呢?
Git 系统会以两个分支的共同祖先 e381a81 为基础,将两个分支的最新提交 8ab7cff 和 696398a 进行三方合并(分支路径没有合并),然后将合并中修改的内容生成一个新的 commit,即下图的 78941cb:
rebase
假如我们初始的分支情况如下图:
我们还是处在 master 分支上,我们进行 git rebase deve 操作。这时 Git 系统会将 master 上的最新提交 85841be、a016f64 与 e53ec51 合并到deve中最新提交 35b6708 后面,丢失掉自己分支的历史版本信息,从而使两个分支暂时合成一根线,如下图所示:
merge 和 rebase 的区别对比:
1 0
- 闲话git merge 与 git rebase 的区别
- 图解git rebase 与merge的区别
- git merge与rebase 区别
- Git merge 与 rebase 区别
- git rebase与git merge区别
- git rebase与git merge区别
- 'git merge' 和 'git rebase'的区别?
- git merge和git rebase的区别
- git merge和git rebase的区别
- Git rebase和 Git merge的区别
- Git rebase、merge 区别
- git rebase 与git merge
- git rebase 与 git merge
- git merge和rebase的区别
- git merge和rebase的区别
- git merge和rebase的区别
- git merge和rebase的区别
- git merge和rebase的区别
- (C基础)指针基础的乱七八糟 2017.3.12
- UML类图与类的关系详解
- C++虚函数的初步基本理解
- 虚函数中调用虚函数要注意的地方
- java的堆和栈
- 闲话git merge 与 git rebase 的区别
- favicon.ico介绍,网页图标的制作&动态网页图标
- 数据库学习日记x
- 一方库、二方库、三方库说明
- JAVA WEB从入门到精通day14 JAVA三层架构、登录注册实战演练
- 初识freemarker
- 【数据结构】链表的原理及java实现
- 154. Find Minimum in Rotated Sorted Array II Hard
- Storm与Spark Streaming比较