【发布时间】:2012-08-05 01:36:09
【问题描述】:
下面是 Subversion、Jenkins、Beanstalk 设置:
- trunk/ -> 开发主线
- CI 建立在签入之上
- 成功的 CI 构建会生成 CD 构建,该构建会推送到“测试”Beanstalk 环境
- branches/qa/ -> 当前候选版本
- CI 建立在签入之上
- 成功的 CI 构建会生成 CD 构建,该构建会推送到“QA”Beanstalk 环境
- 分支/产品/->当前版本
- CI 建立在签入之上
- 成功的 CI 构建会生成 CD 构建,该构建会推送到“Prod”Beanstalk 环境
基本上我想做的是这样的:
- 开发周期从主干开始(主干:0.1-SNAPSHOT)
- 当开发周期完成时,分支到 qa 并成为 qa 周期。同时在主干中开始下一个开发周期(主干 0.2-SNAPSHOT,qa: 0.1-SNAPSHOT)
- 当 qa 周期完成时,分支到 prod 并执行 maven 发布。同时开始下一个 qa 周期(主干 0.2-SNAPSHOT,qa:0.2-SNAPSHOT,prod:0.1)
我们的想法是进行短冲刺,在每个冲刺结束时,开发周期结束,质量保证周期开始。质量保证周期完成后,它会被推送到生产环境。
我想保留分支并从分支合并到\,而不是删除并重新创建。这个想法是在 qa 中所做的任何修复都将合并回 intro trunk,并且在 prod 中所做的任何更改都将合并回 qa(并返回到主干)。
因此,prod 是一个“热”分支,代表生产环境的当前状态。
这是为一小群从事为期一周的冲刺工作的开发人员准备的。
问题:
- 这个设置听起来怎么样?
- 我可以让 maven 正确运行,还是需要编写脚本?
- 你爸爸是谁?他是做什么的?
【问题讨论】:
标签: java maven version-control jenkins release-management