Как заставить git игнорировать изменения в case?

StackOverflow https://stackoverflow.com/questions/52950

  •  09-06-2019
  •  | 
  •  

Вопрос

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

до того, как: File.h

после: file.h

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

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

Это было полезно?

Решение

Начиная с версии 1.5.6, существует ignorecase опция доступна в [core] раздел из .git/config

например ,Добавить ignorecase = true

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

git config core.ignorecase true

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

git config --global core.ignorecase true

Другие советы

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

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

git mv --cached name.txt NAME.TXT

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

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

Подробная информация здесь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top