我们的主要项目之一是从 Starteam 迁移到 SVN。主项目中的子项目共享多个头文件和源文件。由于 Starteam 支持引用,因此我们很容易修改共享的头文件/源文件并将其签入。 Starteam 过去负责在所有子项目中更新它。然后我们用来构建所有依赖共享文件的子项目。这曾经是我们在 Starteam 的情况下更新共享文件的常规流程。
当我们迁移到 SVN 时,它不支持引用,并且更新其中一个项目中的任何共享文件不会在所有其他项目文件夹中更新。为了克服这个问题,我们分离了共享文件并将它们放在一个公共位置并修改了 Visual Studio 设置,以便所有项目从同一位置访问共享文件。对于一些子项目,这个计划一切顺利。但是遇到了一个子项目的问题。问题如下:
对于我们的示例,我将采用 3 个共享“ah”、“bh”、“a.cpp”和“b.cpp”的子项目。“a.cpp”包括“ah”,“b.cpp”包括“bh”。项目 1 和 2 共享所有这些文件,所以没问题,但项目 3 仅共享“a.cpp”、“bh”和“b.cpp”。“啊”是项目 3 的本地文件。当我在项目 3 中包含“bh”目录时,Visual Studio 会将共享的“啊”包含到“a.cpp”中,而不是项目 3 的本地文件“啊”。我在互联网上搜索了 Visual Studio 中的一个选项,其中只能包含一个标题而不是整个目录,但无法获得一个。
请求大家为此迁移提供更好的解决方案,或者提供一些 Visual Studio 选项以包含单个头文件而不是整个目录。
提前谢谢你。