03-12-2009 09:24 AM
I'm a big fan of source code control. I try to keep everything from LabVIEW code, to drafts of papers, and even PowerPoint presentations in source code control. As a result, it's been years since I last had that heart-sinking feeling of "oh-no... I lost that document"
All the work we do at NI is managed in Perforce, but last week I had some free time and decided to make the switch to TortoiseSVN on my laptop to see what all the excitement is about. The switch inspired me to ask you, the community, what you're using and what your experience has been in the hopes of learning more and getting insights into what we can do better.
So, what source code control do you like? Do you use the integration tools with LabVIEW? Any other thoughts or details you have to share? We're listening!
03-12-2009 09:39 AM
My company was using Microsoft VSS as that's what our adjacent group (which heavily uses VB) was involved with. We weren't very happy with the integration to LabVIEW, especially when we had people on the road who were unable to access VSS. We are now using TortoiseSVN with PushOK and are much happier. There are still issues we deal with, but being able to identify bugs in the field, download the latest version, make changes, compile and check it all back in all while sitting in the hotel has been a definite plus for us.
Tim
03-12-2009 11:03 AM
I have customers using MS VSS, Tortoise SVN, and Perforce.
I personally am a big-time convert to source code control. Once the configuration is complete, the LabVIEW Integration works like a charm. As someone who mainly spends his time with LabVIEW doing rapid development with loosely-defined and changing requirements, being safe in the knowledge that I can always roll back massive changes is helps me sleep at night.
Is there a discussion on Unit Testing and the UTF? I would be very interested in learning where NI is headed with the UTF in the future. Specifically, I'd love to hear what thoughts are out there on ways to quicly develop test vectors.
03-12-2009 11:09 AM
We are currently transitioning from VSS to SVN. The integration between LV and VSS is terrible and I turned it off and advised everyone else here to do the same. Once SVN is up, I'll try the LV integration with it again. I was incredibly spoiled at NI by using Perforce; it's by far the best tool but unfortunately not what we've standardized on here.
03-12-2009 11:43 AM
On a related note, how many of you currently use the graphical differencing with source code control to identify changes? Are their any specific changes or improvements you would like to see in that feature?
03-12-2009 12:26 PM
We use Subversion with TortoiseSVN. For LabVIEW we handle all version control operations through the TortoiseSVN interface, not via LabVIEW integration. (This works well for us, but we are hoping NI will soon implement an interface to Subversion via the Subversion command line client rather than PushOK's interface. Another tool we use, Enterprise Architect--great UML tool and more, by the way--interfaces to the Subversion command line client in this way so that we use EA's interface to handle version control and it works well. We actually set up the initial folder with TortoiseSVN and then the icon overlays update as we make changes in EA.)
For LabVIEW we have set up TortoiseSVN to use lvdiff.exe, which passes the relevant files in the repository to LabVIEW's native graphical differencing tools.
I think using a LabVIEW interface to Subversion might provide some benefits, actually, including an ability to make locking files and checking lock status simpler for those who use a locking model. This is possible with TortoiseSVN, but a LabVIEW interface might be able to make this a little simpler. Also merging might be a little simpler via a LabVIEW native interface. I'm not sure, though. I'd have to see it! (It would be good to be really clear what the results of a merge operation would be.)
In any case implementing version control has had a very positive effect on our file management and even our productivity.
Paul
03-12-2009 12:42 PM
My project (800 VIs, 4 developers) is about to move to into source control using AccuRev. It is mandated by our project (National Ignition Facility) because the Java and Ada-based systems use it (1M lines of code, >100 developers). We even have 3 administrators for AccuRev... Apparently, it doesn't play nearly as nicely with LV as Perforce and the others, but I'm about to find out!!
03-12-2009 12:44 PM
Subversion with TortoiseSVN (on windows) or SmartSVN (on mac and linux).
03-24-2009 01:16 PM
We use TortoiseSVN or Command-line SVN without any Labview integration. I have been meaning to try the LabVIEW option for not saving any automatic changes, but for now we are just being careful. We try to separate commits where there are actual changes from ones with only automatic changes, so that we can do a better job of merging.
03-24-2009 02:01 PM
I am also using Subversion and TortoiseSVN without LabVIEW intergration. For hosting, I decided on assembla.com.