Importeren van een module in de repository

In deze sectie bespreken we hoe u een nieuw project in de CVS-repository kunt aanmaken. Wanneer u alleen maar wilt werken met een bestaand project in de repository dan kunt u deze sectie overslaan.

Er zijn twee manieren om een project in de CVS te stoppen:

  • Importeer de bestanden en mappen naar een nieuwe module, met behulp van de importeerdialoog van Cervisia. Modules zijn de hoogste mappen in de boomstructuur van de CVS repository en worden gebruikt om de verschillende software projecten in de repository apart te houden en te organiseren.

  • Maak een lege module aan en voeg de nieuwe bestanden en mappen handmatig toe. U zult meer controle hebben, maar het zal waarschijnlijk een beetje meer tijd kosten.

Belangrijk

Houdt in gedachten dat CVS oorspronkelijk is ontworpen om tekstbestanden te behandelen. Veel functies, zoals revisie samenvoegen, verschillen maken in een leesbare vorm, etc. worden alleen toegepast op tekstbestanden. Dit betekent niet dat u de CVS niet kan gebruiken voor binaire bestanden, het betekent dat u de CVS expliciet moet vertellen of het een tekst- of binair bestand is. Als u het verkeerde type bestand aangeeft, dan zult u problemen ervaren met de functionaliteit van CVS voor deze bestanden en kunnen ze verminkt raken.

Een project importeren (als een nieuwe module) heeft enige voordelen: u kunt alle bestanden en mappen recursief importeren en de module zal automatisch voor u worden aangemaakt. Dit maakt het importeren van grote bestaande projecten naar de repository gemakkelijker. Er zijn echter ook enkele nedelen: u kunt geen gebruik maken van de importdialoog van Cervisia om bestanden aan bestaande modules toe te voegen en u kunt de bestanden ofwel als tekst of als binaire bestanden importeren. U kunt om de beperkingen heen werken door een map met bestanden van alleen één van deze types aan te maken of door de patronen van de bestanden die genegeerd moeten worden bij het importeren te specificeren.

Veronderstel bijvoorbeeld dat uw project alleen tekstbestanden en enige PNG-afbeeldingen (binaire bestanden) bevat. U kunt CVS vertellen om alle bestanden met het patroon *.png te negeren bij bij het importeren van de andere bestanden als tekst of u kunt de afbeeldingen naar een aparte map verplaatsen en dan de overige bestanden (als tekstbestanden) importeren. Op beide manieren moet u een checkout op de nieuw geïmporteerde module doen naar een nieuwe werkkopie, de ontbrekende bestanden en mappen er naar toe kopiëren, toevoegen en ze vastleggen (commit) in de repository om het proces van importeren te voltooien.

Als een alternatief kunt u de bestanden en mappen handmatig toevoegen, daarmee een lege module voor ze aan te maken. Om een lege module aan een repository toe te voegen, maakt u een nieuwe map aan in de basismap van de CVS repository. De naam van deze nieuwe map is de naam van de module. Checkout de nieuwe lege module. Kopieer daarna de bestanden en mappen naar de werkkopie, voeg toe en leg vast (commit) om ze te uploaden naar de CVS repository.

Afbeelding 2.2. Een schermafdruk van Cervisia's import venster

Een schermafdruk van Cervisia's import venster

In Afbeelding 2.2, “Een schermafdruk van Cervisia's import venster” kunt u de dialoog zien die u helpt om een project als een module te importeren. Om toegang te krijgen tot de importdialoog van Cervisia, kiest u het menu-item RepositoryImporteren....

Repository:

Voer de naam van de CVS-repository in of selecteer deze uit het afrolvak. De naam wordt ook wel $CVSROOT genoemd. U moet er schrijftoegang hebben en de repository dient geïnitialiseerd te zijn. Wanneer de repository nog niet bestaat, maak deze dan aan met het kiezen van het menu-item RepositoryAanmaken....

Het afrolvak toont een lijst met repositories die u eerder hebt ingevoerd met het dialoogvak Toegang tot repositories instellen. Indien de repository zich bevindt op een server, zorg er dan voor dat de authenticatie werkt, bekijk hiervoor de sectie de paragraaf met de naam “Toegang tot de repository”.

Module:

De naam van de module waaronder het project bewaard zal worden. Na het importeren, kan het project uitgecheckt worden onder deze naam. Zie de sectie de paragraaf met de naam “Een module uitchecken van de repository” voor meer informatie. Dit is tevens de naam van de corresponderende map in de repository.

Werkmap:

Dit is de hoofdmap van het project dat u wilt importeren. Het importeren start vanuit deze hoofdmap. Alle onderliggende mappen worden ook geïmporteerd.

Distributeurtag:

De vendor tag is van oorsprong bedoeld om bronbestanden van derde partijen of fabrikanten op te zoeken. Wanneer u geen idee hebt wat u ermee aan moet kunt u gewoon uw gebruikersnaam invullen. Het maakt niet zoveel uit wat u hier invult.

Uitgave-tag:

Deze tag wordt van oorsprong gebruikt voor het importeren van verschillende versies van software van derde partijen. Wanneer dit niet van toepassing is,gebruik dan het woord start of FOO_1_0, FOO is de naam van uw project en 1.0 is het versienummer van de geimporteerde uitgave.

Bestanden negeren:

Indien u dit veld invult, dan zal een extra optie -I bestandsnamen worden meegegeven aan het commando cvs import. Deze, met een spatie gescheiden bestanden (jokertekens zijn hierin toegestaan), worden niet meegenomen tijdens het importeren. In het algemeen is het handiger om een aparte map te maken met alle bestanden die u wilt importeren. Dit voorkomt ook fouten. Andersom kan dit veld wel handig zijn om bestanden te importeren die normaalgesproken door CVS genegeerd worden, zoals bijv. bestanden met de naam core. In dit soort gevallen, kunt u in de lijst de bestandsnaam invullen, voorafgegaan door een !. Dit zorgt er dan voor dat dit bestand juist wel wordt meegenomen. Een lijst met bestandsnamen die normaalgesproken niet worden meegenomen is te vinden in het gedeelte de paragraaf met de naam “Genegeerde bestanden”.

Commentaar:

Gebruik dit veld om het commentaar dat u zou willen opslaan over de oorsprong, gebruik, ontwikkeling, etc. van de bestanden die u aan het importeren bent.

Als binairies importeren

Indien u deze optie activeert, zullen alle bestanden geimporteerd worden in de binaire modus. Dit houdt in dat de parameter -kb wordt meegegeven aan het commando cvs import.

Het modificatietijdstip van het bestand als tijdstip van importeren gebruiken

Als u dit vakje activeert zal het tijdstip van importeren worden gebruikt als het modificatietijdstip van het bestand.

Nadat u dit formulier hebt ingevuld en bevestigd door OK in te drukken, zal het volgende CVS-commando worden gebruikt:

cvs -d repository import -m "❷" module leverancierstag vrijgavetag