Ich glaube E200012 bedeutet, dass der zugrunde liegende Prozess (Meld) mit einem Exit-Code ungleich Null beendet wird. Viele Diff-Tools zeigen das Ergebnis der Diff-Operation an (0 = kein Unterschied 1 = Unterschiede usw.).
Obwohl meine Version von Meld nicht scheint, nicht-Null-Exit-Codes zu verwenden, weiß ich, dass colordiff, SVN während eines Verzeichnis-Crawling "svn diff" wie in Ihrem Beispiel oben anhält. Probieren Sie es in einer Datei aus, die keine Änderungen zum Testen enthält.
Eine gute Lösung ist, Ihren eigenen diff Befehl zu machen, sagen wir, Sie nennen es meld_svn:
#!/bin/bash
meld "$6" "$7"
exit 0
Also, was wir tun, ist Codes Ausgang des meld zu ignorieren, und Aussteigen mit unseren eigenen (die gewonnen Stop SVN). Die Anführungszeichen um die Argumente bedeuten, dass Dateinamen mit Leerzeichen das Skript nicht beschädigen.
Machen Sie es ausführbar, dann bearbeiten Sie Ihre ~ /. Subversion/Config und setzen Sie die Diff-cmd auf "Meld_svn". Das funktioniert gut für colordiff, sollte dein Problem mit meld beheben, wenn meld tatsächlich mit Nicht-Null-exit-codes beendet wird.
Ich hoffe, dass hilft.
Versuchen meld auf zwei beliebige Dateien ausgeführt werden. Funktioniert es? –
yeah ... es funktioniert ... auch wenn ich Inhalte in einigen Dateien ohne commit ändere, zeigt meld diese Unterschiede durch Ausführen von "Meld.". Aber der Vergleich verschiedener Revisionen funktioniert nicht –
SVN übergibt nicht nur an das Diff-Tool 2 Pfade zu vergleichen, sondern auch andere Optionen wie Beschriftungen (Sie können alle Optionen sehen, indem Sie an --cmd ein Skript übergeben, das seine Befehlszeile ausgibt). Vielleicht akzeptiert meld diese zusätzlichen Optionen nicht. Ich weiß wenig über eine Verschmelzung, nur eine Idee. –