发布于 2019-03-23 21:09:51
到目前为止,我的经验是,jiri允许您级联依赖项,因此这比Repo更进一步(在这里,你可以包括其他清单,但是在fetch->include方式中级联它们可能更棘手)。
Repo允许您设置一个根清单,它涵盖了几乎所有的项目+允许本地包含。每个项目都是一个独立的git存储库。单个回购清单是一个自成一体的实体,它自行描述整个项目结构。
Jiri允许你合并几个清单。每个“子存储库”都可以定义自己的git存储库结构。
在顶级清单(签出清单或.jiri_manifest)中,指定要包括哪些项目清单。然后,每个项目清单都可以指定自己的依赖项。下面是[医]紫红色项目的一些实例;看看[医]紫红色清单文件:它从topaz项目中提取名单/黄玉,然后将舱单/橄榄岩作为自己的依赖项导入到特定的GIT中。
您不能很容易地使用repo创建这种级联依赖关系,但这里也有一个缺点: jiri给您带来了很大的灵活性,但是可能会转向维护负担,特别是在某个时候,您的任何代码都依赖于相同的子组件,但是不同的SHA(并且您可能由于多种原因而最终陷入这种情况)。
不管您的项目有多复杂,我通常都会建议您使用回购。这在非常大的项目(Android,集成了1100多个项目)方面有着良好的历史记录。伊日在纸面上看上去很棒,但如果你不及时解决你的依赖问题,可能会适得其反。
https://stackoverflow.com/questions/46649037
复制相似问题