Let’s get technical and talk about SVN repositories and subversion repositories. OK, so far we covered the basics of SEO, article marketing and what not, but recently my attention was directed to some hardships of companies when outsourcing a project, especially with web design and web development in general. I was asked by a certain new found company about synchronizing work of their outsourcing freelancers, I laughed when they told me their trouble. The fact is that they are beginners, and the fact is that they found newbie freelancers to work for them, as every web developer knows when outsourcing a project using of SVN repository is necessary. So this post is dedicated to web developer noobs, whether companies, firms or freelancers and it will cover what are SVN repositories and how are they used!
What is Subversion?
If you haven’t heard about SVN repository then you are new to web developing game, in fact not new, but never heard of it. I can understand that some web developers never used SVN repository because they didn’t have to, but the ones that never heard of it…
Subversion is an open source control system, in other words it’s free and it’s used as a, guess what, control system. Subversion repository is used to manage the files, folders, directories and the modification made to those files, folders and directories over a period of time. In other words, if your server breaks, you can use SVN repository to back up the older version or the latest backup made. Sounds useful, doesn’t it? But that is not all, subversion can be used to see the exact modifications made in the past at the date the changes were made, in fact you can cross examine the older version and the new version and directly see the changes.
The best part about SVN is that I can be used by people across the world, meaning that I can use the files from a SVN repository at the same time when a guy from Australia is, and our modifications to the same file will not fight each others, that is the beauty of it. Imagine that you need an HTML file fixed, and both of your freelancers know about it and each one of them has to change a certain part. Now in some cases their work might overlap each others, and when the first programmer uploads his version to the server it will be overwritten by the second programmer and all the work will be wasted. When using SVN repository you ensure that doesn’t happen, in fact SVN will cross reference both files and combine them if the changes made do not overlap each others, if they do, the file will be marked and the overlapping code will be displayed for changing.
If you want to learn to use SVN my advice is to download a subversion server made by its developer CollabNet or try the SilkSVN server, both of them can be installed on your machines as well as the web. For better navigation and easy use of subversion I recommend use of SVN clients such as Tortoise SVN client. In my experience Tortoise SVN is the best free client. If you know what you are doing and need a professional SVN for Dreamweaver for Windows or Macintosh, GraFX is the best there is. So once you installed your subversion server and your professional or free Tortoise SVN client you are all set and ready to go.
What can SVN Repositories be Used For?
SVN repository provides web developers with a full and complete history of changes made to the files in question, so they can easily keep track of what someone did and why for that matter. You can have dozens and hundreds of users working on the same files and not being in each others way. Your web developers can each upload the same file to the repository without messing up each others work, and the original files will still be there without fault.
I mean I don’t have to spell it out for you; SVN repository is a must if you are outsourcing your web developers. They will insure that each programmer is not fighting the other because lack of communication and they will insure you have complete overview of the changes made and the best part, you will have backup at all times. Enough said, if you don’t have a subversion setup, do it now. Get subversion server and get Tortoise SVN client and get to work, I guarantee you, SVN repository will make the entire process much easier for both you as a company and for the freelancers working on your project.