git-Aliase befinden sich im falschen Verzeichnis

Zusammenfassung: Das aktuelle Arbeitsverzeichnis der Befehle, die über Git-Aliase ausgeführt werden, ist falsch.

Der einfachste Weg, dies zu demonstrieren, ist ein Git-Alias wie folgt:

[alias]
    pwd = !pwd

Sogit pwd führt nur den Bash-Befehl auspwd. Man würde denken, dass die Ausgaben der beiden Befehle gleich wären. Probieren wir das jetzt ein paar Mal aus:

$ cd ~
$ pwd && git pwd
/home/limpchimp
/home/limpchimp    # great!
$ mkdir foo && cd foo && git init
Initialized empty Git repository in /home/limpchimp/foo/.git/
$ pwd && git pwd
/home/limpchimp/foo
/home/limpchimp/foo  # great!
$ mkdir bar && cd bar
$ pwd && git pwd
/home/limpchimp/foo/bar
/home/limpchimp/foo   # uuhhhhhhhh...?

Es scheint, dass Git das aktuelle Arbeitsverzeichnis in das erste übergeordnete Verzeichnis mit einem @ änder.git Ordner (falls vorhanden). Das ist sehr problematisch; Es geht darum, bestimmte Skripte zu vermasseln, die ich geschrieben habe und die in einem bestimmten Verzeichnis ausgeführt werden sollen, und mich dazu zu bringen, bestimmte Dinge nicht als Git-Aliase zu verwenden. Gibt es einen Weg, dies zu umgehen? Wie kann ich es reparieren

Antworten auf die Frage(2)

Ihre Antwort auf die Frage