我正在使用Git,而我正在使用MATLAB / Simulink。
我知道新版本的MATLAB / Simulink与Git有某种集成,但我想知道是否有一种简单的方法可以在2个Simulink模型之间读取git diff
,格式为{ {1}}
例如,当您有一个simulink模型时,如果您有一个所谓的MATLAB嵌入式函数,并希望了解软件的不同版本中的函数之间的差异,那么这将非常有用。
理解被评论的块以及两个不同.slx
模型(Simulink
)之间的所有差异也很有用。
答案 0 :(得分:5)
我找到了解决问题的方法。
.git
文件夹。config
(如果该文件不可用,则创建它,但它应该正常存在)。 将以下代码添加到文件中:
[diff "slx"]
textconv = unzip -c -a
然后您需要创建或修改文件REPOSITORY/.gitattributes
并添加:
*.slx diff=slx
这样,当您在Simulink模型(git diff
)上执行.slx
时,您将获得非常可读的结果。
我希望它会帮助别人。
答案 1 :(得分:1)
虽然文本比较可以让您对简单更改的内容有所了解,但是进入Simulink模型的信息会存储在SLX容器的各个位置。 Simulink报告生成器中的Simulink比较功能等工具可以更深入地了解已更改的内容,并允许合并等操作。
自R2014a以来,Simulink通过Simulink项目进行了Git集成,或者自R2014b以来通过MATLAB当前文件夹工具进行了集成。
答案 2 :(得分:1)
有些商业工具可以执行Simulink模型的差异,有些甚至可以合并它们。另一个答案的评论中提到了Mathworks工具,但还有其他工具,例如SimDiff可以integrate with Git directly。
免责声明:我为制作SimDiff的公司工作
答案 3 :(得分:0)
DiffPlug是一个免费的git客户端,具有对Simulink的本地支持。差异模型不是免费的,但您可以从历史记录中免费查看它们。