Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

visdiff

比较两个文件或文件夹

说明

示例

visdiff(filename1,filename2) 打开比较工具并显示两个文件或文件夹之间的差别。比较工具支持 MATLAB® 代码文件、zip 文件、MAT 文件和各种其他 MATLAB 和 Simulink® 文件格式。有关完整列表,请参阅 输入参量

使用 visdiff 来比较两个 Simulink 模型,确定变化并合并差异。有关详细信息,请参阅模型比较 (Simulink)

示例

visdiff(filename1,filename2,type) 使用指定的比较类型比较两个文件。如果未指定类型,visdiff 将使用适合选定文件的默认比较类型。您只能使用此语法来比较文件。

示例

comparison = visdiff(___) 比较两个文件,并返回包含指定文件之间差别的比较对象。可以使用比较对象在命令行中控制比较,例如,通过应用过滤器和发布比较报告来进行控制。此语法不会打开比较工具,也不要求显示。它对于为持续集成 (CI) 工作流自动创建比较报告特别有用。并非所有文件类型都支持此语法。支持的文件包括 Simulink 模型、纯文本文件、MATLAB 脚本、MATLAB App 和基于文本的源代码文件。

示例

全部折叠

此示例说明如何使用相对路径和完整路径来比较两个文件。

比较当前文件夹中的两个文件 lengthofline.mlengthofline2.m

visdiff("lengthofline.m","lengthofline2.m")

使用完全限定的文件名比较两个 MAT 文件 gatlin.matgatlin2.mat

visdiff(fullfile(pwd,"supportingFiles","mymatFiles","gatlin.mat"), ...
fullfile(pwd,"supportingFiles","mymatFiles","gatlin2.mat"))

lengthofline.mlengthofline2.m 两个文件作为二进制文件进行比较。

如果不指定比较类型,visdiff 将使用默认的文本比较类型来比较这两个文件。通过更改为二进制文件比较类型,可以检查行尾字符之类的差别。

visdiff("lengthofline.m","lengthofline2.m","binary")

当您比较 Simulink 模型时,可以通过指定输出参量以命令行方式来操作比较报告。

比较两个模型文件并返回比较对象。

comparison = visdiff(modelname1,modelname2);

您可以禁用模型比较报告中的所有过滤器。

filter(comparison,"unfiltered");

要将比较报告发布为文件,请对比较对象使用 publish。发布的报告的默认格式为 HTML。publish 将文件保存在当前文件夹中,如 filename1_filename2.html

file = publish(comparison);
web(file)

创建名为 myreport 的 PDF 比较报告。将该报告保存到 comparisonresults 文件夹。

file = publish(comparison,format="PDF",Name="myreport",OutputFolder="comparisonresults");
web(file)

支持的报告格式有 HTML、PDF 和 DOCX。

有关如何使用 visdiff 在持续集成工作流中生成报告的说明,请参阅Attach Model Comparison Report to GitHub Pull Requests (Simulink)

输入参数

全部折叠

文件或文件夹名称,指定为字符向量或字符串。filename 可以包含当前文件夹的相对路径或完整路径。

下表显示支持的文件类型。

文件类型文件扩展名
MATLAB
MATLAB 脚本.m
实时脚本.mlx
纯文本任一值
基于文本的源代码.c.cpp.java
MATLAB App.mlapp
二进制任一值
文件夹 
ZIP 文件.zip
MATLAB 图窗.fig
MAT 文件.mat
工程定义文件.xml
工程存档.mlproj
依存关系 GraphML.graphml
Simulink
Simulink 模型.slx, .mdl
Simulink 模型模板.sltx
Simulink 工程模板.sltx
Simulink 数据字典.sldd
其他产品
Requirements Toolbox™.slreqx.有关详细信息,请参阅Publish and Save Printable Report of Comparison Results (Requirements Toolbox)
Requirements Toolbox 链接.slmx.有关详细信息,请参阅Publish and Save Printable Report of Comparison Results (Requirements Toolbox)
Simulink Test™.mldatx
SimBiology® 模型.sbproj
System Composer® 模型.slx
Simscape® 文件.ssc

您还可以使用比较工具对许多其他文件扩展名进行基本比较,包括 .prj.req.cvf.wrl.x3s.ssc.xml.tlc

比较类型,指定为 "text""binary""xml"。某些比较并非所有的比较类型都支持。如果您指定了不支持的比较类型,MATLAB 将显示错误。

要检查文本文件的差别,如行尾字符的差别,请指定 "binary" 比较类型。

XML 文件的默认比较类型取决于 XML 类型,可以是 "text""xml"。指定 "text""xml" 将覆盖文件的默认比较类型。

输出参量

全部折叠

比较对象,用于以命令行方式对比较结果进行操作,例如,可以应用过滤选项和发布比较报告。支持的文件包括 Simulink 模型、纯文本文件、MATLAB 脚本、MATLAB App 和基于文本的源代码文件。

局限性

  • MATLAB Online™ 中,比较工具并非所有文件类型都支持。支持的文件类型包括文本文件、MATLAB 代码文件、文件夹、zip 文件和 Simulink 模型。

替代功能

您可以通过交互方式打开比较工具。

  • MATLAB 主页选项卡 - 在文件部分中点击比较。然后选择要比较的文件或文件夹。

  • 当前文件夹浏览器 - 要比较文件或文件夹,请右键点击选定的文件或文件夹,然后选择比较对象。要比较两个文件或文件夹,请右键点击选定的文件或文件夹,然后选择比较选定的文件/文件夹

  • MATLAB 编辑器实时编辑器选项卡 - 要比较在编辑器中打开的文件,请在文件部分中点击比较

  • MATLAB 编辑器选项卡 - 要将文件与自动保存版本或已保存在磁盘上的版本进行比较,请在文件部分展开比较 ,然后选择与磁盘上的版本进行比较保存并与自动保存版本进行比较。如果修改了文件,编辑器会在比较之前保存文件。与磁盘上的版本进行比较保存并与自动保存版本进行比较选项仅在禁用自动保存更改时可用。要执行此操作,请转到主页选项卡,然后在环境部分点击预设项。然后,选择编辑器/调试器,并清除在文件外点击时保存更改

  • Simulink 编辑器 - 要比较在编辑器中打开的模型,请在建模选项卡的评估和管理部分中,点击比较项

版本历史记录

在 R2008b 中推出

全部展开