Использование дополнительных возможностей
В Mercurial можно добавлять новые функции с помощью расширений.
Расширения могут добавлять новые команды, опции к существующим
командам, изменять поведение команд, реализовывать хуки.
Чтобы включить расширение "foo", включенное в дистрибутив Mercurial
или доступное по известным Python'у путям, создайте запись в вашем
файле конфигурации:
[extensions]
foo =
Можно также указать полный путь к расширению:
[extensions]
myfeature = ~/.hgext/myfeature.py
См. 'hg help config' для справки по файлам конфигурации.
Расширения не загружаются по умолчанию по многим причинам: они могут
увеличить время запуска; они могут подразумевать только использование
опытными пользователями; они могут предоставлять потенциально опасные
возможности (например, позволяя стирать или изменять историю); они
могут быть не готовы к мажорному релизу; или они могут менять
стандартное поведение Mercurial. Поэтому пользователь должен включать
расширения по мере надобности.
Чтобы явно отключить расширение, включенное в файле конфигурации
охватывающей области действия, добавьте перед ним !:
[extensions]
# отключить расширение bar, находящееся в /path/to/extension/bar.py
bar = !/path/to/extension/bar.py
# то же, но путь для расширения baz не был указан
baz = !
Включенные расширения:
- highlight
- подсветка синтаксиса для hgweb (требует Pygments)
отключенные расширения:
- absorb
- apply working directory changes to changesets (EXPERIMENTAL)
- acl
- хуки для контроля доступа к хранилищу
- amend
- provide the amend command (EXPERIMENTAL)
- automv
- check for unrecorded moves at commit time (EXPERIMENTAL)
- beautifygraph
- beautify log -G output by using Unicode characters (EXPERIMENTAL)
- blackbox
- запись событий хранилища в "черный ящик" для отладки
- bookflow
- implements bookmark-based branching (EXPERIMENTAL)
- bugzilla
- хуки для интеграции с Bugzilla bug tracker
- censor
- erase file content at a given revision
- children
- команда для отображения дочерних наборов изменений (УСТАРЕЛО)
- churn
- команда для отображения статистики об истории хранилища
- clonebundles
- advertise pre-generated bundles to seed clones
- closehead
- close arbitrary heads without checking them out first
- commitextras
- adds a new flag extras to commit (ADVANCED)
- convert
- импортирует ревизии из хранилищ других систем контроля версий в Mercurial
- eol
- автоматический перевод форматов новой строки в хранилище
- extdiff
- позволяет сравнивать ревизии с помощью внешних программ
- factotum
- http-аутентификация через factotum
- fastannotate
- yet another annotate implementation that might be faster (EXPERIMENTAL)
- fastexport
- export repositories as git fast-import stream
- fetch
- затянуть, обновиться и слить одной командой (УСТАРЕЛО)
- fix
- rewrite file content in changesets or working copy (EXPERIMENTAL)
- fsmonitor
- Faster status operations with the Watchman file monitor (EXPERIMENTAL)
- git
- grant Mercurial the ability to operate on Git repositories. (EXPERIMENTAL)
- githelp
- try mapping git commands to Mercurial commands
- gpg
- команды для подписи и проверки наборов изменений
- graphlog
- команда для просмотра графа ревизий в командной строке (УСТАРЕЛО)
- hgk
- графический обозреватель хранилища
- histedit
- интерактивное редактирование истории
- hooklib
- collection of simple hooks for common tasks (EXPERIMENTAL)
- infinitepush
- store some pushes in a remote blob store on the server (EXPERIMENTAL)
- journal
- track previous positions of bookmarks (EXPERIMENTAL)
- keyword
- выполнять подстановку ключевых слов в отслеживаемых файлах
- largefiles
- отслеживает большие бинарные файлы
- lfs
- lfs - large file support (EXPERIMENTAL)
- logtoprocess
- send ui.log() data to a subprocess (EXPERIMENTAL)
- mq
- управление стеком патчей
- narrow
- create clones which fetch history data for subset of files (EXPERIMENTAL)
- notify
- хуки для отправки уведомлений о новых изменениях по email
- pager
- browse command output with an external pager (DEPRECATED)
- patchbomb
- команда для отправки наборов изменений в виде (серии) email с патчами
- phabricator
- simple Phabricator integration (EXPERIMENTAL)
- purge
- command to delete untracked files from the working directory (DEPRECATED)
- rebase
- команда для перемещения наборов ревизий к другому предку
- record
- commands to interactively select changes for commit/qrefresh (DEPRECATED)
- releasenotes
- generate release notes from commit messages (EXPERIMENTAL)
- relink
- заново создает жесткие ссылки между клонами хранилища
- remotefilelog
- remotefilelog causes Mercurial to lazilly fetch file contents (EXPERIMENTAL)
- remotenames
- showing remotebookmarks and remotebranches in UI (EXPERIMENTAL)
- schemes
- расширяет схемы в путях сокращениями для групп хранилищ
- share
- разделить общую историю между несколькими рабочими каталогами
- show
- unified command to show various repository information (EXPERIMENTAL)
- sparse
- allow sparse checkouts of the working directory (EXPERIMENTAL)
- split
- command to split a changeset into smaller ones (EXPERIMENTAL)
- sqlitestore
- store repository data in SQLite (EXPERIMENTAL)
- strip
- strip changesets and their descendants from history (DEPRECATED)
- transplant
- команда для пересадки наборов изменений из другой ветки
- uncommit
- uncommit part or all of a local changeset (EXPERIMENTAL)
- win32mbcs
- разрешает использование путей в MBCS с проблемными кодировками
- win32text
- выполнять автоматическое преобразование формата новой строки (УСТАРЕЛО)
- zeroconf
- обнаруживать и оповещать о хранилищах в локальной сети