What are your best practices and tips for using git to interface with a CVS repository?
Git offers much more tools than CVS. One of more important is "git bisect" that can be used to find a commit (revision) that introduced a bug; if your commits are small and self-contained it should be fairly easy then to discover where the bug is.
The main difference is that (as it was already said in other responses) CVS is (old) centralized version control system, while Git is distributed. But even if you use version control for single developer, on single machine (single account), there are a few differences between Git and CVS: Setting up repository.
I wrote up an answer to a similar question here.
This works suprisingly well when you're forced to continue to push changes into a central CVS repository.
I've only worked with Git-CVS interactions to demo Git for a friend, but it was very straightforward.
cvsps
. Git cvsimport
uses this to access CVS history.We found that, for a large project, inital set-up was much faster by taking a full copy of the CVS repo onto your computer, and doing the git cvsimport
locally:
$ rsync rsync://yourprojecthost.com/cvsroot/yourproject/* $ mkdir myproject.git $ cd myproject.git $ git cvsimport -p -x -v -d :local:/path/to/cvsroot/yourproject
Note that the -x after -p is very important. This passes -x to cvsps. For more information please see the cvsps man page.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With