Whether you are a solo developer or work in a team one tool you need in your arsenal is source control otherwise known as revision control or version control, which to put it simply allows you to archive old copies of files as you change them and roll back to those revisions if something goes bad. It also makes deployment of changes much easier as you can track your revisions and see which files were changed or hook into the source control system and setup scripts to automatically deploy files when you commit changes to the repository. Subversion is one of the most popular and widely used version control system in use today, this is what I personally use and is also supported by Google so that is the solution I will be covering here, Google also supports Mercurial. There are other solutions such as Git, but as this is not a review of version control systems I wont go into any detail.
Another useful process for developers is code reviews, which is simply the process of asking your peers to review your code for you prior to deployment to check for issues that may otherwise be missed, improve your code or to help you with a specific issue you are having.
This is where a community like cfmldeveloper.com can really help you as you can collaborate with the other community members like one big virtual team. This is why I setup the free Google Apps in the hope that members might start to collaborate more.
If you are new to the world of source control, subversion or code reviews then don't worry, just follow the links above to read more about it and then come back here when you are ready to try it out.
I also use Tortoise SVN as my SVN client, so unless you already use another solution then I would recommend downloading Tortoise SVN as it is very intuitive and easy to use and is the most popular client for windows.
If you don't use windows then try RabbitVCS for Linux, or If your on MAC then try Syncro SVN.
If you use eclipse IDE then you can use the Subclipse plugin.
However I would suggest you stick to one solution and do not mix then, or you may end up with version compatibility issues on your local source control files.
Project hosting on Google code
You will need a Google account to use the free project hosting, if you don't have one then don't worry it is completely free, but I would recommend signing up for a FREE cfmldeveloper Google Apps account which gives you lots of other useful tools as well and will allow you to collaborate with other cfmldeveloper members.
To get started visit the Google hosting page, sign in up on the top right and then click the "learn more about project hosting" if you want more info or skip to "create new project" to get started and just fill in the simple form, it is all very self explanatory, and once done you now have your first version control project.
Now just click on the Source tab to get your repository URL
Copy the "svn checkout" url, navigate to the location on your system where you want to store your project, e.g. "c:\inetpub\wwwoort\myproject" and checkout the project using your SVN client.
With tortoise SVN just RIGHT CLICK on the folder and choose checkout
and paste in the URL.
You are now done and can start using your new SVN repository. You get a massive 2GB of space per project, a wiki, an issue tracker and code reviews.
In order to COMMIT your code you will need to supply login details, this is your Google account username (or Google Apps login), plus the googlecode password given on the above page.
The only drawback with Googlecode is that it is intended for open source projects and as a result you cannot make them private and anyone can view or checkout your repository. If this is not acceptable for you then I suggest signing up for a FREE account at ProjectLocker instead. I have been using ProjectLocker for some time now and it has been very reliable and does everything I need, but you wont be able to us ethe Google code reviews.
Google Code reviews
Project hosting on Google Code offers a code review feature that is integrated into source code browsing. It currently supports reviewing code after that code has been committed to the repository. Reviewing committed code naturally leads to discussions about further commits for further improvements.
In your project click Source –> Browse
and you will see a "Request code review" link.

For more information see "How to use Google Code's code review tool".
If you are not using the project hosting and are instead using some other 3rd party source control system, then there are many other open source solutions out there that you can use. Try HERE for a few examples.
I am currently considering installing Review board on the cfdmleveloper server for members to use. Let me know if you think this is a good idea.


Recent Comments