[sorry for screwing up the subject]
On Aug 8, 2011, at 11:22 AM, Paul Davis wrote:
> Nice! Any hints you have about validating SVN->Git conversions or
> tooling would be greatly appreciated. I don't really have much other
> than the obvious Graphviz plotting tool. Beyond that I don't have
> anything other than getting each TLP to verify their own history.
I wrote a tool that would take two git trees that had no common
history, but were expected to converge on the same tree state and show a
graphical diff as part of the memcached conversion. It produces output that
looks like this:
http://public.west.spy.net/memcached/compare.html
As it is, it won't help you much if you're planning to move source
around *during* the conversion, but it does a good job of verifying that you
didn't break anything in rebasing, updating commit messages, changing authors,
committers, etc...
Basically, you just need two refs in a single git repo (old-branch vs.
rewritten-stuff) and run "git tree-converge old-branch rewritten-stuff" and you
get tons of html spewed at you.
https://github.com/dustin/bindir/blob/master/git-tree-converge
> I'm also not sure if it makes a difference, but the ASF SVN repo is
> one huge monolithic thing, so it's a lot of project histories
> intertwined which I'm looking forward to finding awesome conversion
> bugs with.
The biggest problem I've had with such things is actually having svn be
willing to give up the history. As long as you can get it out in any way at
all, we can fix it. The worst case would be doing a complete reproduction of
the svn history in a monolithic git repo. I can work with that. It's likely
unnecessary.
My experience with svn has never been good and I wouldn't call myself
an expert there, but if we can get the content out successfully, I can help you
do all kinds of junk with it.
--
dustin sallings