From: Andrew Sayers <andrew-git@pileofstuff.org>
To: Git Mailing List <git@vger.kernel.org>
Cc: David Barr <davidbarr@google.com>,
Jonathan Nieder <jrnieder@gmail.com>,
Ramkumar Ramachandra <artagnon@gmail.com>
Subject: [PATCHv2] Add details about svn-fe's dumpfile parsing
Date: Sun, 15 Apr 2012 17:10:46 +0100 [thread overview]
Message-ID: <4F8AF306.8070804@pileofstuff.org> (raw)
The documentation for the SVN dumpfile format says that "property key/value
pairs may be interpreted as binary data in any encoding by client tools".
Documenting svn-fe's interpretation helps authors of related tools, while
explaining limitations helps ordinary users import their SVN repositories.
The "INPUT FORMAT" section is aimed at authors of tools that interact with
svn-fe, so it particularly addresses assumptions that authors might make after
dealing with svn itself.
The "BUGS" section is aimed at ordinary users, so it only explains what readers
need to know when importing a repository. In particular, users don't need to
know that other characters in the range 0x01-0x1F are imported correctly, even
though they were all disabled in Subversion 1.2.0. The text in this section is
based largely on an example sent by Jonathan Nieder, with minor changes to suit
the surrounding style.
Signed-off-by: Andrew Sayers <andrew-git@pileofstuff.org>
---
contrib/svn-fe/svn-fe.txt | 13 +++++++++++++
1 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/contrib/svn-fe/svn-fe.txt b/contrib/svn-fe/svn-fe.txt
index 1128ab2..3872b9d 100644
--- a/contrib/svn-fe/svn-fe.txt
+++ b/contrib/svn-fe/svn-fe.txt
@@ -32,6 +32,13 @@ Subversion's repository dump format is documented in full in
Files in this format can be generated using the 'svnadmin dump' or
'svk admin dump' command.
+Unlike Subversion, 'svn-fe' interprets property key/value pairs as
+null-terminated binary strings. This means it will accept content
+that Subversion normally wouldn't produce (such as filenames
+containing tab characters) or would refuse to parse (such as usernames
+containing Latin-1 characters). However, like Subversion it will
+handle newlines incorrectly in filenames (see BUGS below).
+
OUTPUT FORMAT
-------------
The fast-import format is documented by the git-fast-import(1)
@@ -65,6 +72,12 @@ Empty directories and unknown properties are silently discarded.
The exit status does not reflect whether an error was detected.
+Due to limitations in the Subversion dumpfile format, 'svn-fe' does
+not support filenames with newlines. 'svn add' has forbidden such
+filenames since version 1.2.0, but some historical repositories still
+contain them. An import can appear to succeed and produce incorrect
+results when such pathological filenames are present.
+
SEE ALSO
--------
git-svn(1), svn2git(1), svk(1), git-filter-branch(1), git-fast-import(1),
--
1.7.1
next reply other threads:[~2012-04-15 16:10 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-15 16:10 Andrew Sayers [this message]
2012-04-16 20:06 ` [PATCHv2] Add details about svn-fe's dumpfile parsing Junio C Hamano
2012-04-16 21:35 ` Andrew Sayers
2012-04-16 21:39 ` Jonathan Nieder
2012-04-16 22:15 ` Andrew Sayers
2012-04-16 22:27 ` Jonathan Nieder
2012-07-23 1:37 ` Jonathan Nieder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F8AF306.8070804@pileofstuff.org \
--to=andrew-git@pileofstuff.org \
--cc=artagnon@gmail.com \
--cc=davidbarr@google.com \
--cc=git@vger.kernel.org \
--cc=jrnieder@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).