lkml.org 
[lkml]   [1997]   [May]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectSCCS & Source mgmt
Date
Hey folks - I've rewritten SCCS.  It's free software.  It works w/ GNU
make quite well. It's compatible with AT&T SCCS at the file format level
and at the command level for get/delta. It's somewhat compatible with
RCS at the ci/co level (you can do ci/co -l etc.).

I'm also working on a free version of the software I did at Sun that lets
you have multiple SCCS trees and resync them. It's like CVS except that
each work area gets a full copy of the SCCS files. When you sync, you sync
SCCS files, not clear text files. This allows true distributed development.
This part isn't ready yet.

What I need: people who like SCCS that would like to alpha test this stuff.
I'll be ready for an alpha test in a week, after I get finished with my
regression testing.

I'm also looking for people with a large amount of existing SCCS files,
especially with lots of branches, that I could run regression tests on.
The regression tests do this

copy the SCCS files to a temporary area (1 at a time)
check out each revision using AT&T SCCS.
check in each revision using my SCCS
compare all the revisions
make sure ATT SCCS can deal with my version and vice versus

A good question is "why SCCS when I have RCS?" The answers are

. SCCS has a better file format (don't argue with me about this,
I more about this subject than anyone else in the world).
. A great example of why SCCS is a better file format is that it
lets you quickly do this

$ co -p -m -u example.c
lm 1.1 /*
lm 1.1 * This is an example C file.
lm 1.1 */
lm 1.2 main()
lm 1.2 {
lm 1.2 printf("Hello world.\n");
lm 1.3 exit(0);
lm 1.2 }

this shows you the user & revision for each line. If you have
ever worked on large projects with lots of other people, you've
needed this.
. This version of SCCS is a library. You can link it into your
applications and do gets & deltas. It really is a library, not
a bunch of wrappers around popen("co -l", "r") etc.
. It's faster. SCCS can retrieve any delta in O(time to read the file).
RCS had to apply diffs to go backwards which is slow.
. It's smaller. Here's everything as of today:

co.c revision 1.1: 51 lines
ci.c revision 1.1: 38 lines
get.c revision 1.6: 45 lines
delta.c revision 1.2: 33 lines
slib.c revision 1.8: 1192 lines
purify.c revision 1.3: 140 lines
sccs.h revision 1.6: 97 lines
purify.h revision 1.2: 9 lines

Etc.

Let me know if you are interested in testing this stuff out. I'm out of
town for the weekend so don't expect a reply right away.

Thanks,

--lm

\
 
 \ /
  Last update: 2005-03-22 13:39    [W:0.032 / U:1.224 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site