Don’t get scared from title, I just wanted the post title to look like ad …
Firstly Definition of Version Control: Version Control is basically process of managing changes of any program, file or document in to some place. And so if we want — when we want , where we want we can reproduce the same result as it was at any given time. At high level view, Version Control is more like backup of system. That is my understanding of version control.
Uses : If you are a developer who develops code using any specific IDE, like Visual Studio, Mono, NetBeans, Eclipse or any … you always want to keep track of changed you have made during development cycle. It can be done by either remembering all changes by heart … or by keeping that project under version control system … (I dont know about you guys, but I prefer second choice ) … things get even more complicated to manage when there are multiple developers are working on same project / file. In that case version control is a great help … it can be used to keep track of what changes are made and importantly WHO made it !!! (you don’t want to be blamed for something that you have not done right ??)
Now, there are many version / revision control software are available … some are open source , some are proprietary .. some are for windows , some are for linux , some are for both !! And they are also classified how they store / manage changes … either Client / Server model (data is stored in central shared repo. e.g. MSFT Team Foundation Server, Visual Source Safe(kind of ancestor of TFS ) or my fav. Subversion) or Distributed Model (each developer has his own repo which is shared with other repo e.g. GIT)
With this background, lets talk about today’s post (yesssssssss … this is the actual beginning of post )… I am using Tortoise SVN, it is client for Subversion (now Apache Subversion) … I like to use Tortoise SVN mainly because its integration with windows shell, so I can access it via simple right click (it is very hand feature to include any dir to repo., which is good when I want to include my SQL Server’s DB Objects to version control)… and ofcourse because its open source and free …
Following are screen shots are demo of few features Tortoise SVN has to offer.
And this concludes Part I of, Version Control … Controlling Past and Present for Future …
I am not saying that I have some expert knowledge on Version Control or Tortoise SVN … I am just sharing what I have learned while using it. In next post, I will show you guys how we can use Subversion in Visual Studio 2010 for source control of our code and in SQL Server for version control database objects.
It’s Just a thought …