Re: Call for testing: cvs2bzr
Michael Haggerty <[email protected]>
| Newsgroups | gmane.comp.version-control.subversion.cvs2svn.devel,gmane.comp.version-control.bazaar-ng.general |
|---|---|
| Message-ID | <[email protected]> |
Ian Clatworthy wrote: > Michael Haggerty wrote: >> Ian Clatworthy wrote: >>> Michael Haggerty wrote: >>>> Let me know when you would like me to pull this patch. I would have a >>>> pretty low acceptance threshold, since it doesn't involve much code and >>>> there currently is no cvs2bzr at all. >>> It's ready to go IMO. A Bazaar branch with my changes is available from >>> https://code.launchpad.net/~ian-clatworthy/+junk/cvs2svn. It should be >>> pretty easy to grab the diffs (mostly new files) from there. If not, let >>> me know how you'd like the patch put together. >> Cool, thanks! I committed your changes to trunk as r4871-4873 (with >> somewhat expanded commit messages :-) ). > > Excellent. Thanks. Next step is to get the cvs2svn trunk released as > 2.3.0 and uploaded into karmic. :-) What would be the deadline to get into karmic? It would be nice if the new and improved cvs2hg were included in release 2.3.0, if that is at all realistic. Greg? Do you have any idea of an ETA for cvs2hg? >> I am curious why you did not include the discussion of fixup branches in >> www/cvs2bzr.html. Don't similar considerations apply to cvs2bzr/"bzr >> fastimport"? If not, how do you get around them? > > I don't know enough about the problem yet but I assumed the fixup script > was git-specific. Is there a sample data set I can try importing into > Bazaar to better understand what we need to do and why? This problem > isn't one you can just make go away in an earlier pass is it? It seems > inefficient for each downstream tool to have to solve it independently. The issue is explained pretty well in the git-fast-import man page [1], section "Use Tag Fixup Branches". The problem is that CVS tags are not necessarily snapshots of the state of a particular branch at a single point in time; they can include file revisions from multiple branches and/or file revisions that coexisted in a single repository revision. Since a git tag is simple the SHA1 of a node in the DAG, nontrivial tags have to be created by first creating a node in the DAG with the required contents, then tagging that node. The node is created on a "fixup branch". To find an example, do almost any cvs2git conversion then grep the dumpfile for "TAG.FIXUP". For example, the cvs2svn test suite test number 145 "test output in git-fast-import format" contains some examples. You would be a better judge of how much of that is relevant to Bazaar. Michael [1] http://www.kernel.org/pub/software/scm/git/docs/git-fast-import.html ------------------------------------------------------ http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1667&dsMessageId=2385795 To unsubscribe from this discussion, e-mail: [[email protected]].