Date: Fri, 16 Jul 1999 14:58:35 -0600 From: Wes Peters <wes@softweyr.com> To: Maury Markowitz <maury@OAAI.COM> Cc: advocacy@FreeBSD.ORG Subject: Re: Source control packages Message-ID: <378F9CFB.57042F1E@softweyr.com> References: <199907151642.MAA01326@OAAI.COM>
next in thread | previous in thread | raw e-mail | index | archive | help
Maury Markowitz wrote: > > I know this isn't really on topic, but it does seem to be the best > place to ask considering the other threads. > > I'm currently using CVS. I don't like it. The reasons I don't > like it are... > > a) branching and merging don't seem to work for me. This is > primarily a problem with diffing as far as I can tell, but I have to > go in and hand edit practically every file I've modified from a > branch. It's also far too complex an operation, and I find the whole > tagging concept rather confusing. Perforce is better at this than CVS, and much faster, but the unerlying complexity is still there. Merging a branch back into a moving code- line is hard work because difficult things are being done. Perforce does give you nway merging capabilities, that helps. Say you've got a main development line and a branch to implement some hairy new feature. Once the hairy new feature is done, you're ready to integrate it back into the main branch. Rather than just integrating away, and potentially breaking the main branch for a long time, you integrate from the main line to branch, make the branch work, then integrate back to the main line. This means your integration into the main line is much smaller (and therefore less failure prone) than integrating the whole mess from the start. > b) merging two edits on the same branch rarely works. Again this > seems to be a diff problem, but there's cases where the only thing > that changed was the number of spaces in a blank line, and this has > caused huge blocks of my file to be marked as conflicting. As in "cvs udpate" leaves <<<<<< doo-doos in your source? That's a feature of just about any concurrent system; the diff programs aren't smart enough to interleave your changes with another users changes other than on a line-by-line basis. Visual merge tools, especially those that run in an editing environment, can help here. I dig emacs ediff mode, but there are alternatives. > c) there's no way to do "stamping". For instance when I'm about to > do a release build I'd like some way to stamp the repository saying > "I've used this version to make my 1.1 build". Instead it does this > the other way around, putting crud in your files that YOU can pull > out. Huh? You missed "cvs rtag"? > d) it puts crud in my files! > > e) it puts crud in my directories. Perforce does none of the above, it puts the crud in the database on the server. You do have to crud up your environment a little, but it's pretty livable. > f) having the no checkin/checkout is pretty cool, but there are some > times where this is exactly what you want to do. I'd prefer to have > this as an option (locking). > > Any suggestions people? Is perforce the way to go? Not if you want locking, Perforce don't play that (stupid, time-wasting, productivity robbing) game. -- "Where am I, and what am I doing in this handbasket?" Wes Peters Softweyr LLC http://softweyr.com/ wes@softweyr.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-advocacy" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?378F9CFB.57042F1E>