博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
git两种合并方法 比较merge和rebase
阅读量:6457 次
发布时间:2019-06-23

本文共 1006 字,大约阅读时间需要 3 分钟。

18:01 2015/11/18
git两种合并方法 比较merge和rebase
其实很简单,就是合并后每个commit提交的id记录的顺序而已
注意:重要的是如果公司用了grrit,grrit不允许用merge,所以好像都是用rebase
却别讲解,比如:在服务器上的develop分支有多人在开发,你们同时clone或pull下来最新代码,但是开发进度不一样,你在开发一个任务的时候其他人提交了编号为1,2的commit和push,你现在开发完了也要提交,你的提交编号是3,4(注意:编号不代表顺序现实中其实是很长的随机字符串),现在rebase是让你代码的提交到其他人的之后
讲解博客:http://blog.csdn.net/jollyjumper/article/details/24743751
推荐博客:http://blog.csdn.net/wh_19910525/article/details/7554489
开始几次没用到,所以没看懂,后来用到了,带我的人给我解释了,所以看懂了
其实以为懂了,后来带领我的人亲口讲解之后才算明白了。
需要注意的是当你clone代码(develop分支)之后,在本地clone下来的代码中又新建了自己的工作分支(git bash命令窗口)进入克隆下来的代码文件夹后 git checkout -b mywork(---这是为了随时可以接收新的新的紧急开发或bug任务,不至于开发未完成而影响接收新任务或需要其他备份处理操作,因为此时可以再从develop分支上新建新的任务工作分支:git checkout -b mywork2进行新任务开发)的时候rebase是从本地的clone下来的代码进行交互,而不是与服务器上的代码进行交互,除非特殊声明代码可和分支,(重点:所以在自己的开发分支上完成开发任务后要切换回到原来的clone分支develop:git checkout develop,然后:gi pull origin develop,然后再切换到开发分支:git checkout mywork,这时候进行rebase才会有效)我就在这里一直迷糊,后来才明白。merge应该同理。
当然,我猜应该有其他方式,就是让工作分支和服务器直接进行交互pull和push,但是那就很大程度失去了工作分支的意义了,几乎没有创建工作分支的意义了。
总算明白了

你可能感兴趣的文章
c# implicit explicit关键字(隐式和显式数据类型转换)
查看>>
JdbcUtils针对事务问题作出的第三次修改
查看>>
检测代码运行时间(微秒级)
查看>>
【转载】数据仓库的基本架构
查看>>
更新ADT20后无法创建Android项目
查看>>
贴个ALSA例程
查看>>
hdu1358
查看>>
Leetcode: Word Break
查看>>
2014 网选 广州赛区 hdu 5025 Saving Tang Monk(bfs+四维数组记录状态)
查看>>
图像处理之opencv---mat、cvmat、IplImage之间的转换
查看>>
linux环境变量配置
查看>>
JAVA 设计模式 装饰者模式
查看>>
视频直播、视频会议、视频点播三者有何区别
查看>>
lintcode:Plus One 加一
查看>>
解决启动Distributed Transaction Coordinator服务出错的问题
查看>>
Java数据类型和MySql数据类型对应表
查看>>
面向对象编程(十)——继承之Super关键字及内存分析
查看>>
Atitit. Atiposter 发帖机 新特性 poster new feature v7 q39
查看>>
Android View 如何测量
查看>>
splay tree成段更新,成段查询poj3466
查看>>