archive: handle commits with an empty tree
[git/jnareb-git.git] / contrib / svn-fe / svn-fe.txt
blob1128ab2ce46c42c5b5c9bf2adb3425ebc2720944
1 svn-fe(1)
2 =========
4 NAME
5 ----
6 svn-fe - convert an SVN "dumpfile" to a fast-import stream
8 SYNOPSIS
9 --------
10 [verse]
11 mkfifo backchannel &&
12 svnadmin dump --deltas REPO |
13         svn-fe [url] 3<backchannel |
14         git fast-import --cat-blob-fd=3 3>backchannel
16 DESCRIPTION
17 -----------
19 Converts a Subversion dumpfile into input suitable for
20 git-fast-import(1) and similar importers. REPO is a path to a
21 Subversion repository mirrored on the local disk. Remote Subversion
22 repositories can be mirrored on local disk using the `svnsync`
23 command.
25 Note: this tool is very young.  The details of its commandline
26 interface may change in backward incompatible ways.
28 INPUT FORMAT
29 ------------
30 Subversion's repository dump format is documented in full in
31 `notes/dump-load-format.txt` from the Subversion source tree.
32 Files in this format can be generated using the 'svnadmin dump' or
33 'svk admin dump' command.
35 OUTPUT FORMAT
36 -------------
37 The fast-import format is documented by the git-fast-import(1)
38 manual page.
40 NOTES
41 -----
42 Subversion dumps do not record a separate author and committer for
43 each revision, nor a separate display name and email address for
44 each author.  Like git-svn(1), 'svn-fe' will use the name
46 ---------
47 user <user@UUID>
48 ---------
50 as committer, where 'user' is the value of the `svn:author` property
51 and 'UUID' the repository's identifier.
53 To support incremental imports, 'svn-fe' puts a `git-svn-id` line at
54 the end of each commit log message if passed a URL on the command
55 line.  This line has the form `git-svn-id: URL@REVNO UUID`.
57 The resulting repository will generally require further processing
58 to put each project in its own repository and to separate the history
59 of each branch.  The 'git filter-branch --subdirectory-filter' command
60 may be useful for this purpose.
62 BUGS
63 ----
64 Empty directories and unknown properties are silently discarded.
66 The exit status does not reflect whether an error was detected.
68 SEE ALSO
69 --------
70 git-svn(1), svn2git(1), svk(1), git-filter-branch(1), git-fast-import(1),
71 https://svn.apache.org/repos/asf/subversion/trunk/notes/dump-load-format.txt