Developers losing their minds because they accidentally overwrote each others work. These kind of disasters can easily be avoided, but still happen a lot. Luckily, something beautiful like version control exists.
Version control: we all do it
Probably you have, maybe without even knowing, your own kind of version control system. When you want to save different versions of a certain file, you can make a seperate maps and put them in there. Or you can give the different versions unique names. However, these solutions are very error-prone, most certainly when several people are working on the same file. One unfortunate click on ‘save’ and your previous version is gone with the wind.
Keeping track was never this easy
We as developers can’t avoid version control. But nightmares like mentioned before: we’d rather not. An impermeable version control system prevents this. Do you want to return to a previous version because later adjustments cause a bug? Want to check when which adjustment was made and why? A reliable version control system is the answer to these - and more - questions. Version control gives an overview of all the development activities. Something going wrong? No problem, we just go back to an earlier version.
Back it up
We work with an Distributed Version Control System (DVCS). Sounds a bit complicated so you can instantly forget this term. What you do have to remember, is that our developers have access to the whole codebase, not just to the latest version. The big advantage of this, is that when the central database might shut down, there will always be a complete backup. So there will never be a loss of information. Besides, this form of version control allows us to work with more than one person at the same file, at the same time. Not only can we work together on the same project, we can also see from each other what we’ve done, check each other's work and learn from this.
Version Control and DTAP
Version control and DTAP are buddies. Version control keeps track of a lot of things, including which adjustments are still in development, which adjustments are in the acceptance environment and what the latest live version is. In this way we always know what we’re doing. So no change to lose our minds; we keep our minds on developing reliable software.