¿Cómo establecer alias en Git Bash para Windows?

118

¿Cómo asignar un alias al comando en Git Bash para Windows descargado de git-scm.com?

Me refiero a los comandos Bash, no a Git.

(windows7)


Editar:

Escribir alias en el .bashrcarchivo (como lo sugiere @gturri ) no agregarlo en la consola (después de reiniciar el sistema) (nunca escribí un alias para el lscomando, por lo que debería ser un alias predeterminado).

.bashrc.

Sruj_2ndAccountForStupidQtions
fuente
1
lsno es un alias predeterminado, es un comando. ls.exees en lo /usr/binque es decir C:\Program Files\Git\usr\bin\ls.exe. Puede ejecutarlo desde una línea de comandos cmdo PowerShell.
Chris F Carroll

Respuestas:

118

Para configurar los alias de bash, es lo mismo que si estuviera en una plataforma Unix: colóquelos en un .bashrcen su casa:

cd
echo alias ll=\'ls -l\' >> .bashrc

Para que se tenga en cuenta este cambio, debe obtener este archivo (es decir: ejecutar source .bashrc) o reiniciar su terminal

(En algunos casos * puede encontrar el equivalente para el .bashrcarchivo en C:\Users\<username>\AppData\Local\GitHub\PortableGit_\etc\profile.d\aliases.sh.Y debe agregar alias en aliases.sh.)

(* este caso es cuando instala Git para la versión de GUI de Windows desde https://git-scm.com/download/win que contiene GitBash)

gturri
fuente
ayer acepté esta respuesta porque parecía funcionar. Escribí tu línea de ejemplo alias ll=\'ls -l\'y el llcomando funcionó. Entonces hoy agregó más alias y no lo es. (así que deshago acepto la respuesta). actualizar en mi publicación principal. Parecen alias lly lsson predeterminados (nunca escribí un alias para el lscomando, creo que sí)
Sruj_2ndAccountForStupidQtions
raro: probé en Windows 7 y funciona bien (probé con echo alias toto=\'ls -l\' >> .bashrcpara evitar interacciones con alias predeterminados). ¿Puedes comprobar que la línea está realmente en tu .bashrc? (también, recuerde que debe probarse con una nueva ventana, ya que .bashrcse obtiene cuando se lanza el shell
gturri
¿Su directorio etc existía por defecto o lo creó manualmente? No lo recuerdo, pero parece que creé este directorio manualmente ayer (en mi cuenta de usuario de Windows) como en otra cuenta de Windows (administrador), donde también tengo git bash, etc., el directorio no existe. (Nuevamente, descargué e instalé git bash del sitio oficial de git).
Sruj_2ndAccountForStupidQtions
Nunca presté atención a este /etcdirectorio. Realmente parece coincidir C:\Users\<user.name>\AppData\Local\Programs\Git\etc. No lo creé, por lo que debe haber sido creado automáticamente
gturri
3
A partir de Git Bash 2.13 / Windows 10, el directorio estaba ubicado en `C: \ Users \ csmith \ AppData \ Local \ Programs \ Git \ etc`
QueueHammer
62

Tuve el mismo problema, no puedo averiguar cómo encontrar los alias utilizados por Git Bash en Windows. Después de buscar por un tiempo, encontré el archivo aliases.sh debajo C:\Program Files\Git\etc\profile.d\aliases.sh.

Esta es la ruta en Windows 7, tal vez pueda ser diferente en otra instalación.

Simplemente ábralo con su editor preferido en modo administrador . Después de guardarlo, vuelva a cargar su símbolo del sistema.

¡Espero que esto pueda ayudar!

Maurizio
fuente
1
Tengo 2 computadoras con Windows 10. En una, la primera solución funcionó, en la otra, ¡solo funcionó su solución! ¡Gracias @Maurizio!
matthiku
2
Este aliases.sharchivo se sobrescribe cuando instala una nueva versión de git. Recomiendo crear .bashrcen su directorio de "inicio" (quiero decir C:\users\<yourname>)
tobi42
1
Yo uso echo "source ~/.bashrc" >> /etc/profile.d/aliases.sh, luego mantengo mis alias en mi carpeta de inicio y después de una actualización de git, simplemente restauro el puntero en
etc.para
40

Siga los pasos a continuación:

  1. Abra el archivo .bashrcque se encuentra en la ubicaciónC:\Users\USERNAME\.bashrc

    Si el archivo .bashrcno existe, créelo siguiendo los pasos a continuación:

    1. Abra el símbolo del sistema y vaya a C:\Users\USERNAME\.
    2. Escriba el comando notepad ~/.bashrc
      Genera el .bashrcarchivo.
  2. Agregue los siguientes comandos de muestra de WP CLI, Git, Grunt y PHPCS, etc.


# ----------------------
# Git Command Aliases
# ----------------------
alias ga='git add'
alias gaa='git add .'
alias gaaa='git add --all'

# ----------------------
# WP CLI
# ----------------------
alias wpthl='wp theme list'
alias wppll='wp plugin list'

Ahora puedes usar los comandos:

  • ga en vez de git add .
  • wpthl en vez de wp theme list

P.ej. Lo he utilizado wpthlpara el comando WP CLI wp theme list.

Yum@M MINGW64 /c/xampp/htdocs/dev.test
$ wpthl
+------------------------+----------+-----------+----------+
| name                   | status   | update    | version  |
+------------------------+----------+-----------+----------+
| twentyeleven           | inactive | none      | 2.8      |
| twentyfifteen          | inactive | none      | 2.0      |
| twentyfourteen         | inactive | none      | 2.2      |
| twentyseventeen        | inactive | available | 1.6      |
| twentysixteen          | inactive | none      | 1.5      |
| twentyten              | inactive | none      | 2.5      |
| twentythirteen         | inactive | none      | 2.4      |
| twentytwelve           | inactive | none      | 2.5      |

Para obtener más detalles, lea el artículo Atajo de teclado / alias para los comandos WP CLI, Git, Grunt y PHPCS para Windows

maheshwaghmare
fuente
2
Tenga en cuenta que si .bashrcaún no existe, puede crearlo. (Windows 10)
jeff
2
Correcto, @jeff. Estoy actualizando la respuesta.
maheshwaghmare
no te olvides de correr source ~/.bashrc
ema
19

Puede agregarlo manualmente en el archivo .gitconfig

[alias]
    cm = "commit -m"

O usando el script:

git config --global alias.cm "commit -m"

Aquí hay una captura de pantalla del .gitconfig

ingrese la descripción de la imagen aquí

CodeWizard
fuente
3
Debo marcar claramente en el encabezado que me refiero a comandos de shell bash, no a git.
Sruj_2ndAccountForStupidQtions
4

Hay dos formas sencillas de establecer el alias.

  1. Usando Bash
  2. Actualización del archivo .gitconfig

Usando Bash

Abra la terminal bash y escriba el comando git. Por ejemplo:

$ git config --global alias.a add
$ git config --global alias.aa 'add .'
$ git config --global alias.cm 'commit -m'
$ git config --global alias.s status
---
---

Eventualmente agregará esos alias en el archivo .gitconfig.

Actualización del archivo .gitconfig

Abra el archivo .gitconfig ubicado en 'C: \ Users \ username \ .gitconfig' en el entorno de Windows. Luego agregue las siguientes líneas:

[alias]  
a = add  
aa = add . 
cm = commit -m 
gau = add --update 
au = add --update
b = branch
---
---
npcoder
fuente
La segunda es la mejor respuesta. No requiere generar un nuevo .bashrcarchivo debajo de la casa, que debajo de Windows parece al menos un poco extraño, y usa un estándar en su .gitconfiglugar. ¡Gracias!
Andrea
2
  • Ir: C:\Users\ [youruserdirectory] \bash_profile

  • En su tipo de archivo bash_profile - alias desk = 'cd "[DIRECTORIO UBICACIÓN]"'

  • Actualice su directorio de usuario donde existe el archivo bash_profile y luego vuelva a abrir su ventana CMD o Git Bash

Escriba escritorio para ver si llega a la ubicación del escritorio o la ubicación que desea en el área "UBICACIÓN DEL DIRECTORIO" arriba

Nota: [escritorio] puede ser el nombre que elija y debería llevarlo a la ubicación a la que desea llegar cuando se ingrese en la ventana de CMD.

usuario3393813
fuente
0

Para agregar un alias temporal:

  1. Goto Terminal (estoy usando git bash para Windows).
  2. Tipo $ alias gpuom='git push origin master'
  3. Para ver una lista de todos los alias, escribe $ aliasEnter.

Para agregar un alias permanente:

  1. Goto Terminal (estoy usando git bash para Windows).
  2. Escribe $ vim ~/.bashrcy presiona Enter (supongo que estás familiarizado con vim).
  3. Agregue sus nuevos alias (como referencia, mire el fragmento a continuación).
    #My custom aliases  
    alias gpuom='git push origin master' 
    alias gplom='git pull origin master'
  4. Guardar y salir (presione Esc y luego escriba: wq).
  5. Para ver una lista de todos los alias, escribe $ aliasEnter.
shubhamr238
fuente