首页 > 解决方案 > FileMerge 显示 XIB 文件的错误内容

问题描述

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

标签: xcodexibfilemerge

解决方案


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

要禁用(建议删除):

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

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

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


推荐阅读