【发布时间】:2018-10-02 11:57:56
【问题描述】:
我的雇主想将我们的版本控制系统切换到 git。我试过了,读了一本手册,到目前为止我对此很满意,但是我遇到了一个问题,这似乎很难解决。我们不仅使用文本语言,还使用LabVIEW 2014(一种图形编程语言)。由于 git 将数据存储在二进制快照中,兼容性不是问题,但查看更改和合并似乎是不可能的。 几个小时以来,我一直在寻找差异替代品,但我没有找到任何适合我们需求的东西。
实际上,LabVIEW 有一个用于比较源文件和一个用于合并的内置工具。这些工具被锁定在程序中,如果没有运行 IDE,似乎无法启动它们,因为它们仅适用于专业许可证的用户。虽然我们拥有这个版本,但似乎我们只能从源代码编辑器菜单启动它们。
仅从命令行启动 LVCompare.exe 会在单独的窗口(不在 bash 中)中导致以下错误(我们运行 windows 10,这只是 git bash):
$ ./LVCompare.exe ~/PATH_TO_PROJECT/Current_Test.vi ~/PATH_TO_PROJECT/Forecast_Test.vi
An error occurred while running LVCompare.
Open VI Reference in LVCompare.vi<APPEND>
VI Path: <b>C:\/Users/PATH_TO_PROJECT/Current_Test.vi</b>
我能想象的唯一解决方法 - 因为您不能同时打开两个名称相同的 VI(源文件) - 非常不方便。如果我需要比较一个文件的两个版本,我必须签出版本一,将文件以不同的名称从工作目录中复制出来,签出版本二,在LabVIEW中打开文件,打开比较工具并选择第一个文件.您可能会猜到这是一个非常糟糕的选择,我认为其他开发人员不会对此感到满意。
我需要的是一个图形化的、支持 Windows 的工具,它可以向我展示差异。命令行解决方案在这里完全不存在,因为这只会使查找更改变得更加复杂。
我检查了几十个网页,确实很少有开发人员声称自己编写了工具,但大多数时候你必须安装很多辅助软件,它们会产生类似的错误或根本不起作用。
最后我的问题是:是否有可能显示两个 git 版本的 LabVIEW 源文件之间的差异而无需经历所有的努力?
【问题讨论】:
-
您可以查看 Delacor 的 this presentation,了解如何配置 Git 以使用 LV Merge 和 Diff 工具。
-
这实际上解决了问题!您必须将 LVCompare 和 LVMerge 的路径放在引号中(“C:\Program Files (x86)\National Instruments\Shared\LabVIEW Compare\LVCompare.exe”...)。
标签: git version-control labview git-diff