我收到了一个 SVN 转储文件,其中包含很多页面(所有 HTML 页面,以及所有服务器端代码)。我想把它们分开,但不知道如何做到这一点。
我在 Windows 上,根本没有 SVN。
亚当巴特勒的答案几乎是完美的,但我遇到了一些问题,所以这是我的工作解决方案:
在 DOS 窗口中(使用ConEmu更好)
First cd to your svn folder tools
mkdir d:\dumpRepo
svnadmin create d:\dumpRepo
type [PATH TO DUMP].dump | svnadmin load d:\dumpRepo
svn export file:///d:/dumpRepo d:\Exportedfiles
svn 导出的文件 URI 仅包含常规 / 非常重要
这里有一个简单的指南 - 它适用于 linux/unix,但可以在 dos 提示符下工作: http ://www.mhermans.net/get-files-from-svn-dump.html
首先 - 下载命令行 svn http://subversion.apache.org/packages.html#windows 这可能是一个挑战,但最终你会在某个 bin 文件夹中拥有 svn.exe 和 svnadmin.exe。一旦你有了它,它就会一帆风顺:
从dos框:
mkdir c:\backup_repo
[PATH TO SVN]\svnadmin.exe init c:\backup_repo
type [PATH TO DUMP].dump | [PATH TO SVN]\svnadmin.exe load
[PATH TO SVN]\svn.exe export "file:///C:\repo" c:\exportdest
高温高压
假设您有完整转储而不是增量转储,您可以轻松提取文件。它们与一小段标题信息(包括文件的大小)一起存储,然后是文件本身。
如果你有一个增量转储(你有文件的初始版本,然后只有增量)(即提交时对每个文件的更改)你有一个更困难的问题。但是,有一个简单的解决方案:
安装VisualSVN Server或http://www.ubersvn.com/并使用它来导入转储。然后使用TortoiseSVN之类的工具查看历史并单独导出每个文件(即,您刚刚创建了转储的 svn 存储库的副本,现在可以像任何 subversion 用户一样访问它)。