为什么我的标签指向本地和远程的不同提交?

Why is my tag pointing to a different commit locally and remotely?

我标记了一个提交并将其git push编辑为origin。然后我的同事将标签移动到他做出并推送的提交中。我拉 origin,但是当我 git log 时,我仍然看到标记指向我的提交。当我转到 Web 界面时,我可以看到该标记指向我同事的较新提交。我尝试了 git fetch --allgit fetch --tags,但没有用。
为什么我的本地标签没有反映 origin 上的变化?

标签不应移动,因此默认情况下 git fetch 拒绝移动标签。 (git fetch 的输出应该告诉您它拒绝了标签更新,并附有类似“会破坏现有标签”的注释。)

您可以强制本地标签更新为

git fetch -f --tags

一般来说,您应该避免经常移动标签的过程。