其他人改变了git diff

时间:2015-11-15 09:09:02

标签: git git-branch rebase

  1. 我正在当地分公司工作。我做了改变并承诺了。

  2. 现在,我做了一个git pull(设置上游后)然后git rebase -i。

  3. 现在,如果我看到git diff HEAD ^,除了文件中的更改外,我还会看到文件中的其他一些更改。我认为这些更改已被某人推动(因为如果我将我的文件复制到其他地方并执行git checkout并粘贴我的文件,那么我只会在git diff中看到我的更改)

  4. 所以,现在如果我进行git推送,那些更改将作为我提交的一部分。

    有人可以帮我删除这些更改,以便git diff只显示我的更改而不进行复制和结帐吗?

1 个答案:

答案 0 :(得分:1)

您所观察到的是做git rebase时应该注意的事项。让我们假设远程和本地分支机构看起来像这样:

remote: A -- B -- C
              \
local:         D

接下来,您对本地分支进行了新的提交,使图表看起来像这样:

remote: A -- B -- C
              \
local:         D -- E

当您在远程分支上执行git rebase -i时,您从远程分支引入了C提交。 在之后的图表是

remote: A -- B -- C
                   \
local:              D' -- E'

您担心的更改来自C提交,并且已经在遥控器上。仔细观察,您将看到此本地分支现在可以快进遥控器。

所以你不必担心这些神秘的变化。它们可能是你的同事制造的,他们已经是远程分支的一部分了。