FreeBSD kézikönyv
Előző | Függelék A. A FreeBSD beszerzése | Következő

# A.4. Anonim CVS

## A.4.1. Bevezetés

Az anonim CVS (vagy más néven anoncvs) a FreeBSD-hez mellékelt CVS-es segédprogramok által nyújtott olyan lehetőség, amivel távoli CVS repositorykkal tudunk szinkronizálni. Több más dolog mellett lehetővé teszi a FreeBSD felhasználói számára, hogy kiemelt jogosultságok nélkül képesek legyenek olvasással kapcsolatos CVS műveleteket végrehajtani a FreeBSD Projekt hivatalos anoncvs szerverein. A használatához egyszerűen csak a kiválasztott anoncvs szervert kell beállítani a `CVSROOT` környezeti változó értékének, ahol aztán a `cvs login` parancsnak a szerver által ismert “anoncvs” jelszót kell megadni. Ezután a cvs(1) paranccsal a többi CVS szerverhez hasonlóan lehetőségünk nyílik hozzáférni.

> Megjegyzés: A `cvs login` parancs a bejelentkezésekhez szükséges jelszavakat a `HOME` könyvtárunkban levő `.cvspass` állományban tárolja. Ha ez az állomány nem létezik, akkor a `cvs login` első használatakor hibát kapunk. Ilyenkor csak hozzunk létre egy üres `.cvspass` állományt, majd próbálkozzunk újra.

Habár azt mondhatnánk, hogy a CVSup és az anoncvs lényegében egyazon feladatot oldják meg, mind a két esetben léteznek olyan kompromisszumok, amelyek befolyásolhatják a felhasználó választását a két szinkronizációs módszer között. Dióhéjban ezt úgy tudnánk összefoglalni, hogy a CVSup a hálózati erőforrásokat hatékonyabban kihasználja és kettejük közül ez a fejlettebb, azonban ennek meg kell fizetnünk az árát. A CVSup használatához először ugyanis telepítenünk kell és be kell állítanunk egy speciális klienst, illetve az adatokat a CVSup által gyűjteményeknek (collection) nevezett, viszonylag nagy méretű egyeségekben érhetjük el.

Ezzel szemben az anoncvs használata során a megfelelő CVS modul nevének felhasználásával tetszőlegesen megvizsgálhatunk önálló állományokat vagy akár programokat (mint az `ls` vagy a `grep`). Természetesen az anoncvs segítségével csupán az olvasást igénylő CVS műveleteket végezhetjük el, ezért ha a FreeBSD Projekt keretein belül fejleszteni is szeretnénk, akkor inkább érdemes a CVSup alkalmazást választani.

## A.4.2. Az anonim CVS használata

A cvs(1) parancsot nagyon könnyű beállítani az anonim CVS repositoryk használatához, hiszen mindössze annyit kell tennünk, hogy a `CVSROOT` környezeti változó értékének megadjuk a FreeBSD Projekt valamelyik anoncvs szerverét. Ezen sorok írásának pillanatában a következő szerverek érhetőek el:

- Franciaország: :pserver:anoncvs@anoncvs.fr.FreeBSD.org:/home/ncvs (pserver (a jelszó “anoncvs”), ssh (nincs jelszó))

- Japán: :pserver:anoncvs@anoncvs.jp.FreeBSD.org:/home/ncvs (a `cvs login` használatánál a jelszó “anoncvs”.)

- Tajvan: :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs (pserver (a `cvs login` használatával tetszőleges jelszó megadható), ssh (nincs jelszó))

      SSH2 HostKey: 1024 02:ed:1b:17:d6:97:2b:58:5e:5c:e2:da:3b:89:88:26 /etc/ssh/ssh_host_rsa_key.pub
      SSH2 HostKey: 1024 e8:3b:29:7b:ca:9f:ac:e9:45:cb:c8:17:ae:9b:eb:55 /etc/ssh/ssh_host_dsa_key.pub

- Egyesült Államok: freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs (csak ssh -- nincs jelszó)

      SSH HostKey: 1024 a1:e7:46:de:fb:56:ef:05:bc:73:aa:91:09:da:f7:f4 root@sanmateo.ecn.purdue.edu
      SSH2 HostKey: 1024 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65 ssh_host_dsa_key.pub

- Egyesült Államok: anoncvs@anoncvs1.FreeBSD.org:/home/ncvs (csak ssh2 -- nincs jelszó)

      SSH2 HostKey: 2048 53:1f:15:a3:72:5c:43:f6:44:0e:6a:e9:bb:f8:01:62 /etc/ssh/ssh_host_dsa_key.pub

Mivel a CVS használatával “kikérhetjük” (check out) tulajdonképpen a FreeBSD forrásainak akármelyik eddigi (vagy majd ezután keletkező) változatát, érdemes megismerkednünk a cvs(1) által alkalmazott revízió (revision) (az `-r` opcióval állítható) fogalmával és a FreeBSD Projekt repositoryjain belül engedélyezett értékeivel.

Címkéket (tag) két esetben használhatunk: a revíziók és az ágak esetén. A revíziós címkék mindig egy adott revízióra hivatkoznak, ami állandóan ugyanazt jelenti. Ezzel szemben az ágak címkéi a fejlesztés adott irányú menetének az adott pillanatban legfrissebb revízióját hivatkozzák. Mivel az ágak címkéi nem egy adott revízióra vonatkoznak, ezért elmondhatjuk róluk, hogy naponta változik a jelentésük.

Az A.7 Szakasz tartalmazza a felhasználók számára fontos revíziós címkéket. Ezek azonban nem igazak a Portgyűjteményre, mivel a Portgyűjteménynek nincs egyszerre több fejlesztési iránya.

Egy ág címkéjének megadásával általában az adott irányhoz tartozó állományok legfrissebb változatát kapjuk meg. Ha viszont az állományok egy korábbi változatára lenne szükségünk, akkor a `-D dátum` opció megadásával meg tudjuk adni annak időpontját. Erről részletesebben a cvs(1) man oldalán olvashatunk.

## A.4.3. Példák

Habár a továbbhaladáshoz mindenképpen javasoljuk a cvs(1) man oldalának részletes áttanulmányozását, mutatunk néhány gyors példát az anonim CVS használatának tömör illusztrálására:

Példa A-1. Valami (az ls(1)) kikérése a -CURRENT ágból

    % setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
    % cvs login
    “Jelszóként” ezután bármit megadhatunk.
    % cvs co ls

Példa A-2. Az `src/` fa kikérése SSH-n keresztül

    % cvs -d freebsdanoncvs@anoncvs.FreeBSD.org:/home/ncvs co src
    The authenticity of host 'anoncvs.freebsd.org (128.46.156.46)' can't be established.
    DSA key fingerprint is 52:02:38:1a:2f:a8:71:d3:f5:83:93:8d:aa:00:6f:65.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added 'anoncvs.freebsd.org' (DSA) to the list of known hosts.

Példa A-3. Az ls(1) 6-STABLE ágban szereplő változatának kikérése

    % setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
    % cvs login
    Amikor kéri,  “jelszóként” bármit megadhatunk.
    % cvs co -rRELENG_6 ls

Példa A-4. Az ls(1) változásainak (Unified Diff formátumú) listázása

    % setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
    % cvs login
    Itt “jelszóként” bármit megadhatunk.
    % cvs rdiff -u -rRELENG_5_3_0_RELEASE -rRELENG_5_4_0_RELEASE ls

Példa A-5. A használható modulok nevének kiderítése

    % setenv CVSROOT :pserver:anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs
    % cvs login
    Ezután  “jelszóként” bármit megadhatunk.
    % cvs co modules
    % more modules/modules

## A.4.4. Egyéb helyek

A következő helyeken találhatunk még hasznos információkat a CVS használatáról:

- A CVS bemutatása (forrás: Kaliforna Állami Műszaki Egyetem).

- A CVS honlapja, a CVS fejlesztésével és alkalmazásával foglalkozó közösség oldala.

- A CVSweb a FreeBSD Projekt által használt CVS rendszerének webes felülete.

Előző | Tartalom | Következő
BitTorrent | Fel | A CTM használata

Ha kérdése van a FreeBSD-vel kapcsolatban, a következő címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon: <gabor@FreeBSD.org>.