iOS - 将cocoapods添加到项目后的git合并冲突

时间:2014-10-20 18:33:33

标签: ios git cocoapods xcode-project xcode-workspace

我正在与另一位合作伙伴合作开发应用。他一直在做大师,我开了一个新的分支。在我的分支上,我安装了cocoapods。我刚尝试从主人那里拉,我遇到了合并冲突。

当我打开Xcode时,工作区文件出错,并显示:

"Workspace Integrity - Couldn't load project"

如何解决此合并冲突?

6 个答案:

答案 0 :(得分:24)

当git遇到合并冲突时,会向冲突文件添加文本行。 他们评论如下:

<<<<< HEAD
  ... your code from HEAD...
=========
  ... your code from the merge branch...
>>>>>> my_merged_branch_name

这些行标志着Git需要帮助的地方。当Xcode在.pbxproj文件中遇到其中一行时,它无法打开该文件并引发Workspace Inconsistency错误。

如果你查看从git获得的消息,它们会显示哪些文件存在合并冲突。

解决问题:

  1. 使用简单的文本编辑器打开每个文件(我老了,所以我使用vi.Nano也可以工作。只要确保使用代码编辑器而不是像TextEdit这样的文字处理器将尝试更改您的行结尾等。)

  2. 通过删除git添加的注释行并决定要保留哪些代码行来解决冲突。

  3. 然后告诉git你已经解决了冲突: git add。

  4. 继续合并。

  5. Xcode现在应该可以打开你的项目了。

答案 1 :(得分:3)

这是我的2分。

有时即使删除了所有>>>>=====,您仍然会遇到相同的错误。

  • 清理项目
  • 运行pod install
  • 构建项目

这应解决剩下的问题。

答案 2 :(得分:1)

重新启动Xcode,它应该构建良好的

答案 3 :(得分:0)

也许你的project.pbxproj被破坏了。如果您更改了project.pbxproj,则应该通过your.xcodeproj仔细检查project.pbxproj - &gt; show package contents - &gt; project.pbxproj

答案 4 :(得分:0)

解决冲突的另一种方法是,当您无法访问工作空间文件时,请按 + + c,然后应查看导致错误{{1 }}

如果您不确定豆荚或迦太基怎么了;您可以在Pod / Carthage和"Workspace Integrity - Couldn't load project".上单击鼠标右键。您以后可以手动更新这些吊舱。

答案 5 :(得分:0)

最有可能您的project.pbxproj内部的ProjectName.xcodeproj文件有问题(右键单击显示包内容)。

您可以阅读in github有关类似问题的信息,can try还有一种“棉绒”解决方案。

我认为一种更快的解决方案是在每次提交之前将git中的HEAD“后退”移动到您的项目文件起作用,并且一旦起作用,将HEAD 1的commit向前移动并查看project.pbxproj中的更改,您可能会看到缺少左方括号或右方括号,或者可能缺少分号。

现在,您知道丢失了什么,转到最新的提交,然后使用简单的文本查看器手动修复project.pbxproj文件。

祝你好运。