在Gerrit项目中编辑project.config

Ind*_*oad 21 gerrit jenkins

我想在我的Gerrit项目中添加一个"已验证"的标签,以允许Jenkins验证代码是否构建并通过其测试等等.

我知道我需要添加一个部分,project.config如下所示:

[label "Verified"]
       function = MaxWithBlock
       value = -1 Fails
       value =  0 No score
       value = +1 Verified
Run Code Online (Sandbox Code Playgroud)

但是,我如何访问该文件进行编辑?

Ind*_*oad 46

项目设置保存在项目的Git存储库中.您可以通过从Gerrit克隆项目来进行编辑,进行更改,提交并推回Gerrit.

您可以为任何项目执行此操作,但如果您希望它可能由您可能执行的所有项目继承,请将其All-Projects用作项目.

mkdir gtproj
cd gtproj
git init
git remote add origin ssh://<USER>@<GERRITHOST>:29418/<PROJECT>
git fetch origin refs/meta/config:refs/remotes/origin/meta/config
git checkout meta/config
Run Code Online (Sandbox Code Playgroud)

然后,更改project.config现在将在当前目录中的文件.

现在,提交更改,并推回Gerrit仓库:

git commit -a -m "Added label - Verified"
git push origin meta/config:meta/config
Run Code Online (Sandbox Code Playgroud)

就是这样.


如果你想测试它:假设你实际上添加了Verified标签,你可以检查它是否正常工作.首先,确保相关组的refs/heads/*部分All-Projects(或上面更改的项目)具有Label-Verified -1/+ 1设置.这允许列出的组进行验证.

现在,假设您有一个名为MyProject的项目和一个补丁集引用,例如1,1,验证:

ssh -p 29418 user@host gerrit review --project MyProject --message "'I just verified this patchset'" --verified +1 1,1
Run Code Online (Sandbox Code Playgroud)

这应该或多或少立即返回.您现在应该在Gerrit Web UI中看到您刚刚通过SSH登录的用户在该补丁上留下了+1验证的评论.


图片来源:来自这篇博客文章.

  • 我不确定我是如何进入糟糕状态的,但我得到了“错误:dst refspec元/配置匹配多个。”所以我不得不做“$ git push origin meta/config:refs/meta/config” (3认同)
  • 附言。使用此答案中的命令时,我从 Git 收到的错误是:“错误:无法解析引用 refs/remotes/origin/meta/config:不是目录” (2认同)
  • 发布答案时情况可能并非如此,但在 Gerrit 2.12 中,您可以通过 Web 界面编辑该文件。项目 -&gt; 列表 -&gt; 所有项目 -&gt; 常规 -&gt; 按钮“编辑配置” 编辑配置文件并保存后,您将看到包含更改的补丁。合并那个补丁,你就成功了 =) (2认同)

小智 9

您可以在Gerrit UI中配置项目配置.

您应该按照以下步骤操作:

  1. 启动您的格里特UI.
  2. 登录管理员.
  3. 转到项目 >,然后单击列表.
  4. 选择项目,然后单击" 编辑配置"按钮.
  5. 粘贴您的内容并单击" 保存".

  • 我尝试过这种方式,但是第5步将生成代码审查流程。在其中,我将其发布,但是此“编辑`project.config`”的代码审查流程尚未完成。因此,它不会影响。 (2认同)