我需要改变文件夹和文件的情况。 我尝试的第一件事是重命名文件夹,但Git没有拿起更改。 所以我尝试使用git mv -f controller Controller
但它说:
fatal: renaming 'application/classes/controller failed: Permission denied
我曾尝试设置全局ignorecase标志:
git config --global core.ignorecase false
但它仍然不起作用。 有人build议将文件夹移出回购,删除,然后重新添加,但当其他人拉回购时,这个变化会被拿起来吗? 还有什么我可以尝试?
编辑:它适用于文件,但不是文件夹。
总结评论,你必须通过中间临时名称重命名目录。 例如
git mv controller Controller-tmp git mv Controller-tmp Controller
我认为这与MinGW执行rename(2)
不支持这个操作有关。 看到这个线程 ,CRT rename
实现和MoveFileEx
函数的MSDN文档。
确保在重命名带有中间文件夹的文件夹后,将更改添加到索引中,如下所示。
git mv oldfolder newfolder git add -u newfolder git commit -m "changed the foldername whaddup"
参考