我正在将客户的 SourceSafe 存储库(3 个项目)迁移到 SVN,其中两个项目共享源文件。(这些项目是独立的产品 - 具有不同的名称和发布版本等)
SVN 解决了这个缺点吗?人们通常如何处理这种情况?
我知道/能想到的选项
对 SVN 使用 external 或 extern 或其他任何东西。我听说由于各种原因这不是一个好选择
创建一个包含源的新项目(可能称为共享)。这样做的问题是我们仍然必须获取该代码(它不是库)并以某种方式将其导入项目中。可以证明它与上述问题相同,并且引入了额外产品/项目的开销。
只需签入两个存储库中的文件并交叉更新它们。这要求开发人员了解共享并记住签入。我想我可以编写一个脚本来检查所有已知的共享文件并在需要时更新它们。
为共享的两个项目提供一个存储库。这让我不得不创建一个包含两者的顶级项目/存储库,这是一个标签问题。我真的不想给顶级伪项目贴上标签。(标签、主干和分支的东西并不是我想要的。)
我可能会选择最后一个选项。
还有其他意见吗?