Patches aanmaken

Soms wilt u uw wijzigingen aanbieden om te worden nagekeken, alvorens ze vast te leggen of u hebt geen schrijftoegang tot de repository (daarom kunt u niet vastleggen). CVS biedt standaard formaten om de wijzigingen in uw werkkopie te delen, zodat anderen uw wijzigingen kunnen nakijken, testen in hun werkkopie en aanbrengen in de CVS repository. Een bestand met deze verschillen wordt a patch genoemd en wordt gegenereerd door het commando cvs diff, dezelfde manier als de verschillen in de paragraaf met de naam “Verschillen bekijken tussen revisies”. Delen van patches in plaats van bestanden vereist minder bandbreedte en patches zijn gemakkelijker te behandelen, omdat u één patch-bestand kunt verzenden met alle verschillen van vele bronbestanden.

In Cervisia wordt dit bereikt door het kiezen van GeavanceerdPatch aanmaken tegen repository...

Belangrijk

De actie Patch tegen de repository aanmaken... maakt een patch met alle wijzigingen in alle bestanden in uw werkkopie (sandbox) tegen de BASE-repository. De selectie van bestanden in het hoofdvenster heeft geen invloed op de patch die zal worden gegenereerd.

Een andere mogelijkheid is om één bestand in het hoofdvenster te selecteren en Logbestand doorbladeren... uit het menu Beeld of klik rechts op het gemarkeerde bestand en kies Logbestand doorbladeren... uit het contextmenu, om de Dialoog CVS-log te openen. Selecteer nu de versie waartegen u een patch wilt aanmaken, als revisie A en druk op de knop Patch aanmaken.... Dit genereert een patch met de verschillen tussen het gemarkeerde bestand in uw werkkopie en de versie geselecteerd als revisie A.

Alvorens de patch te maken toont Cervisia een dialoog waarmee u het uitvoerformaat kunt instellen.

Afbeelding 4.2. Een schermafdruk van Cervisia's patchdialoog

Een schermafdruk van Cervisia's patchdialoog

Uitvoerformaat

Er zijn hier drie formaten beschikbaar:

Normaal: een formaat dat kan worden gebruikt om met de ed-editor automatisch met een kopie van het oude bestand het nieuwe bestand te maken. In het normale uitvoerformaat, markeren de tekens < en > de wijzigingen en is er geen contextinformatie.

Geünificeerd: het meest gebruikte formaat voor het uitwisselen van patches. Het geünificeerde formaat gebruikt context-regels naast regelnummers om de verschillen op te slaan. Dit maakt het proces van het toepassen van patches meer robuust. Dit formaat toont de verschillen in een compacte en leesbare vorm, met een kop voor elk betrokken bestand en gescheiden secties voor elk verschil. De context-regels voor elk verschil maakt het lezen van de wijzigingen gemakkelijker. In het geünificeerde uitvoerformaat markeren de tekens + en - de wijzigingen.

Context presenteert dezelfde informatie als het geünificeerde formaat, maar op een minder compacte manier. In het uitvoerformaat markeert het teken ! de wijzigingen.

Aantal contextregels:

Stel hier het aantal context-regels in voor het geünificeerde of context-uitvoer-formaten. Deze optie is niet beschikbaar voor het normale uitvoerformaat, omdat in dat formaat geen contextinformatie wordt opgeslagen. Meer contextinformatie maakt het lezen van de ruwe uitvoer gemakkelijker en toepassen van de patch meer precies, maar vergroot de afmeting van de patch. Het is aanbevolen om minstens twee context-regels te gebruiken voor de juiste bewerking met de patch.

Negeerinstellingen

Controleer hier de wijzigingen die niet beschouwd moeten worden als verschillen bij het genereren van de patch.

Na het instellen van het uitvoerformaat genereert Cervisia de patch en toont de dialoog Opslaan als. Voer in deze dialoog de naam en locatie van het patch-bestand in.