Ich habe
git () { [ $1 = commit ] && command git commit -v "${@:2}" || command git "$@"; }
Es legt git commit
„have“ -v
als Standard fest, andernfalls werden die Parameter übergeben und der jeweilige git
Befehl ausgeführt.
Aber es scheint etwas zu sein, das verkürzt werden könnte?
zu Ihrer Information, ich verkleinere meine .bashrc
Datei. Bisher auf 28 (immer noch größtenteils lesbare) Zeilen.
Antwort1
So vermeiden Sie die Wiederholung dieses command git
Teils:
git () {
if [ "$1" = commit ]; then set commit -v "${@:2}"; fi
command git "$@"
}
Beachten Sie, dass Sie es nicht ohne Anführungszeichen verwenden sollten $1
. Setzen Sie Variablensubstitutionen immer in Anführungszeichen, es sei denn, Sie wissen, warum Sie sie weglassen müssen.
Verwenden Sie &&
und nicht ||
als Abkürzungen. Das ist nett und spart vielleicht ein paar Zeichen, aber Zeichen zu sparen ist sinnlos. Die Lesbarkeit ist wichtig und if
gibt die Absicht des Codes klarer wieder.
Möglicherweise möchten Sie stattdessen einen Alias in Ihrer Git-Konfiguration definieren (auf diese Weise können Sie jedoch keinen vorhandenen Befehl überschatten, Sie müssen einen anderen Namen verwenden), etwa wie den folgenden ~/.gitconfig
:
[alias]
co = commit -v