Subversion při popisu repository
používá tři pojmy: trunk, branch a tag. Typický způsob práce vypadá
tak, že ve složce /trunk
probíhá hlavní vývoj, do složky
/branches
se kopírují jednotlivé verze projektu, které jsou
v tomto umístění bugfixovány apod., a nakonec složka
/tags
slouží k ukládání snapshotů vydaných verzí
(např. tag /tags/1.0
je přesnou kopií projektu ve verzi 1.0).
Návrh repository je samozřejmě zcela v rukou koncového uživatele, ale
právě naznačený postup dává dobrý smysl a proto se v drtivé
většině projektů používá.
Vždycky mi ale přišlo, že použitá terminologie je trochu „divná“. Angličtina mi nedělá žádný problém, ale musím se přiznat, že slovo „trunk“ jsem slyšel poprvé právě v souvislosti s verzováním. Pohled do slovníku napovídá, že trunk je buď chobot slona, nebo krátké kalhoty, nebo plavky, nebo mlýnský žlab, ale naštěstí i kmen stromu.
A co takové slovo „tag“? Pro mě to byla velmi abstraktní záležitost, např. v HTML dokumentu tag znamená věc, která nějakým způsobem označuje část textu. Když jsem si přečetl, že vedle závěrečného proslovu a hry na babu se může jednat i o visačku, všechno mi došlo, ale až ex post.
Myslím, že na slova „trunk“ a „tag“ při první setkání s otevřenou pusou kouká většina neanglicky mluvících lidí (a možná i těch, pro které je angličtina rodným jazykem). Jsou podle mě totiž špatně zvolená – je problém s jejich překladem a i pak není zcela jasné, co vlastně znamenají. Pokud někdo CVS používá roky, je pro něj tato terminologie přirozená, ale člověk si zvykne na všechno :)
Kdybych měl terminologii vymýšlet já, asi bych zvolil jména „devel“, „branches“ a „releases“. Je však potřeba myslet i na to, že ne všichni uživatelé Subversion jsou programátoři a repository tak může sloužit třeba při psaní nové knihy. Zde by navrhnutá terminologie nebyla vhodná a proto bych se asi nakonec přiklonil ke slovům „main“, „branches“ a „snapshots“. Ty jsou snadno přeložitelné, pochopitelné a docela dobře popisují význam jednotlivých složek.
Je mi jasné, že teď už se nic nezmění. Původní terminologie je hluboce zažitá a osobně s ní teď už nemám žádný problém. Nic to ale nemění na mém názoru, že autoři mohli vybrat podstatně lepší slova. Na použitelnost je potřeba myslet nejen při webdesingu…
Main, no, to má třeba GNU Arch. Ale ty zrůdy v jeho podání, to je dílo :-)