[英]Managing Multi-Project Branches in Git
是否有工具在Maven项目/ SCM场景中实现以下抽象操作?
背景(原创):
如您所知,Git建议使用每个项目的存储库结构范例。 与此同时,在我们的Maven案例中,任何严肃的项目都附属于几个内部图书馆。 在任何sprint期间,项目和它所附加的库都会被修改。 在Git世界中,这意味着将在多个Git存储库中存在修改。
如果我们想在sprint中分支出来的工作,也许是因为我们使用Gitflow,它邀请我们在sprint结束时创建一个发布分支,我们将如何在sprint中涉及的所有库中以逻辑方式执行它而不是手动分支每个库?
Maven感知工具(可以反省POM以找出传递快照依赖列表的工具)会更好。
我可以在代表我的一个逻辑分支的多个物理分支(每个项目一个)之间创建逻辑关系吗?
Git或Git工具是否支持逻辑分支?
我希望你不要说子模块。 我在这里寻找的是抽象出VCS的细节,而不是成为Git大师。 此外,我希望尽可能在一个操作中执行操作,因为必须单独分支每个库容易出错且容易被遗忘。
设置Jenkins服务器。
它可以将每个maven模块构建为单独的项目,然后自动重建具有快照依赖关系的任何其他项目。
Jenkins的GIT插件具有管理开发功能分支自动合并为“主”或“集成”分支的功能。 查看文档:
https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin#GitPlugin-AdvancedFeatures
另一种选择是使用像Gerrit这样的代码审查工具来控制功能开发。 同样,Gerrit控制集成到共享代码流中的更改,Gerrit可以与Jenkins集成,以确保所有提交的更改集都通过代码测试。
最后,使用M2 Release插件剪切版本 ,这是标准版本插件的包装。 (意味着你在Jenkins中总会有两种类型的构建。由代码提交触发的自动构建和通过UI显式触发的发布构建)。
看看我发现了寻找Gitflow的其他东西: https : //github.com/nvie/gitflow
它不适用于Maven,因此它不符合我的需求,但也许它可以帮助你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.