GNU/Linux >> Tutoriales Linux >  >> Linux

Retención de permisos de archivo con Git

El git-cache-meta mencionado en la pregunta SO "git:¿cómo recuperar los permisos de archivo que git cree que debería tener el archivo?" (y las preguntas frecuentes de git) es el enfoque más directo.

La idea es almacenar en un .git_cache_meta file los permisos de los archivos y directorios.
Es un archivo separado que no se versiona directamente en el repositorio de Git.

Es por eso que su uso es:

$ git bundle create mybundle.bdl master; git-cache-meta --store
$ scp mybundle.bdl .git_cache_meta machine2: 
#then on machine2:
$ git init; git pull mybundle.bdl master; git-cache-meta --apply

Así que tú:

  • agrupe su repositorio y guarde los permisos de archivo asociados.
  • copie esos dos archivos en el servidor remoto
  • restaurar el repositorio allí y aplicar el permiso

Git es un sistema de control de versiones, creado para el desarrollo de software, por lo que de todo el conjunto de modos y permisos almacena solo el bit ejecutable (para archivos ordinarios) y el bit de enlace simbólico. Si desea almacenar permisos completos, necesita una herramienta de terceros, como git-cache-meta (mencionado por VonC), o Metastore (usado por etckeeper). O puede usar IsiSetup, que IIRC usa git como backend.

Consulte la página Interfaces, frontends y herramientas en Git Wiki.


Linux
  1. Conceptos básicos de los permisos de archivos de Linux

  2. ¿Cómo habilitar los permisos de archivos Unix en Samba Share con Smb 2.0+?

  3. Verifique los permisos de archivos de Linux con ls

  4. Preservar los permisos de archivos y carpetas con rsync

  5. Montar con sshfs y escribir permisos de archivo

Comprender los permisos de archivos de Linux

Comando Chmod en Linux (Permisos de archivo)

Comando WC de Linux con ejemplos

Firmas digitales con GnuPG

Permisos y propiedad de archivos de Linux explicados con ejemplos

Administre directorios y permisos de archivos con chmod Recursive