我正在使用git同步GitLab上的repo。
我有两个文件:
a.jade
和A.jade
然而,当我点击git pull时,我只得到了a.jade
。如果有两个文件的字母相同,但一个是小写,另一个是大写,那么似乎有问题。
我该怎么办?
我正在使用macOS 10.14.6
macOS上的默认文件系统保留大小写,但不区分大小写:也就是说,如果您创建了一个名为README
的文件,然后要求操作系统打开一个名称为readme
的文件,它会打开名称为README
的文件。
这意味着系统本身禁止a.jade
和A.jade
的存在:这两个名称代表一个文件,而不是两个单独的文件。Git无法克服这一系统限制,因此它只能提取这两个文件中的一个。要正确理解这一点,请参阅相关问题的答案。
如果您有权访问Linux系统,请在那里克隆GitLab存储库,重命名两个文件中的一个(并进行任何其他必要的更改(,提交并推送提交。然后可以在macOS系统上提取新的提交。或者,请参阅上面链接的答案,了解在macOS系统上创建区分大小写的磁盘映像的方法。
- 检查
A.jade
是否未列在.gitignore
文件中 - 尝试运行
git fetch --all
命令以从原点获取所有更新。在此之前,您可能希望使用git stash save
命令保存本地更新