9

我在GitHub上托管了一个私人仓库。我也想使用Gerrit,尤其是Hudson Gerrit Trigger 插件。AFAICT,没有任何简单的解决方案可以将它们一起使用。

对于以下任何需求,我将不胜感激。


我想要的是

  • 克隆 GitHub 存储库并添加到 Gerrit 的项目中:
    1. 手动,或
    2. 期间init
  • 使用 Gerrit 与 GitHub 合并更改

我试过的

克隆/添加...

手动:我像往常一样克隆 repo,然后H2像这样添加:

INSERT INTO projects
(use_contributor_agreements,submit_type,name)
VALUES
('N','M','new/Repo');

期间init

*** Git Repositories
***

Location of Git repositories   [git]: git@github.com:YourName/Repo.git

我不认为这是正确的。


怎么了

克隆/添加...

手动

我收到此错误:repository not found: Cannot open repository Repo

期间init

~/gerrit2/git@github.com:YourName/Repo.git和 sub-directory创建目录Repo.git,该目录本身包含一个空的Gitrepo。不完全是我想要的。

4

2 回答 2

3

不要自己尝试,但你可以使用 gerrit repo 和镜像到 github

于 2010-10-07T12:30:20.893 回答
1

Gerrit 构建在不支持远程 GitHub 存储库的 JGit 之上。

JGit 本身允许在本地(或共享)文件系统上拥有存储库,或者通过通用“DFS”(分布式文件系统)提供程序访问它。参见参考:JGit:连接到远程存储库

我写了一篇关于同时使用 Gerrit 和 GitHub 的不同策略的文章:http: //www.packtpub.com/article/using-gerrit-with-github

简而言之,您可以将三个不同的任务委托给 GitHub:

  1. 身份验证:Gerrit 使用 OAuth 2.0 身份验证 API 请求 GitHub 登录
  2. 拉取请求:Gerrit 可以获取 GitHub 拉取请求并在 Gerrit 更改时呈现它们
  3. 复制:Gerrit 可以将更改(审查中或合并)推回 GitHub

注意:一旦你开始使用 Gerrit 作为你的 GitHub 网关,你不应该再直接推送到 GitHub,而是依赖拉取请求(导入到 Gerrit)或直接推送到 Gerrit 并完成更改审查。

如果你想试验一下 Gerrit 和 GitHub 以这种方式集成,你可以查看http://gerrithub.io,它本质上是一个 Gerrit 2.9-SNAPSHOT,上面配置了 GitHub 插件。

卢卡。

于 2014-01-04T18:31:57.680 回答