¿Cómo hago para que git use el editor de mi elección para editar mensajes de confirmación?
¿Cómo configuro globalmente git para usar un editor particular (por ejemplo vim
) para enviar mensajes?
Configurar el editor predeterminado para Git
Elegir uno:
Establece
core.editor
en tu configuración de Git:git config --global core.editor "vim"
Establezca la
GIT_EDITOR
variable de entorno:export GIT_EDITOR=vim
Configurar el editor predeterminado para todos los programas
Establezca las variables estandarizadas VISUAL
y EDITOR
de entorno*:
export VISUAL=vim
export EDITOR="$VISUAL"
NOTA: No es necesariamente necesario configurar ambos, pero es posible que algunos programas no utilicen el formato más correcto VISUAL
. Ver VISUAL
vs.EDITOR
_
Solucionar problemas de compatibilidad
Algunos editores requieren una --wait
bandera o abrirán una página en blanco. Por ejemplo:
Texto sublime (si está configurado correctamente ; o use la ruta completa al ejecutable en lugar de
subl
):export VISUAL="subl --wait"
Código VS (después de agregar el comando de shell ):
export VISUAL="code --wait"
Correr:
git config --global core.editor "vim"
De man git-commit
:
VARIABLES DE ENTORNO Y CONFIGURACIÓN
El editor utilizado para editar el mensaje de registro de confirmación se elegirá entre la
GIT_EDITOR
variable de entorno, lacore.editor
variable de configuración, laVISUAL
variable de entorno o laEDITOR
variable de entorno (en ese orden).
En Ubuntu y también en Debian (gracias @MichielB), también es posible cambiar el editor predeterminado ejecutando:
sudo update-alternatives --config editor
Lo que provocará lo siguiente:
There are 4 choices for the alternative editor (providing /usr/bin/editor).
Selection Path Priority Status
------------------------------------------------------------
0 /bin/nano 40 auto mode
1 /bin/ed -100 manual mode
2 /bin/nano 40 manual mode
* 3 /usr/bin/vim.basic 30 manual mode
4 /usr/bin/vim.tiny 10 manual mode
Press enter to keep the current choice[*], or type selection number:
En Windows 7, al agregar el editor "Sublime", todavía me daba un error:
Abortando la confirmación debido a un mensaje de confirmación vacío.
Sublime no pudo mantener el foco.
Para solucionar este problema, abrí el archivo .gitconfig en la carpeta c:/users/username/ y agregué la siguiente línea con la opción --wait fuera de las comillas simples.
[core]
editor = 'F:/Program Files/Sublime Text 2/sublime_text.exe' --wait
Espero que sea útil para alguien que enfrente un problema similar con Sublime.
En Windows 7, configurar el editor en Notepad++
- Abra cualquier editor de texto.
- Abra este archivo:
C:\Users\YOUR_USERNAME\.gitconfig
- Agregue esta sección al final:
Para usar Notepad++ de 64 bits:
[core]
editor = 'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar
Para usar Notepad++ de 32 bits:
[core]
editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar
- Guarde y cierre el archivo.
- Cuando te comprometas con git, simplemente escribe
git commit
y presionaEnter
. Se abrirá Notepad++. - Escriba su mensaje de confirmación en la parte superior del archivo, guarde y cierre el archivo. ¡Hecho!
Para hacer de Visual Studio Code ( vscode
) el editor de git predeterminado:
git config --global core.editor "code --wait"