Affordable SCM/VCS option for PLC code

Evirua

Member
Join Date
Aug 2018
Location
Here
Posts
34
The context is a shop working with both B&R and Rockwell products, meaning respectively text and binary format code.

The goal is to optimize the way multiple developers can work on the same project, and that's obviously done with a VCS. The other constraint is that we're looking for free to low-priced options (more possible to convince the direction that way), which made me scratch off a few, like AssetCentre, VersionDog and MDT software.

Others I've scratched off because they either don't support binary files, or -as I understood it- they are obsolete or not PLC-context valid: Darcs, Fossil, BitKeeper, Team Foundation Server, SourceGear Vault, proficy change management (GEautomation), Bitbucket, and Perforce.

Which left me with my current "top" contenders: Git, Mercurial and Plastic SCM.

Git is the overwhelmingly popular choice, it doesn't support binary files, but I'm thinking Git LFS may do the trick? Mercurial seems more VCS-focused, has a simpler learning curve, and apparently has PLC-oriented literature. And Plastic SCM is a big unknown to me as it is apparently primarily meant for gamedev, but for all intents and purposes, seems affordable, supports binary files and offers the usual VCS features (branching, merging, diffing...).

I'm looking for insight as to which option would be the go-to in this case?

Thanks for taking the time.
 
The goal is to optimize the way multiple developers can work on the same project, and that's obviously done with a VCS. The other constraint is that we're looking for free to low-priced options (more possible to convince the direction that way), which made me scratch off a few, like AssetCentre, VersionDog and MDT software.

I'm looking for insight as to which option would be the go-to in this case?

From my perspective, I've never seen a developer truly happy with their PLC VCS solution for binary file formats. You may be able to create branches, but the tools really only work well when only one engineer is working on a project at a time. You also don't get diffs of the code, you can only upload the whole new project.

You could create a branch for each engineer to work in, and then manually merge them together occasionally, but this is a huge pain and not that much different from the "traditional" method of passing around USB sticks or working from a shared drive.

You might be able to get by with some text based export, but I'm not sure if those contain 100% of the project data. Maybe you check the binary file AND the export back in? That way one has ALL the data, and the other can have specific changes tracked and compared.
 

Similar Topics

Hi All, Here is a fun one. In your opinion what would be the most affordable plc cpu with EIP "master" communications capability? No discrete IO...
Replies
22
Views
1,912
Make me a recommendation. I was hoping the Fluke 787 would be a little more affordable. Sometimes I wonder if all the extra bells and whistles on...
Replies
13
Views
4,070
Long time lurker here on this forum. Lot's of information here for people like us to learn. I have a project where I need 11 Digital Inputs, 14...
Replies
32
Views
11,564
Members, Years ago I programmed SLC 500's. I relearned much of the skill in 2012 via youtube and getting a limited RSL 500 software package off...
Replies
10
Views
3,573
Hello all, I am wanting to do a project using real time clock function to control lighting. I would only need four to six outputs. I am familiar...
Replies
12
Views
4,736
Back
Top Bottom