Configuración: en el trabajo tenemos un repositorio git donde están nuestros scripts. Estos scripts deben ser accesibles en todas las máquinas Linux de nuestros clientes (~400). La solución actual es tener un servidor de archivos, que extrae regularmente la rama principal. Este luego se monta (nfs + autofs).
Pregunta: ¿Existe una manera fácil de montar una rama remota de git de solo lectura?
Conozco GitFS, pero esto parece ser excesivo. Estoy buscando algo liviano, preferiblemente en memoria, es decir, sin verificar cosas en el disco. Solo necesito acceso a una sucursal, sin historial.
Editar: para aclarar esto: quiero evitar tirar y cronjobs y cosas como esta. Lo mejor sería algo que monte de forma transparente un repositorio git remoto como un montaje nfs de solo lectura.
Pregunta: ¿Existe una manera fácil de montar una rama remota de git de solo lectura?
Sí, puedes hacerlo de varias maneras. Tanto el bundle como el archive son un repositorio read-only .
git bundle
# Clone the desired branch (-b flag) # and pack it into a bundle with the desired name git clone repo.bundle repo-copy -b masterEl resultado de esto es un solo archivo que contiene la rama deseada en modo de solo lectura, ya que no es un repositorio de git.
git archive
similar al comando de bundle anterior
# Create a tar archive that contains the contents of the latest commit # on the current branch, and #extract it in the /var/tmp/junk directory. git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -)