Смена папки с помощью Git bash в Windows

17

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

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

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

git config --global core.ignorecase false

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

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

    
задан xylar 29.01.2013 в 09:40
источник

2 ответа

39

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

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

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

    
ответ дан Michael Wild 29.01.2013 в 11:03
источник
0

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

git mv oldfolder newfolder

git add -u newfolder

git commit -m "changed the foldername whaddup"

Справка

    
ответ дан Duli 30.06.2014 в 13:52
источник