Gogs: vaše vlastní hostovaná alternativa GitHubu

Jako správní vývojáři určitě ukládáte různé verze svého kódu. Nebo to určitě v nejbližší době plánujete. Ale možná vás trochu odrazuje ukládání kódu někam ke třetí straně, ať už je to GitHub, BitBucket nebo něco jiného. Vyzkoušejte hostovanou alternativu vzdáleného úložiště pro git, které také nabízí komfortní prohlížení souborů a změn z webového prohlížeče.
reklama

Z různých důvodů dávám přednost ukládání projektů do gitu, jehož úložiště mám umístěno na Synology NAS. Rozběhání této konfigurace bylo poměrně jednoduché, na druhou stranu mi chybělo nějaké uživatelské rozhraní pro sledování toho, co se v repositáři děje. A to přesto, že pro práci s gitem používám především příkazový řádek a výjimečně zabudované funkce v PhpStorm.

Zkrátka. Chtěl jsem něco jako je GitHub. Tedy funkce, které nabízí ve vztahu k repositáři verzovaného kódu. Nikoli hosting a další služby. Chtěl jsem mít možnost otevřít si repositář přes webový prohlížeč, kouknout se, jaké v něm kdo kdy udělal změny a případně mít možnost si je jednoduše stáhnout. To vše ideálně umístěné na mém vlastním serveru.

Pátral jsem po podobném řešení před delší dobou, ale nevzpomínám si, že bych našel něco zajímavého. A pak jsem zčista jasna zabloudil v internetových vodách na webové stránky projektu Gogs.

Gogs je přesně to, co jsem popsal výše. Tedy open source (MIT License) projekt nabízející komfort pro práci s Gitem a hostovaný vašimi vlastními silami.

Kde rozběhat Gogs a vlastní Git

Zalíbil se mi popis nástroje i jednoduchý design webu. Na rozdíl od jiných webových aplikací, na které jsem zvyklý, to ovšem není produkt napsaný v PHP. Gogs je vytvořen v programovacím jazyku Go a běhá všude tam, kde je možné jej zkompilovat.

Gogs - úvodní přehled

Zprovoznění na webu vyžaduje stažení binárky pro vaši platformu (Linux, Windows, macOS či Raspberry Pi) a její instalaci přes příkazový řádek. K dispozici jsou i balíčky třetích stran pro Ubuntu, CentOS, Debian či Arch Linux. A také pro Synology NAS. Právě to se mi hodilo, nechtěl jsem Gogs dávat někam na virtuální server, umístění v NASu mi plně vyhovuje.

V případě Synology to tedy vyžadovalo povolení instalace třetích balíčků spk v DiskStation Manageru, zapnutí Gitu a MariaDB. Balíček s Gogs jsem nahrál, otevřel připravenou URL a mohl se pustit do nastavení Gogs ve webovém prohlížeči.

V prohlížeči ale už jen vyplňujete základní údaje pro připojení k databázi (je nutno si ji tedy předtím připravit) a vytvoříte prvního uživatele v Gogs. Ten zároveň slouží jako správce celé aplikace.

Co všechno Gogs dovede?

Pokud jste někdy pracovali s GitHubem, budete zde jako doma. Po přihlášení vám Gogs zobrazí seznam posledních aktivit, možnost přepínání a filtrování uživatelů a přehled repositářů. Kromě toho zobrazuje také přehled úkolů (issues) napříč projekty, požadavky na natažení (pull requesty) a prohlížeč umístěných repositářů s vyhledáváním.

Gogs - detail repositáře

Pro každý z připravených repositářů určujete vlastníka, název či viditelnost, kdy chcete mít něco soukromé a jiné repositáře veřejné. Líbí se mi výběr šablon pro soubor .gitignore a pro licenční ujednání. Stačí kliknout do políčka a najít si šablonu pro ignorování souborů v Drupalu, WordPressu, Symfony, aplikaci pro Android a mnoha jiných.

V detailu repositáře uvidíte klasicky přehled souborů a složek s poznámkou k poslední změně, kterou jste do repositáře poslali. Pod soubory je zobrazen obsah souboru README.md, tedy se zformátovanou syntaxí markdown.

Gogs - zobrazení změn

Funguje tu přepínání revizí, větví i vytváření vydání. S repositářem lze komunikovat přes http i přes ssh. Ke každému z projektů je zobrazen seznam úkolů, který zobrazuje buď klasické issues s možností štítkování, nastavení milníků a zpracovatelů, případně může jen odkazovat na jinou stránku.

Prostřednictvím Gogs si ke každému z repositářů také volitelně vytvoříte Wiki. Tedy jednoduché stránky s dokumentací nebo čímkoli dalším, co uznáte za potřebné k projektu poznamenat.

Gogs - wiki

Podobně jako na GitHubu lze projekty „lajkovat“ hvězdičkou a sledovat v nich změny. Co se týče správy Gogs jako takového, nechybí tu hromadné akce pro manipulaci s uživatelskými účty i repositáři. Myslím, že je zde vše, co byste očekávali.

Uživatelské účty jsou volitelně napojené na Gravatar, registrace může být podmíněna ověřením mailu nebo zcela vypnuta, pokud Gogs používáte jen v rámci omezeného okruhu uživatelů.

Gogs - admin panel

Gogs používám zatím jen pár dní, ale nenarazil jsem zatím na žádný problém a v tuto chvíli vám jej mohu s klidným svědomím doporučit. Příjemná je zcela jistě i skutečnost, že nabízí do češtiny přeložené uživatelské prostředí.

Tagy
Autor článku: Jan Polzer

Tvůrce webů z Brna se specializací na Drupal a Symfony. Obojí také školím spolu se základy SEO. Jsem Acquia Certified Developer a Site Builder a napsal jsem několik knih o Drupalu. Ve volných chvílích cestuji a podnikám výlety. Více se dozvíte na mém firemním webu.

reklama

Komentáře k článku

Profile picture for user Jan Polzer

Řekl bych, že Gogs má méně funkcí a je pro mě přehlednější. GitLab skoro nepoužívám, takže více porovnat asi nemohu.

návštěvník

Koukám, že existuje taky fork Gitea. Zkoušel jsi ho? A pokud ano, proč vyhrál Gogs?

Profile picture for user Jan Polzer

Nezkoušel. Gogs má vše, co od toho potřebuju, včetně instalačního balíčku pro Synology NAS. U Gitea jej nevidím.

návštěvník

Ahoj,
a kde jsi stáhl prosím binárku pro synlogy? Našel jsem jen na githubu 2 roky starou...

Přidat komentář

Filtered HTML

  • Povolené HTML značky: <a href hreflang> <em> <strong> <cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <p> <br>
  • Řádky a odstavce se zalomí automaticky.
  • Web page addresses and email addresses turn into links automatically.

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Poslední komentáře
reklama
Nové diskuze
reklama
Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

Knihy o Drupalu

Kniha Drupal 8 Kniha Drupal 7 333 tipů a triků pro Drupal
Více na KnihyPolzer.cz

@maxiorel na Twitteru

Maxiorel na Twitteru