.xcodeproj文件丢失,分支合并后无法打开

时间:2013-11-20 20:01:56

标签: xcode git merge

我刚刚将其中一个功能分支合并到了develop分支中,从那时起,当我打开Xcode时,.xcodeproj文件似乎丢失了,项目导航器中的所有文件也都消失了。点击.xcodeproj文件,我收到以下提醒:The file couldn’t be opened.

虽然我将.xcodeproj添加到所有分支的.gitignore文件中。你遇到过这样的情况吗?

4 个答案:

答案 0 :(得分:17)

这可能是由未解决的合并冲突引起的。在这种情况下,XML结构被破坏,因此Xcode无法读取它。

在这种情况下,你可以试试这个:

  • 在Finder中右键单击.xcodeproj并选择“显示包内容”。

  • 在文本编辑器中打开project.pbxproj(这是实际的项目文件,必须是有效的XML)

  • 检查合并冲突(查找<<<<<<<>>>>>>>)并手动解决它们(小心!),并确保文件具有有效的XML格式

  • 保存文件

  • 再次尝试使用Xcode打开.xcodeproj

可能有更好的方法来解决冲突,但这对我有用了很多次。 您也可以查看以下问题:How to resolve merge conflicts in Git?

答案 1 :(得分:0)

基本上,在项目中,如果有多个开发人员正在工作,并且一个开发人员添加了一些文件(可能是.h,.m或任何.png),并在源代码管理中提交包括.xcodeProj在内的项目。

但是由于某些原因,开发人员从项目中删除了文件或图像,并且还从项目中删除了这些文件或图像的使用,但忘记了提交.xcodeProj项目文件。

如果另一个开发人员从源代码​​管理系统中检出并运行应用程序,他将收到错误消息错误:路径文件/映像名称:没有这样的文件或目录。 因此,为了避免错误在我们成功运行应用程序,我们可以按照以下步骤进行操作

  1. 右键单击projectname.xcodeproj并单击showpackagecontent。
  2. 我们将获得另一个文件project.pbxproj。
  3. 在文本编辑中打开该文件,并删除已提及文件或图像的行。
  4. 保存文件。 最后运行它将起作用的应用程序。

答案 2 :(得分:0)

我知道这是一个旧线程,但是我今天遇到了这个问题。最初,我对这个答案不屑一顾,因为我在项目中没有多个用户,但是我:

  1. 右键单击.xcodeproj,然后选择“显示软件包内容”。
  2. 从这里,我注意到我无法打开project.pbxproj。我“没有必要的权限”,所以我...
  3. 将文件的权限更改为每个人都可以读取/写入,然后我就可以在Xcode中打开文件而没有问题了。

不确定这对我有何帮助,但万一有人看到它并遇到类似的问题,这不是合并冲突。

答案 3 :(得分:0)

面对上述方法对我不起作用的事实,我的原因是:合并两个文件时,project.pbxproj文件内部结构重叠并被破坏,我所做的只是再次彻底扫描冲突的站点对于正确的语法 {some code} ,可用性 ';'等