47 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			47 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								---
							 | 
						|||
| 
								 | 
							
								title: Version Control System
							 | 
						|||
| 
								 | 
							
								localeTitle: Система управления версиями
							 | 
						|||
| 
								 | 
							
								---
							 | 
						|||
| 
								 | 
							
								## Система управления версиями
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								Системы контроля версий (VCS), также называемые «Управление исходными кодами» (SCM), являются инструментами, используемыми для отслеживания изменений в файлах, управления версиями и упрощения совместной работы с файлами. Существует, главным образом, 2 типа VCS:
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   Централизованная система контроля версий Там, где центральный репозиторий является авторитетным. Связанная архитектура - клиент / сервер. Первыми VCS (CVS, SVN ...) были Централизованная система контроля версий.
							 | 
						|||
| 
								 | 
							
								*   Система управления распределенной версией Где несколько изменений обмена репозиториев. Связанная архитектура в основном сопоставляется с одноранговым узлом, но одно репо может быть объявлено как авторитетное. Наиболее используемыми современными VCS (Git, Mercurial ...) являются система управления распределенной версией.
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								### Зачем использовать его?
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   **История изменений** - VCS позволяет пользователю просматривать и выполнять поиск всех изменений, которые автоматически записываются с полезной информацией (дата, автор ...) и
							 | 
						|||
| 
								 | 
							
								*   **Версии / теги** . Пользователь может искать / извлекать определенное состояние файлов, помеченных метками и именами версий.
							 | 
						|||
| 
								 | 
							
								*   **Ветвление / слияние** - система управления распределенной версией позволяет легко поддерживать параллельную ветвь файлов и частично или полностью объединять их при необходимости.
							 | 
						|||
| 
								 | 
							
								*   **Атомные операции.** Все современные VCS обеспечивают атомарные операции: все модификации гарантированно преуспеют или терпят неудачу в целом, гарантируя, что файлы всегда находятся в согласованном состоянии.
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								### Самая популярная система контроля версий
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   Гит
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								_Git_ - это система управления распределенной версией и, вероятно, наиболее часто используемый VCS, используемый в настоящее время с _Mercurial_ .
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   ртутный
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								_Mercurial_ - это система управления распределенной версией и, вероятно, наиболее используемый VCS, используемый в настоящее время с _Git_ .
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   CVS
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								_CVS_ - это старый SCM, который был распространен до распространения _SVN_ . _CVS_ и _SVN_ теперь устарели в пользу системы управления распределенной версией, такой как _Git_ и _Mercurial_ .
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								*   SVN / Subversion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								_SVM_ - это старый SCM, который преуспел в _CVS_ . В конечном итоге _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)
							 |