02-18-2008 02:45 PM
02-18-2008 03:29 PM
02-19-2008 08:15 AM
02-19-2008
05:52 PM
- last edited on
07-18-2025
06:13 PM
by
Content Cleaner
Hi Bob,
Using Source Code Control (SCC), you will be able to keep track of revisions of the program. All changes are documented so that you can have a clear track of the program evolution and previous versions are saved by the tool.
LabVIEW supports various thrid party source code control providers. Among them are
Here is a link on configuring your labview for SCC.
I hope this answers your questions!
07-18-2008 09:11 AM
Hi Bob,
I am just about to go down the same source code control route as you described on your original post. I have downloaded TortoiseSVN and would like to use it with LV8.5 project manager.
Did you continue down this route or choose a different 3rd party SCC applciation? (E.g. Perforce)
Did you come to any conclusions on the best method?
Did you use TortoiseSVN standalone or did you use it with LV Project manager? Did you have any issues?
Do you have to install PushOK or anyother applications to get it to work?
Any tips and tricks would be appreciated.
Cheers
Ian
07-18-2008 01:43 PM
08-22-2008 03:53 PM - edited 08-22-2008 03:56 PM
Subversion is a great version control system, I've been using it for about 1 1/2 yr. It works well with LV since it handles binary files internally, which means that the repository does not need to store a unique copy of each file committed. Instead, it only stores the difference between the previous and the current version so that disk space is economized on the server. Also it is possible to branch a project without it taking up twice the space on the server (as with the older CVS) -- which is implemented as a "cheap copy" in Subversion.
The only thing I'm missing is the ability to do a "diff" between two revisions. It seems the "diff" program in LV only allows comparing two files within the same project (it's available from the menu inside LV, Tools->Compare->Compare VIs...). Nor is it possible to call the program externally (e.g. "lvdiff.exe file1 file2 " ) . Anyone found a solution to this? I imagine if one integrates a fully supported version control system with LV it may be possible?? Does this work if you use Perforce? *** Would be really nice if NI would add this as a feature. *** ![]()
08-24-2008 05:08 PM
Rob,
There's the usual "Good News, Bad News" mix in the VI Compare utility. First, both VIs do not need to be in the same project (though it works much better if they are, see below). Instead, both must be in memory at the same time.
If you are working on a project that contains VIOne, and you want to compare it to VITwo that is not in your project, first open your project and VIOne. Now open (Ctrl-O) VITwo, an action that will appear to load it into the project, but only does so if you save it! Now do the Compare -- you'll see VITwo supposedly in your project, but again, if you don't save it, it will not be added.
A trickier issue is comparing two versions of the same VI (obviously stored on different places on disk). The answer here is to rename one temporarily. Suppose you want to compare VIOne with an older version -- rename the older version VIOneOld, load it, and do the compare. Don't forget to rename it back ...
I recently had the opportunity to ask NI developers about including a "Compare to disk copy" extension of the Compare tool. Someone mentioned that OpenG (or maybe LAVA?) had such a tool, but I haven't (yet) found it. If NI were to develop this, one method they could use is to automatically create a temporary "in-memory" name for the VI pulled up from disk, just for the purposes of guaranteeing unique in-memory names for their existing tool. Maybe this is something we might see in LabVIEW 8.7?
Bob Schor
08-25-2008 08:13 AM
Hi there
TortoiseSVN is OK with LabVIEW, as long as you don't make a Mass Compile. SVN creates hidden files named similar to the versioned files. LabVIEW touches each file named "*.vi*", "*.ctl" and so on recursively in the selected folder to mass compile. This will crush your local SVN working directory.
I suggest to use TortoiseCVS. Usage is similar to TortoiseSVN, but it uses CVS instead, which dosn't create such files. Can be found here
http://sourceforge.net/projects/tortoisecvs/
08-25-2008
12:16 PM
- last edited on
07-18-2025
06:13 PM
by
Content Cleaner
Hi Bob,
There is such a tool and it's called lvdiff. The version I tried some time ago was not compatible with current version of LV. See: http://sourceforge.net/project/shownotes.php?group_id=29668&release_id=409179.
Here is another thread discussing comparisons of files: http://sourceforge.net/project/shownotes.php?group_id=29668&release_id=409179
Still, looks like the optimal solution to diff'ing two revisions of the same file would be if that was incorporated in to LV itself in the future... http://digital.ni.com/public.nsf/allkb/EDA7C01C684ACB6286256FF0000238D5?OpenDocument