2012-04-22 92 views
9

所以我有我想要添加到新的存储库的两个文件夹,但他们拒绝加入,因为他们已经在版本控制之下。我删除了这些文件夹及其子文件夹中的所有.svn文件夹,但SVN仍然知道。我怎样才能看到他们认为他们属于哪个回购部门,告诉他们不要在那里,并将他们放入新的回购中,而不删除他们或不必移动他们?SVN认为文件已经在版本控制之下

回答

17

如果您已在本地工作副本中删除所有.svn文件夹,它不应该再版本。请注意,SVN的旧版本,请在所有文件夹中创建一个隐藏的文件夹.svn,不仅在根文件夹或子文件夹直接。

您也可以执行export命令在目标目录中创建完整的非版本化副本,以避免手动删除.svn文件夹。

,可能会导致这个错误的另一个问题是,在新的版本库,你已经有文件或目录具有相同名称的目录/文件您要添加。 一个好的做法是将文件导入空目录以避免名称冲突。

因此,要总结,过程会是这样的:从您目前的资料库

  • 导出文件或删除所有.svn文件夹手动
  • 在新/目标存储库中创建一个空文件夹
  • 执行从目标存储库文件夹到本地副本的结帐
  • 执行提交以添加所有新文件
+0

导出和导入工作更快,然后试图删除所有'.svn'文件 – Biotox 2013-02-21 18:35:17

2

如果这些文件已经在版本控制中,则删除.svn文件夹将不起作用。以下是您必须执行的操作:

(1)删除所有有问题或您以前已从中删除.svn文件夹的文件夹。

(2)执行SVN更新中重新创建这些文件夹和BACK得到的一切放进去(即使你会在接下来的步骤中删除它们)。

(3)现在,有关删除文件夹。

(4)执行SVN提交,它将提交从存储库中删除这些文件夹。现在,他们已从存储库中删除,只要你愿意。 (5)您现在可以再次创建文件夹并执行任何您想要的操作 - 从它们创建新的SVN存储库;或者将它们重新添加到现有的存储库中。

似乎步骤(1) - (2)是多余且不必要的;但为了安全起见,你应该这样做。

相关问题