Kemampuan menggunakan version control adalah kemampuan wajib yang harus dimiliki oleh tim programmer. Di seluruh dunia, ribuan programmer terlibat dalam pengembangan proyek open source, kolaborasi dalam skala raksasa seperti ini tidak mungkin dilaksanakan tanpa adanya version control. Akan terjadi bencana dan kekacauan jika kode sumber hanya diletakkan di website, kemudian dibagi ke semua programmer. Jika dua orang programmer bekerja dalam file yang sama, mereka akan saling menimpa pekerjaan temannya, dan jika terjadi kesalahan maka tidak akan mungkin mengembalikan keadaan kode ke keadaan sebelumnya tanpa usaha yang cukup besar.
Version Control dapat membantu sebuah tim pengembang perangkat lunak dengan menyediakan akses kepada setiap anggota tim tanpa harus saling menimpa pekerjaan anggota tim yang lain, seperti yang terjadi jika sebuah tim pengembang menggunakan sharing folder. Version Control mampu :
- Mencatat perubahan code dan pembuat perubahan
- Menyediakan fungsi undo untuk mengembalikan keadaan code ke titik tertentu
- Melihat riwayat perubahan code, dari pertama dibuat sampai keadaan yang sekarang
- Memungkinkan penulisan code secara paralel tanpa ada peristiwa anggota tim menimpa pekerjaan anggota tim yang lain.
Jumlah maksimal programmer yang dapat bekerja sama tanpa menggunakan version control adalah satu orang (Endy, 2006). Jika dalam sebuah tim pengembang software ada sebuah tim programmer yang lebih dari satu, version control adalah tools yang wajib digunakan.
Banyak aplikasi version control yang disiapkan, beberapa aplikasi yang cukup terkenal antara lain yaitu :
- Visual Source Safe, version control buatan microsoft. Terintegrasi dengan Visual Studio.
- CVS, version control dikembangkan oleh CollabNet yang dipimpin oleh Karl Fogel. CVS adalah version control yang dikembangkan dengan lisensi open source dan sudah sangat banyak digunakan. CVS juga mempunyai software pendukung yang sangat besar, dan juga didukung oleh hampir semua IDE besar.
- Subversion, dibikin dengan maksud untuk menggantikan CVS yang mempunyai kelemahan-kelemahan sehingga tidak cocok lagi dengan paradigma pengembangan perangkat lunak yang sedang trend saat ini. Subversion ini dikembangkan oleh CollabNet dan dibuat oleh orang yang sama yang membuat CVS, Karl fogel.