【发布时间】:2012-12-15 21:40:08
【问题描述】:
有没有办法将成功构建的功能分支推送到另一个分支?
我想要这样的东西:
Git 存储库(Gitorious/GitHub 等)。分行:
- master(当前项目的代码)
- 质量保证(代码等待 QA 的分支)
- 功能分支(许多远程分支,开发人员可以在其中开发他们的功能)
开发人员应该只有对 master 的读取权限和对他的功能分支的读/写权限 QA 读/写质量保证分支 TeamCity - 读/写大师,质量保证,只读功能分支
现在我想要一个这样的工作流程:
- 开发者从 master 分支拉取代码。
- 开发人员创建功能分支 A。
- 开发人员将更改推送到远程功能分支A
- TeamCity 监控功能分支
- TeamCity 在每次提交时触发构建和测试。
- 如果构建成功,TeamCity 会将更改推送到质量保证分支
- QA 团队检查代码(可能会运行一些其他测试、完整性测试)
- 如果 QA 确定一切正常,他们会将更改推送到 master 分支。
我不知道 QA 的那一步是否必要,也许成功构建和测试后的每个功能分支都应该与 master 合并。
首先我想知道:这有意义吗?我刚开始用CI,不知道行不行。
其次,如果这个工作流程是正确的,我想知道如何配置 TeamCity 来执行类似的操作,以及如果出现某种冲突或可能出现问题怎么办。
最近我观看了有关 Git+Jenkins+Gerrit 的演示文稿,在那里我看到了类似的东西,但对于 .NET 开发,我个人更喜欢 TeamCity,但如果使用 Jenkins 更容易做到这一点,我会改变主意。
【问题讨论】:
标签: git jenkins continuous-integration workflow teamcity