Recommended Posts

I am looking for any and all comments on this topic from the LAVA community :

I am a LabVIEW programmer who has been "forced" to use Clearcase for several years now by the text based coders in the dept. It seems that there are now more LabVIEW programmers that use TSVN and SVN than any other SCC tool out there in industry (my perception), and I am sure for good reason and not just due to cost savings !!!

I would like to present a functionality / ease of use comparison case between ClearCase & TSVN / SVN to justify the potential migration to TSVN & SVN.

Share this post

Link to post

Share on other sites

I personally stumbled upon SVN/TSVN while trying find any revision control system. It just worked right out of the box, and have been very happy with the performance and safety it provides. I then found trac, which improved upon the system even further. I have started to experiment with other revision/source control systems, such as git and bazaar, but still like SVN by far. It is simple and customizable to almost any need.

Share this post

Link to post

Share on other sites

I am using and have used ClearCase for many many years, both for LabVIEW, the last four years or so & for text based languages, for longer than I can remember. I have also used CVS, a little Mercurial Hg and a little Subversion. We have a team of five developers working on around 1500 VI's in ClearCase.

LabVIEW does introduces it's very own problems with source control no matter what source control tool you use. There are pros & cons to all of them and all can be used equally as well in the right situation. You do need to ensure that your procedure are tailored to the tool you are using however. The biggest thing you can do to improve source control issues with LabVIEW is to use LAbVIEW 2010 and the "separate compile code and source code" feature.

I would be happy to work with any of the three tools. The two main problems with ClearCase are

1) cost (but you already have it installed so not an issue here)

2) you do need a good fast / reliable Intranet to get good performance out of it.

I would like to present a functionality / ease of use comparison case between ClearCase & TSVN / SVN to justify the potential migration to TSVN & SVN.

But .........

I think you have asked the wrong question, the comparison is great if you have no tool & need to get one, but you are already using ClearCase. So I would change the focus and specify in what way ClearCase is failing you in your needs at present.

Get a list of your current problems and issues with using ClearCase and then ask if these other tool solve these issues or not. If they do all well and good but if not you could do all the change over work and be no better off.

It might be that you current problems are not with ClearCase but how you are using it and you procedures and if that is the case and you move to a new tool you will just take those problems over with you. I have seen this happen before.

Share this post

Link to post

Share on other sites

Thank you for your responses but it looks like I need to clear up a few details :

1.) ClearCase DOES cost us $$$.

2.) I know of a small group that uses Perforce and witnessed it in action and the process of checking out / in was MUCH easier than ClearCase !!! .... but Perforce is not free.

3.) The Open Source (i.e. free) allowable choices are : CVS / TortoiseCVS, SVN / TortoiseSVN, git, or Bazaar. These are the boundaries that are set for me. So, I don't want to hear about any other SCM tools out there - but thank you for mentioning the other products.

The focus of my topic is that I'd now like to hear from SVN / TortoiseSVN users out there.

Share this post

Link to post

Share on other sites

I really like JKI's TSVN plugin when I need to commit/update/rename one file at a time. Projects are still a little troublesome from within LabVIEW. (At least for me. Sometimes I don't read instructions well.) There seams to be a TortoiseNNN for everything now. <Laughing to self> The tortoise shell integration is a really cool concept, and seams to work well across different versioning systems. Just to add too CommonSense's comment, there is also a TortoiseGit and TortoiseBzr. (Bazaar) There are probably more too, I just can't find them all. (In development/planning)

Share this post

Link to post

Share on other sites

I just met a Linux text programmer who has used svn/cvs/rcs/sccs and ClearCase and says that git is as good as SVN. ClearCase was a mess considering the amount of servers/services that need to be setup (i.e. vob servers, view servers, vob admins, modified kernels, etc.).

Share this post

Link to post

Share on other sites

I am looking for any and all comments on this topic from the LAVA community :

I am a LabVIEW programmer who has been "forced" to use Clearcase for several years now by the text based coders in the dept. It seems that there are now more LabVIEW programmers that use TSVN and SVN than any other SCC tool out there in industry (my perception), and I am sure for good reason and not just due to cost savings !!!

I would like to present a functionality / ease of use comparison case between ClearCase & TSVN / SVN to justify the potential migration to TSVN & SVN.

Thank You in advance !!!

I think the main reason SVN is used so often is because it is easy to setup and to use. And with many LabVIEW programmers doing small teams or even single user scenarios, and having to install the version control too themselves this is simply a huge incentive. It's not because SVN is superior to those other version control systems (it's definitely not) but simply because it is easy to use (and easy to use it wrong too). It's definitely better than no version control at all and for the little cost it has in getting it to work an ideal tool for many. It has limitations such as not really supporting branching and merging and I have run many times into situation when copying a controlled module to a different computer and making some modifications there (you can't usually install arbitrary software on a customer computer, and you also can't debug system hardware which needs some specific interface hardware from your own development computer) and afterwards trying to get this back into the controlled module on my system. Hg seems to support that much better, and while git on a command line is a nightmare to use, it certainly has very powerful features.

Share this post

Link to post

Share on other sites

I am looking for any and all comments on this topic from the LAVA community :

I am a LabVIEW programmer who has been "forced" to use Clearcase for several years now by the text based coders in the dept. It seems that there are now more LabVIEW programmers that use TSVN and SVN than any other SCC tool out there in industry (my perception), and I am sure for good reason and not just due to cost savings !!!

I would like to present a functionality / ease of use comparison case between ClearCase & TSVN / SVN to justify the potential migration to TSVN & SVN.

Thank You in advance !!!

I am a former Clearcase user.

It is sluggish, expensive, and frustrating.

On balance it is still the best package I have ever used.

I work with large projects, multiple users and multiple branches.

If this is you, I would advise against the smaller applications such as cvs and svn as they have poor interaction with other users.

For me it is important to tell another user that you are modifying a file. It triggers you to have a chat to them.

Good history and merge tools are also important.

My analysis has shown that Perforce is probably the best balance between free, commercial, fast and featured.

Assuming that you already have a Clearcase admin, it should be a breeze to setup and use.

It "Just Worked"

Perforce has been an adventure to set up,

Requiring IDE plugins and special file paths and a bit more manual control of workspaces.

I am still hoping that this will be a good solution for competent users.

Share this post

Link to post

Share on other sites

Its been several months now since my last post, so here is the obligatory update:

I have implemented a TSVN Client and Visual SVN server architecture - including JKI's TSVN plugin which works great ! - for about 3 months and everything has been running very smooth I must say. We determined that we needed a centralized repository (RAID6 supermicro server) for now, but we will re-analyze this architecture every year to see if we need to move to something like Mercurial which looks like another big step forward. We pretty much work on our own code, but have left the door open for multiple people working on the same project.

Once we got the just of how to setup the repositories on the server and on each client, it has been one of the best moves we have ever made. VSVN is such a low-overhead breeze to setup and maintain, the bar has been set very high. Maintenance is so very low and we don't have to rely on someone in the company I.T. group (i.e. you know, could be in a cube on Mars) to get a VOB going or with new PC's and O/S changes occurring now, wonder where the VOB patch is or ... you get the point. The bar has swung greatly back to retaining knowledge so one can be self-sufficient and not rely on others to get the job done. I can't emphasize this enough.

Share this post

Link to post

Share on other sites

I havn't used Ton's API, as I wrote my own (less complete) at the same time.

It is useful if you use some automated process (e.g. build scripts). For my reuse packages, I use a pre-build hook in the OpenG builder to extract the log from hg and create a LogFile.txt that is deployed with the package.

Also, I have written (but I don't really use them) small vi's that allow you e.g. to rename a vi (save under new name + tell hg that it's renamed) and the like. Didn't had the time to continue on this. But for integration of hg with the LV-IDE, you need the API.