Pracuję w środowisku roboczym tylko dla systemu Windows, używając programistów używających różnego rodzaju narzędzi do edycji plików. Używamy .git
wraz ze stosem atlasu do wersji naszego kodu. Podoba mi się prawie wszystko.Jak zmienić zachowanie statusu git wyświetlając zmodyfikowane pliki, które ostatecznie nie są zatwierdzone?
Niedawno zakończyłem walkę o długą i ciężką walkę, aby objąć głowę, w jaki sposób i dlaczego git interpretuje zakończenia linii i co robi core.autocrlf
. Zdecydowaliśmy się użyć core.autocrlf true
i wszystko jest prawie w porządku.
chciałbym wiedzieć, jak zmienić to zachowanie git status
:
- Mam plik z
CRLF
zakończeń linii. zmienić końca linii do
LF
$ git status On branch somebranch Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: Src/the_file_i_changed_to_LF.js
Ale potem ...
$ git commit -a warning: LF will be replaced by CRLF in Src/the_file_i_changed_to_LF.js. The file will have its original line endings in your working directory. On branch somebranch nothing to commit, working directory clean
do tego:
- Mam plik z
CRLF
zakończenia linii. zmienić końca linii do
LF
$ git status On branch somebranch nothing to commit, working directory clean
- które ma sens, ponieważ nic nie dostanie popełnione w każdym razie.
Czy to możliwe?
Uważam, że możliwy duplikat nie zawiera odpowiedzi, której szukam. Chciałbym podkreślić, że robię (myślę), że wiem, co robi moje ustawienie core.autocrlf true
i chcę zachować to w ten sposób. Interesuje mnie albo nie wykrywanie zmian w git status
, które i tak nie zostaną zatwierdzone, ani zrozumienie, dlaczego nie jest to możliwe.