Kapitel 5. Avanceret brug

Indholdsfortegnelse

Opdatering til mærke, gren eller dato
Mærkning og forgrening
Brug overvågning
Låsning

Opdatering til mærke, gren eller dato

Et moduls grene er parallelle udgaver af modulet. Et eksempel på brugen af denne funktion fra det virkelige liv, er udgivelsen af et softwareprojekt. Efter en større udgivelse er der fejl i koden der skal rettes, samtidig vil folk føje nye funktioner til programmet. Det er svært at gøre begge dele på samme tid fordi nye funktioner normalt medfører nye fejl, hvilket gør det svært at finde de gamle. For at løse dette dilemma lader CVS dig oprette en parallel udgave som kaldes den "stabile udgivelsesgren" hvor man kun kan tilføje fejlrettelser. På den måde er hovedgrenen (HEAD) stadig åben for tilføjelse af nye funktioner.

Mærker bruges til at markere en version af projektet. CVS markerer en version af hver fil med mærket, sådan at når du tjekker ud eller opdaterer til et bestemt mærke, vil du altid få de samme filversioner. Derfor, i modsætning til grene, er mærker ikke dynamiske. Du kan ikke udvikle på en mærke. Mærker er til stor nytte til at markere udgivelser, store ændringer i koden osv..

Når du udvikler eller følger en udvikling af et softwareprojekt, arbejder du ikke nødvendigvis i hovedgrenen hele tiden. Efter en udgivelse vil du måske blive i den udgivede gren et stykke tid for at nyde at den er relativt stabil, for at rette fejl, oversætte osv.. For at gøre alt dette, skal du opdatere til den udgivede gren. Alle dine filer bliver opdateret til den seneste version af filerne i den gren. Efter en opdatering bliver også alle dine nye bidrag lagt op til denne nye gren.

Desuden, vil du følge en programfejl der var rapporteret mod en tidligere markered udgivelse, tilbyder CVS muligheden for at hente softwren som den var da den blev udgivet, ved at opdatere til netop det mærke. Derudover, hvis du vil hente en tidligere version af dit projekt, kan du opdatere din arbejdskopi til en specifik dato. Det kan være nyttigt hvis en fejl blev introduceret i projektet mellerm to udgivelser og du har en idé om hvornår det var. Når du opdaterer til en dato eller et mærke, bliver dine filversioner de samme som versionerne til den specifikke dato eller med det bestemte mærke.

Advarsel

Før du opdaterer til en bestemt gren eller et mærke, skal du sikre dig du har sendt alle dine ændringer ind. Hvis du ikke er klar til at indsende ændringerne, men ikke vil kassere dem, skal du ikke opdatere til den nye gren, da du kan så risikere at de går tabt. Alternativt kan du lave en ny udtjekning så du kan arbejde på de to versioner parallelt.

Figur 5.1. Et øjebliksbillede af Cervisias dialog for at opdatere til et mærke


Et øjebliksbillede af Cervisias dialog for at opdatere til et mærke
Opdatér til gren

Vælg dette tilvalg for at opdatere til en gren. Indtast navnet på grenen i drop ned-listen (eller tryk på Hent liste-knappen for at hente listen af grene fra CVS-serveren og vælg den du vil hente.

Opdatér til mærke

Vælg dette tilvalg for at opdatere til et mærke. Indtast navnet på mærket i drop ned-redigeringsfeltet (eller tryk på Hent liste-knappen for at hente listen af mærker fra CVS-serveren og vælg den du vil bruge i drop ned-listen.

Opdatér til dato

Vælg denne indstilling for at opdatere til en dato. I feltet herunder kan du indtaste en lang række datoformater. Et muligt format er åååå-mm-dd hvor åååå er året, mm er måneden (numerisk) og dd er dagen. En anden mulighed er nogle engelske ord, såsom "yesterday" (i går) eller "2 weeks ago" (for to uger siden).

Bemærk

Begge ovenstående valgmuligheder gør mærket eller datoen 'klæbrig', dvs. du kan ikke tilføje yderligere ændringer for disse filer (hvis ikke mærket er et grenmærke). For at komme tilbage til stammen, også kendt som grenen med navnet HEAD (hovedversionen), bruges menupunktet Avanceret->Opdatér til hovedversion (HEAD).

Kommandoen der køres for at opdatere til en gren eller et mærke er:

cvs update -r mærke

Kommandoen der køres for at opdatere til en dato er:

cvs update -D dato

Kommandoen der køres for at opdatere til hovedversionen (HEAD) er:

cvs update -A