远程Git重置后Git拉入dev——硬源/主机不';不显示变化

远程Git重置后Git拉入dev——硬源/主机不';不显示变化,git,Git,所以我的同事在dev分支上对git进行了重设——硬源代码/主代码,他将其强制设置为远程。问题是,在这之前,我有本地开发分支,当我使用git pull时,我没有得到正确的状态,我确实得到了一些更新,但在我的开发分支上,仍然有git重置之前的东西。Git pull是最新的,但Git状态为“您的分支比'origin/dev'提前152次提交”。我知道我可以使用“重设硬”来远程开发,我想知道为什么会这样,当远程被重设时,更新本地分支的正确方法总是重设本地分支吗 Git pull是最新的,但Git状态为“

所以我的同事在dev分支上对git进行了重设——硬源代码/主代码,他将其强制设置为远程。问题是,在这之前,我有本地开发分支,当我使用git pull时,我没有得到正确的状态,我确实得到了一些更新,但在我的开发分支上,仍然有git重置之前的东西。Git pull是最新的,但Git状态为“您的分支比'origin/dev'提前152次提交”。我知道我可以使用“重设硬”来远程开发,我想知道为什么会这样,当远程被重设时,更新本地分支的正确方法总是重设本地分支吗

Git pull是最新的,但Git状态为“您的分支比'origin/dev'提前152次提交”。我知道我可以使用重置硬远程开发,不知道为什么会这样

当你这样做的时候

git checkout dev
git pull
git checkout dev
git reset --hard origin/dev
get
分支是最新的,这意味着您的本地
开发分支已经包含远程
开发分支上的所有内容

想知道为什么会这样,在重置远程时更新本地分支的正确方法总是重置本地分支吗

当你这样做的时候

git checkout dev
git pull
git checkout dev
git reset --hard origin/dev

您将丢失
dev
分支上的所有工作。如果这始终是正确的行动方针,就没有一般性的答案。您需要与您的团队讨论是否应该放弃所有这些承诺。如果有另一个分支包含这些提交,那么这里的风险较小。您可以在适当的时候将另一个分支合并到中。如果没有其他方法来访问这些提交,那么您需要作为一个团队来决定是否需要它们。

我有点愚蠢,当然,如果我的本地分支位于master之前,git pull不会将本地分支设置为该状态,除非head重置为该位置。在问了一个问题后,我意识到我自己有点怀疑这个信息。