2

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

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

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

  1. 转到本地签出的 svn 存储库
  2. 发出一些command可能svnadmin
  3. svn admin 连接到远程 SVN,那些当前文件和本地文件夹中的文件只需从一个磁盘复制到另一个磁盘,并且只下载不在本地结帐中的文件。

这是科幻还是现实?

4

2 回答 2

2

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

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

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

于 2013-09-05T20:41:55.210 回答
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/

于 2013-09-05T20:30:52.643 回答