Git空提交,不做任何更改
我正在尝试解决一个每隔几天左右突然出现的场景,看起来是随机的 我切换到一个我没有碰过的分支,并且被告知我在远程分支的前面,尽管我没有对这个分支做出任何承诺。然后我试图找出我所做的本地更改,但没有发现任何更改。在过去,做一个Git空提交,不做任何更改,git,Git,我正在尝试解决一个每隔几天左右突然出现的场景,看起来是随机的 我切换到一个我没有碰过的分支,并且被告知我在远程分支的前面,尽管我没有对这个分支做出任何承诺。然后我试图找出我所做的本地更改,但没有发现任何更改。在过去,做一个git推送似乎可以解决这个问题,但是如果我们盲目地推送谁知道什么,而不了解根本问题,这会让我们非常紧张。我在下面加入了一个命令,我认为它说明了我的困惑。如果我领先于remote,那么git diff是否应该返回我的更改?我想我已经掌握了remote的最新信息,这正是我试图通过包
git推送
似乎可以解决这个问题,但是如果我们盲目地推送谁知道什么,而不了解根本问题,这会让我们非常紧张。我在下面加入了一个命令,我认为它说明了我的困惑。如果我领先于remote,那么git diff
是否应该返回我的更改?我想我已经掌握了remote的最新信息,这正是我试图通过包含git fetch
/git pull
命令来展示的
$ echo '====FETCH====' && git fetch && echo '====PULL====' && git pull && echo
'====STATUS====' && git status && echo '====DIFF====' && git diff && echo '====
DIFF ORIGIN/DEV====' && git diff origin/dev
====FETCH====
====PULL====
Already up-to-date.
====STATUS====
On branch dev
Your branch is ahead of 'origin/dev' by 1 commit.
(use "git push" to publish your local commits)
nothing to commit, working directory clean
====DIFF====
====DIFF ORIGIN/DEV====
有人知道这里发生了什么吗?据我所知,这似乎是git的合并提交。您可以检查日志,并根据提交检查注释。您可以很容易地确定它是否是合并提交 更新样本。没有区别。这可能是一个合并提交。如果远程repo和本地repo发生分歧并且您执行了git pull,则可能会发生这些提交。使用
git log--graph
您应该能够看到提交历史并确认这一点。似乎就是这样。我认为我们将merge.ff
设置为false的一个副作用是,git pull现在正在生成合并提交。