2012-05-31 8 views
9

Ich benutze git/github mit Eclipse/EGit unter Windows. Etwas - nicht sicher, ob es git oder EGit ist - verändert meine Dateien, indem es Spiele mit Zeilenumbrüchen spielt.Wie bekomme ich git, um neue Zeilen in meinen Dateien zu ändern?

Abgesehen von dem Geheimnis, was eine Versionskontrolle macht, Dateien selbst zu ändern, wie konfiguriere ich diese Software so, dass sie niemals meine Dateien ändert?

+0

Git berührt Ihre Zeilenumbrüche nur, wenn Sie explizit danach gefragt haben. –

Antwort

6

Sie haben viele Möglichkeiten, je nach Betriebssystem:

http://help.github.com/line-endings/

Der Grund für das scheinbar bizarre Verhalten wird dort erklärt. Grundsätzlich wird der Code geteilt (Git und GitHub), aber das Betriebssystem kann anders sein. Da verschiedene OS Zeilenvorschübe anders behandeln, etwas ändern muss ...

+0

Ok, das sieht so aus, als ob es eine funktionierende Lösung wäre, aber es behandelt nicht das Problem eines Versionskontrollsystems mit der Arroganz, den Code zu ändern. Für alle seine Fehler hat SVN dieses Problem nicht. – ccleve

+0

Auch unterschiedliche Betriebssysteme behandeln Zeilenumbrüche nicht unterschiedlich. Unterschiedliche * Anwendungen * tun dies. Und wenn Sie irgendwelche modernen Programmiersprachen verwenden, Java, was auch immer, sie behandeln das CRLF-Problem gut. Git sollte rauskommen. – ccleve

+0

ok, naja, ich finde hier ein bisschen eine Rage user237815, aber dennoch denke ich, dass dieser Abschnitt auch gute Details gibt: http://en.wikipedia.org/wiki/Newline#Common_Problems –

9
git config --system core.autocrlf false 
git config --system core.whitespace cr-at-eol 

lassen Sie es nicht, etwas zu ändern oder problematischen CR Bytes am Ende zu berichten.