Software Version Control
These notes describe how source repositories are used to manage source code in a FOSS development project.
Forges: Integrated Software Hosting Sites
There are several web sites that provide hosting for FOSS development projects. These sites bring together a variety of tools used in a distributed software development project, including:
- Social networking tools
- Communication tools
- Bug tracking tools
- Documentation tools
- Code management -- i.e., version control -- tools
Take a tour of these two examples:
Version Control Systems
There are many different version control systems now available, all of which do the same thing: support the collaborative software development effort by managing the different versions of the software and allowing individual contributors to merge their contributions with others.
In general, version control supports the following operations:
- Manages multiple revisions of same code base.
- Allows multiple concurrent developers.
- Manages locking, synchronization, and concurrency.
- Manages versioning history and project forking.
Here are some examples to explore: