sábado, 24 de mayo de 2014

Sublime Text 2 como editor predeterminado en Git

Si trabajas con git en Windows seguramente también trabajarás con algún cliente gráfico del estilo SourceTree o similar. Sin embargo, es muy habitual (y de hecho te da puntos de carisma) trabajar desde la línea de comandos con Git Bash.

Como ya sabrás, al hacer un commit en git es obligatorio un comentario. Por ello, el típico comando commit sería algo así:

git commit -m “Your comment goes here…”

No obstante, es posible no suministrar el comentario en el comando de git y escribirlo con nuestro editor de texto preferido, en mi caso Sublime Text. En este caso es necesario configurar git para establecer el editor de texto predeterminado. En el caso de ST lo haríamos con el siguiente comando:

git config --global core.editor "'c:/program files/sublime text 2/sublime_text.exe' -n -w"

El parámetro -n indica a ST que abra una nueva ventana y el parámetro -w hace que Git Bash pueda esperar al cierre de ST para confirmar o abortar el commit.

Por otro lado, si quieres configurar el texto predeterminado del comentario puedes crear un fichero de texto cualquiera con un contenido cualquiera y asignarlo con el comando:

git config --global commit.template "ruta a tu plantilla de comentario"

Recuerda que las rutas en las variables de configuración de git utilizan / en vez \

Como valioso tip (o como cutre-tip, como tú quieras llamarlo) tanto para confirmar como para abortar el commit, siempre cierra la nueva ventana de ST que se abrió para escribir el comentario con Close Window o su atajo Ctrl + Shift + W.

Actualización 20/05/2015

Después de trabajar un tiempo con git y aprender algo más :) he visto otros comandos que utilizarán el editor predeterminado, por ejemplo git config --global --edit. El problema está en que entonces el parámetro –w restará más que sumará (no siempre se quiere esperar al editor). De este modo he vuelto a los orígenes y he desistido de utilizar ST como editor predeterminado, me parece más sencillo fluir con VIM (editor predeterminado de Git Bash) y dejarme de líos para algo que aporta tan poco. 

Un saludo!

3 comentarios:

  1. Sergio, si está la versión 3 ¿Como es que sigues utilizando la versión 2?

    ResponderEliminar
    Respuestas
    1. Porque la versión 3 está en beta. Claro está que una beta para un editor de texto no parece que sea un problema, si algo falla no será crítico. De todas formas miraré si esto es compatible con ST3 (asumo que sí) y actualizaré el post y sobre todo su título :)

      Eliminar
    2. Confirmado, funciona sin problemas con ST3!

      Eliminar