我是否可以将远程SVN迁移到本地磁盘而无需在远程服务器上导出dmp文件?

时间:2013-09-05 19:49:55

标签: svn migrate

到目前为止,我通过转到远程服务器(Unfuddle或类似的)迁移SVN存储库,将存储库转储到.dmp文件中,然后通过svnadmin load命令将其加载到我的本地SVN。

现在,因为我的硬盘上已经检出了大多数文件(每个文件的当前版本),并且由于这个项目相当大,我可以跳过远程转储存储库并从我的checkout文件夹发出迁移命令到我的本地SVN?

例如,我可以执行以下操作,而不是将存储库转储到大型DMP文件中:

  1. 转到本地签出的svn存储库
  2. 可能会向command
  3. 发布一些svnadmin
  4. svn admin连接到远程SVN,那些当前文件和本地文件夹中的文件只是从一个磁盘复制到另一个磁盘,只下载不在本地结账的文件。
  5. 这是SF还是现实?

2 个答案:

答案 0 :(得分:2)

您无法从工作副本加载存储库,因为它没有修订历史记录。

正如TridenT所指出的那样,您可以从自上次转储操作以来提交的“远程”存储库转储修订,然后将这些修订加载到本地副本中。

另一种选择是使用svnsync将提交给远程存储库的所有更改推送回本地更改。

答案 1 :(得分:1)

您只能使用-r开关转储最新版本范围。

svnadmin dump REPOS_PATH [-r LOWER[:UPPER]] [--incremental] [--deltas]

然后您可以在新存储库中加载此增量。

参考:
http://svnbook.red-bean.com/en/1.7/svn.ref.svnadmin.c.dump.html

例:
http://www.vioan.ro/wp/2007/07/31/dumprestore-for-subversion-repository/