将 .NET 项目与 Jenkins 和 SVN 集成的最佳方法是什么(我不知道现在是否有机会切换到 git)并能够在构建之后和生产之前查看代码。
我想要这样的东西:
- 开发人员签出存储库。
- 开发人员实现了一些东西。
- 开发人员将更改提交到存储库 A (SVN)
- Jenkins 监控存储库 A (SVN)
- Jenkins 开始构建。
- Jenkins 开始单元测试。
- 一切都好。
- Jenkins 提交对存储库 B 的更改。(审查存储库)
- QA 人员审查代码。
- QA 人员提交对存储库 C 的更改(生产)
6a。并非一切都好。6b。Jenkins 向开发人员发送通知,他的提交破坏了构建,我们回到第 2 步。
我知道如何执行步骤 1-6。或多或少。我知道我可以用 MSBuild 构建所有东西,所以这应该不难,但我不知道如何配置步骤 6-9,
吉特:
我认为使用 git 会容易得多。我看到在构建后操作中有 Git Publisher,我可以将更改推送到分支 - “review-branch”或类似的东西,并向审阅者发送通知。他们将提取存储库,一切都会很棒。嗯,詹金斯也应该向该分支创建拉取请求,而不是推动审查分支。但正如我所说,这将是 git 的场景。我在这里写了它,因为对我来说 git 在这里是更好的选择,但也许不可能。我只是想知道如果我们在谈论 git,我是否没有遗漏一些东西。
SVN:
在这里,我不知道该怎么做。Jenkins 是否有内置的东西来处理“推送”到第二个 SVN 存储库?如何将代码提交到存储库 B?
评论:最好的方法是什么?- (GIT) Jenkins 创建拉取请求 - 如果可能 - (GIT) Jenkins 推送到第二个审查分支并通过电子邮件发送通知或在某些问题跟踪器 (Redmine/Jira) 上创建一些票证 - (SVN) Jenkins 承诺审查存储库并发送电子邮件或创建票证。- 或者最好将所有内容与 ReviewBoard/Gerrit 或类似的东西集成。现在我从来没有使用过这样的软件,我读到 Gerrit 有点麻烦。