ios - project.pbxproj 始终在 git 中标记为已修改

标签 ios swift xcode git react-native

我在使用 xcode 时遇到一些问题,比如链接库消失等。

经过一些研究,似乎我的 project.pbxproj 文件在两次提交之间已完全更改,并且我正在尝试恢复旧版本。然而,已经有一段时间了,我的 project.pbxproj 总是被 git 标记为已修改。我一直认为是 XCode 在修改文件的同时修改了 GUI 中的一些内容。然而,由于对此文件的更改,git 第一次阻止我 merge 或恢复。我无法忽略它,因为它包含构建我的项目所需的重要信息。

不过,这变得更奇怪,因为文件确实始终处于修改状态。我只是尝试在完全没有打开应用程序、没有 IDE、没有 xcode 的情况下启动我的 mac,然后打开一个终端,将我的项目克隆到新创建的文件夹中。克隆后,如果我只是 cd 进入文件夹和 git status,该文件将被标记为已修改。

这种行为正常吗?人们是否遇到过此文件和 git 的问题?我可以将我的project.pbxproj恢复到较旧的状态吗?这样做安全吗?是否有一些 git 配置可以用来更好地处理这个文件?

我的项目不是原生的,我使用的是react-native框架

最佳答案

文件 project.pbxproj 不断变化,因为它包含有关项目的结构和配置、链接框架等的信息。

我发现在我的 .gitattributes 中添加 *.pbxproj binary merge=union 修复了该文件中 95% 的 merge 问题,总有一种罕见的情况联合失败,最终会得到错误的右括号,但通常很容易找到并手动修复它。

关于ios - project.pbxproj 始终在 git 中标记为已修改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59613534/

相关文章:

ios - SQLite 持久化项目 : errorMsg

ios - 标签栏项目不显示

ios - 导出已连接,但在展开可选值时意外发现 nil

ios - 从 Parse 中的指针列获取数据(iOS)

ios - 导航栏中的中心图像

ios - pjsip发送短信如何

iphone - 尝试使用对象初始化 NSArray 时出错?

ios - 类型 'Double' 没有成员 'random'

objective-c - 如何处理带空格的文件名?

ios - Swift 3 操纵 UICollectionViewCell 大小?