如何在现有项目的基础上创建SVN版本控制?

如何在现有项目的基础上创建SVN版本控制?,svn,tortoisesvn,Svn,Tortoisesvn,在工作中,我们有一个非常大的项目(约30000个文件),由Borland StarTeam源代码控制系统管理。我们希望迁移到SVN,但在迁移过程中有一些障碍。最重要的一个问题是在所有开发人员的虚拟机上设置存储库 有两种基本方法可以在硬盘上设置新的SVN版本文件夹。(在Windows上,使用TortoiseSVN。)您可以从存储库中签出SVN项目,或者获取现有代码并将其上载到(可能是空的)存储库中,在执行这些操作后,您将得到一个包含SVN元数据文件夹的文件夹树。但是我们有几十个开发人员,他们每个人

在工作中,我们有一个非常大的项目(约30000个文件),由Borland StarTeam源代码控制系统管理。我们希望迁移到SVN,但在迁移过程中有一些障碍。最重要的一个问题是在所有开发人员的虚拟机上设置存储库

有两种基本方法可以在硬盘上设置新的SVN版本文件夹。(在Windows上,使用TortoiseSVN。)您可以从存储库中签出SVN项目,或者获取现有代码并将其上载到(可能是空的)存储库中,在执行这些操作后,您将得到一个包含SVN元数据文件夹的文件夹树。但是我们有几十个开发人员,他们每个人都已经有了整个项目的副本。我们真正想做的是将其上传一次,然后运行某种“将此现有文件夹与[任何地方]的存储库关联并同步”操作


SVN支持这个吗?如果是这样的话,如何使用OrtoiseSVN进行操作,或者是否需要其他工具?

在硬盘上的现有文件夹上右键单击“SVN签出…”,该文件夹的内容与要签出的存储库相同。Tortoise在本地找到的每个文件都会首先与存储库中的版本进行比较,如果校验和匹配(我假设它正在进行某种校验和比较),则不会下载它,而是在校验协议中将其标记为“版本化”,并跳到下一个文件

最终的结果应该是一个很好的结帐。 据我所知,与存储库中的版本不匹配的文件将被覆盖,并且无法恢复


在你现在的处境下,这对我来说一直很有效;确保您有数据备份,或者先在较小的子集上进行尝试。

有这么简单吗?已经有一段时间了,但我似乎记得以前尝试过这样做,但没有成功。也许从那时起它就被修复了?+1我只是通过对SVN中的一个现有目录进行SVN导出来测试这一点,这样它就不包含.SVN元数据了。然后,在新导出的目录中,我从SVN对同一目录进行了SVN签出。每个条目都被列为“版本化…”而不是通常的“添加…”如果有任何区别,我使用的是OrtoiseSVN 1.6.6.17943。谢谢!我会在我们的项目上测试,如果它有效,我会接受这个答案。