2013-07-10 2 views
-1

У меня есть приложение RCP Eclipse, и git теперь действует очень странно. Каждый раз, когда мы меняем какую-либо строку в классе или любом файле, git обвиняет, что весь файл был изменен.
Посмотрите этот текст: https://gist.github.com/luizkowalski/5968143
Единственная вещь, которая была действительно изменена, была следующая: Bundle-Version: 2.6.13 - Bundle-Version: 2.6.14.
Такое поведение началось несколько дней назад. Мы не обновляем git на наших машинах. Этот diff был сгенерирован GitHubgit обвиняет, что весь файл был изменен

+0

Это вызывает проблемы? – Daenyth

+0

Иногда разработчик меняет только один метод на класс, а другой разработчик меняет другой метод, и это поведение делает невозможным сравнение изменений и делает слияние –

+7

Поскольку он буквально затрагивает все строки вашего файла, я подозреваю, что кто-то возился с [настройки конца строки] (https://help.github.com/articles/dealing-with-line-endings) – fvu

ответ

2

Это не новая функция или ошибка. Это результат чего-то, что вы, ребята, сделали бессознательно. Помните, что Git отслеживает все изменения в двоичных данных вашего репо. Это может привести к нескольким видам изменений. Кто-нибудь скопировал весь текст этого документа из одного редактора в другой, заменив оригинал копией (возможно, в разных операционных системах)? Изменен ли персонаж, который ваш проект использует в последнее время? Другие вещи могут также вызвать этот тип обнаружения изменений, но важно понимать, что это не ошибка для части Git.

+0

Я думал то же самое о кодировке, и я дважды проверили конфигурацию в рабочей области на всех машинах. Они все одинаковые (UTF-8). Я почти уверен, что никто не копировал весь текст из одного редактора в другой. Что еще может быть? –

+2

Это не просто копирование, а открытие и сохранение из другого редактора. Проверьте символ «конец строки». Различные редакторы могут использовать разные CRLF. – Sailesh

+0

@Sailesh Делает хороший момент, конец маркеров файлов может быть проблемой. Не забывайте, что при переходе из окон в unix назначаются разные концы строк. Это может быть и ваша проблема. – usumoio

Смежные вопросы