CVS

Z GeoWikiCZ
Verze z 9. 4. 2008, 13:13, kterou vytvořil Cepek (diskuse | příspěvky) (zalozena samostatna strank poznamek k CVS)

Založení CVS repository

Pro založení nového repository slouží CVS příkaz init, kterému zadávame cestu, kde se má nové repository založit (jméno je pochopitelně libovolné). Například

cvs -d /home/novak/work/repository init

V podadresáři repository/CVSROOT jsou uloženy všechny administrativní soubory nového repository, např.

~/work$ ls -R repository/
repository/:
CVSROOT

repository/CVSROOT:
checkoutlist    cvswrappers,v  notify       posttag,v    taginfo
checkoutlist,v  Emptydir       notify,v     postwatch    taginfo,v
commitinfo      history        postadmin    postwatch,v  val-tags
commitinfo,v    loginfo        postadmin,v  preproxy     verifymsg
config          loginfo,v      postproxy    preproxy,v   verifymsg,v
config,v        modules        postproxy,v  rcsinfo
cvswrappers     modules,v      posttag      rcsinfo,v

repository/CVSROOT/Emptydir:

Tyto soubory jsou dále spravovány CVS serverem.

cvs update

Usage: cvs update [-APCdflRp] [-k kopt] [-r rev] [-D date] [-j rev]
    [-I ign] [-W spec] [files...]
        -A      Reset any sticky tags/date/kopts.
        -P      Prune empty directories.
        -C      Overwrite locally modified files with clean repository copies.
        -d      Build directories, like checkout does.
        -f      Force a head revision match if tag/date not found.
        -l      Local directory only, no recursion.
        -R      Process directories recursively.
        -p      Send updates to standard output (avoids stickiness).
        -k kopt Use RCS kopt -k option on checkout. (is sticky)
        -r rev  Update using specified revision/tag (is sticky).
        -D date Set date to update from (is sticky).
        -j rev  Merge in changes made between current revision and rev.
        -I ign  More files to ignore (! to reset).
        -W spec Wrappers specification line.

cvs a patch

CVS umožňuje pracovat na lokální kopii zdrojových textů, která nemá povolený zápis na CVS server. Pokud chceme uložit provedené změny v lokální kopii, vyrobíme nejprve soubor změn vzhledem k CVS archivu

 cvs diff -u > my.path

Změny můžeme snadno přenést do ostré kopie (s povoleným zápisem) pomocí programu patch

 patch -p0 < my.patch