47 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: Version Control System
 | ||
| localeTitle: 版本控制系统
 | ||
| ---
 | ||
| ## 版本控制系统
 | ||
| 
 | ||
| 版本控制系统(VCS),也称为源代码管理(SCM),是用于跟踪文件更改,管理版本和简化协作文件编辑的工具。 主要有两种类型的VCS:
 | ||
| 
 | ||
| *   集中版本控制系统 中央存储库具有权威性。关联体系结构是客户端/服务器。 第一个VCS(CVS,SVN ......)是集中版本控制系统。
 | ||
| *   分布式版本控制系统 多个存储库交换修改。关联体系结构主要是点对点,但可以将一个repo声明为权威。 最常用的现代VCS(Git,Mercurial ......)是分布式版本控制系统。
 | ||
| 
 | ||
| ### 为什么要用它?
 | ||
| 
 | ||
| *   **更改历史记录** - VCS使用户能够浏览和搜索使用有用信息(日期,作者...)自动记录的所有更改
 | ||
| *   **版本/标签** - 用户可以搜索/检索已标记有标签和版本名称的文件的特定状态
 | ||
| *   **分支/合并** - 分布式版本控制系统可以轻松维护文件的并行分支,并在需要时部分或完全合并它们。
 | ||
| *   **原子操作** - 所有现代VCS都提供原子操作:所有修改都保证成功或失败,确保文件始终处于一致状态。
 | ||
| 
 | ||
| ### 最流行的版本控制系统
 | ||
| 
 | ||
| *   混帐
 | ||
| 
 | ||
| _Git_是一个分布式版本控制系统,可能是目前_Mercurial_使用最多的VCS。
 | ||
| 
 | ||
| *   水银
 | ||
| 
 | ||
| _Mercurial_是一个分布式版本控制系统,可能是目前_Git_使用最多的VCS。
 | ||
| 
 | ||
| *   CVS
 | ||
| 
 | ||
| _CVS_是一个古老的SCM,在_SVN_普及之前是卓越的。 _CVS_和_SVN_现在已被弃用,转而使用分布式版本控制系统,如_Git_和_Mercurial_ 。
 | ||
| 
 | ||
| *   SVN /颠覆
 | ||
| 
 | ||
| _SVM_是继_CVS之后_的旧SCM。 最终, _SVN_因广泛采用分布式版本控制系统(如_Git_和_Mercurial)而_被弃用
 | ||
| 
 | ||
| ### 更多信息:
 | ||
| 
 | ||
| [CVS](http://savannah.nongnu.org/projects/cvs)
 | ||
| 
 | ||
| [混帐](https://git-scm.com/)
 | ||
| 
 | ||
| [水银](https://www.mercurial-scm.org/)
 | ||
| 
 | ||
| [SVN](http://subversion.tigris.org/)
 | ||
| 
 | ||
| [维基百科上的版本控制](https://en.wikipedia.org/wiki/Version_control) |