sccs(1-ucb) (BSD Compatibility Package) sccs(1-ucb)
NAME
sccs - Oberstes Kommando für das Source Code Control System (SCCS)
SYNTAX
/usr/ucb/sccs [-r] [-dprefixpath] [-pfinalpath] command
[SCCS-flags ...] [filename ...]
BESCHREIBUNG
Das Kommando sccs ist das oberste Kommando der Dienstprogramme für das
Source Code Control System (SCCS).
sccs stellt normalerweise jedem Dateinamen filename bzw. der letzten
Komponente jedes filename die Zeichenkette "SCCS/s." voran, da Sie in
der Regel Ihre SCCS-Datenbankdateien in einem Verzeichnis namens SCCS
speichern und jede Datenbankdatei mit einem Präfix "s." beginnt. Wenn
die Umgebungsvariable PROJECTDIR gesetzt ist und es sich um einen
absoluten Pfadnamen handelt (d. h. er beginnt mit einem Schrägstrich),
sucht sccs in dem durch diese Variable angegebenen Verzeichnis nach
SCCS-Dateien. Wenn es sich um einen relativen Pfadnamen handelt (d. h.
er beginnt nicht mit einem Schrägstrich), wird er wie der Name eines
Benutzers behandelt, und sccs sucht in Home-Verzeichnis dieses Benut-
zers nach einem Verzeichnis namens src oder source. Wenn das Verzeich-
nis gefunden wird, sucht sccs im Verzeichnis, das durch diese Variable
angegeben wird, nach SCCS-Dateien.
sccs-Programmoptionen müssen vor dem Argument command stehen. Optio-
nen, die an das eigentliche SCCS-Kommando (Dienstprogramm) übertragen
werden sollen, müssen nach dem Argument command stehen. Es handelt
sich hierbei um spezielle Optionen für das verwendete Argument com-
mand.
sccs kann auch zum Ändern der Benutzer-ID verwendet werden, um zusätz-
lichen Schutz zu bieten. Bestimmte Kommandos [wie admin(1)] können
nicht von allen Benutzern zum Setzen der Benutzer-ID ausgeführt wer-
den, da hierdurch jeder beliebige Benutzer die Berechtigungen ändern
könnte. Solche Kommandos werden immer als realer Benutzer ausgeführt.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
sccs(1-ucb) (BSD Compatibility Package) sccs(1-ucb)
OPTIONEN
-r sccs als realer Benutzer ausführen und nicht als gültiger Benut-
zer, auf dessen Benutzer-ID sccs eingestellt ist.
-dprefixpath
Den Präfixteil des Pfadnamens für die SCCS-Datenbankdateien defi-
nieren. Der Standardpräfixteil des Pfadnamens ist das aktuelle
Verzeichnis. prefixpath wird dem gesamten Pfadnamen vorange-
stellt. Siehe BEISPIELE.
Diese Option setzt alle Verzeichnisse außer Kraft, die durch die
Umgebungsvariable PROJECTDIR angegeben werden.
-pfinalpath
Den Namen eines niedrigeren Verzeichnisses definieren, das SCCS-
Dateien enthält. SCCS ist der Standard. finalpath wird vor die
Endkomponente des Pfadnamens gestellt. Siehe BEISPIELE.
VERWENDUNG
Zusätzliche SCCS-Kommandos
Zusätzlich zu den normalen SCCS-Kommandos stehen folgende Pseudo-
Kommandos zur Verfügung:
create create wird bei der Erstellung neuer s.-Dateien verwendet.
Bei einer C-Quellsprachendatei namens obscure.c beispiels-
weise würde das Kommando create die folgenden Aktionen
durchführen: (1) die s.-Datei mit dem Namen s.obscure.c im
Verzeichnis SCCS erstellen, (2) die ursprüngliche Quellda-
tei in ,obscure.c umbenennen und (3) "sccs get" für
obscure.c ausführen. Im Vergleich zum SCCS-Kommando admin
nimmt Ihnen create mehr Startarbeit ab und sollte daher
admin vorgezogen werden.
enter enter hat die gleiche Funktion wie create, außer daß es am
Ende nicht "sccs get" ausführt. Dieses Kommando wird nor-
malerweise verwendet, wenn "sccs edit" unmittelbar nach
enter durchgeführt werden soll.
edit Eine Datei zur Editierung abrufen.
delget Ein delta für die angegebenen Dateien durchführen und
anschließend mit get neue Versionen abrufen. Die Schlüs-
selwörter sind erweitert, so daß die neuen Versionen nicht
editiert werden können.
deledit Die gleiche Funktion wie delget, erstellt jedoch neue Ver-
sionen, die editiert werden können. deledit ist zum
Erstellen eines Prüfpunkts für Ihre aktuelle Editierphase
nützlich.
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98
sccs(1-ucb) (BSD Compatibility Package) sccs(1-ucb)
fix Die angegebene Delta-Version entfernen, jedoch eine Kopie
der Delta-Version mit den Änderungen in ihr beibehalten.
fix muß eine Option -r folgen. fix ist zum Beheben kleiner
Compiler-Fehler usw. nützlich. Da fix keine Prüfprotokolle
(Audit Trails) übergibt, sollte es mit Vorsicht verwendet
werden.
clean Alle Dateien aus dem aktuellen Verzeichnis löschen, die
aus SCCS-Dateien neu erstellt werden können. clean stellt
alle Dateien fest, die derzeit editiert werden, und löscht
diese nicht. Bei der Verwendung von "clean -b" wird nicht
geprüft, ob momentan Verzweigungen editiert werden. Hinweis:
Wenn Sie die Verzweigungen in demselben Verzeichnis spei-
chern, ist es gefährlich, -b zu verwenden.
unedit Das letzte edit oder get -e wieder rückgängig machen und
eine Datei wieder in ihrem vorherigen Zustand herstellen.
Wenn Sie die Editierung einer soeben editierten Datei mit
unedit zurücknehmen, gehen alle Änderungen verloren, die
seit dem Beginn dieser Editiersitzung vorgenommen wurden.
info Eine Liste aller derzeit editierten Dateien anzeigen. Wenn
die Option -b angegeben wird, werden Verzweigungen (d. h.
SIDs mit zwei oder weniger Komponenten) ignoriert. Wenn
die Option -u (mit einem optionalen Argument) angegeben
wird, werden nur Dateien aufgelistet, die von Ihnen (oder
dem angegebenen Benutzer) editiert werden.
check Dateien feststellen, die derzeit editiert werden. Ähnliche
Funktion wie info, gibt aber keine Liste zurück, sondern
einen Endecode: Wenn keine Datei editiert wird, erfolgt
auch keine Ausgabe, und wenn eine Datei editiert wurde,
wird ein von null abweichender Endestatus zurückgegeben.
check kann daher in einem Installationseintrag in einem
Makefile enthalten sein, um so sicherzustellen, daß eine
SCCS-Datei alle benötigten Komponenten enthält, bevor eine
Version installiert wird.
tell Eine Liste der in der Standard-Ausgabe editierten Dateien
anzeigen. Dateinamen werden durch Zeilenvorschubzeichen
getrennt. Für die Optionen -b und -u gilt dasselbe wie bei
info und check.
diffs Ihre aktuelle Version des editierten Programms und die
Versionen im SCCS-Format (im diff-ähnlichen Format) ver-
gleichen. diffs akzeptiert dieselben Argumente wie diff,
außer daß die Option -c als -C angegeben werden muß, da
die Option -c als Option für get angesehen wird, das wie-
derum die Version kennzeichnet, die mit der aktuellen Ver-
sion verglichen werden soll.
Seite 3 Reliant UNIX 5.44 Gedruckt 11/98
sccs(1-ucb) (BSD Compatibility Package) sccs(1-ucb)
print Ausführliche Informationen über die angegebenen Dateien
drucken. print führt für jede Datei ein Kommando
"sccs prs -e" gefolgt von "sccs get -p -m" aus.
BEISPIELE
Das Kommando
sccs -d/usr/include get sys/inode.h
wird umgesetzt in:
get /usr/include/sys/SCCS/s.inode.h
Hierdurch sollen Aliasse erstellt werden wie z. B.:
alias syssccs sccs -d/usr/src
Diese werden verwendet als:
syssccs get cmd/who.c
Das Kommando
sccs -pprivate get usr/include/stdio.h
wird umgesetzt in:
get usr/include/private/s.stdio.h
Eine Datei namens myprogram.c wird folgendermaßen zum ersten Mal in
das SCCS-Format umgesetzt, vorausgesetzt, daß noch kein SCCS-
Verzeichnis existiert:
$ mkdir SCCS
$ sccs create myprogram.c
$ myprogram.c:
1.1
14 lines
Nachdem Sie sichergestellt haben, daß alles ordnungsgemäß ist, entfer-
nen Sie die Version der Datei, an deren Beginn ein Komma steht:
$ rm ,myprogram.c
Folgendermaßen erhalten Sie eine Kopie von myprogram.c zum Editieren,
editieren die Datei und stellen sie zurück in die SCCS-Datenbank:
$ sccs edit myprogram.c
1.1
new delta 1.2
14 lines
$ vi myprogram.c
Seite 4 Reliant UNIX 5.44 Gedruckt 11/98
sccs(1-ucb) (BSD Compatibility Package) sccs(1-ucb)
Ihre Editiersitzung beginnt.
$ sccs delget myprogram.c
comments? Added abusive responses for compatibility
1.2
7 inserted
7 deleted
7 unchanged
1.2
14 lines
Folgendermaßen rufen Sie eine Datei aus einem anderen Verzeichnis ab:
sccs -p/usr/src/sccs/ get cc.c
Alternativ können Sie auch folgendes eingeben:
sccs get /usr/src/sccs/cc.c
Folgendermaßen erstellen Sie eine Delta-Version von vielen Dateien im
aktuellen Verzeichnis:
sccs delta *.c
Folgendermaßen rufen Sie eine Liste der editierten Dateien ab, die
sich nicht in Verzweigungen befinden:
sccs info -b
Folgendermaßen erstellen Sie die Delta-Version aller editierten
Dateien:
$ sccs delta 'sccs tell -u'
In einem Makefile rufen Sie folgendermaßen Quelldateien aus einer
SCCS-Datei ab, wenn diese noch nicht existiert:
SRCS = <listofsourcefiles>
$(SRCS):
sccs get $(REL) $@
Seite 5 Reliant UNIX 5.44 Gedruckt 11/98
sccs(1-ucb) (BSD Compatibility Package) sccs(1-ucb)
Reguläre SCCS-Kommandos
Die regulären SCCS-Kommandos werden unten kurz beschrieben. Wahr-
scheinlich müssen Sie diese Kommandos nie verwenden, da die Benutzer-
schnittstelle so komplex ist und das oberste Kommando sccs 99,9% der
erforderlichen Arbeiten für Sie ausführt.
admin Neue SCCS-Dateien erstellen und Parameter von existieren-
den SCCS-Dateien ändern. Sie können mit "sccs create" neue
SCCS-Dateien erstellen oder mit "sccs admin" andere Arbei-
ten ausführen.
cdc Kommentare in einer SCCS-Delta-Version ändern.
comb SCCS-Delta-Versionen kombinieren und die SCCS-Dateien
umstrukturieren.
delta Änderungen, die an einer zuvor mit "sccs get" abgerufenen
Datei vorgenommen wurden, festschreiben. Sie können "sccs
delget" als nützlichere Version dieses Kommandos verwen-
den, da "sccs delget" alle erforderlichen Arbeiten und
mehr ausführt.
get Eine Datei aus der SCCS-Datenbank für die Kompilierung
oder, bei Verwendung der Option -e, für die Editierung
extrahieren. Verwenden Sie das Kommando "sccs get" nur,
wenn Sie es wirklich benötigen, normalerweise wird jedoch
"sccs delget diese Arbeit für Sie ausführen. Verwenden Sie
sccs edit anstelle von get mit der Option -e.
help Soll Ihnen bei der Interpretation von SCCS-Fehlermeldungen
helfen.
prs Informationen über die Operationen in einer SCCS-Datei
anzeigen.
rmdel Eine Delta-Version aus einer SCCS-Datei löschen.
sccsdiff Zwei Versionen einer SCCS-Datei vergleichen und die Unter-
schiede zwischen den beiden Versionen ausgeben.
val Feststellen, ob eine bestimmte SCCS-Datei den angegebenen
Kriterien entspricht. Wenn Sie das Kommando sccs verwen-
den, brauchen Sie val nicht zu verwenden, da seine Benut-
zerschnittstelle unzuverlässig ist.
what Informationen zur SCCS-Nummer anzeigen.
HINWEISE
Das Kommando help ahmt normalerweise SCCS-Fehlermeldungen nur nach und
ist meistens nicht sehr nützlich.
Seite 6 Reliant UNIX 5.44 Gedruckt 11/98
sccs(1-ucb) (BSD Compatibility Package) sccs(1-ucb)
DATEIEN
/usr/sccs/*
SIEHE AUCH
admin(1), cdc(1), comb(1), delta(1), get(1), help(1), prs(1),
rmdel(1), sact(1), sccsdiff(1), unget(1), val(1), what(1),
sccsfile(4).
Seite 7 Reliant UNIX 5.44 Gedruckt 11/98