Git 无法识别 xcode 项目中添加的 .xcscheme 文件

Git not able to recognise addition of .xcscheme files in xcode project

在我的xcode项目中添加了一个对应于测试目标的新方案。创建的新 xcscheme 文件未反映在 git 中。同时执行 git status 显示 nothing to commit, working directory clean

尝试通过终端添加它 git 添加 .xcscheme

以下路径被您的 .gitignore 文件之一忽略:MyProject.xcodeproj/xcshareddata/xcschemes/MyProjectTests.xcscheme 如果你真的想添加它们,请使用 -f

在验证我的 .gitignore 文件时,它完全是空白的。

我浏览了要求共享方案的帖子,但没有帮助。通过这个线程, 。但是对我来说,在 .xcodeproj 文件或 xcschemes 目录中没有 .git 或 .gitignore 文件。

如何删除这些限制,以便我可以将新的 xcscheme 文件添加到存储库中,或者是否有任何其他设置需要修改?

gitignore 设置有多个地方。全部检查。

http://git-scm.com/docs/gitignore

等文档

即使这个问题已经得到解答...对我来说是

确保您的方案设置为 "Shared"。方案下拉菜单 -> 管理方案 -> 勾选 "Shared" 方框以选择你要提交的方案

希望这对某人有所帮助:)

您需要进入 "Manage Schemes" 视图并勾选 'Shared' 复选框

'Product' menu -> Scheme -> Manage Schemes

这将创建共享方案文件。接下来,您需要确保文件未被 git 忽略。

您需要从忽略文件中删除 'xcshareddata/xcschemes' 并将它们添加到存储库

或者只使用

'git add -f MyProject.xcodeproj/xcshareddata/xcschemes'

有一件事我注意到,不知何故 .xcscheme 文件被添加到全局 git 忽略。 按照其他人的建议,我接下来做了:

  1. 为了找到全局 git 忽略文件的路径,我使用了这个 git config --get core.excludesfile
  2. 然后我打开它并检查了任何.xcscheme
  3. 我删除了 .xcscheme 限制(在我的例子中是文件名 + 扩展名添加到全局 git 忽略 ProjectName.xcscheme)
  4. 然后我通过终端导航到项目文件夹并检查 git status
  5. 现在我看到我有一个 .xcscheme 未跟踪文件。我已经通过 git 添加功能添加了它并提交了
  6. 但是当我切换到另一个分支时,我仍然无法将 .xcscheme 应用到该分支。
  7. 解决方案是打开“管理方案”并取消select,然后select我的方案旁边的“共享”复选标记。
  8. 现在在 git status 之后我可以看到 .xcscheme 未跟踪文件并且可以将它提交到新分支。

只是我使用上面答案的经验。谢谢大家!

对我来说是不同的,方案没有添加到 .gitignore 并且我的所有方案都已经在“管理方案”下作为共享勾选。但是Git没有认出他们。

有效的解决方案是取消选中所有方案的共享并再次选中它们。

'Product' Menu -> Scheme -> Manage Schemes -> Uncheck Shared -> Check Shared