我正在研究在monorepo中将一个大型Monolith应用程序拆分为几个微服务。Monolith处于一个大型Git存储库中,其提交历史可追溯到2010年。
对于每个新的微服务,我需要从不同目录中提取几个文件,同时保留其历史记录。我已经尝试过,git subtree split
但是当来自不同目录的文件位于该提交中时,它将提交翻倍。我已经尝试过ajdruff / git-splits,但是花了30分钟才能运行500个步骤,还有大约15000个步骤可以执行,因此它将至少运行16个小时。
有没有其他选择可以用上述大小的存储库更快地做到这一点?
编辑:我知道我需要的文件是很新的(在2018年添加)。也许有可能为git-splits
2018年以来的历史做些什么?我可以将其追溯到指定的提交,在这些提交中首先添加了这些文件。
解决方案是newren / git-filter-repo。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句