Ok, więc dodałem plik .gitattributes
z liniami jak tenJak wymusić na Git wymeldowanie w gałęzi głównej i usunąć powroty karetki po tym, jak normalizuję pliki przy użyciu atrybutu "tekst"?
*.css text
*.js text
etc...
Następnie postępujesz zgodnie z instrukcjami na http://git-scm.com/docs/gitattributes#_checking-out_and_checking-in
$ rm .git/index # Remove the index to force Git to
$ git reset # re-scan the working directory
$ git status # Show files that will be normalized
$ git add -u
$ git add .gitattributes
$ git commit -m "Introduce end-of-line normalization"
Ale teraz moja kopia robocza nadal ma powrotu karetki! Mam nieśledzone pliki, które chciałbym zachować. Jak mam ponownie zamówić git w gałęzi master przy użyciu znormalizowanych plików?
Wiem, że pliki są znormalizowane w repozytorium, ponieważ kiedy klonuję repo, mam wszystkie pliki bez powrotu karetki.
Dzięki za obejście tego problemu, ale jest to rażący problem w git, że "checkout -f" tak naprawdę nie wymusza ponownej zapłaty. Innym problemem jest usunięcie najpierw wszystkich plików kopii roboczej (tj. Wszystkiego oprócz katalogu .git). – pfalcon
Ah, tak, dzięki za to! Słysząc to, domyślam się, że możemy po prostu usunąć interesujące pliki i uruchomić kasę. Dla mnie był tylko jeden plik, który próbowałem poprawić. Ale oczywiście mogą to być wszystkie pliki, setki lub tysiące. – Jason
To nie powiedzie się na git 1.8.3 (mac) z: error: pathspec "HEAD ^" nie pasuje do żadnego pliku (ów) znanego z git. – dval