为什么 git pull --rebase 和 git rebase 给我不同的历史?

问题描述

我的git历史如下:

- A - B - C   <-- origin/master
   \
    X - Y - Z    <-- origin/my-branch,my-branch (local)

我有两种情况:

  1. 我在我的分支(本地)上运行这个:

    $ git pull --rebase origin master
    
  2. 我从本地的 my-branch 开始运行以下命令:

    $ git checkout master
    $ git pull
    $ git checkout my-branch
    $ git rebase master
    

在场景 1 之后,我的历史记录(git log显示

... - X - Y - Z - A - B - C    <-- my-branch

在场景 2 之后,我的历史显示

... - A - B - C - X - Y - Z    <-- my-branch

我想知道为什么会有区别?这两组命令不是应该做完全相同的事情吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)