Het hoofdvenster, status van bestanden bekijken en bijwerken

Wanneer u Cervisia start en een werkkopie opent door BestandSandbox openen... te kiezen, dan ziet u twee hoofdgebieden in het hoofdvenster van Cervisia: de bovenste is een hiërarchisch (boomstructuur) beeld van de huidige werkkopie; het onderste gebied wordt gebruikt de CVS commando's, die door Cervisia worden uitgevoerd om zijn taken te vervullen, evenals de uitvoer die gegenereerd wordt door deze commando's.

Standaard laat Cervisia niet de bestanden in de submappen zien, zodat u op de mappen moet klikken als u ze wilt zien. Om alle bestanden in de werkkopie te zien, selecteert u BeeldBoomstructuur uitvouwen. Om alle mappen in de werkkopie weer te sluiten, kiest u BeeldBoomstructuur invouwen.

Conform de instellingen in de bestanden .cvsignore, zullen de bestanden die u meestal niet wilt toevoegen in de repository, zoals bijvoorbeeld object-bestanden, niet getoond worden. Voor ieder bestand kunt u de bijbehorende status zien. Standaard is dit "Onbekend" omdat Cervisia het ophalen van gegevens pas doet wanneer u kiest voor BestandBijwerken of BestandStatus. Met deze werkwijze heeft u in ieder geval een minimale hoeveelheid aan functionaliteit tot uw beschikking, zelfs wanneer u niet de beschikking heeft over een permanente verbinding met de CVS-server.

Afbeelding 2.4. Een schermafdruk van het hoofdscherm

Een schermafdruk van het hoofdscherm

De commando's in het menu Bestand zullen alleen maar uitgevoerd worden op de bestanden die gemarkeerd zijn. U kunt ook mappen markeren. Kies nu de optie BestandBijwerken of druk op F5. Cervisia gebruikt het commando

cvs update -n bestandsnamen

om status-informatie te krijgen over de gemarkeerde bestanden. Bedenk dat Cervisia alleen maar recursief door de submappen zal controleren wanneer u de betreffende optie in het menu Instellingen activeert. U kunt de status van de bestanden uitlezen in de kolom Status:

Lokaal gewijzigd

Dit betekent dat het bestand gewijzigd is ten opzichte van de versie in de repository.

Lokaal toegevoegd

Dit betekent dat het bestand niet bestaat in de repository, maar wel in de werkmap staat. Het staat dus op de planning om aan de repository toegevoegd te worden. Het werkelijk toevoegen aan de repository gebeurt bij het vastleggen. Dit wordt "commit" genoemd.

Lokaal verwijderd

Dit betekent dat het bestand staat gepland om verwijderd te worden, maar dat het nu nog bestaat in de repository. Het werkelijk verwijderen gebeurt alleen na een commit.

Bijwerken noodzakelijk

Dit wordt getoond wanneer er een nieuwere versie van het bestand bestaat in de repository, bijv. wanneer iemand anders een aanpassing heeft gecommit. Normaal gesproken wilt u dit bestand bijwerken in uw lokale repository zodat u een versie in uw lokale map hebt staan die recent is.

Patch noodzakelijk

Dit is identiek aan hierboven. Het verschil is alleen dat als u gekozen heeft voor Bijwerken, de CVS-server alleen een patch naar u toe stuurt in plaats van het hele bestand.

Samenvoegen noodzakelijk

Geeft aan dat samenvoegen (merge) van de revisie van het bestand in uw werkmap met de versie in de repository nodig is. Dit gebeurt wanneer u aanpassingen aan het bestand hebt gemaakt terwijl iemand anders ook zijn/haar aanpassingen heeft vastgelegd (commit) in de repository. Wanneer u kiest voor bijwerken worden de gemaakte aanpassingen in de repository samengevoegd met uw bestand. Wanneer er een conflict plaatsvindt (bijvoorbeeld wanneer iemand dezelfde regels als u hebt veranderd) dan zal de kolom status "Conflict" aangeven.

Actueel

Geeft aan dat het bestand identiek is met die in de repository.

Conflict

Dit wordt getoond wanneer het bestand nog conflictmarkeringen bevat. Misschien heeft u reeds het bestand bijgewerkt en niet de conflicten opgelost.

Niet in CVS

Geeft aan dat een bestand niet geregistreerd is in de CVS-repository. Wanneer u het bestand beschikbaar wilt stellen aan anderen zult u het moeten toevoegen aan de repository. Wanneer dat niet de bedoeling is dan kunt u overwegen om het toe te voegen aan het bestand .cvsignore.

Nu dat we een overzicht hebben van de huidige status van het CVS zou u een update kunnen uitvoeren. Markeer enkele bestanden (of de hoofdmap van een mappenstructuur, waarmee u gelijk alle bestanden in de hoofdmap selecteert). Kies nu de optie BestandBijwerken. (Uiteraard had u daar ook mee kunnen beginnen in deze sessie). Voor enkele van de bestanden kan de status daarmee veranderen. Met name de bestanden die waren gemarkeerd als "Patch benodigd" of "Bijwerken noodzakelijk". De kolom Status kan nu ook het volgende bevatten:

Bijgewerkt

Wordt getoond wanneer het bestand is bijgewerkt vanuit de repository.

Gepatched

Geeft aan dat de CVS-server een patch heeft verzonden voor dit bestand en dat deze succesvol is aangebracht. Wanneer de patch niet succesvol was omdat er een conflict is ontstaan tussen uw aanpassingen en de aanpassingen van iemand anders die reeds zijn vastgelegd (commit) in de repository zal de status van het bestand veranderen in Conflict.

U zult waarschijnlijk al gezien hebben dat sommige rijen een andere kleur hebben nagelang de status van het bestand. Bijvoorbeeld: een bestand met een conflict wordt met rood gemarkeerd om aan te geven dat er een conflict is dat eerst opgelost moet worden voordat u verder kunt gaan werken aan het bestand. Wanneer de map een hoop bestanden heeft kunt u daarmee wel eens het overzicht verliezen. Klik in zo'n situatie op het kolomhoofd van de kolom Status. De lijst met bestanden wordt dan gesorteerd op de prioriteit van de status, waardoor de meest belangrijke informatie bovenaan staat. Om weer terug te keren naar de weergave waarbij de bestanden alfabetisch gesorteerd zijn, klik op de koptekst van de kolom Bestandsnaam.