git diff 中的其他更改
Others changes in git diff
我在本地分公司工作。我进行了更改并提交了它们。
现在,我做了一个 git pull(设置上游之后)然后 git rebase -i.
现在,如果我看到 git diff HEAD^,除了我对文件所做的更改之外,我还会看到文件中的其他一些更改。我认为这些更改已经被某人推送了(因为如果我将我的文件复制到其他地方并执行 git 检出并粘贴我的文件,那么我只会在 git diff 中看到我的更改)
所以,现在如果我执行 git 推送,这些更改将作为我提交的一部分。
有人可以帮我删除这些更改,以便 git diff 只显示我的更改而不进行复制和签出吗?
您观察到的是执行 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
提交,并且 已经 在远程。仔细观察,您会发现这个本地分支现在可以 快进 远程。
所以你不必担心这些神秘的变化进来了。它们可能是你的同事做的,它们已经是远程分支的一部分。
我在本地分公司工作。我进行了更改并提交了它们。
现在,我做了一个 git pull(设置上游之后)然后 git rebase -i.
现在,如果我看到 git diff HEAD^,除了我对文件所做的更改之外,我还会看到文件中的其他一些更改。我认为这些更改已经被某人推送了(因为如果我将我的文件复制到其他地方并执行 git 检出并粘贴我的文件,那么我只会在 git diff 中看到我的更改)
所以,现在如果我执行 git 推送,这些更改将作为我提交的一部分。
有人可以帮我删除这些更改,以便 git diff 只显示我的更改而不进行复制和签出吗?
您观察到的是执行 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
提交,并且 已经 在远程。仔细观察,您会发现这个本地分支现在可以 快进 远程。
所以你不必担心这些神秘的变化进来了。它们可能是你的同事做的,它们已经是远程分支的一部分。