24.02.2013 Aufrufe

Einf ¨uhrung in UNIX - CIS

Einf ¨uhrung in UNIX - CIS

Einf ¨uhrung in UNIX - CIS

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

2.7 Writer’s Workbench 187<br />

puts("Ende Array");<br />

#endif<br />

j = 0;<br />

while (j < i) {<br />

pr<strong>in</strong>tf("%s", array[l<strong>in</strong>e[j++]]);<br />

}<br />

/* Ende */<br />

return 0;<br />

}<br />

Programm 2.37 : C-Funktion Bubblesort<br />

Bubblesort eignet sich für kle<strong>in</strong>e Sortieraufgaben bis zu etwa hundert Elementen.<br />

Kopieren Sie sich die Bauste<strong>in</strong>e <strong>in</strong> e<strong>in</strong> eigenes Verzeichnis und entwickeln<br />

Sie das Programm unter Verwendung des RCS weiter. Näheres siehe<br />

rcs<strong>in</strong>tro(5).<br />

Anfangs ersche<strong>in</strong>t das Arbeiten mit RCS bei kle<strong>in</strong>en Projekten als lästig,<br />

ähnlich wie das Anlegen e<strong>in</strong>es Makefiles. Man gewöhnt sich aber schnell dar-<br />

an und spart sofort das E<strong>in</strong>tragen des<br />

Änderungsdatums von Hand. Nach<br />

kurzer Zeit ist man für die selbst auferlegte Diszipl<strong>in</strong> dankbar.<br />

Das Source Code Control System SCCS verwaltet die Versionen der<br />

Module, <strong>in</strong>dem es die erste Fassung vollständig speichert und dann jeweils die<br />

Differenzen zur nächsten Version, während RCS die jüngste Version speichert<br />

und die älteren aus den Differenzen rekonstruiert.<br />

Alle Versionen e<strong>in</strong>es Programmes samt den Verwaltungsdaten werden <strong>in</strong><br />

e<strong>in</strong>em e<strong>in</strong>zigen SCCS-File namens s.filename abgelegt, auf das schreibend<br />

nur über besondere SCCS-Kommandos zugegriffen werden kann. Das<br />

erste dieser Kommandos ist adm<strong>in</strong>(1) und erzeugt aus e<strong>in</strong>em C-Quellfile<br />

program.c das zugehörige SCCS-Dokument:<br />

adm<strong>in</strong> -iprogram.c s.program.c<br />

Mit adm<strong>in</strong>(1) lassen sich noch weitere Aufgaben erledigen, siehe<br />

Referenz-Handbuch. Mittels get(1) holt man das Quellfile wieder aus dem<br />

SCCS-Dokument heraus, mitttels delta(1) gibt man e<strong>in</strong>e geänderte Fassung<br />

des Quellfiles an das SCCS-Dokument zurück.<br />

RCS und SCCS arbeiten auf File-Ebene. Bei größeren Projekten ist es<br />

wünschenswert, mehrere Files geme<strong>in</strong>sam oder ganze Verzeichnisse <strong>in</strong> die<br />

Versionsverwaltung e<strong>in</strong>zubeziehen. Dies leistet das Concurrent Versions<br />

System (CVS). Es baut auf RCS auf und erweitert dessen Funktionalität<br />

außerdem um e<strong>in</strong>e Client-Server-Architektur. Die beteiligten Files und Verzeichnisse<br />

können auf verschiedenen Computern im Netz liegen. Im Gegensatz<br />

zu RCS, das zu e<strong>in</strong>em Zeitpunkt immer nur e<strong>in</strong>em Benutzer das Schreiben<br />

gestattet, verfolgt CVS e<strong>in</strong>e sogenannte optimistische Kooperationsstrategie.<br />

Mehrere Programmierer können gleichzeitig auf Kopien derselben Version<br />

(Revision) arbeiten. Beim Zurückschreiben wird e<strong>in</strong> Abgleich mit der <strong>in</strong>

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!