Категории программ

Новые программы

Mercurial

Ноябрь 1, 2013 0

Mercurial (англ. ртутный, подвижный), он же Hg (от обозначения химического элемента ртути) – кроссплатформенная распределённая система управления версиями, разработанная для эффективной работы с очень большими репозиториями кода. В первую очередь она является консольной программой.

Система Mercurial написана на Python, хотя чувствительные к производительности части (например, своя реализация diff) выполнены в качестве модулей-расширений на C. Mercurial первоначально была написана для Linux, позже портирована под операционные системы семейства Microsoft Windows, Mac OS X и большинство Unix-систем. Репозитории Mercurial управляются при помощи утилиты командной строки Hg, но есть и Graphical User Interface.

Наряду с традиционными возможностями систем контроля версий, Mercurial поддерживает полностью децентрализованную работу (отсутствует понятие основного хранилища кода), ветвление (возможно вести несколько веток одного проекта и копировать изменения между ветками), слияние репозиториев (чем и достигается “распределённость” работы). Поддерживается обмен данными между репозиториями через HTTP/HTTPS, SSH и вручную при помощи упакованных наборов изменений.

Утилита Hg обладает компактным интерфейсом, и Mercurial считается более простой в освоении системой, чем, например, Git.

Дополнительные средства для Mercurial

Существует разрабатываемый консольный клиент hgtui для Linux и Microsoft Windows (с использованием Cygwin).

Возможна работа с Mercurial из GNU Emacs c помощью входящего в GNU Emacs универсального пакета VC.

Проект Redmine также поддерживает репозитории Mercurial.

Преимущества Mercurial

Высокая производительность работы с хранилищем, независимая от числа элементов в нем (O (1) revlog);
Компактное хранение данных в проиндексированном и сжатом виде;
Оптимизированный для эффективной работы с данными на жёстком диске;
Все изменения и файлы в репозитории дополнительно проиндексированы;
Для копирования данных по сети используется HTTP и SSH, данные передаются в сжатом виде.

Распределённая модель разработки позволяет участвовать в проекте неограниченному числу разработчиков;
Допускается произвольное слияния отдельных децентрализованных репозиториев, поддерживаемых отдельными разработчиками;
Объём хранилища, число файлов и зафиксированных изменений не отражается негативно на производительности;
При работе нет необходимости ждать освобождения блокировки.

Для контроля целостности данных в репозитории используется SHA1;
Хранилище реализовано в журнальном виде – данные не замещаются, а прилагаются. Ведётся журнал транзакций;
Быстрый алгоритм проверки целостности хранилища;
Встроенные средства резервного копирования и проверки целостности.

Привычный CVS-подобный набор команд;
Наличие встроенной системы подсказки;
Интегрированный веб-интерфейс;
Большой выбор Graphical User Interface.

Поддержка платформ UNIX, Mac OS X и Microsoft Windows;
Средства, упрощающие миграцию из других систем управления исходными текстами;
Поддержка нескольких моделей организации репозитория: централизованная CVS-образная, децентрализованная иерархическая и распределённая наполовину иерархическая;
Поддержка внешних обработчиков и дополнений.

Mercurial

Ссылки

Сайт Mercurial

Скачать Mercurial 32-bit

Скачать Mercurial 64-bit

Разработчику , Системы управления версиями

Оставить комментарий

*