PhilipW
Member
Gents,
About 8 months ago I joined a small automation team (up until then I had worked on most projects on my own) and I had to face up for the first time the old problem of how to keep multiple files being worked on by several different people at different locations from getting lost, overwritten or conflicted.
After a some research I settled on Subversion.
The client we use is TortoiseSVN.
Both of these are Open Source projects.
It has taken a few hours of getting my head around them, as some of the jargon was unfamiliar, but we have been using it seriously now for about 3 months and we are pretty happy with it.
The main benefit is that it protects you from yourself, ie you cannot overwrite a new file with an old one, or another user cannot overwrite your latest version with his new version. Subversion also encourages the use of a log file and allows the user to revert to any previously committed version very easily.
There are three main options to setting up a Subversion server:
1. The Repository is served as an extension to an Apache web server. This works well if you want to run a public access server and you are already competent at managing webservers.
2. For automation people it is more likely you will choose the stand-alone "svnserve" service. This is typically run on an in-house server that everyone can access, and on which the Repository is routinely backed up to tape. This mode is ideal for us as we have our own isolated control systems network that only the control's guys use.
3. Or finally you can run just TortoiseSVN to create a Repository locally on your own local hard disk (not a mapped network disk) that only you can access. This mode is actually a good way to learn Subversion and is perfectly useful in its own right.
Another major plus for Subversion is that it treats ALL files by default as binary, whereas some of the other tools about (most commonly CVS) have to choose whether they will deal with the file as text or binary. For almost almost all automation applications the binary choice is the correct one, so Subversion is ideal in this respect.
Finally I have to say that it feels really cool in daily use, and it has notched up the degree of "professionalism" that we have brought to that essential, but often botched, task of file management and backup.
About 8 months ago I joined a small automation team (up until then I had worked on most projects on my own) and I had to face up for the first time the old problem of how to keep multiple files being worked on by several different people at different locations from getting lost, overwritten or conflicted.
After a some research I settled on Subversion.
The client we use is TortoiseSVN.
Both of these are Open Source projects.
It has taken a few hours of getting my head around them, as some of the jargon was unfamiliar, but we have been using it seriously now for about 3 months and we are pretty happy with it.
The main benefit is that it protects you from yourself, ie you cannot overwrite a new file with an old one, or another user cannot overwrite your latest version with his new version. Subversion also encourages the use of a log file and allows the user to revert to any previously committed version very easily.
There are three main options to setting up a Subversion server:
1. The Repository is served as an extension to an Apache web server. This works well if you want to run a public access server and you are already competent at managing webservers.
2. For automation people it is more likely you will choose the stand-alone "svnserve" service. This is typically run on an in-house server that everyone can access, and on which the Repository is routinely backed up to tape. This mode is ideal for us as we have our own isolated control systems network that only the control's guys use.
3. Or finally you can run just TortoiseSVN to create a Repository locally on your own local hard disk (not a mapped network disk) that only you can access. This mode is actually a good way to learn Subversion and is perfectly useful in its own right.
Another major plus for Subversion is that it treats ALL files by default as binary, whereas some of the other tools about (most commonly CVS) have to choose whether they will deal with the file as text or binary. For almost almost all automation applications the binary choice is the correct one, so Subversion is ideal in this respect.
Finally I have to say that it feels really cool in daily use, and it has notched up the degree of "professionalism" that we have brought to that essential, but often botched, task of file management and backup.
Last edited: