4-dílný seriál o SCM systému CVS, který má za cíl popsat základní principy práce s tímto systémem. Stavy verzí souborů, základní syntaxe příkazů CVS, mazání verzí.
13.12.2010 00:00 | Miloslav Ponkrác | czytane 7427×
RELATED ARTICLES
KOMENTARZE
Stavy verzí souborů
Při vytváření projektu a práci na projektu se každý soubor dostává v
zásadě do tří možných stavů. Je to stav, kdy ho vytváříte, a nemáte ho
ještě prozkoušený. Potom nic nezaručujete. Takový stav nazývejme
experimentální. Dále je to stav, kdy jste soubor otestovali, můžete říci,
že jste se snažili zbavit se všech možných chyb. To je stav stabilní verze.
A potom je to stav, kdy soubor prošel testováním, a je určen k distribuci
zákazníkovi.
Tyto údaje můžete také systému CVS sdělovat. Pokud se na to vykašlete,
CVS automaticky všechny verze všech souborů bude označovat jako
experimentální. Stav souboru v projektu vám vypíše v každém podrobnějším
výpise změn, třeba v logovacím výpisu. Taktéž
příkaz status vám vypíše stav souboru. Za slovem State: vám
vypíše jedno ze tří slov:
- Exp - experimentální verze
- Stab - stabilní verze
- Rel - verze určená k distribuci
Pokud chceme nějakou verzi označit jako stabilní, použijeme příkaz:
cvs admin -sStab jmeno_souboru
Pokud chceme nějakou verzi označit jako určenou k distribuci, použijeme
příkaz:
cvs admin -sRel jmeno_souboru
Pokud například označíte soubor pokus.c jako stabilní verzi, nebo
určenou k distribuci, platí to pouze pro tuto verzi. Jakmile soubor pokus.c
změníte, a natáhnete ho do CVS, potom ho systém CVS automaticky označí zase
jako experimentální. Víte tedy, která verze je jaká, a zejména pro
vedoucího projektu toto dělení verzí přináší velký užitek.
Základní syntaxe příkazů CVS
Tato kapitola trochu podrobněji podává o příkazech cvs. Vzhledem k tomu,
že v předcházejícím textu je již mnoho informací o různých volbách, tato
kapitola podává celkový pohled na příkazy programu cvs.
Základní syntaxe při používání cvs je:
cvs globální_volby jméno_příkazu volby_příkazu
parametry
Ačkoli to vypadá složitě, tak je to jednoduché. Globální volby jsou
volby, které můžete (nebo nemusíte) použít pro každý příkaz, a pro každý
příkaz znamenají totéž. Potom následuje jméno příkazu, třeba commit.
Dále můžete (nebo nemusíte) použít volby, které se vážou jenom k tomu
příkazu, který jsme teď použili. Dále mohou následovat parametry,
nejčastěji je to jméno souboru, nebo projektu.
Protože globální volby jsou stejné pro každý příkaz, vypíšeme si zde ty
najčastěji používané:
- -d adresář_s_daty_CVS - umožňuje systému CVS říci, kde máte
uložená data pro CVS. Pokud jste si nastavili proměnnou CVSROOT, nebudete
tuto volbu potřebovat, jinak musíte tuto volbu použít.
- -e editor - umožňuje říci, že pro napsání komentáře si přejete
spustit editor, který se vám líbí. Místo slova editor zadejte cestu k
vašemu oblíbenému editoru. Pokud tuto volbu nepoužijete, ve Windows se
spustí Notepad. Abyste nemuseli svůj oblíbený editor zadávat při každém
příkazu pomocí volby -e, můžete přidat do AUTOEXEC.BAT (ve Windows,
Unixáci do .profiles) nastavení proměnné CVSEDIT, případně EDITOR.
- -n - toto je jakési divadlo. Pokud použijete volbu -n,
můžete si být jistí, že nic se neprovede, pouze program cvs vypíše na
obrazovku to samé, jako by se příkaz provedl.
- -q - příkaz omezuje množství zpráv na obrazovku. Řekněme, že
toho vypíše o trochu méně, a vypisuje jenom podstatnější věci.
- -Q - dělá z cvs neviditelného nindžu. Prostě se program skutečně
krotí, a nevypisuje opravdu nic, pokud nenastanou nějaké vážné chyby. Pokud
vše probíhá v pořádku, je program tichý, respektive s čistou
obrazovkou.
- -t - vypisuje naopak co nejvíce na obrazovku. Je vhodné používat
společně s volbou -n, pokud chcete vyzkoumat, co určitý příkaz
přesně dělá.
Pro odvážné - mazání verzí
Někdy se stává, že vám dochází místo na disku. S každou zaznamenanou
změnou vám narůstá velikost prostoru zabraného daty systému CVS. Jak bylo
již psáno, každá změna se zaznamenává na věky věků. Pokud jste si jisti, že
se již nikdy nebudete potřebovat vrátit k některým verzím, lze je ze
systému CVS odmazat, a ušetřit tak něco málo diskového prostoru. Používání
této možnosti záleží na vašem stylu práce a také na vašich nervech.
Osobně doporučuji ukládat do CVS verze, které jsou alespoň částečně
odladěné. Pokud pracujete v týmu, je nutné, abyste do CVS nahrávali pouze
funkční verze, aby vaši spolupracovníci mohli na vašich verzích stavět.
Pokud jste ale sám a dáváte přednost tomu, ukládat svoji práci do CVS třeba
i vícekrát denně, zejména u krátkodobých projektů, může se vám hodit
možnost některé nevýznamné verze později odmazat. Ale pokud chcete znát můj
názor, funkce pro odmazávání verzí raději nepoužívám, je možno jimi nadělat
velký zmatek.
Pro používání funkce výmazu verzí je potřeba tedy především myslet.
Musíte si být absolutně jistí tím, co děláte. Základním příkazem pro
odmazání verzí je příkaz:
cvs admin -o číslo_verze jméno_souboru
Pokud chcete odmazat verzi 1.4 souboru budulinek.txt, provedete to
takto:
cvs admin -o 1.4 budulinek.txt
Užitečnější je odmazat verze v určitém rozsahu, například od verze 1.3
do verze 2.5. To se provede takto:
cvs admin -o 1.3::2.5 budulinek.txt
Tento příkaz dělá přesně to, že nechá verzi 1.3 a nižší, stejně tak jako
verze 2.5 a vyšší, a všechny verze mezi tím odmaže.
Závěr
Systém CVS toho umí mnohem více, než jsem zde popsal. Pokud vás něco o
zajímá, můžete mi napsat. Také
budu rád za veškeré vaše zkušenosti s CVS. Pokud se k tomu dostanu, rád
bych tento manuál ještě rozšířil, takže mi napište i tehdy, pokud chcete
mít k dispozici případnou další verzi.
Licence: Tento dokument lze volně šířit pro nekomerční účely, bude-li zachováno
jméno autora a copyright. Pro komerční účely pouze s písemným svolením
autora.