On Mon, 23 May 2005, Linus Torvalds wrote: > > I've gotten side-tracked with purely git issues, and since I don't > actually have any CVS archives, the cvs->git translation will be on the > back-burner for a while, but your "Ancestor branch" patch seems to at > least solve the problem that cvsps didn't show all the information that > was there. Naff. I just checked in a "cvs2git.c" file in the "tools" project (which has my patch application stuff). It's still buggy, and it's hacky as hell, but you can basically do something like this: cvsps | cvs2git > script with the normal setup for "cvsps", and "cvs2git" needs one additional stage, namely it wants to know the RCSDIR where to find the RCS files (that should be basically "$CVSROOT/module"). That _script_ then creates a git archive. Very hacky. So after you've successfully created the conversion script, check it to see that it looks sane, and then do sh script and the end result is a git'ified version of your CVS repo (and a corrupted working directory, btw, so look out. It _shouldn't_ corrupt your old CVS repo, though, so it should be ok). It has the logic for branches, but it doesn't work, and I'm fed up enough with CVS and RCS for the moment that I'm not going to work on it any more tonight. I don't know what stupid bug I have (I've had about a million of them on this silly program), but it's at a point where I think others might find it interesting, and it's probably/hopefully some really embarrassing typo or something and easily fixed. It converted Peter's "syslinux" repository in a couple of minutes, resulting in 1038 commits (it _should_ have resulted in 1046 commits, that's the branch thing afaik) and most of it looks sane: diff-tree cfb715c827e19226a446d47c98a7460fd94633ff (from a809559323f1b370717e475dd252b24686f97727) Author: hpa <hpa> Date: Thu May 19 22:30:50 2005 -0700 gcc4 compilation fix diff-tree a809559323f1b370717e475dd252b24686f97727 (from 4d65331b50a7b5ce858bb55a58f37b17ebc26c72) Author: hpa <hpa> Date: Sun May 8 22:47:03 2005 -0700 New Multiboot module; increase command line limit to 1023 diff-tree 4d65331b50a7b5ce858bb55a58f37b17ebc26c72 (from e88244753d528f695790adc96f0542d20dc33882) Author: hpa <hpa> Date: Fri Apr 29 07:08:03 2005 -0700 Don't clobber live registers, it's not nice diff-tree e88244753d528f695790adc96f0542d20dc33882 (from a49e189e35d208648a0d0b52ff652a5f3f8a707e) Author: hpa <hpa> Date: Fri Apr 29 07:05:52 2005 -0700 Use the correct register ... ... ... diff-tree 350772d45425a85dae86ec721d6bd3fde5595d50 (from 47ee894e7821f50cb83ea14b08132337577b2a1e) Author: hpa <hpa> Date: Sat Jan 31 13:24:35 1998 -0800 Slightly less ugly Id tag. diff-tree 47ee894e7821f50cb83ea14b08132337577b2a1e (from a8b52f1c31055049b276d14c67436d06dd7757aa) Author: hpa <hpa> Date: Sat Jan 31 13:22:38 1998 -0800 Added Id tags. diff-tree b924672aadb2c3b7f3cac1aaf52fbb4a1ed86b8d (from root) Author: hpa <hpa> Date: Sat Jan 31 13:16:05 1998 -0800 Initial revision And btw, it's definitely cvsps that does all the heavy lifting here. "cvs2git" itself is 255 lines of horrid crud, and should have been written in perl, except I only do C.. Linus - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.htmlReceived on Tue May 24 18:30:41 2005
This archive was generated by hypermail 2.1.8 : 2005-05-24 18:30:41 EST