Hello, looking through one blog I regularly visit, I found the following problem description about CVS:
(http://kernelmustard.com/2006/06/20/the-hell-of-cvs/) The hell of CVS I.m a big CVS fan. Well, I was. Then, yesterday, I merged a very large set of changes associated with upgrading some parts of our build system from HEAD to our mainline stable branch. The first problem I had was the common one: I touched a lot of files across a long time, so the traditional tag-to-tag merge wouldn.t have worked. So I closed my eyes and held on tight and just let CVS re-merge everything. I ran cvs update to see what fun awaited me, and got a healthy but not overwhelming number of conflicts. A good many of them were the standard re-merge conflicts for which CVS is so (in)famous. OK, fine, resolved, committed. Then I went through and built it. Bang, build error. I fixed a few obvious merge bugs, and then I got to a file that was missing a change from HEAD. So: delete file, update to stable, merge from head. NO CHANGES. I updated to HEAD to be sure I wasn.t losing my mind. The build fix was there. Updated to stable again. Gone. Merge from head: nothing. I finally manually cvs diff.d the head revision (by number) with the stable revision (by number), and voila, out comes a diff! I grumble some more, output the diff to a patch, run the patch utility, and commit the change. Build works again. I.ve had it. It.s one thing to commit a Type II error by double-merging and conflicting - at least I know for sure what.s going on. But to fail to detect a change and falsely report the same - that is unacceptable and scares the hell out of me. I.ve been using CVS professionally for over a decade; at this point, I give myself credit for understanding the basics. If I.m doing something wrong, it.s non-obvious. So, I.m switching. This is ridiculous. I.m looking at (in probability order) SVK, Perforce, Subversion, and maybe darcs, arch, and (longshot) git. With a codebase our size, we need intelligent merging in a bad way, and perf is a concern. Anyone have any thoughts on any of these? Is SVK mature enough for serious commercial use? Or should I just bite the bullet and go to Perforce? Has anyone experienced similar problems like the blogger, or can give any help or advice? BTW: I answered myself with: Just to be sure: Which version of CVS do you use? The .CVS Home. (http://www.cvshome.org/) version, or the .CVSNT. version (http://www.cvsnt.org/)? (Both on client and server) Which is the version number? (You might want to try .cvs version. for this)? Have you checked that this is not a known error in some older release of that software? I'll forward this link to the cvs-info mailing list. Perhaps, someone will come up with a valuable comment. - Spiro. Regards, Spiro. -- Spiro R. Trikaliotis http://opencbm.sf.net/ http://www.trikaliotis.net/ http://www.viceteam.org/ _______________________________________________ info-cvs mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/info-cvs
