我正在移植/园艺/维护一个非常快速移动的第三方项目,该项目由许多git repos组成。他们使用回购作为经理,他们的系统运作良好。然而,我的并非如此。在移植期间,我最终一次修改多个repos,并尝试通过命名约定将这些更改集合在一起。但这太费时间了。现在我的组织也有了新的要求。人们对拉动gazillion git repos不满意,这需要很长时间。因此,他们希望我将所有内容组合成一个git repo并删除repos的未使用部分(有相当多的测试代码及其黄金输出)。
现在的问题是:这在git中是可行的吗?可以吗
A-B-C
\
L1
D-E-F
\
L1'-L2
变成:
A-D-E-B-C-F-L1-L2
虽然仍有可能从外部回购拉动和退出?
我知道这是积极的,可能不是最好的主意;但我试图避免维护另一个git repo,这几乎是所有修补源的浅层副本,并且没有历史记录。
答案 0 :(得分:0)
我可能会提到git subtree解决方案。在我的发行版中,它可以在其他git子命令中使用,您可能需要从contrib中获取它。它与git subtree merge
不同,可能提供更多"无缝"最终用户和存储库管理员的经验。