就我而言,事实证明,这个问题与我将存储库中的许多文件从“CamelCase”重命名为“小写”这一事实有关,包括我的项目文件和文件夹。这一定是在某个地方被不恰当地跟踪了。
OS X 默认使用不区分大小写的文件系统,而 git 在内部是区分大小写的,我相信问题与此有关。
这些是我用来解决此问题的步骤。如果您认为您的问题可能是由于更改了文件名的大小写,这也可能对您有所帮助。
- 转到存储库的根目录,然后使用“ls -la”(也可以查看所有隐藏文件)和“rm”/“rm -rf”命令从其中删除除 .git 文件夹之外的所有内容。
- 执行“git reset --hard”以取回所有文件。您现在可能会看到文件名的大小写已更改。就我而言,在我的工作副本的根目录中,“myapp.xcodeproj”和“myapp”(包含所有代码文件的文件夹)已更改为“MyApp.xcodeproj”和“MyApp”(文件夹)。我以为我已经把它改成了小写,但显然,这并没有被 git 正确跟踪。
- 现在,将您的文件重命名为不相关的名称。例如,我将“MyApp.xcodeproj”重命名为“foo.xcodeproj”,将“MyApp”重命名为“foo”。
- 然后执行“git add --all”
- 现在,将您的文件重命名为您想要的名称。我将“foo.xcodeproj”重命名为“myapp.xcodeproj”,将“foo”重命名为“myapp”,这就是我希望它开始的方式(以及我认为我已经完成的方式)。
- 再做一次“git add --all”。
- 犯罪。
现在你的生活应该会更好,Xcode 应该表现良好,因为 git 现在看到的文件与 Xcode 项目完全相同(具有完全相同的大小写)。