ale*_*okf 29 git continuous-integration git-flow continuous-delivery
我们一直在进行持续集成和持续交付,因为Subversion会在管道触发时提交.最近,我们开始在git-flow的一些项目中使用git,我们正在尝试决定使用git-flow的哪个分支来触发持续集成和连续交付管道.
这有两种方法:
1.使用开发分支
问题:使用git-flow我们应该在生产中部署发布(或主)分支,因此我们必须构建两个不同的管道,一个用于持续集成(分支开发),一个用于连续交付(分支主服务器).这可能会在生产中引入错误,因为生产中的版本与其他环境中的版本(集成,测试,登台)不同.
2.使用主分支:
问题:这样,我们就不会有真正的持续集成,因为对这些分支的更改不会频繁推送.
哪个是在管道中使用的rigth分支?
xpm*_*teo 13
根据定义,Git-flow和连续集成是不兼容的.分支是一种延迟集成的机制:当你提交除master(或trunk,如果你来自Subversion)之外的分支时,你就是在避免持续集成.持续集成很简单,但并不容易.
事实就在于两者之间.如果要在严格的CD管道中采用git-flow,则应该为CI使用release-branch:
基本思想来自John Ferguson Smart关于Java Maven项目中的CI/CD的幻灯片(BDD in Action,Jenkins Definite Guide).
小智 7
在我看来,如果你想在持续交付中应用git-flow,你应该有两个不同的管道,正如你在第一种方法中所说的那样.
我建议这种方法:
1.发展分支
2.主分公司
| 归档时间: |
|
| 查看次数: |
11748 次 |
| 最近记录: |