[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Question on loginfo.
From: |
Spiro Trikaliotis |
Subject: |
Re: Question on loginfo. |
Date: |
Wed, 21 Jun 2006 07:30:14 +0200 |
User-agent: |
Mutt/1.5.9i |
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/