我在gerrit中有一个名为v2.0
的分支。现在我想将此分支的当前统计信息设为v2.0.1
。
在我的本地存储库中,我检查了分支,然后使用
添加了标记git tag v2.0.1
现在我试图将其推向格里特,但我不确定如何。我试过这个:
$ git push origin v2.0.1 HEAD:refs/heads/v2.0
! [remote rejected] v2.0.1 -> v2.0 (prohibited by Gerrit)
如何将标签推送到gerrit?
答案 0 :(得分:19)
经过一些谷歌搜索后,我找到了答案:
gerrit
仅接受带注释的标签。创建和推送带注释的标签非常简单:
git checkout v2.0
git tag -am "Adding v2.0.1 tag" v2.0.1
git push origin v2.0.1 HEAD:refs/heads/v2.0
答案 1 :(得分:9)
点击您的项目Access
,添加如下权限:
Reference:
refs/tags/*
Push Annotated Tag
Push Signed Tag
带注释的标签:git tag -a "message" tag_name
签名代码:git tag -s tag_name
简单cmd:git push --tags
如果您想使用cmd从服务器仓库获取代码:
git fetch --tags
您可以查看doc:
https://review.typo3.org/Documentation/access-control.html#category_push_annotated https://review.typo3.org/Documentation/access-control.html#category_push_signed
答案 2 :(得分:4)
标签和分支在Git中是完全独立的概念,所以你的命令没有意义。标记仅链接到提交,并且是存储库范围的。
标记和分支都是引用,将标记视为提交的固定引用,并将分支作为提交分支顶端的移动引用。
如果提交标记v2.0.1
已经在v2.0
分支中,我说您只需将两者都推送到origin
。如果没有,您将要将包含该标记的分支合并到v2.0
分支中,并推送它们。
答案 3 :(得分:1)
如果你推送一个轻量级标签,你应该添加特权'创建参考'对于引用名称refs/tags/*
,因为正如CharlesB所说,标记和分支都是引用。
添加'创建参考'是的,您可以使用git push --tags
推送轻量级标签。