当前位置:网站首页 > R语言数据分析 > 正文

git pull和git pull --rebase的区别(git pull 和git push)



区别:1、rebase把当前的commit放到公共分支的最后面,merge把当前的commit和公共分支合并在一起;2、用merge命令 解决完冲突后会产生 一个commit,而用rebase命令解决完冲突后不会产生额外的commit。

git中rebase和merge的区别是什么

本文操作环境:Windows10系统、Git2.30.0版、Dell G3电脑。

git中rebase和merge的区别是什么

rebase会把当前分支的 commit 放到公共分支的最后面,所以叫变基。就好像从公共分支又重新拉出来这个分支一样。

举例:如果从 master 拉个feature分支出来,然后提交了几个 commit,这个时候刚好有人把他开发的东西合并到 master 了,这个时候 master 就比你拉分支的时候多了几个 commit,如果这个时候你 rebase master 的话,就会把你当前的几个 commit,放到那个人 commit 的后面。

16.png

merge会把公共分支和你当前的commit 合并在一起,形成一个新的 commit 提交

17.png

采用merge和rebase后,git log的区别,merge命令不会保留merge的分支的commit:

18.png

处理冲突的方式

  • (一股脑)使用merge命令合并分支,解决完冲突,执行git add .和git commit -m'fix conflict'。这个时候会产生一个commit。
  • (交互式)使用rebase命令合并分支,解决完冲突,执行git add .和git rebase --continue,不会产生额外的commit。这样的好处是,‘干净’,分支上不会有无意义的解决分支的commit;坏处,如果合并的分支中存在多个commit,需要重复处理多次冲突。

git pull和git pull --rebase区别:git pull做了两个操作分别是‘获取’和合并。所以加了rebase就是以rebase的方式进行合并分支,默认为merge。

以上就是git中rebase和merge的区别是什么的详细内容,更多请关注php中文网其它相关文章!

到此这篇git pull和git pull --rebase的区别(git pull 和git push)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 群晖root密码(群晖root密码设置)2025-08-25 16:00:07
  • ldr指令用法(ldrh指令)2025-08-25 16:00:07
  • ldr指令的作用是什么(ldr指令用法)2025-08-25 16:00:07
  • cruise2014安装教程(cruise安装包)2025-08-25 16:00:07
  • aurora什么档次(auro是什么牌子)2025-08-25 16:00:07
  • tr 缩写(tr缩写的国家)2025-08-25 16:00:07
  • xavier serrano运动员(eric运动员)2025-08-25 16:00:07
  • entrepot(entrepot词根)2025-08-25 16:00:07
  • race的过去式(rasie的过去式)2025-08-25 16:00:07
  • ettercap手机版(ettercap-graphical)2025-08-25 16:00:07
  • 全屏图片