Tengo un repositorio git en mi servidor de archivos al que me estoy conectando a través de AFP. Cada vez que intento realizar una operación git en el repositorio compartido, como en la organización de un archivo, aparece el siguiente mensaje de error:
fatal: Unable to write new index file
Si ejecuto el comando git en el servidor, funciona bien, así que hay algo acerca de compartir el repositorio a través de AFP que no funciona.
Estoy usando Mountain Lion tanto en el servidor como en el cliente.
ACTUALIZAR
Parece que tengo permiso de escritura para .git
y .git/index
:
$ ls -ld .git
drwxr-xr-x 1 david staff 364 Nov 29 22:38 .git/
$ ls -l .git/index
-rw-r--r-- 1 david staff 2232 Nov 29 21:45 .git/index
$ cp .git/index backup
$ echo change >> .git/index
Intenté aplicar permisos recursivamente a .git
como se sugiere en una respuesta a continuación, pero eso no ayudó:
$ chmod -Rv +w .git
$ git add deploy.js
fatal: Unable to write new index file
Hmm, parece que otra persona está usando el archivo index
:
$ cp .git/index backup; mv backup .git/index
mv: rename backup to .git/index: Resource busy
Pero fuser
y lsof
no son de ninguna ayuda:
$ fuser -fu .git/index
.git/index:
$ lsof .git/index
Solución extraña: si hago el siguiente comando en el servidor , me permite escribir un nuevo archivo index
en el cliente sobre AFP.
$ cp .git/index backup; mv backup .git/index
Estoy totalmente perdido en este punto; ¿Alguna nueva teoría?