Taggen en branching

We bespreken hier alleen maar de technische aspecten van tagging en branching. Wanneer u een gebruiker bent en niet de beheerder van de repository, dan zult u waarschijnlijk niet geconfronteerd worden met dit probleem. Wanneer u daarentegen wel de beheerder van een repository bent, kunt u beter eerst over de niet-technische problemen van branching lezen om een impressie te krijgen van hoe tijdsconsumptief en foutgevoelig het onderhouden van verschillende branches binnen een project kan zijn. De appendix bevat enkele referenties over dit onderwerp.

Simpel tagging is iets wat u normaliter doet wanneer een uitgave (release) wordt gedaan zodat op ieder moment in de toekomst makkelijk kunt terugkeren naar de status van het project op een bepaalde tijdstip in het verleden. Tags krijgen meestal een naam die bestaat uit de projectnaam en het versienummer. Bijvoorbeeld Cervisia 1.0 is beschikbaar onder de tag CERVISIA_1_0. Cervisia dwingt strikte CVS-regels af over wat nu een geldige tag-naam is. Het moet beginnen met een letter en mag bestaan uit letters, verbindingstreepjes en underscores.

Normaal gesproken wilt u het hele project voorzien van een tag (alhoewel CVS het ook toelaat dat u slechts een subset markeert met een tag). Om dit te bereiken, markeert u de hoofdmap in de weergave en kiest u voor GeavanceerdTag/Branch. Vul nu de naam in van de tag en druk op de toets Return en u bent klaar.

Een branch aanmaken is niet veel moeilijker. In het dialoogvenster voor het aanmaken van tags activeert u Branch aanmaken met deze tag. U kunt ook een bestaande tag verwijderen. Kies GeavanceerdTag verwijderen in de hoofdweergave.

Een ander aspect van branching is het samenvoegen van wijzigingen van een branch naar de huidige branch. Wanneer u dit gaat doen, kiest u GeavanceerdSamenvoegen.... Het venster wat dan verschijnt geeft u twee mogelijkheden:

Ofwel u mag alle wijzigingen op een branch samenvoegen met de huidige branch. In dat geval kiest u voor Samenvoegen van branch en vult u de branch in waarmee u wilt samenvoegen. Cervisia zal dan het volgende commando uitvoeren:

cvs update -j branchtag

De andere mogelijkheid is dat u alleen wijzigingen wilt samenvoegen die gemaakt zijn tussen twee tags op een branch. Dit gebeurt meestal wanneer u een aantal malen samenvoegt van dezelfde branch naar de [trunk]. In dat geval kiest u voor Aanpassingen samenvoegen en vul (in de juiste volorde) de twee betreffende tags in. Dit zal dan resulteren in het commando

cvs update -j branchtag1 -j branchtag2