Solución 1:
Aquí no hay una respuesta correcta o incorrecta, excepto la dictada por su propia religión personal y el contenido del hier(7)
página de manual en su sistema.
Linux típico hier
página de manual; típico BSD hier
página de manual)
/var/git/*
personalmente me parece razonable. Ahí es donde guardo el mío.
Solución 2:
Colóquelo en un directorio (o sistema de archivos compartido) bajo /srv
. Para eso es.
Los /srv
El directorio está diseñado para datos específicos del sitio servidos por el sistema. Del estándar:
El propósito principal de especificar esto es para que los usuarios puedan encontrar la ubicación de los archivos de datos para un servicio en particular, y para que los servicios que requieren un solo árbol para datos de solo lectura, datos de escritura y secuencias de comandos (como secuencias de comandos cgi) puedan ubicarse razonablemente. Los datos que solo son de interés para un usuario específico deben ir en el directorio de inicio de ese usuario.
La metodología utilizada para nombrar subdirectorios de /srv
no se especifica ya que actualmente no hay consenso sobre cómo se debe hacer esto. Un método para estructurar datos bajo /srv
es por protocolo, ej. ftp
, rsync
, www
y cvs
. En sistemas grandes, puede ser útil estructurar /srv
por contexto administrativo, como /srv/physics/www
, /srv/compsci/cvs
,etc. Esta configuración diferirá de un host a otro. Por lo tanto, ningún programa debe basarse en una estructura de subdirectorio específica de /srv
los datos existentes se almacenan necesariamente en /srv
. Sin embargo /srv
siempre debe existir en los sistemas compatibles con FHS y debe usarse como la ubicación predeterminada para dichos datos.
Las distribuciones deben tener cuidado de no eliminar archivos ubicados localmente en estos directorios sin el permiso del administrador.
En un sistema habilitado para SELinux, el directorio predeterminado es /var/www/git
, y los repositorios deben estar en subdirectorios de los mismos. O bien, puede utilizar, p. /srv/git
y establezca el contexto del archivo para que sea equivalente:
semanage fcontext -a -e /var/www/git /srv/git
Solución 3:
/home/git/
Esto puede parecer un poco poco convencional al principio, pero es muy razonable ya que este directorio está hecho para ti (con los permisos correctos) cuando haces sudo useradd git
. Simplemente puede cambiar al usuario de git, cd
e inmediatamente ejecuta:
$ mkdir .ssh; chmod 700 .ssh
$ touch .ssh/authorized_keys; chmod 600 .ssh/authorized_keys
y coloque las claves públicas de sus pares en el archivo authorized_keys recién creado.
Después de git init --bare
su proyecto, la "url" es simplemente... espérelo...
[email protected]<server>:<project>
Solución 4:
En mi Arch Linux tengo /srv/http
para apache (que es el valor predeterminado del sistema) y también lo uso para mis servidores http node.js. Del mismo modo, decidí poner todos los repositorios de git en /srv/git
.
Uso GitLab y /srv/git
es la carpeta de inicio de git en ese caso también.
En última instancia, depende de usted. Descubrí que apegarse a un formato similar a otros servicios en su distribución es fácil de recordar.