I'm surprised again and again, when people do not
use revision control systems in software development. Also I cannot
understand not making frequently use of it. There are so many advantages
when using it. Withal it does not matter which system is used, as long
as one is used. I personally like to use subversion, but there are some
others that can be used as well. Best known revision control systems are
- Concurrent Versions System (CVS)
- Git
- Mercurial
- Subversion (SVN)
There are many advantages using revision control systems. Usually called are
- Backup functionality
- Marked software revisions
- History of changes
- Concurrent software development
Some count backup
functionality to the greatest advantage. But for me this is not the main
feature of revision control. The main feature is the history of changes. All changes can be traced. Therefor you have to check in your code with significant comment.
This is a point that is also not always done, but this should be a
matter of course. Only with a significant comment you can identify the
changes that are made. The checked in code with comment should reflect
the added functionality. So it is easy to find the location at that the
changes or added functionalities take place. It is also easy to revert
changes that made the code worse. There are also other great features of
revision control, but the main feature for me is history of changes.