Solución: ingrese un mensaje de confirmación para explicar por qué es necesaria esta fusión

Posiblemente, uno de los mensajes de error más vergonzosos en los que se puede quedar atrapado cuando se usa el centro de desarrollo de git involucra mensajes de confirmación después de realizar una combinación normal. Es posible que vea una línea que le indica que ingrese un mensaje de confirmación para explicar por qué es necesaria esta combinación, pero si escribe algo allí, no le permite salir. La razón por la que esto es tan vergonzoso es porque no es un mensaje de error en absoluto.

El mensaje está realmente disponible para los humanos que tienen que editar las combinaciones de git, y cualquier texto que agregue es simplemente un aviso de otros desarrolladores que podrían estar viendo lo que escribió. Debe salir del editor de la misma manera que lo haría si lo estuviera usando desde una pantalla de terminal estándar.

Salir de las combinaciones de git que piden mensajes de confirmación

Generalmente, verá esto si ha realizado una fusión normal en git como parte de un documento separado. A veces, puede recibir este mensaje después de un bloque de código cuando fusiona un upstream actualizado en su propia rama de tema. Ninguno de la documentación de git explica qué hacer cuando lo alcanza porque realmente no es un aviso en absoluto.

Ambas líneas de este mensaje comienzan con el símbolo #, lo que significa que son comentarios. Dado que git no sabe cuántos desarrolladores están trabajando en un proyecto, esto se agrega para que pueda dejar un mensaje a otros sobre por qué fusionó un flujo ascendente en una rama de tema. Sin embargo, debe saber qué editor está utilizando para salir.

En la mayoría de los casos, está utilizando los editores vi o vim. Presione la tecla Esc, luego escriba: wq y presione enter para salir. Esta es la misma forma en que saldría de vim en cualquier otra ocasión. Esto guarda el archivo y luego sale, lo que lo sacará directamente de git.

Observe cualquier pista que pueda ayudarlo a saber qué tipo de editor está utilizando. En nuestra captura de pantalla de ejemplo, los caracteres de tilde adicionales que muestran nuevas líneas aún por insertar en un archivo fueron un indicio revelador de que la plataforma git nos puso en vim. Por otra parte, si no puede averiguar qué editor está usando, presione Esc y use el comando: wq porque vi y vim son casi universales en este punto, por lo que encontrará que esto generalmente lo sacará.

Por otro lado, si estaba usando nano, simplemente presione Ctrl + X y escriba y cuando se le pregunte si desea guardar los cambios. Tan pronto como presione enter, estará fuera de git y volverá a donde estaba antes. Por lo general, notará una línea en la parte superior del terminal que dice "GNU nano" en estos casos. De lo contrario, busque varios atajos de teclado en la parte inferior de la ventana.

Si encuentra que ninguno de estos métodos funciona, presione Ctrl + X seguido de Ctrl + C para salir. Esto debería sacarte de git en caso de que estuvieras usando el editor emacs. Ésta es una circunstancia inusual. En la mayoría de los casos, Esc seguido de: wq debería funcionar y Ctrl + X seguido de y debería funcionar en los casos en que eso no funcione. Querrá usar Ctrl + X seguido de Ctrl + C solo si sabe que está en emacs o si estos dos métodos no funcionan. Ctrl + C también debería funcionar, aunque sin guardar, si está utilizando el editor JOE en su terminal git.

Una vez que haya salido y vuelto al indicador, escriba cat ~ / .gitconfig | grep editor en la terminal para averiguar en qué editor estaba atascado. Obtendrá una línea que dice algo como editor = vim, que sería el nombre del editor al que git predeterminado. En el futuro, puede usar el método estándar para salir de ese editor si, después de una fusión de git normal, vuelve a ver la línea "Introduzca un mensaje de confirmación para explicar por qué es necesaria esta fusión".

También es posible que desee editar el archivo, con el editor de texto que prefiera habitualmente, y cambiar el editor a lo que desee. Desplácese hacia abajo hasta donde dice [core] y luego cambie la línea que dice "editor = vim" para leer el que desee. Por ejemplo, es posible que desee que lea "editor = nano" si prefiere usar el editor nano para codificar.