password - ¿Cómo hago que Git use el editor de mi elección para las confirmaciones?
git config username and password (18)
Preferiría escribir mis mensajes de confirmación en Vim, pero los está abriendo en Emacs.
¿Cómo configuro Git para usar siempre Vim? Tenga en cuenta que quiero hacer esto globalmente, no solo para un solo proyecto.
Atom como tu editor de git
git config --global core.editor "atom --wait"
Atom debe configurarse para ejecutarse desde la línea de comandos para que funcione lo anterior:
OS X : instalar comandos de shell desde Atom: barra de menú> Atom> Instalar comandos de shell
Windows : no se requiere ninguna acción: el átomo está configurado para ejecutarse desde la línea de comandos de forma predeterminada
Configuración de Sublime Text 2 como editor de Git commit en Mac OSX 10
Ejecute este comando:
$ git config --global core.editor "/Applications/Sublime/ Text/ 2.app/Contents/SharedSupport/bin/subl"
O solo:
$ git config --global core.editor "subl -w"
Las mejores configuraciones para Sublime Text 3 como tu editor de git (instrucciones de Windows y Linux):
Para seguir estas instrucciones en Windows, asegúrese de haber instalado git para Windows . En Windows, me gusta usar Git BASH para que se sienta más como Linux.
Primero, queremos crear un proyecto de texto sublime especial para que podamos especificar la configuración especial del proyecto que queremos establecer cada vez que git llama al editor, para facilitar las cosas al editar en git. Por ejemplo, normalmente configuro mi regla a 120 caracteres en la mayoría de los proyectos, pero para los mensajes de confirmación de git quiero que sean 72 caracteres para que se adapten bien a un terminal cuando llamas git log
o git lg
.
1. Cree un proyecto de texto sublime con la configuración que queremos usar para editar mensajes de confirmación de git
Abra Sublime Text y vaya a "Archivo" -> "Nueva ventana" para crear un nuevo proyecto anónimo. Vaya a "Proyecto" -> "Guardar proyecto como ..." y elija un lugar para guardarlo. En Linux lo .gitconfig.sublime-project
en mi directorio de inicio de Linux con el nombre de archivo .gitconfig.sublime-project
. Por lo tanto, su ruta es: ~/.gitconfig.sublime-project
. En Windows también guárdelo en su directorio de inicio, ej: C:/Users/MY_USER_NAME/.gitconfig.sublime-project
Ahora vaya a "Proyecto" -> "Editar proyecto" para editar la configuración del proyecto. Pega lo siguiente y guarda la configuración. Haga más ediciones para la configuración de su proyecto si lo desea.
{
//For folder settings help see here: https://www.sublimetext.com/docs/3/projects.html
"folders":
[
],
"settings":
{
// Disables horizontal scrolling if enabled.
// May be set to true, false, or "auto", where it will be disabled for
// source code, and otherwise enabled.
"word_wrap": false,
// Set to a value other than 0 to force wrapping at that column rather than the
// window width
"wrap_width": 0,
// Columns in which to display vertical rulers
"rulers": [72, 50], //72 is recommended by git for commit message content, and 50 for commit titles
// The number of spaces a tab is considered equal to
"tab_size": 4,
// Set to true to insert spaces when tab is pressed
"translate_tabs_to_spaces": true,
},
"build_systems":
[
]
}
2. Configura el editor que usará git.
Ahora necesitamos configurar el editor para que lo use git, editando el archivo .gitconfig
.
Para Linux:
Su copia de usuario se encontrará en ~/.gitconfig
. Abra este archivo y añada las siguientes líneas. ¡Asegúrese de usar el nombre de ruta correcto para el proyecto git que acaba de crear arriba! Estoy usando ~/.gitconfig.sublime-project
.
[core]
editor = subl --project ~/.gitconfig.sublime-project --wait
La --wait
es importante, ya que obliga a git a esperar hasta que cierre el archivo antes de continuar. La línea --project
es importante para indicar a Sublime Text qué proyecto desea abrir cada vez que git abra Sublime.
Según la respuesta anterior de @ digitaldreamer ( https://.com/a/2596835/4561887 ), " subl
puede reemplazarse por la ruta completa del ejecutable, pero [alias subl
] generalmente está disponible cuando [Sublime está] correctamente instalado. "
Para ventanas:
Para Windows, primero lea las instrucciones de Linux para obtener información de fondo. Ahora haremos algo casi idéntico.
(OPCIONAL: crea un alias subl
para usar en Git BASH):
Abra un editor de texto (por ejemplo, Bloc de notas, Notepad ++, Sublime Text, Geany, etc.) y cree un archivo llamado ".bash_profile" en su directorio de inicio. Por lo tanto, su ruta será: C:/Users/MY_USER_NAME/.bash_profile
. Guarda lo siguiente en él:
alias subl="/c/Program/ Files/Sublime/ Text/ 3/subl.exe"
Esto crea un alias de Git BASH llamado subl
que ahora podemos usar en Git BASH para Windows, para abrir fácilmente Sublime. Este paso no es obligatorio, pero es útil para el uso general de Git BASH. Ahora puedes llamar a subl .
, por ejemplo, en Git BASH para abrir un nuevo Proyecto Sublime en su directorio actual.
(OBLIGATORIO):
Edite el archivo .gitconfig
que se encuentra en su directorio de inicio: C:/Users/MY_USER_NAME/.gitconfig
, agregándole lo siguiente. Observe los cambios sutiles de las instrucciones de Linux anteriores:
[core]
editor = ''C:/Program Files/Sublime Text 3/subl.exe'' --project ~/.gitconfig.sublime-project --wait
- Tenga en cuenta que debe especificar la ruta completa al ejecutable de Sublime Text. ¡Observa la dirección de las barras! Use
/
NOT/
para separar carpetas en el nombre de la ruta! (Gracias VonC por ayudarme a ver esto ). - Nuestro
subl
alias que creamos para Git BASH anterior no funciona aquí, por lo que no puede usarlo como lo hicimos en el ejemplo de Linux, sino que debe especificar la ruta completa como se muestra arriba. - Sin embargo, el símbolo
~
todavía funciona aquí para llegar a su directorio de inicio de Windows.
2.5. (Opcional) Instale el paquete "Git" en el texto sublime 3.
Esto le proporciona resaltado de sintaxis para los mensajes de git commit
, así como acceso a otros comandos de git como git blame
(que uso frecuentemente en Sublime Text) o git commit
(que no uso en Sublime Text ya que prefiero línea de comandos para el flujo general de git, como he mencionado en mis comentarios debajo de esta respuesta).
Para instalar un paquete: Primero, asegúrese de que el "Control de paquetes" esté instalado. Luego, presione Ctrl + Shift + P (igual que Herramientas → Paleta de comandos) y escriba todo o parte de "Control de paquete: instalar paquete", luego presione Enter. En el cuadro de búsqueda que aparece, busque el paquete "Git" y presione Enter en él, o haga clic en él, para instalarlo automáticamente.
Una vez instalado, Ctrl + Shift + P y luego buscar "git" mostrará los comandos de git que puedes usar internamente dentro de Sublime Text ahora, como git blame
.
3. usalo
Ahora, cuando llama a git commit
, por ejemplo, como es normal desde la línea de comandos, Sublime Text se abrirá en el .gitconfig.sublime-project
que creamos anteriormente, ¡con la configuración de ese proyecto! A medida que escribe un párrafo, notará que se extiende más allá de la regla que establecimos, ya que el ajuste de palabra suave está desactivado. Para forzar el ajuste duro a través de retornos automáticos insertados al final de cada línea, coloque el cursor en la línea larga que desea envolver automáticamente y presione Alt + Q. Ahora se ajustará o plegará en 72 caracteres, que es lo que configuramos en el parámetro de "reglas" de la configuración del proyecto anterior.
Ahora, guarde su mensaje de confirmación con Ctrl + S y salga (para completar su git commit
) con Ctrl + Shift + W.
¡Hecho!
Para usuarios de Textmate
Esto abre el editor de Textmate cuando desea editar sus confirmaciones. Requiere herramientas de línea de comandos de Textmate para ser instalado.
git config --global core.editor "mate -w"
Windows: configurando el bloc de notas como el editor de mensajes de confirmación predeterminado
git config --global core.editor notepad.exe
Presione Ctrl + S para guardar su mensaje de confirmación. Para descartar, simplemente cierre la ventana del bloc de notas sin guardar.
En caso de que presione el acceso directo para guardar, luego decida abortar, vaya a Archivo-> Guardar como, y en el cuadro de diálogo que se abre, cambie "Guardar como tipo" a "Todos los archivos (*. *)". Verá un archivo llamado "COMMIT_EDITMSG". Bórralo, y cierra la ventana del bloc de notas.
Editar: Alternativamente, y más fácilmente, elimine todos los contenidos de la ventana abierta del bloc de notas y presione guardar. (Gracias mwfearnley por el comentario!)
Creo que para los pequeños escritos, como los mensajes de confirmación, el bloc de notas funciona mejor, porque es simple, está ahí con ventanas, se abre en poco tiempo. Incluso su sublime puede tardar uno o dos segundos en encenderse cuando tiene una carga de complementos y demás.
En Windows 7, configurando el editor a Notepad ++
- Abre cualquier editor de texto.
- Abra este archivo:
C:/Users/YOUR_USERNAME/.gitconfig
- Agrega esta sección al fondo:
[core]
editor = ''C:/Program Files (x86)/Notepad++/notepad++.exe''
- Guarde y cierre el archivo.
- Cuando te estés comprometiendo con git, simplemente escribe
git commit
y presionaEnter
. Se abrirá el Bloc de notas ++. - Escriba su mensaje de confirmación en la parte superior del archivo y guarde y cierre el archivo. ¡Hecho!
Mvim como tu editor de git
Al igual que todas las demás aplicaciones GUI, debe iniciar mvim con el indicador de espera.
git config --global core.editor "mvim --remote-wait"
Para usuarios de TextWrangler de la tienda de aplicaciones Mac:
git config --global core.editor "open -n -W -a TextWrangler"
Además, asegúrese de que su "TextWrangler> Preferencias> Aplicación> Cuando TextWrangler se active: la configuración está establecida en" No hacer nada "
Esto me funciona en OS X 10.11.4 con TextWrangler 5.0.2 de la tienda de aplicaciones Mac.
Explicación:
El -n significa abrir en una nueva instancia.
El -W significa esperar hasta que la aplicación salga antes de usar el contenido del archivo editado como mensaje de confirmación.
El -a TextWrangler significa usar la aplicación TextWrangler para abrir el archivo.
Ver man open
en tu aplicación de Mac Terminal para más detalles.
Para usuarios de Windows que quieran usar Kinesics Text Editor.
Cree un archivo llamado ''k.sh'', agregue el siguiente texto y colóquelo en su directorio de inicio (~):
winpty "C:/Program Files (x86)/Kinesics Text Editor/x64/k.exe" $1
En el tipo de solicitud de git:
git config --global core.editor ~/k.sh
Copia pegar esto:
git config --global core.editor "vim"
En caso de que te gustaría saber lo que estás haciendo. Del man git-commit
:
VARIABLES DE MEDIO AMBIENTE Y CONFIGURACIÓN
El editor utilizado para editar el mensaje de registro de confirmación se elegirá de la variable de entorno
GIT_EDITOR
, la variable de configuracióncore.editor
, la variable de entornoVISUAL
o laEDITOR
entornoEDITOR
(en ese orden).
En Ubuntu y también 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 estaba dando un error:
Anulando 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 c: / users / username / folder y agregué la siguiente línea con la opción --wait fuera de las comillas dobles.
[core]
editor = ''F:/Program Files/Sublime Text 2/sublime_text.exe'' --wait
Espero que sea útil para alguien que enfrenta un problema similar con Sublime.
Para hacer de Visual Studio Code (vscode) tu editor de git predeterminado
git config --global core.editor "code --wait"
Para usuarios de Windows que desean usar neovim con el Subsistema de Windows para Linux:
git config core.editor "C:/Windows/system32/bash.exe --login -c ''nvim .git/COMMIT_EDITMSG''"
Esta no es una solución infalible ya que no maneja el rebasado interactivo (por ejemplo). Mejoras muy bienvenidas!
Para usuarios de emacs.
.emacs
:
(server-start)
shellrc
:
export EDITOR=emacsclient
Si desea configurar el editor solo para Git, haga lo siguiente (no necesita los dos):
- Establezca
core.editor
en su configuración de Git:git config --global core.editor "vim"
- Establezca la variable de entorno
GIT_EDITOR
:export GIT_EDITOR=vim
Si desea configurar el editor para Git y también otros programas , configure las EDITOR
entorno VISUAL
y EDITOR
estandarizadas *:
export VISUAL=vim
export EDITOR="$VISUAL"
* La configuración de ambos no es necesariamente necesaria, pero es posible que algunos programas no utilicen el VISUAL
más correcto. Ver VISUAL
vs. EDITOR
.
Para texto sublime : agregue esto a .gitconfig
. La --wait
es importante. (Permite escribir texto en sublime y esperará el evento de guardar / cerrar).
[core]
editor = ''subl'' --wait
''subl'' puede reemplazarse por la ruta completa del ejecutable, pero generalmente está disponible cuando se instala correctamente.
Solo prueba EDITOR=vim git commit
.
O puede configurar su EDITOR en vim export EDITOR=vim
en su bashrc.
Y si está trabajando con diseñadores utilizando la línea de comandos, entonces Pico, y no sabe atajos;)
git config --global core.editor "pico"
O
export VISUAL=pico
export EDITOR=pico