Tecnología · GUÍA PRÁCTICA
¿Git detecta dubious ownership? Prueba usuario, propietario y alcance de confianza
Antes de usar safe.directory=*, audita el Git ejecutado, la identidad del sistema, el propietario de la ruta real y la configuración protegida.

La negativa por dubious ownership es una barrera de seguridad, no un simple error de permisos. Primero demuestra qué Git, con qué usuario, rechazó qué ruta real.
Separa propietario inesperado, lanzador, repositorio compartido y alcance de configuración para aplicar la reparación mínima.
Congela el contexto del fallo
Antes de cambiar propiedad o configuración, guarda el error completo, comando, ruta rechazada y entorno de ejecución.
No empieces con chmod, chown recursivo, otro clon ni safe.directory=*; conserva evidencia para elegir la rama correcta.
Prueba Git y usuario efectivos
En el contexto fallido registra ejecutable, versión, whoami, id, HOME, cuenta de servicio y SUDO_UID.
GUI, WSL, CI y terminal pueden usar programas, usuarios y configuraciones distintos.
Verifica ruta real y propietario
Inspecciona la ruta exacta con realpath, stat, ls -ld o Get-Acl, incluidos directorios padre.
Distingue un clon personal con dueño erróneo de repositorios compartidos, montajes con UID, NAS o WSL.
Audita origen y alcance de confianza
En el mismo contexto muestra origin y scope de safe.directory y revisa configuraciones global y system.
La configuración local no puede declararse confiable; revisa ruta canónica, HOME y lado cliente/servidor.
Elige la reparación más estrecha
Corrige el dueño de un clon personal si es incorrecto; para un repositorio compartido intencional añade una sola ruta absoluta.
safe.directory=* es una renuncia total, no un diagnóstico. No sustituyas el análisis por chmod o chown amplios.
Trata los límites de entorno
Compara Git, usuario, HOME y dueño del montaje en GUI, WSL, contenedor, CI, sudo y SSH.
La configuración del cliente no repara Git remoto; termina con un dueño claro o una excepción exacta.
Verifica y conserva reversión
Repite el comando original y una operación de lectura; vuelve a mostrar origen y alcance de configuración.
Registra propietario o excepción, archivo, motivo y comando de eliminación para mantener la protección en otros lugares.
