Как заставить git игнорировать изменения в случае? - PullRequest
88 голосов
/ 10 сентября 2008

Я не слишком уверен, что здесь происходит, но иногда определенный файл в моем хранилище меняет регистр своего имени. например,:.

до: File.h

после: file.h

Мне действительно все равно, почему это происходит, но это заставляет git думать, что это новый файл, а затем мне нужно пойти и изменить имя файла обратно. Вы можете просто заставить git игнорировать изменения регистра?

[править] Я подозреваю, что Visual Studio делает что-то странное с этим конкретным файлом, потому что это происходит чаще всего, когда я открываю и сохраняю его после изменений. Однако я не могу исправить ошибки в VS, но я надеюсь, что git должен быть немного более способным.

Ответы [ 4 ]

152 голосов
/ 10 сентября 2008

Начиная с версии 1.5.6, в разделе [core] в .git/config

доступна опция ignorecase.

например. добавить ignorecase = true

Чтобы изменить его только для одного репо, из этой папки запустите:

git config core.ignorecase true

Чтобы изменить его глобально:

git config --global core.ignorecase true
11 голосов
/ 11 февраля 2009

В git версии 1.6.1.9 для Windows я обнаружил, что «ignorecase = true» в конфигурации уже был установлен по умолчанию.

9 голосов
/ 10 июля 2016

С помощью этой команды вы можете заставить git переименовать файл только в регистре:

git mv --cached name.txt NAME.TXT

Обратите внимание, что это не меняет регистр файла в вашей извлеченной копии в разделе Windows, но git записывает изменение корпуса, и вы можете зафиксировать это изменение. Будущие заказы будут использовать новый корпус.

4 голосов
/ 11 ноября 2011

Ситуация, описанная в вопросе, теперь повторяется с Mac OS X, версия git> = 1.7.4 (я думаю). Суть в том, чтобы установить ignorecase = false и переименовать файлы в нижнем регистре (этот git изменился таким образом, а не Visual Studio) обратно в их UsualCase вручную (то есть «mv myname MyName»).

Подробнее здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...