Monday, March 17, 2008

Tuesday 18th March - Subversion Workshop

NOTE: change of schedule for this weeks Tuesday workshop

We were to be looking at HTML Tables this Tuesday. However, I would like to alter this weeks schedule to look at the Subversion Version Control System (VCS) instead. We were supposed to have done this tutorial last Thursday, however the schedule has changed due to time restraints on both Tuesdays and Thursdays.

What is a VCS? It is a piece of (in Subversions case, Free and Open Source) Software that acts as a code repository where iterations of each file you add to the repository are kept, changes are logged, and allows you the ability to compare previous versions and even rollback to previous versions of each file.

Why use VCS? Quite often, people working with files will archive the current version of any given file prior to making modifications to it. Typically users append a version number or date stamp to the filename to maintain such a manual history of changes made. This is a very labour intensive, manual approach to version control, which is also fraught with error. A VCS simplifies the workflow involved, and provides the opportunity to keep a log of changes made (so that one does not need to compare two versions of a file physically to understand the changes made between them). This improves productivity. Further, where a team of people are working on one project, a VCS may allow files to be checked out and locked by individuals in the team, preventing clashing updates to files, or one person overwriting the work of another.

Why Subversion? Its free, the learning curve is not very steep, and it has a great Windows GUI (Tortoise SVN). There are also other GUI's available for those using Mac or other Unix's (such as RapidSVN). Did I say it was free? Oh, and its free...

On Tuesday we will be covering:
  • Installing Subversion and TortoiseSVN (on Windows)
  • Creating a Repository
  • Creating a project in a repository
  • Checkling the project out to create our 'working copy'
  • Making modifications to files in the working copy and committing them to the repository
  • Viewing the files change log to ascertain changes made between file versions
Understand that this is not just a coding tool. This is for anyone working with computers in just about any context, whether it be programming or design. So I strongly recommend everyone attend this workshop - Diploma students are also welcome. This is a useful tool that can save you time and headaches.

Some reading for you:

0 comments: