Archiv pro štítek: svn

Systém pro správu verzí GIT na Synology DSM

Od doby, co vlastním Synology server (dříve DS207+, nyní DS710+), jsem na něm chtěl mít verzovací systém. Dříve Subversion, později GIT.

Dříve jsem našel na Internetu návody, jak na své DS207 Subversion zprovoznit, ale byl to docela drsný zásah do systému a ne každý by to zvládl nebo si do toho troufl. Navíc šlo o neoficiální cestu a případnou škodu bych nemohl samozřejmě reklamovat. Jednou jsem si dokonce svůj nynější DS 710+ skutečně znefunkčnil a od podpory, která mi s problémem pomohla, jsem dostal „vynadáno“, že tam byl neoficiální software (čímž určitě mysleli SVN).
Od té doby jsem raději takovéto metody instalace nepraktikoval 😀

Nyní ale můžete verzovací systémy GIT a Subversion najít v Centru balíčků přímo v Synology DSM. Systémy sice můžete jedním klikem nainstalovat, ale ne zprovoznit. Pro zprovoznění resp. vytvoření repozitáře bohužel není žádné GUI, takže budete muset sáhnout po SSH. Já jsem si na svůj DS710+ právě úspěšně doinstaloval GIT, tak si dovolím bodově popsat jak na to. SVN jsem nezkoušel, ale je možné, že postup bude podobný.

Jak na to

Otevřete si DSM svého Synology a spusťte Centrum balíčků. Tam najděte položku GIT Server a tu nainstalujte.

Pomocí okna Ovládací panel > Sdílená složka si vytvořte novou složku. Jestli chcete kořenovou složku pro více repozitářů nebo složku jednoho repozitáře už je na vás. Já jsem si vytvořil složku jediného repozitáře (víc jich potřebovat nebudu). V mém případě je to složka git. Zvolte si nastavení složky, jaké vám vyhovuje (já jsem si ji např. skryl v části Místa v síti a zakázal funkci koše).

Pokud nemáte vytvořeného uživatele, se kterým se budete chtít do repozitáře připojovat, učiňte tak v části Ovládací panel -> Uživatel. Do adresáře, který jste si v předchozím kroku vytvořili, novému uživateli nemusíte povolovat přístup. Já jsem uživatele nezakládal, protože chci používat svůj účet, který používám k připojení k Synology serveru.
Nyní spusťte dříve nainstalovaný balíček Git Server a tam vyberte ty uživatele, kterým chcete přístup do systému GIT povolit.

Pokud nemáte povolen přístup k serveru přes SSH, povolte jej: Ovládací panel -> Terminál -> Povolit službu SSH.

Nyní jdeme vytvořit repozitář. K tomu se ale budeme muset připojit k serveru pomocí SSH a to s administrátorským účtem. Učiňte tak (pokud jste na Windows, použijte třeba Putty). Po přihlášení přejděte do dříve vytvořeného adresáře. V mém případě:

cd /volume1/git

pokud chcete vytvořit více repozitářů, můžete si tu vytvořit podadresářů kolik chcete, např:

mkdir repo1

Nyní si v každém adresáři (tedy: cd repo1), kde chcete mít repozitář spusťte příkaz pro inicializaci repozitáře a nastavení práv:

git --bare init
chmod -R g+ws *
chgrp -R users *

A to je vše! 🙂 Teď máte vytvořen repozitář (nebo repozitáře), ke kterému se můžete připojovat pomocí vybraných uživatelů. U klienta nastavte pro synchronizaci následující formát adresy:

ssh://{uzivatel}@{IP_serveru_nebo_hostname}/{absolutni_cesta_do_repozitare}

Já jsem si navíc do rootu vytvořil symlink git, který ukazuje na můj repozitář /volume1/git/

ln -s /volume1/git/ git

Takže místo adresy ssh://lukas@mujsyno.cz/volume1/git mohu použít adresu ssh://lukas@mujsyno.cz/git 😉

Při pokusu naklonování u klienta budete vyzváni k zadání hesla uživatele. Pokud chcete GIT provozovat na Windows, určitě doporučuji GIT pro Windows v kombinaci s Tortoise GIT.

Snad se vám podařilo dle mého návodu repozitář nebo repozitáře vytvořit. Pokud ne, můžete mi napsat v komentářích a pokusím se pomoci.