Acceso al disco para aplicaciones de App Store
ABDiff es una aplicación de la App Store, por lo que se ejecuta dentro del entorno limitado de Apple. La zona de pruebas impide que la aplicación lea archivos a menos que concedas acceso explícitamente (por ejemplo, seleccionando una carpeta, arrastrando archivos o agregando una raíz de acceso en Configuración).
Es por eso que a veces ves un mensaje como:
“ABDiff necesita acceso a esta carpeta para abrir archivos pasados por Git”.
Por
qué git difftool activa un mensaje de acceso al disco
Cuando ejecutas git difftool, Git normalmente crea
copias temporales de los archivos que quieres comparar.
Estos viven en carpetas temporales de macOS como:
/private/var/folders/.../T/...
Esas rutas están fuera de tu carpeta de repositorio,
por lo que no se aplica una raíz de acceso guardada como
/Users/you/Developer/code. Por eso, ABDiff te pide que
apruebes una carpeta que cubra los archivos temporales para poder
abrirlos.
Si rechazas el mensaje, ABDiff no podrá leer los archivos temporales y verás errores como “Sin permiso para leer…”.
Qué hacer
Usa una de estas opciones:
Puedes revisar o eliminar las raíces de acceso guardadas en Configuración → Acceso a carpetas.
Permite la carpeta sugerida cuando te lo solicite.
ABDiff agrega la carpeta elegida a Configuración → Acceso a la carpeta para que puedas reutilizarla sin que te lo solicite (a menos que desactives “Guardar las indicaciones de acceso de Git aquí”).Agrega una raíz de acceso más amplia en Configuración si usa Git difftool con frecuencia, por ejemplo:
/private/var/folders
Evita rutas temporales comparando archivos reales dentro de tu repositorio en lugar de
git difftool, p. ej. arrastra los archivos a ABDiff.
Por qué parece “acceso a todo el disco”
Si Git pasa archivos desde diferentes ubicaciones (por ejemplo, uno
en tu repositorio y otro en /private/var/...), el único
padre común puede ser /. En ese caso, el selector del
sistema puede verse como “disco completo”, pero ABDiff solo lee los
archivos que abres.
ABDiff no solicita acceso completo al disco por sí solo y no escanea tu disco. Solo lee archivos y carpetas que eliges explícitamente abrir o a las que otorgas acceso.