LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Looking into revision control

Solved!
Go to solution

Hello,

 

  I am just starting to look into revision control and really don't know what's possible. Let me start with a little background on my current situation:

 

1. I started a project specifically for a TestStand deployment that ended up being very modular just because of the nature of TestStand.

2. I overhauled our R&D software package to take advantage of all the improvements I made during the TestStand development; many VI's could be used from the TestStand project with no changes what-so-ever.

3. After deployment of the R&D software packages many bugs/improvements were identified and fixes were employed.

4. Now I am looping back to my TestStand project to implement the same bug fixes/improvements.

 

My issue now is that I have two different directories for two seperate projects (TestStand and R&D package) that contain many VI's and TypeDefs that are basically duplicates. They often share the same name and code, just in different directories.  I would like to combine the two directories into one, and keep the two different projects for the two different types of deployment. However, I am concerned that a change made to a VI or typedef could have unintentional consequences in one of the projects. For example, if I make a change to a VI for the R&D deployment it could cause issues in the TestStand deployment.

 

I am not sure how to best handle this issue. My first thought is that it would be great if I could assign a version of a VI or TypeDef to use with a specific project. For example, let say I have a "HWRead.vi" that is used in both projects. I could make a change to "HWRead.vi" and save it as "version 2" to use in the R&D project. Could I specify that the TestStand project still reference "version 1" until I have a chance to verify that "version 2" will not break anything in my TestStand deployment? 

 

Can I do this sort of thing with some kind of revision control software or should I keep duplicate VI's in their own directories? If someone could help point me in the right direction that would be appreciated; this is the first time I have tried to manage two separate projects that reference the same VI's.

 

Thanks much,

Corey

 

 

 


Corey Rotunno

0 Kudos
Message 1 of 2
(2,561 Views)
Solution
Accepted by topic author Corey.Rotunno

If they are developed on the same system you could e.g. make a Library of it and use the same library in both. This would ofc. not solve the "how do changes affect the other system", but bug fixes are applied to both.

I've done just that in my current project, where i've managed to create and lift out some code to my general Projects-level, basically building a small code library.

 

If they're on different systems (and even on one) i recommend some sourcecode control, as Git or Subversion. If you change something on one system, you can checkout and test it on the other, and if needed easily back up to a specific version until all kinks has been worked out.

 

So, you can keep them in separate folders, but checked out from the same SCC, and update them as things develop. Optimally, you'd relink to the same folder in a while. 🙂

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
Message 2 of 2
(2,492 Views)