git проблема с окончанием строки только с одним клоном репо

Хорошо, у меня есть репозиторий git. Все клоны работают с одной и той же версией git (почти последней).

  • «происхождение» находится на GitHub.com
  • клоны на разных серверах CentOS, проблем с окончанием строк не возникало
  • клонировать в моей системе Mac OS (используя git через строку cmd и / или графический интерфейс Tower), также нет проблем с окончанием строки.

НО

  • другой клон на сервере Ubuntu, git-diff думает, что весь файл изменился, когда я вношу какие-либо изменения в файл

Итак, что я должен сделать с git-config на этом компьютере с Ubuntu, чтобы решить проблему? Я читал различные статьи (и документы git-config) по этому вопросу, но не совсем понятно, что является решающим исправлением одним нажатием..?


person Jonny Nott    schedule 05.04.2011    source источник


Ответы (1)


arrow_upward
0
arrow_downward

Возможно, вам нужно отключить core.autocrlf.

person rlc    schedule 05.04.2011
comment
Значит, core.autocrlf включен по умолчанию? .. потому что я не включил его. Кроме того, как только я получу правильную конфигурацию crlf, мне нужно будет повторно проверить всю мою рабочую копию с помощью «git checkout HEAD», прежде чем вносить дальнейшие изменения в файлы? - person Jonny Nott; 05.04.2011
comment
Я не знаю, включен ли он по умолчанию в Ubuntu, но единственная причина, по которой я вижу, почему crlf изменится, заключается в том, что он включен. Что касается того, нужно ли вам снова выписываться, я думаю, что вы это сделаете, но git status вам об этом скажет. - person rlc; 05.04.2011
comment
Хорошо, у меня нет никаких директив git-config, установленных ни глобально, ни для самого этого репо. 'список конфигураций git' ничего не возвращает. Так что это должно быть связано с тем, как ОС работает с окончаниями строк. Любые идеи, как обойти это? Кстати, для редактирования файлов я открываю их через FTP и редактирую с помощью TextMate на Mac, а затем сохраняю обратно через FTP. - person Jonny Nott; 05.04.2011
comment
о, этот бит FTP может быть важной деталью: в каких-либо файлах, которые вы не загружаете и не загружаете повторно через FTP, меняется каждая строка? Вы передаете файлы в двоичном (образном) режиме? - person rlc; 05.04.2011
comment
Я установил TextMate с предпочтением по умолчанию использовать LF только для концов строк, даже в существующих файлах, а не только в новых, которые он создает. Возможно, мне нужно удалить предпочтение «даже для существующих файлов»?! - person Jonny Nott; 05.04.2011
comment
Вы проверяли, были ли проблемы только с теми файлами, которые вы загрузили и повторно загрузили по FTP? Это, по крайней мере, скажет вам, смотрите ли вы в правильном направлении. - person rlc; 05.04.2011
comment
Вы правы, загвоздка либо с FTP, либо с TextMate. Если я редактирую файл из командной строки (с пико) на коробке, не беспокойтесь. Но редактирование в TextMate через FTP изменяет окончания строк, даже если я снимаю флажок, чтобы применить схему окончания строк TM к существующим файлам. - person Jonny Nott; 05.04.2011
comment
Вопрос в том, могу ли я установить некоторую конфигурацию в git, чтобы git не заботился об измененных окончаниях строк? - person Jonny Nott; 05.04.2011
comment
Ага, кажется, я решил проблему, сделав наоборот - включив core.autocrlf ;) 'git config --global core.autocrlf true' - person Jonny Nott; 05.04.2011