Подтвердить что ты не робот

Изменение папки с папкой через Git bash в Windows

Мне нужно изменить случай папок и файлов. Первое, что я попробовал, - переименование папок, но Git не получил изменений. Поэтому я попытался использовать git mv -f controller Controller, но он говорит:

fatal: renaming 'application/classes/controller failed: Permission denied

Я попытался установить глобальный флаг ignorecase:

git config --global core.ignorecase false

Но это все еще не работает. Некоторые люди предложили переместить папку из репо, удалить, а затем повторно добавить, но будет ли это изменение забираться, когда другие люди вытаскивают репо? Могу ли я попробовать что-нибудь еще?

Изменить: он работает с файлами, но не с папками.

4b9b3361

Ответ 1

Вкратце комментариев, вам придется переименовать каталог через промежуточное временное имя. Например.

git mv controller Controller-tmp
git mv Controller-tmp Controller

Я думаю, что это связано с тем, что реализация MinGW rename(2) не поддерживает эту операцию. См. Этот поток, документы MSDN в реализации CRT rename и теги MoveFileEx.

Ответ 2

Обязательно добавьте изменения в индекс после переименования папки с промежуточной папкой, как показано ниже.

git mv oldfolder newfolder

git add -u newfolder

git commit -m "changed the foldername whaddup"

Ссылка