¿Qué significa advertencia remote: warning: unable to access '/root/.config/git/attributes': Permission denied
y qué implicaciones trae?
$git clone git://git.eclipse.org/gitroot/egit/egit.git
Cloning into 'egit'...
remote: warning: unable to access '/root/.config/git/attributes': Permission denied
remote: Counting objects: 57926, done.
remote: Compressing objects: 100% (11872/11872), done.
remote: Total 57926 (delta 30734), reused 56308 (delta 29136)
Receiving objects: 100% (57926/57926), 32.29 MiB | 1021 KiB/s, done.
Resolving deltas: 100% (30734/30734), done.
Checking out files: 100% (1483/1483), done.
¿Debo informar un posible problema de infraestructura al proveedor de alojamiento?
Respuestas:
Yo mismo me encontré con esta situación. Después de verificar que estaba buscando
~/.config/
, noté que el propietario de esa carpeta eraroot
. Cambié estomy_user_name
y funcionó.También ayuda saber la causa: este directorio se crea la primera vez que ejecuta un programa que lo usa. Si el comando se ejecutó como
root
, causará este problema de permisos.Por ejemplo, si el
~/.config
directorio aún no existe y lo ejecutasudo htop
, los directorios~/.config
y~/.config/htop
serán creados y propiedad deroot
. Posteriormente, un comando git normal no podrá acceder~/.config
y dará la advertencia anterior. (Crédito: usuario mehtunguh)La
-R
opción conchown
es modificar los permisos de forma recursiva. Esto le ayudará si tiene subcarpetas debajo~/.config
fuente
~/.config
directorio aún no existe y lo ejecutasudo htop
, los directorios~/.config
y~/.config/htop
serán creados y propiedad de root. Entonces, ungit
comando normal no puede acceder~/.config
y dará esta advertencia.Creo que la
HOME
variable de entorno no está configurada correctamente.Desde el hilo del grupo de Google ,
fuente
Git está intentando leer la configuración desde la raíz en lugar de la configuración del usuario. Verifique que sus variables de entorno tengan el conjunto de configuración de git correcto o que se pueda acceder al archivo .gitconfig en su carpeta de inicio.
fuente
Ir al directorio raíz
cd ~/
Escribe el siguiente código:
sudo chown -R username /Users/username
Donde nombre de usuario es el nombre de usuario de su sistema.
fuente
Ejecuté un problema similar y pude solucionarlo en el lado del servidor. git se ejecuta allí bajo uwsgi, así que agregué en la configuración de uwsgi la siguiente línea:
donde / srv / git es propiedad del mismo uid bajo el que se ejecuta uwsgi.
chmod u+rwX /srv/git
Por lo tanto, debe apuntar la variable HOME en el lado del servidor para el proceso que ejecuta git en el directorio donde este proceso tendrá permisos de lectura / escritura / recorrido.fuente
Para Windows, puede darse el caso de que algún proceso como el cliente CMD o SSH abriera alguna carpeta que Git intenta eliminar.
fuente