我正在使用Xcode 9.4,当前使用的是本机版本@ 0.54.4,我想将该版本升级到0.55.4。
使用react-native-git-upgrade
升级项目时,在project.pbxproj
中看到一些未合并的冲突。我的某些设置与新版本中的更改冲突。
我尝试了所有可能解决冲突的方法。但是X代码仍然显示错误could not load the project
,并且它不允许我构建项目。
我如何理解这些冲突指的是什么,如何安全地解决冲突?
答案 0 :(得分:1)
不幸的是,没有解决冲突的神奇方法。我希望有。该文件由Xcode管理,根据我的个人经验,我发现您可以轻松地执行合并操作。
Git
绝对是您最好的朋友。确保在开始任何合并之前,您处于新分支上并完全提交,这样,如果您搞砸了,就可以轻松返回到原始版本。
我通常要做的是保留project.pbxproj
的原始版本,然后然后在Xcode中手动进行更改。我知道这听起来并不理想,但这确实意味着您应该能够在Xcode中打开项目,尽管您的项目可能尚未运行-
如果您不确定要保留哪个版本,我会保留我们的,因为这是您的project.pbxproj
的原始版本。来自documentation:
您可以将“我们的”视为“您的团队”,将“他们的”视为“ React Native开发团队”。
然后,我将手动进行更改,如下所述。这样可以显示其更改,并且希望不会有那么多更改。
为帮助我找到必须进行的更改,我发现rn-diff-purge是宝贵的资源。您可以在其中找到所选git diff
的任何两个版本的react-native
。 (这省去了创建两个项目,然后自己比较它们的时间,节省了很多时间。)
当前您正在从0.54.4
升级到0.55.4
,此链接显示了这些版本之间的差异
https://github.com/pvinis/rn-diff-purge/compare/version/0.54.4...version/0.55.4
要获得更多帮助,您可以创建特定版本react-native
的项目,使用以下命令将创建版本0.55.4
的项目。
react-native init newproject --version react-native@0.55.4
那样,您可以查看Xcode项目内部,以查看添加的内容以及添加的位置,因为git diff
并不总是知道其来源。
使用react-native-git-upgrade
从来没有多好运,我更喜欢手动执行,因为这样可以取得更大的成功。
答案 1 :(得分:0)
对不起,最新更新。
从0.51更新到版本0.55的本机响应后,一切似乎都在本地模式下正常运行。但是生产构建失败。
我通过将react native从0.51再次升级并保持更改而不是几乎所有时间来解决此问题。
通过选择错误的更改,文档中可能会出现有关问题种类的详细解释。