git: "Advertencia: cambiar un archivo de solo lectura"

Cuando voy a confirmar cambios en una rama usando,

git commit -a

vim se abre y voy a insertar mi mensaje de confirmación. Me sale esta advertencia en la terminal:

W10: Warning: Changing a readonly file

Para continuar con el compromiso, tengo que forzar la escritura usando :x! in vim, pero por lo demás, no se encuentran problemas.

Al menos, esto parece ser solo una molestia. ¿Alguien sabe qué está pasando y/o cómo solucionarlo?

Estoy usando Cygwin en Windows 7.

preguntado el 12 de junio de 12 a las 15:06

Quizás vim se está invocando en modo de sólo lectura. Cuáles son git config --get --global core.editor y/o $EDITOR ¿ajustado a? -

Alternativamente, ¿el mensaje de confirmación es un archivo de solo lectura? ¿Cuál es tu máscara? -

mi máscara es 0022, ¿eso significa que si no creé el archivo de mensaje de confirmación, no puedo escribir en él? -

NO, 0022 es sensato Lo hace .git/COMMIT_EDITMSG existen y cuales son sus atributos? -

Sí existe, y sus permisos son: -r-xr-xr-x+... Muy extraño no tener permisos de escritura, supongo. ¿En qué se debe configurar esto? -

3 Respuestas

Si el archivo .git/COMMIT_EDITMSG existe y es de solo lectura, lo más simple es eliminarlo; git lo recreará según sea necesario.

Respondido el 13 de junio de 12 a las 14:06

Tuve el mismo problema... pero había una instancia de vi ejecutándose todavía con ese archivo abierto. En ninguna parte de la pantalla encontré esa instancia... así que la eliminé.

respondido 14 mar '13, 09:03

Borrar el archivo no lo solucionó para mí. La configuración manual de core.editor lo hizo. Después de ejecutar este comando, el problema desapareció para mí.

git config --global core.editor "vim"

No sé por qué, pero esto es lo que finalmente resolvió el problema. $EDITOR se configuró en "vim" anteriormente y core.editor no estaba definido antes de esta corrección.

Respondido el 22 de junio de 13 a las 01:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.