In meinem Repository, wenn ichWarum ruft `git diff` kein externes Diff-Tool auf?
$ git diff some-file
oder
$ git difftool some-file
geben bekomme ich den in-Terminal diff-Display. Ich denke, das sollte nicht passieren, weil ich ein externes Diff-Tool eingerichtet haben, wie durch die Ausgabe von git config -l
gezeigt:
$ git config -l
user.name=blah blah
user.email=blah blah
http.sslverify=true
diff.external=/home/daniel/bin/git-diff <--This is the important line
push.default=simple
core.filemode=false
core.editor=gedit
alias.tree=log --all --graph --decorate=short --color --format=format:'%C(bold blue)%h%C(reset) %C(auto)%d%C(reset)
%C(black)[%cr]%C(reset) %x09%C(black)%an: %s %C(reset)'
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
core.ignorecase=true
remote.origin.url=https://[email protected]/git/pyle.git
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
branch.daniel.remote=origin
branch.daniel.merge=refs/heads/daniel
Die git-Diff-Datei in der Zeile sieht diff.external
verwiesen wie diese
#!/bin/bash
meld $2 $5
Warum ruft git diff
nicht melde auf?
bekomme ich das gleiche Verhalten, wenn ich die Dinge so einrichten, dass git config -l
die folgende Zeile hat:
diff.tool = meld
oder
diff.external = usr/bin/meld
Hinweis: Andere Repositorys auf meinem Rechner nicht über dieses Problem.
Verwandte, aber nicht gleichwertig, SO Fragen:
- What is the difference between
git diff
andgit difftool
? - Cannot make git diff use diff.external for external diff tool
Warum verwenden Sie das zweite und fünfte Argument? – merlin2011
@ merlin2011: Mein Verständnis ist, dass Git Diff sieben Argumente in das externe Diff-Tool übergibt und dass meld nur zwei von ihnen benötigt. – DanielSank