PHER use of Subversion
Contents
Basics
Subversion is a version control system. All PHER source materials are now held in this.
The repository is held at http://gforge.hl7.org/svn/pher and under the trunk directory in this folder, you will find folders for CMETs, Documents, Implementation Guides, POIZ (all topics) and PORR (Case Management, Investigation Request and Outbreak Management topics only).
Files held in subversion can be on the main development path, in which case they will be in the Trunk folder, or they may be in a Branch folder if they are a branch off the main development path.
You can investigate this folder structure with any internet browser. Just follow the above link.
Folder Structure
The PHER repository uses the following structure: <to be done>
Subversion Software
While an internet browser will let you access files, it will not let you save files back to the repository. For this you need a password and client software. Tortoise is the client software generally used. Follow this link to down load the package http://tortoisesvn.net/.
With this client, you will be able to manage documents in the repository from your local system.
Using Tortoise
Preparation
1) Create an empty folder where you want to place your working copies of the files from the repository.
2) Right click on this folder
3) Click on SVN Checkout
4) Change the entry in the top box to match the repository address (http://gforge.hl7.org/svn/pher).
5) Read section 5 (Daily Use Guide) of the TortoiseSVN help file. The help file can be found by going to Start -> All Programs -> TortoiseSVN -> Help.
Routine Use
Managing folders & files
Update folder:
1) Right click on the main project folder (e.g. POIZ) -> SVN Update
2) This will ensure you have the latest version of the folder structure/files within the main folder
Modify a file/folder:
1) Lock the file/folder: Right click on object -> TortoiseSVN -> Get a Lock. The lock function obeys Windows Parent-Child hierarchy behaviour. If you lock a folder, all sub-folders and files within the folder will be locked
2) Double click to open the file(s)
3) Make your changes
4) Save the file (same name)
5) Close file(s) when finish.
Saving a file/folder to the SVN server:
1) Right click on object (i.e. file/folder) -> SVN Commit
2) MUST enter a reason on changes being committed
3) Upon committing, lock will be automatically released from the object
Adding files/folder to the SVN server:
1) Drag & drop or copy the file/folder to your local standard directory folder (where you are storing the rest of your SVN folder structure
2) Right click on object -> TortoiseSVN -> Add
3) Right click on object (i.e. file/folder) -> SVN Commit
4) MUST enter a reason why artifact is being added to version control
Do's and Don'ts
Do’s:
- Update each folder prior to accessing files under the desired folder. This will ensure you have the most updated files and folders. If you do not have the most current copy, SVN will not stop you from locking and editing the file. However, SVN will notify you when trying to commit the change to the SVN repository and ask for confirmation. The answer should be “No, do not commit the changes” until you check with the last change author and/or merge your changes with the updated version on SVN.
- Lock file/folder prior to editing.
- Commit and Unlock all file(s)/folder(s) when done.
Don'ts
- Steal the lock on a document/folder if it has been locked by someone else. Contact that person to see if you can obtain the lock.
- Do not keep files/folders locked indeterminately and indefinitely.