On 5/11/06, Zoran Vasiljevic <[EMAIL PROTECTED]> wrote:
On 11.05.2006, at 17:14, Andrew Piskorski wrote: > > In case it's useful, here's a list I wrote up a while back, it gives > the names of various version control Ubuntu packages, all easily > installable with apt-get. I planned to experiment with each of these, > but haven't gotten around to it yet: I'm impressed! I didn't have a slightest idea that there are so many of them! Personally, I got used to CVS. I'm not a fan of it, but it does its job as I expect. We use it also internally for some 10 years to maintain our internal code base.
I've been using mercurial for a while now in conjunction with cvs. I pull down a working copy using cvs then manage it using mercurial. When I want to work on a patch, I can hg clone in/navaiserver my-naviserver then work on my-naviserver. I can 'hg diff' even though I'm offline. I can commit localy if it's a large change, back things out, branch etc. If it's taking me a long time and cvs has been updated, I go back to my original cvs checkout and 'cvs up'. Then I hg addremove hg commit -m cvsup to get those new changes into mercurial. I can then go to any of the mercurial clones and do a hg pull and all the latest changes are merged in. To commit back to the main cvs repo, I just 'cvs commit' in the cloned mercurial repository then blow it away. Update the main checkout as above to get my new changes, then pull them into the other clones I have going. The advantage of this is being able to work offline, instant diffs against the main repo, uses very little disc space as all the clones are hard linked. Mercurial is simillar to Git which is used for the Linux kernel now. I believe the Xorg folks are moving to git.