使用git的时候,有时我们需要修改文件名的大小写,但是默认情况下,git是会忽略文件名大小写的,如果我们要修改文件名称大小写,可以使用试下方法
第一种,修改git配置(不推荐)
git config core.ignorecase false
设置之后,就可以修改文件名大小写了,而且git也是可以识别的,但是为什么会说不推荐呢,因为这样修改大小写之后,如果切换分支,会出现下图的情况,我至今没有好的方法解决
从图中可以看到,切换分支的时候告诉我们有未被追踪的文件,这个文件正好是我们修改过大小写的文件,但是我们使用 git status
命令查看的时候,并没有看到有任何改动,而且此分支上修改的内容我很确定是已经提交了,因为在当前分支下的这个文件如下图所示
我看网上有人的推荐是改完大小写并提交后修改配置忽略大小写,切换分支后再次修改配置,太麻烦了,所以我还是比较推荐下一种方式。
第二种,两次修改(推荐)
在这种情况下,需要设置git忽略文件大小写,如果没有修改过,git默认就是忽略文件大小写的,如果修改过,或者自己想再次设置,可以使用以下命令进行设置
git config core.ignorecase true
可以看下面的图
首先,我们将 index.js
这个文件修改为 aindex.js
,然后使用 git add .
将其贮存。
接着我们将其修改为 Index.js
,再次使用 git add .
进行贮存,可以通过 git status
看到这个文件名的变化,是从 index.js
重命名为 Index.js
,中间那个 aindex.js
只是用来桥接的,并不会产生真正的提交记录,只有最后那个会产生一条 rename
的记录。
并且通过这种方式修改的文件名,切换分支也不会出现之前那种提示了。
总结
虽然第二种方式操作时会略显繁琐,但是在后续的切换分支等方面,会省心很多,所以我比较推荐这种方式,而且这也是我正在使用的方式。
感兴趣的可以去我的博客原文踩踩哦