DiT Reimame Directory на другой случай одинакового имени показывает, что содержащие файлы как модифицированные всегда
Вопрос
После того, как Directory TestDirectory был переименован в нижний регистр (testDirectory), все это файлы (aThtml и b.html) отображаются как модифицированный и даже сброс Git --hard не сбрасывает рабочее дерево.
Git всегда говорит:
# modified: TestDirectory/a.html
# modified: TestDirectory/b.html
Ничто не работает для сброса рабочего дерева в немодифицированное состояние, ни одна из следующих команд поможет:
git reset --hard
git checkout -- TestDirectory/a.html
Я не понимаю, почему это происходит и что я могу сделать. Это Git Bug?
Переименование не было добавлено мне, но другой пользователь Git.
Git версия 1.6.4
Я бегаю Mac OS X 10.6
Решение
После игры около часа мое решение было удаление TESTDirectore / a.html и testdirectory / b.html вручную - после того, как Git сообщил их как «удален» (я не хочу удалять их на самом деле), но это дало мне возможность делать Git Pull и получить изменения, когда проблема была зафиксирована другим пользователем.
В ближайшие шаги:
- Удалить файлы testdirectory / a.html и testdirectory / b.html
- git pull.
ПРИМЕЧАНИЕ. Ранее GIT Pull не может быть сделано, потому что ошибка конфликта слияния.
Я не понял, что случится, но это решило мое дело. На мой взгляд, Git по-прежнему довольно сложно, как Perl, и команды в основном отражают внутренние внутренние гигиены, а не намерения пользователей :-)
Другие советы
Вы можете проверить, если заканчивается ли строки Git Rewrode (GIT Diff, отображаемый файл, замененный сам по себе, только с разными линиями строки). Когда это так, вы должны посмотреть на Какая лучшая CRLF (возвращение перевозки, канализация), обработающая стратегию с GIT?.