Введение в Mercurial
Mercurial - это популярная распределенная система контроля версий, которая предлагает способ архивирования, а также сохранение более старых версий исходного кода. Mercurial появился в 2005 году как система управления версиями с открытым исходным кодом, как альтернатива BitKeeper с закрытым исходным кодом, и был разработан Мэттом Макколлом.
В отличие от SVN, которая представляет собой централизованную систему контроля версий, Mercurial - это распределенная система контроля версий. То есть, когда вы отправляете изменения в репозиторий, они отправляются на локальный компьютер. Из-за этого процесс становится намного быстрее, так как вы не отправляете все время на удаленный сервер (хотя это можно настроить таким образом).
Mercurial построен в основном на Python, что делает его кроссплатформенным. Это также одна из причин, по которой Mercurial в основном используется в качестве инструмента командной строки, хотя есть инструменты с графическим интерфейсом. Mercurial - это система контроля версий, используемая такими крупными брендами, как Adium, Mozilla, Netbeans, Vim, Growl и так далее. Помимо этого, многие отдельные разработчики используют Mercurial для управления своим кодом.
Особенности Mercurial:
- Распределенная архитектура:
Большинство традиционных систем контроля версий, таких как SVN, основаны на архитектуре клиент-сервер, где центральный сервер хранит обновления, сделанные для проекта. Mercurial полностью распространяется, где у каждого разработчика есть локальная копия полного проекта. Таким образом, разработчик не зависит от доступа к сети или серверу. Фиксация кода, ветвление и слияние могут быть выполнены быстрее. - Быстрый :
Реализация и структура данных Mercurial спроектированы таким образом, чтобы инструмент был достаточно быстрым, чтобы обрабатывать несколько коммитов. Различия могут возникать между ревизиями или откатываться за гораздо меньшее время, обычно за секунды. Вот почему он использовался в более крупных и сложных проектах, таких как OpenJDK или NetBeans. - Независимая платформа :
Mercurial не зависит от платформы. Следовательно, основная его часть написана на Python, а небольшая часть - на переносимом C по причинам, связанным с производительностью. По этой причине двоичные версии Mercurial доступны на всех основных платформах. - Расширяемый:
Mercurial может быть функционально расширен с помощью официальных плагинов, которые поставляются вместе с Mercurial, либо загружаются из внешних источников, либо создаются наши собственные. Расширения написаны на Python и могут изменять работу основных команд, добавлять новые команды и получать доступ ко всем основным функциям Mercurial. - Легко использовать :
Набор команд Mercurial настолько прост, что большинству пользователей SVN это очень легко. Базовый интерфейс Mercurial прост в изучении и использовании. - Открытый источник :
Mercurial доступен бесплатно и под лицензией GNU General Public License версии 2 или любой более поздней версии.