2011-08-08 8 views
5

Estoy usando git con Kaleidoscope configurado como difftool. Ha estado funcionando bien durante meses. Estaba trabajando un día o dos atrás también. Hoy, cuando he intentado hacer un "difftool git", de repente, git informaProblema de Git difftool: no se puede crear el archivo temporal

fatal: unable to create temp-file: No such file or directory 

Buscando en el Google sugirió que esto podría ser un problema de permisos de directorio en el repositorio git local. Pero la situación no mejoró incluso después de un chown recursivo en el git repo.

La documentación de Git-difftool no menciona donde podría estar intentando crear este archivo temporal. ¿Alguien tiene alguna idea sobre cómo descubrir esto?

+0

¿Cuál es el valor de '$ TMPDIR' en su servidor Git? – VonC

+0

¡Buena captura! $ TMPDIR se configuró como algo loco "/private/tmp/PKInstallSandbox.W1I4ev/tmp". Después de buscar en Google, este es aparentemente un problema conocido con un instalador de una aplicación (TotalTerminal). Hizo una actualización automática hoy, pero no pensé que en realidad rompería algo. – odie

+0

excelente. He publicado una respuesta con esos elementos para obtener más visibilidad. – VonC

Respuesta

6

Como he comentado, este tipo de mensaje depende generalmente del valor de la variable de entorno $TMPDIR.

En el caso de la OP:

$TMPDIR se estableció en algo loco "/private/tmp/PKInstallSandbox.W1I4ev/tmp".
Después de buscar en Google, este es aparentemente un problema conocido con un instalador de una aplicación (TotalTerminal).
Se actualizó a sí mismo hoy, pero no pensé que realmente rompería algo.

Restauración $TMPDIR a un valor "correcto" (como /tmp u otro MacOs-specific localtion) debería solucionar el problema.

+0

¡Muchas gracias! =) – odie

+0

¿Cómo configura $ TMPDIR en/tmp? – dmackerman

+1

@dmackerman dependiendo de su shell, usted escribiría 'export TMPDIR =/tmp' en su' .cshrc' por ejemplo, para que su sesión herede automáticamente el valor correcto. – VonC

Cuestiones relacionadas