当前,我正在一个项目上,该项目要求我使用几个开源库。现在,我希望能够执行以下操作:
我已经考虑过使用Git子模块,但这不允许我对库进行更改。
我已经考虑过分叉每个库,并将这些分叉添加为子模块(但这不是理想的选择,因为这将需要我为每个分叉建立一个存储库)。
我已经考虑将所有存储库下载到一个,这样我就可以随意对其进行修改,并将它们存储在一个存储库中,但这不能使我能够从第三方存储库中提取上游更改。 / p>
有什么办法可以使我完成所有三个点,而不必选择这些选项之一?
答案 0 :(得分:0)
使用Git,没有其他更好的方法。
选项1:git子模块
检查条件1和2,但不检查3。假设第三方不在您的控制范围内,则您无法强制执行条件3。
选项2:git fork了第三方子模块的超项目
检查所有条件。符合条件3的条件是,您可以从第三方子模块远程获取,本地提交/本地推送(即,推送到公司/项目域内子模块的超级项目)。
选项3:将所有文件放入第三方的大型存储库中,创建此熔炉的存储库
不选中选项1。
最后,您已经有了答案,我也不会超出这个范围,否则问题将趋向于基于意见。