从Starteam迁移到SVN

Migration from Starteam to SVN

本文关键字:SVN 迁移 Starteam      更新时间:2023-10-16

我们的主要项目之一是从Starteam迁移到SVN。主项目中的子项目共享多个头文件和源文件。由于Starteam支持引用,因此我们很容易修改共享的头文件/源文件并将其签入。Starteam过去负责在所有子项目中更新它。然后我们习惯于构建所有依赖于共享文件的子项目。这曾经是我们在Starteam的情况下更新共享文件的常规过程。

当我们迁移到SVN时,它不支持引用,并且更新其中一个项目中的任何共享文件不会在所有其他项目文件夹中更新。为了克服这个问题,我们将共享文件分开并将它们放在一个公共位置,并修改了Visual Studio设置,以便所有项目都从同一位置访问共享文件。对于一些子项目,这个计划一切顺利。但是在其中一个子项目中遇到了问题。问题如下:

为了我们的示例,我将采用3个共享"a.h","b.h","a.cpp"和"b.cpp"的子项目。"a.cpp"包括"a.h","b.cpp"包括"b.h"。项目 1 和 2 共享所有这些文件,所以没有问题,但项目 3 只共享"a.cpp"、"b.h"和"b.cpp"。"a.h"是项目 3 的本地内容。当我在项目 3 中包含"b.h"目录时,Visual Studio 将共享的"a.h"包含在"a.cpp"中,而不是项目 3 的本地文件"a.h"。我已经在互联网上搜索了Visual Studio中的一个选项,其中只能包含一个标头而不是整个目录,但无法获得一个。

请求大家为我提供更好的解决方案,以包含单个头文件而不是整个目录。

提前谢谢你。

当我们迁移到SVN时,它不支持引用,并且更新其中一个项目中的任何共享文件不会在所有其他项目文件夹中更新。

唰唰?!您必须:

  • 至少在SVNBook中阅读和摸索SVN外部,也许在这里
  • 将所有引用转换为外部(文件或目录类型)

你可以在没有任何VS特定的技巧的情况下使用它,在纯粹的Subversion功能上。