Re: PATCH: add git to verify-cvs2svn.py ; fix too many warnings issue
Michael Haggerty <[email protected]> Wed, 25 Aug 2010 10:13:27 +0200
| Newsgroups | gmane.comp.version-control.subversion.cvs2svn.devel |
|---|---|
| Message-ID | <[email protected]> |
James Blackburn wrote:
> Attached is a patch to add --git support to verify-cvs2svn.py -- in a
> similar manner to HgRepos.
This is great! This has been languishing on my todo list forever, so
I'm glad that somebody else got to it.
I must be doing something wrong, but a simple verification of a
conversion of the "test-data/main-cvsrepo" doesn't quite work for me:
$ ./cvs2git --username=cvs2git \
--dumpfile=cvs2svn-tmp/dump.out \
--blobfile=cvs2svn-tmp/blob.out \
test-data/main-cvsrepos
$ mkdir cvs2svn-tmp/gitrepo
$ (cd cvs2svn-tmp/gitrepo &&
git init &&
cat ../blob.out ../dump.out | git fast-import)
$ git reset --hard HEAD
$ contrib/verify-cvs2svn.py --tmpdir=cvs2svn-tmp --git \
test-data/main-cvsrepos cvs2svn-tmp/gitrepo
Verifying trunk
FAIL: Directory / has extra entries: .git
Verifying tag T_ALL_INITIAL_FILES
FAIL: Directory / has extra entries: .git
Verifying tag T_ALL_INITIAL_FILES_BUT_ONE
FAIL: Directory / has extra entries: .git
Verifying tag T_MIXED
FAIL: Directory / has extra entries: .git
Verifying tag after
FAIL: Directory / has extra entries: .git
Verifying tag vendortag
FAIL: Directory / has extra entries: .git
Verifying branch B_FROM_INITIALS
CMD FAILED: git
--git-dir=cvs2svn-tmp/git-export-branch-B_FROM_INITIALS/.git
--work-tree=cvs2svn-tmp/git-export-branch-B_FROM_INITIALS checkout -q
B_FROM_INITIALS
Output:
Branch B_FROM_INITIALS set up to track remote branch B_FROM_INITIALS
from origin.
Error: git command failed!
I think that at least some of these errors could be avoided if you would
use "git archive" rather than "git clone; git co" to export tags and
branches; i.e., use the equivalent of this command:
GIT_DIR=$PATH/.git git archive --format tar $BRANCH |
tar -C $dest_dir -x
It should also be faster than cloning the repository for each branch.
The disadvantage is that it relies on the presence of "tar" in the
command path. To get around that limitation, one could use Python's
"tarfile" module, using something like the last recipe on this page:
http://docs.python.org/release/2.4/lib/tar-examples.html
> It also fixes an issue whereby file mismatches are reproted file_size
> / 8K times.
Cool. I just committed this part of your patch.
Michael
------------------------------------------------------
http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1667&dsMessageId=2650952
To unsubscribe from this discussion, e-mail: [[email protected]].