有没有办法标记远程git存储库而不在本地克隆它?
为了将代码存储库与配置存储库相关联,我希望(作为CI构建步骤)使用build-n标记配置存储库的当前头部(其中N是jenkins提供的当前内部版本号).
配置存储库不用作构建的一部分,我只是想要一个简单的方法来获取配置修订,就像在构建版本1234时那样,并将其标记为"build-1234"似乎是最简单的方法实现这一点.
我正在尝试将已经存在的git存储库导入到gerrit中,其中包含多个分支和标记.我正在关注https://gerrit-review.googlesource.com/Documentation/install-quick.html#_already_existing_project上的官方指南.
但是,当发出push命令时,除了我当前所在的"master"之外的所有分支和标签都是"Gerrit禁止的".输出是这样的:
user@host:~/my-project$ git push ssh://user@localhost:29418/demo-project *:*
[....]
* [new branch] master -> master
! [remote rejected] origin/Branch1 -> origin/Branch1 (prohibited by Gerrit)
! [remote rejected] origin/Branch2 -> origin/Branch2 (prohibited by Gerrit)
[....]
! [remote rejected] Tag1 -> Tag1 (prohibited by Gerrit)
! [remote rejected] Tag2 -> Tag2 (prohibited by Gerrit)
[....]
Run Code Online (Sandbox Code Playgroud)
我是管理员,所以它不应该是访问权限问题.
更新: 通过使用blahdiblah的脚本(/sf/answers/1126697001/),我成功地移动了所有分支.为了能够传输所有标签,我首先必须使用gerrit web界面为组管理员提供*refs/tags/**的"创建参考"权限.之后,我可以使用git push --tags推送它们.