2012-05-29 2 views
4

Git noob здесь. Нелегко понять, почему git показывает, что некоторые файлы изменены, а Eclipse EGit - нет.Git показывает файлы изменены, но EGit не

Когда я использую EGit в Eclipse и просматриваю проект, он не показывает, что файлы не изменены. Рядом с каждым файлом нет каретки. Когда я использую Git для Windows или перехожу в командную строку и набираю «git status», он показывает, что все файлы были изменены. Когда я набираю «git diff», он показывает две разные версии файла: сначала красный, затем зеленый, и, похоже, есть некоторые пробелы, но я не могу быть уверен, и я не могу понять, как изменилось пробелы в каждом файле проекта. (Что-то здесь не складывается.) «Git diff -w» ничего не возвращает. «git config --global apply.whitespace nowarn» ничего не делает.

У меня может возникнуть основная концептуальная проблема с git.

В любом случае, почему EGit и командная строка git показывают разные результаты?

ответ

1

Получается, что git играет в игры с символами новой строки. Это необъяснимо. Итог: EGit и командная строка git не могут использоваться в окне Windows. Чтобы добиться согласованности, вы должны использовать тот или иной.

1

EGit понимает понятие Производных ресурсов (например, используется для сгенерированных файлов .class в JDT). Другими словами, файлы в производных ресурсах по умолчанию в EGit не добавляются в контроль версий. Однако клиент git командной строки не знает эти маркеры, но полагается на файлы .gitignore, чтобы избежать проверки в сгенерированных файлах.

Чтобы проверить, не найдены ли ваши проблемные файлы, откройте диалоговое окно свойств файла (щелкните правой кнопкой мыши на файле в проводнике и выберите «Свойства ...»), а на странице «Ресурсы» установите флажок «Производить» (это должно быть вокруг середины диалога).

+0

Нет ... измененные файлы имеют расширение .java. Я уже добавил/target, с файлами .class, в .gitignore. – ccleve

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