14

Does anybody have experience with version control and LabVIEW? Since LabVIEW VIs are not text-based, how does it work? I would like to use git but I have a few questions:

  • When committing changes, does git recognize the differences in the VI or does it replace the whole file with the new one? Does this result in a large expansion of the repository?

  • Is there a possibility to merge different versions of a VI?

  • Or is there a version control that works better for LabVIEW?

Null
  • 1,950
  • 9
  • 30
  • 33
rkgghz
  • 456
  • 8
  • 19
  • 1
    There are some helpful videos by Delacor on YouTube showing the basics of how to set up various version control systems with LabVIEW: https://www.youtube.com/user/unifab/videos?sort=dd&shelf_id=0&view=0 – nekomatic Apr 15 '16 at 08:46

2 Answers2

12

When committing changes, does git recognize the differences in the VI or does it replace the whole file with the new one? Does this result in a large expansion of the repository?

VIs are binary files, and so git will save the updated version as a new object. This can cause a LabVIEW repository to grow faster than a pure text-based source base.

Is there a possibility to merge different versions of a VI?

Yes. There is a tool that installs with LabVIEW called LVMerge.exe which can do this.

Or is there a version control that works better for LabView?

I like and use git with LabVIEW. I also use these helpers:

Joe Friedrichsen
  • 1,976
  • 14
  • 14
  • 1
    As the NI link notes, you only get differencing and merging with the Professional development system or above, unfortunately. – nekomatic Apr 15 '16 at 08:43
3

To be fair LabVIEW is more suitable with the SVN.

There is an easy way to integrate LabVIEW SVN merge and SVN diff in tortoise SVN.

Please read this article.

Also, there is a toolkit for LabVIEW to work with SVN directly from a LabVIEW Project.

Here is the help page explaining how to start working with Git.

You can setup git diff and git merge for LabVIEW.

raggot
  • 992
  • 15
  • 38
Khachik Sahakyan
  • 1,982
  • 15
  • 24
  • 1
    I add that it is important to consider some Labview-specific caveats when using source control. Give a look here (Source Control Operations in LabVIEW): http://zone.ni.com/reference/en-XX/help/371361M-01/lvconcepts/scc_operations/ – MarcoM Apr 05 '16 at 06:01