Základní pojmy Mercurialu
Decentralizovaný model Mercurialu může být pro nového uživatele matoucí. Tato stránka se pokouší osvětlit některé z jeho základních pojmů. Postupný výklad viz Tutorial Mercurialu.
Contents
1. Repozitórium
Repozitórium je vnímavý kořenový adresář projektu, který obsahuje složku .hg, zvanou repozitář (Repository) a další složky a soubory, které tvoří sledovaný i nesledovaný obsah projektu.
Obsah a složení souborů či složek v repozitóriu se mění v závislosti na nastavené aktuální revizi, jejíž obsah je prezentován pracovním adresářem.
Soubory v repozitóriu mohou mít různý statut podle toho, jak jsou zapojeny do systému Mercurial:
? - neznámý soubor, o němž Mercurial ví jen to, že existuje v repozitóriu
I - původně neznámý soubor, zařazený do seznamu ignorovaných souborů
A - původně neznámý soubor, zařazený jako kandidát pro komit
M - změněný sledovaný soubor, je kandidátem pro komit
! - původně sledovaný soubor, ručně smazaný, přejmenovaný či přemístěný
R - soubor, odebraný ze sledování příkazem ´´hg remove´´
2. Pracovní adresář
Pracovní adresář je vlastně prostředí repozitória, které umožňuje manipulaci se souboury a složkami projektu jako v normálním pracovním adresáři.
V systému Mercuriálu je pracovní adresář prezentován také jako editovatelný přímý potomek (dítě) aktuálního changesetu (případně changesetů při nekomitovaném sloučení), jímž může být kterýkoliv changeset, zpravidla ten poslední.
Obsah a složení souborů či složek v pracovním adresáři (potažmo v repozitóriu) odpovídají obsahu a složení souborů či složek vybraného changesetu v čase jeho vytvoření (komitu).
Komitované změny pracovního adresáře představují nový changeset.
Zcela běžně se pro jednu a tutéž komitovanou změnu používají slova revize, changeset a komit.
3. Repozitář
Repozitář je technicky vzato složka .hg v repozitóriu.
Složka .hg/store obsahuje kompletní historii projektu. Na rozdíl od tradičních VCS, kde existuje pouze jedna centrální kopie historie, zde má každé repozitórium svou vlastní kopii historie. To umožňuje paralelní vývoj projektů.
Ilustrace se pokouší naznačit, že rodičovskou revizí pracovního adresáře (repozitória) je revize č. 2, uložená ve složce .hg/store.
Na rozdíl od repozitória sleduje repozitář pouze tyto stavy souborů:
- n -- normální
- a -- přidaný
- r -- odebraný
- m -- sloučený
Repozitář obsahuje celou historii projektu, repozitórium (potažmo pracovní adresář) obsahuje časový snímek projektu v určitém bodě historie.