使用开发库时的源代码控制

时间:2013-08-01 07:12:17

标签: git version-control versioning

我正处于同时开发两个项目的情况,第二个项目由第一个项目使用,但其他项目可以重复使用。出于这个原因,我一直把它们放在两个单独的回购中。不过,我可以预见到这会给某个地方带来巨大的麻烦。我担心的是我将对项目1和2进行多次并行提交,然后被迫恢复到项目1中的早期提交,但发现我还需要还原项目2以便甚至编译项目1.跟踪这些由于这个原因,单独回购中的两个项目不太理想,但我认为我不应该在项目1的回购中跟踪项目2。对此有什么更好的解决方案?

Using source controlled libraries in source controlled projects

这个特殊问题建议使用mercurial subrepos。这听起来像是一个好主意(因为它可行,但被mercurial警告)。不幸的是,我正在使用git,我不知道任何等价物。

1 个答案:

答案 0 :(得分:1)

Meritial在Git中的subrepos的最近迭代是Git submodules,它有自己的问题和边角(但无论如何主要的repo和模块在每个变更集中都有硬链接,因此你总是可以将整个存储库恢复到早期的确切状态)和Git subtree可能是considered作为改进(但在常识上相同)功能的良好替代方案

关于使用Pardus的Git子树的好博文:Modular git with "git subtree"