Думаю, почти все читающие знают, что такое Mercurial — это распределённая система контроля версий, для исходного кода и других (преимущественно текстовых) файлов. Многие ей пользуются, и знают основные команды, как то удаление/добавление файлов, создание коммита и отправка локальных изменений в другие репозитории. Однако, Mercurial имеет множество не столь известных функций и команд, которые часто достаточно полезны и удобны. Некоторые из них можно использовать сразу после установки по-умолчанию, некоторые нужно включить в настройках, а для других может потребоваться скачать дополнительное расширение.
Краткий список того, о чём пойдёт речь в статье:
- hg serve (hgweb) — встроенный веб-сервер
- расширения pager, progress и color
- hg [c]record — выбор отдельных изменений для коммита
- revsets и filesets — поиск коммитов и файлов с запросами любой сложности
- hg evolve — Changeset Evolution или же «изменяемая история»