当我克隆存储库时,会出现以下警告:
...
warning: the following paths have collided (e.g. case-sensitive paths
on a case-insensitive filesystem) and only one from the same
colliding group is in the working tree:
'components/User/index.js'
'components/user/index.js'
我一直在阅读,这可能是一个窗口问题,因为在文件夹路径中没有启用区分大小写的功能。我也尝试过使用git config --global core.ignorecase false
,但它一直失败。
所有不区分大小写的文件系统(如Windows 10和macOS)都面临这个问题.
有人也看到这个问题吗?
发布于 2020-10-21 14:56:34
定义
john.jpg
和JOHN.jpg
视为两个不同的文件,这是允许的。john.jpg
和JOHN.jpg
视为一个文件,这是不允许的。问题
'components/User/index.js'
'components/user/index.js'
这里的问题是,不允许User
和user
同时在不区分大小写的文件系统(如果使用Windows 10的话是NTFS )的components
目录中共存。
windows操作系统的解决方案
如果您最近克隆了回购,但还没有做任何工作,我建议您重新开始。因此,删除克隆,然后对您打算克隆的目录启用区分大小写的方法,然后重新克隆它。在克隆过程之前这样做的好处是,作为克隆过程的一部分由git创建的所有目录都将区分大小写,并且git将不再提供此警告。另外,它还能让你收拾残局。
C:\Users\Juan\Desktop
。您不需要cd
到这个目录来执行下一步,只需知道目标目录是什么。fsutil.exe file SetCaseSensitiveInfo "C:\Users\Juan\Desktop" enable
https://github.com/torvalds/linux.git
。命令:git clone https://github.com/torvalds/linux.git
git rm
以及移动或复制,请使用git mv
。fsutil.exe file SetCaseSensitiveInfo "C:\Users\Juan\Desktop" disable
现在你可以回去做这个项目了。
来源:窗口中心
macOS的解决方案
在macOS上,您必须将卷重新格式化为大小写不敏感/敏感的卷,或者创建一个全新的卷。详细信息
反射
您可能会遇到这个问题,因为您克隆了一个在运行Linux或Mac的计算机上创建的回购程序,也许它是由其他人创建的,而不是由您个人创建的。这里的教训是要始终与你命名事物的方式保持一致,这适用于每个参与项目的人。这是否则可能发生的情况的一个例子。
发布于 2020-08-19 15:40:51
使用Windows 10的能力,在每个目录的基础上启用大小写敏感性。
另外,让我们将文件夹挂载为区分大小写的文件夹。
有关详细信息,请参阅:
发布于 2021-12-18 07:58:46
在macOS上更改整个文件系统的过程非常耗时和危险。可以使用磁盘映像(如解释的这里 )来创建具有特定区分大小写(即“日志记录”)文件系统的虚拟容器:
如果你喜欢使用终端:
hdiutil create -type SPARSE -fs 'Case-sensitive APFS' -volname <volumeName> <fileName>
创建图像。hdiutil attach <fileName>.sparseimage
命令将图像挂载到/Volumes/<volumeName>
中,您可以将其装入cd
中。diskutil unmount /Volumes/<volumeName>
卸载映像即可。你可以找到更多的信息,这里。
https://stackoverflow.com/questions/63468346
复制相似问题