GitHub、Gerrit、Hudson(Jenkins) 工作流程

2024-04-15

我刚刚开始一起使用 GitHub、Gerrit 和 Hudson(Jenkins)。我需要一些关于工作流程的想法。

我们想使用 GitHub 作为我们的主要远程存储库。我们希望主要使用 Gerrit 进行代码审查,但也用于 Hudson 中的构建触发器。

不过,目前我在思考工作流程时遇到了一些困难,并且想听听其他人自己做了什么。想法?


我们正在使用github http://github.com, gerrit http://code.google.com/p/gerrit/ and jenkins http://jenkins-ci.org(的继承者hudson http://hudson-ci.org)。我们将它与redmine http://redmine.org用于错误跟踪。

在 gerrit 之前,我们使用 github 作为主要开发存储库,并且开发人员具有提交访问权限。现在我们已经运行了 gerrit,github 仅用作我们的发布存储库,并且只有 gerrit 用户有权推送到 github。

工作流程:

  1. 开发者从github上查看源代码。
  2. 开发人员进行更改。
  3. 开发人员推送到 gerrit。
  4. gerrit sends change notice to jenkins for integration test.
    • jenkins 直接从 gerrit git 服务器提取更改。
    • 通过后,jenkins 会为 gerrit 审核添加+1,并将审核传递给其他开发人员。
    • 失败时,jenkins 在 gerrit review 中添加 -1
    • 通过/失败状态推送至 redmine
  5. 其他开发人员审查更改,批准 (+2)
  6. gerrit commits changes to github repository.
    • github hook 通知 redmine 更新。
    • redmine 从 github 中提取更改,解析提交消息以获取票证信息。
  7. 开发人员从 github 获取更改...回到 2。[编辑]:我们切换到直接从 gerrit 拉取。 Github 仍然是拉动生产源的镜子。

缺失的部分:

  1. 打结的一块gerrit 审查到错误跟踪/从错误跟踪 http://code.google.com/p/gerrit/issues/detail?id=124.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GitHub、Gerrit、Hudson(Jenkins) 工作流程 的相关文章

  • Capistrano 3 部署无法连接到 GitHub - 权限被拒绝(公钥)

    我使用 Capistrano v3 和 capistrano symfony gem 设置了以下部署脚本 我正在使用 Ubuntu 14 4 部署到 AWS EC2 实例 我正在连接从 AWS 下载的 pem 文件 我的deploy rb中
  • 使用 Pkg.add 时出现 julia 错误

    我刚刚在ubuntu中安装了julia 在添加包时发现了一些问题 julia gt Pkg Add Gadfly ERROR UndefVarError Add not defined 我也尝试更新 julia 但弹出错误 julia gt
  • 如果 git 凭证管理器显示令牌,它如何安全

    I have credential helper manager core 这是 Windows 凭据管理器的新助手 我不明白如果你可以让 git 显示你的凭据 它如何安全git credential fill 重现步骤 通过执行命令确认凭
  • Access 2007 触发器和过程等效项?

    好的 有人有一些关于 Access 2007 功能 有关触发器或存储过程 的好资源吗 它甚至可以做它们或类似的事情吗 我在 Microsoft 帮助中找到的所有资源都引用了 Access 2003 以及许多在线帮助手册 2007 年一切都发
  • 无法访问 Github 403 错误:权限被拒绝

    我是 Git Github 的新手 所以请原谅我的困惑 问题是 我刚刚对本地存储库进行了更改 并且想推送到 Github 上的原点 特别是 gh pages 之前 我一直在使用另一个 Github 帐户 因此我更改了 user name 和
  • 我可以通过 GH API 获取两次提交之间一个文件的差异数据吗?

    我知道如何通过 API 以及 SHA 和所有这些好东西来获取文件的提交 但是 假设我只想要 1 次提交中的文件差异或两次提交中同一文件的差异 例如 在这次提交 https github com rails rails commit ea75
  • 禁止 Gerrit 推送到 refs/for/master

    我已经更新了所有项目昨天获得访问权限 人们说他们今天早上无法将更改推送到存储库 当我恢复访问权限后 他们仍然无法将更改推送到存储库 只能clone工作正常 在将更改推送到远程存储库时 它表示 remote rejected HEAD gt
  • 具有私有 git 存储库的 Cocoapods

    我想添加到podfile私有git存储库 例如 pod MyLibrary git gt email protected cdn cgi l email protection perfect top library git branch g
  • 自动部署资源

    我足够了解我们需要通过单个用户操作来部署我们的应用程序 但是 我don t know 在 NET 商店中可以使用哪些好工具 您如何管理每个环境的配置更改 有人可以给我指出一些用于持续集成的好资源吗 我希望看到一些理论以及逐步的实践指南 Ed
  • AWS CodeBuild - 如何跳过构建

    我的构建是在每次推送到存储库和每次拉取请求时触发的 因此 CODEBUILD SOURCE VERSION 看起来像 pr 8 或 4570d2e7158cfef687af8da31d1ffec7b02e5ca3 我只希望为 pr 分支执行
  • github Diff 截断错误

    在 github 中发出拉取请求并审查更改时 我们收到了 Diff Truncated 错误 如下所示 任何人都可以帮助解决这个问题 拉取请求可能会触发以下提到的限制之一GitHub 支持 https stackoverflow com a
  • travis-ci 安装程序使用 --github-token 发布

    我在使用带有 github 令牌的安装版本时遇到问题 我喜欢 travis ci 但我不愿意透露我的 github 密码 我需要使用令牌并且我阅读了文档 因为这应该可以通过这种方式实现 不幸的是它仍然要求输入密码 travis login
  • 如何从 github 安装需要构建步骤的 npm 包,例如什么时候分叉一个库?

    假设您使用类似的库vue3 datepicker https www npmjs com package vue3 datepicker 您意识到您需要自定义某些内容 并且作为第一步 您想要使用它的自定义分支 问题是 当包被推送到 npm
  • 如何在 github 复合操作步骤中动态设置环境变量?

    我确实需要它作为一个环境变量 这是为了复合动作具体来说 在复合操作中 我尝试了许多不同的设置环境变量的方法 我发现做到这一点的唯一方法是使用env在步骤本身内 runs using composite steps name A step e
  • GitHub - 指定时间的存储库状态

    我是使用 git 版本控制工具的初学者 我想在指定时间 例如 2013 年 10 月 5 日 下载存储库状态 文件 我怎样才能做到这一点 截至 2019 年 5 月 不确定何时引入 您可以简单地按以下格式添加日期 HEAD 2019 04
  • 为什么我的存储库的 github 页面中没有出现问题选项卡?

    我想在 github 存储库中创建问题来纠正存储库中的技术债务 我看不到问题选项卡 对于其他存储库 问题选项卡显示在拉取请求选项卡下方 如何为我的存储库启用问题选项卡 您必须先启用问题 您可以通过点击来做到这一点Settings并启用 问题
  • 在 gitHub 网站上哪里可以查看提交历史记录?

    我正在 gitHub 上寻找所有过去 git 提交的历史记录按钮 这些是 gitHub 页面上的按钮 代码 问题 拉取请求 行动 项目 维基百科 安全 见解 设置 1 家分店 0 标签 在存储库页面上 大绿色下拉代码按钮下方有一个提交按钮
  • 如何正确设置 Azure DevOps 和 GitHub 之间的双向同步

    我想通过执行以下操作在 Azure DevOps 和 GitHub 之间创建双向同步 使用 CI 触发器创建 Azure DevOps 管道 将更改从 Azure DevOps 存储库推送到 GitHub 中的分支 创建第二个管道 用于侦听
  • 将存储库从 Github 移至 Gitlab

    有没有办法将整个存储库从 Github 移动到 GitLab 对于代码本身来说 只需在 GitLab 上创建一个新的存储库并推送到它即可 Wiki 页面位于 Github 上的单独分支中 并通过 Git 机制进行管理 据我所知 GitLab
  • Postgresql插入触发器设置值

    假设在 Postgresql 中 我有一个表T它的一栏是C1 我想在新记录添加到表中时触发一个函数T 该函数应该检查列的值C1在新记录中 如果它为 null 空 则将其值设置为 X 这可能吗 您需要触发器是正确的 因为为列设置默认值对您不起

随机推荐