版本控制或源代码管理系统是软件开发必备的。本文为您介绍9款优秀的开源版本控制系统,它们在软件行业已经得到了广泛应用。
1.Subversion
![](https://image.shishitao.com:8440/aHR0cDovL2RsLml0ZXllLmNvbS91cGxvYWQvYXR0YWNobWVudC80ODY5MDUvYjA5MzM1MTktNzhmZC0zMGQ2LWJjNDYtYTdmNTcxYzlhOWMwLmpwZw%3D%3D.jpg?w=700)
Subversion是一个开源的版本控制系统。由CollabNet公司首创于2000年,十年中Subversion取得了令人难以置信的成功。开源社区广泛使用Subversion,诸如Apache软件基金会,Free Pascal,FreeBSD,GCC, Django, Ruby, Mono, SourceForge, ExtJS, Tigris.org, PHP and MediaWiki等项目。Google Code也用Subversion提供开源项目托管服务。
网址:http://subversion.apache.org/
2.Git
![](https://image.shishitao.com:8440/aHR0cDovL2RsLml0ZXllLmNvbS91cGxvYWQvYXR0YWNobWVudC80ODY5MTEvYmU5Zjk5YzMtN2ZlZC0zNjBmLTk0MDQtMjlhODhmN2Y1NWUwLmdpZg%3D%3D.gif?w=700)
Git是一个开源分布式的版本控制系统,从微型到超大规模的项目都可以高效处理。
网址:http://git-scm.com/
3.Darcs
![](https://image.shishitao.com:8440/aHR0cDovL2RsLml0ZXllLmNvbS91cGxvYWQvYXR0YWNobWVudC80ODY5MTMvZDQ2MzE4ZjAtN2IyYS0zOGEzLThiM2EtNzc3ZTUyNDllNzA2LmpwZw%3D%3D.jpg?w=700)
Darcs是一个分布式高级版本控制系统,运用Haskell语言开发。它类似Git,Mercurial和Bazaar。用户可拥有个人库并向其提交改进。现在*存储库也在改进,每个库是一个分支,提供支持以整合它们之间的改进。Darcs支持通过电子邮件发送改进。
网址:http://darcs.net/
4.Bazaar
![](https://image.shishitao.com:8440/aHR0cDovL2RsLml0ZXllLmNvbS91cGxvYWQvYXR0YWNobWVudC80ODY5MTUvMDliMGU4NjAtZTJkMy0zMzc0LTgwY2YtYjczZGFkNDI3NThhLmpwZw%3D%3D.jpg?w=700)
Bazaar是一个版本控制系统,可帮助你随时追踪项目的历史,并与他人开展便利地合作。无论你是一个独立开发者,一个合作型团队或分散在世界各地的开发者社区,Bazaar都能够满足你的需求。作为GNU工程的一部分,Bazaar是由Canonical赞助的免费软件。
网址:http://bazaar.canonical.com/en/
5.Mercurial
![](https://image.shishitao.com:8440/aHR0cDovL2RsLml0ZXllLmNvbS91cGxvYWQvYXR0YWNobWVudC80ODY5MTgvZmU0MmJiNGMtN2Y5Yi0zY2I0LTgzZTctZGM0MmU5YTVhODk0LmpwZw%3D%3D.jpg?w=700)
Mercurial速度快而功能强大,可高效地处理任何规模和类型的项目。每个克隆包含整个项目的历史,所以提交,分支,标签和合并可在本地方便快捷地实现。你可以使用多种工作流程,加强与扩展功能。
网址:http://mercurial.selenic.com/
6.Fossil
![](https://image.shishitao.com:8440/aHR0cDovL2RsLml0ZXllLmNvbS91cGxvYWQvYXR0YWNobWVudC80ODY5MjcvYWI5OTE4M2MtNmViZS0zYTM1LWFiMDAtNDE5ODhlZWMyZTgyLmdpZg%3D%3D.gif?w=700)
Fossil是一个像Git和Mercurial一样的分布式版本控制系统。Fossil也支持分布式错误跟踪和分布式维基。它简单,可靠性高,分布式软件配置管理。
网址:http://www.fossil-scm.org/index.html/doc/trunk/www/index.wiki
7.OpenCVS
![](https://image.shishitao.com:8440/aHR0cDovL2RsLml0ZXllLmNvbS91cGxvYWQvYXR0YWNobWVudC80ODY5MzAvMGZiNmZiM2MtZjUyMy0zZDU1LWEzZTAtMTJkMDE0ZGMyYjEwLmdpZg%3D%3D.gif?w=700)
OpenCVS是一个免费并发版本控制系统,最流行的开源版本控制软件。它可以作为客户端和服务器的存储库,并提供了在仓库中存储的数据粒度访问控制。它的目标是尽可能与其它CVS兼容,除非特殊功能降低了系统的整体安全性。
网址:http://www.opencvs.org/
8.Monotone
![](https://image.shishitao.com:8440/aHR0cDovL2RsLml0ZXllLmNvbS91cGxvYWQvYXR0YWNobWVudC80ODY5MzMvY2NiMDRjMjQtNTRkNy0zYjMwLWI5MmUtODAzYmVjYmQ5NDRhLmpwZw%3D%3D.jpg?w=700)
Monotone是一个免费的分布式版本控制系统。它提供了一个简单的单个文件版本存储,可完全离线操作和高效的点对点同步协议。它具备历史的敏感合并,轻量级分支机构,集成的代码审查和第三方测试。它使用加密版本的命名和客户端的RSA证书。
网址:http://www.monotone.ca/
9.CVS
CVS是一个版本控制系统,源配置管理(SCM)的重要组成部分。使用它,你可以记录源文件和文档的历史。CVS是一个在世界各地广泛使用的产品质量管理系统,其中包括许多*软件项目。
网址:http://www.nongnu.org/cvs
VIA:http://www.findbestopensource.com/tagged/version-control
![](https://image.shishitao.com:8440/aHR0cHM6Ly9pbWcyMDIwLmNuYmxvZ3MuY29tL2Jsb2cvMzU2OTUvMjAyMTEwLzM1Njk1LTIwMjExMDA4MTYwNjI0ODEzLTE2OTQ1OTE1OTguanBn.jpg?w=700)