RCS

Hva er RCS?

RCS er et system for versjonskontroll av enkeltfiler.

Hva med CVS?

CVS var opprinnelig et overbygg til RCS, men har tatt en egen retning. CVS egner seg superdupert til store prosjekter som mange jobber på. Gjerne på forskjellige maskiner. RCS egner seg superdupert til enkeltfiler og til prosjekter som blir utviklet på en maskin. CVS har en del fordeler over RCS mht. at man slipper å låse osv., men krever litt mer infrastruktur osv..

Hvordan komme i gang?

Du har en fil som heter super.c i katalogen /local/super. Start med å lage en katalog i /local/super som heter RCS. I denne katalogen havner informasjon om utviklingen av filen super.c og alle andre filer i /local/super som det blir brukt RCS på. Du kan godt droppe å lage denne katalogen, men da havner RCS-informasjonen i super.c,v og det er litt rotete.

prompt> cd /local/super
prompt> mkdir RCS

Kommandoene ci og co brukes for å "sjekke" en fil inn og ut av RCS. Når en fil er sjekket inn blir skrivetilgangen til den fjernet.

Første gang du sjekker inn filen blir du spurt om en beskrivelse av filen. Her er det bare å skrive i vei. Avslutt med å skrive punktum på starten av en linje eller Ctrl-D.

prompt> ci -u -i super.c
RCS/super.c,v  <–  super.c
enter description, terminated with single '.' or end of file:
NOTE: This is NOT the log message!
>> Dette er min supre fil som jeg vil bruke rcs på
>> .
initial revision: 1.1
done
prompt>

Hvordan bruke RCS til daglig?

Når du skal editer filen må du først sjekke den ut.

prompt> co -l super.c
RCS/super.c,v  –>  super.c
revision 1.1 (locked)
done
prompt> vim super.c

Opsjonen -l til co brukes for å låse filen slik at ingen andre editerer den samtidig.

Etter at du har editert ferdig og sjekket at forandringene dine ikke har ødelagt noe sjekker du inn filen og skriver hva du har gjort etterfulgt av ctrl-d eller . på starten av en linje.

prompt> ci -u super.c
RCS/super.c,v  <–  super.c
new revision: 1.2; previous revision: 1.1
enter log message, terminated with single '.' or end of file:
>> Nå har jeg lagt til en fin funksjon
>> Den funker superdupert og gjør alt mulig rart
>> .
done
prompt>

Opsjonen -u betyr at filen skal låses opp. Du kan bruke kommandoen rlog til å se på loggemeldingen til denne filen.

Hvordan legge informasjon om revisjonen inn i filen?

RCS tilbyr noen forskjellige tagger du kan bruke i dokumentet ditt. Id: er en slik tagg bare at den skal ha $ før og etter. Det er vanlig å gjemme disse i komentartagger. Id taggen for dette dokumentet ser slik ut:

$Id: rcs,v 1.2 2003/11/20 23:38:01 anoncvs Exp $

Informasjonen mellom det første : og det siste $ blir altså oppdatert automagisk.

Hva kan jeg bruke den informasjonen RCS lagrer til?

Når du har tatt i bruk RCS har du fått orden på livet ditt. Nå kan du bruke rlog filnavn for å se hvilke forandringer som ble gjort når. Hver revisjon kommer da opp med et revisjonsnummer. Med rcsdiff kan du finne forskjeller mellom revisjoner. Det er veldig nyttig nÃ¥r du skal se hva andre har gjort eller finne ut hva som gikk galt.

Hva kan gå galt?

Om noen som ikke kjenner til RCS skal editere på en fil i RCS vil de kanskje bruke chmod på filen og editere den uten å sjekke den ut først. Det vil fungere helt til noen som kjenner RCS sjekker ut filen. Da vil nemlig alle forandringer siden forrige innsjekk bli fjernet.

Hvordan kan jeg lære mer om dette?

Les manualsider.

Lenker: Start

Mail: itk@samfundet.no | Telefon: 992 15 925 | Sist endret: 2007-06-09 19:20 | Revisjon: 7 (historie, blame) | Totalt: 1479 kB | Rediger