Používání CVS: Porovnání verzí
Bez shrnutí editace |
m (→Jak opravovat kód v CVS: typo) |
||
(Nejsou zobrazeny 2 mezilehlé verze od stejného uživatele.) | |||
Řádek 5: | Řádek 5: | ||
Příklad překlopení pracovního adresáře na stabilní vývojovou větev: | Příklad překlopení pracovního adresáře na stabilní vývojovou větev: | ||
cvs -q update -dP -r | cvs -q update -dP -r MOODLE_19_STABLE | ||
Příklad překlopení pracovního adresáře na hlavní (nestabilní) vývojovou větev (HEAD): | Příklad překlopení pracovního adresáře na hlavní (nestabilní) vývojovou větev (HEAD): | ||
Řádek 13: | Řádek 13: | ||
Poté, co provedete opravu kódu ve STABLE (commit), sloučíte (merge) opravu do HEAD pomocí značky MOODLE_XX_MERGED. Přejděte do adresáře s HEAD verzí a aktualizujte (update) všechny změny opraveného souboru file.php, ke kterým v něm došlo od posledního sloučení: | Poté, co provedete opravu kódu ve STABLE (commit), sloučíte (merge) opravu do HEAD pomocí značky MOODLE_XX_MERGED. Přejděte do adresáře s HEAD verzí a aktualizujte (update) všechny změny opraveného souboru file.php, ke kterým v něm došlo od posledního sloučení: | ||
cvs -q update -kk -j | cvs -q update -kk -j MOODLE_19_MERGED -j MOODLE_19_STABLE file.php | ||
Poté zašlete takto opravený soubor zpět do hlavní vývojové větve: | Poté zašlete takto opravený soubor zpět do hlavní vývojové větve: | ||
cvs commit file.php | cvs commit file.php | ||
Nyní je potřeba označit novou revizi souboru jako sloučenou. To se provádí pomocí již zmíněné značky MOODLE_XX_MERGED: | Nyní je potřeba označit novou revizi souboru jako sloučenou. To se provádí pomocí již zmíněné značky MOODLE_XX_MERGED. Přejděte zpět do adresáře se STABLE větví a zadejte: | ||
cvs tag -F | cvs tag -F MOODLE_19_MERGED file.php | ||
Parametr -F znamená „Posuň značku, pokud již existuje.“ Toto posouvání je důležité! | Parametr -F znamená „Posuň značku, pokud již existuje.“ Toto posouvání je důležité! | ||
Řádek 28: | Řádek 28: | ||
<pre> | <pre> | ||
/------------------------M------S 1. | /------------------------M------S 1.9 větev | ||
>==================================H kmen | >==================================H kmen | ||
</pre> | </pre> | ||
Řádek 37: | Řádek 37: | ||
Výše uvedeným příkazem | Výše uvedeným příkazem | ||
cvs -q update -kk -j | cvs -q update -kk -j MOODLE_19_MERGED -j MOODLE_19_STABLE file.php | ||
přidáváte všechny změny provedené mezi body M a S do bodu H, takže jej můžete commitnout zpět. Dalším uvedeným příkazem | přidáváte všechny změny provedené mezi body M a S do bodu H, takže jej můžete commitnout zpět. Dalším uvedeným příkazem | ||
cvs tag -F | cvs tag -F MOODLE_19_MERGED file.php | ||
posunete značku M na pozici S, takže nová situace vypadá takto: | posunete značku M na pozici S, takže nová situace vypadá takto: |
Aktuální verze z 21. 11. 2007, 03:22
Jak opravovat kód v CVS
Nové funkce jsou vkládány do větve HEAD. Opravy zdrojových kódu (bug fixes) jsou vkládány do větve MOODLE_XX_STABLE, kde XX je číslo verze. Užitečné je udržovat si u sebe dva vývojové stromy - jeden pro HEAD, druhý pro STABLE - pro každou verzi, na které pracujete.
Příklad překlopení pracovního adresáře na stabilní vývojovou větev:
cvs -q update -dP -r MOODLE_19_STABLE
Příklad překlopení pracovního adresáře na hlavní (nestabilní) vývojovou větev (HEAD):
cvs -q update -dPA
Poté, co provedete opravu kódu ve STABLE (commit), sloučíte (merge) opravu do HEAD pomocí značky MOODLE_XX_MERGED. Přejděte do adresáře s HEAD verzí a aktualizujte (update) všechny změny opraveného souboru file.php, ke kterým v něm došlo od posledního sloučení:
cvs -q update -kk -j MOODLE_19_MERGED -j MOODLE_19_STABLE file.php
Poté zašlete takto opravený soubor zpět do hlavní vývojové větve:
cvs commit file.php
Nyní je potřeba označit novou revizi souboru jako sloučenou. To se provádí pomocí již zmíněné značky MOODLE_XX_MERGED. Přejděte zpět do adresáře se STABLE větví a zadejte:
cvs tag -F MOODLE_19_MERGED file.php
Parametr -F znamená „Posuň značku, pokud již existuje.“ Toto posouvání je důležité!
Celý proces je znázorněn na následujícím diagramu:
/------------------------M------S 1.9 větev >==================================H kmen
S = poslední verze v dané větvi M = bod, kdy naposledy došlo ke sloučení do HEAD H = poslední verze hlavní výojové větve HEAD
Výše uvedeným příkazem
cvs -q update -kk -j MOODLE_19_MERGED -j MOODLE_19_STABLE file.php
přidáváte všechny změny provedené mezi body M a S do bodu H, takže jej můžete commitnout zpět. Dalším uvedeným příkazem
cvs tag -F MOODLE_19_MERGED file.php
posunete značku M na pozici S, takže nová situace vypadá takto:
/-------------------------------MS 1.6 větev >==================================H kmen
Další slučování oprav v budoucnu se tím pádem nebude snažit sloučit vámi provedené změny znovu.