changeset 22085:1aca2abbe13c

merge with stable
author Matt Mackall <mpm@selenic.com>
date Sat, 09 Aug 2014 16:06:01 -0500
parents ed426b011612 (current diff) 45a81266434f (diff)
children a82c5975095d
files
diffstat 1 files changed, 2789 insertions(+), 1408 deletions(-) [+]
line wrap: on
line diff
--- a/i18n/ru.po	Fri Aug 08 17:45:36 2014 -0500
+++ b/i18n/ru.po	Sat Aug 09 16:06:01 2014 -0500
@@ -21,6 +21,8 @@
 #                    Названия основных действий
 #
 # commit              — гл. фиксировать, сущ. фиксация (не «коммит», не «коммитить»)
+#                       Лучше использовать синоним "ревизия" там, где это имеется в виду.
+#                       Пример: update to commit XXX = обновиться на ревизию ХХХ
 #     commit message  — сообщение фиксации
 #     commit comment  — комментарий с сообщением фиксации (только для BugzillaExtension)
 # log                 — журнал
@@ -137,6 +139,9 @@
 # facility       ???
 # bumped         ???
 # obsolete marker маркер устаревшей ревизии
+# system-wide    общестистемный
+# bid            ???
+# divergent      расходщаяся [закладка]
 #
 #
 # === TODO ===
@@ -154,7 +159,7 @@
 # - в какой форме д.б. глаголы сообщений о текущем действии:
 #   1 л ед.ч. - загружаю обновления,
 #   1 л мн.ч - загружаем обновления, -- Так! // comment by Andrei Polushin
-#   3 л - загружаются обновления ?
+#   3 л - загружаются обновления ?  -- сейчас в основном так // demosito
 #   Сюда же относятся сообщения cannot do smth: не могу сделать что-то или что-то невозможно?
 #   Сейчас последний вариант. -- А лучше «не удаётся» // comment by Andrei Polushin
 # - внести определения согласованных терминов в hg glossary
@@ -168,13 +173,14 @@
 # - schemes - не понял, как пользоваться переменными. может, надо подкорректировать
 #   описание или добавить примеров?
 # - log message и commit message - одно и то же?
+# - backout - сейчас переводено по-разному в разных местах
 #
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: Mercurial\n"
 "Report-Msgid-Bugs-To: <mercurial-devel@selenic.com>\n"
-"POT-Creation-Date: 2013-10-07 16:00+0400\n"
+"POT-Creation-Date: 2014-08-04 19:05+0400\n"
 "PO-Revision-Date: 2011-05-12 23:48+0400\n"
 "Last-Translator: Alexander Sauta <demosito@gmail.com>\n"
 "Language-Team: Russian\n"
@@ -185,6 +191,9 @@
 "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
 "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
+msgid "VALUE"
+msgstr "ЗНАЧЕНИЕ"
+
 #, python-format
 msgid " (default: %s)"
 msgstr " (по умолчанию: %s)"
@@ -192,6 +201,13 @@
 msgid "Options"
 msgstr "Настройки"
 
+msgid ""
+"\n"
+"[+] marked option can be specified multiple times\n"
+msgstr ""
+"\n"
+"параметры, помеченные [+], могут указываться многократно\n"
+
 msgid "Commands"
 msgstr "Команды"
 
@@ -366,9 +382,6 @@
 "Пример конфигурации\n"
 "-------------------"
 
-msgid "::"
-msgstr "::"
-
 msgid "  [hooks]"
 msgstr "  [hooks]"
 
@@ -1224,7 +1237,7 @@
 "    bzurl=http://my-project.org/bugzilla\n"
 "    user=bugmail@my-project.org\n"
 "    password=plugh\n"
-"    version=xmlrpc\n"
+"    version=xmlrpc+email\n"
 "    bzemail=bugzilla@my-project.org\n"
 "    template=Changeset {node|short} in {root|basename}.\n"
 "             {hgweb}/{webroot}/rev/{node|short}\\n\n"
@@ -1235,7 +1248,7 @@
 "    bzurl=http://my-project.org/bugzilla\n"
 "    user=bugmail@my-project.org\n"
 "    password=plugh\n"
-"    version=xmlrpc\n"
+"    version=xmlrpc+email\n"
 "    bzemail=bugzilla@my-project.org\n"
 "    template=Changeset {node|short} in {root|basename}.\n"
 "             {hgweb}/{webroot}/rev/{node|short}\\n\n"
@@ -1408,6 +1421,15 @@
 msgstr ""
 "Это расширение устарело, используйте :hg:`log -r \"children(РЕВИЗИЯ)\"`.\n"
 
+msgid "REV"
+msgstr "РЕВИЗИЯ"
+
+msgid "show children of the specified revision"
+msgstr "показать дочерние наборы изменений для указанной ревизии"
+
+msgid "hg children [-r REV] [FILE]"
+msgstr "hg children [-r РЕВИЗИЯ] [ФАЙЛ]"
+
 msgid "show the children of the given or working directory revision"
 msgstr "показать дочерние ревизии для заданной ревизии"
 
@@ -1427,15 +1449,6 @@
 "    для заданного аргумента --rev).\n"
 "    "
 
-msgid "REV"
-msgstr "РЕВИЗИЯ"
-
-msgid "show children of the specified revision"
-msgstr "показать дочерние наборы изменений для указанной ревизии"
-
-msgid "hg children [-r REV] [FILE]"
-msgstr "hg children [-r РЕВИЗИЯ] [ФАЙЛ]"
-
 msgid "command to display statistics about repository history"
 msgstr "команда для отображения статистики об истории хранилища"
 
@@ -1446,87 +1459,6 @@
 msgid "analyzing"
 msgstr "анализ"
 
-msgid "histogram of changes to the repository"
-msgstr "гистограмма изменений, внесенных в хранилище"
-
-msgid ""
-"    This command will display a histogram representing the number\n"
-"    of changed lines or revisions, grouped according to the given\n"
-"    template. The default template will group changes by author.\n"
-"    The --dateformat option may be used to group the results by\n"
-"    date instead."
-msgstr ""
-"    Эта команда показывает гистограмму, представляющую количество\n"
-"    изменённых строк или ревизий, сгруппированных в соответствии с\n"
-"    заданным шаблоном. Стандартный шаблон группирует изменения по автору.\n"
-"    Опция --dateformat может быть использована, чтобы сгруппировать    "
-"результаты по дате."
-
-msgid ""
-"    Statistics are based on the number of changed lines, or\n"
-"    alternatively the number of matching revisions if the\n"
-"    --changesets option is specified."
-msgstr ""
-"    Статистика основана на количестве изменённых строк, либо\n"
-"    числе соответствующих ревизий, если задана опция\n"
-"    --changesets."
-
-msgid "    Examples::"
-msgstr "    Примеры::"
-
-msgid ""
-"      # display count of changed lines for every committer\n"
-"      hg churn -t '{author|email}'"
-msgstr ""
-"      # отобразить число изменённых строк для каждого автора\n"
-"      hg churn -t '{author|email}'"
-
-msgid ""
-"      # display daily activity graph\n"
-"      hg churn -f '%H' -s -c"
-msgstr ""
-"      # отобразить график ежедневной активности\n"
-"      hg churn -f '%H' -s -c"
-
-msgid ""
-"      # display activity of developers by month\n"
-"      hg churn -f '%Y-%m' -s -c"
-msgstr ""
-"      # отобразить активность разработчиков помесячно\n"
-"      hg churn -f '%Y-%m' -s -c"
-
-msgid ""
-"      # display count of lines changed in every year\n"
-"      hg churn -f '%Y' -s"
-msgstr ""
-"      # отобразить число изменённых строк за каждый год\n"
-"      hg churn -f '%Y' -s"
-
-msgid ""
-"    It is possible to map alternate email addresses to a main address\n"
-"    by providing a file using the following format::"
-msgstr ""
-"    Можно заменить почтовые адреса на любые другие, задав файл\n"
-"    следующего формата::"
-
-msgid "      <alias email> = <actual email>"
-msgstr "      <псевдоним адреса> = <настоящий адрес>"
-
-msgid ""
-"    Such a file may be specified with the --aliases option, otherwise\n"
-"    a .hgchurn file will be looked for in the working directory root.\n"
-"    Aliases will be split from the rightmost \"=\".\n"
-"    "
-msgstr ""
-"    Такой файл может быть задан опцией --aliases, иначе осуществляется\n"
-"    поиск файла .hgchurn в корне рабочего каталога.\n"
-"    Псевдонимы разделяются по самому правому символу \"=\".\n"
-"    "
-
-#, python-format
-msgid "skipping malformed alias: %s\n"
-msgstr "пропущен неверный псевдоним: %s\n"
-
 msgid "count rate for the specified revision or range"
 msgstr "рассчитывать статистику для заданной ревизии или диапазона"
 
@@ -1566,6 +1498,87 @@
 msgid "hg churn [-d DATE] [-r REV] [--aliases FILE] [FILE]"
 msgstr "hg churn [-d ДАТА] [-r РЕВ] [--aliases ФАЙЛ] [ФАЙЛ]"
 
+msgid "histogram of changes to the repository"
+msgstr "гистограмма изменений, внесенных в хранилище"
+
+msgid ""
+"    This command will display a histogram representing the number\n"
+"    of changed lines or revisions, grouped according to the given\n"
+"    template. The default template will group changes by author.\n"
+"    The --dateformat option may be used to group the results by\n"
+"    date instead."
+msgstr ""
+"    Эта команда показывает гистограмму, представляющую количество\n"
+"    изменённых строк или ревизий, сгруппированных в соответствии с\n"
+"    заданным шаблоном. Стандартный шаблон группирует изменения по автору.\n"
+"    Опция --dateformat может быть использована, чтобы сгруппировать    "
+"результаты по дате."
+
+msgid ""
+"    Statistics are based on the number of changed lines, or\n"
+"    alternatively the number of matching revisions if the\n"
+"    --changesets option is specified."
+msgstr ""
+"    Статистика основана на количестве изменённых строк, либо\n"
+"    числе соответствующих ревизий, если задана опция\n"
+"    --changesets."
+
+msgid "    Examples::"
+msgstr "    Примеры::"
+
+msgid ""
+"      # display count of changed lines for every committer\n"
+"      hg churn -t \"{author|email}\""
+msgstr ""
+"      # отобразить количество изменённых каждым автором строк\n"
+"      hg churn -t \"{author|email}\""
+
+msgid ""
+"      # display daily activity graph\n"
+"      hg churn -f \"%H\" -s -c"
+msgstr ""
+"      # отобразить график ежедневной активности\n"
+"      hg churn -f \"%H\" -s -c"
+
+msgid ""
+"      # display activity of developers by month\n"
+"      hg churn -f \"%Y-%m\" -s -c"
+msgstr ""
+"      # отобразить активность разработчиков помесячно\n"
+"      hg churn -f \"%Y-%m\" -s -c"
+
+msgid ""
+"      # display count of lines changed in every year\n"
+"      hg churn -f \"%Y\" -s"
+msgstr ""
+"      # отобразить количество изменённых строк за каждый год\n"
+"      hg churn -f \"%Y\" -s"
+
+msgid ""
+"    It is possible to map alternate email addresses to a main address\n"
+"    by providing a file using the following format::"
+msgstr ""
+"    Можно заменить почтовые адреса на любые другие, задав файл\n"
+"    следующего формата::"
+
+msgid "      <alias email> = <actual email>"
+msgstr "      <псевдоним адреса> = <настоящий адрес>"
+
+msgid ""
+"    Such a file may be specified with the --aliases option, otherwise\n"
+"    a .hgchurn file will be looked for in the working directory root.\n"
+"    Aliases will be split from the rightmost \"=\".\n"
+"    "
+msgstr ""
+"    Такой файл может быть задан опцией --aliases, иначе осуществляется\n"
+"    поиск файла .hgchurn в корне рабочего каталога.\n"
+"    Псевдонимы разделяются по самому правому символу \"=\".\n"
+"    "
+
+#, python-format
+msgid "skipping malformed alias: %s\n"
+msgstr "пропущен неверный псевдоним: %s\n"
+
 msgid "colorize output from some commands"
 msgstr "раскрашивает вывод некоторых команд"
 
@@ -1693,6 +1706,15 @@
 "  rebase.rebased = blue # синий\n"
 "  rebase.remaining = red bold # красный жирный"
 
+msgid ""
+"  shelve.age = cyan\n"
+"  shelve.newest = green bold\n"
+"  shelve.name = blue bold"
+msgstr ""
+"  shelve.age = cyan # сине-зеленый\n"
+"  shelve.newest = green bold # зеленый жирный\n"
+"  shelve.name = blue bold # синий жирный"
+
 msgid "  histedit.remaining = red bold"
 msgstr "  histedit.remaining = red bold # красный жирный"
 
@@ -1810,10 +1832,53 @@
 msgid "TYPE"
 msgstr "ТИП"
 
+msgid "available colors:\n"
+msgstr "доступные цвета:\n"
+
 msgid "import revisions from foreign VCS repositories into Mercurial"
 msgstr ""
 "импортирует ревизии из хранилищ других систем контроля версий в Mercurial"
 
+msgid "username mapping filename (DEPRECATED, use --authormap instead)"
+msgstr ""
+"файл переназначения имен пользователей (УСТАРЕЛО, используйте --authormap)"
+
+msgid "source repository type"
+msgstr "тип хранилища источника"
+
+msgid "destination repository type"
+msgstr "тип хранилища назначения"
+
+msgid "import up to source revision REV"
+msgstr "импортировать до ревизии источника РЕВИЗИЯ"
+
+msgid "remap usernames using this file"
+msgstr "переназначить имена пользователей используя этот файл"
+
+msgid "remap file names using contents of file"
+msgstr "переназначить имена файлов согласно файлу"
+
+msgid "splice synthesized history into place"
+msgstr "срастить синтезированную историю в заданных точках"
+
+msgid "change branch names while converting"
+msgstr "изменить имена веток при конвертации"
+
+msgid "try to sort changesets by branches"
+msgstr "попытаться отсортировать наборы изменений по веткам"
+
+msgid "try to sort changesets by date"
+msgstr "попытаться отсортировать наборы изменений по дате"
+
+msgid "preserve source changesets order"
+msgstr "сохранять порядок ревизий источника"
+
+msgid "try to reorder closed revisions"
+msgstr "пытаться переупорядочить закрытые ревизии"
+
+msgid "hg convert [OPTION]... SOURCE [DEST [REVMAP]]"
+msgstr "hg convert [ПАРАМЕТР]... ИСТОЧНИК [НАЗН [REVMAP]]"
+
 msgid "convert a foreign SCM repository to a Mercurial one."
 msgstr "Преобразовать хранилище другой SCM в хранилище Mercurial"
 
@@ -1991,17 +2056,20 @@
 
 msgid ""
 "    The ``include`` directive causes a file, or all files under a\n"
-"    directory, to be included in the destination repository, and the\n"
-"    exclusion of all other files and directories not explicitly\n"
-"    included. The ``exclude`` directive causes files or directories to\n"
+"    directory, to be included in the destination repository. The default\n"
+"    if there are no ``include`` statements is to include everything.\n"
+"    If there are any ``include`` statements, nothing else is included.\n"
+"    The ``exclude`` directive causes files or directories to\n"
 "    be omitted. The ``rename`` directive renames a file or directory if\n"
 "    it is converted. To rename from a subdirectory into the root of\n"
 "    the repository, use ``.`` as the path to rename to."
 msgstr ""
 "    Директива ``include`` означает, что в выходное хранилище\n"
 "    попадет указанный файл или каталог со всеми его файлами и\n"
-"    подкаталогами, а также что остальные файлы, не указанные явно,\n"
-"    будут проигнорированы. Директива ``exclude`` позволяет\n"
+"    подкаталогами. Если директива ``include`` отсутствует, по умолчанию\n"
+"    конвертируется все. Если присутствует хотя бы одна директива\n"
+"    ``include``, все остальное не конвертируется.\n"
+"    Директива ``exclude`` позволяет\n"
 "    игнорировать указанный файл или каталог. Директива ``rename``\n"
 "    переименовывает файл или каталог при конвертации. Чтобы\n"
 "    переместить файл из подкаталога в корень хранилища,\n"
@@ -2109,12 +2177,10 @@
 "        True или False, по умолчанию False."
 
 msgid ""
-"    :convert.hg.startrev: convert start revision and its descendants.\n"
-"        It takes a hg revision identifier and defaults to 0."
-msgstr ""
-"    :convert.hg.startrev: конвертировать указанную ревизию и все ее\n"
-"        дочерние ревизии. Принимает номер ревизии Mercurial,\n"
-"        по умолчанию 0."
+"    :convert.hg.revs: revset specifying the source revisions to convert."
+msgstr ""
+"    :convert.hg.revs: набор ревизий (revset), задающий исходные ревизии\n"
+"        для конвертации."
 
 msgid ""
 "    CVS Source\n"
@@ -2378,69 +2444,6 @@
 "        True.\n"
 "    "
 
-msgid "create changeset information from CVS"
-msgstr "получить информацию о наборе изменений из CVS"
-
-msgid ""
-"    This command is intended as a debugging tool for the CVS to\n"
-"    Mercurial converter, and can be used as a direct replacement for\n"
-"    cvsps."
-msgstr ""
-"    Эта команда используется в качестве отладочного инструмента для \n"
-"    конвертера CVS->Mercurial и может быть использована в качестве \n"
-"    замены для cvsps"
-
-msgid ""
-"    Hg debugcvsps reads the CVS rlog for current directory (or any\n"
-"    named directory) in the CVS repository, and converts the log to a\n"
-"    series of changesets based on matching commit log entries and\n"
-"    dates."
-msgstr ""
-"    Команда Mercurial debugcvsps читает журнал CVS через rlog для\n"
-"    текущего каталога (или другого указанного каталога) в хранилище\n"
-"    CVS и преобразует ее журнал в последовательность наборов изменений\n"
-"    основанных на соответствующих журнальных записях и датах."
-
-msgid "username mapping filename (DEPRECATED, use --authormap instead)"
-msgstr ""
-"файл переназначения имен пользователей (УСТАРЕЛО, используйте --authormap)"
-
-msgid "source repository type"
-msgstr "тип хранилища источника"
-
-msgid "destination repository type"
-msgstr "тип хранилища назначения"
-
-msgid "import up to target revision REV"
-msgstr "импортировать до ревизии РЕВИЗИЯ"
-
-msgid "remap usernames using this file"
-msgstr "переназначить имена пользователей используя этот файл"
-
-msgid "remap file names using contents of file"
-msgstr "переназначить имена файлов согласно файлу"
-
-msgid "splice synthesized history into place"
-msgstr "срастить синтезированную историю в заданных точках"
-
-msgid "change branch names while converting"
-msgstr "изменить имена веток при конвертации"
-
-msgid "try to sort changesets by branches"
-msgstr "попытаться отсортировать наборы изменений по веткам"
-
-msgid "try to sort changesets by date"
-msgstr "попытаться отсортировать наборы изменений по дате"
-
-msgid "preserve source changesets order"
-msgstr "сохранять порядок ревизий источника"
-
-msgid "try to reorder closed revisions"
-msgstr "пытаться переупорядочить закрытые ревизии"
-
-msgid "hg convert [OPTION]... SOURCE [DEST [REVMAP]]"
-msgstr "hg convert [ПАРАМЕТР]... ИСТОЧНИК [НАЗН [REVMAP]]"
-
 msgid "only return changes on specified branches"
 msgstr "возвращать только изменения на указанных ветках"
 
@@ -2474,6 +2477,29 @@
 msgid "hg debugcvsps [OPTION]... [PATH]..."
 msgstr "hg debugcvsps [ПАРАМЕТР]... [ПУТЬ]..."
 
+msgid "create changeset information from CVS"
+msgstr "получить информацию о наборе изменений из CVS"
+
+msgid ""
+"    This command is intended as a debugging tool for the CVS to\n"
+"    Mercurial converter, and can be used as a direct replacement for\n"
+"    cvsps."
+msgstr ""
+"    Эта команда используется в качестве отладочного инструмента для \n"
+"    конвертера CVS->Mercurial и может быть использована в качестве \n"
+"    замены для cvsps"
+
+msgid ""
+"    Hg debugcvsps reads the CVS rlog for current directory (or any\n"
+"    named directory) in the CVS repository, and converts the log to a\n"
+"    series of changesets based on matching commit log entries and\n"
+"    dates."
+msgstr ""
+"    Команда Mercurial debugcvsps читает журнал CVS через rlog для\n"
+"    текущего каталога (или другого указанного каталога) в хранилище\n"
+"    CVS и преобразует ее журнал в последовательность наборов изменений\n"
+"    основанных на соответствующих журнальных записях и датах."
+
 msgid ":svnrev: String. Converted subversion revision number."
 msgstr ":svnrev: Строка. Номер сконвертированной ревизии subversion."
 
@@ -2520,8 +2546,8 @@
 msgstr "не удается найти требуемый инструмент \"%s\""
 
 #, python-format
-msgid "splicemap entry %s is not a valid revision identifier"
-msgstr "элемент splicemap %s не является корректным идентификатором ревизии"
+msgid "%s entry %s is not a valid revision identifier"
+msgstr "элемент %s %s не является корректным идентификатором ревизии"
 
 #, python-format
 msgid "%s error:\n"
@@ -2794,6 +2820,10 @@
 msgstr "исходное хранилище не поддерживает --filemap"
 
 #, python-format
+msgid "warning: %s parent %s is missing\n"
+msgstr "внимание: отсутствует родитель ревизии %s %s\n"
+
+#, python-format
 msgid "%s does not look like a Git repository"
 msgstr "%s не похож на хранилище Git"
 
@@ -2805,6 +2835,10 @@
 msgstr "не могу прочитать объект %r в %s"
 
 #, python-format
+msgid "cannot read %r object at %s: unexpected size"
+msgstr "не могу прочитать объект %r в %s: неожиданный размер"
+
+#, python-format
 msgid "cannot read submodules config file in %s"
 msgstr "не удается прочитать файл настроек субмодулей в %s"
 
@@ -2875,6 +2909,9 @@
 msgid "%s is not a valid start revision"
 msgstr "%s не является допустимой начальной ревизией"
 
+msgid "hg.revs cannot be combined with hg.startrev or --rev"
+msgstr "hg.revs не может использоваться с hg.startrev или --rev"
+
 #, python-format
 msgid "ignoring: %s\n"
 msgstr "игнорируется: %s\n"
@@ -3162,11 +3199,9 @@
 "  native = LF"
 
 msgid ""
-".. note::\n"
 "   The rules will first apply when files are touched in the working\n"
 "   copy, e.g. by updating to null and back to tip to touch all files."
 msgstr ""
-".. note::\n"
 "   Правила будут впервые применены, когда файлы будут изменены в рабочей\n"
 "   копии, например, при обновлении на нулевую (null) и обратно на оконечную\n"
 "   (tip) ревизию."
@@ -3409,6 +3444,27 @@
 msgid "cleaning up temp directory\n"
 msgstr "очистка временного каталога\n"
 
+msgid "CMD"
+msgstr "КОМАНДА"
+
+msgid "comparison program to run"
+msgstr "запускаемая программа сравнения"
+
+msgid "OPT"
+msgstr "ОПЦИЯ"
+
+msgid "pass option to comparison program"
+msgstr "передать ОПЦИЮ программе сравнения"
+
+msgid "revision"
+msgstr "ревизия"
+
+msgid "change made by revision"
+msgstr "изменения, сделанные в ревизии"
+
+msgid "hg extdiff [OPT]... [FILE]..."
+msgstr "hg extdiff [ПАРАМЕТР]... [ФАЙЛ]..."
+
 msgid "use external program to diff repository (or selected files)"
 msgstr "Использовать внешнюю программу поиска отличий между ревизиями"
 
@@ -3445,27 +3501,6 @@
 "    ревизии, рабочая копия сравнивается с родительской ревизией\n"
 "    из хранилища."
 
-msgid "CMD"
-msgstr "КОМАНДА"
-
-msgid "comparison program to run"
-msgstr "запускаемая программа сравнения"
-
-msgid "OPT"
-msgstr "ОПЦИЯ"
-
-msgid "pass option to comparison program"
-msgstr "передать ОПЦИЮ программе сравнения"
-
-msgid "revision"
-msgstr "ревизия"
-
-msgid "change made by revision"
-msgstr "изменения, сделанные в ревизии"
-
-msgid "hg extdiff [OPT]... [FILE]..."
-msgstr "hg extdiff [ПАРАМЕТР]... [ФАЙЛ]..."
-
 #, python-format
 msgid "use %(path)s to diff repository (or selected files)"
 msgstr "использовать %(path)s для сравнения хранилища (или выбранных файлов)"
@@ -3553,10 +3588,25 @@
 msgid "pull, update and merge in one command (DEPRECATED)"
 msgstr "затянуть, обновиться и слить одной командой (УСТАРЕЛО)"
 
+msgid "a specific revision you would like to pull"
+msgstr "конкретная ревизия, которую вы хотите затянуть"
+
+msgid "invoke editor on commit messages"
+msgstr "вызвать редактор для создания сообщения фиксации"
+
+msgid "edit commit message (DEPRECATED)"
+msgstr "редактировать сообщение фиксации (УСТАРЕЛО)"
+
+msgid "switch parents when merging"
+msgstr "поменять родителей при слиянии"
+
+msgid "hg fetch [SOURCE]"
+msgstr "hg fetch [ИСТОЧНИК]"
+
 msgid "pull changes from a remote repository, merge new changes if needed."
 msgstr ""
-"затягивает изменения из отдалённого хранилища, проводит слияние "
-"при необходимости."
+"затягивает изменения из отдалённого хранилища, проводит слияние при "
+"необходимости."
 
 msgid ""
 "    This finds all changes from the repository at the specified path\n"
@@ -3648,21 +3698,6 @@
 msgstr ""
 "новый набор изменений %d:%s сливает отдалённые изменения с локальными\n"
 
-msgid "a specific revision you would like to pull"
-msgstr "конкретная ревизия, которую вы хотите затянуть"
-
-msgid "edit commit message"
-msgstr "редактировать сообщение фиксации"
-
-msgid "edit commit message (DEPRECATED)"
-msgstr "редактировать сообщение фиксации (УСТАРЕЛО)"
-
-msgid "switch parents when merging"
-msgstr "поменять родителей при слиянии"
-
-msgid "hg fetch [SOURCE]"
-msgstr "hg fetch [ИСТОЧНИК]"
-
 msgid "commands to sign and verify changesets"
 msgstr "команды для подписи и проверки наборов изменений"
 
@@ -3720,8 +3755,8 @@
 msgid "TEXT"
 msgstr "ТЕКСТ"
 
-msgid "commit message"
-msgstr "сообщение фиксации"
+msgid "use text as commit message"
+msgstr "текст сообщения фиксации"
 
 msgid "hg sign [OPTION]... [REV]..."
 msgstr "hg sign [ПАРАМЕТР]... [РЕВИЗИЯ]..."
@@ -3763,8 +3798,13 @@
 msgid "unknown signature version"
 msgstr "неизвестная версия подписи"
 
-msgid "command to view revision graphs from a shell"
-msgstr "команда для просмотра графа ревизий в командной строке"
+msgid "command to view revision graphs from a shell (DEPRECATED)"
+msgstr "команда для просмотра графа ревизий в командной строке (УСТАРЕЛО)"
+
+msgid ""
+"The functionality of this extension has been include in core Mercurial\n"
+"since version 2.3."
+msgstr "Функции этого расширения включены в ядро Mercurial с версии 2.3."
 
 msgid ""
 "This extension adds a --graph option to the incoming, outgoing and log\n"
@@ -3939,7 +3979,7 @@
 msgstr ""
 "Расширение hgk позволяет просматривать историю хранилища с использованием\n"
 "графического интерфейса. Оно требует Tcl/Tk версии 8.4 или новее (Tcl/Tk\n"
-"не входит в дистрибутив Mercurial."
+"не входит в дистрибутив Mercurial.)"
 
 msgid ""
 "hgk consists of two parts: a Tcl script that does the displaying and\n"
@@ -3991,43 +4031,6 @@
 "В контекстное меню ревизий теперь будут включены дополнительные пункты\n"
 "для запуска vdiff для выбранных или ревизий или ревизий под курсором.\n"
 
-msgid "diff trees from two commits"
-msgstr "различия деревьев при двух фиксациях"
-
-msgid "output common ancestor information"
-msgstr "вывод информации об общем предке"
-
-msgid "cat a specific revision"
-msgstr "вывести указанную ревизию"
-
-msgid "cat-file: type or revision not supplied\n"
-msgstr "cat-file: не задан тип или ревизия\n"
-
-# BUG
-msgid "aborting hg cat-file only understands commits\n"
-msgstr "прервано: hg cat-file понимает только фиксации (commits)\n"
-
-msgid "parse given revisions"
-msgstr "разбор заданных ревизий"
-
-msgid "print revisions"
-msgstr "напечатать ревизии"
-
-msgid "print extension options"
-msgstr "напечатать параметры расширения"
-
-msgid "start interactive history viewer"
-msgstr "запустить интерактивный обозреватель истории"
-
-msgid "NUM"
-msgstr "КОЛ-ВО"
-
-msgid "limit number of changes displayed"
-msgstr "ограничивать количество отображаемых изменений"
-
-msgid "hg view [-l LIMIT] [REVRANGE]"
-msgstr "hg view [-l ПРЕДЕЛ] [ДИАПАЗОН_РЕВИЗИЙ]"
-
 msgid "generate patch"
 msgstr "generate patch"
 
@@ -4046,17 +4049,27 @@
 msgid "search"
 msgstr "search"
 
-msgid "hg git-diff-tree [OPTION]... NODE1 NODE2 [FILE]..."
-msgstr "hg git-diff-tree [ПАРАМЕТР]... УЗЕЛ1 УЗЕЛ2 [ФАЙЛ]..."
+msgid "diff trees from two commits"
+msgstr "различия деревьев при двух фиксациях"
+
+msgid "hg debug-merge-base REV REV"
+msgstr "hg debug-merge-base РЕВИЗИЯ РЕВИЗИЯ"
+
+msgid "output common ancestor information"
+msgstr "вывод информации об общем предке"
 
 msgid "hg debug-cat-file [OPTION]... TYPE FILE"
 msgstr "hg debug-cat-file [ПАРАМЕТР]... ТИП ФАЙЛ"
 
-msgid "hg debug-config"
-msgstr "hg debug-config"
-
-msgid "hg debug-merge-base REV REV"
-msgstr "hg debug-merge-base РЕВИЗИЯ РЕВИЗИЯ"
+msgid "cat a specific revision"
+msgstr "вывести указанную ревизию"
+
+msgid "cat-file: type or revision not supplied\n"
+msgstr "cat-file: не задан тип или ревизия\n"
+
+# BUG
+msgid "aborting hg cat-file only understands commits\n"
+msgstr "прервано: hg cat-file понимает только фиксации (commits)\n"
 
 #. i18n: bisect changeset status
 msgid "ignored"
@@ -4065,6 +4078,9 @@
 msgid "hg debug-rev-parse REV"
 msgstr "hg debug-rev-parse РЕВИЗИЯ"
 
+msgid "parse given revisions"
+msgstr "разбор заданных ревизий"
+
 msgid "header"
 msgstr "заголовок"
 
@@ -4077,8 +4093,26 @@
 msgid "max-count"
 msgstr "максимальное количество"
 
-msgid "hg debug-rev-list [OPTION]... REV..."
-msgstr "hg debug-rev-list [ПАРАМЕТР]... РЕВИЗИЯ..."
+msgid "print revisions"
+msgstr "напечатать ревизии"
+
+msgid "hg debug-config"
+msgstr "hg debug-config"
+
+msgid "print extension options"
+msgstr "напечатать параметры расширения"
+
+msgid "NUM"
+msgstr "КОЛ-ВО"
+
+msgid "limit number of changes displayed"
+msgstr "ограничивать количество отображаемых изменений"
+
+msgid "hg view [-l LIMIT] [REVRANGE]"
+msgstr "hg view [-l ПРЕДЕЛ] [ДИАПАЗОН_РЕВИЗИЙ]"
+
+msgid "start interactive history viewer"
+msgstr "запустить интерактивный обозреватель истории"
 
 msgid "syntax highlighting for hgweb (requires Pygments)"
 msgstr "подсветка синтаксиса для hgweb (требует Pygments)"
@@ -4159,22 +4193,24 @@
 msgid ""
 " # Edit history between c561b4e977df and 7c2fd3b9020c\n"
 " #\n"
+" # Commits are listed from least to most recent\n"
+" #\n"
 " # Commands:\n"
 " #  p, pick = use commit\n"
 " #  e, edit = use commit, but stop for amending\n"
-" #  f, fold = use commit, but fold into previous commit (combines N and "
-"N-1)\n"
+" #  f, fold = use commit, but combine it with the one above\n"
 " #  d, drop = remove commit from history\n"
 " #  m, mess = edit message without changing commit content\n"
 " #"
 msgstr ""
 " # Редактирование истории между c561b4e977df и 7c2fd3b9020c\n"
 " #\n"
+" # Ревизии отсортированы от самой старой к самой свежей\n"
+" #\n"
 " # Команды:\n"
 " #  p, pick = использовать ревизию\n"
 " #  e, edit = использовать ревизию, но остановиться для внесения изменений\n"
-" #  f, fold = использовать ревизию, но совместить ее с предыдущей(объединить "
-"N и N-1)\n"
+" #  f, fold = использовать ревизию, но объединить ее с предыдущей\n"
 " #  d, drop = удалить ревизию из истории\n"
 " #  m, mess = редактировать сообщение фиксации, не изменяя содержимого "
 "ревизии\n"
@@ -4298,7 +4334,7 @@
 msgid ""
 "The ``message`` operation will give you a chance to revise a commit\n"
 "message without changing the contents. It's a shortcut for doing\n"
-"``edit`` immediately followed by ``hg histedit --continue``."
+"``edit`` immediately followed by `hg histedit --continue``."
 msgstr ""
 "Операция ``message`` позволит вам исправить сообщение фиксации без\n"
 "изменения содержимого ревизии. Это сокращенный вариант выполнения\n"
@@ -4390,21 +4426,24 @@
 msgid ""
 "# Edit history between %s and %s\n"
 "#\n"
+"# Commits are listed from least to most recent\n"
+"#\n"
 "# Commands:\n"
 "#  p, pick = use commit\n"
 "#  e, edit = use commit, but stop for amending\n"
-"#  f, fold = use commit, but fold into previous commit (combines N and N-1)\n"
+"#  f, fold = use commit, but combine it with the one above\n"
 "#  d, drop = remove commit from history\n"
 "#  m, mess = edit message without changing commit content\n"
 "#\n"
 msgstr ""
 "# Редактирование истории между %s и %s\n"
 "#\n"
+"# Ревизии отсортированы от самой старой к самой свежей\n"
+"#\n"
 "# Команды:\n"
 "#  p, pick = использовать ревизию\n"
 "#  e, edit = использовать ревизию, но остановиться для внесения изменений\n"
-"#  f, fold = использовать ревизию, но совместить с предыдущим набором "
-"изменений (склеивает N и N-1)\n"
+"#  f, fold = использовать ревизию, но объединить ее с предыдущей\n"
 "#  d, drop = удалить ревизию из истории\n"
 "#  m, mess = редактировать сообщение фиксации, не изменяя содержимого "
 "ревизии\n"
@@ -4498,13 +4537,22 @@
 "    Use \"min(outgoing() and ::.)\" or similar revset specification\n"
 "    instead of --outgoing to specify edit target revision exactly in\n"
 "    such ambiguous situation. See :hg:`help revsets` for detail about\n"
-"    selecting revisions.\n"
-"    "
+"    selecting revisions."
 msgstr ""
 "    Используйте \"min(outgoing() and ::.)\" или схожую спецификацию\n"
 "    revset вместо --outgoing, чтобы точно указать редактируемые ревизии\n"
-"    в таких неоднозначных ситуациях. О выборе ревизий см. :hg:`help "
-"revsets`.\n"
+"    в таких неоднозначных ситуациях. О выборе ревизий см. :hg:`help revsets`."
+
+msgid ""
+"    Returns 0 on success, 1 if user intervention is required (not only\n"
+"    for intentional \"edit\" command, but also for resolving unexpected\n"
+"    conflicts).\n"
+"    "
+msgstr ""
+"    Возвращает 0 в случае успеха, 1 если требуется вмешательство "
+"пользователя\n"
+"    (не только при намеренном использовании команды \"edit\", но также\n"
+"    для разрешения непредвиденных конфликтов.\n"
 "    "
 
 msgid "source has mq patches applied"
@@ -4532,14 +4580,15 @@
 msgid "histedit requires exactly one ancestor revision"
 msgstr "histedit требует ровно одну ревизию-предка"
 
+msgid "The specified revisions must have exactly one common root"
+msgstr "Заданные ревизии должны иметь ровно один общий корень"
+
 #, python-format
 msgid "%s is not an ancestor of working directory"
 msgstr "%s не является предком рабочего каталога"
 
-#, python-format
-msgid "update to %s or descendant and run \"hg histedit --continue\" again"
-msgstr ""
-"обновитеcь до %s или его потомка и выполните \"hg histedit --continue\" снова"
+msgid "use \"histedit --abort\" to clear broken state"
+msgstr "\"histedit --abort\" - сбросить признак ошибки"
 
 msgid "cannot edit history that would orphan nodes"
 msgstr "нельзя редактировать историю, если это оставляет висячие узлы"
@@ -4597,210 +4646,6 @@
 msgid "use 'hg histedit --continue' or 'hg histedit --abort'"
 msgstr "используйте 'hg histedit --continue' или 'hg histedit --abort'"
 
-msgid "accelerate status report using Linux's inotify service"
-msgstr "ускоренные уведомления об изменениях с использованием Linux inotify"
-
-msgid "start an inotify server for this repository"
-msgstr "запустить сервер inotify для данного хранилища"
-
-msgid "debugging information for inotify extension"
-msgstr "отладочная информация для расширения inotify"
-
-msgid ""
-"    Prints the list of directories being watched by the inotify server.\n"
-"    "
-msgstr ""
-"    Печатает список каталогов, отслеживаемых сервером inotify.\n"
-"    "
-
-msgid "directories being watched:\n"
-msgstr "отслеживаемые каталоги:\n"
-
-msgid "run server in background"
-msgstr "запустить сервер в фоновом режиме"
-
-msgid "used internally by daemon mode"
-msgstr "используется внутренней реализацией в режиме демона"
-
-msgid "minutes to sit idle before exiting"
-msgstr "количество минут неактивности перед выходом"
-
-msgid "name of file to write process ID to"
-msgstr "имя файла для записи ID процесса"
-
-msgid "hg inserve [OPTION]..."
-msgstr "hg inserve [ПАРАМЕТР]..."
-
-msgid "inotify-client: found dead inotify server socket; removing it\n"
-msgstr ""
-"inotify-client: обнаружен мертвый сокет inotify-сервера; закрываем его\n"
-
-#, python-format
-msgid "inotify-client: could not start inotify server: %s\n"
-msgstr "inotify-client: не удается запустить сервер inotify: %s\n"
-
-#, python-format
-msgid "inotify-client: could not talk to new inotify server: %s\n"
-msgstr ""
-"inotify-client: не удается наладить общение с новым сервером inotify: %s\n"
-
-#, python-format
-msgid "inotify-client: failed to contact inotify server: %s\n"
-msgstr "inotify-client: не удается соединиться с сервером inotify: %s\n"
-
-msgid "inotify-client: received empty answer from inotify server"
-msgstr "inotify-client: получен пустой ответ от сервера inotify"
-
-#, python-format
-msgid "(inotify: received response from incompatible server version %d)\n"
-msgstr "(inotify: получен ответ от сервера несовместимой версии %d)\n"
-
-#, python-format
-msgid "(inotify: received '%s' response when expecting '%s')\n"
-msgstr "(inotify: получен ответ '%s', ожидался '%s')\n"
-
-msgid "this system does not seem to support inotify"
-msgstr "ваша система, похоже, не поддерживает inotify"
-
-#, python-format
-msgid "*** the current per-user limit on the number of inotify watches is %s\n"
-msgstr ""
-"*** текущее предельное количество наблюдений inotify на одного пользователя "
-"- %s\n"
-
-msgid "*** this limit is too low to watch every directory in this repository\n"
-msgstr ""
-"*** этот предел слишком мал чтобы наблюдать за всеми каталогами этого "
-"хранилища\n"
-
-msgid "*** counting directories: "
-msgstr "*** подсчет каталогов: "
-
-#, python-format
-msgid "found %d\n"
-msgstr "найдено %d\n"
-
-#, python-format
-msgid "*** to raise the limit from %d to %d (run as root):\n"
-msgstr "*** чтобы поднять предел с %d до %d (с правами root):)\n"
-
-#, python-format
-msgid "***  echo %d > %s\n"
-msgstr "***  echo %d > %s\n"
-
-#, python-format
-msgid "cannot watch %s until inotify watch limit is raised"
-msgstr "невозможно отслеживать %s пока не будет повышен предел наблюдений"
-
-#, python-format
-msgid "inotify service not available: %s"
-msgstr "служба inotify недоступна: %s"
-
-#, python-format
-msgid "watching %r\n"
-msgstr "наблюдаем за %r\n"
-
-#, python-format
-msgid "watching directories under %r\n"
-msgstr "наблюдаем за каталогами в %r\n"
-
-#, python-format
-msgid "%s event: created %s\n"
-msgstr "%s событие: создан %s\n"
-
-#, python-format
-msgid "%s event: deleted %s\n"
-msgstr "%s событие: %s удален\n"
-
-#, python-format
-msgid "%s event: modified %s\n"
-msgstr "%s событие: %s изменен\n"
-
-#, python-format
-msgid "filesystem containing %s was unmounted\n"
-msgstr "файловая система, содержащая %s, была отмонтирована\n"
-
-#, python-format
-msgid "%s readable: %d bytes\n"
-msgstr "%s доступно для чтения: %d байт\n"
-
-#, python-format
-msgid "%s below threshold - unhooking\n"
-msgstr "%s достигнут предел - отцепляем хук\n"
-
-#, python-format
-msgid "%s reading %d events\n"
-msgstr "%s читает %d событий\n"
-
-#, python-format
-msgid "%s hooking back up with %d bytes readable\n"
-msgstr "%s присоединяем хук заново, можно прочитать %d байт\n"
-
-msgid "finished setup\n"
-msgstr "установка завершена\n"
-
-#, python-format
-msgid "status: %r %s -> %s\n"
-msgstr "состояние: %r %s -> %s\n"
-
-msgid "rescanning due to .hgignore change\n"
-msgstr "повторное сканирование из-за изменения .hgignore\n"
-
-msgid "cannot start: socket is already bound"
-msgstr "не удается запуститься: сокет уже привязан"
-
-#, python-format
-msgid "answering query for %r\n"
-msgstr "отвечаем на запрос для %r\n"
-
-#, python-format
-msgid "received query from incompatible client version %d\n"
-msgstr "получен запрос от клиента несовместимой версии %d\n"
-
-#, python-format
-msgid "unrecognized query type: %s\n"
-msgstr "неизвестный тип запроса: %s\n"
-
-msgid "expand expressions into changelog and summaries"
-msgstr "раскрывает выражения в журнале изменений и сводках"
-
-msgid ""
-"This extension allows the use of a special syntax in summaries, which\n"
-"will be automatically expanded into links or any other arbitrary\n"
-"expression, much like InterWiki does."
-msgstr ""
-"Это расширение позволяет использовать в сводках выражения особого вида,\n"
-"которые автоматически раскрываются в ссылки или любое другое произвольное\n"
-"выражение, как это делается в InterWiki."
-
-msgid ""
-"A few example patterns (link to bug tracking, etc.) that may be used\n"
-"in your hgrc::"
-msgstr ""
-"Примеры шаблонов (ссылка на баг-трекер и т.п.), которые могут быть\n"
-"использованы в вашем hgrc::"
-
-msgid ""
-"  [interhg]\n"
-"  issues = s!issue(\\d+)!<a href=\"http://bts/issue\\1\">issue\\1</a>!\n"
-"  bugzilla = s!((?:bug|b=|(?=#?\\d{4,}))(?:\\s*#?)(\\d+))!<a..=\\2\">\\1</a>!"
-"i\n"
-"  boldify = s!(^|\\s)#(\\d+)\\b! <b>#\\2</b>!\n"
-msgstr ""
-"  [interhg]\n"
-"  issues = s!issue(\\d+)!<a href=\"http://bts/issue\\1\">issue\\1</a>!\n"
-"  bugzilla = s!((?:bug|b=|(?=#?\\d{4,}))(?:\\s*#?)(\\d+))!<a..=\\2\">\\1</a>!"
-"i\n"
-"  boldify = s!(^|\\s)#(\\d+)\\b! <b>#\\2</b>!\n"
-
-#, python-format
-msgid "interhg: invalid pattern for %s: %s\n"
-msgstr "interhg: неверный шаблон для %s: %s\n"
-
-#, python-format
-msgid "interhg: invalid regexp for %s: %s\n"
-msgstr "interhg: неверное регулярное выражение для %s: %s\n"
-
 msgid "expand keywords in tracked files"
 msgstr "выполнять подстановку ключевых слов в отслеживаемых файлах"
 
@@ -4861,11 +4706,9 @@
 "    svn = True"
 
 msgid ""
-".. note::\n"
 "   The more specific you are in your filename patterns the less you\n"
 "   lose speed in huge repositories."
 msgstr ""
-".. note::\n"
 "   Чем более конкретны ваши шаблоны файлов, тем меньше накладные расходы\n"
 "   в больших хранилищах."
 
@@ -5406,10 +5249,6 @@
 "    Если ИСТОЧНИК не задан, будет использован путь 'default'.\n"
 "    Подробнее см. :hg:`help urls`."
 
-# does this require a translation?
-msgid "    .. container:: verbose"
-msgstr "    .. container:: verbose"
-
 msgid "      Some examples:"
 msgstr "      Несколько примеров:"
 
@@ -5468,6 +5307,16 @@
 msgid "%s does not appear to be a largefile store"
 msgstr "%s не является складом больших файлов"
 
+msgid "minimum size (MB) for files to be converted as largefiles"
+msgstr ""
+"минимальный размер (МБ), начиная с которого файлы преобразуются в большие"
+
+msgid "convert from a largefiles repo to a normal repo"
+msgstr "преобразовать из хранилища largefiles в обычное хранилище"
+
+msgid "hg lfconvert SOURCE DEST [FILE ...]"
+msgstr "hg lfconvert ИСТОЧНИК НАЗН [ФАЙЛ]"
+
 #, python-format
 msgid "%s is not a local Mercurial repo"
 msgstr "%s - не локальное хранилище Mercurial"
@@ -5527,6 +5376,12 @@
 msgid "%d largefiles updated, %d removed\n"
 msgstr "%d больших файлов загружено, %d удалено\n"
 
+msgid "pull largefiles for these revisions"
+msgstr "затянуть большие файлы для этих ревизий"
+
+msgid "-r REV... [-e CMD] [--remotecmd CMD] [SOURCE]"
+msgstr "-r РЕВ... [-e КОМ-ДА] [--remotecmd КОМ-ДА] [ИСТОЧНИК]"
+
 msgid "no revisions specified"
 msgstr "ревизии не заданы"
 
@@ -5538,22 +5393,6 @@
 msgid "%d largefiles cached\n"
 msgstr "%d больших файлов закэшировано\n"
 
-msgid "minimum size (MB) for files to be converted as largefiles"
-msgstr ""
-"минимальный размер (МБ), начиная с которого файлы преобразуются в большие"
-
-msgid "convert from a largefiles repo to a normal repo"
-msgstr "преобразовать из хранилища largefiles в обычное хранилище"
-
-msgid "hg lfconvert SOURCE DEST [FILE ...]"
-msgstr "hg lfconvert ИСТОЧНИК НАЗН [ФАЙЛ]"
-
-msgid "pull largefiles for these revisions"
-msgstr "затянуть большие файлы для этих ревизий"
-
-msgid "-r REV... [-e CMD] [--remotecmd CMD] [SOURCE]"
-msgstr "-r РЕВ... [-e КОМ-ДА] [--remotecmd КОМ-ДА] [ИСТОЧНИК]"
-
 #, python-format
 msgid "largefiles: size must be number (not %s)\n"
 msgstr "largefiles: размер должен быть числом (не %s)\n"
@@ -5616,43 +5455,41 @@
 msgid "--normal cannot be used with --large"
 msgstr "--normal нельзя использовать с --large"
 
-msgid "uncommitted local changes"
-msgstr "незафиксированные локальные изменения"
-
-# PROMPT
-#, fuzzy, python-format
-msgid ""
-"%s has been turned into a largefile\n"
-"use (l)argefile or keep as (n)ormal file?$$ &Largefile $$ &Normal file"
-msgstr ""
-"%s был преобразован в большой файл\n"
-"Использовать как большой файл:(l)argefile или оставить обычным:(n)ormal?"
-
-# PROMPT
-#, fuzzy, python-format
-msgid ""
-"%s has been turned into a normal file\n"
-"keep as (l)argefile or use (n)ormal file?$$ &Largefile $$ &Normal file"
-msgstr ""
-"%s был преобразован в обычный файл\n"
-"Оставить как большой файл:(l)argefile или использовать обычный:(n)ormal?"
-
-#, python-format
-msgid "merging %s and %s to %s\n"
-msgstr "слияние %s и %s в %s\n"
-
-#, python-format
-msgid "merging %s\n"
-msgstr "слияние %s\n"
-
-# PROMPT
-#, fuzzy, python-format
+msgid "uncommitted changes"
+msgstr "незафиксированные изменения"
+
+# PROMPT
+#, python-format
+msgid ""
+"remote turned local normal file %s into a largefile\n"
+"use (l)argefile or keep (n)ormal file?$$ &Largefile $$ &Normal file"
+msgstr ""
+"на отдаленной стороне обычный локальный файл %s был преобразован в большой\n"
+"Использовать как большой файл:(l)argefile или оставить обычным:(n)ormal?\n"
+"$$ &Largefile $$ &Normal file"
+
+# PROMPT
+#, python-format
+msgid ""
+"remote turned local largefile %s into a normal file\n"
+"keep (l)argefile or use (n)ormal file?$$ &Largefile $$ &Normal file"
+msgstr ""
+"на отдаленной стороне большой файл %s был преобразован в обычный\n"
+"Оставить как большой файл:(l)argefile или использовать обычный:(n)ormal?\n"
+"$$ &Largefile $$ &Normal file"
+
+# PROMPT
+#, python-format
 msgid ""
 "largefile %s has a merge conflict\n"
-"keep (l)ocal or take (o)ther?$$ &Local $$ &Other"
+"ancestor was %s\n"
+"keep (l)ocal %s or\n"
+"take (o)ther %s?$$ &Local $$ &Other"
 msgstr ""
 "конфликт слияния большого файла %s\n"
-"оставить локальный:(l)ocal или другой:(o)ther?"
+"Предком был %s\n"
+"оставить локальный:(l)ocal %s или другой:(o)ther %s?\n"
+"$$ &Local $$ &Other"
 
 msgid "no files to copy"
 msgstr "нет файлов для копирования"
@@ -5682,14 +5519,12 @@
 msgid "not removing %s: file is already untracked\n"
 msgstr "%s не удален, он и так не отслеживается\n"
 
-msgid "largefiles: No remote repo\n"
-msgstr "largefiles: Нет отдалённого хранилища\n"
-
 msgid "largefiles: no files to upload\n"
 msgstr "largefiles: нет файлов для загрузки\n"
 
-msgid "largefiles to upload:\n"
-msgstr "больших файлов для отправки:\n"
+#, python-format
+msgid "largefiles to upload (%d entities):\n"
+msgstr "больших файлов для отправки (%d сущностей):\n"
 
 #. i18n: column positioning for "hg summary"
 msgid "largefiles: (no remote repo)\n"
@@ -5701,8 +5536,8 @@
 
 #. i18n: column positioning for "hg summary"
 #, python-format
-msgid "largefiles: %d to upload\n"
-msgstr "largefiles: %d для загрузки\n"
+msgid "largefiles: %d entities for %d files to upload\n"
+msgstr "largefiles: %d сущностей для %d загружаемых файлов\n"
 
 #, python-format
 msgid "largefile %s is not in cache and could not be downloaded"
@@ -5712,8 +5547,8 @@
 msgstr "содержимое большого файла не совпадает с хэш-суммой"
 
 #, python-format
-msgid "largefiles: failed to put %s into store: %s"
-msgstr "largefiles: не удалось поместить %s на склад: %s"
+msgid "largefiles: failed to put %s into store: %s\n"
+msgstr "largefiles: не удалось поместить %s на склад: %s\n"
 
 #, python-format
 msgid "requested largefile %s not present in cache"
@@ -5723,8 +5558,8 @@
 msgstr "отдалённо: "
 
 #, python-format
-msgid "unexpected putlfile response: %s"
-msgstr "непредвиденный ответ при размещении файла: %s"
+msgid "unexpected putlfile response: %r\n"
+msgstr "непредвиденный ответ putlfile: %r\n"
 
 msgid "putlfile failed:"
 msgstr "не удалось выполнить putlfile:"
@@ -5740,8 +5575,8 @@
 msgstr "remotestore: не могу поместить %s на отдаленный склад %s"
 
 #, python-format
-msgid "remotestore: put %s to remote store %s"
-msgstr "remotestore: %s передается на отдаленный склад %s"
+msgid "remotestore: put %s to remote store %s\n"
+msgstr "remotestore: %s помещается на отдаленный склад %s\n"
 
 #, python-format
 msgid "remotestore: could not open file %s: %s"
@@ -5756,6 +5591,10 @@
 msgstr "Набор изменений %s: %s отсутствует\n"
 
 #, python-format
+msgid "required features are not supported in the destination: %s"
+msgstr "требуемые функции не поддерживаются в хранилище назначения: %s"
+
+#, python-format
 msgid "file \"%s\" is a largefile standin"
 msgstr "файл \"%s\" подменяет большой файл"
 
@@ -5910,12 +5749,19 @@
 msgid ""
 "make them behave as if --keep-changes were passed, and non-conflicting\n"
 "local changes will be tolerated and preserved. If incompatible options\n"
-"such as -f/--force or --exact are passed, this setting is ignored.\n"
+"such as -f/--force or --exact are passed, this setting is ignored."
 msgstr ""
 "заставляет эти команды вести себя так, как будто был указан --keep-changes,\n"
 "при этом локальные изменения без конфликтов сохраняются. Если указаны\n"
 "несовместимые параметры, такие как -f/--force и --exact, этот параметр\n"
-"игнорируется.\n"
+"игнорируется."
+
+msgid ""
+"This extension used to provide a strip command. This command now lives\n"
+"in the strip extension.\n"
+msgstr ""
+"Это расширение раньше предоставляло команду \"strip\". Сейчас эта\n"
+"команда вынесена в расширение \"strip\".\n"
 
 msgid "print first line of patch header"
 msgstr "печатать первую строку заголовка патча"
@@ -6074,12 +5920,9 @@
 msgid "working directory revision is not qtip"
 msgstr "ревизия рабочего каталога не оконечная ревизия mq (qtip)"
 
-#, python-format
-msgid "uncommitted changes in subrepository %s"
-msgstr "незафиксированные изменения в подхранилище %s"
-
-msgid "local changes found"
-msgstr "найдены локальные изменения"
+msgid "local changed subrepos found, refresh first"
+msgstr ""
+"найдены локально измененные подхранилища, необходимо сначала обновиться"
 
 #, python-format
 msgid "\"%s\" cannot be used as the name of a patch"
@@ -6111,6 +5954,10 @@
 msgid "cannot write patch \"%s\": %s"
 msgstr "невозможно записать патч \"%s\": %s"
 
+#. i18n: this message is shown in editor with "HG: " prefix
+msgid "Leave message empty to use default message."
+msgstr "Оставьте сообщение пустым, чтобы использовать сообщение по умолчанию."
+
 #, python-format
 msgid "error unlinking %s\n"
 msgstr "ошибка при удалении (unlinking) %s\n"
@@ -6766,9 +6613,6 @@
 "    раздел справки (diffs) для дополнительной информации о формате различий\n"
 "    в стиле git."
 
-msgid "option \"-e\" incompatible with \"-m\" or \"-l\""
-msgstr "параметр \"-e\" несовместим с \"-m\" или \"-l\""
-
 msgid "hg qdiff [OPTION]... [FILE]..."
 msgstr "hg qdiff [ПАРАМЕТР]... [ФАЙЛ]..."
 
@@ -6796,9 +6640,6 @@
 "    вы хотите посмотреть изменения, сделанные текущим патчем, не включая\n"
 "    изменения после последнего qrefresh."
 
-msgid "edit patch header"
-msgstr "редактировать заголовок патча"
-
 msgid "keep folded patch files"
 msgstr "оставить подшитые файлы патчей"
 
@@ -6896,12 +6737,8 @@
 "    Без аргументов печатает активных в данный момент стражей.\n"
 "    С аргументами устанавливает стражей для заданного патча."
 
-msgid ""
-"    .. note::\n"
-"       Specifying negative guards now requires '--'."
-msgstr ""
-"    .. note::\n"
-"       задание отрицательного стража теперь требует '--'."
+msgid "       Specifying negative guards now requires '--'."
+msgstr "       Задание отрицательного стража теперь требует '--'."
 
 msgid "    To set guards on another patch::"
 msgstr "    Установить стражей для другого патча::"
@@ -7072,110 +6909,6 @@
 msgid "copy %s to %s\n"
 msgstr "копирование %s в %s\n"
 
-msgid ""
-"strip specified revision (optional, can specify revisions without this "
-"option)"
-msgstr ""
-"срезать указанную ревизию (необязательный, можно задать ревизии и без этого "
-"параметра"
-
-msgid "force removal of changesets, discard uncommitted changes (no backup)"
-msgstr ""
-"принудительно изъять наборы изменений, отбросить незафиксированные изменения "
-"(без резервной копии)."
-
-msgid ""
-"bundle only changesets with local revision number greater than REV which are "
-"not descendants of REV (DEPRECATED)"
-msgstr ""
-"укомплектовать только наборы изменений с локальными номерами ревизий "
-"большими, чем РЕВ, и не являющимися потомками РЕВизии (УСТАРЕЛО)"
-
-msgid "no backups"
-msgstr "без резервного копирования"
-
-msgid "no backups (DEPRECATED)"
-msgstr "без резервного копирования (УСТАРЕЛО)"
-
-msgid "ignored  (DEPRECATED)"
-msgstr "игнорируется (УСТАРЕЛО)"
-
-msgid "do not modify working copy during strip"
-msgstr "не изменять рабочую копию во во время операции strip"
-
-msgid "remove revs only reachable from given bookmark"
-msgstr "удалить ревизии, доступные только через указанную закладку"
-
-msgid "hg strip [-k] [-f] [-n] [-B bookmark] [-r] REV..."
-msgstr "hg strip [-k] [-f] [-n] [-B закладка] [-r] РЕВИЗИЯ..."
-
-msgid "strip changesets and all their descendants from the repository"
-msgstr "срезать наборы изменений и всех их потомков из хранилища"
-
-msgid ""
-"    The strip command removes the specified changesets and all their\n"
-"    descendants. If the working directory has uncommitted changes, the\n"
-"    operation is aborted unless the --force flag is supplied, in which\n"
-"    case changes will be discarded."
-msgstr ""
-"    Команда strip удаляет указанные наборы изменений и всех их потомков.\n"
-"    Если рабочий каталог имеет незафиксированные изменения, операция\n"
-"    отменяется, если только не указан флаг --force, в случае чего\n"
-"    изменения будут отброшены."
-
-msgid ""
-"    If a parent of the working directory is stripped, then the working\n"
-"    directory will automatically be updated to the most recent\n"
-"    available ancestor of the stripped parent after the operation\n"
-"    completes."
-msgstr ""
-"    Если срезается родитель рабочего каталога, то рабочий каталог\n"
-"    будет автоматически обновлен на самого позднего предка\n"
-"    срезаемого родителя после завершения операции."
-
-msgid ""
-"    Any stripped changesets are stored in ``.hg/strip-backup`` as a\n"
-"    bundle (see :hg:`help bundle` and :hg:`help unbundle`). They can\n"
-"    be restored by running :hg:`unbundle .hg/strip-backup/BUNDLE`,\n"
-"    where BUNDLE is the bundle file created by the strip. Note that\n"
-"    the local revision numbers will in general be different after the\n"
-"    restore."
-msgstr ""
-"    Все срезанные наборы изменений сохраняются в ``.hg/strip-backup``\n"
-"    в виде комплекта (см. :hg:`help bundle` и :hg:`help unbundle`). Они\n"
-"    могут быть восстановлены с помощью :hg:`unbundle .hg/strip-backup/"
-"КОМПЛЕКТ`,\n"
-"    где КОМПЛЕКТ - это имя файла комплекта, созданного при срезании.\n"
-"    Обратите внимание, что локальные номера ревизий в общем случае будут\n"
-"    отличаться после восстановления."
-
-msgid ""
-"    Use the --no-backup option to discard the backup bundle once the\n"
-"    operation completes."
-msgstr ""
-"    Используйте параметр --no-backup чтобы удалить комплект резервного\n"
-"    восстановления сразу после завершения операции."
-
-msgid ""
-"    Strip is not a history-rewriting operation and can be used on\n"
-"    changesets in the public phase. But if the stripped changesets have\n"
-"    been pushed to a remote repository you will likely pull them again."
-msgstr ""
-"    Strip не изменяет историю, поэтому может быть использована на наборах\n"
-"    изменений в публичной фазе. Но если вырезанный набор изменений\n"
-"    был записан в отдаленное хранилище, скорее всего вы затяните его снова."
-
-#, python-format
-msgid "bookmark '%s' not found"
-msgstr "закладка '%s' не найдена"
-
-#, python-format
-msgid "bookmark '%s' deleted\n"
-msgstr "закладк '%s' удалена\n"
-
-msgid "empty revision set"
-msgstr "пустой набор ревизий"
-
 msgid "disable all guards"
 msgstr "отключить всех стражей"
 
@@ -7195,7 +6928,6 @@
 msgstr "задать или напечатать защищенные патчи для помещения в стек"
 
 # BUG: check trailing ::
-#, fuzzy
 msgid ""
 "    Use the :hg:`qguard` command to set or print guards on patch, then use\n"
 "    qselect to tell mq which guards to use. A patch will be pushed if\n"
@@ -7203,14 +6935,13 @@
 "    selected guard, but will not be pushed if any negative guards\n"
 "    match the current guard. For example::"
 msgstr ""
-"    Используйте команду :hg:`qguard` чтобы задать или напечатать стражей\n"
-"    патча, после этого используйте qselect чтобы указать mq, каких стражей\n"
-"    использовать. Патч будет помещен в стек, если у него стражей или\n"
+"    Используйте команду :hg:`qguard` чтобы задать или показать стражей\n"
+"    патча, после этого используйте qselect, чтобы указать mq, каких стражей\n"
+"    использовать. Патч будет помещен в стек, если у него нет стражей или\n"
 "    любой из положительных стражей совпадает с выбранным на данный момент\n"
 "    стражем, но не будет помещен в стек, если совпадет любой отрицательный\n"
-"    страж."
-
-# BUG: line breaks not preserved in Russian
+"    страж. Например::"
+
 msgid ""
 "        qguard foo.patch -- -stable    (negative guard)\n"
 "        qguard bar.patch    +stable    (positive guard)\n"
@@ -7893,6 +7624,23 @@
 msgstr "Если задан pager.attend, pager.ignore игнорируется."
 
 msgid ""
+"Lastly, you can enable and disable paging for individual commands with\n"
+"the attend-<command> option. This setting takes precedence over\n"
+"existing attend and ignore options and defaults::"
+msgstr ""
+"Наконец, вы можете включить или выключить просмотр для любой команды\n"
+"с помощью параметров вида attend-<команда>. Такие параметры имеют\n"
+"приоритет перед перед списками в attend и ignore и значениями по\n"
+"по умолчанию::"
+
+msgid ""
+"  [pager]\n"
+"  attend-cat = false"
+msgstr ""
+"  [pager]\n"
+"  attend-cat = false"
+
+msgid ""
 "To ignore global commands like :hg:`version` or :hg:`help`, you have\n"
 "to specify them in your user configuration file."
 msgstr ""
@@ -7902,12 +7650,14 @@
 msgid ""
 "The --pager=... option can also be used to control when the pager is\n"
 "used. Use a boolean value like yes, no, on, off, or use auto for\n"
-"normal behavior.\n"
+"normal behavior."
 msgstr ""
 "Параметр командной строки --pager=... также может использоваться, чтобы\n"
-"контролировать используемую программу просмотра. Используйте логические\n"
-"значения, такие yes (да), no (нет), on (вкл), off (выкл), либо используйте\n"
-"auto для стандартного поведения.\n"
+"контролировать, когда использовать программу просмотра. Используйте "
+"логические\n"
+"значения, такие как yes (да), no (нет), on (вкл), off (выкл), либо "
+"используйте\n"
+"auto для стандартного поведения."
 
 msgid "when to paginate (boolean, always, auto, or never)"
 msgstr ""
@@ -8269,6 +8019,9 @@
 msgid "no changes found\n"
 msgstr "изменения не найдены\n"
 
+msgid "warning: working directory has uncommitted changes\n"
+msgstr "внимание: незафиксированные изменения в рабочем каталоге\n"
+
 msgid "specify at least one changeset with -r or -o"
 msgstr "укажите хотя бы один набор изменений для -r или -o "
 
@@ -8304,9 +8057,9 @@
 "Итоговая сводка:"
 
 # PROMPT
-#, fuzzy
 msgid "are you sure you want to send (yn)?$$ &Yes $$ &No"
-msgstr "вы уверены, что хотите отправить письмо? (Y — да, N — нет)"
+msgstr ""
+"вы уверены, что хотите отправить письмо? (Y — да, N — нет)$$ &Yes $$ &No"
 
 msgid "patchbomb canceled"
 msgstr "отправка отменена"
@@ -8427,6 +8180,12 @@
 msgid "purge ignored files too"
 msgstr "зачистить также игнорируемые файлы"
 
+msgid "purge empty directories"
+msgstr "удалить пустые директории"
+
+msgid "purge files"
+msgstr "удалить файлы"
+
 msgid "print filenames instead of deleting them"
 msgstr "напечатать имена файлов вместо их удаления"
 
@@ -8449,8 +8208,8 @@
 "    протестировать локальные и незафиксированные изменения в чистом\n"
 "    во всех других отношениях дереве исходных файлов."
 
-msgid "    This means that purge will delete:"
-msgstr "    Это означает, что purge удалит:"
+msgid "    This means that purge will delete the following by default:"
+msgstr "    Это означает, что по умолчанию purge удалит:"
 
 msgid ""
 "    - Unknown files: files marked with \"?\" by :hg:`status`\n"
@@ -8474,6 +8233,15 @@
 "    - Новые файлы, добавленные в хранилище (с помощью :hg:`add`)"
 
 msgid ""
+"    The --files and --dirs options can be used to direct purge to delete\n"
+"    only files, only directories, or both. If neither option is given,\n"
+"    both will be deleted."
+msgstr ""
+"    Параметры --files и --dirs могут быть использованы для удаления\n"
+"    только файлов, только директорий, или и тех и других вместе.\n"
+"    Если ни один их этих параметров не указан, удалено будет все."
+
+msgid ""
 "    If directories are given on the command line, only files in these\n"
 "    directories are considered."
 msgstr ""
@@ -8549,9 +8317,6 @@
 "использовать текст в качестве сообщения фиксации для объединенных наборов "
 "изменений"
 
-msgid "invoke editor on commit messages"
-msgstr "вызвать редактор для создания сообщения фиксации"
-
 msgid "read collapse commit message from file"
 msgstr "взять сообщения фиксации для объединенных наборов изменений из файла"
 
@@ -8698,10 +8463,12 @@
 "    отменить с помощью --abort/-a."
 
 msgid ""
-"    Returns 0 on success, 1 if nothing to rebase.\n"
-"    "
-msgstr ""
-"    В случае успеха возвращает 0, 1 если нечего перебазировать.\n"
+"    Returns 0 on success, 1 if nothing to rebase or there are\n"
+"    unresolved conflicts.\n"
+"    "
+msgstr ""
+"    При успехе возвращает 0, 1 если нечего перебазировать, или\n"
+"    есть неразрешенные конфликты.\n"
 "    "
 
 msgid "message can only be specified with collapse"
@@ -8719,6 +8486,17 @@
 msgid "tool option will be ignored\n"
 msgstr "параметр tool будет проигнорирован\n"
 
+msgid "rebase aborted (no revision is removed, only broken state is cleared)\n"
+msgstr ""
+"перебазирование отменено (ревизии не удалены, только сброшен признак "
+"ошибки)\n"
+
+msgid "cannot continue inconsistent rebase"
+msgstr "невозможно продолжить перебазирование с нарушенной целостностью"
+
+msgid "use \"hg rebase --abort\" to clear broken state"
+msgstr "\"hg rebase --abort\" - сбросить признак ошибки"
+
 msgid "cannot specify both a source and a base"
 msgstr "нельзя задавать source и base одновременно"
 
@@ -8728,6 +8506,44 @@
 msgid "cannot specify both a revision and a source"
 msgstr "нельзя указывать одновременно ревизию и source"
 
+msgid "empty \"rev\" revision set - nothing to rebase\n"
+msgstr "пустое множество ревизий \"rev\" - нечего перебазировать\n"
+
+msgid "empty \"source\" revision set - nothing to rebase\n"
+msgstr "пустое множество ревизий \"source\" - нечего перебазировать\n"
+
+# MAYBE BUG
+msgid "empty \"base\" revision set - can't compute rebase set\n"
+msgstr ""
+"пустое множество ревизий \"base\" - невозможо определить целевые ревизии\n"
+
+#, python-format
+msgid "nothing to rebase - %s is both \"base\" and destination\n"
+msgstr ""
+"нечего перебазировать - %s одновременно и \"base\" и ревизия назначения\n"
+
+msgid "nothing to rebase - working directory parent is also destination\n"
+msgstr ""
+"нечего перебазировать - родитель рабочего каталога является\n"
+"ревизией назначения\n"
+
+#, python-format
+msgid ""
+"nothing to rebase - \"base\" %s is already an ancestor of destination %s\n"
+msgstr "нечего перебазировать - \"base\" %s уже предок ревизии назначения %s\n"
+
+#, python-format
+msgid ""
+"nothing to rebase - working directory parent is already an ancestor of "
+"destination %s\n"
+msgstr ""
+"нечего перебазировать - родитель рабочего каталога уже\n"
+"является предком ревизии назначения %s\n"
+
+#, python-format
+msgid "nothing to rebase from %s to %s\n"
+msgstr "нечего перебазировать с %s на %s\n"
+
 msgid "can't remove original changesets with unrebased descendants"
 msgstr ""
 "не удается удалить исходный набор изменений с неперебазированными потомками"
@@ -8745,6 +8561,10 @@
 msgid "see hg help phases for details"
 msgstr "подробнее см. hg help phases"
 
+#, python-format
+msgid "reopening closed branch head %s\n"
+msgstr "повторно открывается головная ревизия %s закрытой ветки\n"
+
 msgid "cannot collapse multiple named branches"
 msgstr "не могу объединить несколько именованных веток"
 
@@ -8764,6 +8584,9 @@
 msgid "rebase merging completed\n"
 msgstr "слияние перебазирования завершено\n"
 
+msgid "update back to initial working directory parent\n"
+msgstr "обновляемся обратно на исходного родителя рабочего каталога\n"
+
 msgid "rebase completed\n"
 msgstr "перебазирование завершено\n"
 
@@ -8771,8 +8594,10 @@
 msgid "%d revisions have been skipped\n"
 msgstr "было пропущено %d ревизий\n"
 
-msgid "unable to collapse, there is more than one external parent"
-msgstr "не удается объединить - более одного внешнего родителя"
+#, python-format
+msgid ""
+"unable to collapse on top of %s, there is more than one external parent: %s"
+msgstr "не удается объединить поверх %s - более одного внешнего родителя: %s"
 
 #, python-format
 msgid "cannot use revision %d as base, result would have 3 parents"
@@ -8780,6 +8605,9 @@
 "не могу использовать ревизию %d в качестве базовой, результат будет иметь 3 "
 "родителя"
 
+msgid ".hg/rebasestate is incomplete"
+msgstr ".hg/rebasestate неполон"
+
 msgid "no rebase in progress"
 msgstr "нет прерванного перебазирования"
 
@@ -8817,6 +8645,10 @@
 msgstr "--tool можно использовать только вместе с --rebase"
 
 #. i18n: column positioning for "hg summary"
+msgid "rebase: (use \"hg rebase --abort\" to clear broken state)\n"
+msgstr "rebase:     (\"hg rebase --abort\" - сбросить признак ошибки)\n"
+
+#. i18n: column positioning for "hg summary"
 #, python-format
 msgid "rebase: %s, %s (rebase --continue)\n"
 msgstr "rebase:     %s, %s (rebase --continue)\n"
@@ -8840,15 +8672,6 @@
 msgid "commands to interactively select changes for commit/qrefresh"
 msgstr "команды для интерактивного выбора изменений для commit/qrefresh"
 
-msgid "ignore white space when comparing lines"
-msgstr "игнорировать пробельные символы при сравнении строк"
-
-msgid "ignore changes in the amount of white space"
-msgstr "игнорировать изменения в количестве пробельных символов"
-
-msgid "ignore changes whose lines are all blank"
-msgstr "игнорировать изменения, состоящие только из пустых строк"
-
 msgid "this modifies a binary file (all or nothing)\n"
 msgstr "это изменяет двоичный файл (всё или ничего)\n"
 
@@ -8859,12 +8682,25 @@
 msgid "%d hunks, %d lines changed\n"
 msgstr "изменено полос: %d, строк: %d\n"
 
-msgid ""
-"[Ynesfdaq?]$$ &Yes, record this change$$ &No, skip this change$$ &Edit the "
+# Line breaks are missing?
+# PROMPT
+msgid ""
+"[Ynesfdaq?]$$ &Yes, record this change$$ &No, skip this change$$ &Edit this "
 "change manually$$ &Skip remaining changes to this file$$ Record remaining "
 "changes to this &file$$ &Done, skip remaining changes and files$$ Record "
-"&all changes to all remaining files$$ &Quit, recording no changes$$ &?"
-msgstr ""
+"&all changes to all remaining files$$ &Quit, recording no changes$$ &? "
+"(display help)"
+msgstr ""
+"[Ynesfdaq?]\n"
+"$$ &Yes - да, записать это изменение\n"
+"$$ &No - нет, пропуситить это изменение\n"
+"$$ &Edit - редактировать изменение вручную\n"
+"$$ &Skip - пропустить оставшиеся изменения этого файла\n"
+"$$ &file - записать оставшиеся изменения этого файла\n"
+"$$ &Done - пропустить оставшиеся изменения и файлы\n"
+"$$ &all - записать все изменения всех оставшихся файлов\n"
+"$$ &Quit - выйти, ничего не записывая\n"
+"$$ &? (показать справку)"
 
 msgid "cannot edit patch for whole file"
 msgstr "нельзя редактировать патч для целого файла"
@@ -8976,6 +8812,9 @@
 msgid "    This command is not available when committing a merge."
 msgstr "    Эта команда не доступна при фиксации слияния"
 
+msgid "hg qrecord [OPTION]... PATCH [FILE]..."
+msgstr "hg qrecord [ПАРАМЕТР]... ПАТЧ [ФАЙЛ]..."
+
 msgid "interactively record a new patch"
 msgstr "интерактивно записать новый патч"
 
@@ -9002,15 +8841,15 @@
 msgid "no changes to record\n"
 msgstr "нет изменений для записи\n"
 
-msgid "hg qrecord [OPTION]... PATCH [FILE]..."
-msgstr "hg qrecord [ПАРАМЕТР]... ПАТЧ [ФАЙЛ]..."
-
 msgid "interactively select changes to refresh"
 msgstr "интерактивно выбирать изменения для обновления (refresh)"
 
 msgid "recreates hardlinks between repository clones"
 msgstr "заново создает жесткие ссылки между клонами хранилища"
 
+msgid "[ORIGIN]"
+msgstr "[ИСТОЧНИК]"
+
 msgid "recreate hardlinks between two repositories"
 msgstr "заново создать жесткие ссылки между двумя хранилищами"
 
@@ -9078,6 +8917,9 @@
 msgid "there is nothing to relink\n"
 msgstr "нет файлов для пересоздания ссылок\n"
 
+msgid "source and destination are on different devices"
+msgstr "исходное и выходное хранилища на разных устройствах"
+
 #, python-format
 msgid "tip has %d files, estimated total number of files: %s\n"
 msgstr ""
@@ -9095,9 +8937,6 @@
 msgid "collected %d candidate storage files\n"
 msgstr "отобрано %d файлов хранилища - кандидатов\n"
 
-msgid "source and destination are on different devices"
-msgstr "исходное и выходное хранилища на разных устройствах"
-
 msgid "pruning"
 msgstr "отбрасываем лишние файлы"
 
@@ -9113,9 +8952,6 @@
 msgid "relinked %d files (%s reclaimed)\n"
 msgstr "пересозданы ссылки для %d файлов (%s освобождено)\n"
 
-msgid "[ORIGIN]"
-msgstr "[ИСТОЧНИК]"
-
 msgid "extend schemes with shortcuts to repository swarms"
 msgstr "расширяет схемы в путях сокращениями для групп хранилищ"
 
@@ -9202,6 +9038,12 @@
 msgid "share a common history between several working directories"
 msgstr "разделить общую историю между несколькими рабочими каталогами"
 
+msgid "do not create a working copy"
+msgstr "не создавать рабочую копию"
+
+msgid "[-U] SOURCE [DEST]"
+msgstr "[-U] ИСТОЧНИК [НАЗНАЧЕНИЕ]"
+
 msgid "create a new shared repository"
 msgstr "создать новое разделяемое хранилище"
 
@@ -9213,7 +9055,6 @@
 "    свою историю с другим хранилищем."
 
 msgid ""
-"    .. note::\n"
 "       using rollback or extensions that destroy/modify history (mq,\n"
 "       rebase, etc.) can cause considerable confusion with shared\n"
 "       clones. In particular, if two shared clones are both updated to\n"
@@ -9224,7 +9065,6 @@
 "       the broken clone to reset it to a changeset that still exists.\n"
 "    "
 msgstr ""
-"    .. note::\n"
 "       использование rollback или расширений, которые стирают/изменяют\n"
 "       историю (mq, rebase и т.п.), может создать определенную путаницу\n"
 "       с разделяемыми клонами. В частности, если два разделяемых клона\n"
@@ -9250,11 +9090,410 @@
 msgid "this is not a shared repo"
 msgstr "это не разделяемое хранилище"
 
-msgid "do not create a working copy"
-msgstr "не создавать рабочую копию"
-
-msgid "[-U] SOURCE [DEST]"
-msgstr "[-U] ИСТОЧНИК [НАЗНАЧЕНИЕ]"
+msgid "save and restore changes to the working directory"
+msgstr "отложить и восстановить изменения рабочего каталога"
+
+msgid ""
+"The \"hg shelve\" command saves changes made to the working directory\n"
+"and reverts those changes, resetting the working directory to a clean\n"
+"state."
+msgstr ""
+"Команда \"hg shelve\" сохраняет изменения рабочего каталога и отменяет\n"
+"эти изменения, возвращая рабочий каталог в изначальное состояние."
+
+msgid ""
+"Later on, the \"hg unshelve\" command restores the changes saved by \"hg\n"
+"shelve\". Changes can be restored even after updating to a different\n"
+"parent, in which case Mercurial's merge machinery will resolve any\n"
+"conflicts if necessary."
+msgstr ""
+"После, команда \"hg unshelve\" возвращает состояние, сохраненное с помощью\n"
+"\"hg shelve\". Изменения могут быть восстановлены даже после обновления\n"
+"на другого родителя, в этом случае механизм слияния Mercurial разрешит\n"
+"конфликты при необходимости."
+
+msgid ""
+"You can have more than one shelved change outstanding at a time; each\n"
+"shelved change has a distinct name. For details, see the help for \"hg\n"
+"shelve\".\n"
+msgstr ""
+"Одновременно можно иметь несколько отложенных изменений, каждое из\n"
+"которых имеет уникальное имя. Подробнее см. справку по \"hg shelve\".\n"
+
+#, python-format
+msgid "shelved change '%s' not found"
+msgstr "отложенное изменение '%s' не найдено"
+
+msgid ""
+"this version of shelve is incompatible with the version used in this repo"
+msgstr ""
+"эта версия shelve несовместима с версией, используемой в этом хранилище"
+
+msgid "cannot shelve while merging"
+msgstr "невозможно отложить изменения во время слияния"
+
+#, python-format
+msgid "a shelved change named '%s' already exists"
+msgstr "отложенное изменение с именем '%s' уже существует"
+
+#, python-format
+msgid "too many shelved changes named '%s'"
+msgstr "слишком много отложенных изменений с именем '%s'"
+
+msgid "shelved change names may not contain slashes"
+msgstr "имя отложенного изменения не может содержать символ '/'"
+
+msgid "shelved change names may not start with '.'"
+msgstr "имя отложенного изменения не может начинаться с '.'"
+
+#, python-format
+msgid "nothing changed (%d missing files, see 'hg status')\n"
+msgstr "нет изменений (%d файлов отсутствует, см. 'hg status')\n"
+
+msgid "nothing changed\n"
+msgstr "нет изменений\n"
+
+#, python-format
+msgid "shelved as %s\n"
+msgstr "отложено как %s\n"
+
+msgid "no shelved changes specified!"
+msgstr "отложенных изменений не задано!"
+
+msgid "working directory parents do not match unshelve state"
+msgstr "родители рабочего каталога не соответствуют состоянию unshelve"
+
+#, python-format
+msgid "unshelve of '%s' aborted\n"
+msgstr "восстановление '%s' отменено\n"
+
+msgid "unresolved conflicts, can't continue"
+msgstr "неразрешенные конфликты, продолжение невозможно"
+
+msgid "see 'hg resolve', then 'hg unshelve --continue'"
+msgstr "см. 'hg resolve', потом 'hg unshelve --continue'"
+
+#, python-format
+msgid "unshelve of '%s' complete\n"
+msgstr "восстановление '%s' завершено\n"
+
+msgid "abort an incomplete unshelve operation"
+msgstr "отменить незавершенное восстановление"
+
+msgid "continue an incomplete unshelve operation"
+msgstr "продолжить незавершенное восстановление"
+
+msgid "keep shelve after unshelving"
+msgstr "сохранить комплект изменения после восстановления"
+
+msgid "set date for temporary commits (DEPRECATED)"
+msgstr "установить дату для временных ревизий (УСТАРЕЛО)"
+
+msgid "hg unshelve [SHELVED]"
+msgstr "hg unshelve [СОХРАНЕННОЕ]"
+
+msgid "restore a shelved change to the working directory"
+msgstr "восстановить отложенные изменения в рабочий каталог"
+
+msgid ""
+"    This command accepts an optional name of a shelved change to\n"
+"    restore. If none is given, the most recent shelved change is used."
+msgstr ""
+"    Эта команда принимает необязательное имя отложенного изменения\n"
+"    для восстановления. Если не задано, используется последнее отложенное\n"
+"    изменение."
+
+msgid ""
+"    If a shelved change is applied successfully, the bundle that\n"
+"    contains the shelved changes is deleted afterwards."
+msgstr ""
+"    Если отложенное изменение успешно применено, комплект (bundle),\n"
+"    содержащий это изменение, удаляется."
+
+msgid ""
+"    Since you can restore a shelved change on top of an arbitrary\n"
+"    commit, it is possible that unshelving will result in a conflict\n"
+"    between your changes and the commits you are unshelving onto. If\n"
+"    this occurs, you must resolve the conflict, then use\n"
+"    ``--continue`` to complete the unshelve operation. (The bundle\n"
+"    will not be deleted until you successfully complete the unshelve.)"
+msgstr ""
+"    Поскольку вы можете восстановить отложенное изменение поверх\n"
+"    произвольной ревизии, между ними возможен конфликт.\n"
+"    В этом случае вам\n"
+"    необходимо разрешить конфликт, после чего использовать ``--continue``\n"
+"    для продолжения восстановления. (Комплект (bundle) не будет удален\n"
+"    до успешного звершения восстановления.)"
+
+msgid ""
+"    (Alternatively, you can use ``--abort`` to abandon an unshelve\n"
+"    that causes a conflict. This reverts the unshelved changes, and\n"
+"    does not delete the bundle.)\n"
+"    "
+msgstr ""
+"    (Либо можно использовать ``--abort`` чтобы прекратить восстановление,\n"
+"    вызывающее конфликт. Это отменит неотложенные изменения и комплект "
+"(bundle)\n"
+"    не будет удален.\n"
+"    "
+
+msgid "cannot combine abort/continue with naming a shelved change"
+msgstr "нельзя указывать имя отложенного изменения с abort/continue"
+
+msgid "no unshelve operation underway"
+msgstr "нет текущей операции восстановления"
+
+msgid "can only unshelve one change at a time"
+msgstr "можно восстанавливать только одно изменение за раз"
+
+msgid "no shelved changes to apply!"
+msgstr "нет отложенных изменений!"
+
+#, python-format
+msgid "unshelving change '%s'\n"
+msgstr "восстановление отложенного изменения '%s'\n"
+
+msgid ""
+"temporarily committing pending changes (restore with 'hg unshelve --abort')\n"
+msgstr ""
+"временно фиксируются изменения (можно восстановить командой 'hg unshelve --"
+"abort')\n"
+
+msgid "rebasing shelved changes\n"
+msgstr "перебазирование отложенных изменений\n"
+
+msgid "unresolved conflicts (see 'hg resolve', then 'hg unshelve --continue')"
+msgstr ""
+"неразрешенные конфликты ( см. 'hg resolve', потом 'hg unshelve --continue')"
+
+msgid "mark new/missing files as added/removed before shelving"
+msgstr ""
+"пометить новые/недостающие файлы как добавленные/удаленные перед "
+"откладыванием"
+
+msgid "delete all shelved changes"
+msgstr "удалить все отложенные изменения"
+
+msgid "shelve with the specified commit date"
+msgstr "отложить с указанной датой фиксации"
+
+msgid "delete the named shelved change(s)"
+msgstr "удалить указанные отложенные изменения"
+
+msgid "list current shelves"
+msgstr "список отложенных изменений"
+
+msgid "use text as shelve message"
+msgstr "текст сообщения отложенного изменения"
+
+msgid "use the given name for the shelved commit"
+msgstr "использовать указанное имя для отложенной ревизии"
+
+msgid "show patch"
+msgstr "показать патч"
+
+msgid "output diffstat-style summary of changes"
+msgstr "отображать сводку изменений в стиле diffstat"
+
+msgid "hg shelve [OPTION]... [FILE]..."
+msgstr "hg shelve [ПАРАМЕТР]... [ФАЙЛ]..."
+
+msgid "save and set aside changes from the working directory"
+msgstr "сохранить и отложить изменения из рабочего каталога"
+
+msgid ""
+"    Shelving takes files that \"hg status\" reports as not clean, saves\n"
+"    the modifications to a bundle (a shelved change), and reverts the\n"
+"    files so that their state in the working directory becomes clean."
+msgstr ""
+"    Операция shelve берет файлы, которые команда \"hg status\" считает\n"
+"    измененными, сохраняет их изменения в комплект (bundle) и "
+"восстанавливает\n"
+"    их до состояния родителя."
+
+msgid ""
+"    To restore these changes to the working directory, using \"hg\n"
+"    unshelve\"; this will work even if you switch to a different\n"
+"    commit."
+msgstr ""
+"    Чтобы восстановить эти изменения в рабочем каталоге, используется\n"
+"    команда \"hg unshelve\"; это работает, даже если обновлялись на\n"
+"    другую ревизию."
+
+msgid ""
+"    When no files are specified, \"hg shelve\" saves all not-clean\n"
+"    files. If specific files or directories are named, only changes to\n"
+"    those files are shelved."
+msgstr ""
+"    Если файлы не заданы, \"hg shelve\" сохраняет все измененные файлы.\n"
+"    В противном случае будут отложены изменения только заданных файлов\n"
+"    и диркторий."
+
+msgid ""
+"    Each shelved change has a name that makes it easier to find later.\n"
+"    The name of a shelved change defaults to being based on the active\n"
+"    bookmark, or if there is no active bookmark, the current named\n"
+"    branch.  To specify a different name, use ``--name``."
+msgstr ""
+"    Каждое отложенное изменение имеет имя, позволяющее легче найти его\n"
+"    в дальнейшем. По умолчанию имя будет основано на имени текущей\n"
+"    закладки, при отсутствии закладки - на имени текущей ветки.\n"
+"    Можно задать свое имя с помощью ``--name``."
+
+msgid ""
+"    To see a list of existing shelved changes, use the ``--list``\n"
+"    option. For each shelved change, this will print its name, age,\n"
+"    and description; use ``--patch`` or ``--stat`` for more details."
+msgstr ""
+"    Посмотреть список отложенных изменений можно с помощью параметра\n"
+"    ``--list``. Для каждого отложенного изменения отображается его имя,\n"
+"    возраст и описание; можно использовать ``--patch`` or ``--stat`` для\n"
+"    дополнительной информации."
+
+msgid ""
+"    To delete specific shelved changes, use ``--delete``. To delete\n"
+"    all shelved changes, use ``--cleanup``.\n"
+"    "
+msgstr ""
+"    Для удаления отложеннго изменения используйте ``--delete``. Для\n"
+"    удаления всех отложенных изменений, используйте ``--cleanup``.\n"
+"    "
+
+#, python-format
+msgid "options '--%s' and '--%s' may not be used together"
+msgstr "нельзя одновременно использовать параметры '--%s' и '--%s'"
+
+msgid "cannot specify names when using '--cleanup'"
+msgstr "нельзя указывать имена вместе с '--cleanup'"
+
+#, python-format
+msgid "option '--%s' may not be used when shelving a change"
+msgstr "параметр '--%s' нельзя использовать при откладывании изменения"
+
+msgid "unshelve already in progress"
+msgstr "восстановление уже в процессе"
+
+msgid "use 'hg unshelve --continue' or 'hg unshelve --abort'"
+msgstr "используйте 'hg unshelve --continue' или 'hg unshelve --abort'"
+
+msgid "strip changesets and their descendents from history"
+msgstr "срезать наборы изменений и их потомков из истории"
+
+msgid ""
+"This extension allows you to strip changesets and all their descendants from "
+"the\n"
+"repository. See the command help for details.\n"
+msgstr ""
+"Это расширение позволяет срезать наборы изменений и всех их потомков из "
+"хранилища\n"
+"См. также справку по команде.\n"
+
+#, python-format
+msgid "uncommitted changes in subrepository %s"
+msgstr "незафиксированные изменения в подхранилище %s"
+
+msgid "local changes found"
+msgstr "найдены локальные изменения"
+
+msgid "local changed subrepos found"
+msgstr "найдены локальные измененные подхранилища"
+
+#, python-format
+msgid "bookmark '%s' deleted\n"
+msgstr "закладк '%s' удалена\n"
+
+msgid ""
+"strip specified revision (optional, can specify revisions without this "
+"option)"
+msgstr ""
+"срезать указанную ревизию (необязательный, можно задать ревизии и без этого "
+"параметра"
+
+msgid "force removal of changesets, discard uncommitted changes (no backup)"
+msgstr ""
+"принудительно изъять наборы изменений, отбросить незафиксированные изменения "
+"(без резервной копии)."
+
+msgid "no backups"
+msgstr "без резервного копирования"
+
+msgid "no backups (DEPRECATED)"
+msgstr "без резервного копирования (УСТАРЕЛО)"
+
+msgid "ignored  (DEPRECATED)"
+msgstr "игнорируется (УСТАРЕЛО)"
+
+msgid "do not modify working copy during strip"
+msgstr "не изменять рабочую копию во во время операции strip"
+
+msgid "remove revs only reachable from given bookmark"
+msgstr "удалить ревизии, доступные только через указанную закладку"
+
+msgid "hg strip [-k] [-f] [-n] [-B bookmark] [-r] REV..."
+msgstr "hg strip [-k] [-f] [-n] [-B закладка] [-r] РЕВИЗИЯ..."
+
+msgid "strip changesets and all their descendants from the repository"
+msgstr "срезать наборы изменений и всех их потомков из хранилища"
+
+msgid ""
+"    The strip command removes the specified changesets and all their\n"
+"    descendants. If the working directory has uncommitted changes, the\n"
+"    operation is aborted unless the --force flag is supplied, in which\n"
+"    case changes will be discarded."
+msgstr ""
+"    Команда strip удаляет указанные наборы изменений и всех их потомков.\n"
+"    Если рабочий каталог имеет незафиксированные изменения, операция\n"
+"    отменяется, если только не указан флаг --force, в случае чего\n"
+"    изменения будут отброшены."
+
+msgid ""
+"    If a parent of the working directory is stripped, then the working\n"
+"    directory will automatically be updated to the most recent\n"
+"    available ancestor of the stripped parent after the operation\n"
+"    completes."
+msgstr ""
+"    Если срезается родитель рабочего каталога, то рабочий каталог\n"
+"    будет автоматически обновлен на самого позднего предка\n"
+"    срезаемого родителя после завершения операции."
+
+msgid ""
+"    Any stripped changesets are stored in ``.hg/strip-backup`` as a\n"
+"    bundle (see :hg:`help bundle` and :hg:`help unbundle`). They can\n"
+"    be restored by running :hg:`unbundle .hg/strip-backup/BUNDLE`,\n"
+"    where BUNDLE is the bundle file created by the strip. Note that\n"
+"    the local revision numbers will in general be different after the\n"
+"    restore."
+msgstr ""
+"    Все срезанные наборы изменений сохраняются в ``.hg/strip-backup``\n"
+"    в виде комплекта (см. :hg:`help bundle` и :hg:`help unbundle`). Они\n"
+"    могут быть восстановлены с помощью :hg:`unbundle .hg/strip-backup/"
+"КОМПЛЕКТ`,\n"
+"    где КОМПЛЕКТ - это имя файла комплекта, созданного при срезании.\n"
+"    Обратите внимание, что локальные номера ревизий в общем случае будут\n"
+"    отличаться после восстановления."
+
+msgid ""
+"    Use the --no-backup option to discard the backup bundle once the\n"
+"    operation completes."
+msgstr ""
+"    Используйте параметр --no-backup чтобы удалить комплект резервного\n"
+"    восстановления сразу после завершения операции."
+
+msgid ""
+"    Strip is not a history-rewriting operation and can be used on\n"
+"    changesets in the public phase. But if the stripped changesets have\n"
+"    been pushed to a remote repository you will likely pull them again."
+msgstr ""
+"    Strip не изменяет историю, поэтому может быть использована на наборах\n"
+"    изменений в публичной фазе. Но если вырезанный набор изменений\n"
+"    был записан в отдаленное хранилище, скорее всего вы затяните его снова."
+
+#, python-format
+msgid "bookmark '%s' not found"
+msgstr "закладка '%s' не найдена"
+
+msgid "empty revision set"
+msgstr "пустой набор ревизий"
 
 msgid "command to transplant changesets from another branch"
 msgstr "команда для пересадки наборов изменений из другой ветки"
@@ -9330,29 +9569,19 @@
 msgid "filter corrupted changeset (no user or date)"
 msgstr "поврежденный набор изменений отфильтрован (нет пользователя или даты)"
 
-# transplant input is not localized
-msgid ""
-"y: transplant this changeset\n"
-"n: skip this changeset\n"
-"m: merge at this changeset\n"
-"p: show patch\n"
-"c: commit selected changesets\n"
-"q: cancel transplant\n"
-"?: show this help\n"
-msgstr ""
-"y: (Yes) пересадить этот набор изменений\n"
-"n: (No) пропустить этот набор изменений\n"
-"m: (Merge) слить в этом наборе изменений\n"
-"p: (Patch) показать патч\n"
-"c: (Commit) зафиксировать выбранные наборы изменений\n"
-"q: (Quit) отказаться от пересадки\n"
-"?: показать эту справку\n"
-
-msgid "apply changeset? [ynmpcq?]:"
-msgstr "применить набор изменений? [ynmpcq?]:"
-
-msgid "no such option\n"
-msgstr "нет такого варианта\n"
+msgid ""
+"apply changeset? [ynmpcq?]:$$ &yes, transplant this changeset$$ &no, skip "
+"this changeset$$ &merge at this changeset$$ show &patch$$ &commit selected "
+"changesets$$ &quit and cancel transplant$$ &? (show this help)"
+msgstr ""
+# FIXME - run check-translations.py
+# "y: (&yes) пересадить этот набор изменений\n"
+# "n: (&no) пропустить этот набор изменений\n"
+# "m: (&merge) слить в этом наборе изменений\n"
+# "p: (&patch) показать патч\n"
+# "c: (&commit) зафиксировать выбранные наборы изменений\n"
+# "q: (&quit) отказаться от пересадки\n"
+# "?: (показать эту справку)"
 
 msgid "transplant changesets from REPO"
 msgstr "пересадить наборы изменений из ХРАНИЛИЩА"
@@ -9436,12 +9665,12 @@
 "changesets,\n"
 "    just as if it temporarily had been pulled.\n"
 "    If --branch/-b is specified, these revisions will be used as\n"
-"    heads when deciding which changsets to transplant, just as if only\n"
+"    heads when deciding which changesets to transplant, just as if only\n"
 "    these revisions had been pulled.\n"
 "    If --all/-a is specified, all the revisions up to the heads specified\n"
 "    with --branch will be transplanted."
 msgstr ""
-"    --source/-s задает другое хранилище для выбранных ревизий, как будто\n"
+"    --source/-s задает другое хранилище для выбора ревизий, как будто\n"
 "    оно было временно затянуто.\n"
 "    Если указан --branch/-b, эти ревизии будут использованы как головные\n"
 "    при решении того, какие ревизии будут пересажены, как будто только\n"
@@ -9623,8 +9852,9 @@
 msgid "[win32mbcs] cannot activate on this platform.\n"
 msgstr "[win32mbcs] не удается активировать на этой платформе.\n"
 
-msgid "perform automatic newline conversion"
-msgstr "выполнять автоматическое преобразование формата новой строки"
+msgid "perform automatic newline conversion (DEPRECATED)"
+msgstr ""
+"выполнять автоматическое преобразование формата новой строки (УСТАРЕЛО)"
 
 msgid ""
 "  Deprecation: The win32text extension requires each user to configure\n"
@@ -9831,14 +10061,30 @@
 msgid "updating to active bookmark %s\n"
 msgstr "обновление на активную закладку %s\n"
 
+#, python-format
+msgid "adding remote bookmark %s\n"
+msgstr "добавление отдалённой закладки %s\n"
+
 # NOT-SURE
 #, python-format
 msgid "divergent bookmark %s stored as %s\n"
 msgstr "расходящаяся закладка %s сохранена как %s\n"
 
 #, python-format
-msgid "adding remote bookmark %s\n"
-msgstr "добавление отдалённой закладки %s\n"
+msgid "bookmark %s does not exist on the local or remote repository!\n"
+msgstr "закладка %s не существует в локальном или отдалённом хранилище!\n"
+
+#, python-format
+msgid "updating bookmark %s failed!\n"
+msgstr "не удалось обновить закладку %s!\n"
+
+#, python-format
+msgid "exporting bookmark %s\n"
+msgstr "экспортируется закладка %s\n"
+
+#, python-format
+msgid "deleting remote bookmark %s\n"
+msgstr "удаляется отдалённая закладка %s\n"
 
 msgid "searching for changed bookmarks\n"
 msgstr "поиск изменившихся закладок\n"
@@ -9846,6 +10092,16 @@
 msgid "no changed bookmarks found\n"
 msgstr "измененных закладок не найдено\n"
 
+msgid "not a Mercurial bundle"
+msgstr "не комплект Mercurial"
+
+#, python-format
+msgid "unknown bundle version %s"
+msgstr "неизвестная версия комплекта %s"
+
+msgid "push failed:"
+msgstr "ошибка при проталкивании:"
+
 msgid "unknown parent"
 msgstr "неизвестный родитель"
 
@@ -9863,14 +10119,6 @@
 msgid "invalid chunk length %d"
 msgstr "неверная длина участка %d"
 
-#, python-format
-msgid "%s: not a Mercurial bundle"
-msgstr "%s: не комплект Mercurial"
-
-#, python-format
-msgid "%s: unknown bundle version %s"
-msgstr "%s: неизвестная версия комплекта %s"
-
 msgid "bundling"
 msgstr "укомплектование (bundling)"
 
@@ -9881,6 +10129,47 @@
 msgid "empty or missing revlog for %s"
 msgstr "пустой или отсутствующий revlog для %s"
 
+#, python-format
+msgid "%d changesets found\n"
+msgstr "найдено %d наборов изменений\n"
+
+# NOT-SURE
+msgid "received file revlog group is empty"
+msgstr "полученная группа revlog файла пуста"
+
+# NOT-SURE
+msgid "received spurious file revlog entry"
+msgstr "полученная поддельная revlog-записть файла"
+
+# NOT-SURE
+#, python-format
+msgid "missing file data for %s:%s - run hg verify"
+msgstr "отсутствуют данные файлов для %s:%s - выполните hg verify"
+
+msgid "adding changesets\n"
+msgstr "добавляем наборы изменений\n"
+
+# форма такая?
+msgid "chunks"
+msgstr "кусков"
+
+msgid "received changelog group is empty"
+msgstr "полученная группа изменений пуста"
+
+msgid "adding manifests\n"
+msgstr "добавляем манифесты\n"
+
+msgid "adding file changes\n"
+msgstr "добавляем изменения в файлы\n"
+
+#, python-format
+msgid " (%+d heads)"
+msgstr " (%+d голов)"
+
+#, python-format
+msgid "added %d changesets with %d changes to %d files%s\n"
+msgstr "добавлено %d наборов изменений с %d изменениями в %d файлах%s\n"
+
 msgid "no node"
 msgstr "нет узла"
 
@@ -9997,6 +10286,20 @@
 msgid "child process failed to start"
 msgstr "не удалось запустить дочерний процесс"
 
+msgid "applied to working directory"
+msgstr "наложен на рабочий каталог"
+
+msgid "not a Mercurial patch"
+msgstr "не патч Mercurial"
+
+msgid "patch is damaged or loses information"
+msgstr "патч поврежден или в нем недостает данных"
+
+#. i18n: refers to a short changeset id
+#, python-format
+msgid "created %s"
+msgstr "создан %s"
+
 # может сделать "набор изм-й" или "ревизия" для экономии места?
 #. i18n: column positioning for "hg log"
 #, python-format
@@ -10082,6 +10385,13 @@
 msgid "%s: no key named '%s'"
 msgstr "%s: нет ключа с именем '%s'"
 
+#, python-format
+msgid "available styles: %s\n"
+msgstr "доступные стили: %s\n"
+
+msgid "specify a template"
+msgstr "задайте шаблон"
+
 # второй параметр - дата/время
 #, python-format
 msgid "found revision %s from %s\n"
@@ -10131,13 +10441,16 @@
 msgid "stripping amended changeset %s\n"
 msgstr "вырезаем исправленную ревизию %s\n"
 
+msgid "Leave message empty to abort commit."
+msgstr "Оставьте сообщение пустым, чтобы отменить фиксацию."
+
+msgid "empty commit message"
+msgstr "пустое сообщение фиксации"
+
 msgid "HG: Enter commit message.  Lines beginning with 'HG:' are removed."
 msgstr ""
 "HG: Введите сообщение фиксации. Строки, начинающиеся с 'HG:' будут удалены."
 
-msgid "HG: Leave message empty to abort commit."
-msgstr "HG: Оставьте сообщение пустым, чтобы отменить фиксацию."
-
 #, python-format
 msgid "HG: user: %s"
 msgstr "HG: пользователь: %s"
@@ -10175,9 +10488,6 @@
 msgid "HG: no files changed"
 msgstr "HG: нет измененных файлов"
 
-msgid "empty commit message"
-msgstr "пустое сообщение фиксации"
-
 msgid "created new head\n"
 msgstr "создана новая голова\n"
 
@@ -10305,9 +10615,6 @@
 msgid "exclude names matching the given patterns"
 msgstr "не добавлять файлы, имена которых соответствуют данным шаблонам"
 
-msgid "use text as commit message"
-msgstr "текст сообщения фиксации"
-
 msgid "read commit message from file"
 msgstr "взять сообщение фиксации из файла"
 
@@ -10320,21 +10627,15 @@
 msgid "STYLE"
 msgstr "СТИЛЬ"
 
-msgid "display using template map file"
-msgstr "отображать с использование файла-карты шаблонов"
+msgid "display using template map file (DEPRECATED)"
+msgstr "отображать с использование файла-карты шаблонов (УСТАРЕЛО)"
 
 msgid "display with template"
 msgstr "отображать с помощью шаблона"
 
-msgid "show patch"
-msgstr "показать патч"
-
 msgid "do not show merges"
 msgstr "не показывать слияния"
 
-msgid "output diffstat-style summary of changes"
-msgstr "отображать сводку изменений в стиле diffstat"
-
 msgid "show the revision DAG"
 msgstr "показать граф ревизий"
 
@@ -10344,6 +10645,15 @@
 msgid "omit dates from diff headers"
 msgstr "опускать даты в заголовках файлов различий"
 
+msgid "ignore white space when comparing lines"
+msgstr "игнорировать пробельные символы при сравнении строк"
+
+msgid "ignore changes in the amount of white space"
+msgstr "игнорировать изменения в количестве пробельных символов"
+
+msgid "ignore changes whose lines are all blank"
+msgstr "игнорировать изменения, состоящие только из пустых строк"
+
 msgid "show which function each change is in"
 msgstr "для каждого изменения показать, в какой оно сделано функции"
 
@@ -10663,13 +10973,11 @@
 "    незафиксированным."
 
 msgid ""
-"    .. note::\n"
 "      backout cannot be used to fix either an unwanted or\n"
 "      incorrect merge."
 msgstr ""
-"    .. note::\n"
-"       backout не может использоваться для исправления нежелательного\n"
-"       или некорректного слияния."
+"      backout не может использоваться для исправления нежелательного\n"
+"      или некорректного слияния."
 
 msgid ""
 "      By default, the pending changeset will have one parent,\n"
@@ -10694,14 +11002,23 @@
 "      слияние и оставить дочернюю ревизию РЕВИЗИИ как голову для\n"
 "      для дальнейшего слияния"
 
+msgid ""
+"    Returns 0 on success, 1 if nothing to backout or there are unresolved\n"
+"    files.\n"
+"    "
+msgstr ""
+"    При успехе возвращает 0, 1 если нечего отменять или есть неразрешенные "
+"конфликты.\n"
+"    "
+
 msgid "please specify just one revision"
 msgstr "пожалуйста, укажите ровно одну ревизию"
 
 msgid "please specify a revision to backout"
 msgstr "пожалуйста, укажите ревизию для отмены"
 
-msgid "cannot backout change on a different branch"
-msgstr "не могу отменить ревизию на другой ветке"
+msgid "cannot backout change that is not an ancestor"
+msgstr "не могу отменить ревизию, не являющуюся предком"
 
 msgid "cannot backout a change with no parents"
 msgstr "не могу отменить ревизию без родителей"
@@ -10713,6 +11030,15 @@
 msgstr ""
 "нельзя использовать --parent для ревизии, не являющейся результатом слияния"
 
+msgid "use 'hg resolve' to retry unresolved file merges\n"
+msgstr ""
+"используйте 'hg resolve' чтобы повторить попытку слияния конфликтующих "
+"файлов\n"
+
+#, python-format
+msgid "changeset %s backed out, don't forget to commit.\n"
+msgstr "ревизия %s отменена, не забудьте зафиксировать.\n"
+
 #, python-format
 msgid "changeset %s backs out changeset %s\n"
 msgstr "ревизия %s отменяет ревизию %s\n"
@@ -10793,8 +11119,8 @@
 "    код возврата означает плохую ревизию."
 
 msgid ""
-"      - start a bisection with known bad revision 12, and good revision 34::"
-msgstr "      - начать бисекцию с известной плохой ревизией 12, хорошей 34::"
+"      - start a bisection with known bad revision 34, and good revision 12::"
+msgstr "      - начать бисекцию с известной плохой ревизией 34, хорошей 12::"
 
 msgid ""
 "          hg bisect --bad 34\n"
@@ -10834,15 +11160,14 @@
 "          hg bisect --skip 23"
 
 msgid ""
-"      - skip all revisions that do not touch directories ``foo`` or ``bar``"
+"      - skip all revisions that do not touch directories ``foo`` or ``bar``::"
 msgstr ""
 "      - пропустить все ревизии, которые не затрагивают директории ``foo`` "
-"или ``bar``"
-
-msgid ""
-"          hg bisect --skip '!( file(\"path:foo\") & file(\"path:bar\") )'"
-msgstr ""
-"          hg bisect --skip '!( file(\"path:foo\") & file(\"path:bar\") )'"
+"или ``bar``::"
+
+msgid "          hg bisect --skip \"!( file('path:foo') & file('path:bar') )\""
+msgstr ""
+"          hg bisect --skip \"!( file('path:foo') & file('path:bar') )\""
 
 msgid "      - forget the current bisection::"
 msgstr "      - забыть текущую бисекцию::"
@@ -10861,12 +11186,12 @@
 "          hg bisect --reset\n"
 "          hg bisect --bad 34\n"
 "          hg bisect --good 12\n"
-"          hg bisect --command 'make && make tests'"
+"          hg bisect --command \"make && make tests\""
 msgstr ""
 "          hg bisect --reset\n"
 "          hg bisect --bad 34\n"
 "          hg bisect --good 12\n"
-"          hg bisect --command 'make && make tests'"
+"          hg bisect --command \"make && make tests\""
 
 msgid ""
 "      - see all changesets whose states are already known in the current\n"
@@ -10897,9 +11222,8 @@
 msgid "          hg log -r \"bisect(range)\""
 msgstr "          hg log -r \"bisect(range)\""
 
-msgid "      - with the graphlog extension, you can even get a nice graph::"
-msgstr ""
-"      - с расширением graphlog, вы даже можете получить симпатичный граф::"
+msgid "      - you can even get a nice graph::"
+msgstr "      - вы даже можете получить симпатичный граф::"
 
 msgid "          hg log --graph -r \"bisect(range)\""
 msgstr "          hg log --graph -r \"bisect(range)\""
@@ -10985,67 +11309,82 @@
 msgid "hg bookmarks [OPTIONS]... [NAME]..."
 msgstr "hg bookmarks [ПАРАМЕТРЫ]... [ИМЯ]..."
 
-msgid "track a line of development with movable markers"
-msgstr "отслеживать ветку разработки с помощью подвижных меток"
-
-msgid ""
-"    Bookmarks are pointers to certain commits that move when committing.\n"
-"    Bookmarks are local. They can be renamed, copied and deleted. It is\n"
-"    possible to use :hg:`merge NAME` to merge from a given bookmark, and\n"
-"    :hg:`update NAME` to update to a given bookmark."
-msgstr ""
-"    Закладки (bookmarks) - это указатели на некоторую ревизию, которые\n"
-"    перемещаются при фиксации.Их можно переименовывать копировать и "
-"удалять.\n"
-"    Можно использовать имя закладки в :hg:`merge ИМЯ` для слияние от "
-"указанной\n"
-"    закладки и :hg:`update ИМЯ` для обновления на заданную закладку."
-
-msgid ""
-"    You can use :hg:`bookmark NAME` to set a bookmark on the working\n"
-"    directory's parent revision with the given name. If you specify\n"
-"    a revision using -r REV (where REV may be an existing bookmark),\n"
-"    the bookmark is assigned to that revision."
-msgstr ""
-"    Используйте :hg:`bookmark ИМЯ` чтобы создать закладку с заданным\n"
-"    именем на родительскую ревизию рабочего каталога. Если указывается\n"
-"    -r РЕВИЗИЯ (где РЕВИЗИЯ может также быть существующей закладкой),\n"
-"    закладка будет указывать на эту ревизию."
-
-msgid ""
-"    Bookmarks can be pushed and pulled between repositories (see :hg:`help\n"
-"    push` and :hg:`help pull`). This requires both the local and remote\n"
-"    repositories to support bookmarks. For versions prior to 1.8, this "
-"means\n"
-"    the bookmarks extension must be enabled."
+msgid "create a new bookmark or list existing bookmarks"
+msgstr "создать новую закладку или показать существующие"
+
+msgid ""
+"    Bookmarks are labels on changesets to help track lines of development.\n"
+"    Bookmarks are unversioned and can be moved, renamed and deleted.\n"
+"    Deleting or moving a bookmark has no effect on the associated changesets."
+msgstr ""
+"    Закладки это метки наборов изменений, помогающие отслеживать линии\n"
+"    разработки. Они не участвуют в котроле версий и могут перемещаться,\n"
+"    удаляться и переименовываться. Удаление или перемещение закладки не\n"
+"    влияет на помеченные ей наборы изменений."
+
+msgid ""
+"    Creating or updating to a bookmark causes it to be marked as 'active'.\n"
+"    Active bookmarks are indicated with a '*'.\n"
+"    When a commit is made, an active bookmark will advance to the new "
+"commit.\n"
+"    A plain :hg:`update` will also advance an active bookmark, if possible.\n"
+"    Updating away from a bookmark will cause it to be deactivated."
+msgstr ""
+"    Создание или обновление на закладку помечает ее как 'активную'. "
+"Активные\n"
+"    закладки отображаются с символом '*'. При фиксации активная закладка\n"
+"    будет передвигаться на новую ревизию. Обычный :hg:`update` также "
+"передвигает\n"
+"    активную закладку при возможности. Обновление на другую ревизию "
+"деактивирует\n"
+"    закладку."
+
+msgid ""
+"    Bookmarks can be pushed and pulled between repositories (see\n"
+"    :hg:`help push` and :hg:`help pull`). If a shared bookmark has\n"
+"    diverged, a new 'divergent bookmark' of the form 'name@path' will\n"
+"    be created. Using :hg:'merge' will resolve the divergence."
 msgstr ""
 "    Закладки могут передаваться между хранилищами с помощью команд\n"
-"    push и pull (см. :hg:`help push` и :hg:`help pull`). Для этого\n"
-"    необходимо, чтобы отдалённое и локальное хранилище поддерживали\n"
-"    закладки. Для Mercurial версий меньше 1.8 это означает, что\n"
-"    должно быть включено расширение bookmarks.\n"
-"    "
-
-msgid ""
-"    If you set a bookmark called '@', new clones of the repository will\n"
-"    have that revision checked out (and the bookmark made active) by\n"
-"    default."
-msgstr ""
-"    Если вы зададите закладку с именем '@', новые клоны хранилища будут\n"
-"    иметь эту ревизию извлеченной по умолчанию. При этом эта закладка\n"
-"    будет сделана активной."
-
-msgid ""
-"    With -i/--inactive, the new bookmark will not be made the active\n"
-"    bookmark. If -r/--rev is given, the new bookmark will not be made\n"
-"    active even if -i/--inactive is not given. If no NAME is given, the\n"
-"    current active bookmark will be marked inactive.\n"
-"    "
-msgstr ""
-"    Если указан -i/--inactive, новая закладка не будет сделана активной.\n"
-"    Если указан -r/--rev, новая закладка не будет активной, даже если\n"
-"    -i/--inactive не задан. Если не указано ИМЯ, текущая активная закладка\n"
-"    будет помечена как неактивная.    "
+"    push и pull (см. :hg:`help push` и :hg:`help pull`). Если общая\n"
+"    пути разработки разошлась на закладке, будет создана новая\n"
+"    'расходящаяся закладка' с именем 'имя@путь'. Расхождение можно\n"
+"    устранить с помощью :hg:'merge'."
+
+msgid ""
+"    A bookmark named '@' has the special property that :hg:`clone` will\n"
+"    check it out by default if it exists."
+msgstr ""
+"    Закладка с именем '@' имеет особое свойство: :hg:`clone` извлекает\n"
+"    ее по умолчанию, если она существует."
+
+msgid "      - create an active bookmark for a new line of development::"
+msgstr "      - создать активную закладку для новой линии разработки::"
+
+msgid "          hg book new-feature"
+msgstr "          hg book new-feature"
+
+msgid "      - create an inactive bookmark as a place marker::"
+msgstr "      - создать неактивную закладу, чтобы просто пометить ревизию::"
+
+msgid "          hg book -i reviewed"
+msgstr "          hg book -i reviewed"
+
+msgid "      - create an inactive bookmark on another changeset::"
+msgstr "      - создать неактивную закладку на другой ревизии::"
+
+msgid "          hg book -r .^ tested"
+msgstr "          hg book -r .^ tested"
+
+msgid "      - move the '@' bookmark from another branch::"
+msgstr "      - переместить закладку '@' с другой ветки::"
+
+msgid ""
+"          hg book -f @\n"
+"    "
+msgstr ""
+"          hg book -f @\n"
+"    "
 
 msgid "bookmark names cannot consist entirely of whitespace"
 msgstr "имя закладки не может состоять из одних пробелов"
@@ -11102,13 +11441,11 @@
 msgstr "задать или показать имя текущей ветки"
 
 msgid ""
-"    .. note::\n"
 "       Branch names are permanent and global. Use :hg:`bookmark` to create "
 "a\n"
 "       light-weight bookmark instead. See :hg:`help glossary` for more\n"
 "       information about named branches and bookmarks."
 msgstr ""
-"    .. note::\n"
 "       Имена веток постоянны и глобальны. Используйте :hg:`bookmark`,\n"
 "       чтобы создать легковесную закладку. Дополнительную\n"
 "       информацию о ветках и закладках см. в :hg:`help glossary`."
@@ -11323,21 +11660,31 @@
 
 msgid ""
 "    Output may be to a file, in which case the name of the file is\n"
-"    given using a format string. The formatting rules are the same as\n"
-"    for the export command, with the following additions:"
-msgstr ""
-"    Можно печатать в файл, в этом случае его имя задается в виде\n"
-"    форматирующей строки. Формат строки такой же, как в команде export,\n"
-"    со следующими дополнениями:"
-
-msgid ""
+"    given using a format string. The formatting rules as follows:"
+msgstr ""
+"    Можно осуществлять вывод в файл, при этом имя файла задается\n"
+"    в виде форматирующей строки. Правила форматирования:"
+
+msgid ""
+"    :``%%``: literal \"%\" character\n"
 "    :``%s``: basename of file being printed\n"
 "    :``%d``: dirname of file being printed, or '.' if in repository root\n"
-"    :``%p``: root-relative path name of file being printed"
-msgstr ""
-"    :``%s``: базовое имя печатаемого файла\n"
-"    :``%d``: имя каталога печатаемого файла или '.', если файл в корне\n"
-"    :``%p``: путь к печатаемому файлу относительно корня хранилища"
+"    :``%p``: root-relative path name of file being printed\n"
+"    :``%H``: changeset hash (40 hexadecimal digits)\n"
+"    :``%R``: changeset revision number\n"
+"    :``%h``: short-form changeset hash (12 hexadecimal digits)\n"
+"    :``%r``: zero-padded changeset revision number\n"
+"    :``%b``: basename of the exporting repository"
+msgstr ""
+"    :``%%``: символ \"%\"\n"
+"    :``%s``: базовое имя выводимого файла\n"
+"    :``%d``: имя директории выводимого файла или '.' в для корня\n"
+"    :``%p``: путь выводимого файла относительно корная\n"
+"    :``%H``: хэш набора изменений (40 шестнадцатеричных цифр)\n"
+"    :``%R``: номер ревизии набора изменений\n"
+"    :``%h``: короткий хэш набора изменений (12 шестнадцатеричных цифр)\n"
+"    :``%r``: выровненный нулями номер ревизии    :``%b``: базовое имя "
+"экспортируемого хранилища"
 
 msgid "the clone will include an empty working copy (only a repository)"
 msgstr "клон будет включать пустой рабочий каталог (только хранилище)"
@@ -11654,12 +12001,71 @@
 msgid "cannot amend changeset with children"
 msgstr "нельзя исправлять ревизию, имеющую потомков"
 
-msgid "nothing changed\n"
-msgstr "нет изменений\n"
-
-#, python-format
-msgid "nothing changed (%d missing files, see 'hg status')\n"
-msgstr "нет изменений (%d файлов отсутствует, см. 'hg status')\n"
+msgid "show untrusted configuration options"
+msgstr "показать недоверенные настройки конфига"
+
+msgid "edit user config"
+msgstr "редактировать конфигурацию пользователя"
+
+msgid "edit repository config"
+msgstr "редактировать файл конфигурации хранилища"
+
+msgid "edit global config"
+msgstr "редактировать глобальную конфигурацию"
+
+msgid "[-u] [NAME]..."
+msgstr "[-u] [ИМЯ]..."
+
+msgid "show combined config settings from all hgrc files"
+msgstr "показать совмещенные настройки из всех файлов конфигурации"
+
+msgid "    With no arguments, print names and values of all config items."
+msgstr "    Без аргументов печатает имена и значения всех параметров конфига."
+
+msgid ""
+"    With one argument of the form section.name, print just the value\n"
+"    of that config item."
+msgstr ""
+"    С одним аргументом вида \"секция.имя\" печатает только значение\n"
+"    этого параметра."
+
+msgid ""
+"    With multiple arguments, print names and values of all config\n"
+"    items with matching section names."
+msgstr ""
+"    С несколькими аргументами печатает имена и значения всех\n"
+"    параметров конфига с совпадающими именами разделов."
+
+msgid ""
+"    With --edit, start an editor on the user-level config file. With\n"
+"    --global, edit the system-wide config file. With --local, edit the\n"
+"    repository-level config file."
+msgstr ""
+"    С --edit запускается редактор для конфигурационного файла уровня\n"
+"    пользователя. С --global редактируется общесистемный файл\n"
+"    конфигурации. С --local редактируется кофигурационный файл хранилища."
+
+msgid ""
+"    With --debug, the source (filename and line number) is printed\n"
+"    for each config item."
+msgstr ""
+"    Если указан --debug, для каждого параметра печатается имя файла\n"
+"    и номер строки, откуда он был прочитан."
+
+msgid "    See :hg:`help config` for more information about config files."
+msgstr "    См. :hg:`help config` для справки по файлам конфигурации."
+
+msgid "    "
+msgstr "    "
+
+msgid "can't use --local and --global together"
+msgstr "нельзя использовать --local и --global одновременно"
+
+msgid "can't use --local outside a repository"
+msgstr "нельзя использовать --local вне хранилища"
+
+msgid "only one config item permitted"
+msgstr "можно указать только один параметр конфига"
 
 msgid "record a copy that has already occurred"
 msgstr "записать копирование, которое было проведено ранее"
@@ -11998,6 +12404,14 @@
 msgstr " (проверьте правильность установки локали)\n"
 
 #, python-format
+msgid "checking Python executable (%s)\n"
+msgstr "проверка исполняемого файла Python (%s)\n"
+
+#, python-format
+msgid "checking Python version (%s)\n"
+msgstr "проверка версии Python (%s)\n"
+
+#, python-format
 msgid "checking Python lib (%s)...\n"
 msgstr "проверка библиотеки Python (%s)...\n"
 
@@ -12015,6 +12429,12 @@
 msgid "checking templates (%s)...\n"
 msgstr "проверка шаблонов (%s)...\n"
 
+msgid " template 'default' not found\n"
+msgstr " шаблон 'default' не найден\n"
+
+msgid " no template directories found\n"
+msgstr " не найдены директории шаблонов\n"
+
 msgid " (templates seem to have been installed incorrectly)\n"
 msgstr " (шаблоны, похоже, некорректно установлены)\n"
 
@@ -12204,6 +12624,9 @@
 msgid "show data and statistics about a revlog"
 msgstr "показать данные и статистику по revlog'у"
 
+msgid "print parsed tree after optimizing"
+msgstr "напечатать разобранное дерево после оптимизации"
+
 msgid "parse and apply a revision specification"
 msgstr "разобрать и применить спецификацию ревизии"
 
@@ -12353,12 +12776,10 @@
 msgstr "    Различия показываются в унифицированном формате diff."
 
 msgid ""
-"    .. note::\n"
 "       diff may generate unexpected results for merges, as it will\n"
 "       default to comparing against the working directory's first\n"
 "       parent changeset if no revisions are specified."
 msgstr ""
-"    .. note::\n"
 "       diff может генерировать неожиданные результаты для слияний,\n"
 "       поскольку по умолчанию сравнение производится с первым\n"
 "       родителем рабочего каталога, если не указаны другие ревизии."
@@ -12460,12 +12881,10 @@
 "    родитель (родители) и сообщение фиксации."
 
 msgid ""
-"    .. note::\n"
 "       export may generate unexpected diff output for merge\n"
 "       changesets, as it will compare the merge changeset against its\n"
 "       first parent only."
 msgstr ""
-"    .. note::\n"
 "       export может генерировать неожиданный вывод diff для ревизий\n"
 "       слияния, потому что сравнение такой ревизии проводится только\n"
 "       с ее первой родительской ревизией."
@@ -12652,11 +13071,8 @@
 "    разрешения всех конфликтов, можно продолжить процесс с помощью\n"
 "    параметра -c/--continue."
 
-msgid ""
-"    .. note::\n"
-"      The -c/--continue option does not reapply earlier options."
-msgstr ""
-"    .. note::\n"
+msgid "      The -c/--continue option does not reapply earlier options."
+msgstr ""
 "      Параметр -c/--continue не применяет повторно ранее заданные опции."
 
 msgid ""
@@ -12693,6 +13109,13 @@
 msgstr "          hg log --debug -r ."
 
 msgid ""
+"    See :hg:`help revisions` and :hg:`help revsets` for more about\n"
+"    specifying revisions."
+msgstr ""
+"    См. :hg:`help revisions` и :hg:`help revsets` для дополнительной\n"
+"    информации о задании ревизий."
+
+msgid ""
 "    Returns 0 on successful completion.\n"
 "    "
 msgstr ""
@@ -12714,12 +13137,12 @@
 msgstr "пропускаю предка %s\n"
 
 #, python-format
-msgid "skipping already grafted revision %s\n"
-msgstr "пропускаю уже перенесенную ревизию %s\n"
-
-#, python-format
-msgid "skipping already grafted revision %s (same origin %d)\n"
-msgstr "пропускаю уже перенесенную ревизию %s (тот же источник %d)\n"
+msgid "skipping revision %s (already grafted to %s)\n"
+msgstr "пропускаю ревизию %s (уже перенесена на %s)\n"
+
+#, python-format
+msgid "skipping already grafted revision %s (%s also has origin %d)\n"
+msgstr "пропускаю уже перенесенную ревизию %s (%s имеет также источник %d)\n"
 
 #, python-format
 msgid "skipping already grafted revision %s (was grafted from %d)\n"
@@ -12729,9 +13152,6 @@
 msgid "grafting revision %s\n"
 msgstr "перенос ревизии %s\n"
 
-msgid "unresolved conflicts, can't continue"
-msgstr "неразрешенные конфликты, продолжение невозможно"
-
 msgid "use hg resolve and hg graft --continue"
 msgstr "используйте hg resolve и hg graft --continue"
 
@@ -13008,6 +13428,9 @@
 msgid "apply patch without touching the working directory"
 msgstr "применить файл, не трогая рабочий каталог"
 
+msgid "commit even if some hunks fail"
+msgstr "фиксировать, даже при ошибках в некоторых лоскутах (hunks)"
+
 msgid "apply patch to the nodes from which it was generated"
 msgstr "применить патч к узлам, для которых он был сгенерирован"
 
@@ -13093,6 +13516,28 @@
 "    копирования и переименования в патче так же, как в :hg:`addremove`."
 
 msgid ""
+"    Use --partial to ensure a changeset will be created from the patch\n"
+"    even if some hunks fail to apply. Hunks that fail to apply will be\n"
+"    written to a <target-file>.rej file. Conflicts can then be resolved\n"
+"    by hand before :hg:`commit --amend` is run to update the created\n"
+"    changeset. This flag exists to let people import patches that\n"
+"    partially apply without losing the associated metadata (author,\n"
+"    date, description, ...). Note that when none of the hunk applies\n"
+"    cleanly, :hg:`import --partial` will create an empty changeset,\n"
+"    importing only the patch metadata."
+msgstr ""
+"    Используйте --partial, чтобы быть уверенным, что набор изменений\n"
+"    будет создан из патча, даже если некоторые лоскуты (hunks) не\n"
+"    были применены. Неналоженные лоскуты будут записаны в файл\n"
+"    <файл-назначения>.rej. После этого можно вручную разрешить конфликты\n"
+"    до запуска :hg:`commit --amend` с целью обновления набора изменений.\n"
+"    Этот флаг позволяет импортировать патчи частично, сохраняя при этом\n"
+"    метаданные (автор, дата, описание, ...). Обратите внимание, что если\n"
+"    ни один лоскут не наложился без ошибок, :hg:`import --partial`\n"
+"    создаст пустой набор изменений, импортировав только метаданные\n"
+"    патча."
+
+msgid ""
 "    To read a patch from standard input, use \"-\" as the patch name. If\n"
 "    a URL is specified, the patch will be downloaded from it.\n"
 "    See :hg:`help dates` for a list of formats valid for -d/--date."
@@ -13130,6 +13575,13 @@
 msgid "          hg import --exact proposed-fix.patch"
 msgstr "          hg import --exact proposed-fix.patch"
 
+msgid ""
+"    Returns 0 on success, 1 on partial success (see --partial).\n"
+"    "
+msgstr ""
+"    При успехе возвращает 0, 1 при частичном успехе (см. --partial)\n"
+"    "
+
 msgid "need at least one patch to import"
 msgstr "для импорта требуется хотя бы один патч"
 
@@ -13139,23 +13591,15 @@
 msgid "cannot use --similarity with --bypass"
 msgstr "нельзя использовать --similarityt с --bypass"
 
-msgid "applied to working directory"
-msgstr "наложен на рабочий каталог"
-
-msgid "not a Mercurial patch"
-msgstr "не патч Mercurial"
-
-msgid "patch is damaged or loses information"
-msgstr "патч поврежден или в нем недостает данных"
-
-#. i18n: refers to a short changeset id
-#, python-format
-msgid "created %s"
-msgstr "создан %s"
-
 msgid "applying patch from stdin\n"
 msgstr "применяю патч со стандартного ввода\n"
 
+msgid "patch applied partially\n"
+msgstr "патч наложен частично\n"
+
+msgid "(fix the .rej files and run `hg commit --amend`)\n"
+msgstr "(исправьте файлы .rej и выполните `hg commit --amend`)\n"
+
 #, python-format
 msgid "%s: no diffs found"
 msgstr "%s: отличий не найдено"
@@ -13205,6 +13649,30 @@
 msgid "    See pull for valid source format details."
 msgstr "    О форматах источника см. pull."
 
+msgid "      - show incoming changes with patches and full description::"
+msgstr "      - показать входящие изменения с патчами и полным описанием::"
+
+msgid "          hg incoming -vp"
+msgstr "          hg incoming -vp"
+
+msgid "      - show incoming changes excluding merges, store a bundle::"
+msgstr ""
+"      - показать входящие изменения, т.ч. слияния, сохранить комплект "
+"(bundle)::"
+
+msgid ""
+"          hg in -vpM --bundle incoming.hg\n"
+"          hg pull incoming.hg"
+msgstr ""
+"          hg in -vpM --bundle incoming.hg\n"
+"          hg pull incoming.hg"
+
+msgid "      - briefly list changes inside a bundle::"
+msgstr "      - кратко показать изменения в комплекте (bundle)::"
+
+msgid "          hg in changes.hg -T \"{desc|firstline}\\n\""
+msgstr "          hg in changes.hg -T \"{desc|firstline}\\n\""
+
 msgid ""
 "    Returns 0 if there are incoming changes, 1 otherwise.\n"
 "    "
@@ -13331,26 +13799,35 @@
 "    сообщение каждой фиксации."
 
 msgid ""
-"    .. note::\n"
+"    With --graph the revisions are shown as an ASCII art DAG with the most\n"
+"    recent changeset at the top.\n"
+"    'o' is a changeset, '@' is a working directory parent, 'x' is obsolete,\n"
+"    and '+' represents a fork where the changeset from the lines below is a\n"
+"    parent of the 'o' merge on the same line."
+msgstr ""
+"    C --graf ревизии показываются в виде ASCII-графа с самой свежей\n"
+"    ревизией наверху.\n"
+"    'o' представляет набор изменений, '@' - родителя рабочего каталога,\n"
+"    'x' - устаревшую ревизию, '+' - ответвление, у которого набор изменений\n"
+"    на предыдущих строках является родителем слияния 'o' в той же строке."
+
+msgid ""
 "       log -p/--patch may generate unexpected diff output for merge\n"
 "       changesets, as it will only compare the merge changeset against\n"
 "       its first parent. Also, only files different from BOTH parents\n"
 "       will appear in files:."
 msgstr ""
-"    .. note::\n"
 "       log -p/--patch может генерировать неожиданные различия для\n"
 "       ревизий слияния, поскольку сравнение слитой ревизии\n"
 "       производится только с ее первым родителем. Также в список\n"
 "       попадут только файлы, отличные от ОБОИХ родителей:."
 
 msgid ""
-"    .. note::\n"
 "       for performance reasons, log FILE may omit duplicate changes\n"
 "       made on branches and will not show deletions. To see all\n"
 "       changes including duplicates and deletions, use the --removed\n"
 "       switch."
 msgstr ""
-"    .. note::\n"
 "       из соображений производительности, в ФАЙЛе журнала могут\n"
 "       отсутствовать дублирующиеся изменения, сделанные на ветках,\n"
 "       а также там будут отсутствовать удаления. Чтобы увидеть все\n"
@@ -13399,6 +13876,12 @@
 msgid "          hg log -k bug --template \"{rev}\\n\""
 msgstr "          hg log -k bug --template \"{rev}\\n\""
 
+msgid "      - list available log templates::"
+msgstr "      - показать доступные шаблоны вывода::"
+
+msgid "          hg log -T list"
+msgstr "          hg log -T list"
+
 # BUG
 msgid "      - check if a given changeset is included is a tagged release::"
 msgstr ""
@@ -13422,13 +13905,6 @@
 "          hg log -r \"last(tagged())::\" --template \"{desc|firstline}\\n\""
 
 msgid ""
-"    See :hg:`help revisions` and :hg:`help revsets` for more about\n"
-"    specifying revisions."
-msgstr ""
-"    См. :hg:`help revisions` и :hg:`help revsets` для дополнительной\n"
-"    информации о задании ревизий."
-
-msgid ""
 "    See :hg:`help templates` for more about pre-packaged styles and\n"
 "    specifying custom templates."
 msgstr ""
@@ -13747,7 +14223,7 @@
 msgstr "        публичная < черновая < секретная"
 
 msgid ""
-"    Return 0 on success, 1 if no phases were changed or some could not\n"
+"    Returns 0 on success, 1 if no phases were changed or some could not\n"
 "    be changed.\n"
 "    "
 msgstr ""
@@ -13759,9 +14235,9 @@
 msgstr "можно указать только одну фазу"
 
 #, python-format
-msgid "cannot move %i changesets to a more permissive phase, use --force\n"
-msgstr ""
-"не могу поменять фазу для %d наборов изменений на менее строгую,\n"
+msgid "cannot move %i changesets to a higher phase, use --force\n"
+msgstr ""
+"не могу поменять фазу для %i наборов изменений на менее строгую,\n"
 "используйте --force\n"
 
 #, python-format
@@ -13775,6 +14251,10 @@
 msgid "not updating: %s\n"
 msgstr "не обновлено: %s\n"
 
+#, python-format
+msgid "(%s)\n"
+msgstr "(%s)\n"
+
 msgid "(run 'hg heads' to see heads, 'hg merge' to merge)\n"
 msgstr ""
 "(используйте 'hg heads' чтобы посмотреть головы, 'hg merge' для слияния)\n"
@@ -13901,11 +14381,13 @@
 "    от pull --force, будут проводиться)."
 
 msgid ""
-"    Use -f/--force to override the default behavior and push all\n"
-"    changesets on all branches."
-msgstr ""
-"    Используйте -f/--force чтобы игнорировать поведение по\n"
-"    умолчанию и протолкнуть все изменения на всех ветках."
+"      Extra care should be taken with the -f/--force option,\n"
+"      which will push all new heads on all branches, an action which will\n"
+"      almost always cause confusion for collaborators."
+msgstr ""
+"      Параметр -f/--force следует использовать с особой осторожностью,\n"
+"      поскольку он протолкнет все новые головы на всех ветках, что как\n"
+"      правило вызывает недоумение у разработчиков."
 
 msgid ""
 "    If -r/--rev is used, the specified revision and all its ancestors\n"
@@ -13941,21 +14423,11 @@
 msgid "pushing to %s\n"
 msgstr "проталкиваем в %s\n"
 
-#, python-format
-msgid "exporting bookmark %s\n"
-msgstr "экспортируется закладка %s\n"
-
-#, python-format
-msgid "deleting remote bookmark %s\n"
-msgstr "удаляется отдалённая закладка %s\n"
-
-#, python-format
-msgid "bookmark %s does not exist on the local or remote repository!\n"
-msgstr "закладка %s не существует в локальном или отдалённом хранилище!\n"
-
-#, python-format
-msgid "updating bookmark %s failed!\n"
-msgstr "не удалось обновить закладку %s!\n"
+msgid "default repository not configured!"
+msgstr "хранилище по умолчанию не установлено!"
+
+msgid "see the \"path\" section in \"hg help config\""
+msgstr "см. секцию \"path\" в \"hg help config\""
 
 msgid "roll back an interrupted transaction"
 msgstr "откатить прерванную транзакцию"
@@ -14031,23 +14503,23 @@
 "      с диска (Delete - D)."
 
 msgid ""
-"      ======= == == == ==\n"
-"              A  C  M  !\n"
-"      ======= == == == ==\n"
-"      none    W  RD W  R\n"
-"      -f      R  RD RD R\n"
-"      -A      W  W  W  R\n"
-"      -Af     R  R  R  R\n"
-"      ======= == == == =="
-msgstr ""
-"      ======= == == == ==\n"
-"              A  C  M  !\n"
-"      ======= == == == ==\n"
-"      нет     W  RD W  R\n"
-"      -f      R  RD RD R\n"
-"      -A      W  W  W  R\n"
-"      -Af     R  R  R  R\n"
-"      ======= == == == =="
+"      ========= == == == ==\n"
+"      opt/state A  C  M  !\n"
+"      ========= == == == ==\n"
+"      none      W  RD W  R\n"
+"      -f        R  RD RD R\n"
+"      -A        W  W  W  R\n"
+"      -Af       R  R  R  R\n"
+"      ========= == == == =="
+msgstr ""
+"      ========= == == == ==\n"
+"      opt/state A  C  M  !\n"
+"      ========= == == == ==\n"
+"      none      W  RD W  R\n"
+"      -f        R  RD RD R\n"
+"      -A        W  W  W  R\n"
+"      -Af       R  R  R  R\n"
+"      ========= == == == =="
 
 msgid ""
 "      Note that remove never deletes files in Added [A] state from the\n"
@@ -14203,8 +14675,18 @@
 msgid "can't specify --all and patterns"
 msgstr "нельзя задавать шаблон и --all одновременно"
 
-msgid "no files or directories specified; use --all to remerge all files"
-msgstr "не заданы файлы или каталоги; --all повторит слияние для всех файлов"
+msgid "no files or directories specified"
+msgstr "не указаны файлы или каталоги"
+
+msgid "resolve command not applicable when not merging"
+msgstr "команда resolve доступна только во время слияния"
+
+msgid "arguments do not match paths that need resolving\n"
+msgstr ""
+"аргументы не соответствуют путям, нуждающимся в разрешении конфликтов\n"
+
+msgid "(no more unresolved files)\n"
+msgstr "(больше нет файлов с конфликтами)\n"
 
 msgid "revert all changes when no arguments given"
 msgstr "без аргументов - вернуть файлы к прежнему состоянию"
@@ -14222,12 +14704,10 @@
 msgstr "восстановить файлы до их состояния в хранилище"
 
 msgid ""
-"    .. note::\n"
 "       To check out earlier revisions, you should use :hg:`update REV`.\n"
 "       To cancel an uncommitted merge (and lose your changes),\n"
 "       use :hg:`update --clean .`."
 msgstr ""
-"    .. note::\n"
 "       Чтобы извлечь более ранние ревизии, необходимо использовать\n"
 "       :hg:`update РЕВИЗИЯ`. Чтобы отменить незафиксированное слияние (с "
 "потерей\n"
@@ -14280,9 +14760,6 @@
 msgid "use \"hg update\" or see \"hg help revert\""
 msgstr "используйте \"hg update\", или см. \"hg help revert\""
 
-msgid "no files or directories specified"
-msgstr "не указаны файлы или каталоги"
-
 msgid ""
 "uncommitted merge, use --all to discard all changes, or 'hg update -C .' to "
 "abort the merge"
@@ -14406,6 +14883,12 @@
 msgid "name of access log file to write to"
 msgstr "имя файла для записи журнала доступа"
 
+msgid "run server in background"
+msgstr "запустить сервер в фоновом режиме"
+
+msgid "used internally by daemon mode"
+msgstr "используется внутренней реализацией в режиме демона"
+
 msgid "name of error log file to write to"
 msgstr "имя файла для записи журнала ошибок"
 
@@ -14434,6 +14917,9 @@
 msgid "name of the hgweb config file (DEPRECATED)"
 msgstr "путь к конфигу hgweb (УСТАРЕЛО)"
 
+msgid "name of file to write process ID to"
+msgstr "имя файла для записи ID процесса"
+
 msgid "for remote clients"
 msgstr "для отдалённых клиентов"
 
@@ -14503,42 +14989,6 @@
 msgid "listening at http://%s%s/%s (bound to %s:%d)\n"
 msgstr "слушаю по адресу http://%s%s/%s (привязан к %s:%d)\n"
 
-msgid "show untrusted configuration options"
-msgstr "показать недоверенные настройки конфига"
-
-msgid "[-u] [NAME]..."
-msgstr "[-u] [ИМЯ]..."
-
-msgid "show combined config settings from all hgrc files"
-msgstr "показать совмещенные настройки из всех файлов конфигурации"
-
-msgid "    With no arguments, print names and values of all config items."
-msgstr "    Без аргументов печатает имена и значения всех параметров конфига."
-
-msgid ""
-"    With one argument of the form section.name, print just the value\n"
-"    of that config item."
-msgstr ""
-"    С одним аргументом вида \"секция.имя\" печатает только значение\n"
-"    этого параметра."
-
-msgid ""
-"    With multiple arguments, print names and values of all config\n"
-"    items with matching section names."
-msgstr ""
-"    С несколькими аргументами печатает имена и значения всех\n"
-"    параметров конфига с совпадающими именами разделов."
-
-msgid ""
-"    With --debug, the source (filename and line number) is printed\n"
-"    for each config item."
-msgstr ""
-"    Если указан --debug, для каждого параметра печатается имя файла\n"
-"    и номер строки, откуда он был прочитан."
-
-msgid "only one config item permitted"
-msgstr "можно указать только один параметр конфига"
-
 msgid "show status of all files"
 msgstr "показать состояние всех файлов"
 
@@ -14593,13 +15043,11 @@
 "    файлы, если явно на заданы -u/--unknown или -i/--ignored."
 
 msgid ""
-"    .. note::\n"
 "       status may appear to disagree with diff if permissions have\n"
 "       changed or a merge has occurred. The standard diff format does\n"
 "       not report permission changes and diff only reports changes\n"
 "       relative to one merge parent."
 msgstr ""
-"    .. note::\n"
 "       состояния могут не совпадать с файлом различий, если изменились\n"
 "       права доступа или произошло слияние. Стандартный формат diff\n"
 "       не показывает изменения прав доступа и показывает только\n"
@@ -14627,7 +15075,7 @@
 "      ! = missing (deleted by non-hg command, but still tracked)\n"
 "      ? = not tracked\n"
 "      I = ignored\n"
-"        = origin of the previous file listed as A (added)"
+"        = origin of the previous file (with --copies)"
 msgstr ""
 "      M = изменен (modified)\n"
 "      A = добавлен (added)\n"
@@ -14636,7 +15084,7 @@
 "      ! = отсутствует (missing) (удален внешней командой, отслеживается)\n"
 "      ? = не отслеживается\n"
 "      I = игнорируется (ignored)\n"
-"        = источник предыдущего файла показанного как A (добавлен)"
+"        = источник предыдущего файла (с --copies)"
 
 msgid ""
 "      - show changes in the working directory relative to a\n"
@@ -14818,9 +15266,6 @@
 msgid "remove a tag"
 msgstr "удалить метку"
 
-msgid "use <text> as commit message"
-msgstr "использовать <текст> в качестве сообщения фиксации"
-
 msgid "[-f] [-l] [-m TEXT] [-d DATE] [-u USER] [-r REV] NAME..."
 msgstr "[-f] [-l] [-m ТЕКСТ] [-d ДАТА] [-u ПОЛЬЗОВАТЕЛЬ] [-r РЕВ] ИМЯ..."
 
@@ -15086,6 +15531,14 @@
 msgid "cannot specify both -c/--check and -C/--clean"
 msgstr "нельзя одновременно указывать -c/--check и -C/-clean"
 
+#, python-format
+msgid "(activating bookmark %s)\n"
+msgstr "(активирование закладки %s)\n"
+
+#, python-format
+msgid "(leaving bookmark %s)\n"
+msgstr "(уход с закладки %s)\n"
+
 msgid "verify the integrity of the repository"
 msgstr "проверить целостность хранилища"
 
@@ -15122,15 +15575,22 @@
 msgstr "(подробнее см. http://mercurial.selenic.com)"
 
 msgid ""
-"Copyright (C) 2005-2013 Matt Mackall and others\n"
+"Copyright (C) 2005-2014 Matt Mackall and others\n"
 "This is free software; see the source for copying conditions. There is NO\n"
 "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
 msgstr ""
-"(С) 2005-2013 Matt Mackall и другие.\n"
+"(С) 2005-2014 Matt Mackall и другие.\n"
 "Это свободное ПО; условия распространения см. в исходном коде.\n"
 "НИКАКИХ ГАРАНТИЙ НЕ ПРЕДОСТАВЛЯЕТСЯ, в том числе на пригодность для\n"
 "коммерческого использования и для решения конкретных задач.\n"
 
+msgid ""
+"\n"
+"Enabled extensions:"
+msgstr ""
+"\n"
+"Включенные расширения:"
+
 #, python-format
 msgid "unknown mode %s"
 msgstr "неизвестный режим %s"
@@ -15143,6 +15603,9 @@
 msgid "cannot include %s (%s)"
 msgstr "не удается включить %s (%s)"
 
+msgid "not found in manifest"
+msgstr "не найден в манифесте"
+
 #, python-format
 msgid "unknown revision '%s'"
 msgstr "неизвестная ревизия '%s'"
@@ -15151,8 +15614,13 @@
 msgid "working directory has unknown parent '%s'!"
 msgstr "рабочий каталог имеет неизвестного родителя '%s'!"
 
-msgid "not found in manifest"
-msgstr "не найден в манифесте"
+#, python-format
+msgid "note: using %s as ancestor of %s and %s\n"
+msgstr "примечание: %s используется в качестве предка %s и %s\n"
+
+#, python-format
+msgid "      alternatively, use --config merge.preferancestor=%s\n"
+msgstr "      также можно использовать --config merge.preferancestor=%s\n"
 
 #, python-format
 msgid "no such file in rev %s"
@@ -15260,44 +15728,57 @@
 "используйте 'hg push --new-branch' чтобы создать новые ветки ветки\n"
 "в отдаленном хранилище"
 
+# {{{ revsets
+#, python-format
+msgid "and %s others"
+msgstr "и %s других"
+
+#, python-format
+msgid "remote has heads that are not known locally: %s\n"
+msgstr "на отдаленной стороне есть головы, неизвестные локально: %s\n"
+
+#, python-format
+msgid "remote has heads on branch '%s' that are not known locally: %s\n"
+msgstr ""
+"на отдаленной стороне есть головы на ветке '%s', неизвестные локально: %s\n"
+
+#, python-format
+msgid "push creates new branch '%s' with multiple heads"
+msgstr "push создаст новую ветку '%s' с несколькими головами"
+
+msgid "merge or see \"hg help push\" for details about pushing new heads"
+msgstr "выполните слияние или см. \"hg help push\" о проталкивании новых голов"
+
 #, python-format
 msgid "push creates new remote head %s on branch '%s'!"
 msgstr "push создает новую голову в отдаленном хранилище %s на ветке '%s'!"
 
 #, python-format
+msgid "push creates new remote head %s with bookmark '%s'!"
+msgstr "push создает новую голову %s в отдаленном хранилище с закладкой '%s'!"
+
+#, python-format
 msgid "push creates new remote head %s!"
 msgstr "push создаст новую голову %s в отдалённом хранилище!"
 
-msgid "you should pull and merge or use push -f to force"
-msgstr ""
-"необходимо выполнить pull, затем merge, либо использовать push -f,\n"
-"чтобы протолкнуть принудительно"
-
-msgid "did you forget to merge? use push -f to force"
-msgstr ""
-"забыли выполнить слияние? используйте push -f, чтобы протолкнуть "
-"принудительно"
-
-#, python-format
-msgid "new remote heads on branch '%s'\n"
-msgstr "новые головные ревизии в отдалённом хранилище на ветке '%s'\n"
-
-#, python-format
-msgid "new remote head %s\n"
-msgstr "новая головная ревизия %s в отдалённом хранилище\n"
-
-msgid "note: unsynced remote changes!\n"
-msgstr "внимание: несинхронизированные изменения в отдаленном хранилище!\n"
+msgid ""
+"pull and merge or see \"hg help push\" for details about pushing new heads"
+msgstr ""
+"затяните и выполните слияние или см. \"hg help push\" о проталкивании новых "
+"голов"
+
+msgid "new remote heads:\n"
+msgstr "новые головы в отдалённом хранилище:\n"
+
+#, python-format
+msgid "new remote heads on branch '%s':\n"
+msgstr "новые головы в отдалённом хранилище на ветке '%s':\n"
 
 #, python-format
 msgid "abort: %s\n"
 msgstr "прервано: %s\n"
 
 #, python-format
-msgid "(%s)\n"
-msgstr "(%s)\n"
-
-#, python-format
 msgid "hg: parse error at %s: %s\n"
 msgstr "hg: ошибка разбора в %s: %s\n"
 
@@ -15311,6 +15792,10 @@
 "справки\n"
 
 #, python-format
+msgid "%s debugger specified but its module was not found\n"
+msgstr "задан отладчик %s, но его модуль не найден\n"
+
+#, python-format
 msgid ""
 "hg: command '%s' is ambiguous:\n"
 "    %s\n"
@@ -15437,6 +15922,10 @@
 msgstr "отсутствует определение псевдонима '%s'\n"
 
 #, python-format
+msgid "error in definition for alias '%s': %s\n"
+msgstr "ошибка в определении псевдонима '%s': %s\n"
+
+#, python-format
 msgid ""
 "error in definition for alias '%s': %s may only be given on the command "
 "line\n"
@@ -15516,6 +16005,65 @@
 msgstr "неопознанный профилировщик '%s' - игнорирется\n"
 
 #, python-format
+msgid "%s: not a Mercurial bundle"
+msgstr "%s: не комплект Mercurial"
+
+#, python-format
+msgid "%s: unknown bundle version %s"
+msgstr "%s: неизвестная версия комплекта %s"
+
+msgid "destination does not support push"
+msgstr "хранилище назначения не поддерживает push"
+
+#, python-format
+msgid "push includes obsolete changeset: %s!"
+msgstr "push включает устаревшую ревизию: %s!"
+
+#, python-format
+msgid "push includes unstable changeset: %s!"
+msgstr "push включает нестабильную ревизию: %s!"
+
+# NOT-SURE bad
+#, python-format
+msgid "push includes bumped changeset: %s!"
+msgstr "push включает \"прибитую\" (bumped) ревизию: %s!"
+
+#, python-format
+msgid "push includes divergent changeset: %s!"
+msgstr "push включает расходящуюся (divergent) ревизию: %s!"
+
+#, python-format
+msgid "server ignored update of %s to public!\n"
+msgstr "сервер проигнорировал обновление %s до публичной фазы!\n"
+
+#, python-format
+msgid "updating %s to public failed!\n"
+msgstr "не удалось обновить %s до публичной фазы!\n"
+
+#, python-format
+msgid "cannot lock source repo, skipping local %s phase update\n"
+msgstr ""
+"не удается заблокировать хранилище-источник, не локальная фаза %s не "
+"обновлена\n"
+
+msgid "failed to push some obsolete markers!\n"
+msgstr "не удалось протолкнуть некоторые маркеры устаревших ревизий!\n"
+
+msgid "requesting all changes\n"
+msgstr "запрашиваем все изменения\n"
+
+msgid ""
+"partial pull cannot be done because other repository doesn't support "
+"changegroupsubset."
+msgstr ""
+"частичное затягивание не может быть произведено, т.к. второе хранилище\n"
+"не поддерживает подмножества групп изменений (changegroupsubset)"
+
+#, python-format
+msgid "unsupported getbundle arguments: %s"
+msgstr "неподдерживаемые аргументы getbundle: %s"
+
+#, python-format
 msgid "*** failed to import extension %s from %s: %s\n"
 msgstr "*** не удалось импортировать расширение %s из %s: %s\n"
 
@@ -15560,13 +16108,14 @@
 "   из хранилища - использовать в качестве слитой версии."
 
 # PROMPT
-#, fuzzy, python-format
+#, python-format
 msgid ""
 " no tool found to merge %s\n"
 "keep (l)ocal or take (o)ther?$$ &Local $$ &Other"
 msgstr ""
 " не найден инструмент для слияния %s\n"
-"использовать локальный файл:(l)ocal или взять другой:(o)ther?"
+"использовать локальный файл:(l)ocal или взять другой:(o)ther?$$ &Local $$ "
+"&Other"
 
 msgid ""
 "``internal:local``\n"
@@ -15619,6 +16168,22 @@
 msgstr "внимание: internal: не удается слить символические ссылки для %s\n"
 
 msgid ""
+"``internal:tagmerge``\n"
+"Uses the internal tag merge algorithm (experimental)."
+msgstr ""
+"``internal:tagmerge``\n"
+"Использует внутренний алгоритм слияния меток (экспериментальный)."
+
+#, python-format
+msgid ""
+"automatic tag merging of %s failed! (use 'hg resolve --tool internal:merge' "
+"or another merge tool of your choice)\n"
+msgstr ""
+"не удалось автоматически слить метки %s!\n"
+"(используйте 'hg resolve --tool internal:merge' или другую программу для "
+"слияния)\n"
+
+msgid ""
 "``internal:dump``\n"
 "Creates three versions of the files to merge, containing the\n"
 "    contents of local, other and base. These files can then be used to\n"
@@ -15630,7 +16195,8 @@
 "``internal:dump``\n"
 "Создает три версии файла для слияния: локальную, из хранилища и\n"
 "   базовую. Эти файлы можно использовать для слияния вручную. Если\n"
-"   файл называется ``a.txt``, то эти файлы будут называться ``a.txt.local``,\n"
+"   файл называется ``a.txt``, то эти файлы будут называться ``a.txt."
+"local``,\n"
 "   ``a.txt.other`` и ``a.txt.base`` соответственно и будут находиться\n"
 "   в том же каталоге, что и ``a.txt``."
 
@@ -15638,19 +16204,27 @@
 msgid "merging %s failed!\n"
 msgstr "не удалось слияние %s!\n"
 
-# PROMPT
-#, fuzzy, python-format
+#, python-format
+msgid "merging %s and %s to %s\n"
+msgstr "слияние %s и %s в %s\n"
+
+#, python-format
+msgid "merging %s\n"
+msgstr "слияние %s\n"
+
+# PROMPT
+#, python-format
 msgid "was merge of '%s' successful (yn)?$$ &Yes $$ &No"
-msgstr "было ли слияние '%s' успешным (y - да, n - нет)?"
-
-# PROMPT
-#, fuzzy, python-format
+msgstr "было ли слияние '%s' успешным (y - да, n - нет)?$$ &Yes $$ &No"
+
+# PROMPT
+#, python-format
 msgid ""
 " output file %s appears unchanged\n"
 "was merge successful (yn)?$$ &Yes $$ &No"
 msgstr ""
 " выходной файл %s, похоже, не изменен\n"
-"было ли слияние успешным (y - да, n - нет)?"
+"было ли слияние успешным (y - да, n - нет)?$$ &Yes $$ &No"
 
 msgid "unterminated string"
 msgstr "незавершенная строка"
@@ -15956,19 +16530,9 @@
 msgid "disabled extensions:"
 msgstr "отключенные расширения:"
 
-msgid "VALUE"
-msgstr "ЗНАЧЕНИЕ"
-
 msgid "DEPRECATED"
 msgstr "УСТАРЕЛО"
 
-msgid ""
-"\n"
-"[+] marked option can be specified multiple times\n"
-msgstr ""
-"\n"
-"параметры, помеченные [+], могут указываться многократно\n"
-
 msgid "Configuration Files"
 msgstr "Файлы конфигурации"
 
@@ -16076,6 +16640,9 @@
 msgid "basic commands:"
 msgstr "Основные команды:"
 
+msgid "debug commands (internal and unsupported):"
+msgstr "отладочные команды (внутренние и неподдерживаемые):"
+
 msgid "list of commands:"
 msgstr "список команд:"
 
@@ -16139,6 +16706,20 @@
 msgid "Extension Commands"
 msgstr "Команды Расширения"
 
+msgid "no matches"
+msgstr "нет совпадений"
+
+msgid "try \"hg help\" for a list of topics"
+msgstr "используйте \"hg help\" чтобы посмотреть список разделов"
+
+#, python-format
+msgid "no such help topic: %s"
+msgstr "нет такого раздела справки: %s"
+
+#, python-format
+msgid "try \"hg help --keyword %s\""
+msgstr "попробуйте \"hg help --keyword %s\""
+
 msgid "Mercurial Distributed SCM\n"
 msgstr "Распределенная система контроля версий Mercurial\n"
 
@@ -16346,11 +16927,11 @@
 "    в указанном порядке пока не найдет один или более файл конфигурации."
 
 msgid ""
-".. note:: The registry key ``HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node"
+"   The registry key ``HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node"
 "\\Mercurial``\n"
 "   is used when running 32-bit Python on 64-bit Windows."
 msgstr ""
-".. note:: если используется 32-битная версия Python в 64-битной Windows,\n"
+"   Если используется 32-битная версия Python в 64-битной Windows,\n"
 "   используется ключ реестра ``HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node"
 "\\Mercurial``."
 
@@ -16600,13 +17181,13 @@
 msgstr "    stable5 = latest -b stable"
 
 msgid ""
-".. note:: It is possible to create aliases with the same names as\n"
+"   It is possible to create aliases with the same names as\n"
 "   existing commands, which will then override the original\n"
 "   definitions. This is almost always a bad idea!"
 msgstr ""
-".. note:: Можно создать псевдоним с именем, совпадающим с именем\n"
-"    существующих команд, который переопределит первоначальные\n"
-"    команды. Это почти всегда неудачная идея!"
+"   Можно создать псевдоним с именем, совпадающим с именем\n"
+"   существующих команд, который переопределит первоначальные\n"
+"   команды. Это почти всегда неудачная идея!"
 
 msgid ""
 "An alias can start with an exclamation point (``!``) to make it a\n"
@@ -16667,13 +17248,13 @@
 "``hg echo foo``, ``$HG_ARGS`` раскроется в ``echo foo``."
 
 msgid ""
-".. note:: Some global configuration options such as ``-R`` are\n"
+"   Some global configuration options such as ``-R`` are\n"
 "   processed before shell aliases and will thus not be passed to\n"
 "   aliases."
 msgstr ""
-".. note:: Некоторые глобальные параметры, такие как ``-R``,\n"
+"   Некоторые глобальные параметры, такие как ``-R``,\n"
 "   обрабатываются перед псевдонимами оболочки, поэтому они не будут\n"
-"   переданы в псевдонимы."
+"   переданы псевдониму."
 
 msgid ""
 "\n"
@@ -16860,10 +17441,135 @@
 
 msgid ""
 "\n"
+"``committemplate``\n"
+"------------------"
+msgstr ""
+"\n"
+"``committemplate``\n"
+"------------------"
+
+msgid ""
+"``changeset`` configuration in this section is used as the template to\n"
+"customize the text shown in the editor when committing."
+msgstr ""
+"Значение параметра ``changeset`` в этой сецкии используется в качестве "
+"шаблона\n"
+"для отображаемого в редакторе текста при фиксации."
+
+msgid ""
+"In addition to pre-defined template keywords, commit log specific one\n"
+"below can be used for customization:"
+msgstr ""
+"В дополнение к предопределенным ключевым словам, нижеследующие специфичные\n"
+"настройки могут использоваться для журнала фиксаций:"
+
+msgid ""
+"``extramsg``\n"
+"    String: Extra message (typically 'Leave message empty to abort\n"
+"    commit.'). This may be changed by some commands or extensions."
+msgstr ""
+"``extramsg``\n"
+"    Строка: Дополнительное сообщение (обычно 'оставьте пустым чтобы\n"
+"    отменить фиксацию.'). Может меняться некоторыми командами или\n"
+"    расширениями."
+
+msgid ""
+"For example, the template configuration below shows as same text as\n"
+"one shown by default::"
+msgstr ""
+"Например, следующий шаблон покажет тот же текст, что показывается\n"
+"по умолчанию::"
+
+msgid ""
+"    [committemplate]\n"
+"    changeset = {desc}\\n\\n\n"
+"        HG: Enter commit message.  Lines beginning with 'HG:' are removed.\n"
+"        HG: {extramsg}\n"
+"        HG: --\n"
+"        HG: user: {author}\\n{ifeq(p2rev, \"-1\", \"\",\n"
+"       \"HG: branch merge\\n\")\n"
+"       }HG: branch '{branch}'\\n{if(currentbookmark,\n"
+"       \"HG: bookmark '{currentbookmark}'\\n\")  }{subrepos %\n"
+"       \"HG: subrepo {subrepo}\\n\"              }{file_adds %\n"
+"       \"HG: added {file}\\n\"                   }{file_mods %\n"
+"       \"HG: changed {file}\\n\"                 }{file_dels %\n"
+"       \"HG: removed {file}\\n\"                 }{if(files, \"\",\n"
+"       \"HG: no files changed\\n\")}"
+msgstr ""
+"    [committemplate]\n"
+"    changeset = {desc}\\n\\n\n"
+"        HG: Enter commit message.  Lines beginning with 'HG:' are removed.\n"
+"        HG: {extramsg}\n"
+"        HG: --\n"
+"        HG: user: {author}\\n{ifeq(p2rev, \"-1\", \"\",\n"
+"       \"HG: branch merge\\n\")\n"
+"       }HG: branch '{branch}'\\n{if(currentbookmark,\n"
+"       \"HG: bookmark '{currentbookmark}'\\n\")  }{subrepos %\n"
+"       \"HG: subrepo {subrepo}\\n\"              }{file_adds %\n"
+"       \"HG: added {file}\\n\"                   }{file_mods %\n"
+"       \"HG: changed {file}\\n\"                 }{file_dels %\n"
+"       \"HG: removed {file}\\n\"                 }{if(files, \"\",\n"
+"       \"HG: no files changed\\n\")}"
+
+msgid ""
+"   For some problematic encodings (see :hg:`help win32mbcs` for\n"
+"   detail), this customization should be configured carefully, to\n"
+"   avoid showing broken characters."
+msgstr ""
+"   Для некоторых проблемных кодировок (см. :hg:`help win32mbcs`)\n"
+"   следует соблюдать особую острожность в этих настройках, чтобы\n"
+"   избежать неверного отображения символов."
+
+msgid ""
+"   For example, if multibyte character ending with backslash (0x5c) is\n"
+"   followed by ASCII character 'n' in the customized template,\n"
+"   sequence of backslash and 'n' is treated as line-feed unexpectedly\n"
+"   (and multibyte character is broken, too)."
+msgstr ""
+"   Например, если в шаблоне за мультибайтовым символом, оканчивающимся\n"
+"   обратным слэшем (0x5c), следует ASCII символ 'n', последовательность\n"
+"   '\\' и 'n' неверно интерпретируется как перевод строки (сам "
+"мультибайтовый\n"
+"   символ также будет искажен)."
+
+msgid ""
+"Customized template is used for commands below (``--edit`` may be\n"
+"required):"
+msgstr ""
+"Настраиваемый шабон используется для следующих команд\n"
+"(может потребоваться ``--edit``):"
+
+msgid ""
+"- :hg:`backout`\n"
+"- :hg:`commit`\n"
+"- :hg:`fetch` (for merge commit only)\n"
+"- :hg:`graft`\n"
+"- :hg:`histedit`\n"
+"- :hg:`import`\n"
+"- :hg:`qfold`, :hg:`qnew` and :hg:`qrefresh`\n"
+"- :hg:`rebase`\n"
+"- :hg:`shelve`\n"
+"- :hg:`sign`\n"
+"- :hg:`tag`\n"
+"- :hg:`transplant`"
+msgstr ""
+"- :hg:`backout`\n"
+"- :hg:`commit`\n"
+"- :hg:`fetch` (только для ревизий слияния)\n"
+"- :hg:`graft`\n"
+"- :hg:`histedit`\n"
+"- :hg:`import`\n"
+"- :hg:`qfold`, :hg:`qnew` и :hg:`qrefresh`\n"
+"- :hg:`rebase`\n"
+"- :hg:`shelve`\n"
+"- :hg:`sign`\n"
+"- :hg:`tag`\n"
+"- :hg:`transplant`"
+
+msgid ""
 "``decode/encode``\n"
 "-----------------"
 msgstr ""
-"\n"
 "``decode/encode``\n"
 "-----------------"
 
@@ -16945,11 +17651,11 @@
 "быть записан вывод команды."
 
 msgid ""
-".. note:: The tempfile mechanism is recommended for Windows systems,\n"
+"   The tempfile mechanism is recommended for Windows systems,\n"
 "   where the standard shell I/O redirection operators often have\n"
 "   strange effects and may corrupt the contents of your files."
 msgstr ""
-".. note:: Временные файлы рекомендуются для систем Windows, где\n"
+"   Временные файлы рекомендуются для систем Windows, где\n"
 "   стандартные перенаправления ввода/вывода могут иметь странные\n"
 "   эффекты и могут повредить содержимое файлов."
 
@@ -17216,14 +17922,14 @@
 
 msgid ""
 "  [extensions]\n"
-"  # (the mq extension will get loaded from Mercurial's path)\n"
-"  mq =\n"
+"  # (the progress extension will get loaded from Mercurial's path)\n"
+"  progress =\n"
 "  # (this extension will get loaded from the file specified)\n"
 "  myfeature = ~/.hgext/myfeature.py"
 msgstr ""
 "  [extensions]\n"
-"  # (расширение mq будет загружено из каталога Mercurial)\n"
-"  mq =\n"
+"  # (расширение progress будет загружено из каталога Mercurial)\n"
+"  progress =\n"
 "  # (это расширение будет загружено из указанного файла)\n"
 "  myfeature = ~/.hgext/myfeature.py"
 
@@ -17676,13 +18382,13 @@
 "  неразрешенные конфликты) ``$HG_ERROR=1``."
 
 msgid ""
-".. note:: It is generally better to use standard hooks rather than the\n"
+"   It is generally better to use standard hooks rather than the\n"
 "   generic pre- and post- command hooks as they are guaranteed to be\n"
 "   called in the appropriate contexts for influencing transactions.\n"
 "   Also, hooks like \"commit\" will be called in all contexts that\n"
 "   generate a commit (e.g. tag) and not just the commit command."
 msgstr ""
-".. note:: Вообще говоря обычно лучше использовать стандартные хуки,\n"
+"   Вообще говоря обычно лучше использовать стандартные хуки,\n"
 "   а не pre- и post-хуки, потому что они гарантированно вызываются\n"
 "   с правильным контекстом для транзакций, на которые они влияют.\n"
 "   Также такие хуки как \"commit\" будут вызваны во всех ситуациях,\n"
@@ -17690,12 +18396,12 @@
 "   commit."
 
 msgid ""
-".. note:: Environment variables with empty values may not be passed to\n"
+"   Environment variables with empty values may not be passed to\n"
 "   hooks on platforms such as Windows. As an example, ``$HG_PARENT2``\n"
 "   will have an empty value under Unix-like platforms for non-merge\n"
 "   changesets, while it will not be available at all under Windows."
 msgstr ""
-".. note:: Переменные окружения с пустыми значениями могут не\n"
+"   Переменные окружения с пустыми значениями могут не\n"
 "   передаться в хуки на платформах вроде Windows. Например,\n"
 "   ``$HG_PARENT2`` будет иметь пустое значение в Unix-подобных\n"
 "   ОС, а под Windows вообще будет недоступна."
@@ -17761,12 +18467,12 @@
 
 msgid ""
 "    [hostfingerprints]\n"
-"    hg.intevation.org = 44:ed:af:1f:97:11:b6:01:7a:48:45:fc:10:3c:b7:f9:"
-"d4:89:2a:9d"
+"    hg.intevation.org = fa:1f:d9:48:f1:e7:74:30:38:8d:d8:58:b6:94:"
+"b8:58:28:7d:8b:d0"
 msgstr ""
 "    [hostfingerprints]\n"
-"    hg.intevation.org = 44:ed:af:1f:97:11:b6:01:7a:48:45:fc:10:3c:b7:f9:"
-"d4:89:2a:9d"
+"    hg.intevation.org = fa:1f:d9:48:f1:e7:74:30:38:8d:d8:58:b6:94:"
+"b8:58:28:7d:8b:d0"
 
 msgid "This feature is only supported when using Python 2.6 or later."
 msgstr "Поддерживается только если используется Python 2.6 или выше."
@@ -17864,8 +18570,15 @@
 
 msgid ""
 "This section configures external merge tools to use for file-level\n"
-"merges."
-msgstr "Эта секция задает внешние инструменты для слияния отдельных файлов."
+"merges. This section has likely been preconfigured at install time.\n"
+"Use :hg:`config merge-tools` to check the existing configuration.\n"
+"Also see :hg:`help merge-tools` for more details."
+msgstr ""
+"Эта секция настраивает внешние утилиты слияния для работы\n"
+"на уровне файлов. Эти настройки скорее всего были заданы во\n"
+"время установки. Используйте :hg:`config merge-tools` чтобы\n"
+"проверить текущую конфигурацию. Для доп. информации см.\n"
+":hg:`help merge-tools`."
 
 msgid "Example ``~/.hgrc``::"
 msgstr "Пример ``~/.hgrc``::"
@@ -17888,6 +18601,13 @@
 "  kdiff3.priority = 1"
 
 msgid ""
+"  # Changing the priority of preconfigured tool\n"
+"  vimdiff.priority = 0"
+msgstr ""
+"  # Изменить приоритет преднастроенного инструмента слияния\n"
+"  vimdiff.priority = 0"
+
+msgid ""
 "  # Define new tool\n"
 "  myHtmlTool.args = -m $local $other $base $output\n"
 "  myHtmlTool.regkey = Software\\FooSoftware\\HtmlMerge\n"
@@ -17922,14 +18642,29 @@
 "``args``\n"
 "  The arguments to pass to the tool executable. You can refer to the\n"
 "  files being merged as well as the output file through these\n"
-"  variables: ``$base``, ``$local``, ``$other``, ``$output``.\n"
+"  variables: ``$base``, ``$local``, ``$other``, ``$output``. The meaning\n"
+"  of ``$local`` and ``$other`` can vary depending on which action is being\n"
+"  performed. During and update or merge, ``$local`` represents the original\n"
+"  state of the file, while ``$other`` represents the commit you are "
+"updating\n"
+"  to or the commit you are merging with. During a rebase ``$local``\n"
+"  represents the destination of the rebase, and ``$other`` represents the\n"
+"  commit being rebased.\n"
 "  Default: ``$local $base $other``"
 msgstr ""
 "``args``\n"
-"  Аргументы, передаваемые инструменту слияния. Можно обращаться к\n"
-"  сливаемым файлам и результату слияния через эти переменные:\n"
-"  ``$base``, ``$local``, ``$other``, ``$output``.\n"
-"  По умолчанию: ``$local $base $other``"
+"  Аргументы, передаваемые исполняемому файлу инструмента слияния.\n"
+"  Следующие переменные обозначают сливаемые и выходной файлы: \n"
+"  ``$base``, ``$local``, ``$other``, ``$output`` \n"
+"  (``базовый``, ``локальный``, ``другой``, ``выход``).\n"
+"  Значение ``$local`` и ``$other`` может меняться в зависимости от "
+"действия.\n"
+"  Во время обновления или слияния ``$local`` представляет исходное\n"
+"  состояние файла, ``$other`` представляет ревизию, на которую вы\n"
+"  обновляетесь, или ревизию, с которой производится слияние. Во\n"
+"  время перебазирования, ``$local`` представляет ревизию назначения,\n"
+"  а ``$other`` представляет перебазируемый набор изменений.  По умолчанию: ``"
+"$local $base $other``"
 
 msgid ""
 "``premerge``\n"
@@ -18198,9 +18933,45 @@
 "    По умолчанию: draft (черновая)"
 
 msgid ""
+"``checksubrepos``\n"
+"    Check the phase of the current revision of each subrepository. Allowed\n"
+"    values are \"ignore\", \"follow\" and \"abort\". For settings other "
+"than\n"
+"    \"ignore\", the phase of the current revision of each subrepository is\n"
+"    checked before committing the parent repository. If any of those phases "
+"is\n"
+"    greater than the phase of the parent repository (e.g. if a subrepo is in "
+"a\n"
+"    \"secret\" phase while the parent repo is in \"draft\" phase), the "
+"commit is\n"
+"    either aborted (if checksubrepos is set to \"abort\") or the higher "
+"phase is\n"
+"    used for the parent repository commit (if set to \"follow\").\n"
+"    Default: \"follow\""
+msgstr ""
+"``checksubrepos``\n"
+"    Проверять фазу текущей ревизии каждого подхранилища. Возможные "
+"значения:\n"
+"    \"ignore\", \"follow\" and \"abort\" (\"игнорировать\", \"следовать\", "
+"\"отменить\")\n"
+"    При любом значении, кроме \"ignore\", фаза текущей ревизии каждого\n"
+"    подхранилища проверяется перед фиксацией в родительское хранилище. Если\n"
+"    из этих фаз больше фазы родительского хранилища (например, если "
+"подхранилище\n"
+"    в фазе \"secret\" в то время как родительское хранилище в фазе \"draft"
+"\"),\n"
+"    фиксация либо отменяется (если checksubrepos установлен в \"abort\"), "
+"либо\n"
+"    более высокая фаза используется для фиксации в родительское хранилище \n"
+"    (checksubrepos = \"follow\").\n"
+"    По умолчанию: \"follow\""
+
+msgid ""
+"\n"
 "``profiling``\n"
 "-------------"
 msgstr ""
+"\n"
 "``profiling``\n"
 "-------------"
 
@@ -18397,16 +19168,16 @@
 "    Если истина, клиенты будут пытаться использовать протокол без\n"
 "    сжатия. По умолчанию False (ложь)."
 
-#, fuzzy
 msgid ""
 "``validate``\n"
 "    Whether to validate the completeness of pushed changesets by\n"
 "    checking that all new file revisions specified in manifests are\n"
 "    present. Default is False."
 msgstr ""
-"    Проводить или нет проверку полноты передаваемых с помощью push\n"
-"    наборов изменений, проверяя, что все новые ревизии файлов,\n"
-"    присутствующие в манифесте, подготовлены для передачи.\n"
+"``validate``\n"
+"    Проводить или нет проверку полноты проталкиваемых\n"
+"    наборов изменений, проверяя, что присутствуют все новые ревизии файлов,\n"
+"    имеющиеся в манифесте.\n"
 "    По умолчанию False (отключено)."
 
 msgid ""
@@ -18716,6 +19487,51 @@
 "    для слияния см. в секции ``[merge-tools]``."
 
 msgid ""
+"``mergemarkers``\n"
+"    Sets the merge conflict marker label styling. The ``detailed``\n"
+"    style uses the ``mergemarkertemplate`` setting to style the labels.\n"
+"    The ``basic`` style just uses 'local' and 'other' as the marker label.\n"
+"    One of ``basic`` or ``detailed``.\n"
+"    Default is ``basic``."
+msgstr ""
+"``mergemarkers``\n"
+"    Задает стиль маркеров конфликта. Стиль ``detailed`` использует\n"
+"    параметр ``mergemarkertemplate`` в качестве шаблона маркера.\n"
+"    Стиль ``basic`` использует 'local' и 'other' в качестве меток маркера.\n"
+"    Возможные значения: ``basic`` или ``detailed``.\n"
+"    По умолчанию: ``basic``."
+
+msgid ""
+"``mergemarkertemplate``\n"
+"    The template used to print the commit description next to each conflict\n"
+"    marker during merge conflicts. See :hg:`help templates` for the "
+"template\n"
+"    format.\n"
+"    Defaults to showing the hash, tags, branches, bookmarks, author, and\n"
+"    the first line of the commit description.\n"
+"    You have to pay attention to encodings of managed files, if you\n"
+"    use non-ASCII characters in tags, branches, bookmarks, author\n"
+"    and/or commit descriptions. At template expansion, non-ASCII\n"
+"    characters use the encoding specified by ``--encoding`` global\n"
+"    option, ``HGENCODING`` or other locale setting environment\n"
+"    variables. The difference of encoding between merged file and\n"
+"    conflict markers causes serious problem."
+msgstr ""
+"``mergemarkertemplate``\n"
+"    Шаблон, используемый для вставки описания ревизии рядом с каждым "
+"маркером\n"
+"    конфликта слияния. О формате шаблона см. :hg:`help templates`.\n"
+"    По умолчанию показывает хэш, метки, ветки, закладки, автора и первую\n"
+"    строку сообщения фиксации. Следует обратить внимание на кодировку\n"
+"    контролируемых файлов, если вы используете не-ASCII символы в именах\n"
+"    меток, веток, закладок, имени автора и/или в сообщениях фиксации. Во\n"
+"    время подстановки шаблона, для не-ASCII символов используется "
+"кодировка,\n"
+"    заданная с помощью глобального параметра ``--encoding``, ``HGENCODING``\n"
+"    или других переменных окружения локали. Разная кодировка в сливаемых\n"
+"    файлах и маркерах конфликта вызывает серьезные проблемы."
+
+msgid ""
 "``portablefilenames``\n"
 "    Check for portable filenames. Can be ``warn``, ``ignore`` or ``abort``.\n"
 "    Default is ``warn``.\n"
@@ -19544,8 +20360,8 @@
 msgid "Lastly, there is Mercurial's internal format:"
 msgstr "Наконец, есть внутренний формат Mercurial:"
 
-msgid "- ``1165432709 0`` (Wed Dec 6 13:18:29 2006 UTC)"
-msgstr "- ``1165432709 0`` (Среда 6 декабря 13:18:29 2006 UTC)"
+msgid "- ``1165411109 0`` (Wed Dec 6 13:18:29 2006 UTC)"
+msgstr "- ``1165411109 0`` (Среда 6 декабря 13:18:29 2006 UTC)"
 
 msgid ""
 "This is the internal representation format for dates. The first number\n"
@@ -20130,13 +20946,12 @@
 msgid "    Example: \"The experimental branch\"."
 msgstr "    Пример: \"Экспериментальная ветка\"."
 
-#, fuzzy
 msgid ""
 "    (Verb) The action of creating a child changeset which results in\n"
 "    its parent having more than one child."
 msgstr ""
-"Ветвление\n"
-"    (создание ветки) Действие по созданию дочернего набора изменений,\n"
+"Ветвление (создание ветки)\n"
+"    Действие по созданию дочернего набора изменений,\n"
 "    в результате которого родительская ревизия имеет более одной\n"
 "    дочерней."
 
@@ -20379,7 +21194,6 @@
 msgid "    Example: \"Is your clone up to date?\"."
 msgstr "    Пример: \"Содержит ли твой клон все последние изменения?\""
 
-#, fuzzy
 msgid "    (Verb) The process of creating a clone, using :hg:`clone`."
 msgstr ""
 "Клонирование\n"
@@ -20432,9 +21246,9 @@
 "    system (DVCS) can be described as a directed acyclic graph (DAG),\n"
 "    consisting of nodes and edges, where nodes correspond to\n"
 "    changesets and edges imply a parent -> child relation. This graph\n"
-"    can be visualized by graphical tools such as :hg:`glog`\n"
-"    (graphlog). In Mercurial, the DAG is limited by the requirement\n"
-"    for children to have at most two parents."
+"    can be visualized by graphical tools such as :hg:`log --graph`. In\n"
+"    Mercurial, the DAG is limited by the requirement for children to\n"
+"    have at most two parents."
 msgstr ""
 "НАГ (DAG, граф)\n"
 "    Хранилище с наборами изменений распределенной системы контроля\n"
@@ -20443,7 +21257,8 @@
 "    наборами изменений, а ребра отражают отражают отношение родительская-\n"
 "    дочерняя ревизия. Этот граф можно визуализировать с помощью\n"
 "    графических инструментов вроде :hg:`glog` (graphlog). В Mercurial\n"
-"    граф ограничен требованием существования не более двух родителей."
+"    граф ограничен требованием существования не более двух родителей для "
+"узла."
 
 msgid ""
 "Default branch\n"
@@ -20533,10 +21348,10 @@
 
 msgid ""
 "Graph\n"
-"    See DAG and :hg:`help graphlog`."
+"    See DAG and :hg:`log --graph`."
 msgstr ""
 "Граф\n"
-"    См. НАГ и :hg:`help graphlog`."
+"    См. НАГ и :hg:`log --graph`."
 
 msgid ""
 "Head\n"
@@ -20972,6 +21787,7 @@
 "Система контроля версий Mercurial\n"
 "---------------------------------------"
 
+# NOT SURE should this be translated?
 msgid ""
 ":Author:         Matt Mackall <mpm@selenic.com>\n"
 ":Organization:   Mercurial\n"
@@ -20979,6 +21795,7 @@
 ":Manual group:   Mercurial Manual"
 msgstr ""
 
+#. do not translate: .. contents::
 msgid ""
 ".. contents::\n"
 "   :backlinks: top\n"
@@ -21048,9 +21865,6 @@
 "путь хранилища\n"
 "    путь к локальному хранилищу или URI удаленного хранилища"
 
-msgid ".. include:: hg.1.gendoc.txt"
-msgstr ".. include:: hg.1.gendoc.txt"
-
 msgid ""
 "Files\n"
 "\"\"\"\"\""
@@ -21192,19 +22006,16 @@
 msgid ""
 "Copying\n"
 "\"\"\"\"\"\"\"\n"
-"Copyright (C) 2005-2013 Matt Mackall.\n"
+"Copyright (C) 2005-2014 Matt Mackall.\n"
 "Free use of this software is granted under the terms of the GNU General\n"
 "Public License version 2 or any later version."
 msgstr ""
 "Копирование\n"
 "\"\"\"\"\"\"\"\"\"\"\"\n"
-"(C) 2005-2013 Matt Mackall.\n"
+"(C) 2005-2014 Matt Mackall.\n"
 "Свободное использование этого ПО возможно в соответствии с \n"
 "Универсальной Общественной Лицензией GNU (GNU GPL) версии 2 или выше."
 
-msgid ".. include:: common.txt\n"
-msgstr ".. include:: common.txt\n"
-
 msgid ""
 "==========\n"
 " hgignore\n"
@@ -21230,9 +22041,6 @@
 ":Manual group:   Mercurial Manual"
 msgstr ""
 
-msgid ".. include:: hgignore.5.gendoc.txt"
-msgstr ".. include:: hgignore.5.gendoc.txt"
-
 msgid ""
 "Author\n"
 "======\n"
@@ -21258,20 +22066,17 @@
 "Copying\n"
 "=======\n"
 "This manual page is copyright 2006 Vadim Gelfer.\n"
-"Mercurial is copyright 2005-2013 Matt Mackall.\n"
+"Mercurial is copyright 2005-2014 Matt Mackall.\n"
 "Free use of this software is granted under the terms of the GNU General\n"
 "Public License version 2 or any later version."
 msgstr ""
 "Копирование\n"
 "===========\n"
 "Правами на данную страницу обладает (с) 2006 Vadim Gelfer\n"
-"Права на Mercurial принадлежат (с) 2005-2013 Matt Mackall.\n"
+"Права на Mercurial принадлежат (с) 2005-2014 Matt Mackall.\n"
 "Свободное использование этого ПО возможно в соответствии с \n"
 "Универсальной Общественной Лицензией GNU (GNU GPL) версии 2 или выше."
 
-msgid ".. include:: common.txt"
-msgstr ".. include:: common.txt"
-
 msgid ""
 "Synopsis\n"
 "========"
@@ -21419,11 +22224,9 @@
 "относительно корневого каталога, начните его с ``^``."
 
 msgid ""
-".. note::\n"
 "  Patterns specified in other than ``.hgignore`` are always rooted.\n"
 "  Please see :hg:`help patterns` for details."
 msgstr ""
-".. note::\n"
 "  Шаблоны, заданные где угодно, кроме ``.hgignore``, привязаны к корневому\n"
 "  каталогу. См. также :hg:`help patterns`."
 
@@ -21487,6 +22290,7 @@
 ":Manual group:   Mercurial Manual"
 msgstr ""
 
+#. do not translate: .. contents::
 msgid ""
 ".. contents::\n"
 "   :backlinks: top\n"
@@ -21502,9 +22306,6 @@
 "Описание\n"
 "========"
 
-msgid ".. include:: hgrc.5.gendoc.txt"
-msgstr ".. include:: hgrc.5.gendoc.txt"
-
 msgid ""
 "Author\n"
 "======\n"
@@ -21527,14 +22328,14 @@
 "Copying\n"
 "=======\n"
 "This manual page is copyright 2005 Bryan O'Sullivan.\n"
-"Mercurial is copyright 2005-2013 Matt Mackall.\n"
+"Mercurial is copyright 2005-2014 Matt Mackall.\n"
 "Free use of this software is granted under the terms of the GNU General\n"
 "Public License version 2 or any later version."
 msgstr ""
 "Копирование\n"
 "===========\n"
 "Правами на данную страницу обладает (с) 2005 Bryan O'Sullivan\n"
-"Права на Mercurial принадлежат (с) 2005-2013 Matt Mackall.\n"
+"Права на Mercurial принадлежат (с) 2005-2014 Matt Mackall.\n"
 "Свободное использование этого ПО возможно в соответствии с \n"
 "Универсальной Общественной Лицензией GNU (GNU GPL) версии 2 или выше."
 
@@ -21820,7 +22621,6 @@
 "   resolve перед фиксацией."
 
 msgid ""
-".. note::\n"
 "   After selecting a merge program, Mercurial will by default attempt\n"
 "   to merge the files using a simple merge algorithm first. Only if it "
 "doesn't\n"
@@ -21831,7 +22631,6 @@
 "by\n"
 "   default unless the file is binary or a symlink."
 msgstr ""
-".. note::\n"
 "   После выбора программы слияния, Mercurial по умолчанию пытается\n"
 "   слить файлы, используя простой алгоритм. Инструмент слияния будет\n"
 "   запущен, только если это не удастся из-за возникших конфликтов.\n"
@@ -21899,11 +22698,9 @@
 msgstr "Другая форма шаблонов должна указываться явно."
 
 msgid ""
-".. note::\n"
 "  Patterns specified in ``.hgignore`` are not rooted.\n"
 "  Please see :hg:`help hgignore` for details."
 msgstr ""
-".. note::\n"
 "  Шаблоны, заданные в ``.hgignore``, не привязаны к корневому\n"
 "  каталогу. См. :hg:`help hgignore`."
 
@@ -21951,6 +22748,16 @@
 "символом NUL, в то время как первый предполагает перевод строки. Каждая\n"
 "прочитанная из файла строка интерпретируется как шаблон имени файла."
 
+msgid ""
+"All patterns, except for ``glob:`` specified in command line (not for\n"
+"``-I`` or ``-X`` options), can match also against directories: files\n"
+"under matched directories are treated as matched."
+msgstr ""
+"Все шаблоны, задаваемые в командной строке (но не с параметрами ``-I`` и ``-"
+"X``),\n"
+"кромe ``glob:``, могут также совпасть с директориями: файлы в\n"
+"совпавших директориях считаются также совпавшими с шаблоном."
+
 msgid "Plain examples::"
 msgstr "Примеры буквальных путей::"
 
@@ -22103,12 +22910,10 @@
 " и не клонируются"
 
 msgid ""
-".. note::\n"
 "  Pulling a draft changeset from a publishing server does not mark it\n"
 "  as public on the server side due to the read-only nature of pull."
 msgstr ""
-".. note::\n"
-"  Затягивание чернового набора изменений из ``публичного`` сервера не\n"
+"  Затягивание чернового набора изменений из ``публикующего`` сервера не\n"
 "  сделает этот набор публичным на сервере, т.к. команда pull выполняется\n"
 "  в режиме ``только чтение``."
 
@@ -22129,18 +22934,29 @@
 "  publish = False"
 
 msgid ""
-".. note::\n"
 "  Servers running older versions of Mercurial are treated as\n"
 "  publishing."
 msgstr ""
-".. note::\n"
 "  Серверы, работающие со старыми версиями Mercurial, считаются\n"
-"  публичными."
-
-msgid ""
+"  публикующими."
+
+msgid ""
+"   Changesets in secret phase are not exchanged with the server. This\n"
+"   applies to their content: file names, file contents, and changeset\n"
+"   metadata. For technical reasons, the identifier (e.g. d825e4025e39)\n"
+"   of the secret changeset may be communicated to the server."
+msgstr ""
+"   Обмен с сервером наборами изменений в секретной фазе не производится.\n"
+"   Это относится к их содержимому: именам файлов, содержимому файлов,\n"
+"   метаданным ревизий. По техническим причинам идентификатор секретной\n"
+"   ревизии (например, d825e4025e39) может быть отправлен на сервер."
+
+msgid ""
+"\n"
 "Examples\n"
 "========"
 msgstr ""
+"\n"
 "Примеры\n"
 "======="
 
@@ -22175,8 +22991,8 @@
 msgstr ""
 " - синхронизировать черновые ревизии относительно отдаленного хранилища::"
 
-msgid "     hg phase -fd 'outgoing(URL)'"
-msgstr "     hg phase -fd 'outgoing(URL)'"
+msgid "     hg phase -fd \"outgoing(URL)\""
+msgstr "     hg phase -fd \"outgoing(URL)\""
 
 msgid ""
 "See :hg:`help phase` for more information on manually manipulating phases.\n"
@@ -22216,20 +23032,21 @@
 msgid ""
 "Any other string is treated as a bookmark, tag, or branch name. A\n"
 "bookmark is a movable pointer to a revision. A tag is a permanent name\n"
-"associated with a revision. A branch name denotes the tipmost revision\n"
-"of that branch. Bookmark, tag, and branch names must not contain the \":\"\n"
-"character."
+"associated with a revision. A branch name denotes the tipmost open branch "
+"head\n"
+"of that branch - or if they are all closed, the tipmost closed head of the\n"
+"branch. Bookmark, tag, and branch names must not contain the \":\" character."
 msgstr ""
 "Любая другая строка интерпретируется как имя закладки, ветки или метки.\n"
 "Закладка - это автоматически передвигаемый указатель на ревизию.\n"
 "Метка - постоянное имя, ассоциированное с некоторой ревизией.\n"
-"Имя ветки означает последнюю ревизию на этой ветки. Имена ветки, метки или\n"
-"закладки не должны содержать символа \":\"."
+"Имя ветки означает последнюю открытую голову на этой ветке. Или, если \n"
+"все головы закрыты, - последнюю закрытую голову на этой ветке. Имена ветки,\n"
+"метки или закладки не должны содержать символа \":\"."
 
 msgid "The reserved name \"tip\" always identifies the most recent revision."
 msgstr ""
-"Зарезервированное имя \"tip\" всегда всегда ссылается на самую последнюю "
-"ревизию."
+"Зарезервированное имя \"tip\" всегда ссылается на самую последнюю ревизию."
 
 msgid ""
 "The reserved name \"null\" indicates the null revision. This is the\n"
@@ -22561,12 +23378,8 @@
 "   родительское хранилище. Mercurial записывает состояния вложенных\n"
 "   хранилищ автоматически при фиксации родительского хранилища."
 
-msgid ""
-"   .. note::\n"
-"      The ``.hgsubstate`` file should not be edited manually."
-msgstr ""
-"   .. note::\n"
-"      Файл ``.hgsubstate`` не следует редактировать вручную."
+msgid "      The ``.hgsubstate`` file should not be edited manually."
+msgstr "      Файл ``.hgsubstate`` не следует редактировать вручную."
 
 msgid ""
 "\n"
@@ -22664,6 +23477,13 @@
 "    не указана опция -S/--subrepos."
 
 msgid ""
+":cat: cat currently only handles exact file matches in subrepos.\n"
+"    Git and Subversion subrepositories are currently ignored."
+msgstr ""
+":cat: cat в настоящее время обрабатывает только полные совпадения\n"
+"    файлов в подхранилищах. Хранилища Git и Subversion игнорируются."
+
+msgid ""
 ":commit: commit creates a consistent snapshot of the state of the\n"
 "    entire project and its subrepositories. If any subrepositories\n"
 "    have been modified, Mercurial will abort.  Mercurial can be made\n"
@@ -22791,33 +23611,30 @@
 
 msgid ""
 "Mercurial allows you to customize output of commands through\n"
-"templates. You can either pass in a template from the command\n"
-"line, via the --template option, or select an existing\n"
-"template-style (--style)."
+"templates. You can either pass in a template or select an existing\n"
+"template-style from the command line, via the --template option."
 msgstr ""
 "Mercurial позволяет вам настраивать вывод команд с помощью шаблонов.\n"
-"Вы можете передать шаблон через командную строку с помощью опции\n"
-"--template, либо выбрать существующий шаблонный стиль (--style)."
+"Вы можете либо передать шаблон,\n"
+"либо выбрать существующий шаблон-стиль в командной строке с помощью\n"
+"параметра --template."
 
 msgid ""
 "You can customize output for any \"log-like\" command: log,\n"
-"outgoing, incoming, tip, parents, heads and glog."
+"outgoing, incoming, tip, parents, and heads."
 msgstr ""
 "Можно настроить вывод для любой команды, похожей на log: log,\n"
-"outgoing, incoming, tip, parents, heads и glog."
-
-msgid ""
-"Five styles are packaged with Mercurial: default (the style used\n"
-"when no explicit preference is passed), compact, changelog, phases\n"
-"and xml.\n"
-"Usage::"
-msgstr ""
-"С Mercurial поставляются пять стилей: стиль по умолчанию (используется,\n"
-"когда другой стиль явно не указан), compact, changelog, phases и xml.\n"
-"Использование::"
-
-msgid "    $ hg log -r1 --style changelog"
-msgstr "    $ hg log -r1 --style changelog"
+"outgoing, incoming, tip, parents и heads."
+
+msgid ""
+"Some built-in styles are packaged with Mercurial. These can be listed\n"
+"with :hg:`log --template list`. Example usage::"
+msgstr ""
+"Некоторые встроенные стили поставляются с Mercurial. Их можно посмотреть\n"
+"с помощью :hg:`log --template list`. Пример использования::"
+
+msgid "    $ hg log -r1.0::1.1 --template changelog"
+msgstr "    $ hg log -r1.0::1.1 --template changelog"
 
 msgid ""
 "A template is a piece of text, with markup to invoke variable\n"
@@ -22898,6 +23715,9 @@
 msgid "- if(expr, then[, else])"
 msgstr "- if(выражение, то[, иначе])"
 
+msgid "- ifcontains(expr, expr, then[, else])"
+msgstr "- ifcontains(выражение, выражение, то[, иначе])"
+
 msgid "- ifeq(expr, expr, then[, else])"
 msgstr "- ifeq(выражение, выражение, то[, иначе])"
 
@@ -22907,15 +23727,27 @@
 msgid "- label(label, expr)"
 msgstr "- label(метка, выражение)"
 
+msgid "- revset(query[, formatargs])"
+msgstr "- revset(запрос[, формат])"
+
 msgid "- rstdoc(text, style)"
 msgstr "- rstdoc(текст, стиль)"
 
+msgid "- shortest(node)"
+msgstr "- shortest(узел)"
+
+msgid "- startswith(string, text)"
+msgstr "- startswith(строка, текст)"
+
 msgid "- strip(text[, chars])"
 msgstr "- strip(текст[, символы])"
 
 msgid "- sub(pat, repl, expr)"
 msgstr "- sub(шабл, замена, выражение)"
 
+msgid "- word(number, text[, separator])"
+msgstr "- word(число, текст[, разделитель])"
+
 msgid "Also, for any expression that returns a list, there is a list operator:"
 msgstr "Также, для любого выражения, возвращающего список, есть оператор:"
 
@@ -22937,6 +23769,12 @@
 msgid "   $ hg log -r 0 --template \"files: {join(files, ', ')}\\n\""
 msgstr "   $ hg log -r 0 --template \"files: {join(files, ', ')}\\n\""
 
+msgid "- Modify each line of a commit description::"
+msgstr "- Изменить каждую строку описания ревизии::"
+
+msgid "   $ hg log --template \"{splitlines(desc) % '**** {line}\\n'}\""
+msgstr "   $ hg log --template \"{splitlines(desc) % '**** {line}\\n'}\""
+
 msgid "- Format date::"
 msgstr "- Форматирование даты::"
 
@@ -22978,8 +23816,44 @@
 msgid "- Invert the firstline filter, i.e. everything but the first line::"
 msgstr "- Инвертировать фильтр первой строки, т.е. все, кроме первой строки::"
 
-msgid "   $ hg log -r 0 --template \"{sub(r'^.*\\n?\\n?', '', desc)}\\n\"\n"
-msgstr "   $ hg log -r 0 --template \"{sub(r'^.*\\n?\\n?', '', desc)}\\n\"\n"
+msgid "   $ hg log -r 0 --template \"{sub(r'^.*\\n?\\n?', '', desc)}\\n\""
+msgstr "   $ hg log -r 0 --template \"{sub(r'^.*\\n?\\n?', '', desc)}\\n\""
+
+msgid "- Display the contents of the 'extra' field, one per line::"
+msgstr "- Показать содержимое поля 'extra', по одному на строку::"
+
+msgid "   $ hg log -r 0 --template \"{join(extras, '\\n')}\\n\""
+msgstr "   $ hg log -r 0 --template \"{join(extras, '\\n')}\\n\""
+
+msgid "- Mark the current bookmark with '*'::"
+msgstr "- Пометить текущую закладку звездочкой '*'::"
+
+msgid ""
+"   $ hg log --template \"{bookmarks % '{bookmark}{ifeq(bookmark, current, \\"
+"\"*\\\")} '}\\n\""
+msgstr ""
+"   $ hg log --template \"{bookmarks % '{bookmark}{ifeq(bookmark, current, \\"
+"\"*\\\")} '}\\n\""
+
+msgid "- Mark the working copy parent with '@'::"
+msgstr "- Пометить рабочую копию родителя собакой '@'::"
+
+msgid "   $ hg log --template \"{ifcontains(rev, revset('.'), '@')}\\n\""
+msgstr "   $ hg log --template \"{ifcontains(rev, revset('.'), '@')}\\n\""
+
+msgid "- Show only commit descriptions that start with \"template\"::"
+msgstr "- Показывать только описания ревизий, начинающиеся с \"шаблона\"::"
+
+msgid ""
+"   $ hg log --template \"{startswith(\\\"template\\\", firstline(desc))}\\n\""
+msgstr ""
+"   $ hg log --template \"{startswith(\\\"template\\\", firstline(desc))}\\n\""
+
+msgid "- Print the first word of each line of a commit message::"
+msgstr "- Напечатать первое слово каждой строки сообщения фиксации::"
+
+msgid "   $ hg log --template \"{word(\\\"0\\\", desc)}\\n\"\n"
+msgstr "   $ hg log --template \"{word(\\\"0\\\", desc)}\\n\"\n"
 
 msgid "Valid URLs are of the form::"
 msgstr "Возможные следующие формы URL::"
@@ -23191,11 +24065,6 @@
 "%d files updated, %d files merged, %d files removed, %d files unresolved\n"
 msgstr "%d файлов обновлено, %d слито, %d удалено, %d c конфликтами\n"
 
-msgid "use 'hg resolve' to retry unresolved file merges\n"
-msgstr ""
-"используйте 'hg resolve' чтобы повторить попытку слияния конфликтующих "
-"файлов\n"
-
 msgid ""
 "use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to "
 "abandon\n"
@@ -23245,10 +24114,6 @@
 msgstr " %d файлов изменено, %d вставок(+), %d удалений(-)\n"
 
 #, python-format
-msgid "calling hook %s: %s\n"
-msgstr "вызов хука %s: %s\n"
-
-#, python-format
 msgid "%s hook is invalid (\"%s\" not in a module)"
 msgstr "некорректный хук %s (\"%s\" отсутствует в модуле)"
 
@@ -23271,6 +24136,10 @@
 msgstr "плохой хук %s (функция \"%s\" невызываема)"
 
 #, python-format
+msgid "calling hook %s: %s\n"
+msgstr "вызов хука %s: %s\n"
+
+#, python-format
 msgid "error: %s hook failed: %s\n"
 msgstr "ошибка: хук %s завершился неудачей: %s\n"
 
@@ -23392,8 +24261,11 @@
 msgstr ""
 "рабочая копия .hgtags изменена (пожалуйста зафиксируйте .hgtags вручную)"
 
-msgid "abandoned transaction found - run hg recover"
-msgstr "обнаружена незавершенная транзакцию - воспользуйтесь hg recover"
+msgid "abandoned transaction found"
+msgstr "обнаружена заброшенная транзакция"
+
+msgid "run 'hg recover' to clean up transaction"
+msgstr "используйте 'hg recover' чтобы исправить транзакцию"
 
 msgid "rolling back interrupted transaction\n"
 msgstr "откатываем прерванную транзакцию\n"
@@ -23440,6 +24312,10 @@
 msgstr "ожидаем снятия блокировки %s удерживаемой %r\n"
 
 #, python-format
+msgid "got lock after %s seconds\n"
+msgstr "блокирован после %s секунд\n"
+
+#, python-format
 msgid "repository %s"
 msgstr "хранилище %s"
 
@@ -23493,88 +24369,6 @@
 msgid "trouble committing %s!\n"
 msgstr "проблемы при фиксации %s!\n"
 
-msgid "requesting all changes\n"
-msgstr "запрашиваем все изменения\n"
-
-msgid ""
-"partial pull cannot be done because other repository doesn't support "
-"changegroupsubset."
-msgstr ""
-"частичное затягивание не может быть произведено, т.к. второе хранилище\n"
-"не поддерживает подмножества групп изменений (changegroupsubset)"
-
-msgid "destination does not support push"
-msgstr "хранилище назначения не поддерживает push"
-
-#, python-format
-msgid "cannot lock source repo, skipping local %s phase update\n"
-msgstr ""
-"не удается заблокировать хранилище-источник, не локальная фаза %s не "
-"обновлена\n"
-
-#, python-format
-msgid "push includes obsolete changeset: %s!"
-msgstr "push включает устаревшую ревизию: %s!"
-
-#, python-format
-msgid "push includes unstable changeset: %s!"
-msgstr "push включает нестабильную ревизию: %s!"
-
-# NOT-SURE bad
-#, python-format
-msgid "push includes bumped changeset: %s!"
-msgstr "push включает \"прибитую\" (bumped) ревизию: %s!"
-
-#, python-format
-msgid "push includes divergent changeset: %s!"
-msgstr "push включает расходящуюся (divergent) ревизию: %s!"
-
-# CHECK ME NOT-SURE
-#, python-format
-msgid "updating %s to public failed!\n"
-msgstr "обновление %s до публичной фазы завершилась неудачей!\n"
-
-#, python-format
-msgid "%d changesets found\n"
-msgstr "найдено %d наборов изменений\n"
-
-msgid "adding changesets\n"
-msgstr "добавляем наборы изменений\n"
-
-# форма такая?
-msgid "chunks"
-msgstr "кусков"
-
-msgid "received changelog group is empty"
-msgstr "полученная группа изменений пуста"
-
-msgid "adding manifests\n"
-msgstr "добавляем манифесты\n"
-
-msgid "adding file changes\n"
-msgstr "добавляем изменения в файлы\n"
-
-#, python-format
-msgid " (%+d heads)"
-msgstr " (%+d голов)"
-
-#, python-format
-msgid "added %d changesets with %d changes to %d files%s\n"
-msgstr "добавлено %d наборов изменений с %d изменениями в %d файлах%s\n"
-
-# NOT-SURE
-msgid "received file revlog group is empty"
-msgstr "полученная группа revlog файла пуста"
-
-# NOT-SURE
-msgid "received spurious file revlog entry"
-msgstr "полученная поддельная revlog-записть файла"
-
-# NOT-SURE
-#, python-format
-msgid "missing file data for %s:%s - run hg verify"
-msgstr "отсутствуют данные файлов для %s:%s - выполните hg verify"
-
 msgid "unexpected response from remote server:"
 msgstr "неожиданный ответ от отдалённого сервера:"
 
@@ -23681,6 +24475,10 @@
 "количество строк контекста для различий должно быть целым числом, а не %r"
 
 #, python-format
+msgid "unsupported merge state record: %s"
+msgstr "неподдерживаемое состояние слияния: %s"
+
+#, python-format
 msgid "warning: cannot merge flags for %s\n"
 msgstr "внимание: не удается слить флаги для %s\n"
 
@@ -23702,24 +24500,6 @@
 msgid "resolving manifests\n"
 msgstr "разрешаем манифесты\n"
 
-# PROMPT
-#, fuzzy, python-format
-msgid ""
-"local changed %s which remote deleted\n"
-"use (c)hanged version or (d)elete?$$ &Changed $$ &Delete"
-msgstr ""
-"локально файл %s изменен, на отдаленной машине удален\n"
-"использовать измененную:(c)hanged версию или удалить:(d)elete?"
-
-# PROMPT
-#, fuzzy, python-format
-msgid ""
-"remote changed %s which local deleted\n"
-"use (c)hanged version or leave (d)eleted?$$ &Changed $$ &Deleted"
-msgstr ""
-" на отдаленной машине файл %s изменен, локально удален\n"
-"использовать измененную:(c)hanged версию или оставить удаленным:(d)eleted?"
-
 #, python-format
 msgid "update failed to remove %s: %s!\n"
 msgstr "не удалось удалить %s при обновлении: %s!\n"
@@ -23743,6 +24523,57 @@
 msgid "note: possible conflict - %s was deleted and renamed to:\n"
 msgstr "внимание: возможен конфликт - %s был удален и переименован в:\n"
 
+#, python-format
+msgid "note: merging %s and %s using bids from ancestors %s\n"
+msgstr "примечание: слияние %s и %s с использованием очков (bids) предков %s\n"
+
+# BUG wtf is a bid here&?
+#, python-format
+msgid ""
+"\n"
+"calculating bids for ancestor %s\n"
+msgstr ""
+"\n"
+"расчет очков (bids) для предков %s\n"
+
+msgid ""
+"\n"
+"auction for merging merge bids\n"
+msgstr ""
+"\n"
+"аукцион для слияния очков (bids) слияния\n"
+
+#, python-format
+msgid " %s: multiple bids for merge action:\n"
+msgstr " %s: множественные очки для действия слияния:\n"
+
+#, python-format
+msgid " %s: ambiguous merge - picked %s action\n"
+msgstr " %s: неоднозначное слияние - выбрано действие %s\n"
+
+msgid "end of auction"
+msgstr "конец аукциона"
+
+# PROMPT
+#, python-format
+msgid ""
+"local changed %s which remote deleted\n"
+"use (c)hanged version or (d)elete?$$ &Changed $$ &Delete"
+msgstr ""
+"локально файл %s изменен, на отдаленной машине удален\n"
+"использовать измененную:(c)hanged версию или удалить:(d)elete?$$ &Changed $$ "
+"&Delete"
+
+# PROMPT
+#, python-format
+msgid ""
+"remote changed %s which local deleted\n"
+"use (c)hanged version or leave (d)eleted?$$ &Changed $$ &Deleted"
+msgstr ""
+" на отдаленной машине файл %s изменен, локально удален\n"
+"использовать измененную:(c)hanged версию или оставить удаленным:(d)eleted?$$ "
+"&Changed $$ &Deleted"
+
 msgid "merging with a working directory ancestor has no effect"
 msgstr "слияние с предком рабочего каталога не имеет смысла"
 
@@ -23753,19 +24584,22 @@
 msgstr "используйте 'hg status' чтобы посмотреть изменения"
 
 #, python-format
-msgid "outstanding uncommitted changes in subrepository '%s'"
-msgstr "незафиксированные изменения в подхранилище %s"
-
-msgid "crosses branches (merge branches or use --clean to discard changes)"
-msgstr ""
-"пересекающиеся ветки (слейте ветки или используйте --clean чтобы\n"
-"отбросить изменения)"
-
-# BUG
-msgid "crosses branches (merge branches or update --check to force update)"
-msgstr ""
-"пересекающиеся ветки (слейте ветки или используйте --check чтобы\n"
-"обновиться принудительно)"
+msgid "uncommitted changes in subrepository '%s'"
+msgstr "незафиксированные изменения в подхранилище '%s'"
+
+msgid "commit and merge, or update --clean to discard changes"
+msgstr ""
+"слейте ветки и зафиксируйте, или используйте update --clean чтобы\n"
+"отбросить изменения"
+
+msgid "commit or update --clean to discard changes"
+msgstr "зафиксируйте или выполните update --clean чтобы отбросить изменения"
+
+msgid "not a linear update"
+msgstr "не линейное обновление"
+
+msgid "merge or update --check to force update"
+msgstr "выполните слияние или update --check для принудительного обновления"
 
 msgid "Attention:"
 msgstr "Внимание:"
@@ -23812,11 +24646,9 @@
 msgid "unknown key: %r"
 msgstr "неизвестный ключ: %r"
 
-msgid "unexpected old value"
-msgstr "неожиданное старое значение"
-
-msgid "failed to push some obsolete markers!\n"
-msgstr "не удалось протолкнуть некоторые маркеры устаревших ревизий!\n"
+#, python-format
+msgid "unexpected old value for %r"
+msgstr "неожиданное старое значение у %r"
 
 #, python-format
 msgid "unexpected token: %s"
@@ -23905,6 +24737,9 @@
 msgid "failed to synchronize metadata for \"%s\""
 msgstr "не удалось синхронизировать метаданные для \"%s\""
 
+msgid "unexpected delta opcode 0"
+msgstr "неожиданный код различия (delta opcode) 0"
+
 #, python-format
 msgid "cannot create %s: destination already exists"
 msgstr "не удается создать %s: назначение уже существует"
@@ -23925,9 +24760,32 @@
 msgstr "не удалось наложить патч"
 
 #, python-format
+msgid "path ends in directory separator: %s"
+msgstr "путь заканчивается разделителем каталогов: %s"
+
+#, python-format
+msgid "path contains illegal component: %s"
+msgstr "путь содержит недопустимый компонент: %s"
+
+#, python-format
+msgid "path '%s' is inside nested repo %r"
+msgstr "путь '%s' находится внутри вложенного хранилища %r"
+
+#, python-format
+msgid "path %r traverses symbolic link %r"
+msgstr "путь %r проходит символическую ссылку %r"
+
+#, python-format
+msgid "%s not under root '%s'"
+msgstr "%s не в корне '%s'"
+
+#, python-format
 msgid "cannot %s; remote repository does not support the %r capability"
 msgstr "%s не возможно; отдаленное хранилище не поддерживает возможность %r"
 
+msgid "cannot lookup negative revision"
+msgstr "невозможно найти отрицательную ревизию"
+
 msgid "cannot change null revision phase"
 msgstr "невозможно изменить фазу пустой ревизии"
 
@@ -23982,6 +24840,14 @@
 msgstr "флаги записи индекса требуют RevlogNG"
 
 #, python-format
+msgid "revlog chunk cache size %r is not greater than 0"
+msgstr "размер кэша куска revlog %r меньше 0"
+
+#, python-format
+msgid "revlog chunk cache size %r is not a power of 2"
+msgstr "размер кэша куска revlog %r не является степенью 2"
+
+#, python-format
 msgid "index %s unknown flags %#04x for format v0"
 msgstr "индекс %s содержит неизвестные флаги %#04x для формата v0"
 
@@ -24008,8 +24874,8 @@
 msgstr "несовместимый флаг ревизии %x"
 
 #, python-format
-msgid "integrity check failed on %s:%d"
-msgstr "ошибка при проверке целостности %s:%d"
+msgid "integrity check failed on %s:%s"
+msgstr "ошибка при проверке целостности %s:%s"
 
 #, python-format
 msgid "%s not found in the transaction"
@@ -24019,9 +24885,6 @@
 msgid "attempted to add linkrev -1 to %s"
 msgstr "попытка добавить linkrev -1 к %s"
 
-msgid "consistency error in delta"
-msgstr "ошибка целостности в дельте"
-
 # {{{ revsets
 #, python-format
 msgid "can't use %s here"
@@ -24034,13 +24897,22 @@
 "``adds(шаблон)``\n"
 "    Наборы изменений, добавляющие файл, совпадающий с шаблоном."
 
+msgid ""
+"    The pattern without explicit kind like ``glob:`` is expected to be\n"
+"    relative to the current directory and match against a file or a\n"
+"    directory."
+msgstr ""
+"    Ожидается, что шаблон без явного задания вида, например ``glob:``,\n"
+"    задан относительно текущего каталога и соответствует файлу или\n"
+"    каталогу."
+
 #. i18n: "adds" is a keyword
 msgid "adds requires a pattern"
 msgstr "adds требует шаблон"
 
 msgid ""
 "``ancestor(*changeset)``\n"
-"    Greatest common ancestor of the changesets."
+"    A greatest common ancestor of the changesets."
 msgstr ""
 "``ancestor(*ревизия)``\n"
 "    Наиболее поздний общий предок наборов изменений."
@@ -24077,6 +24949,23 @@
 msgstr "author требует строку"
 
 msgid ""
+"``only(set, [set])``\n"
+"    Changesets that are ancestors of the first set that are not ancestors\n"
+"    of any other head in the repo. If a second set is specified, the result\n"
+"    is ancestors of the first set that are not ancestors of the second set\n"
+"    (i.e. ::<set1> - ::<set2>)."
+msgstr ""
+"``only(множество, [множество])``\n"
+"    Предки первого множества, которые не являются предками\n"
+"    любой другой головы в хранилище. Если задано второе множество, \n"
+"    то результат - это предки первого множества, не являющиеся предками\n"
+"    второго (т.е., ::<множество1> - ::<множество2>)."
+
+#. i18n: "only" is a keyword
+msgid "only takes one or two arguments"
+msgstr "only принимает один или два аргумента"
+
+msgid ""
 "``bisect(string)``\n"
 "    Changesets marked in the specified bisect status:"
 msgstr ""
@@ -24203,13 +25092,21 @@
 
 msgid ""
 "``contains(pattern)``\n"
-"    Revision contains a file matching pattern. See :hg:`help patterns`\n"
-"    for information about file patterns."
+"    The revision's manifest contains a file matching pattern (but might not\n"
+"    modify it). See :hg:`help patterns` for information about file patterns."
 msgstr ""
 "``contains(шаблон)``\n"
-"    Ревизия, содержащая файл, совпадающий с шаблоном. См. справку по "
-"шаблонам\n"
-"    имён файлов: :hg:`help patterns`."
+"    Манифест ревизии содержит файл, совпадающий с шаблоном, (но может не\n"
+"    менять его). См. справку по шаблонам имён файлов: :hg:`help patterns`."
+
+msgid ""
+"    The pattern without explicit kind like ``glob:`` is expected to be\n"
+"    relative to the current directory and match against a file exactly\n"
+"    for efficiency."
+msgstr ""
+"    Ожидается, что шаблон без явного задания вида, например ``glob:``,\n"
+"    задан относительно текущего каталога и совпадает с именем файла\n"
+"    в точности для эффективности поиска."
 
 #. i18n: "contains" is a keyword
 msgid "contains requires a pattern"
@@ -24352,15 +25249,18 @@
 "    Наборы изменений, связанные с указанным объектом filelog."
 
 msgid ""
-"    For performance reasons, ``filelog()`` does not show every changeset\n"
-"    that affects the requested file(s). See :hg:`help log` for details. For\n"
-"    a slower, more accurate result, use ``file()``."
-msgstr ""
-"    Из соображений производительности, ``filelog()`` не показывает все\n"
-"    наборы изменений, затрагивающие указанный файл(ы). Подробнее см.\n"
-"    :hg:`help log`. Для более точного, но медленного результата, "
-"используйте\n"
-"    ``file()``."
+"    For performance reasons, visits only revisions mentioned in the file-"
+"level\n"
+"    filelog, rather than filtering through all changesets (much faster, but\n"
+"    doesn't include deletes or duplicate changes). For a slower, more "
+"accurate\n"
+"    result, use ``file()``."
+msgstr ""
+"    Из соображений производительности, проверяет только ревизии, упомянутые\n"
+"    в истории файла, а не фильтруя все наборы изменений (намного быстрее, "
+"но\n"
+"    не включает удаления и дублирующие изменения). Для медленного, более\n"
+"    точного результата используйте ``file()``."
 
 #. i18n: "filelog" is a keyword
 msgid "filelog requires a pattern"
@@ -24453,6 +25353,9 @@
 "    Для более быстрого, но не столь точного результата, используйте\n"
 "    ``filelog()``."
 
+msgid "    This predicate uses ``glob:`` as the default kind of pattern."
+msgstr "    Предикат использует вид шаблона ``glob:`` по умолчанию."
+
 #. i18n: "file" is a keyword
 msgid "file requires a pattern"
 msgstr "file требует шаблон"
@@ -24903,9 +25806,19 @@
 "``tag([имя])``\n"
 "    Именованная метка или все помеченные ревизии, если имя не указано."
 
+msgid ""
+"    If `name` starts with `re:`, the remainder of the name is treated as\n"
+"    a regular expression. To match a tag that actually starts with `re:`,\n"
+"    use the prefix `literal:`."
+msgstr ""
+"    Если `имя` начинается с `re:`, остальная часть имени считается "
+"регулярным\n"
+"    выражением. Чтобы найти метку, имя которой начинается с символов\n"
+"    `re:`, используйте префикс `literal:`."
+
 #. i18n: "tag" is a keyword
 msgid "tag takes one or no arguments"
-msgstr "tag не требует аргументов"
+msgstr "tag принимает только один необязательный аргумент"
 
 #. i18n: "tag" is a keyword
 msgid "the argument to tag must be a string"
@@ -24978,31 +25891,11 @@
 msgid "possible case-folding collision for %s"
 msgstr "возможная коллизия прописных/строчных букв в %s"
 
-#, python-format
-msgid "path ends in directory separator: %s"
-msgstr "путь заканчивается разделителем каталогов: %s"
-
-#, python-format
-msgid "path contains illegal component: %s"
-msgstr "путь содержит недопустимый компонент: %s"
-
-#, python-format
-msgid "path '%s' is inside nested repo %r"
-msgstr "путь '%s' находится внутри вложенного хранилища %r"
-
-#, python-format
-msgid "path %r traverses symbolic link %r"
-msgstr "путь %r проходит символическую ссылку %r"
-
 # BUG?
 #, python-format
 msgid "could not symlink to %r: %s"
 msgstr "не удается создать символическую ссылку на %r: %s"
 
-#, python-format
-msgid "%s not under root '%s'"
-msgstr "%s не в корне '%s'"
-
 msgid "empty revision range"
 msgstr "пустой диапазон ревизий"
 
@@ -25020,9 +25913,12 @@
 msgstr "файл .hg/requires поврежден"
 
 #, python-format
-msgid "unknown repository format: requires features '%s' (upgrade Mercurial)"
-msgstr ""
-"неизвестный формат хранилища: требуется возможность '%s' (обновите Mercurial)"
+msgid "repository requires features unknown to this Mercurial: %s"
+msgstr "хранилище требует возможностей, неизвестных данному Mercurial: %s"
+
+msgid ""
+"see http://mercurial.selenic.com/wiki/MissingRequirement for more information"
+msgstr "подробнее см. http://mercurial.selenic.com/wiki/MissingRequirement"
 
 msgid "searching for changes\n"
 msgstr "поиск изменений\n"
@@ -25199,34 +26095,48 @@
 msgstr "не хватает ] в источнике подхранилища"
 
 # PROMPT
-#, fuzzy, python-format
+#, python-format
 msgid ""
 " subrepository sources for %s differ\n"
 "use (l)ocal source (%s) or (r)emote source (%s)?$$ &Local $$ &Remote"
 msgstr ""
 " источники подхранилищ для %s различаются\n"
-"использовать локальный:(l)ocal (%s) или отдаленный:(r)emote источник (%s)?"
-
-# PROMPT
-#, fuzzy, python-format
+"использовать локальный:(l)ocal (%s) или отдаленный:(r)emote источник (%s)?$$ "
+"&Local $$ &Remote"
+
+# PROMPT
+#, python-format
+msgid ""
+" subrepository %s diverged (local revision: %s, remote revision: %s)\n"
+"(M)erge, keep (l)ocal or keep (r)emote?$$ &Merge $$ &Local $$ &Remote"
+msgstr ""
+" расхождение в подхранилище %s (локальная ревизия: %s, отдаленная: %s)\n"
+"выполнить слияние:(m)erge, оставить локальный:(l)ocal или отдаленный:(r)"
+"emote\n"
+"вариант?$$ &Merge $$ &Local $$ &Remote"
+
+# PROMPT
+#, python-format
 msgid ""
 " local changed subrepository %s which remote removed\n"
 "use (c)hanged version or (d)elete?$$ &Changed $$ &Delete"
 msgstr ""
 " локально подхранилище %s изменено, на отдаленной машине удалено\n"
-"использовать измененную:(c)hanged версию, или удалить:(d)elete?"
-
-# PROMPT
-#, fuzzy, python-format
+"использовать измененную:(c)hanged версию, или удалить:(d)elete?$$ &Changed $"
+"$ &Delete"
+
+# PROMPT
+#, python-format
 msgid ""
 " remote changed subrepository %s which local removed\n"
 "use (c)hanged version or (d)elete?$$ &Changed $$ &Delete"
 msgstr ""
 " на отдаленной машине подхранилище %s изменено, локально удалено\n"
-"использовать измененную:(c)hanged версию, или удалить:(d)elete?"
-
-# PROMPT
-#, fuzzy, python-format
+"использовать измененную:(c)hanged версию, или удалить:(d)elete?$$ &Changed $"
+"$ &Delete"
+
+# PROMPT
+#, python-format
 msgid ""
 " subrepository sources for %s differ\n"
 "use (l)ocal source (%s) or (r)emote source (%s)?\n"
@@ -25234,9 +26144,10 @@
 msgstr ""
 " источники подхранилищ для %s различаются\n"
 "использовать локальный:(l)ocal (%s) или отдаленный:(r)emote источник (%s)?\n"
-
-# PROMPT
-#, fuzzy, python-format
+"$$ &Local $$ &Remote"
+
+# PROMPT
+#, python-format
 msgid ""
 " subrepository sources for %s differ (in checked out version)\n"
 "use (l)ocal source (%s) or (r)emote source (%s)?\n"
@@ -25244,15 +26155,34 @@
 msgstr ""
 " источники подхранилищ для %s различаются (в извлеченной версии)\n"
 "использовать локальный:(l)ocal (%s) или отдаленный:(r)emote источник (%s)?\n"
+"$$ &Local $$ &Remote"
 
 msgid "default path for subrepository not found"
 msgstr "путь по умолчанию для подхранилища не найден"
 
 #, python-format
+msgid "warning: removing potentially hostile 'hgrc' in '%s'\n"
+msgstr "внимание: удален потенциально опасный 'hgrc' в '%s'\n"
+
+#, python-format
 msgid "unknown subrepo type %s"
 msgstr "неизвестный тип подхранилища %s"
 
 #, python-format
+msgid "invalid phases.checksubrepos configuration: %s"
+msgstr "неверно задан параметр phases.checksubrepos: %s"
+
+#, python-format
+msgid "can't commit in %s phase conflicting %s from subrepository %s"
+msgstr ""
+"невозможно зафиксировать в фазе %s, конфликтующей с %s из\n"
+"подхранилища %s"
+
+#, python-format
+msgid "warning: changes are committed in %s phase from subrepository %s\n"
+msgstr "внимание: изменения зафиксированы в фазе %s из хранилища %s\n"
+
+#, python-format
 msgid "archiving (%s)"
 msgstr "архивирование (%s)"
 
@@ -25273,6 +26203,10 @@
 msgstr "затягиваем в подхранилище %s из %s\n"
 
 #, python-format
+msgid "revision %s in subrepo %s is hidden\n"
+msgstr "ревизия %s в подхранилище %s скрыта\n"
+
+#, python-format
 msgid "no changes made to subrepo %s since last push to %s\n"
 msgstr ""
 "с момента последнего проталкивания в %s изменений в подхранилище %s не было\n"
@@ -25307,12 +26241,15 @@
 msgid "not removing repo %s because it has changes.\n"
 msgstr "не удаляем хранилище %s, т.к. в нем имеются изменения.\n"
 
-msgid "cannot retrieve git version"
-msgstr "не удалось получить версию git"
+msgid "cannot retrieve git version\n"
+msgstr "не удалось получить версию git\n"
 
 msgid "git subrepo requires at least 1.6.0 or later"
 msgstr "подхранилище git требует версии не ниже 1.6.0"
 
+msgid "git subrepo requires at least 1.6.0 or later\n"
+msgstr "подхранилище git требует версии не ниже 1.6.0\n"
+
 #, python-format
 msgid "revision %s does not exist in subrepo %s\n"
 msgstr "ревизия %s не существует в подхранилище %s\n"
@@ -25345,6 +26282,17 @@
 "невозможно протолкнуть ревизию %s\n"
 
 #, python-format
+msgid ""
+"automatic .hgtags merge failed\n"
+"the following %d tags are in conflict: %s\n"
+msgstr ""
+"не удалось автоматически слить .hgtags\n"
+"%d следующих меток конфликтуют: %s\n"
+
+msgid ".hgtags merged successfully\n"
+msgstr ".hgtags успешно слит\n"
+
+#, python-format
 msgid "%s, line %s: %s\n"
 msgstr "%s, строка %s: %s\n"
 
@@ -25543,6 +26491,9 @@
 msgid ":shortdate: Date. Returns a date like \"2006-09-18\"."
 msgstr ":shortdate: Дата. Возвращает дату в виде \"2006-09-18\"."
 
+msgid ":splitlines: Any text. Split text into a list of lines."
+msgstr ":splitlines: Произвольный текст. Разбивает текст в список строк."
+
 msgid ""
 ":stringify: Any type. Turns the value into text by converting values into\n"
 "    text and concatenating them."
@@ -25602,14 +26553,6 @@
 ":branch: Строка. Имя ветки, на которую был зафиксирован набор изменений."
 
 msgid ""
-":branches: List of strings. The name of the branch on which the\n"
-"    changeset was committed. Will be empty if the branch name was\n"
-"    default."
-msgstr ""
-":branches: Список строк. Имя ветки, на которую был зафиксирован набор\n"
-"    изменений. Будет пустым, если имя ветки было default."
-
-msgid ""
 ":bookmarks: List of strings. Any bookmarks associated with the\n"
 "    changeset."
 msgstr ""
@@ -25619,6 +26562,13 @@
 msgid ":children: List of strings. The children of the changeset."
 msgstr ":children: Список строк. Дочерние ревизии набора изменений."
 
+msgid ""
+":currentbookmark: String. The active bookmark, if it is\n"
+"    associated with the changeset"
+msgstr ""
+":currentbookmark: Строкa. Активная закладка, если она установлена на\n"
+"    набор изменений."
+
 msgid ":date: Date information. The date when the changeset was committed."
 msgstr ":date: Информация о дате. Дата фиксации набора изменений."
 
@@ -25632,6 +26582,13 @@
 ":diffstat: Строка. Статистика изменений в следующем формате:\n"
 "    \"измененные файлы: +добавленных/-удаленных строк\""
 
+msgid ""
+":extras: List of dicts with key, value entries of the 'extras'\n"
+"    field of this changeset."
+msgstr ""
+":extras: Список словарей с парами ключ-значение из поля 'extras'\n"
+"    текущего набора изменений."
+
 msgid ":file_adds: List of strings. Files added by this changeset."
 msgstr ":file_adds: Список строк. Файлы, добавленные этим набором изменений."
 
@@ -25724,6 +26681,9 @@
 msgid ":rev: Integer. The repository-local changeset revision number."
 msgstr ":rev: Целое число. Локальный номер ревизии в этом хранилище."
 
+msgid ":subrepos: List of strings. Updated subrepositories in the changeset."
+msgstr ":subrepos: Список строк. Подхранилища, обнавленные в наборе изменений."
+
 msgid ":tags: List of strings. Any tags associated with the changeset."
 msgstr ":tags: Список строк. Все метки, ассоциированные с набором изменений."
 
@@ -25741,8 +26701,9 @@
 msgid "unknown method '%s'"
 msgstr "неизвестный метод '%s'"
 
-msgid "expected a symbol"
-msgstr "ожидается символ"
+#, python-format
+msgid "expected a symbol, got '%s'"
+msgstr "ожидается символ, получено '%s'"
 
 #, python-format
 msgid "unknown function '%s'"
@@ -25768,6 +26729,9 @@
 msgid "fill expects an integer width"
 msgstr "fill ожидает целое число в качестве ширины"
 
+msgid "pad() expects two to four arguments"
+msgstr "pad() требует от двух до четырех аргументов"
+
 #. i18n: "get" is a keyword
 msgid "get() expects two arguments"
 msgstr "get() требует двух аргументов"
@@ -25780,6 +26744,10 @@
 msgid "if expects two or three arguments"
 msgstr "if требует два или три аргумента"
 
+#. i18n: "ifcontains" is a keyword
+msgid "ifcontains expects three or four arguments"
+msgstr "ifcontains требует трех или четырех аргументов"
+
 #. i18n: "ifeq" is a keyword
 msgid "ifeq expects three or four arguments"
 msgstr "ifeq требует трех или четырех аргументов"
@@ -25788,10 +26756,17 @@
 msgid "join expects one or two arguments"
 msgstr "join требует один или два аргумента"
 
+#. i18n: "revset" is a keyword
+msgid "revset expects one or more arguments"
+msgstr "revset ожидает один или более аргументов"
+
 #. i18n: "rstdoc" is a keyword
 msgid "rstdoc expects two arguments"
 msgstr "rstdoc требует двух аргументов"
 
+msgid "shortest() expects one or two arguments"
+msgstr "shortest() требует один или два аргумента"
+
 msgid "strip expects one or two arguments"
 msgstr "strip ожидает один или два аргумента"
 
@@ -25799,9 +26774,23 @@
 msgid "sub expects three arguments"
 msgstr "sub требует трех аргументов"
 
+#. i18n: "startswith" is a keyword
+msgid "startswith expects two arguments"
+msgstr "startswith требует двух аргументов"
+
+#. i18n: "word" is a keyword
+#, python-format
+msgid "word expects two or three arguments, got %d"
+msgstr "word требует два или три аргумента, получено %d"
+
 msgid "unmatched quotes"
 msgstr "незакрытые кавычки"
 
+msgid "no templates found, try `hg debuginstall` for more info"
+msgstr ""
+"шаблоны не найдены, попробуйте `hg debuginstall` для дополнительной "
+"информации"
+
 #, python-format
 msgid "style '%s' not found"
 msgstr "стиль '%s' не найден"
@@ -25831,6 +26820,10 @@
 msgid "failed to truncate %s\n"
 msgstr "не удалось перезаписать %s\n"
 
+#, python-format
+msgid "failed to recover %s\n"
+msgstr "не удалось восстановить %s\n"
+
 msgid "transaction abort!\n"
 msgstr "транзакция отменена!\n"
 
@@ -25840,6 +26833,10 @@
 msgid "rollback failed - please run hg recover\n"
 msgstr "ошибка при откате - пожалуйста, запустите hg recover\n"
 
+#, python-format
+msgid "couldn't read journal entry %r!\n"
+msgstr "не могу прочитать запись журнала %r!\n"
+
 msgid "already have changeset "
 msgstr "уже имеется набор изменений "
 
@@ -25874,8 +26871,11 @@
 msgid "no username found, using '%s' instead\n"
 msgstr "имя пользователя не найдено, используется '%s'\n"
 
-msgid "no username supplied (see \"hg help config\")"
-msgstr "не задано имя пользователя (см. \"hg help config\")"
+msgid "no username supplied"
+msgstr "не задано имя пользователя"
+
+msgid "use \"hg config --edit\" to set your username"
+msgstr "используйте \"hg config --edit\" чтобы задать ваши имя пользователя"
 
 #, python-format
 msgid "username %s contains a newline\n"
@@ -25894,11 +26894,13 @@
 msgid "cannot create new union repository"
 msgstr "не удается создать новое union-хранилище"
 
-msgid "http authorization required"
-msgstr "требуется http-авторизация"
-
-msgid "http authorization required\n"
-msgstr "требуется http-авторизация\n"
+#, python-format
+msgid "http authorization required for %s"
+msgstr "http-авторизация требуется для %s"
+
+#, python-format
+msgid "http authorization required for %s\n"
+msgstr "http-авторизация требуется для %s\n"
 
 #, python-format
 msgid "realm: %s\n"
@@ -25919,6 +26921,12 @@
 msgid "command '%s' failed: %s"
 msgstr "команда '%s' завершилась ошибкой: %s"
 
+msgid "filename ends with '\\', which is invalid on Windows"
+msgstr "имя файла содержит '\\' на конце, что недопустимо в Windows"
+
+msgid "directory name ends with '\\', which is invalid on Windows"
+msgstr "имя директории содержит '\\' на конце, что недопустимо в Windows"
+
 #, python-format
 msgid "filename contains '%s', which is reserved on Windows"
 msgstr "имя файла содержит '%s', это зарезервированное имя в Windows"
@@ -26260,12 +27268,398 @@
 msgid "look up remote changes"
 msgstr "поиск отдаленных изменений"
 
-msgid "push failed:"
-msgstr "ошибка при проталкивании:"
-
 msgid "number of cpus must be an integer"
 msgstr "количество процессоров должно быть целым"
 
+#~ msgid "edit commit message"
+#~ msgstr "редактировать сообщение фиксации"
+
+#~ msgid "commit message"
+#~ msgstr "сообщение фиксации"
+
+#~ msgid "edit patch header"
+#~ msgstr "редактировать заголовок патча"
+
+#~ msgid "further edit commit message already specified"
+#~ msgstr "впоследсвтии редактировать уже заданное сообщение фиксации"
+
+#~ msgid "use <text> as commit message"
+#~ msgstr "использовать <текст> в качестве сообщения фиксации"
+
+#~ msgid "::"
+#~ msgstr "::"
+
+#~ msgid ""
+#~ "    :convert.hg.startrev: convert start revision and its descendants.\n"
+#~ "        It takes a hg revision identifier and defaults to 0."
+#~ msgstr ""
+#~ "    :convert.hg.startrev: конвертировать указанную ревизию и все ее\n"
+#~ "        дочерние ревизии. Принимает номер ревизии Mercurial,\n"
+#~ "        по умолчанию 0."
+
+#~ msgid "hg git-diff-tree [OPTION]... NODE1 NODE2 [FILE]..."
+#~ msgstr "hg git-diff-tree [ПАРАМЕТР]... УЗЕЛ1 УЗЕЛ2 [ФАЙЛ]..."
+
+#~ msgid "hg debug-rev-list [OPTION]... REV..."
+#~ msgstr "hg debug-rev-list [ПАРАМЕТР]... РЕВИЗИЯ..."
+
+#~ msgid "update to %s or descendant and run \"hg histedit --continue\" again"
+#~ msgstr ""
+#~ "обновитеcь до %s или его потомка и выполните \"hg histedit --continue\" "
+#~ "снова"
+
+#~ msgid "accelerate status report using Linux's inotify service"
+#~ msgstr "ускоренные уведомления об изменениях с использованием Linux inotify"
+
+#~ msgid "start an inotify server for this repository"
+#~ msgstr "запустить сервер inotify для данного хранилища"
+
+#~ msgid "debugging information for inotify extension"
+#~ msgstr "отладочная информация для расширения inotify"
+
+#~ msgid ""
+#~ "    Prints the list of directories being watched by the inotify server.\n"
+#~ "    "
+#~ msgstr ""
+#~ "    Печатает список каталогов, отслеживаемых сервером inotify.\n"
+#~ "    "
+
+#~ msgid "directories being watched:\n"
+#~ msgstr "отслеживаемые каталоги:\n"
+
+#~ msgid "minutes to sit idle before exiting"
+#~ msgstr "количество минут неактивности перед выходом"
+
+#~ msgid "hg inserve [OPTION]..."
+#~ msgstr "hg inserve [ПАРАМЕТР]..."
+
+#~ msgid "inotify-client: found dead inotify server socket; removing it\n"
+#~ msgstr ""
+#~ "inotify-client: обнаружен мертвый сокет inotify-сервера; закрываем его\n"
+
+#~ msgid "inotify-client: could not start inotify server: %s\n"
+#~ msgstr "inotify-client: не удается запустить сервер inotify: %s\n"
+
+#~ msgid "inotify-client: could not talk to new inotify server: %s\n"
+#~ msgstr ""
+#~ "inotify-client: не удается наладить общение с новым сервером inotify: %s\n"
+
+#~ msgid "inotify-client: failed to contact inotify server: %s\n"
+#~ msgstr "inotify-client: не удается соединиться с сервером inotify: %s\n"
+
+#~ msgid "inotify-client: received empty answer from inotify server"
+#~ msgstr "inotify-client: получен пустой ответ от сервера inotify"
+
+#~ msgid "(inotify: received response from incompatible server version %d)\n"
+#~ msgstr "(inotify: получен ответ от сервера несовместимой версии %d)\n"
+
+#~ msgid "(inotify: received '%s' response when expecting '%s')\n"
+#~ msgstr "(inotify: получен ответ '%s', ожидался '%s')\n"
+
+#~ msgid "this system does not seem to support inotify"
+#~ msgstr "ваша система, похоже, не поддерживает inotify"
+
+#~ msgid ""
+#~ "*** the current per-user limit on the number of inotify watches is %s\n"
+#~ msgstr ""
+#~ "*** текущее предельное количество наблюдений inotify на одного "
+#~ "пользователя - %s\n"
+
+#~ msgid ""
+#~ "*** this limit is too low to watch every directory in this repository\n"
+#~ msgstr ""
+#~ "*** этот предел слишком мал чтобы наблюдать за всеми каталогами этого "
+#~ "хранилища\n"
+
+#~ msgid "*** counting directories: "
+#~ msgstr "*** подсчет каталогов: "
+
+#~ msgid "found %d\n"
+#~ msgstr "найдено %d\n"
+
+#~ msgid "*** to raise the limit from %d to %d (run as root):\n"
+#~ msgstr "*** чтобы поднять предел с %d до %d (с правами root):)\n"
+
+#~ msgid "***  echo %d > %s\n"
+#~ msgstr "***  echo %d > %s\n"
+
+#~ msgid "cannot watch %s until inotify watch limit is raised"
+#~ msgstr "невозможно отслеживать %s пока не будет повышен предел наблюдений"
+
+#~ msgid "inotify service not available: %s"
+#~ msgstr "служба inotify недоступна: %s"
+
+#~ msgid "watching %r\n"
+#~ msgstr "наблюдаем за %r\n"
+
+#~ msgid "watching directories under %r\n"
+#~ msgstr "наблюдаем за каталогами в %r\n"
+
+#~ msgid "%s event: created %s\n"
+#~ msgstr "%s событие: создан %s\n"
+
+#~ msgid "%s event: deleted %s\n"
+#~ msgstr "%s событие: %s удален\n"
+
+#~ msgid "%s event: modified %s\n"
+#~ msgstr "%s событие: %s изменен\n"
+
+#~ msgid "filesystem containing %s was unmounted\n"
+#~ msgstr "файловая система, содержащая %s, была отмонтирована\n"
+
+#~ msgid "%s readable: %d bytes\n"
+#~ msgstr "%s доступно для чтения: %d байт\n"
+
+#~ msgid "%s below threshold - unhooking\n"
+#~ msgstr "%s достигнут предел - отцепляем хук\n"
+
+#~ msgid "%s reading %d events\n"
+#~ msgstr "%s читает %d событий\n"
+
+#~ msgid "%s hooking back up with %d bytes readable\n"
+#~ msgstr "%s присоединяем хук заново, можно прочитать %d байт\n"
+
+#~ msgid "finished setup\n"
+#~ msgstr "установка завершена\n"
+
+#~ msgid "status: %r %s -> %s\n"
+#~ msgstr "состояние: %r %s -> %s\n"
+
+#~ msgid "rescanning due to .hgignore change\n"
+#~ msgstr "повторное сканирование из-за изменения .hgignore\n"
+
+#~ msgid "cannot start: socket is already bound"
+#~ msgstr "не удается запуститься: сокет уже привязан"
+
+#~ msgid "answering query for %r\n"
+#~ msgstr "отвечаем на запрос для %r\n"
+
+#~ msgid "received query from incompatible client version %d\n"
+#~ msgstr "получен запрос от клиента несовместимой версии %d\n"
+
+#~ msgid "unrecognized query type: %s\n"
+#~ msgstr "неизвестный тип запроса: %s\n"
+
+#~ msgid "expand expressions into changelog and summaries"
+#~ msgstr "раскрывает выражения в журнале изменений и сводках"
+
+#~ msgid ""
+#~ "This extension allows the use of a special syntax in summaries, which\n"
+#~ "will be automatically expanded into links or any other arbitrary\n"
+#~ "expression, much like InterWiki does."
+#~ msgstr ""
+#~ "Это расширение позволяет использовать в сводках выражения особого вида,\n"
+#~ "которые автоматически раскрываются в ссылки или любое другое "
+#~ "произвольное\n"
+#~ "выражение, как это делается в InterWiki."
+
+#~ msgid ""
+#~ "A few example patterns (link to bug tracking, etc.) that may be used\n"
+#~ "in your hgrc::"
+#~ msgstr ""
+#~ "Примеры шаблонов (ссылка на баг-трекер и т.п.), которые могут быть\n"
+#~ "использованы в вашем hgrc::"
+
+#~ msgid ""
+#~ "  [interhg]\n"
+#~ "  issues = s!issue(\\d+)!<a href=\"http://bts/issue\\1\">issue\\1</a>!\n"
+#~ "  bugzilla = s!((?:bug|b=|(?=#?\\d{4,}))(?:\\s*#?)(\\d+))!<a..=\\2\">\\1</"
+#~ "a>!i\n"
+#~ "  boldify = s!(^|\\s)#(\\d+)\\b! <b>#\\2</b>!\n"
+#~ msgstr ""
+#~ "  [interhg]\n"
+#~ "  issues = s!issue(\\d+)!<a href=\"http://bts/issue\\1\">issue\\1</a>!\n"
+#~ "  bugzilla = s!((?:bug|b=|(?=#?\\d{4,}))(?:\\s*#?)(\\d+))!<a..=\\2\">\\1</"
+#~ "a>!i\n"
+#~ "  boldify = s!(^|\\s)#(\\d+)\\b! <b>#\\2</b>!\n"
+
+#~ msgid "interhg: invalid pattern for %s: %s\n"
+#~ msgstr "interhg: неверный шаблон для %s: %s\n"
+
+#~ msgid "interhg: invalid regexp for %s: %s\n"
+#~ msgstr "interhg: неверное регулярное выражение для %s: %s\n"
+
+# does this require a translation?
+#~ msgid "    .. container:: verbose"
+#~ msgstr "    .. container:: verbose"
+
+#~ msgid "largefiles: No remote repo\n"
+#~ msgstr "largefiles: Нет отдалённого хранилища\n"
+
+#~ msgid "largefiles: %d to upload\n"
+#~ msgstr "largefiles: %d для загрузки\n"
+
+#~ msgid "option \"-e\" incompatible with \"-m\" or \"-l\""
+#~ msgstr "параметр \"-e\" несовместим с \"-m\" или \"-l\""
+
+#~ msgid ""
+#~ "bundle only changesets with local revision number greater than REV which "
+#~ "are not descendants of REV (DEPRECATED)"
+#~ msgstr ""
+#~ "укомплектовать только наборы изменений с локальными номерами ревизий "
+#~ "большими, чем РЕВ, и не являющимися потомками РЕВизии (УСТАРЕЛО)"
+
+#~ msgid ""
+#~ "    Returns 0 on success, 1 if nothing to rebase.\n"
+#~ "    "
+#~ msgstr ""
+#~ "    В случае успеха возвращает 0, 1 если нечего перебазировать.\n"
+#~ "    "
+
+#~ msgid "apply changeset? [ynmpcq?]:"
+#~ msgstr "применить набор изменений? [ynmpcq?]:"
+
+#~ msgid "no such option\n"
+#~ msgstr "нет такого варианта\n"
+
+#~ msgid "cannot backout change on a different branch"
+#~ msgstr "не могу отменить ревизию на другой ветке"
+
+#~ msgid "track a line of development with movable markers"
+#~ msgstr "отслеживать ветку разработки с помощью подвижных меток"
+
+#~ msgid ""
+#~ "    Bookmarks are pointers to certain commits that move when committing.\n"
+#~ "    Bookmarks are local. They can be renamed, copied and deleted. It is\n"
+#~ "    possible to use :hg:`merge NAME` to merge from a given bookmark, and\n"
+#~ "    :hg:`update NAME` to update to a given bookmark."
+#~ msgstr ""
+#~ "    Закладки (bookmarks) - это указатели на некоторую ревизию, которые\n"
+#~ "    перемещаются при фиксации.Их можно переименовывать копировать и "
+#~ "удалять.\n"
+#~ "    Можно использовать имя закладки в :hg:`merge ИМЯ` для слияние от "
+#~ "указанной\n"
+#~ "    закладки и :hg:`update ИМЯ` для обновления на заданную закладку."
+
+#~ msgid ""
+#~ "    You can use :hg:`bookmark NAME` to set a bookmark on the working\n"
+#~ "    directory's parent revision with the given name. If you specify\n"
+#~ "    a revision using -r REV (where REV may be an existing bookmark),\n"
+#~ "    the bookmark is assigned to that revision."
+#~ msgstr ""
+#~ "    Используйте :hg:`bookmark ИМЯ` чтобы создать закладку с заданным\n"
+#~ "    именем на родительскую ревизию рабочего каталога. Если указывается\n"
+#~ "    -r РЕВИЗИЯ (где РЕВИЗИЯ может также быть существующей закладкой),\n"
+#~ "    закладка будет указывать на эту ревизию."
+
+#~ msgid ""
+#~ "    If you set a bookmark called '@', new clones of the repository will\n"
+#~ "    have that revision checked out (and the bookmark made active) by\n"
+#~ "    default."
+#~ msgstr ""
+#~ "    Если вы зададите закладку с именем '@', новые клоны хранилища будут\n"
+#~ "    иметь эту ревизию извлеченной по умолчанию. При этом эта закладка\n"
+#~ "    будет сделана активной."
+
+#~ msgid ""
+#~ "    With -i/--inactive, the new bookmark will not be made the active\n"
+#~ "    bookmark. If -r/--rev is given, the new bookmark will not be made\n"
+#~ "    active even if -i/--inactive is not given. If no NAME is given, the\n"
+#~ "    current active bookmark will be marked inactive.\n"
+#~ "    "
+#~ msgstr ""
+#~ "    Если указан -i/--inactive, новая закладка не будет сделана активной.\n"
+#~ "    Если указан -r/--rev, новая закладка не будет активной, даже если\n"
+#~ "    -i/--inactive не задан. Если не указано ИМЯ, текущая активная "
+#~ "закладка\n"
+#~ "    будет помечена как неактивная.    "
+
+#~ msgid ""
+#~ "    Output may be to a file, in which case the name of the file is\n"
+#~ "    given using a format string. The formatting rules are the same as\n"
+#~ "    for the export command, with the following additions:"
+#~ msgstr ""
+#~ "    Можно печатать в файл, в этом случае его имя задается в виде\n"
+#~ "    форматирующей строки. Формат строки такой же, как в команде export,\n"
+#~ "    со следующими дополнениями:"
+
+#~ msgid ""
+#~ "    :``%s``: basename of file being printed\n"
+#~ "    :``%d``: dirname of file being printed, or '.' if in repository root\n"
+#~ "    :``%p``: root-relative path name of file being printed"
+#~ msgstr ""
+#~ "    :``%s``: базовое имя печатаемого файла\n"
+#~ "    :``%d``: имя каталога печатаемого файла или '.', если файл в корне\n"
+#~ "    :``%p``: путь к печатаемому файлу относительно корня хранилища"
+
+#~ msgid ""
+#~ "    Use -f/--force to override the default behavior and push all\n"
+#~ "    changesets on all branches."
+#~ msgstr ""
+#~ "    Используйте -f/--force чтобы игнорировать поведение по\n"
+#~ "    умолчанию и протолкнуть все изменения на всех ветках."
+
+#~ msgid "no files or directories specified; use --all to remerge all files"
+#~ msgstr ""
+#~ "не заданы файлы или каталоги; --all повторит слияние для всех файлов"
+
+#~ msgid "you should pull and merge or use push -f to force"
+#~ msgstr ""
+#~ "необходимо выполнить pull, затем merge, либо использовать push -f,\n"
+#~ "чтобы протолкнуть принудительно"
+
+#~ msgid "did you forget to merge? use push -f to force"
+#~ msgstr ""
+#~ "забыли выполнить слияние? используйте push -f, чтобы протолкнуть "
+#~ "принудительно"
+
+#~ msgid "note: unsynced remote changes!\n"
+#~ msgstr "внимание: несинхронизированные изменения в отдаленном хранилище!\n"
+
+#~ msgid ""
+#~ "This section configures external merge tools to use for file-level\n"
+#~ "merges."
+#~ msgstr "Эта секция задает внешние инструменты для слияния отдельных файлов."
+
+#~ msgid ""
+#~ "``args``\n"
+#~ "  The arguments to pass to the tool executable. You can refer to the\n"
+#~ "  files being merged as well as the output file through these\n"
+#~ "  variables: ``$base``, ``$local``, ``$other``, ``$output``.\n"
+#~ "  Default: ``$local $base $other``"
+#~ msgstr ""
+#~ "``args``\n"
+#~ "  Аргументы, передаваемые инструменту слияния. Можно обращаться к\n"
+#~ "  сливаемым файлам и результату слияния через эти переменные:\n"
+#~ "  ``$base``, ``$local``, ``$other``, ``$output``.\n"
+#~ "  По умолчанию: ``$local $base $other``"
+
+#~ msgid ".. include:: hg.1.gendoc.txt"
+#~ msgstr ".. include:: hg.1.gendoc.txt"
+
+#~ msgid ".. include:: common.txt\n"
+#~ msgstr ".. include:: common.txt\n"
+
+#~ msgid ".. include:: hgignore.5.gendoc.txt"
+#~ msgstr ".. include:: hgignore.5.gendoc.txt"
+
+#~ msgid ".. include:: common.txt"
+#~ msgstr ".. include:: common.txt"
+
+#~ msgid ".. include:: hgrc.5.gendoc.txt"
+#~ msgstr ".. include:: hgrc.5.gendoc.txt"
+
+#~ msgid ""
+#~ "Five styles are packaged with Mercurial: default (the style used\n"
+#~ "when no explicit preference is passed), compact, changelog, phases\n"
+#~ "and xml.\n"
+#~ "Usage::"
+#~ msgstr ""
+#~ "С Mercurial поставляются пять стилей: стиль по умолчанию (используется,\n"
+#~ "когда другой стиль явно не указан), compact, changelog, phases и xml.\n"
+#~ "Использование::"
+
+#~ msgid "consistency error in delta"
+#~ msgstr "ошибка целостности в дельте"
+
+#~ msgid ""
+#~ ":branches: List of strings. The name of the branch on which the\n"
+#~ "    changeset was committed. Will be empty if the branch name was\n"
+#~ "    default."
+#~ msgstr ""
+#~ ":branches: Список строк. Имя ветки, на которую был зафиксирован набор\n"
+#~ "    изменений. Будет пустым, если имя ветки было default."
+
 #~ msgid "error while verifying signature"
 #~ msgstr "ошибка при проверки подписи"
 
@@ -26382,9 +27776,6 @@
 #~ msgid "nothing to edit\n"
 #~ msgstr "нечего редактировать\n"
 
-#~ msgid "working directory parent is not a descendant of %s"
-#~ msgstr "родитель рабочего каталога не является потомком %s"
-
 #~ msgid ""
 #~ "cannot start: tried linking .hg/inotify.sock to a temporary socket but ."
 #~ "hg/inotify.sock already exists"
@@ -26619,9 +28010,6 @@
 #~ "    Выходное хранилище Mercurial\n"
 #~ "    ''''''''''''''''''''''''''''"
 
-#~ msgid "must specify local origin repository"
-#~ msgstr "хранилище-источник должно быть локальным"
-
 #~ msgid ""
 #~ "Files\n"
 #~ "-----"
@@ -27018,13 +28406,6 @@
 #~ "Если вы замечаете сообщение об ошибке \"BROKEN PIPE\" (\"ОБРЫВ КАНАЛА\")\n"
 #~ "его можно отключить с помощью следующего параметра::"
 
-#~ msgid ""
-#~ "  [pager]\n"
-#~ "  quiet = True"
-#~ msgstr ""
-#~ "  [pager]\n"
-#~ "  quiet = True"
-
 #~ msgid "The hook does not change bug status."
 #~ msgstr "Хук не изменяет статус бага."