svnadmin dump

Posted on Posted in 2.svnadmin

名称

svnadmin dump              — 将文件系统的内容转储到标准输出。

概要

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

                     

描述

使用“dumpfile”可移植格式将文件系统的内容转储到标准输出,将反馈发送到标准错误,导出的修订版本从LOWERUPPER。如果没有提供修订版本,会导出所有的修订版本树,如果只提供LOWER,导出一个修订版本树,通常的用法见“版本库数据的移植”一节

缺省情况下,Subversion的转储流包含了一个包括所有文件和目录的单独修订版本(请求的修订版本范围的第一个),后面是其它的只包含本修订所修改的文件和目录的修订版本(请求范围的其它版本)。对于修改的文件,转储文件包括所有的内容和属性,对于目录,包括所有的属性。

有一对有用的选项可以改变转储文件产生的方式,第一个是--incremental,使得第一个修订版本只显示其修改的文件和目录,而不是整个目录树,就像转储文件中其它的修订版本。这对产生一个准备导入到已经有数据的版本库时非常有用。

第二个有用的选项是--deltas,这个选项导致svnadmin dump不会保留修改文件的所有内容,而只是记录修改的部分。这样减少(有些情况下是非常大的)了svnadmin dump产生的转储文件的大小。然而,也有缺点—增量转储文件需要更多的CPU来创建,也不可以用svndumpfilter操作,也不如非增量文件容易被如gzipbzip2等第三方工具压缩。

选项

--revision (-r) REV --incremental --quiet (-q) --deltas

                     

例子

转储整个版本库:

$ svnadmin dump /usr/local/svn/repos SVN-fs-dump-format-version: 1 Revision-number: 0 * Dumped revision 0. Prop-content-length: 56 Content-length: 56 …

           

从版本库增量转储一个单独的事务:

$ svnadmin dump /usr/local/svn/repos -r 21 --incremental  * Dumped revision 21. SVN-fs-dump-format-version: 1 Revision-number: 21 Prop-content-length: 101 Content-length: 101