AbGIT beschwert sich über zufällig geänderten Dateien, wenn Zweige
git status
# On branch master
nothing to commit, working directory clean
Schalten und dann zu einem anderen Zweig Schalt
git checkout somebranch
nach zu einem neuen Zweig Schalten und ein git status
git laufen wird manchmal über zufällig klagen geänderte Dateien Wenn ich die Dateien mit git diff
diff wird es die ganzen Dateien angezeigt wird zuerst mit allen Linien entfernt werden und dann wieder hinzugefügt
- someline
- someotherline
+ someline
+ someotherline
Dann wird ein git diff --ignore-space-at-eol .
läuft keine Dateien zeigen verän führt mich zu glauben, dass Linie Fragen endet irgendwo in dem Git Repo, denn wenn ich einen binären Vergleich der Dateien mit meinem Merge-Tool der Wahl (Beyond Compare) es mir sagt, dass die Dateien binär gleich sind, obwohl Git beschwert sich über sie anders, Hölle habe ich sogar einen Hex vergleichen und sie waren tatsächlich identisch, also warum sieht git sie als verändert an?
Das Repository wurde auf alte SVN-Repository, das durch Befolgen der Github Richtlinien https://help.github.com/articles/importing-from-subversion und danach umgewandelt haben wir unser .gitattributes zur Lösung Datei, die wie folgt aussieht:
# .gitattributes
# Auto detect text files and perform LF normalization
* text=auto
# Custom for Visual Studio
*.cs diff=csharp
*.sln merge=union
*.csproj merge=union
*.vbproj merge=union
*.fsproj merge=union
*.dbproj merge=union
# Standard to msysgit
*.doc diff=astextplain
*.DOC diff=astextplain
*.docx diff=astextplain
*.DOCX diff=astextplain
*.dot diff=astextplain
*.DOT diff=astextplain
*.pdf diff=astextplain
*.PDF diff=astextplain
*.rtf diff=astextplain
*.RTF diff=astextplain
Nach dem Hinzufügen der Datei .gitattributes wir folgten auch githubs Anleitung zur Befestigung Zeilenenden von https://help.github.com/articles/dealing-with-line-endings
jeder im Team auf Windows läuft, jeder im Team ist mit core.autocrlf = true und jeder ist mit mindestens
git --version
git version 1.8.3.msysgit.0
Was könnte hier falsch sein? Die Dateien, über die sich git beschwert, sind völlig zufällig und es passiert für jeden im gesamten Team. Es ist auch unmöglich, die Dateien, über die sie sich beschweren, mit einer git-checkout-Datei rückgängig zu machen, die sich nicht wirklich geändert hat.
'.gitattributes' sollte überschreiben, was auch immer die Entwickler in' core.autocrlf' gesetzt haben, deshalb verwenden wir .gitattributes an erster Stelle. Wir haben die Korrekturen, die Sie vorgeschlagen haben, bereits durchgeführt, indem Sie dem Link zu github i in der Frage gefolgt sind, aber wir sehen immer noch die Probleme. –