git alias
Información sobre los alias de Git: cómo crearlos y utilizarlos para definir comandos personalizados de Git.

¿Qué es un alias de Git?
Un alias de Git es un atajo personalizado que asigna un nombre corto y fácil de recordar a un comando de Git más largo (o incluso a una cadena de comandos). Una vez definido, escribir git co puede ejecutar git checkout, ahorrando pulsaciones de teclas y reduciendo errores tipográficos en comandos que se usan decenas de veces al día.
No existe un comando git alias dedicado. En cambio, los alias se almacenan como entradas de configuración ordinarias, por lo que se crean con el comando git config o editando directamente un archivo de configuración de Git. Al ser simples configuraciones, los alias respetan las reglas de ámbito habituales de Git: defínelos globalmente (en ~/.gitconfig) para que todos los repositorios puedan usarlos, o localmente (en el .git/config de un repositorio concreto) cuando un alias solo tenga sentido en ese proyecto.
Esta página cubre ambas formas de crear alias, cómo verificarlos, cómo definir alias para comandos que aceptan argumentos, cómo ejecutar comandos de shell externos desde un alias y algunos alias que vale la pena añadir hoy mismo.
Crear alias con git config
La forma más común de añadir un alias es el comando git config con la opción --global, que escribe en ~/.gitconfig para que el alias esté disponible en todos los repositorios:
git config --global alias.co checkoutLa forma general es git config --global alias.<atajo> "<comando>". El ejemplo anterior permite ejecutar git co en cualquier lugar donde se espera git checkout. Omite --global para limitar el alias al repositorio actual.
Puedes confirmar que el alias se guardó con git config --list, que imprime todos los valores de configuración activos:
git config --listLa nueva entrada aparece en la salida como:
alias.co=checkoutA partir de ahora el alias se comporta exactamente como si hubieras escrito el comando completo. Cualquier argumento adicional que pases se reenvía al comando subyacente:
git co -b new-featureEsto ejecuta git checkout -b new-feature, creando y cambiando a una rama llamada new-feature.
Crear alias editando .gitconfig
Dado que los alias son configuración simple, también puedes añadirlos editando el archivo de configuración directamente. Abre ~/.gitconfig (global) o el .git/config de un repositorio (local) y añade una sección [alias]:
[alias]
co = checkout
ci = commit
st = statusCada línea bajo [alias] tiene el formato atajo = comando. Esto es exactamente lo que produce git config --global alias.co checkout, por lo que ambos métodos son intercambiables: editar el archivo es práctico cuando quieres añadir varios alias a la vez.
Alias para comandos con argumentos
Los alias funcionan bien para comandos que siempre usan las mismas opciones. Por ejemplo, un log en una línea con decoración:
git config --global alias.lg "log --oneline --graph --decorate --all"Ejecutar git lg imprime entonces un historial compacto con gráfico. Consulta git log para ver qué hace cada opción.
Encierra el comando entre comillas cuando contenga espacios u opciones, de lo contrario el shell pasará las palabras adicionales a git config en lugar de almacenarlas como parte del alias.
Ejecutar comandos de shell desde un alias
Para ejecutar un programa externo (que no sea un subcomando de Git), añade el prefijo ! al valor del alias. Git ejecutará entonces el resto en un shell:
git config --global alias.visual "!gitk"Así es también como se combinan varios pasos. El alias siguiente prepara todos los cambios y hace el commit en un solo paso, donde $1 es el mensaje de commit que se pasa:
git config --global alias.ac '!f() { git add -A && git commit -m "$1"; }; f'Ahora git ac "fix typo" ejecuta git add -A seguido de git commit -m "fix typo".
Alias de Git útiles
Aquí hay algunos alias que acortan los comandos del día a día. Añádelos con git config --global alias.<nombre> "<comando>":
| Alias | Se expande a | Descripción |
|---|---|---|
co = checkout | git checkout | Cambia de rama o restaura archivos. |
cob = checkout -b | git checkout -b | Crea y cambia a una nueva rama. |
ci = commit | git commit | Registra los cambios preparados. Consulta git commit. |
st = status -sb | git status -sb | Muestra un estado breve con información de rama. |
f = fetch -p | git fetch -p | Obtiene cambios y elimina las ramas de seguimiento remotas obsoletas. |
p = push | git push | Envía cambios a un remoto. |
bd = branch -d | git branch -d | Elimina una rama solo si está fusionada. |
ba = branch -a | git branch -a | Lista las ramas locales y de seguimiento remoto. |
bD = branch -D | git branch -D | Elimina una rama forzosamente. |
dc = diff --cached | git diff --cached | Muestra los cambios preparados. |