SVN 4 PLC
Today I’d like to share my experience I’ve gained using a cloud storage service with a version control system for my PLC projects. In particular, I’ll address projects developed in the IDE TIA Portal or Simatic Step7 that both employ Subversion repositories.
Let’s first pay attention to the concept of repository. A Subversion system has to be deployed on the file server. A target folder for users to access is created in the system. The TortoiseSVN clients on the developers’ computers connect to the server. The interface, which is accessible through the right-click, integrates with Windows Explorer.
When getting started it is recommended that you create a dedicated folder on a local drive the repository files will be placed to. This is performed by using the “SVN Checkout” command. The graphical user interface will prompt you to specify the repository address and user credentials.
Once you have your repository working copy created, you can start editing your files. All files that have been modified are marked with a red exclamation mark. Sorry to say, in most cases in the Siemens development environments TortoiseSVN is of no help to detect what has changed. This is because TortoiseSVN is only capable of comparing textual data. However, you can always have two projects open at the same time and compare them with the help of the Siemens IDE tools. This way of data comparison is more difficult rather than comparing text files. But it’s doable!
When you have finished editing the local copy, you can use the “SVN Commit” command to transfer the changes to the server. Common decencies imply that you provide a comment for each revision — use the Message field in the “SVN Commit” window.
Every time before you start editing the local copy, it is recommended to run the “SVN Update” command first to check if the current project hasn’t been modified by other users. On your screen, you will see a list of files and folders that have changed.
To sum up, let’s highlight the following points:
- An advantage, and disadvantage at the same time, is the ability of the SVN system to store the entire project with no mechanism provided to set off particular changes. SVN is capable of detecting changes in text files only, while Siemens TIA features its own structure for storing source files; and this structure is different from textual format. Nevertheless, developers can use revision descriptions to describe particular changes.
- It is certainly beneficial that the developer can go back to any of the previous revisions that has ever been committed to the server.
- There is a tool called “Repo browser” helping developers and managers notice all changes that have been made to the repository structure from the very beginning. The changes are displayed with the author of each revision and their comments.