tutorial hub gui español commands cli git

hub - error de git "no se puede escribir el nombre de archivo sha1... Permiso denegado"



git repository (6)

Incluso si se trata de un contexto diferente (git + ssh), verifique la ACL asociada con su repositorio.
Ver por ejemplo esta entrada de blog .

Como se sugiere en la pregunta SO " Error de extracción de Git: no se puede crear el nombre de archivo sha1 temporal " (que también tiene otras sugerencias interesantes), intente rehacer su repositorio simple, esta vez con la configuración:

git config core.sharedRepository true

Estoy usando git en windows. Esto es lo que hice: haciendo el desarrollo en la máquina M1, creé un repositorio en la unidad USB M2 para hacer una copia de seguridad del repositorio en M1. Hice copias de seguridad usando este comando (de git bash en M1):

git push --mirror "f:/repo"

Trabajó sin problemas. Entonces compré una nueva máquina M3. Cloné el repositorio de M2 ​​a M3:

git clone "f:/repo" .

Realicé algunos checkins al repositorio en M3. Entonces lo hice (de git bash en la máquina M3)

git push --mirror "f:/repo"

Recibo este error: no puedo escribir el nombre de archivo sha1 ... Permiso denegado ¿Cómo puedo solucionar esto?


Nos topamos con este problema cuando un colega no tenía la configuración correcta de umask en su .bashrc que provocó que los archivos que se comprometió se configuraran como de lectura solo para el resto de nosotros que intentamos escribir cambios en ese mismo archivo en el git repo . Aquí hay un enlace explicando los permisos de umask.


Se encontró con este error debido a los permisos en repositorios distantes. En mi caso, el usuario ssh fue el incorrecto para los derechos.


Tuve este mismo problema y pude solucionarlo yendo a C:/Program Files/Git luego haga clic derecho en git-bash.exe -> propiedades -> Compatibilidad -> Ejecutar este programa como administrador.


Tuve este problema durante 2 días y finalmente encontré una manera de resolverlo. El error se produce porque la rama (en el repositorio remoto) en la que realmente quieres ingresar está actualmente desprotegida. Al aplicar la opción --mirror o --mirror , al menos una rama está desprotegida, por lo tanto, el permiso es denegado.

Así que simplemente cambie a otra rama en el control remoto y aplique el push localmente y esta vez funcionará.


Yo también obtengo el mismo error, pero generalmente cuando hago un "git pull" usando bash en Windows.

Para mí, está relacionado con alguna otra aplicación (generalmente un comprobador de virus en mi caso) que causa conflictos al mantener el directorio .git.

Por lo general, puedo hacer "git pull" un par de veces más y eventualmente funcionará (después de fallar con el mismo error de denegación de permiso en un valor hash diferente) o si me siento apurado, detendré mi antivirus, hago el git pull (que funcionaría con éxito la primera vez sin el error de permiso) y luego vuelve a activar el comprobador de virus muy rápidamente.