Ignorování Souborů a Adresářů

Obrázek 4.33. Kontextové menu průzkumníka pro soubory bez verze

Kontextové menu průzkumníka pro soubory bez verze


Ve většině projektů budete mít soubory a adresáře, které by neměly být zahrnuty do správy verzí. To můžou být soubory vytvořené kompilátorem, *.obj, *.lst, či výstupní adresář pro uložení spustitelných souborů. Kdykoliv odevzdáte změny, TortoiseSVN zobrazuje Vaše soubory bez verze, které naplní seznam souborů v dialogovém okně odevzdání. Samozřejmě můžete vypnout tento displej, ale pak můžete zapomenout přidat nový zdrojový soubor.

Nejlepší způsob, jak se těmto problémům vyhnout, je přidat nepůvodní soubory do seznamu ignorovaných v projektu. Tak se nikdy neobjeví v dialogovém okně, ale skutečný zdrojový soubor bez verze bude stále označen.

Pokud kliknete pravým tlačítkem myši na jeden soubor bez verze a vyberete příkaz TortoiseSVNPřidat do seznamu k ignorování z kontextového menu, bude zobrazeno podmenu, umožňující Vám vybrat právě tento soubor, nebo všechny soubory stejného typu. Obě podmenu také mají možnost (rekurzivně). Pokud vyberete více souborů, není žádné dílčí menu a můžete přidat jen zvolené soubory nebo adresáře.

Pokud zvolíte (rekurzivní) verzi kontextového menu pro ignorování, nebude ignorována pouze zvolená složka, ale také její podsložky. Toto ale vyžaduje SVN klienty s verzí 1.8 nebo vyšší.

Pokud chcete odebrat jednu nebo více položek ze seznamu ignorovaných, klikněte pravým tlačítkem myši na tyto položky a vyberte možnost TortoiseSVNOdstranit ze seznamu ignorování Můžete také vstoupit do vlastností svn:ignore adresáře přímo. To Vám umožní zadat obecnější vzorce pomocí globálního listu, který je popsán v následující části. Přečtěte si „Nastavení projektu“ pro více informací o nastavení vlastností přímo. Uvědomte si prosím, že každá předloha ignorování musí být uvedena na samostatném řádku. Oddělení mezerou nefunguje.

Globální seznam ignorovaných

Dalším způsobem, jak ignorovat soubory, je přidat je do globálního seznamu ignorování . Velký rozdíl je, že globální seznam ignorování je vlastnost klienta. To se vztahuje na všechny projekty Subversion, ale pouze na počítači klienta. Obecně je lepší použít vlastnost svn:ignore, kde je možné, protože může být aplikována na konkrétní oblasti projektu a funguje pro každého, kdo získá projekt. Přečtěte si „Obecná nastavení“ pro více informací.

Ignorování položek s verzí

Soubory s verzí a adresáře nikdy nemůžou být ignorovány - to je rys Subversion. Pokud přidáte verzi souboru omylem, přečtěte si „Ignorovat soubory, které už mají verzi“ pro postup, jak mu verzi odstranit.

Shoda vzorů v seznamech k Ignorování

Vzory ignorování v Subversion využívají globbing souborů, technika, původně používaná v Unixu, určující soubory pomocí metaznaků jako zástupné znaky. Následující znaky mají speciální význam:

*

Jakýkoliv řetězec znaků, včetně prázdného řetězec (žádný znak).

?

Jeden libovolný znak.

[...]

Shoda s některým ze znaků uzavřených v hranatých závorkách. Pokud je v závorce pár znaků oddělen - znamená libovolný znak shodující se abecedně mezi těmito dvěma znaky. Například [AGm-p] odpovídá všem A, G, m, n, o nebo p.

Shoda vzorů je citlivá na velikost písmen, což může způsobit problémy v systému Windows. Můžete vynutit necitlivost těžším způsobem tak, že tvrdě spárujete znaky, např. k ignorování *.tmp bez ohledu na velikost, můžete použít jako vzor *.[Tt][Mm][Pp].

Pokud chcete oficiální definici globbingu, najdete ji v IEEE specifikaci pro příkazový jazyk rozhraní Zápis shody vzorů.

Žádné Cesty v Globálním Seznam k Ignorování

Do Vašeho vzoru byste neměli zahrnovat informace o cestě. Shoda vzoru je určena k použití na prosté názvy souborů a adresářů. Pokud chcete ignorovat všechny adresáře CVS, stačí přidat CVS do seznamu k ignorování. Není nutné specifikovat CVS */CVS jako v předchozích verzích. Pokud chcete ignorovat všechny adresáře tmp, které se nacházejí v adresáři prog, ale ne v adresáři doc měli byste místo toho použít vlastnost svn:ignore. Neexistuje žádný spolehlivý způsob, jak tohoto dosáhnout pomocí globálních vzorů k ignorování.