Mercurial: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Метка: добавление ссылки |
Метка: добавление ссылки |
||
Строка 86: | Строка 86: | ||
* [http://www.jprogers.info/2009/11/git-to-hg-install-mercurial-plugin.html Установка плагина для работы с Git репозиториями] |
* [http://www.jprogers.info/2009/11/git-to-hg-install-mercurial-plugin.html Установка плагина для работы с Git репозиториями] |
||
* [http://utp.umputun.com/podcast/utp-1/ Подкаст «UTP» — переход на распределенные системы контроля версий. Часть 1], [http://utp.umputun.com/podcast/utp-2/ Часть 2] |
* [http://utp.umputun.com/podcast/utp-1/ Подкаст «UTP» — переход на распределенные системы контроля версий. Часть 1], [http://utp.umputun.com/podcast/utp-2/ Часть 2] |
||
* [http://habrahabr.ru/blogs/development_tools/108443/ Hg Init: Часть 1. Переобучение для пользователей Subversion], [http://habrahabr.ru/blogs/development_tools/108658/ Часть 2. Основы Mercurial] |
* [http://habrahabr.ru/blogs/development_tools/108443/ Hg Init: Часть 1. Переобучение для пользователей Subversion], [http://habrahabr.ru/blogs/development_tools/108658/ Часть 2. Основы Mercurial], [http://habrahabr.ru/blogs/development_tools/108904/ Часть 3. Привыкаем работать в команде] |
||
{{Системы управления версиями}} |
{{Системы управления версиями}} |
Версия от 03:38, 29 ноября 2010
Mercurial | |
---|---|
Файл:Mercurial logo.png | |
Тип | Система управления версиями |
Разработчик | Matt Mackall |
Написана на | Python и Си |
Операционная система | Кроссплатформенное программное обеспечение |
Первый выпуск | 19 апреля 2005[1] |
Последняя версия | 1.6.4 (1 октября 2010) |
Репозиторий | repo.mercurial-scm.org/h… |
Лицензия | GNU GPL v2 |
Сайт | mercurial.selenic.com |
Медиафайлы на Викискладе |
Mercurial — (англ. Ртутный) кроссплатформенная распределённая система управления версиями, разработанная для эффективной работы с очень большими репозиториями кода. Mercurial первоначально был написан для Linux, позже портирован под Windows, Mac OS X и большинство Unix-систем. В первую очередь он является консольной программой. Все его операции запускаются параметрами программы hg, название которой взято от обозначения химического знака ртути (англ. mercury).
Описание
Система Mercurial написана на Python, хотя чувствительные к производительности части (например, своя реализация diff) выполнены в качестве Python-расширений на C. Репозитории Mercurial управляются при помощи утилиты командной строки hg
.
Наряду с традиционными возможностями систем контроля версий, Mercurial поддерживает полностью децентрализованную работу (отсутствует понятие основного хранилища кода), ветвление (возможно вести несколько веток одного проекта и копировать изменения между ветками), слияние репозиториев (чем и достигается «распределённость» работы). Поддерживается обмен данными между репозиториями через HTTP/HTTPS, SSH[2] и вручную при помощи упакованных наборов изменений.
Mercurial использует SHA1-хеши для идентификации ревизий и позволяет присваивать отдельным ревизиям индивидуальные метки.
Утилита hg
обладает компактным интерфейсом, и Mercurial считается более простой в освоении системой, чем, например, git.[3]
Дополнительные средства
В комплекте с Mercurial поставляются CGI-сценарии для предоставления веб-интерфейса к репозиториям[2].
Есть графическая оболочка TortoiseHg[4], работающая как под Windows (с интеграцией в Explorer), так и под Linux (в виде отдельного приложения[5] или с интеграцией в Gnome/Nautilus[6]).
Ряд сред разработки имеет возможности для работы с Mercurial, например Microsoft Visual Studio[7][8], IntelliJ IDEA[9][10][11], Eclipse [12], PIDA[13], NetBeans[14]. Возможна работа с Mercurial из Emacs c помощью входящего в Emacs универсального пакета VC.
Экспериментальная поддержка Mercurial есть в системе Trac[15]. Проект Redmine[16] также поддерживает репозитории Mercurial.
При помощи утилиты Tailor[17] или расширения convert[18] поддерживается конвертирование[19] репозиториев других систем контроля версий, включая CVS, Subversion, Git, Darcs, GNU Arch, Bazaar.
Проекты, использующие Mercurial
Значительное количество проектов по разработке свободного программного обеспечения использует Mercurial в качестве основной системы контроля версий.[20] В их числе:
- Mozilla и Mozdev
- OpenOffice.org[21]
- OpenJDK
- Netbeans
- OpenSolaris
- ALSA
- Xen
- Dovecot
- MoinMoin
- XINE
- wmii и dwm
- mutt
- Vim[22]
- XEmacs
- NTFS-3G
- Adium[23]
- Gajim
- Go
Кроме того, в марте 2009 года разработчики Python приняли решение о планируемом переходе на Mercurial.[24][25]
Поддерживаются Mercurial-зеркала основных репозиториев других проектов[26], например, GCC, GNU Emacs и Linux.
Примечания
- ↑ https://lkml.org/lkml/2005/4/20/45
- ↑ 1 2 Настройка сервера для работы с Mercurial (рус.)
- ↑ Сравнение Git и Mercurial в FAQ сайта Google Code (англ.)
- ↑ TortoiseHg — Mercurial
- ↑ SourceForge.net: TortoiseHg — Develop
- ↑ SourceForge.net: TortoiseHg — Develop
- ↑ VisualHG — плагин-провайдер для Microsoft Visual Studio 2008/2010
- ↑ HgSccPackage — Mercurial-плагин для Microsoft Visual Studio 2008/2010
- ↑ Mercurial Integration for IDEA
- ↑ hg4idea
- ↑ JetBrains IntelliJ IDEA Plugin Repository
- ↑ Mercurial Eclipse
- ↑ Появление поддержки Mercurial в PIDA
- ↑ Mercurial-плагин для NetBeans
- ↑ Mercurial Plugin for Trac
- ↑ Repositories in Redmine
- ↑ Tailor
- ↑ ConvertExtension в Mercurial Wiki
- ↑ RepositoryConversion в Mercurial Wiki
- ↑ Some projects that use Mercurial (англ.)
- ↑ OpenOffice.org development switches to Mercurial — GullFOSS
- ↑ Planning Vim 7.3 — vim_use | Google Groups
- ↑ Adium — Blog » Switching to Mercurial
- ↑ [Python-Dev] And the winner is…
- ↑ PEP 374 — Choosing a distributed VCS for the Python project
- ↑ Projects with synchronized Mercurial repositories (англ.)
См. также
Ссылки
- Официальные дистрибутивы для Windows и Mac OS X
- Книга «Mercurial: The Definitive Guide» (англ.)
- Распределённый контроль версий с Mercurial (рус.) — перевод книги «Distributed revision control with Mercurial» (не окончен)
- Шпаргалки (англ.) по концепциям и использованию Mercurial в разных форматах.
- Mercurial введение, основы и расширения
- Обзор Mercurial и популярных расширений
- Установка и настройка Mercurial Server'a
- Установка плагина для работы с Git репозиториями
- Подкаст «UTP» — переход на распределенные системы контроля версий. Часть 1, Часть 2
- Hg Init: Часть 1. Переобучение для пользователей Subversion, Часть 2. Основы Mercurial, Часть 3. Привыкаем работать в команде