Xcode 4,Git和项目文件合并!

3

我有一个问题!我们正在开发一款iPhone应用,并使用git。问题在于,如果有人更改了项目中的某些内容(添加文件等),而我尝试拉取该更改,则必须进行合并。

但是合并并不是一件轻松的事情,我经常会得到一个损坏的项目文件,需要花费相当长的时间来修复它。

有人有解决这个问题的方法吗?

(对我的糟糕英语感到抱歉)


你是在Xcode内部还是从命令行中进行拉取/推送操作? - Shaggy Frog
这里有一篇关于许多Git问题的精彩文章:https://dev59.com/8eo6XIcBkEYKwwoYTzNK - Scott
2个回答

4
项目文件因冲突而臭名昭著。我建议启用rerere(代表“重复使用记录的解决方案”),这样如果您必须重新解决冲突,至少可以从上一次解决时缓存您的决策。关于rerere的优秀写作在此处: http://progit.org/2010/03/08/rerere.html 如果您有兴趣,更好的方法是查看高级主题,编写自定义合并驱动程序。请参见http://git-scm.com/docs/gitattributes中的“定义自定义合并驱动程序”。
希望这可以帮助到您。

1

三个重要步骤:

  • 让git忽略项目文件中除了.xcodeproj文件夹下的project.pbxproj之外的所有内容 - 使用.gitignore实现。
  • 在拉取更改的.pbxproj之前关闭项目。你面临的最大问题之一是,如果Xcode打开了项目文件,它可以将“当前”版本保存在你想要更改的版本上。
  • 合并有时会导致类似于">>>>YOURS"或">>>>THEIRS"合并标记包含在项目文件中的虚假数据。如果必须进行合并,请使用像filemerge这样的工具手动完成,以便您可以检查每个更改并选择是否包含它。

如果所有这些都失败了,你仍然得到了一个损坏的项目文件

  • 接受其他人提交的版本并重新执行自己的更改,这几乎总是更容易的,链接错误很快就会提醒你。
  • 学习频繁提交的价值。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接