Frage

Ich habe eine Git-Repository (ursprünglich CVS, dann SVN, jetzt Git) ein Rails-Projekt enthält, die für eine Weile jetzt unter Linux eingesetzt wurde. Alles scheint zu laufen gut.

Nun, da ich zu git umgewandelt habe, sehe ich, dass viele meiner Dateien im Repository enthalten

War es hilfreich?

Lösung

Wenn es in Ordnung ist für Sie Ihre Repository Geschichte neu zu schreiben (siehe Probleme mit Umschreiben der Geschichte ) Sie git filter-branch zu konvertieren CRLF LF verwenden:

git filter-branch --tree-filter 'find . -path './.git' -prune -o -type f -exec dos2unix \{} \;' HEAD

Beachten Sie, wenn Sie binäre Dateien im Repository haben, werden Sie den Befehl find auszuschließen läutern müssen.

Andere Tipps

Kommentar davitenio Antwort und Daniel Beardsley Kommentar; Ich glaube, Sie dieses kleine Programm als Wrapper um dos2unix verwenden:

#!/bin/sh
for f in $@; do
    if [ $(file -b -n -i -m /dev/null $f | grep -c "text") -gt 0 ]; then
        dos2unix $f
    fi
done

obwohl es wahrscheinlich noch einige Ecke Fall, dass fehlschlagen wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top