我有一个包含几个小批量作业的项目。每个批处理作业完全独立于另一个(使用不同的文件格式/ REST结构连接到不同的S3存储桶或REST服务)。创建所有这些批处理作业需要几个月的时间。理想情况下,我希望独立发布每个批处理作业。特别是当涉及到生产修补程序的概念时。在紧急情况下释放一个批处理作业比在被迫重新释放所有批处理作业(并且必须处理正在运行的作业)更快更容易。
现在最大的障碍是git。我应该:
我倾向于选择1,但是几十个git repos的概念似乎势不可挡。所有工作都会导入一个共同的回购。如果我需要在共同的回购中改变一些东西,我必须为每一批工作做一个git dance。但是,如果我把所有内容都放在一个整体的回购中,我要么必须有几十个“主”分支,要么每次重新发布每个工作。
是否可以使用micro git repos并使用某种工具进行简单的操作(例如所有repos的git clone)?也许gradle能以某种方式做到这一点?是否更好地使用单片回购并具有丑陋的发布过程和分支结构?