【问题标题】:.xcodeproj file is lost, cannot be opened after a branch merge.xcodeproj 文件丢失,分支合并后无法打开
【发布时间】:2013-12-05 00:38:57
【问题描述】:

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

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

【问题讨论】:

    标签: xcode git merge


    【解决方案1】:

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

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

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

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

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

    • 保存文件

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

    可能有更好的方法来解决冲突,但这对我有用多次。 您可能还想看看这个问题:How to resolve merge conflicts in Git?

    【讨论】:

    • 很棒的答案节省了一天。
    【解决方案2】:

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

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

    如果另一个开发人员从源代码​​控制管理中签出并运行该应用程序,他会收到错误消息 error:path file/image name:No such file or directory。 因此,为了避免在我们端成功运行应用程序的错误,我们可以按照以下步骤操作

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

    【讨论】:

      【解决方案3】:

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

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

      不知道这对我来说是从哪里越过的,但万一有人看到这个并且有类似的问题,这不是合并冲突。

      【讨论】:

        【解决方案4】:

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

        【讨论】:

        • 再次查看How to Answer,了解如何将其作为具体答案而非一般建议
        猜你喜欢
        • 2018-07-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-14
        • 2012-08-17
        相关资源
        最近更新 更多