GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wo ist der herkömmliche Ort zum Speichern von Git-Repositories in einem Linux-Dateisystembaum?

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.


Linux
  1. Eine Einführung in die Linux-Datei /etc/fstab

  2. Linux – Warum ist kein Rootfs-Dateisystem auf dem System vorhanden?

  3. Verständnis des sysfs-Dateisystems (/sys) in Linux

  4. Welche Dateisysteme unter Linux speichern die Erstellungszeit?

  5. Wie platziere / speichere ich eine Datei im Speicher unter Linux?

Wählen Sie das beste Dateisystem für Ihr Linux

Alles, was Sie über das Linux-Dateisystem wissen müssen

Verstehen der /etc/fstab-Datei unter Linux

Die Dateien /proc/mounts, /etc/mtab und /proc/partitions verstehen

Wo finde ich die erste Version des Linux-Betriebssystems?

Wo ist die php.ini-Datei auf einem Linux/CentOS-PC?