654 Stimmen

Liste der Git-Aliase

Wie kann ich eine Liste meiner Git-Aliase ausgeben, d. h. etwas, das der Bash alias Befehl?

20voto

Dificilcoder Punkte 354

Beides funktioniert gut

1 - Verwendung von Get Regex

$ git config --get-regexp alias

2 - Liste verwenden

$ git config --list | grep alias

20voto

Anubian Noob Punkte 13158

Wie in anderen Antworten erwähnt, git config -l listet alle Konfigurationsdetails aus Ihrer Konfigurationsdatei auf. Hier ist ein Teil dieser Ausgabe für meine Konfiguration:

...
alias.force=push -f
alias.wd=diff --color-words
alias.shove=push -f
alias.gitignore=!git ls-files -i --exclude-from=.gitignore | xargs git rm --cached
alias.branches=!git remote show origin | grep \w*\s*(new^|tracked) -E
core.repositoryformatversion=0
core.filemode=false
core.bare=false
...

Wir können also die Alias-Zeilen ausfindig machen, indem wir git config -l | grep alias :

alias.force=push -f
alias.wd=diff --color-words
alias.shove=push -f
alias.gitignore=!git ls-files -i --exclude-from=.gitignore | xargs git rm --cached
alias.branches=!git remote show origin | grep \w*\s*(new^|tracked) -E

Wir können das Ganze noch hübscher machen, indem wir einfach cut tung der alias. Teil jeder Zeile, so dass wir diesen Befehl erhalten:

git config -l | grep alias | cut -c 7-

Welche Drucke:

force=push -f
wd=diff --color-words
shove=push -f
gitignore=!git ls-files -i --exclude-from=.gitignore | xargs git rm --cached
branches=!git remote show origin | grep \w*\s*(new^|tracked) -E

Vergessen Sie nicht, dies als Alias hinzuzufügen:

git config --global alias.la "!git config -l | grep alias | cut -c 7-"

Viel Spaß!

17voto

mkobit Punkte 38986

Verwendung von git var und filtern nur diejenigen, die mit alias :

git var -l | grep -e "^alias"

17voto

VonC Punkte 1117238

Ich habe im Juni 2018 mit " Übersichtsliste - meistgenutzte Git-Befehle " die Git 2.18 "use --list-cmds=alias ( 3301d36 übertragen )", dass carej Berichte in seine Antwort .

 git --list-cmds=alias

Zusätzlich zu diesem oder dem git config --get-regexp alias können Sie die Ausgabe mit git help dessen Ausgabe sich mit Git 2.14.x/2.15 ändern wird:

" git help co " sagt jetzt " co is aliased to ... ", nicht " git co is ".

Voir Übergabe b3a8076 (12. September 2017) von Kaartic Sivaraam ( sivaraam ) .
(Zusammengefasst von Junio C. Hamano -- gitster -- sur 5079cc8 festlegen , 25. September 2017)

help : Ändern Sie eine Nachricht, um sie zu präzisieren

Wenn der Benutzer versucht, die Option ' --help ' auf einen Alias-Befehl werden Informationen über den Alias wie unten dargestellt ausgegeben:

$ git co --help
`git co' is aliased to `checkout'

Dies scheint nicht korrekt zu sein, da der Benutzer nur ' ' aliasiert hat. co ' und nicht ' git co '.
Dies kann sogar in Fällen falsch sein, in denen der Benutzer einen Alias wie ' tgit '.

$ tgit co --help
`git co' is aliased to `checkout'

17voto

Thomas Punkte 1909

Ich benutze dieser Aliasname in meinem globalen ~/.gitconfig

# ~/.gitconfig

[alias]
    aliases = !git config --get-regexp ^alias\\. | sed -e s/^alias.// -e s/\\ /\\ $(printf \"\\043\")--\\>\\ / | column -t -s $(printf \"\\043\") | sort -k 1

zur Herstellung der folgende Ausgabe

$ git aliases
aliases   --> !git config --get-regexp ^alias\. | sed -e s/^alias.// -e s/\ /\ $(printf "\043")--\>\ / | column -t -s $(printf "\043") | sort -k 1
ci        --> commit -v
cim       --> commit -m
co        --> checkout
logg      --> log --graph --decorate --oneline
pl        --> pull
st        --> status
...       --> ...

( Hinweis: Dies funktioniert bei mir in git bash unter Windows . Bei anderen Terminals müssen Sie möglicherweise das Escaping anpassen. )


Erläuterung

  1. !git config --get-regexp ^alias\\. gibt alle Zeilen von git config aus, die mit alias.
  2. sed -e s/^alias.// beseitigt alias. aus der Leitung
  3. sed -e s/\\ /\\ $(printf \"\\043\")--\\>\\ / ersetzt das erste Vorkommen eines Leerzeichens durch \\ $(printf \"\\043\")--\\> (was zu folgenden Ergebnissen führt #--> ).
  4. column -t -s $(printf \"\\043\") formatiert alle Zeilen zu einer gleichmäßig verteilten Spaltentabelle. Das Zeichen $(printf \"\\043\") was zu folgenden Ergebnissen führt # wird als Trennzeichen verwendet.
  5. sort -k 1 sortiert alle Zeilen nach dem Wert in der ersten Spalte

$(printf \" \043\ ")

Dies druckt nur das Zeichen # (hex 043), die für die Säulentrennung verwendet wird. Ich verwende diesen kleinen Hack, damit die aliases alias selbst enthält nicht wörtlich die # Zeichen. Andernfalls würde es diese ersetzen # Zeichen beim Drucken. Nota : Ändern Sie dies in ein anderes Zeichen, wenn Sie Aliasnamen mit wörtlicher # Zeichen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X