[PATCH 0/2] svn-fe: recognize v3 dumps

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This mini-series is part of an effort to get David and Ram's svn
import work integrated into mainline git[1].  It fixes a longstanding
svn-fe bug that bit me a few times: when fed v3 (= --deltas) dumps,
current svn-fe produces nonsense --- a directory full of svn-format
deltas --- rather than erroring out.  For example:

	; git init
	; svnrdump dump -r1:10 http://cvs2svn.tigris.org/svn/cvs2svn |
		svn-fe |
		git fast-import
	; git show HEAD:trunk/README
	SVN^@^@^@M-^N^D^CM-^N^DM-^@M-^N^DThis is a program to convert a CVS repository to Subversion.

After this series, svn-fe would instead die with the message "fatal:
text and property deltas not supported".

Ram and David: this code will probably look familiar.  It is roughly
based on David's "vcs-svn: Extend svndump to parse version 3 format"
from about a month ago[2].  I would be particularly interested in
hearing whether this still seems sensible in design and execution,
so it can be deployed to a wider audience with your blessing if
appropriate.

Thoughts?  Improvements?

David Barr (1):
  vcs-svn: Allow simple v3 dumps (no deltas yet)

Jonathan Nieder (1):
  vcs-svn: Error out for v3 dumps

 t/t9010-svn-fe.sh |  403 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 vcs-svn/svndump.c |   28 ++++-
 2 files changed, 406 insertions(+), 25 deletions(-)

[1] http://thread.gmane.org/gmane.comp.version-control.git/160875

The dumpfile v3 code proper has been proving more trouble to review
than anticipated.  Mostly because it involves tracking down details of
the svn repository model that aren't clearly documented in any obvious
place:

 * What do the five node actions (replace, delete, add, modify,
   unknown) represent?  How can we deal with them without repeating
   the same code four times?

 * Which actions preserve properties?  Which preserve text?

[2] http://thread.gmane.org/gmane.comp.version-control.git/159117/focus=159114
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]