I am unable to push the annotated tag in my git remote repository. All the access permission have been provided in gerrit. eg. [refs/*]
I am creating the tag using the below command
git tag -a v1.0 -m 'Base Version' 712d77e
When i try to push using the below commands
git push origin v1.0
or
git push origin --tags
I get the following error.
Counting objects: 1, done.
Writing objects: 100% (1/1), 157 bytes, done.
Total 1 (delta 0), reused 0 (delta 0)
remote: Processing changes: refs: 1, done
To ssh://...
! [remote rejected] v1.0 -> v1.0 (prohibited by Gerrit)
error: failed to push some refs to 'ssh://...'
Please let me know how I should be able to push tags in repository.
Thanks....
Sharing Tags You will have to explicitly push tags to a shared server after you have created them. This process is just like sharing remote branches — you can run git push origin <tagname> . If you have a lot of tags that you want to push up at once, you can also use the --tags option to the git push command.
Sharing tags is similar to pushing branches. By default, git push will not push tags. Tags have to be explicitly passed to git push .
Push all git tags to remote And if you want to push all tags from your local to the remote then add "--tags" to the git command and it will push all tags to the remote.
Right click on the commit you want to tag, and click Create Tag at this version... Back to Log Message dialog, right click on that tag label, click Push "tag_name"...
This is a general error message that is returned by Gerrit if a push is not allowed, e.g. because the pushing user has no sufficient privileges.
In particular this error occurs:
If you push a commit for code review to a branch for which you don’t have upload permissions (access right Push on refs/for/refs/heads/*
)
if you bypass code review without Push access right on refs/heads/*
if you push an annotated tag without Push Annotated Tag access right on refs/tags/*
if you push a signed tag without Push Signed Tag access right on refs/tags/*
if you push a lightweight tag without the access right Create Reference for the reference name refs/tags/*
if you push a tag with somebody else as tagger and you don’t have the Forge Committer access right for the reference name refs/tags/*
if you push to a project that is in state Read Only
For new users it often happens that they accidentally try to bypass code review. The push then fails with the error message prohibited by Gerrit because the project didn’t allow to bypass code review. Bypassing the code review is done by pushing directly to refs/heads/*
(e.g. refs/heads/master
) instead of pushing to refs/for/*
(e.g. refs/for/master
).
copied from prohibited by Gerrit
More description: I have same problem with new installation of gerrit 2.7, searched and found this stackoverflow question, but my case was number 5 of this description(light weight tags), so i added Create Reference permission for refs/tags/*, and problem solved.
Create annotated and Check gerrit. You must be in right group which is allowed to create annotated
If you create simple tags gerrit may reject that refs, but again it might depends on gerrit configuration.
create annotated tag:
git tag -a -m "Some message"
push all your tags:
git push --tags
check tags are created in remote:
git ls-remote --tags
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With