将Gitlab与ReviewBoard集成 - 文件Blob与提交SHA1

DXM*_*DXM 9 git review-board gitlab

我正在尝试将我们公司一直使用的Gitlab服务器与新的ReviewBoard服务器集成.从我读过的有关ReviewBoard设置的所有内容来看,集成类似git的存储库的最简单方法是使用"原始文件URL掩码"字段(如果存储库具有Web前端).

幸运的是,Gitlab似乎支持这样一个前端,甚至还有一个记录良好的公共API:https:/// api/v2/projects // repository/commits // blob?private_token =&filepath =

在ReviewBoard的存储库设置中,可以指定可用于从git服务器检索单个文件的自定义URL.此URL有两个占位符:

  • {filename} - 文件路径
  • {revision} - 文件blob的sha1

不幸的是,我已经了解到Gitlab的API期望提交的SHA1,而不是单个文件和ReviewBoard,据我所知,只发送单个文件的SHA1但不提交提交的SHA1

  1. 有没有人成功地将Gitlab与ReviewBoard集成在一起?如果是这样,我有兴趣听到它
  2. 是否有人知道Gitlab支持的另一个可能未记录的API调用,它允许我们根据文件blob的SHA1检索文件?
  3. 是否有人知道ReviewBoard中的设置强制它传递提交的SHA1而不是文件blob?

DXM*_*DXM 4

我在谷歌评论委员会小组上对此进行了讨论。看来,能够通过自己的 SHA1 检索文件是许多 Git Web 前端之前缺少的功能,但现在正在添加。不幸的是,Gitlab 在这个功能上落后了,所以他们根本没有这个功能(还没有) ?)但其他人却这样做。

我们找到的解决方案是在同一台主机上安装Gitweb和 Gitlab。然后我们只是指示评审委员会使用 Gitweb API,而我们的开发人员继续使用 Gitlab。

需要注意的一件重要事情。审查委员会文档(至少对于版本 1.6)在 gitweb 的示例原始文件 URL 掩码值中存在拼写错误。这是正确的 URL 格式:

http://servername/?p=relative path to git repo;a=blob_plain;f=<filename>;h=<revision>
Run Code Online (Sandbox Code Playgroud)

在他们的文档中,最后一个参数的名称是hb但它应该是h