ich möchte git diff
nicht zeigen Stückliste Änderungen.
Solche Änderungen werden normalerweise als angezeigt <feff>
im diff:
-<feff>/*^M
+/*^M
Wie kann ich machen git diff
sich so verhalten?
Am besten mit einem Kommandozeilenparameter.
git --ignore-all-space
(aka git -w
) geht nicht. Ich bin auf Mac OS X, falls das wichtig ist.
Verwenden Sie den Git-Attributfilter
Eine mögliche Lösung wäre, einen BOM-Filter zu erstellen, wie zum Beispiel:
#!/bin/bash
sed '1s/^xEFxBBxBF//' "$1"
Speichern Sie es irgendwo in Ihrem Pfad (z. B removebom
) und ausführbar machen.
Dann müssen Sie den Filter in Git konfigurieren, indem Sie Folgendes ausführen:
$ git config diff.removebom.textconv removebom
und Hinzufügen eines Attributs für Dateien, an denen Sie interessiert sind (z. B. cpp), zu Ihrem Repository:
*.cpp diff=removebom
Als ein .gitattributes
Datei.
Mehr zum Thema finden Sie unter:
Oder entfernen Sie die Stückliste ein für alle Mal
… weil die Stückliste hoffentlich ein für alle Mal in Ihrem Projekt entfernt werden kann 🙂
.
Möchten
git diff -w
(--ignore-all-space
) arbeite besser?– VonC
1. Dez. 14 um 8:00
@VonC: Es funktioniert leider nicht.
– Nikolaus Raoul
1. Dezember 14 um 8:02 Uhr
In Ordnung. Dann weiß ich es nicht. Git scheint BOM nicht zu berühren oder zu ignorieren (wie in stackoverflow.com/a/6418611/6309 zu sehen ist)
– VonC
1. Dezember 14 um 8:04 Uhr