Después de varios meses trabajando en la migración a GIT, finalmente podemos decir que todo ha salido a pedir de Milhouse. Además nos ha servido para darnos cuenta de que vamos a tener que acostumbrarnos a que el sistema de control de versiones sea una parte fundamental de nuestra metodología de trabajo. Principalmente por el gráfico que aparece a continuación. Está extraído de este gran artículo sobre control de ramas con GIT. De él obtuvimos la inspiración para realizar nuestro sistema de branching, pero no es de esto de lo que queremos hablar...
Más bien queremos contar algunos ajustes que hicimos a la configuración de git para que nos sea más usable.
- Crear unos cuantos útiles "alias":
- Pasarnos a bash y crear más "alias":
- Mostrar la rama actual en el shell de bash. Esto ya lo vimos en capítulos anteriores.
Lo primero es editar nuestro archivo .gitconfig, añadiendo algunas versiones cortas de los comandos más usados.
[alias]
co = checkout
ci = commit
st = status
br = branch
brancha = branch -a
Aquí va uno muy útil: mostrar el listado de commits en una línea cada uno y mostrando los autores al principio (todo ello a color):
hist = log --graph --decorate --pretty=format:'%C(bold blue)%Creset
%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)'
--abbrev-commit --date=relative
Los dos siguientes son muy útiles para gestionar los archivos y carpetas marcados como unchanged:
unchange = update-index --assume-unchanged
unchanged = !git ls-files -v | grep ^[a-z]
El primero nos permite marcar un archivo como "assume unchanged", en caso de que no queramos que tenga control de versiones. El segundo nos muestra qué archivos de nuestro repositorio están marcados de esta forma.
Crear una nueva branch asociada a una nueva historia de usuario:
us = "!f() { git checkout -b US$1; }; f"
Este comando funciona de la siguiente manera. Si tecleamos US 13, nos creará una nueva branch (desde la que estemos en ese momento) con el nombre US13. Muy útil.
Y para acabar, activar el color para todos los comandos de GIT:
[color]
ui = true
alias go='git checkout'
alias gp='git pull'
alias gs='git status'
Cambié mi terminal para que usara bash como intérprete, ya que me permitía funciones adicionales como la del punto 3. Después añadí unos cuantos alias entrando en el home y editando el archivo .bash_profile
Hay gente que prefiere utilizar el comando completo, es cuestión de gustos. He añadido git pull y git status porque son algunos de los comandos que más uso en consola.
Y esto es todo. Recordad que lo principal es que cada uno configure sus instrumentos a su voluntad. Al fin y al cabo, se trata de estar a gusto con las herramientas que utilizas.