Git:当我还没有提取更新时,为啥 git 会说“您的分支与 origin/main 是最新的”?

Posted

技术标签:

【中文标题】Git:当我还没有提取更新时,为啥 git 会说“您的分支与 origin/main 是最新的”?【英文标题】:Git: Why does git say "your branch is up to date with origin/main" when there are updates I haven't pulled yet?Git:当我还没有提取更新时,为什么 git 会说“您的分支与 origin/main 是最新的”? 【发布时间】:2022-01-07 13:03:20 【问题描述】:

我在本地分支,并切换回main。它说Your branch is up to date with origin/main,但是当我这样做git pull 时,它确实拉出了一堆新的更新。这是否意味着我的分支不是origin/main 保持同步?

【问题讨论】:

如果你避开git pull,你会更好地了解正在发生的事情。运行一次git fetch然后根据需要运行git statusgit log然后考虑合并或变基。 这可能有助于它在您的脑海中“点击”的一个关键是您origin/main保持同步,因为origin/main是一个名称在您的 Git 存储库中。运行 git fetch 会使您的 Git 访问其他 Git 存储库并从中获取更新,从而更新您的 origin/main 【参考方案1】:

您的本地 Git 不知道远程服务器的状态除非您先获取。获取后,您可以检查分支的状态,它会告诉您,您落后了或分支已分叉。

Git 中几乎所有命令都在本地运行,只有少数需要 Internet 访问,例如 push、fetch、ls-remote

【讨论】:

以上是关于Git:当我还没有提取更新时,为啥 git 会说“您的分支与 origin/main 是最新的”?的主要内容,如果未能解决你的问题,请参考以下文章

为啥合并后GIT会说“已经是最新的”,但分支之间的差异仍然存在?

当我 git push 所有文件都更新(甚至没有更改)时,我做错了啥?

git pull后为啥分支没有更新

当我可以在“git init”之后对“git pull”做同样的事情时,为啥要“git clone”? [复制]

基本 Git 工作流程:为啥我提取的分支中的代码尚未提交?

为啥 git 不定期运行 git fetch?