Subversion, TortoiseSVN

Ať už programátor pracuje v týmu či sám, bude muset jednoho dne začít používat verzovací systém. Já jsem verzovací systém nejprve používal pro zálohování projektů na druhý disk, nyní ho používám zejména pro synchronizaci pracovních verzí mezi stolním počítačem a notebookem.

Nejznámějšími zástupci verzovacích systémů jsou starší CVS a novější SVN (subversion). V tomto článku popíši instalaci a používání SVN.

Subversion

Server

SVN funguje jako server-klient. Součástí serveru je úložiště (repository) a samotná serverová aplikace, která nám umožňuje s úložištěm vzdáleně pracovat. Co přesně úložiště obsahuje je v podstatě jedno, nás bude zajímat pouze složka conf, kde se nachází konfigurace. Jako server se dá použít i Apache, ale konfigurace je celkem složitá (je potřeba načíst externí moduly) a server je pak o něco pomalejší.

Klient

Klient je pak jedna z klientských aplikací, např. TortoiseSVN. Ta nám umožňuje se připojit na server a synchronizovat naše lokální verze projektů s úložištěm. Žádná věda.

Instalace

Nejjednoduším řešením jak nainstalovat klienta i server a vše nakonfigurovat, je stáhnout SVN 1-click Setup. Jedná se o jednoduchého průvodce, kde během pár kliknutí nainstalujete samotný subversion, TortoiseSVN, vytvoříte úložiště,založíte uživatelský účet a vytvoříte první projekt.

Čeština

Po restartu doporučuji nainstalovat i češtinu do Tortoise.

V této chvíli již máte funkční server i klienta. Úložište ale zatím zeje prázdnotou, pojďme ho tedy naplnit.

Práce s TortoiseSVN

Tvorba projektů

Nejprve je nutné vytvořit v úložišti složku projektu (pokud jste ji nevytvořili už během instalace). Pravým tlačítkem klikneme na jakoukoliv složku. V kontextové nabídce přibyla položka TortoiseSVN. Tam vybereme "Průzkumník úložiště". Jako URL zadáme "svn://localhost". V nově otevřeném okně pak klikneme pravým na složku úložiště a vybereme "vytvořit složku". Vyplníme název, např. "test" a je to. Nyní máme v úložišti první projekt.

Import zdrojových souborů

Teď musíme do úložiště naimportovat zdrojové kódy. Klikneme pravým tlačítkem na složku, kde jsou soubory se zdrojáky a vybereme "Importovat". Jako URL vyplníme "svn://localhost/test/". Importuje se pouze obsah složky(samotná složka ne), proto nemůžeme napsat pouze "svn://localhost/" (pokud tedy nechcete mít v úložišti pouze jeden projekt). Zaškrtneme "Zahrnout ignorované soubory" a OK. Všechny zdrojové soubory jsou nyní bezpečně uloženy v úložišti.

Vytvoření pracovní kopie

Posledním krokem je vytvoření pracovní kopie. Vytvořte si tedy novou složku test, klikněte na ní pravým a zvolte "SVN Získat(checkout)". Jako URL doplňte "svn://localhost/test". Po tomto kroku již máte hotovou lokální pracovní kopii. Na ikoně složky by se měl zobrazit zelený symbol "fajfky". To znamená, že vaše lokální kopie neobsahuje žádné nové změny.

Vzdálený přístup

Pokud se chcete k úložišti připojovat i z jiného počítače, je potřeba zkontrolovat firewall (případně také obejít NAT). Ovládací panely -> Brána firewall -> výjimky -> přidat port -> název "SVN", číslo "3690". Na vzdáleném počítači pak stačí zadat checkout a jako URL zapsat "svn://ip_pocitace/test".

Synchronizace s úložištěm

Po provedení změn ve zdrojácích je potřeba zvolit u složky projektu "SVN odevzdat (commit)". Doporučuji zaškrtnout "Ukázat neverzované soubory", abyste měli možnost odeslat do úložiště i binární soubory.

Před započetím práce se soubory projektu je naopak potřeba stáhnout z úložiště změny, které provedli ostatní. To se provádí opět z kontextové nabídky složky příkazem "SVN Aktualizovat (update)".

Subversion umožňuje daleko více možností práce s projekty, např. zamykání, vytváření patchů a vývojových větví. O tom možná příště.

Další odkazy

TortoiseSVN

Subversion

Hodnocení

Komentáře

[1] Dan
2008-01-10 22:05:38

Mne na TortoiseSVN strasne vadi jak se zazere do systemu v podobe kontextovych menu, nemam to rad. Pouzivam k plne spokojenosti RapidSVN.

Diky za pekny clanek.

[2] Dundee
2008-01-10 22:41:50

To mi na Tortoise naopak velmi vyhovuje. SVN se tak vlastne stava soucasti Windowsu a pracuje se s nim velmi efektivne.

Na tento komentář odpověděl [3] seem
[3] seem
2008-02-29 22:00:20

#2 Dundee: Cus, zkoušel jsem to rozchodit podle tvýho návodu ale hází mi to při importu souborů do repository chybu : Authorization faild.. , Netušim co kde jinak nastavit.. (WinXP SP2) Díks

[4] Dundee
2008-03-02 23:45:33

To znamená, že jsi zadal při instalaci, nebo při připojení do nového úložiště přes Tortoise špatné jméno/heslo.

[5] JCC
2008-06-05 18:28:06

pozri si stranku:
http://www.owebu.cz/internet/vypis.php?clanek=2086

skus tam "najst" 10 rozdielov.

Na tento komentář odpověděl [6] Dundee
[6] Dundee
2008-06-07 13:29:11

#5 JCC: EH! Tak to si asi dělají srandu, ne? Jdu jim hned napsat...

Komentáře již nelze přidávat