Lösung 1:
Hier gibt es keine richtige oder falsche Antwort, außer der, die durch Ihre eigene persönliche Religion und den Inhalt des hier(7)
vorgegeben wird Manpage auf Ihrem System.
typisches Linux hier
Handbuchseite; typisches BSD hier
Manpage)
/var/git/*
erscheint mir persönlich sinnvoll. Dort bewahre ich meine auf.
Lösung 2:
Platzieren Sie es in einem Verzeichnis (oder freigegebenen Dateisystem) unter /srv
. Dafür ist es da.
Die /srv
Verzeichnis ist für standortspezifische Daten vorgesehen, die vom System bereitgestellt werden. Aus dem Standard:
Der Hauptzweck dieser Angabe besteht darin, dass Benutzer den Speicherort der Datendateien für bestimmte Dienste finden können und dass Dienste, die einen einzelnen Baum für schreibgeschützte Daten, beschreibbare Daten und Skripte (wie CGI-Skripte) benötigen, sinnvoll platziert werden können. Daten, die nur für einen bestimmten Benutzer von Interesse sind, sollten in das Homeverzeichnis dieses Benutzers verschoben werden.
Die Methode, die verwendet wird, um Unterverzeichnisse von /srv
zu benennen ist nicht spezifiziert, da derzeit kein Konsens darüber besteht, wie dies geschehen soll. Eine Methode zur Strukturierung von Daten unter /srv
ist per Protokoll, z. ftp
, rsync
, www
, und cvs
. Auf großen Systemen kann es sinnvoll sein, /srv
zu strukturieren nach Verwaltungskontext, z. B. /srv/physics/www
, /srv/compsci/cvs
,etc. Diese Einrichtung unterscheidet sich von Host zu Host. Daher sollten sich keine Programme auf eine bestimmte Unterverzeichnisstruktur von /srv
verlassen vorhandene oder Daten müssen unbedingt in /srv
gespeichert werden . Jedoch /srv
sollte auf FHS-kompatiblen Systemen immer vorhanden sein und als Standardspeicherort für solche Daten verwendet werden.
Distributionen müssen darauf achten, keine lokal abgelegten Dateien in diesen Verzeichnissen ohne Administratorrechte zu entfernen.
Auf einem SELinux-fähigen System ist das Standardverzeichnis /var/www/git
, und Repos sollten sich in Unterverzeichnissen davon befinden. Oder Sie können z. /srv/git
und setzen Sie den Dateikontext auf äquivalent:
semanage fcontext -a -e /var/www/git /srv/git
Lösung 3:
/home/git/
Dies mag zunächst etwas unkonventionell erscheinen, ist aber sehr vernünftig, da dieses Verzeichnis für Sie erstellt wird (mit den richtigen Berechtigungen), wenn Sie sudo useradd git
ausführen . Sie können einfach zum Git-Benutzer cd
wechseln und sofort ausführen:
$ mkdir .ssh; chmod 700 .ssh
$ touch .ssh/authorized_keys; chmod 600 .ssh/authorized_keys
und fügen Sie die öffentlichen Schlüssel Ihrer Kollegen in die gerade erstellte Datei "authorized_keys" ein.
Nachdem Sie git init --bare
Ihr Projekt, die "URL" ist dann nur ... warten Sie darauf ...
[email protected]<server>:<project>
Lösung 4:
Auf meinem Arch Linux habe ich /srv/http
für Apache (was der Systemstandard ist) und ich verwende es auch für meine http-Server von node.js. Ebenso habe ich beschlossen, alle Git-Repositories einfach in /srv/git
zu legen .
Ich verwende GitLab und /srv/git
ist auch in diesem Fall der Home-Ordner für git.
Letztendlich liegt es an Ihnen. Ich habe festgestellt, dass es leicht zu merken ist, sich an ein Format zu halten, das anderen Diensten in Ihrer Distribution ähnelt.