Is git with cvs faster than cvs alone?

My team works on a project in cvs containing about 20,000 Java files. Because of the number of files, it takes a while to do a cvs update. I typically keep about 5 copies of the entire tree checked out, to make it easy to check in different requests without worrying about which files were modified for each. It’s a real pain to keep all 5 trees up to date and in sync with each other.

I’ve read that it’s fairly easy to use git locally with a remote cvs server, and that git is fast. Will git significantly speed up the updating of my local trees?

  • Small or large commit messages?
  • Version control system capable of handling file moves?
  • Initializing private repositories on production server
  • Migrating from CVS(NT) to Subversion: What's the equivalent of (virtual) modules?
  • Using GIT with Eclipse and repos' backup
  • use hooks in git to import and export to cvs
  • I realize the lower bound is the time to do one cvs update. But I’m thinking that once the first tree is up to date, it might possible to quickly sync the other 4 with the first, rather than to do 4 more cvs update commands. Do I understand git correctly?

  • Why is the git command to switch branches named “git checkout”?
  • concurrent access to git repository
  • Git tool to remove lines from staging if they consist only of changes in whitespace
  • How do you make git diff use gitx --diff on OS X
  • Prevent PowerShell from “boxing” program output
  • Using SaltStack, How to Communicate with External Build Tool
  • 2 Solutions collect form web for “Is git with cvs faster than cvs alone?”

    I use Git as a Subversion client on a large project (on the order of 10k files). Git is fast, really fast. It’s so fast that I only keep one working clone, and switch between feature branches within that same clone. Like you, when I used Subversion I would have two or three similar checkouts and would switch between them regularly as I had multiple things in progress simultaneously. It got to be pretty confusing sometimes. With Git’s features like lightweight branches, the stash, and “git add -p”, I find that I no longer need multiple checkouts. I can do everything in one directory, and not worry as much about losing changes that I either forgot about or accidentally overwrote.

    I haven’t used Git with CVS, but if its integration is anything like git-svn then it’s going to be no problem.

    We do something similar at work. We basically use the master branch in git as a single, updated CVS version of the code; we don’t do any development there, just CVS updates. Then, all of our development projects happen on feature branches that we rebase. When we do CVS updates on the master branch we commit those changes to master and then rebase our other development branches against master.

    It’s not ideal — it makes sharing branches with other people difficult. But, we can manage several development projects at once and do branches, merges, and diffs against them easily. And, we only interact with CVS on the one master branch, as needed.

    Git Baby is a git and github fan, let's start git clone.