===========
1.使用
-
将分支切换到 master 上去:git checkout master
-
将分支 feature 合并到当前分支(即 master 分支)上:git merge feature
2.特点
-
只处理一次冲突
-
引入了一次合并的历史记录,合并后的所有 commit 会按照提交时间从旧到新排列
-
所有的过程信息更多,可能会提高之后查找问题的难度
二、git rebase
============
1.使用
与 git merge 一致,git rebase 的目的也是将一个分支的更改并入到另外一个分支中去。
-
执行 git rebase master 的操作,意味着让当前分支 feature 相对于 分支 master 进行变基
-
遇到冲突,进行对比的双方分别是 master 分支的最新内容和 feature 分支的第一次提交的内容。
-
在我们解决了冲突之后,需要执行 git rebase --continue 来继续变基的操作。
-
执行之后又遇到了冲突,这次是与 feature 分支的第二次提交进行对比出现的冲突,意味着我们需要多次解决同一个地方的冲突。
2.特点
-
改变当前分支从 master 上拉出分支的位置
-
没有多余的合并历史的记录,且合并后的 commit 顺序不一定按照 commit 的提交时间排列
-
可能会多次解决同一个地方的冲突(有 squash 来解决)
-
更清爽一些,master 分支上每个 commit 点都是相对独立完整的功能单元
3.交互模式
git rebase -i HEAD~4
复制代码
指定了对当前分支的最近四次提交进行操作。
中间红框内有一些命令,可以用来处理某次提交的,可以使用 squash 来将所有的 commit 合并成一次提交,编辑并保存之后会出现编辑提交的信息的提示,编辑提交即可。
4.git rebase和git merge的区别
-
rebase 会把你当前分支的 commit 放到公共分支的最后面,所以叫变基。就好像你从公共分支又重新拉出来这个分支一样。
-
而 merge 会把公共分支和你当前的 commit 合并在一起,形成一个新的 commit 提交
优劣:
-
git merge 优点是分支代码合并后不破坏原分支代码的提交记录,缺点是会产生额外的提交记录并进行两条分支的合并
-
git rebase 优点是可以将对象分支的提交记录续道目标分支上,形成线性提交历史记录,review时更加直观
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
最后
码字不易,觉得有帮助的可以帮忙点个赞,让更多有需要的人看到
又是一年求职季,在这里,我为各位准备了一套Java程序员精选高频面试笔试真题,来帮助大家攻下BAT的offer,题目范围从初级的Java基础到高级的分布式架构等等一系列的面试题和答案,用于给大家作为参考
以下是部分内容截图
又是一年求职季,在这里,我为各位准备了一套Java程序员精选高频面试笔试真题,来帮助大家攻下BAT的offer,题目范围从初级的Java基础到高级的分布式架构等等一系列的面试题和答案,用于给大家作为参考
以下是部分内容截图
[外链图片转存中…(img-XuUW8Bna-1711133449123)]文章来源:https://www.toymoban.com/news/detail-843483.html
本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录文章来源地址https://www.toymoban.com/news/detail-843483.html
到了这里,关于git merge rebase cherry-pick分别什么时候用?一文解惑的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!