PageRenderTime 18ms CodeModel.GetById 10ms app.highlight 2ms RepoModel.GetById 2ms app.codeStats 0ms

/doc/source-cs/shelve.txt

https://bitbucket.org/tortoisehg/hgtk/
Plain Text | 131 lines | 89 code | 42 blank | 0 comment | 0 complexity | ded06d9cc500297f2d71e824616ec647 MD5 | raw file
  1Almárka
  2========
  3
  4.. module:: shelve.dialog
  5    :synopsis: Dialog used to perform shelve/unshelve operations
  6
  7Účelem tohoto nástroje je umožnit uživateli **odložit** (shelve) vybrané změny z pracovního adresáře, uložit je uvnitř repozitáře ve speciálním oprávkovém souboru (patch file) a později je opět **vyjmout** (unshelve). Úložný prostor uvnitř repozitáře je označován jako shelf, neboli almárka.
  8
  9.. figure:: figures/shelve.png
 10	:alt: Shelve dialog
 11
 12	Dialogové okno Shelve
 13
 14Stručný popis jednotlivých tlačítek:
 15
 16	:guilabel:`Shelve` 
 17		Odložit vybrané diffy v zatržených souborech (do almárky).
 18	:guilabel:`Unshelve`
 19		Vrátit odložené změny zpět do pracovního adresáře.
 20	:guilabel:`VDiff`
 21		Vizuální porovnání vybraných souborů
 22	:guilabel:`Vrátit`
 23		Vrátit vybrané soubory k poslednímu verzovanému stavu. Při slučování je možné určit návrat k vybranému rodiči. 
 24	:guilabel:`Přidat`
 25		Přidat vybrané soubory, které měly status neznámého (?) nebo ignorovaného (I) souboru).
 26	:guilabel:`Přesunout`
 27		Přemístit vybrané soubory do určeného cílového adresáře verzovaným způsobem.
 28	:guilabel:`Odebrat`
 29		Smazat vybrané neverzované soubory a/nebo odebrat (označit jako smazané) všechny verzované soubory.
 30	:guilabel:`Zapomenout`
 31		Zapomenout vybrané verzované soubory.
 32	:guilabel:`Obnovit`
 33		Znovu načíst stav pracovního adresáře. Procedura se snaží zachovat výběr souborů i jejich výběrový status.
 34
 35Pole pro seznam souborů má čtyři sloupce stejně jako v nástroji Commit. Význam jednotlivých záhlaví - viz 4.5.1 nad poznámkou.
 36
 37Záložky
 38-------
 39
 40Diffový panel nástroje Shelve má čtyři záložky:
 41	1) Text diffu - ukazuje diff aktuálně vybraného souboru
 42	2) Výběr porce - umožňuje vybírat z porcí diffů  vybraného souboru
 43	3) Náhled almárky - zobrazuje všechny vybrané změny. Tento náhled ukazuje změny, které budou odebrány z pracovního adresáře a odloženy v almárce.
 44	4) Obsah almárky - aktuální obsah almárky.
 45
 46
 47Odkládání změn
 48--------------
 49
 50Stejně jako procedura Commit, používá i procedura Shelve vestavěný kód pro výběr porcí u zadaných souborů pro odložení do almárky. Stiskneme-li tlačítko Shelve, jsou vybrané změny odstraněny z pracovního adresáře a umístěny do oprávkového souboru. Pokud almárka již změny obsahuje, musíme rozhodnout, zda má být soubor přepsán anebo zda mají být změny sloučeny. Obsahuje-li almárka nějaké změny, je aktivní tlačítko "Vyjmout".
 51
 52Vracení odložených změn
 53-----------------------
 54
 55Při stisku tlačítka Unshelve jsou odložené změny znovu použity v pracovním adresáři.
 56
 57.. note::
 58	Vrácené změny se projeví jako úpravy pracovního adresáře po použití tlačítka Obnovit.
 59
 60V čem se odložení liší od předání?
 61^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 62
 63Odložené změny jsou fyzicky odstraněny z pracovního adresáře dokud je opět nevrátíme. To znamená, že můžeme rozvíjet a testovat svůj projekt při nepřítomnosti odložených změn. To je bezpečnější, než vybírání změn při rozvíjení projektu.
 64
 65Odložením dokončených úseků projektu si také můžeme zajistit, že se nám tyto části nebudou křížit s odlaďováním či jinými prováděnými změnami.  
 66
 67Výhrada: Odložené změny jsou uloženy v oprávce (patch), která vychází z obsahu aktuálního pracovního adresáře. Není žádná záruka že oprávku bude možné později znovu použít, pokud by odložené změny kolidovaly se změnami, provedenými v pracovním adresáři po úkonu Odložit.
 68
 69V čem se odložení liší od MQ?
 70^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 71
 72Almárku lze považovat za nepojmenovanou oprávku MQ, která není nikdy přeměněna na changeset.
 73Nástroj Shelve může být užitečný při údržbě fronty oprávek.
 74Úkon "shelve" může vzít změny z jedné oprávky a použít je u jiné nebo u oprávky úplně nové.
 75
 76Například:
 77	1) Provedeme push do oprávky, kterou bychom rádi rozdělili
 78	2) Otevřeme nástroj pro odkládání změn, kde můžeme vybrat poslední změny oprávky
 79	3) Vypustíme z výběru porce, které chceme ponechat v oprávce a stiskneme :guilabel:`Shelve`
 80	4) Obnovíme poslední (top) oprávku příkazem :command:`hg qrefresh`, nebo použijeme nástroj pro komit
 81	5) Provedeme push nebo pop (?) do oprávky pro níž chceme použít odložené změny
 82	6) Otevřeme nástroj pro odkládání změn a stiskneme :guilabel:`Unshelve`
 83	7) Obnovíme poslední oprávku (opakujeme krok 4)
 84
 85Nelze odložit soubory přidané, odstraněné nebo přejmenované, ale extenze MQ to umí.
 86
 87V čem se odložení liší od procedury attic?
 88^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 89
 90Extenze attic je sada nástrojů pro práci s "almárkou". Toto rozšíření umožňuje mít několik pojmenovaných *odstávek*, které mohou být odládány a vraceny nezávisle na sobě.
 91
 92Klávesová navigace
 93-------------------
 94
 95:guilabel:`Ctrl-C`
 96    v panelu se záložkami zkopíruje aktuálně zvýrazněné (nikoliv vybrané, jen zvýrazněné) porce diffů do schránky. Tyto mohou být vlepeny do textového zásobníku za účelem vytvoření libovolné oprávky založené na  změnách v pracovním adresáři.
 97 
 98Kód, který kopíruje porce (hunks) do schránky, rozezná záhlaví diffů. Obsah schránky může vždy tvořit platnou oprávku (patch).
 99
100
101Nastavitelné atributy v kofiguraci repozitáře
102---------------------------------------------
103
104* :menuselection:`TortoiseHg -> Diff. panel dole`
105* :menuselection:`TortoiseHg -> Šířka záložky`
106* :menuselection:`TortoiseHg -> Max velikost diffu`
107
108Spuštění z příkazového řádku
109-------------------------------------
110
111Dialogové okno akce Shelve (Odložit) se otevře jedním z následujících příkazů::
112
113	hgtk shelve
114
115	hgtk unshelve
116
117	globální možnosti viz "hgtk -v help shelve" 
118	
119
120Přístup k funkci *shelve* v samotném Mercurialu si otevřeme úpravou konfiguračního souboru Mercurial.ini::
121
122	[extensions]
123	tortoisehg.util.hgshelve=
124
125Příkazy :command:`shelve` a :command:`unshelve` lze potom zadávát s příkazem **hg**.
126
127.. warning::
128	Extenze win32text může působit potíže při výběru porcí. 
129	Toto je již vyřešeno ve verzích Mercurial 1.3 a TortoiseHg 0.8, ale vyžaduje to řádné nastavení. Viz `issue #82 <http://bitbucket.org/tortoisehg/stable/issue/82/>`_.
130
131.. vim: noet ts=4