git rebase 和 git merge 的区别

60 阅读1分钟

 基本概念

  • Git Merge:

    • 将两个分支的历史合并在一起,创建一个新的合并提交。
    • 保留了所有的提交历史,包括分支的分叉。

image.png

  • Git Rebase:

    • 将一个分支的所有提交“移动”到另一个分支的基础之上。

    • 会修改提交历史,使得历史记录更加线性。

    • 提交历史变得更加线性,消除了分支的结构。

  • 例如:

    scss
    复制
    A---B---C (master)
         \
          D---E (feature)
    

    Rebase 后:

    css
    复制
    A---B---C---D'---E' (feature)