[svlug] Preventing a Revision Control Flamewar

Rick Moen rick at linuxmafia.com
Sun Oct 19 16:11:37 PDT 2008


Quoting Bill Ward (bill at wards.net):

> Anyway based on all the input I've heard, I'm leery of DVCS and don't really
> think any of them would quite suit my needs.

Centralised client/server operation a la CVS/svn/ClearCase/Perforce is
actually something that any DVCS _can_ automatically do, because all you
need do is eschew the DVCS's innate ability to do local commits and local
branching.  So, being more comfortable with the centralised checkin
model logically shouldn't rule out DVCSes.

> So I'm probably going to go to SVN.

svn's a good bit better than it used to be.  It no longer has a ghastly
dependency chain with WebDAV and a bunch of other things, and by design
its command set is incredibly familiar and easy to CVS users.

It stores snapshots rather than changesets, shapshotting being the worse
of the two alternatives as a long-term architectural choice, though the
nature of the error only becomes apparent as you start thinking of doing
branching and merging.  svn also cannot handle file renames at all:
Instead, you get delete and re-checkin, such that the new file loses the
old file's history.  (OTOH, git punts on file renames, too.)

My own attitude is that, if you're going to go to the trouble of
learning a new VCS, it might as well be a truly superior one in all
sorts of ways (git, Hg, bzr), but svn's perfectly OK for what it does,
and any VCS is better than none.

No VCS will be able to parse the semantics of, say, OO.o ODF files,
however, so the binary diffing provides you with little beyond a series of
commented backups.




More information about the svlug mailing list