Řešení 1:
Není zde žádná správná nebo špatná odpověď kromě té, kterou diktuje vaše osobní náboženství a obsah hier(7)
manpage ve vašem systému.
typický Linux hier
manuálová stránka; typické BSD hier
manuálová stránka)
/var/git/*
mě osobně přijde rozumné. To je místo, kde si schovávám své.
Řešení 2:
Umístěte jej do adresáře (nebo sdíleného souborového systému) pod /srv
. K tomu slouží.
/srv
adresář je určen pro data specifická pro lokalitu obsluhovaná systémem. Ze standardu:
Hlavním účelem specifikace je to, aby uživatelé mohli najít umístění datových souborů pro konkrétní službu a aby služby, které vyžadují jeden strom pro data pouze pro čtení, zapisovatelná data a skripty (jako jsou skripty cgi), mohly být rozumně umístěny. Data, která zajímají pouze konkrétního uživatele, by měla jít do domovského adresáře tohoto uživatele.
Metodika použitá k pojmenování podadresářů
/srv
není specifikováno, protože v současné době neexistuje shoda o tom, jak by to mělo být provedeno. Jedna metoda pro strukturování dat pod/srv
je protokolem, např.ftp
,rsync
,www
acvs
. Na velkých systémech může být užitečné strukturovat/srv
podle administrativního kontextu, jako je/srv/physics/www
,/srv/compsci/cvs
,atd. Toto nastavení se bude lišit hostitel od hostitele. Žádný program by se proto neměl spoléhat na konkrétní podadresářovou strukturu/srv
existující ordata jsou nutně uložena v/srv
. Nicméně/srv
by měl vždy existovat v systémech vyhovujících FHS a měl by být použit jako výchozí umístění pro taková data.Distribuce musí dbát na to, aby neodstranily lokálně umístěné soubory v těchto adresářích bez povolení správce.
V systému s podporou SELinux je výchozí adresář /var/www/git
, a repo by měly být v jejich podadresářích. Nebo můžete použít např. /srv/git
a nastavte kontext souboru na ekvivalentní:
semanage fcontext -a -e /var/www/git /srv/git
Řešení 3:
/home/git/
To se může na první pohled zdát trochu nekonvenční, ale je to velmi rozumné, protože tento adresář je vytvořen pro vás (se správnými oprávněními), když uděláte sudo useradd git
. Stačí se přepnout na uživatele git, cd
a okamžitě spustit:
$ mkdir .ssh; chmod 700 .ssh
$ touch .ssh/authorized_keys; chmod 600 .ssh/authorized_keys
a vložte veřejné klíče svých kolegů do právě vytvořeného souboru author_keys.
Poté, co git init --bare
váš projekt, "url" je pak jen...čekejte na to...
[email protected]<server>:<project>
Řešení 4:
Na mém Arch Linuxu mám /srv/http
pro apache (což je výchozí nastavení systému) a používám ho také pro své servery node.js http. Podobně jsem se rozhodl umístit všechny git repozitáře do /srv/git
.
Používám GitLab a /srv/git
je v tomto případě domovská složka pro git.
Nakonec je to na vás. Zjistil jsem, že držet se formátu podobného ostatním službám ve vaší distribuci je snadno zapamatovatelné.