1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262
|
<!DOCTYPE LINUXDOC SYSTEM>
<linuxdoc>
<article>
<titlepag>
<title>De RCS MINI-HOWTO</title>
<author><name> Robert Kiesling,<newline>
Vertaald door: Ellen Bokhorst</name></author>
<date>v1.4, 14 augustus 1997</date>
<abstract>
In dit document wordt de basisinstallatie en het gebruik van RCS,
het GNU Revisie Control System, onder Linux behandeld.
Het gaat ook over de installatie van de <tt>diff(1)</tt> en <tt>diff3(1)</tt>
utility's, welke nodig zijn voor het gebruik van RCS.
Dit document mag geheel of gedeeltelijk, vrij worden gereproduceerd,
op voorwaarde dat elk gebruik van dit document conformeert aan de
algemene copyrightmelding van de HOWTO-serie van het Linux Documentatie
Project. Zie het bestand COPYRIGHT voor details. Stuur alle klachten,
suggesties en eventuele diversen naar <htmlurl
url="mailto:kiesling@terracom.net" name = "kiesling@terracom.net">, zodat
ik dit document zo volledig en bijgewerkt mogelijk kan houden.
</abstract>
</titlepag>
<toc>
<sect><heading>Overzicht van RCS</heading>
<p>
RCS, het revision control system, is een suit programma's dat wijzigingen
in tekstbestanden opspoort en gedeelde toegang tot bestanden in
werkgroepsituaties beheert. Het wordt in het algemeen gebruikt voor het
beheren van broncode modules.
Het leent zich ook voor het opsporen van revisies van documentbestanden.
</p>
<p>
RCS werd geschreven door Walter F. Tichy en Paul Eggert. De laatste
versie welke naar Linux werd geport is RCS Versie 5.7. Er is ook een
semi-officieel threaded versie beschikbaar. Veel van de informatie in
deze HOWTO is afkomstig vanuit de RCS manpages.
</p>
<p>
RCS bestaat uit het <tt>rcs(1)</tt> programma, dat de bestandskenmerken
van het RCS archief beheert, <tt>ci(1)</tt> en <tt>co(1)</tt>,
die bestanden in en uit RCS archieven checken, <tt>ident(1)</tt>, dat
in RCS archieven zoekt naar keyword identifiers,
<tt>rcsclean(1)</tt>, een programma om bestanden op te schonen waaraan
niet meer wordt gewerkt of die niet zijn gewijzigd.
<tt>rcsdiff(1)</tt>, waarmee <tt>diff(1)</tt> wordt uitgevoerd om
revisies te vergelijken, <tt>rcsmerge(1),</tt> waarmee RCS branches
worden samengevoegd tot een enkel werkbestand, en
<tt>rlog(1),</tt> waarmee RCS logmeldingen worden afgedrukt.
</p>
<p>
Bestanden gearchiveerd door RCS kunnen bestaan uit tekst in ieder formaat,
of binair als het gebruikte programma <tt>diff</tt> om gewijzigde bestanden
te genereren om kan gaan met 8-bit gegevens.
In bestanden kunnen optioneel identificatiestrings worden opgenomen als
hulp bij het opsporen door <tt>ident(1)</tt>. RCS maakt gebruik van de utility's
<tt>diff(1)</tt> en <tt>diff3(3)</tt> om de gewijzigde bestanden tussen
revisies te genereren. Een RCS archief bestaat uit de initiële revisie
van een bestand, welke als versie 1.1 wordt geïdentificeerd en een
serie gewijzigde bestanden, één voor iedere revisie.
Iedere keer dat een bestand vanuit een archief wordt opgehaald (uitgecheckt)
met <tt>co(1)</tt>, gewijzigd, en weer terug in het archief wordt geplaatst
(inchecken) met <tt>ci(1)</tt>, wordt het versienummer opgehoogd, naar
bijvoorbeeld 1.2, 1.3, 1.4, enzovoort voor opeenvolgende revisies.
De archieven zelf staan gewoonlijk in een <tt>./RCS</tt>
subdirectory, alhoewel RCS voor de opslag van het archief andere
opties biedt.
Zie de manual page van <tt>rcsintro(1)</tt> voor een overzicht van RCS.
</p>
</sect>
<sect><heading>Systeembenodigdheden</heading>
<p>
RCS heeft <tt>diff(1)</tt> en <tt>diff3(3)</tt> nodig om de context
diff-bestanden tussen revisies te kunnen genereren.
De suite met diff utility's moet op je systeem zijn geïnstalleerd, en
wanneer je RCS installeert, controleert de software op de aanwezigheid ervan.
Voorgecompileerde diffutils zijn beschikbaar op:
<verb>
ftp://sunsite.unc.edu/pub/Linux/utils/text/diffutils-2.6.bin.ELF.tar.gz
</verb>
en mirror sites. Als je <tt>diff(1)</tt>, vanuit de source moet compileren,
het is te vinden op
<verb>
ftp://prep.ai.mit.edu/pub/gnu/diffutils-2.7.tar.gz
</verb>
en mirror sites.
Je moet op je systeem ook de ELF library's hebben geënstalleerd als
je voorgebouwde binary's wilt installeren. Zie de ELF-HOWTO voor verdere
details.
</p>
</sect>
<sect><heading>RCS compileren vanuit de broncode</heading>
<p>
Haal de broncode distributie van RCS Versie 5.7 op. Het is beschikbaar
vanaf
<verb>
ftp://sunsite.unc.edu/pub/Linux/devel/vc/rcs-5.7.src.tar.gz
</verb>
en mirrors. Nadat je het archief in de source-directorystructuur hebt
uitgepakt, moet je RCS voor je systeem configureren.
Dit kun je doen via het
<tt>configure</tt> script in de source-directory, die je als eerste
uit moet voeren. Hiermee zal een <tt>Makefile</tt> en een passend
<tt>conf.sh</tt> voor je systeem worden gegeneerd.
Je kunt dan intikken:
<verb>
make install
</verb>
waarmee de binaire bestanden zullen worden aangemaakt.
Op een bepaald punt moet je wellicht met
<tt>su</tt> overschakelen naar root zodat de binaire bestanden
in de juiste directory's kunnen worden geïnstalleerd.
</p>
</sect>
<sect><heading>Aanmaken en beheren van archieven</heading>
<p>
Het programma <tt>rcs(1)</tt> maakt archieven aan en wijzigt daarvan
de kenmerken.
Een samenvatting van <tt>rcs(1)</tt> optie is de vinden in de
<tt>rcs(1)</tt> manual page.
</p>
<p>
De eenvoudigste manier om voor het eerst een archief aan te maken
is door in de huidige directory een <tt>RCS</tt> subdirectory aan te maken, en
het archief vervolgens te initialiseren met de opdracht
<verb>
rcs -i naam_werk_bestand
</verb>
Hiermee wordt een archief met de naam
<tt>./RCS/naam_werk_bestand,v</tt> aangemaakt en verzocht om een
beschrijvende tekstuele melding, maar het deponeert geen revisies in het
archief. Je kunt stricte archief locking respectievelijk in of uitschakelen
met de opdrachten
<verb>
rcs -L naam_werk_bestand
</verb>
en
<verb>
rcs -U naam_werk_bestand
</verb>
Er zijn nog andere opties voor het beheren van het archief,
instellen van het formaat, en instellen van revisienummer, welke allen worden
behandeld in de manual page van <tt>rcs(1)</tt>.
</p>
</sect>
<sect><heading><tt>ci(1)</tt> en <tt>co(1)</tt></heading>
<p>
<tt>ci(1)</tt> en <tt>co(1)</tt> zijn de opdrachten die worden gebruikt
voor het respectievelijk in- en uitchecken van bestanden in/uit RCS archieven.
De opdracht <tt>ci(1)</tt> kan ook worden gebruikt om een bestand zowel
op te halen uit een archief als in te checken. In de eenvoudigste vorm
vragen <tt>ci(1)</tt> en <tt>co(1)</tt> als argument alleen om de naam
van het werkbestand.
<verb>
ci naam_werk_bestand
</verb>
en
<verb>
co naam_werk_bestand
</verb>
De opdracht in de vorm
<verb>
ci -l naam_werk_bestand
</verb>
checkt het bestand in met locking geactiveerd en
<verb>
co -l naam_werk_bestand
</verb>
<em>wordt automatisch uitgevoerd.</em> Dat wil zeggen dat <tt>ci -l</tt>
het bestand weer ophaalt met locking geactiveerd.
<verb>
ci -u naam_werk_bestand
</verb>
checkt het bestand in het archief, en haalt het weer op met locking
gedeactiveerd. In alle gevallen, wordt de gebruiker gevraagd om een
logbericht.
<tt>ci(1)</tt> maakt een RCS archief ook aan als deze nog niet bestaat.
Als je geen revisie opgeeft, hoogt <tt>ci(1)</tt> het versienummer
van de laatste revisie in het archief op, en voegt hier het gereviseerde
werkbestand aan toe.
Als je een revisie specificeert voor een bestaande branch, moet deze hoger
liggen dan de bestaande revisienummers.
<tt>ci(1)</tt> zal ook een nieuwe branch aanmaken als je een revisie
van een branch opgeeft die niet voorkomt. Zie de
<tt>ci(1)</tt> en <tt>co(1)</tt> man pages voor details.
Voor <tt>ci(1)</tt> en <tt>co(1)</tt> zijn diverse opties beschikbaar voor
niet interactief gebruik. Nogmaals, zie de <tt>ci(1)</tt> en
<tt>co(1)</tt> man pages voor details.
</p>
</sect>
<sect><heading>Revisie historie</heading>
<p>
Het <tt>rlog(1)</tt> programma levert informatie over het archiefbestand
en iedere revisie die daarin is opgeslagen.
Een opdracht als
<verb>
rlog naam_werk_bestand
</verb>
zal de versiehistorie van het bestand afdrukken, de aanmaakdatum van
iedere revisie en
<tt>gebruikers-id's</tt> van de auteur en de persoon die
een lock op het bestand plaatste.
Je kunt archiefkenmerken en revisieparameters opgeven die dan kunnen
worden bekeken.
</p>
</sect>
<sect><heading>RCS gegevens opnemen in werkbestanden</heading>
<p>
<tt>co(1)</tt> beheert een lijst met sleutelwoorden van de RCS database
die worden geëxtraheerd wanneer het werkbestand wordt opgehaald.
Het sleutelwoord <tt>$Id$</tt> in een document zal
het extraheren naar een string waarin de bestandsnaam, het revisienummer,
de datum dat het werd opgehaald, de auteur, de revisie status, en een
eventuele persoon die een lock op het bestand heeft geplaatst, zijn opgenomen.
Het opnemen van het sleutelwoord <tt>$Log$</tt> zorgt ervoor
dat de historie-log van de revisie van het document erin wordt opgenomen.
Deze en andere sleutelwoorden kunnen worden gebruikt als zoekcriteria
voor het RCS archief. Zie de manpage van
<tt>ident(1)</tt> voor verdere details.
</p>
</sect>
<sect><heading>RCS en <tt>emacs(1)</tt> Version Control.</heading>
<p>
De Version Control faciliteit van <tt>emacs(1)</tt> werkt als een
frontend naar RCS. Deze informatie geldt in 't bijzonder voor
Versien 19.34 van GNU Emacs, die wordt geleverd met de meest gebruikte
Linux distributies. Wanneer met <tt>emacs(1)</tt> een bestand wordt
gewijzigd dat onder RCS is geregistreerd, zal de opdracht
<tt>vc-toggle-read-only</tt> (standaard gekoppeld aan <tt>C-x C-q</tt>)
een bestand in emac's Version Control checken, en vervolgens in RCS.
Emacs zal een buffer openen waarin je een logbericht kunt typen voor opname
in de RCS-log. Wanneer je klaar bent met het intikken van de logregel
typ je <tt>C-c C-c</tt> om je invoer te beëindigen en verder te gaan
met het incheck proces.
Als je strict locking hebt geselecteerd voor het bestand onder RCS, moet je
weer een lock op het bestand plaatsen om het met <tt>emacs(1)</tt> te
kunnen wijzigen. Je kunt het bestand uitchecken voor emac's Version Control
met de opdracht <tt>%</tt> in buffer-menu mode.
Zie voor meer informatie de GNU Emacs Manual en de Emacs info pages.
</p>
</sect>
</article>
</linuxdoc>
|