Version control is a methodology for managing projects which involves recording the history of changes of each file of the project. These changes are stored and can be viewed or recalled as desired.
Version Control Software
To manage a project with version control, you require version control software. At Phoenix Web, we use Git. Other examples include
Version Control Scenarios
Version control is hugely useful for web development. Here are some scenarios where version control comes in handy:
- Your website stops working and you need to track down the bug. You can undo changes in the project until you find the snapshot where the bug doesn’t occur. You compare that snapshot to the next snapshot where things broke. Using version control you can see what code changed to cause the problem. Voila, you’ve pinpointed the bug and can fix it.
- You have multiple developers working on a project at the same time. They can commit their work to version control and then use the software to seamlessly merge their separate copies of the project.
- If the file has changed and you had nothing to do with it, it might be malicious code being inserted by a script. Version control can easily track changes like this.
Forgoing Version Control
If you don’t use version control, your alternatives are to save a file, overwriting all previous changes or to create multiple copies of a file. For example, if you are working on a file called
work.docx you might save a file as
work3.docx or maybe you’re a little more organised and you date the file
2016-10-04-work.docx and then another file
2016-10-03-work.docx. While you can certainly work this way, it is not ideal.
Read more about version control at Git’s “What is version control” page.