The steps I took this last weekend to make a local git tree to track my own changes and the upstream CVS repository. Based on git 1.4.4.4 and other tools in Debian 4.0 (Etch, current stable).

1) rsync the CVS repository so that git-cvsimport doesn't take ages and oodles of bandwidth as it checks out the files at each version.

rsync -av rsync://cvs.savannah.gnu.org/sources/xlog .

2) Edit xlog/CVSROOT/config, comment out LockDir.

3) git cvsimport from your local xlog cvs repository. I chose not to mess with the -o option so my 'upstream' stays with the standard branch name of origin.

git-cvsimport -v -k -u -m -d </full/path/to/rsyncd/xlog> -C xlog.git xlog

4) Now pull the data out of .git into the working directory

git checkout .

5) Work away. :)

Use git-diff to make your patch files and git-cvsimport to update from cvs (my version of git-cvsimport attempts to auto-merge origin to master after the import which I appreciate.)

git-cvsimport -p -Z,3 -v -k -u -m -d :pserver:[EMAIL PROTECTED]:/sources/xlog

Works for me so far. Here are some resources I read to help me do this:

http://git.or.cz/
http://savannah.gnu.org/forum/forum.php?forum_id=4142
http://docs.moodle.org/en/Tracking_Moodle_CVS_with_git
http://chneukirchen.org/blog/archive/2006/04/tracking-the-ruby-cvs-with-git.html

--
Jacob / kd7yko


_______________________________________________
Xlog-discussion mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/xlog-discussion

Reply via email to