Version control allows a team of developers to work on the same project at the same time. It keeps track of every change made to every file over time.
At any time, the developer can commit to a batch of changes or roll back to a previous version when there is a problem. The system can also deal with conflicts when two developers edit the same file.
Git is a popular version control system that allows multiple users to work on the same code base. GitHub is a hosted service that uses Git for version control.