1RSVNDUMP(1)                      User commands                     RSVNDUMP(1)
2
3
4

NAME

6       rsvndump - Dumps a remote Subversion repository
7

SYNOPSIS

9       rsvndump [options] url
10

DESCRIPTION

12       rsvndump dumps a Subversion repository without having actual access to
13       the repository data, as required by the "svnadmin(1) dump" command.
14
15       If invoked with valid options, rsvndump will print a dump file to
16       stdout and optional progress to stderr.
17
18       Since rsvndump is also able to dump subdirectories of a repository, the
19       revision numbers in the dump don’t neccessarily reflect the original
20       revision numbers. For more information on this, please refer to the
21       REVISION NUMBERS section.
22
23       There are also some additional differences to a "normal" dump generated
24       by svnadmin(1), which are listed in DIFFERENCES TO SVNADMIN DUMP.
25

OPTIONS

27       Most of the options can also be found in svnadmin(1) and svn(1) and
28       should be also semantically equivalent, unless not stated otherwise.
29
30       -h, --help
31           Print a nice help screen
32
33       -q, --quiet
34           Don’t print any progress
35
36       -v, --verbose
37           Print detailed progress, similar to "svnadmin(1) load".
38
39       -u, --username username
40           Username for repository authentication.
41
42       -p, --password password
43           Password for repository authentication.
44
45       -r, --revision X or X:Y
46           Specifiy the revision (or revision range) that should be dumped.  X
47           and Y can either be a number or "HEAD". The default revision range
48           is "0:HEAD", i.e. the complete revision history.
49
50           In contrast to svnadmin(1), dumps that were generated using this
51           option can always be loaded into a new repository, (unless
52           --incremental is given, of course). However, the resulting dump may
53           not exactly represent the original history. Please take a look at
54           DIFFERENCES TO SVNADMIN DUMP for further information.
55
56       --deltas
57           Use text deltas instead of full texts in dump output
58
59       --incremental
60           Create incremental output, suitable for concatenation. This results
61           in a dump that does not contain a dumpfile header and no full base
62           revision if the revision range does not start at 0.
63
64       --no-auth-cache
65           Don’t cache the authentication tokens provided by the user, e.g.
66           username and password, or manual SSL certificate validation.
67
68       --non-interactive
69           Instead of prompting, the program will exit with an error.
70
71       --prefix prefix
72           Prepend a given prefix to every node which is dumped. The first
73           revision dumped will also contain the paths neccessary to create
74           the prefix.
75
76           Please note that is assumed that prefix is really just a prefix
77           string, with directories seperated by "/". Therefore you need to
78           append a "/" at the end of the string to make it a directory. For
79           example, a prefix of myrepo/old_ might result in the following
80           layout:
81
82           myrepo
83            |- old_branches
84            |- old_tags
85            |- old_trunk
86
87       --keep-revnums
88           Keep the revision numbers in the output in sync with the
89           repository. This is done by inserting empty revisions for padding
90           if neccessary.
91
92       --no-incremental-header
93           Don’t print the dumpfile header if --incrementals is given and the
94           revision range is not "0:X". This is useful if you really want to
95           append an incremental dumps to an existing file.
96

REVISION NUMBERS

98       The revision numbers in the dump output depend on the options and the
99       path that are given to rsvndump. If you are dumping the root of a
100       repository, you don’t need to worry about revision numbers out of sync,
101       of course. If you are dumping a subdirectory, only the revisions that
102       changed this subdirectory will occur in the dump output. The revision
103       numbers in the dump are strictly sequential, so they will differ from
104       the original ones.
105
106       If you need the keep the revision numbers from the original repository
107       (e.g, if a bug tracker depends on them), you can use the --keep-revnums
108       flag. It padds revisions that did not change the subdirectory with
109       empty revisions. They don’t have an author or date property, but
110       contain the log message "This is an empty revision for padding.".
111

DIFFERENCES TO SVNADMIN DUMP

113       The output generated by rsvndump may differ from the one generated by
114       svnadmin(1) because rsvndump may handle file or directory copies
115       different than svnadmin(1). The latter does not support dumping of
116       subdirectories within a repository out of the box. Instead, the
117       svndumpfilter(1) tool will do this job. However, sometimes
118       subdirectories cannot be filtered exclusively with svndumpfilter(1)
119       because they have been copied from another place.
120
121       Since rsvndump has been designed to allow dumps of subdirectories if
122       your repository access is limited to this subdirectory (in fact, that
123       was the primary reason this project exists), it will not access other
124       subdirectories than the one you want to dump. Example given, dumping a
125       branch will most likely not result in the full history of the branch as
126       it might have been copied from trunk at some point in time.
127
128       Thus, rsvndump will generally replace a copy action by a simple add
129       operation if both of the following conditions are true:
130
131       ·   The source of the copy is outside the direcotry tree which is being
132           dumped
133
134       ·   The source of the copy is not included in the dump because the
135           revision range has been limited using the --revision flag
136
137       The second condition is without effect if the --incremental flag is
138       given, so that incremental dumps yield the same result as normal dumps.
139
140       Maybe I should also note that the dump will only contain the
141       repository’s UUID if the following conditions are true:
142
143       ·   The root of the repository is being dumped
144
145       ·   There is no user prefix
146

ENVIRONMENT VARIABLES

148       TMPDIR
149           If TMPDIR is set, it specifies the directory to use for temporary
150           files. Otherwise, /tmp is used.
151

EXIT STATUS

153       0 on success, 1 on failure. Any error messages will be printed to
154       stderr.
155

SEE ALSO

157       svn(1), svnadmin(1), svndumpfilter(1)
158

COPYING

160       Copyright © 2008-2009 Jonas Gehring <jonas.gehring@boolsoft.org>.
161       Released under the GNU General Public License.
162
163
164
165rsvndump 0.5.3                    03/24/2010                       RSVNDUMP(1)
Impressum