推送单个标签:
git push origin <tag_name>
以下命令应该推送所有标签(不推荐):
# not recommended
git push --tags
git push --follow-tags
这是 Git 1.8.3 中引入的一个明智的选择:
git push --follow-tags
它推送两个提交,并且只推送两者的标签:
带注释的
从推送的提交中可达(祖先)
这是理智的,因为:
您应该只将带注释的标签推送到远程,并保留轻量级标签以供本地开发以避免标签冲突。另请参阅:带注释的标签和未注释的标签有什么区别?
它不会在不相关的分支上推送带注释的标签
正是出于这些原因,应该避免使用 --tags
。
Git 2.4 has added push.followTags
选项默认打开该标志,您可以设置:
git config --global push.followTags true
或通过将 followTags = true
添加到 ~/.gitconfig
文件的 [push]
部分。
git push origin --tags
可以。
要推送具体,一个标签执行以下 git push origin tag_name
要扩展 Trevor's answer,您可以一次推送单个标签或所有标签。
推送单个标签
git push <remote> <tag>
这是解释这一点的 relevant documentation 的摘要(为简洁起见,省略了一些命令选项):
git push [[
一次推送所有标签
git push --tags <remote>
# Or
git push <remote> --tags
以下是 relevant documentation 的摘要(为简洁起见,省略了一些命令选项):
git push [--全部 | --镜子 | --tags] [
tag
。例如git push origin tag funny-tag-1
。
git push origin my-tag
(我刚刚尝试过!)
2.10.2
。也许就是这样?
您可以通过简单的 git push --tags
命令推送所有本地标签。
$ git tag # see tag lists
$ git push origin <tag-name> # push a single tag
$ git push --tags # push all local tags
git push 命令不会将标签发送到远程存储库。我们需要使用以下命令将这些标签显式发送到远程服务器:
git push origin <tagname>
我们可以使用以下命令一次推送所有标签:
git push origin --tags
以下是有关 git 标记的完整详细信息的一些资源:
http://www.cubearticle.com/articles/more/git/git-tag
http://wptheming.com/2011/04/add-remove-github-tags
您可以像这样推送标签git push --tags
在当前分支中添加标签
git tag tag_name
检查它是否已创建
git tag
推入您的远程来源
git push origin tag_name
如何将我的标签推送到远程存储库,以便所有客户端计算机都可以看到它?
运行此命令将 mytag
推送到您的 git 源(例如:GitHub 或 GitLab)
git push origin refs/tags/mytag
最好使用上面显示的完整“refspec”(字面意思为 refs/tags/mytag
),以防 mytag
实际上是 v1.0.0
并且不明确(例如:因为有一个分支也名为 v1.0.0
)。
我正在使用 git push <remote-name> tag <tag-name>
来确保我正在推送标签。我像这样使用它:git push origin tag v1.0.1
。此模式基于文档 (man git-push
):
OPTIONS
...
<refspec>...
...
tag <tag> means the same as refs/tags/<tag>:refs/tags/<tag>.
我做了这样的事情:
git push --tags origin <branch-name> <tag-name>
e.g. : git push --tags origin master v2.0
git push --tags
,因为当您的同事接受过推送所有标签的培训时,很难摆脱坏标签,因为人们继续推送他们在本地拥有的旧的坏标签。他们想要推送新标签的时间。因此,我只会建议每个人现在使用git push origin <tag_name>
。git push origin <tag_name> --force
git push
失败并显示error: src refspec <tag_name> matches more than one.
,您可以将其推送为git push origin tag <tag_name>
git push --tags origin <tag_name>
不是 您想要的 - 尽管命名了特定标签,但它会将它们全部推送,甚至是轻量级标签。叹。git push --dry-run --tags origin
查看将推送的内容。