文件名大小写更改在git中被忽略。Windows下的Git。

6

我有一个ReactJS应用程序,我正在将所有文件名规范化为小写,以符合Nodejs最佳实践

然而,在Visual Studio Code中更改文件名时,这些更改被Git忽略,因此我无法提交我的更改。

我按照这里概述的步骤关闭了Windows上Git的默认文件大小写忽略,但是在确认已切换到关闭状态后,仍然没有任何变化--我的文件名更改发生了,但是Git不能捕捉到更改以允许我提交它们。 切换分支会重置我所做的文件名大写。

如何在Git中提交对文件名大小写的更改?

2个回答

8
问题出现在大小写不敏感的文件系统上。因此,对于文件系统而言,myfile.js和myFile.js实际上是同一个文件。
为了解决这个问题,您需要使用不同的文件名,提交它,然后再次重命名,就像这样:
git mv myFile.js temp-myfile.js
git commit -am "Temp file rename"

跟随着
git mv temp-myfile.js myfile.js
git commit -am "Renamed to final destination

这应该能解决问题。

5
如果你执行git mv FileName fileNameTemp,然后再执行git mv fileNameTemp fileName就可以解决问题,而不需要提交。

3
我遇到了一个错误:"未在版本控制中,源文件为src/app.js,目标文件为src/AppTemp.js"。 - TheFastCat
1
尝试执行以下命令:mv FileName fileNameTemp && mv fileNameTemp fileName && git add fileName - Matthew Barbara
mv FileName fileNameTemp && mv fileNameTemp fileName && git add fileName 不起作用。 - Alexey Sh.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接