2016-05-30 13 views
-1

man diff Ausführung der folgenden Tells:Mann diff diff Version entspricht nicht installiert

NAME 
     diff - compare files line by line 

SYNOPSIS 
     diff [OPTION]... FILES 

DESCRIPTION 
     Compare files line by line. 

     -i --ignore-case 
       Ignore case differences in file contents. 

[...] 
     -q --brief 
       Output only whether files differ. 
[...] 

aber wenn ich den -q Option, schlägt es mit fatal: invalid diff option/value: -q

Warum der Mann des Befehls diff tut stimmt nicht mit der installierten Version überein?

Wie es zu beheben?

Gibt es ein Brühpaket, das eine Version des diff-Befehls mit der Option -q hat? (Gebräu coreutils und binutils haben nicht den Befehl diff)

OSX 10.11.5

-Update mit Ihren Fragen

$ which diff 
/usr/bin/diff 

$ diff --version 
usage: git diff --no-index <path> <path> 

$ diff -v 
usage: git diff --no-index <path> <path> 

$ command diff --version 
diff (GNU diffutils) 2.8.1 

ich brauen und https://github.com/donnemartin/dev-setup

Wenn ich deaktivieren die .bash_profile von dev-setup installiert, dann which diff gibt immer noch den gleichen Pfad aber diff -q funktioniert.

+1

Was ist die Ausgabe von ' welcher Unterschied? –

+2

Die Frage wurde in die Warteschleife gestellt, so dass ich keine Antwort posten kann, aber Ihre '.bash_profile' Quellen' .functions' und '.functions' funktionieren' diff() {git diff --no-index --color -Wörter "$ @"; } '. 'git diff 'unterscheidet sich geringfügig von' diff'. –

+0

Ich sehe, es ist git diff. Ich dachte nicht, dass es ein Problem mit git diff sein könnte, weil ich dachte, dass es nur für Dateien aus einem git-Repository funktionieren würde. guter Fang, danke. Gibt es etwas, was ich tun kann, damit du eine Antwort schreiben kannst und ich deine belohnen kann? –

Antwort

1

Verwenden Sie zufällig etwas wie pretzo oder etwas ähnliches? Einige Frameworks wie diese definieren (schlecht) ihre eigenen Funktionen und ersetzen die Standard-Funktionen.

In diesem Fall versuchen Sie command diff -q ... laufen und sehen, ob dies das Problem behebt.

bearbeiten: Wie @MarkPlotnick darauf hingewiesen, ist dev-setup ein anderer Rahmen, der die Standard diff Befehl überschreibt und verwendet git diff statt:

# Use Git’s colored diff when available 
hash git &>/dev/null; 
if [ $? -eq 0 ]; then 
    function diff() { 
     git diff --no-index --color-words "[email protected]"; 
    } 
fi; 

Referenz: https://github.com/donnemartin/dev-setup/blob/master/.functions

+0

Funktioniert die Option "-q" auf diese Weise? – DimP

+0

ja; wie Mark Plotnick in einem Kommentar zu meiner Frage sagte, war es https://github.com/donnemartin/dev-setup, das diff neu definierte. –