swift - Git merge 后 Xcode 无法打开项目

标签 swift xcode git cocoapods

我最近 merge 了两个分支并解决了近 100 个冲突。现在,Xcode 不允许我从项目导航器中打开任何项目。我首先编辑冲突文件的唯一方法是从问题导航器中单击冲突。

enter image description here

我不确定这是否重要,但绝大多数冲突都发生在 .pbxproj 文件中,并且我在所有情况下都接受了这两个版本。此外,我的 Pods 项目消失了。运行 pod install 时,出现以下错误:enter image description here

任何帮助将不胜感激,谢谢!

最佳答案

有时,接受 merge 的双方会在 Xcode 项目中创建重复的部分。或者更糟糕的是,无效的部分。

Xcode 项目采用旧的 ASCII Plist 格式。您可以看到该文件隐约类似于 JSON 或 YAML 文件,具有基本的树结构。如果您接受 merge 的双方而不注意 merge 的内容,则此基本结构可能会被损坏。确保 merge 后括号 () 和大括号 {} 正确平衡。

另一个问题是新属性列表中表示的对象可能对 Xcode 没有意义。我不太确定文件结构的要求,因为它没有详细记录,但是当我从脚本生成 Xcode 项目时,Xcode 相当挑剔,我生成的文件完全正确。

您可以再次尝试 merge 并更多地关注 Xcode 项目的结构,或者您可以从 merge 中选择一个分支并在 Xcode 内手动对 Xcode 项目进行另一分支的更改。

关于swift - Git merge 后 Xcode 无法打开项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38329156/

相关文章:

ios - 在单独的 .swift 文件中使用扩展

ios - 从我的应用程序打开 native Snapchat 应用程序

git - 这些将现有 Git 存储库导入 GitHub 的方法有何不同?

git - 为什么 Gerrit 不将 change-id 包含到 merge 提交中?

git - "/tensorflow-serving-devel"标志 :Invalid reference format 的无效参数 "-t,--tag"

swift - Realm swift : always put nil values last in sort

json - JSON 中的有序字典

python - 安装 coremltools 时出错

xcode - Mac 从 sleep 状态恢复时会触发什么事件?

ios - 如果稍后将 Storyboard 添加到项目中,为什么 singleView 应用程序不加载 Storyboard ?