一、
最近为了规范项目的目录,把项目的文件名称全都改成了小写。本地修改是没什么问题的,可提交到远程仓库后,问题就出来了:
如图所示,出现了文件重复的情况,也就是远程仓库的文件并没有被修改:
网上查了很多信息,试了整整一天,不同的解决方案,都没能解决我的问题。
二、
皇天不负有心(码)农,我还是找到了方案。
解决方案如下:
- 用
git
执行下列命令:
$ git config core.ignorecase false
解释:设置本地git
环境识别大小写
修改文件夹名称,全部改为小写(F2重命名修改即可),然后
push
到远程仓库。
这时如我前面的图片所示,仓库上就会有重名的文件(文件夹)了。删除多余的文件,我这里就是把
Footer
,Header
,Menu
等给删掉。
a). 执行命令,删除远程文件(删除文件夹里面的文件,文件夹也会消失)
# 删除Header文件夹下的所有文件
$ git rm --cached src/components/Header -r
# 删除Footer文件夹下的所有文件
$ git rm --cached src/components/Footer -r
# 删除Menu文件夹下的所有文件
$ git rm --cached src/components/Menu -r
如果显示如下,说明操作成功:
rm 'src/components/Menu/Header.js'
rm 'src/components/Menu/Header.less'
...
b). 同步,提交到远程仓库
# 添加在缓存
$ git add .
# 提交到本地
$ git commit -m'rm files'
# 提交到远程仓库 origin
& git push origin master
这时,如果上面的步骤都顺利,那在远程仓库刷新一下,惊喜就出来了:
三、
如果一切顺利,那恭喜你。
如有问题,请留言交流。