Ich möchte wie hier und in der Dokumentation diff
beschrieben verwenden , die ich beim Tippen sehe man diff
. Wenn ich jedoch tippe diff
, bekomme ich Folgendes:
~ ❯❯❯ diff
usage: git diff --no-index <path> <path>
Wenn ich versuche zu verwenden diff
, erhalte ich ähnliche Git-Fehler, weil dies -rq
unterstützt wird, man diff
aber nicht von git diff
:
~ ❯❯❯ diff -rq ~/ ~/Desktop
fatal: invalid diff option/value: -rq
Ich verwende Prezto und Hub, die beide zur Git-Produktivität beitragen, aber keinen Alias erstellen , der, soweit ich das beurteilen kann, zumindest nicht damit beginnt g
.
Ich habe ein paar Skripte wie dieses ausgeführt , um zu versuchen, etwas zu finden, das definiert diff
, git diff
aber ohne Erfolg.
Wie behebe ich das / finde heraus, was es verursacht / überschreibe es?
Bearbeiten
Ran type diff
:
diff is a shell function
diff is /usr/bin/diff
type diff
die Ausgabe aus und veröffentlichen Sie sie.brew install colordiff
und jetztdiff
läuftcolordiff
, was eine tatsächlichediff
Sache ist.Antworten:
Dies scheint darauf zurückzuführen zu sein , dass eine Funktion überschrieben wird
diff
. Es kann durchaus eine Möglichkeit geben, dies zu deaktivieren, aber ich weiß nicht, was es ist ( aber Ericbn tut es! ). Sie haben einige Möglichkeiten:/usr/bin/diff
odercommand diff
beide führen dendiff
Befehl und nicht die Funktion aus.unset -f diff
wird diediff
Funktion entfernen . Sie können das in Ihre Shell-Konfiguration einfügen.colordiff
wird es bei Installationgit diff
von der Funktion bevorzugt verwendet .Dies scheint wirklich eine Fehlfunktion in Prezto zu sein.
quelle
Ich würde eine solche Funktion verwenden
Eine Funktion über einen Alias, da es Parameter gibt
Verwendungszweck:
diffit file1 file2
Sie könnten es in Ihre .bashrc einfügen.
Persönlich behalte ich meine Funktionssammlung in
.bash_functions
und in der.bashrc
ich habequelle
command diff "$@"
.Wie @MichaelHomer antwortete, ist dies eine Prezto-Funktion, die Teil des Dienstprogrammmoduls ist, das unter https://github.com/sorin-ionescu/prezto/tree/master/modules/utility dokumentiert ist . Der Weg, dies zu deaktivieren, ist:
Oder die Installation
colordiff
würde auch dazu führen, dass die benutzerdefinierte Funktion sie anstelle vongit diff
aufruft, da der Zweck des benutzerdefinierten Prezto darindiff
besteht:quelle