A source code management system helps program developers keep track of version history, releases, parallel versions etc. There are several in popular use.