[NTLUG:Discuss] Comparison of CVS and SrcSafe
Chris Cox
cjcox at acm.org
Tue Nov 2 21:07:56 CST 1999
cbbrowne at godel.brownes.org wrote:
...snip...
>
> Chris Cox is likely one of the NTLUGgers most competent to comment
> on the comparative advantages of SCCS versus RCS...
Ok...here goes.
RCS has a better delta engine (more effecient), but my experience
is that it won't make much significant difference on most source
files in comparison to SCCS's less efficient method.
RCS was designed for collaborative locking...that is, it's best
suited for situations where more than one person desires to
check out a file simultaneously for editing....then the resulting
check ins are first come, first served, with the subsequent
deltas begin merged in by some mechanism. You don't have to
run RCS this way...but it's certainly evident that this was
the author's intent. SCCS on the other hand enforces a strict
locking model. In SCCS, if you want parallelism, you use
branches and the merging of branch deltas.
SCCS has a couple of configurable keywords (ways of jamming
information into extracted files automatically). RCS supports
keywords, but does not have any flexible ones. Your're stuck
with the ones RCS has.
CVS is a nice add on top of RCS in that it gives a more
project level view of code. It assumes the non-locking,
collaborative editing model.
SCCS is easily embedded into scripts....RCS tries to be
the endpoint...doesn't like you to build scripts on top
of it. For those who disagree, try building a setuid
front-end to RCS...not fun. The output from RCS is
not easily parsed....SCCS supports output formatting...good
for parsing data.
Neither tools is ideal. I like SCCS over RCS mainly for
it's easy embedding...however, I note that it's just
commercial Unix....AT&T is too proud (?) to release
the source and make it more widely available. So, from
a "free" side, RCS is the defacto winner. Contrary
to what some may say, RCS is not a better SCCS. RCS
did things differently....there are pros and cons
to both systems. I truly wish someone would write
a better SCCS (with full backward compatability). IMHO,
RCS is the tool which looks more or less like a hack
in its implementation. At least I feel like I'm using
a Unix utility when I use SCCS. RCS looks like what
a non-Unix person might write for their first Unix
project.
Just some thoughts....BEA uses CVS and Perforce (just FYI),
Chris
More information about the Discuss
mailing list