freeCodeCamp/guide/russian/software-engineering/version-control-system/index.md

47 lines
4.4 KiB
Markdown
Raw Normal View History

2018-10-12 20:00:59 +00:00
---
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)