【原创】一张图快速理解 git merge 和 rebase 的基本区别

一张图快速理解 git merge 和 rebase 的基本区别,足以应对 merge 和 rebase 的一般场景下的使用。

一图胜千言:

【原创】一张图快速理解 git merge 和 rebase 的基本区别

图中实线圆圈表明一次提交 (git commit) ,虚线圆圈表明为某提交的引用

为便于理解,决定将上图做一下分解:

1.git 仓库分支 master 和 feature

【原创】一张图快速理解 git merge 和 rebase 的基本区别

仓库分支 master 和 feature 的 提交状态

2.git merge 示意图

当前分支在 feature,执行 git merge master

【原创】一张图快速理解 git merge 和 rebase 的基本区别

git merge master

3.git rebase 示意图

当前分支在 feature,执行 git rebase master

【原创】一张图快速理解 git merge 和 rebase 的基本区别

git rebase master

结语:

  1. git merge 会将目标分支的提交合并到当前分支,并按照时间顺序保留历史提交记录
  2. git rebase 会改变当前分支的起始位置(变基:改变当前分支的基础为目标分支的最后一次提交),同时将当前分支的提交记录一次 “重新” 提交到目标分支

merge 和 rebase 还有更多丰富的使用技巧会在其他文章中进行分享,会陆续发布,敬请关注!

© 版权声明

相关文章

1 条评论

您必须登录才能参与评论!
立即登录