首页 > 解决方案 > 如何重用已推送到远程的标签以用于稍后合并的代码

问题描述

我犯了一个错误,将标签添加到 master 分支,而没有实际将代码合并到 master。

git tag -a submission/2 -m "submission/2"
git push origin submission/2

之后,我将代码合并到master。

现在,我怎样才能重用或合并master的提交/2 ?

$ git log --oneline

947e861 (HEAD -> master, origin/master, origin/HEAD) Commit_msg_5
6522cd1 (tag: submission/1) Commit_msg_4
3276b3d Commit_msg_3
e1ed480 Commit_msg_2
41148c4 Commit_msg_1

$ git show-ref
947e8619793951014d83634efbe7030bfdd5f6ac refs/heads/master
947e8619793951014d83634efbe7030bfdd5f6ac refs/remotes/origin/HEAD
947e8619793951014d83634efbe7030bfdd5f6ac refs/remotes/origin/master
a3515c50ae5f4029302a83009d700d6b94252fa1 refs/tags/submission/1
a6d02f30d02526b75441f0c4d69489b2d763a1fa refs/tags/submission/2

标签: git

解决方案


要删除本地标签,可以使用命令

git tag -d <tag_name>

要删除远程标签,您必须使用:

git push --delete origin <tag_name>

请注意,当您这样做时,这不会从其他用户的存储库副本中删除该标签,如果他们再次推送,他们将推送该标签,因此如果您没有足够快地制作新标签,您可能会找到该标签自己复活。


推荐阅读