¿Cómo cambiar el nombre del alias personalizado de git?

Creé un montón de atajos de alias. Quiero cambiar el nombre de uno de ellos. Por ejemplo, creemos alias al que mostrará todos los alias que ya están definidos en mi file de configuration:

 git config --global alias.al '!git config --list | grep ^alias\.' 

Mi alias ahora está guardado en config y se ve así:

 alias.al=!git config --list | grep ^alias\. 

Puedo llamarlo simplemente escribiendo en git al

¿Cómo cambio el nombre de este alias? Por ejemplo, de 'al' a solo 'l'? Podría, por supuesto, usar:

 git config --global --unset alias.al 

y luego escribe:

 git config --global alias.l '!git config --list | grep ^alias\.' 

Pero me preguntaba si había una forma de hacerlo en un command simple en su lugar, sin usar --unset ?

Para responder directamente a su pregunta, dudo que esto se pueda hacer en un solo command.

Recomiendo usar tu editor favorito y editar el file .gitconfig . Como este es un alias global, estaría en su directory principal:

vim ~/.gitconfig

Puede cambiar fácilmente los alias allí.

Podrías crear tu propio alias para hacerlo solo en un command.

Creé una distinción entre los alias globales y locales:

Cambiar el nombre de un alias

 rename-alias = "!f() { [ $# = 3 ] && [ $2 != $3 ] && [ ! -z \"$(git config $1 --get alias.$2)\" ] && [ -z \"$(git config $1 --get alias.$3)\" ] && git config $1 alias.$3 \"$(git config $1 --get alias.$2)\" && git config $1 --unset alias.$2 && return 0 || echo \"Usage: git rename-(local|global)-alias <alias existing name> <new alias name>\nThe alias you are going to rename must exist and new name must not exist.\" >&2 && return 1; };f" rename-global-alias = "!git rename-alias --global" rename-local-alias = "!git rename-alias --local" 

Un ejemplo de uso:

 git rename-global-alias existing-alias new-alias git rename-local-alias existing-alias new-alias 

Entonces su existing-alias alias existing-alias ha sido renombrado a new-alias .


Ahora está disponible en el próximo repository de Github que contiene muchos alias: