git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] svn-fe: recognize v3 dumps
@ 2010-11-18  5:00 Jonathan Nieder
  2010-11-18  5:02 ` [PATCH 1/2] vcs-svn: Error out for " Jonathan Nieder
                   ` (2 more replies)
  0 siblings, 3 replies; 40+ messages in thread
From: Jonathan Nieder @ 2010-11-18  5:00 UTC (permalink / raw)
  To: git; +Cc: Ramkumar Ramachandra, Sverre Rabbelier, David Barr

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

^ permalink raw reply	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2011-03-06 12:29 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-11-18  5:00 [PATCH 0/2] svn-fe: recognize v3 dumps Jonathan Nieder
2010-11-18  5:02 ` [PATCH 1/2] vcs-svn: Error out for " Jonathan Nieder
2010-11-18  5:03 ` [PATCH 2/2] vcs-svn: Allow simple v3 dumps (no deltas yet) Jonathan Nieder
2010-11-20  0:45 ` [RFC/PATCH 0/15] svn-fe: support for property deltas (but not text " Jonathan Nieder
2010-11-20  0:46   ` [PATCH 01/15] vcs-svn: Check for errors from open() Jonathan Nieder
2010-11-20  0:46   ` [PATCH 02/15] vcs-svn: Eliminate node_ctx.srcRev global Jonathan Nieder
2010-11-20  0:46   ` [PATCH 03/15] vcs-svn: Eliminate node_ctx.mark global Jonathan Nieder
2010-11-20  0:47   ` [PATCH 04/15] vcs-svn: Unclutter handle_node by introducing have_props var Jonathan Nieder
2010-11-20  0:48   ` [PATCH 05/15] vcs-svn: Use mark to indicate nodes with included text Jonathan Nieder
2010-11-20  0:49   ` [PATCH 06/15] vcs-svn: handle_node: Handle deletion case early Jonathan Nieder
2010-11-20  0:49   ` [PATCH 07/15] vcs-svn: Replace = Delete + Add Jonathan Nieder
2010-11-20  0:51   ` [PATCH 08/15] vcs-svn: Combine repo_replace and repo_modify functions Jonathan Nieder
2010-11-20  0:52   ` [PATCH 09/15] vcs-svn: Delay read of per-path properties Jonathan Nieder
2010-11-20  0:52   ` [PATCH 10/15] vcs-svn: Reject path nodes without Node-action Jonathan Nieder
2010-11-20 14:53     ` Jonathan Nieder
2010-11-20  0:53   ` [PATCH 11/15] vcs-svn: More dump format sanity checks Jonathan Nieder
2010-11-30 19:48     ` Jonathan Nieder
     [not found]       ` <20101205091605.GA4332@burratino>
2010-12-05  9:32         ` [PATCH 2/2] vcs-svn: fix intermittent repo_tree corruption Jonathan Nieder
2010-12-05  9:33       ` [PATCH jn/svn-fe-maint 0/2] " Jonathan Nieder
2010-12-05  9:35         ` [PATCH 1/2] treap: make treap_insert return inserted node Jonathan Nieder
2010-12-06 22:19     ` [PATCH jn/svn-fe] vcs-svn: Allow change nodes for root of tree (/) Jonathan Nieder
2010-12-06 23:12       ` Jonathan Nieder
2010-11-20  0:53   ` [PATCH 12/15] vcs-svn: Make source easier to read on small screens Jonathan Nieder
2010-11-20  0:54   ` [PATCH 13/15] vcs-svn: Split off function for handling of individual properties Jonathan Nieder
2010-11-20  0:54   ` [PATCH 14/15] vcs-svn: Sharpen parsing of property lines Jonathan Nieder
2010-11-20  0:57   ` [PATCH 15/15] vcs-svn: Implement Prop-delta handling Jonathan Nieder
2010-11-20 19:21   ` [WIP/PATCH 0/8] svn-fe: support for text deltas Jonathan Nieder
2010-11-20 19:22     ` [PATCH 1/8] svn-fe: Prepare for strbuf use Jonathan Nieder
2010-11-20 19:25     ` [PATCH 2/8] vcs-svn: Internal fast_export_save_blob helper Jonathan Nieder
2010-11-20 19:25     ` [PATCH 3/8] vcs-svn: Introduce repo_read_path to check the content at a path Jonathan Nieder
2011-03-06 12:29       ` Jonathan Nieder
2010-11-20 19:26     ` [PATCH 4/8] vcs-svn: Introduce fd_buffer routines Jonathan Nieder
2010-11-20 19:27     ` [PATCH 5/8] vcs-svn: Read delta preimage from file descriptor Jonathan Nieder
2010-11-20 19:28     ` [PATCH 6/8] vcs-svn: Let caller set up sliding window for delta preimage Jonathan Nieder
2010-11-20 19:31       ` Jonathan Nieder
2010-11-20 19:29     ` [PATCH 7/8] vcs-svn: Teach line_buffer about temporary files Jonathan Nieder
2010-11-20 19:29     ` [PATCH 8/8] vcs-svn: Implement text-delta handling Jonathan Nieder
2010-12-04 17:34       ` [PATCH 10/8] vcs-svn: Consume whole preimage when applying deltas Jonathan Nieder
2010-11-20 19:30     ` [PATCH 9/8] svn-fe: Test script for handling of dumps with --deltas Jonathan Nieder
2010-12-04 17:29       ` Jonathan Nieder

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).