git中merge和rebase的区别
来源:互联网 发布:php供求发布系统源码 编辑:程序博客网 时间:2024/05/16 15:27
最开始实习的时候是使用svn,之后正式工作就一直在使用git,这样算起来,使用git也有两年的时间了。以前带我的同事,让我在拉代码的时候要我使用
git pull --rebase
,一直很纳闷为什么要那样做,后来遇到拉代码的时候有许多冲突要解决,然后去查找资料,才了解到其中的一些事情。今天分享一下,顺便自己也梳理一下。git pull
git pull 是 git fetch + git merge FETCH_HEAD 的缩写。所以,默认情况下,git pull就是先fetch,然后执行merge 操作,如果加–rebase 参数,就是使用git rebase 代替git merge。
merge 和 rebase
merge 是合并的意思,rebase是复位基底的意思。
现在我们有这样的两个分支,test和master,提交如下:
D---E test/A---B---C---F master
在master执行git merge test
,然后会得到如下结果:
D--------E/ \A---B---C---F----G test, master
在master执行git rebase test
,然后得到如下结果:
A---B---D---E---C'---F' test, master
可以看到,merge操作会生成一个新的节点,之前的提交分开显示。而rebase操作不会生成新的节点,是将两个分支融合成一个线性的提交。
### 其他内容放这里
通过上面可以看到,想要更好的提交树,使用rebase操作会更好一点。这样可以线性的看到每一次提交,并且没有增加提交节点。
在我们操作过程中。merge 操作遇到冲突的时候,当前merge不能继续进行下去。手动修改冲突内容后,add 修改,commit 就可以了。
而rebase 操作的话,会中断rebase,同时会提示去解决冲突。解决冲突后,将修改add后执行git rebase –continue继续操作,或者git rebase –skip忽略冲突。
原文地址:http://blog.isming.me/2014/09/26/git-rebase-merge/,转载请注明出处。
阅读全文
0 0
- git中merge和rebase的区别
- 'git merge' 和 'git rebase'的区别?
- git merge和git rebase的区别
- git merge和git rebase的区别
- Git rebase和 Git merge的区别
- git merge和rebase的区别
- git merge和rebase的区别
- git merge和rebase的区别
- git merge和rebase的区别
- git merge和rebase的区别
- git merge和rebase的区别
- git merge和rebase的区别
- [git]merge和rebase的区别
- git rebase 和 merge区别
- git fetch 后, git merge 和 git rebase的区别
- git命令之git merge 和 git rebase的区别
- git merge和git rebase的区别(转)
- git merge 和 git rebase 区别
- hdfs常用的Shell操作
- 常用第三方框架-Masonry(ios)和SnapKit(swift)
- RMI连接失败问题
- 激活函数
- Oracle 11g 比10046更直观的工具DBMS_SQLTUNE
- git中merge和rebase的区别
- weak 属性需要在dealloc中置为nil吗
- 面试时“自我介绍”应聘者如何巧妙回答
- Glide4.0+使用的坑
- 使用模板类实现KM算法
- @synthesize 和 @dynamic 分别表示什么
- 被CSDN删除的32万阅读量的文章--CTreeCtrl 控件使用总结
- Objective-C 内存管理机制
- 关于ie兼容性问题