FileMerge 显示 XIB 文件的错误内容

Posted

技术标签:

【中文标题】FileMerge 显示 XIB 文件的错误内容【英文标题】:FileMerge showing wrong content for XIB files 【发布时间】:2019-11-21 21:04:42 【问题描述】:

FileMerge 比较XIB 文件时,显示的内容与实际内容完全不同。 FileMerge 显示 plist(第一个键是“com.apple.ibtool.document.classes”),而不是界面构建器文档(根是 <document type="com.apple.InterfaceBuilder3.Cocoa.XIB" ...>)。为什么是这样? FileMerge 可以处理 XIB 文件吗?如果可以,如何处理?

【问题讨论】:

【参考方案1】:

FileMerge 根据扩展名过滤一些文件。 XIB 通过 ibtool 运行(出现在 plist 的第一个键中)。

禁用(建议删除):

    在 FileMerge 中,打开首选项(FileMerge → 首选项,或 ⌘,) 打开“过滤器”标签 双击“扩展”列中的“xib”单元格。 更改条目(例如附加“_”),使过滤器与 XIB 文件不匹配。

注意“显示”列单元格是切换;单击它们将在“过滤”和“原始”之间切换。但是,尝试通过切换到“原始”来禁用“xib”过滤器会导致错误:

过滤器 $(DEVELOPER_BIN_DIR)/ibtool --all $(FILE) 无法正常工作。换行数不会因过滤而改变。

【讨论】:

以上是关于FileMerge 显示 XIB 文件的错误内容的主要内容,如果未能解决你的问题,请参考以下文章

查看结构性xib差异的工具?

如何为 FileMerge 分配快捷方式

xib 文件显示在错误的目标中

尽管已正确初始化,XIB 视图仍不显示任何内容

iOS 启动屏幕不会停止显示 launchscreen.xib

尝试加载 xib 文件时无法同时满足约束