i18n/ru.po
changeset 15639 04425770d162
parent 15638 a2edccdfb86a
child 15640 912525f7b8e2
--- a/i18n/ru.po	Thu Nov 10 22:05:02 2011 +0100
+++ b/i18n/ru.po	Fri Nov 18 21:19:05 2011 +0300
@@ -1,16 +1,58 @@
 # Russian translations for Mercurial package.
 # Copyright (C) 2011 Matt Mackall <mpm@selenic.com> and others
 # This file is distributed under the same license as the Mercurial package.
-# extensions расширения
-# options настройки
-# source  источник, исходник, первоисточник
-# hook зацепка
+# === Glossary ===
+#
+# extensions     расширения
+# options        настройки
+# source         источник, исходник, первоисточник
+# directory      директория
+# folder         папка
+# changeset      набор изменений
+# commit         коммит
+# pull           подтянуть, загрузить изменения
+# push           протолкнуть, передать изменения
+# tip            оконечная ревизия
+# revision       ревизия
+# changegroup    группа изменений
+# version        версия
+# log            журнал (о hg log), лог
+# tag            метка
+# branch         ветка
+# working copy   рабочая копия
+# repository     репозиторий
+# surepo         субрепозиторий
+# diff           дифф, различия
+# hash           хэш
+# glob           глоб, glob
+# commit comment комментарий к коммиту (?)
+# update         обновить
+# binary         бинарный
+# backout        
+# basename       
+# head           голова, головная ревизия
+# import         импортировать
+# export         экспортировать
+# merge          слияние, сливать
+# patch          патч
+# rename         переименовать
+# revert
+# delete         удалить (файл из файловой системы)
+# undo           отменить
+# track          отслеживать
+# bundle         бандл
+# committer      автор
+# alias          псевдоним
+# whitespace     пробельный символ
+# match          совпадать (о шаблоне)
+# restricted     ограниченный
+
 
 msgid ""
 msgstr ""
 "Project-Id-Version: Mercurial\n"
 "Report-Msgid-Bugs-To: <mercurial-devel@selenic.com>\n"
-"POT-Creation-Date: 2011-07-01 00:15+0400\n"
+"POT-Creation-Date: 2011-11-18 21:01+0400\n"
 "PO-Revision-Date: 2011-05-12 23:48+0400\n"
 "Last-Translator: Alexander Sauta <demosito@gmail.com>\n"
 "Language-Team: Russian\n"
@@ -37,9 +79,9 @@
 "This section contains help for extensions that are distributed together with "
 "Mercurial. Help for other extensions is available in the help system."
 msgstr ""
-"Этот раздел содержит справку по расширениям, включенным в стандартную "
-"комплектацию Mercurial. Справка по другим расширениям может быть получена в "
-"справочной системе."
+"Этот раздел содержит справку по расширениям, включенным в "
+"стандартный дистрибутив Mercurial. Справка по другим расширениям может быть "
+"получена всправочной системе."
 
 msgid "Options:"
 msgstr "Параметры:"
@@ -49,15 +91,15 @@
 msgstr "    псевдонимы: %s"
 
 msgid "hooks for controlling repository access"
-msgstr "Зацепки (hooks) для контроля доступа к репозиторию"
+msgstr "хуки для контроля доступа к репозиторию"
 
 msgid ""
 "This hook makes it possible to allow or deny write access to given\n"
 "branches and paths of a repository when receiving incoming changesets\n"
 "via pretxnchangegroup and pretxncommit."
 msgstr ""
-"Эта зацепка (hook) позволяет разрешить или запретить доступ на запись заданным\n"
-"бранчам и путям репозитория во время получения входяших changesets\n"
+"Этот хук позволяет разрешить или запретить доступ на запись к заданным\n"
+"веткам и путям репозитория во время получения входяших наборов изменений\n"
 "через pretxnchangegroup и pretxncommit."
 
 msgid ""
@@ -66,7 +108,7 @@
 "changeset (since the latter is merely informative)."
 msgstr ""
 "Авторизация основана на локальном имени пользователя\n"
-системы где выполняется зацепка (hook), а не на имени хозяина (committer) исходного\n"
+"системы, где выполняется хук, а не на имени автора (committer) исходного\n"
 "изменения (changeset) (так как последний имеет чисто информативный характер)."
 
 msgid ""
@@ -77,11 +119,15 @@
 "remote users share an account, because then there is no way to\n"
 "distinguish them."
 msgstr ""
-"Зацепку авторизации (acl hook) лучше всего использовать вместе с ограничительной оболочкой, как например hgsh,\n"
-"которая предотвращает доступ ко всему, кроме push или pull не авторизованным пользователям.\n"
-"Уловку не безопасно использовать, если используется интерактивная оболочка,\n"
-"так как при этом пользователи могут обойти уловку. Это также не безопасно если\n"
-"удалённые пользователи разделяют один и тот же аккаунт, так как при этом нельзя разделить пользователей.\n"
+"Хук авторизации (acl hook) лучше всего использовать вместе с ограниченной "
+"(restricted) оболочкой, как, например hgsh,\n"
+"которая предотвращает доступ ко всему кроме push или pull неавторизованными "
+"пользователями.\n"
+"Хук небезопасно использовать, если используется интерактивная оболочка,\n"
+"так как при этом пользователи могут отключить хук. Это также небезопасно "
+"если\n"
+"удалённые пользователи разделяют один и тот же аккаунт, так как при этом "
+"нельзя различить пользователей."
 
 msgid "The order in which access checks are performed is:"
 msgstr "Порядок, в котором выполняются проверки доступа:"
@@ -98,13 +144,15 @@
 "4) Одобренный список для путей   (раздел ``acl.allow``)"
 
 msgid "The allow and deny sections take key-value pairs."
-msgstr "Одобренный и отказной разделы (the allow and deny sections) принимают пары ключ-значение."
+msgstr ""
+"Одобренный и отказной разделы (секции ``allow`` и ``deny``) принимают пары "
+"ключ-значение."
 
 msgid ""
 "Branch-based Access Control\n"
 "..........................."
 msgstr ""
-"Конроль Доступа основанный на Бранче\n"
+"Конроль доступа, основанный на ветке\n"
 "...................................."
 
 msgid ""
@@ -112,15 +160,16 @@
 "have branch-based access control. Keys in these sections can be\n"
 "either:"
 msgstr ""
-"Используйте ``acl.deny.branches`` и ``acl.allow.branches`` разделы \n"
-"чтобы получить конроль доступа основанный на бранче. Ключами в этих разделах могут быть:"
+"Используйте разделы ``acl.deny.branches`` и ``acl.allow.branches``\n"
+"чтобы получить конроль доступа, основанный на ветке. Ключами в этих разделах "
+"могут быть:"
 
 msgid ""
 "- a branch name, or\n"
 "- an asterisk, to match any branch;"
 msgstr ""
-"- имя бранча, или\n"
-"- звёздочка, чтобы выбрать любой бранч;"
+"- имя ветки, или\n"
+"- звёздочка, чтобы выбрать любую ветку;"
 
 msgid "The corresponding values can be either:"
 msgstr "Соответствующие значения могут быть:"
@@ -136,7 +185,7 @@
 "Path-based Access Control\n"
 "........................."
 msgstr ""
-"Конроль Доступа основанный на Пути\n"
+"Конроль доступа основанный на пути\n"
 ".................................."
 
 msgid ""
@@ -145,9 +194,11 @@
 "a glob syntax by default). The corresponding values follow the same\n"
 "syntax as the other sections above."
 msgstr ""
-"Используйте ``acl.deny`` и ``acl.allow`` разделы для конроль доступа основанного на пути.\n"
+"Используйте разделы ``acl.deny`` и ``acl.allow`` для конроля доступа, "
+"основанного на пути.\n"
 "Ключи в этих разделах принимают шаблон для поддерева (с\n"
-"синтаксисом glob по умолчанию). Соответствующие значения следуют тем же синтаксическим правилам\n"
+"синтаксисом glob по умолчанию). Соответствующие значения следуют тем же "
+"синтаксическим правилам,\n"
 "что и вышеперечисленные разделы."
 
 msgid ""
@@ -161,8 +212,8 @@
 "Group names must be prefixed with an ``@`` symbol. Specifying a group\n"
 "name has the same effect as specifying all the users in that group."
 msgstr ""
-"Имена групп должны начинаться с ``@`` символа. Если имя группы задано,\n"
-"то это даёт тот же эффект, что и указание всех пользователей в этой группе."
+"Имена групп должны начинаться с символа  ``@``. Если имя группы задано,\n"
+"это даёт тот же эффект, что и указание всех пользователей в этой группе."
 
 msgid ""
 "You can define group members in the ``acl.groups`` section.\n"
@@ -170,10 +221,11 @@
 "a Unix-like system, the list of users will be taken from the OS.\n"
 "Otherwise, an exception will be raised."
 msgstr ""
-"Можно задать членов группы в ``acl.groups`` разделе.\n"
-"Если имя группы там не определено и Mercurial работает под управлением\n"
-"Unix-подобной системы, то список пользователей будет определяться ОС (Операционной Системой).\n"
-"В противном случае, генерируется исключение."
+"Можно задать членов группы в разделе ``acl.groups``.\n"
+"Если имя группы там не определено, и Mercurial работает под управлением\n"
+"Unix-подобной системы, то список пользователей будет определяться "
+"операционной системой.\n"
+"В противном случае генерируется исключение."
 
 msgid ""
 "Example Configuration\n"
@@ -186,13 +238,14 @@
 msgstr "::"
 
 msgid "  [hooks]"
-msgstr "  [зацепки (hooks)]"
+msgstr ""
 
 msgid ""
 "  # Use this if you want to check access restrictions at commit time\n"
 "  pretxncommit.acl = python:hgext.acl.hook"
 msgstr ""
-"  # Используйте это если хотите проверять ограничения доступа во время commit\n"
+"  # Используйте это если хотите проверять ограничения доступа во время "
+"коммита\n"
 "  pretxncommit.acl = python:hgext.acl.hook"
 
 msgid ""
@@ -200,7 +253,8 @@
 "  # bundle and serve.\n"
 "  pretxnchangegroup.acl = python:hgext.acl.hook"
 msgstr ""
-"  # Используйте это если хотите проверять ограничения доступа для pull, push,\n"
+"  # Используйте это если хотите проверять ограничения доступа для pull, "
+"push,\n"
 "  # bundle и serve.\n"
 "  pretxnchangegroup.acl = python:hgext.acl.hook"
 
@@ -214,9 +268,12 @@
 "  sources = serve"
 msgstr ""
 "  [acl]\n"
-"  # Разрешать или запрещать доступ к входящим изменениям только если их первоисточник\n"
-"  # указан здесь, иначе они проходят. Источник - \"serve\" для всего\n"
-"  # удалённого доступа (http or ssh), \"push\", \"pull\" or \"bundle\" когда\n"
+"  # Разрешать или запрещать доступ к входящим изменениям только если их "
+"первоисточник\n"
+"  # указан здесь, разрешать в противном случае. Источник - \"serve\" для "
+"всех\n"
+"  # удалённых операций (по http или ssh), или же \"push\", \"pull\" или "
+"\"bundle\", когда\n"
 "  # соответствующие команды выполняются локально.\n"
 "  # По умолчанию: serve\n"
 "  sources = serve"
@@ -224,18 +281,19 @@
 msgid "  [acl.deny.branches]"
 msgstr ""
 
+#, fuzzy
 msgid ""
 "  # Everyone is denied to the frozen branch:\n"
 "  frozen-branch = *"
 msgstr ""
-"  # Всем закрыт доступ во frozen бранч:\n"
+"  # Всем закрыт доступ к ветке frozen:\n"
 "  frozen-branch = *"
 
 msgid ""
 "  # A bad user is denied on all branches:\n"
 "  * = bad-user"
 msgstr ""
-"  # Плохой пользователь забанен для всех бранчей:\n"
+"  # Плохой пользователь забанен на всех ветках:\n"
 "  * = bad-user"
 
 msgid "  [acl.allow.branches]"
@@ -259,7 +317,7 @@
 "  # The super user is allowed on any branch:\n"
 "  * = super-user"
 msgstr ""
-"  # Администратор допущен в любое бранч:\n"
+"  # Администратор допущен в любую ветку:\n"
 "  * = super-user"
 
 msgid ""
@@ -276,9 +334,10 @@
 "  # Format for both lists: glob pattern = user, ..., @group, ..."
 msgstr ""
 "  [acl.deny]\n"
-"  # Этот список - проверочный. Если найдено совпадение, acl.allow не\n"
-"  # проверяется. Все пользователи получают доступ если acl.deny не присутствует.\n"
-"  # Формат для обоих списков: glob pattern = user, ..., @group, ..."
+"  # Этот список проверяется первым. Если найдено совпадение, acl.allow не\n"
+"  # проверяется. Все пользователи получают доступ если acl.deny "
+"отсутствует.\n"
+"  # Формат для обоих списков: glob-шаблон = пользователь, ..., @группа, ..."
 
 msgid ""
 "  # To match everyone, use an asterisk for the user:\n"
@@ -306,8 +365,9 @@
 "  # everyone being able to change all other files. See below.\n"
 "  src/main/resources/DONT-TOUCH-THIS.txt = *"
 msgstr ""
-"  # Никто не сможет изменить файл \"DONT-TOUCH-THIS.txt\", несмотря на то, что\n"
-"  # все могут менять любые другие файлы. Смотри далее.\n"
+"  # Никто не сможет изменить файл \"DONT-TOUCH-THIS.txt\", несмотря на то, "
+"что\n"
+"  # все могут менять любые другие файлы. См. далее.\n"
 "  src/main/resources/DONT-TOUCH-THIS.txt = *"
 
 msgid ""
@@ -324,7 +384,8 @@
 "  # folder:\n"
 "  docs/** = doc_writer"
 msgstr ""
-"  # Пользователь \"doc_writer\" имеет доступ на запись для любого файла в \"docs\"\n"
+"  # Пользователь \"doc_writer\" имеет доступ на запись для любого файла в "
+"\"docs\"\n"
 "  # папке:\n"
 "  docs/** = doc_writer"
 
@@ -333,7 +394,8 @@
 "  # under the \"images\" folder:\n"
 "  images/** = jack, @designers"
 msgstr ""
-"  # Пользователь \"jack\" и группа \"designers\" имеют доступ на запись для любого файла\n"
+"  # Пользователь \"jack\" и группа \"designers\" имеют доступ на запись для "
+"любого файла\n"
 "  # в папке \"images\":\n"
 "  images/** = jack, @designers"
 
@@ -343,7 +405,8 @@
 "  # file. See acl.deny):\n"
 "  src/main/resources/** = *"
 msgstr ""
-"  # Любой пользователь (за исключением \"user6\" - смотри acl.deny выше) получит доступ на запись\n"
+"  # Любой пользователь (за исключением \"user6\" - см. acl.deny выше) "
+"получит доступ на запись\n"
 "  # в любой файл в папке \"resources\" (за исключением 1\n"
 "  # файла. Смотри acl.deny):\n"
 "  src/main/resources/** = *"
@@ -359,7 +422,8 @@
 msgid ""
 "config error - hook type \"%s\" cannot stop incoming changesets nor commits"
 msgstr ""
-"ошибка конфигурации - hook type \"%s\" не может предотвратить входящие изменения (changesets, commits)"
+"ошибка конфигурации - хук типа \"%s\" не может предотвратить входящие "
+"изменения (changesets, commits)"
 
 #, python-format
 msgid "acl: user \"%s\" denied on branch \"%s\" (changeset \"%s\")"
@@ -367,14 +431,18 @@
 
 #, python-format
 msgid "acl: user \"%s\" not allowed on branch \"%s\" (changeset \"%s\")"
-msgstr "acl: пользователь \"%s\" не допущен в бранч \"%s\" (changeset \"%s\")"
-
-#, python-format
-msgid "acl: access denied for changeset %s"
-msgstr "acl: нет доступа для changeset %s"
+msgstr "acl: пользователь \"%s\" не допущен в ветку \"%s\" (changeset \"%s\")"
+
+#, fuzzy, python-format
+msgid "acl: user \"%s\" denied on \"%s\" (changeset \"%s\")"
+msgstr "acl: пользователь \"%s\" не допущен в ветку \"%s\" (changeset \"%s\")"
+
+#, fuzzy, python-format
+msgid "acl: user \"%s\" not allowed on \"%s\" (changeset \"%s\")"
+msgstr "acl: пользователь \"%s\" не допущен в ветку \"%s\" (changeset \"%s\")"
 
 msgid "hooks for integrating with the Bugzilla bug tracker"
-msgstr "зацепки (hooks) для интеграции с Bugzilla bug tracker"
+msgstr "хуки для интеграции с Bugzilla bug tracker"
 
 msgid ""
 "This hook extension adds comments on bugs in Bugzilla when changesets\n"
@@ -433,8 +501,9 @@
 msgstr ""
 
 msgid "Configuration items common to all access modes:"
-msgstr "Данные конфигурации общие для всех режимов доступа:"
-
+msgstr "Общие параметры для всех режимов доступа:"
+
+#, fuzzy
 msgid ""
 "bugzilla.version\n"
 "  This access type to use. Values recognised are:"
@@ -506,7 +575,7 @@
 "  шаблонов ``{hgweb}``."
 
 msgid "Configuration items common to XMLRPC+email and MySQL access modes:"
-msgstr "Данные конфигурации общие для XMLRPC+email и MySQL режимов доступа:"
+msgstr "Общие параметры для XMLRPC+email и MySQL режимов доступа:"
 
 msgid ""
 "bugzilla.usermap\n"
@@ -810,7 +879,8 @@
 msgstr ""
 "    Вывести дочерние ревизии рабочей директории. Если\n"
 "    ревизия задана как -r/--rev, то выведутся дочерние ревизии.\n"
-"    Если задан файл в качестве аргумента, то будет выведена ревизия в которой\n"
+"    Если задан файл в качестве аргумента, то будет выведена ревизия в "
+"которой\n"
 "    этот файл был изменён (после текушей ревизии рабочей директории или\n"
 "    для заданного аргумента --rev).\n"
 "    "
@@ -832,7 +902,7 @@
 msgstr "Ревизия %d это слияние (merge), пропускаем...\n"
 
 msgid "analyzing"
-msgstr "анализирование"
+msgstr "анализ"
 
 msgid "histogram of changes to the repository"
 msgstr "гистограмма изменений репозитория"
@@ -844,10 +914,11 @@
 "    The --dateformat option may be used to group the results by\n"
 "    date instead."
 msgstr ""
-"    Эта команда показывает гистограмму представляющую число\n"
+"    Эта команда показывает гистограмму представляющую количество\n"
 "    изменённых строк или ревизий, сгруппированных в соответствии с заданным\n"
 "    шаблоном. Стандартный шаблон группирует изменения по автору.\n"
-"    Дополнительно, опция --dateformat может быть использавана чтобы сгруппировать результаты\n"
+"    Опция --dateformat может быть использавана, чтобы сгруппировать "
+"результаты\n"
 "    по дате."
 
 msgid ""
@@ -855,8 +926,8 @@
 "    alternatively the number of matching revisions if the\n"
 "    --changesets option is specified."
 msgstr ""
-"    Статистика основана на количестве изменённых строк, или\n"
-"    также числе соответствующих ревизий если задана опция\n"
+"    Статистика основана на количестве изменённых строк, либо\n"
+"    числе соответствующих ревизий, если задана опция\n"
 "    --changesets."
 
 msgid "    Examples::"
@@ -866,21 +937,21 @@
 "      # display count of changed lines for every committer\n"
 "      hg churn -t '{author|email}'"
 msgstr ""
-"      # отобразить число изменённых строк для каждого коммитера\n"
+"      # отобразить число изменённых строк для каждого автора\n"
 "      hg churn -t '{author|email}'"
 
 msgid ""
 "      # display daily activity graph\n"
 "      hg churn -f '%H' -s -c"
 msgstr ""
-"      # отобразить ежедневный граф активности\n"
+"      # отобразить график ежедневной активности\n"
 "      hg churn -f '%H' -s -c"
 
 msgid ""
 "      # display activity of developers by month\n"
 "      hg churn -f '%Y-%m' -s -c"
 msgstr ""
-"      # отобразить активность разработчиков по-месячно\n"
+"      # отобразить активность разработчиков помесячно\n"
 "      hg churn -f '%Y-%m' -s -c"
 
 msgid ""
@@ -898,27 +969,29 @@
 "    задав файл следующего формата::"
 
 msgid "      <alias email> = <actual email>"
-msgstr "      <ник адреса> = <действительный адрес>"
+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"
 "    "
 msgstr ""
-"    Такой файл может быть задан с опцией --aliases , иначе\n"
-"    поиск файла .hgchurn произойдёт в корне рабочей директории.\n"
+"    Такой файл может быть задан опцией --aliases , иначе\n"
+"    поиск файла .hgchurn происходит в корне рабочей директории.\n"
 "    "
 
 #, python-format
 msgid "skipping malformed alias: %s\n"
-msgstr "пропустить неверный ник: %s\n"
-
+msgstr "пропустить неверный псевдоним: %s\n"
+
+#, fuzzy
 msgid "count rate for the specified revision or range"
 msgstr "скорость отсчёта для заданной ревизии или диапазона"
 
 msgid "DATE"
 msgstr "ДАТА"
 
+#, fuzzy
 msgid "count rate for revisions matching date spec"
 msgstr "скорость отсчёта для ревизий соответствующих заданной дате"
 
@@ -926,7 +999,7 @@
 msgstr "ШАБЛОН"
 
 msgid "template to group changesets"
-msgstr "шаблон для групповых изменений"
+msgstr "шаблон для группировки изменений"
 
 msgid "FORMAT"
 msgstr "ФОРМАТ"
@@ -934,9 +1007,11 @@
 msgid "strftime-compatible format for grouping by date"
 msgstr "strftime-совместимый формат для группирования по дате"
 
+#, fuzzy
 msgid "count rate by number of changesets"
 msgstr "скорость отсчёта по номеру изменений"
 
+#, fuzzy
 msgid "sort by key (default: sort by count)"
 msgstr "отсортировать по ключу (по умолчанию: сортировать по числу)"
 
@@ -947,7 +1022,7 @@
 msgstr "ФАЙЛ"
 
 msgid "file with email aliases"
-msgstr "файл с почтовыми никами"
+msgstr "файл с псевдонимами почтовых адресов"
 
 msgid "hg churn [-d DATE] [-r REV] [--aliases FILE] [FILE]"
 msgstr ""
@@ -962,11 +1037,12 @@
 "diff-related commands to highlight additions, removals, diff headers,\n"
 "and trailing whitespace."
 msgstr ""
-"Это расширение изменяет статус и управляет командами чтобы добавить цвет\n"
-"к их выводу для отображения статуса файла, к q-командам чтобы добавить\n"
-"цвет для отображения статуса заплатки (patch) (применена, не применена, отсутствует), и к\n"
-"diff-командам для подсветки добавлений, удалений, diff заголовков,\n"
-"и замыкающих пробелов."
+"Это расширение добавляет цветной вывод для некоторых команд.\n"
+"В командах status и resolve цвет отражает статус файла; в qseries -\n"
+"статус патча (применен, не применен, отсутствует); в команды, связанные\n"
+"с различиями (diff) добавляет подсветку добавлений и удалений файлов, "
+"заголовков\n"
+"различий, а также ведущих пробельных символов."
 
 msgid ""
 "Other effects in addition to color, like bold and underlined text, are\n"
@@ -975,14 +1051,16 @@
 "available, then effects are rendered with the ECMA-48 SGR control\n"
 "function (aka ANSI escape codes)."
 msgstr ""
-"Кроме цвета, также доступны и другие эффекты, такие как жирный или подчёркнутый текст.\n"
-"Пр умолчанию, база terminfo используется для нахождения\n"
-"кодов терминала для изменения цвета или для эффекта. Если terminfo не\n"
-"доступен, тогда эффекты отображаются при помощи контрольной функции ECMA-48 SGR control\n"
-" (также известной как ANSI escape codes)."
+"Кроме цвета, также доступны и другие эффекты, такие как жирный или "
+"подчёркнутый текст.\n"
+"Пр умолчанию для нахождения кодов терминала для эффекта или изменения цвета\n"
+"используется база terminfo. Если terminfo не доступен,\n"
+"эффекты отображаются при помощи контрольной функции ECMA-48 SGR control\n"
+"(также известной как ANSI escape codes)."
 
 msgid "Default effects may be overridden from your configuration file::"
-msgstr "Стандартные эффекты могут быть переопределены в вашем файле конфигурации::"
+msgstr ""
+"Стандартные эффекты могут быть переопределены в вашем файле конфигурации::"
 
 msgid ""
 "  [color]\n"
@@ -994,12 +1072,13 @@
 "  status.ignored = black bold"
 msgstr ""
 "  [цвет]\n"
-"  status.modified = синий подчёркнутый красный_фон (blue bold underline red_background)\n"
-"  status.added = зелёный жирный (green bold)\n"
-"  status.removed = красный жирный синий_фон (red bold blue_background)\n"
-"  status.deleted = голубой жирный подчёркнутый (cyan bold underline)\n"
-"  status.unknown = пурпурный жирный подчёркнутый (magenta bold underline)\n"
-"  status.ignored = чёрный жирный (black bold)"
+"  status.modified = blue bold underline red_background # синий подчёркнутый "
+"красный_фон\n"
+"  status.added = green bold # зелёный жирный\n"
+"  status.removed = red bold blue_background # красный жирный синий_фон\n"
+"  status.deleted = cyan bold underline # голубой жирный подчёркнутый\n"
+"  status.unknown = magenta bold underline # пурпурный жирный подчёркнутый\n"
+"  status.ignored = black bold # чёрный жирный"
 
 msgid ""
 "  # 'none' turns off all effects\n"
@@ -1015,9 +1094,9 @@
 "  qseries.unapplied = black bold\n"
 "  qseries.missing = red bold"
 msgstr ""
-"  qseries.applied = синий жирный подчёркнутый (blue bold underline)\n"
-"  qseries.unapplied = чёрный подчёркнутый (black bold)\n"
-"  qseries.missing = красный жирный (red bold)"
+"  qseries.applied = blue bold underline # синий жирный подчёркнутый\n"
+"  qseries.unapplied = black bold # чёрный подчёркнутый\n"
+"  qseries.missing = red bold # красный жирный"
 
 msgid ""
 "  diff.diffline = bold\n"
@@ -1030,22 +1109,22 @@
 "  diff.changed = white\n"
 "  diff.trailingwhitespace = bold red_background"
 msgstr ""
-"  diff.diffline = жирный (bold)\n"
-"  diff.extended = голубой жирный (cyan bold)\n"
-"  diff.file_a = красный жирный (red bold)\n"
-"  diff.file_b = зелёный жирный (green bold)\n"
-"  diff.hunk = пурпурный (magenta)\n"
-"  diff.deleted = красный (red)\n"
-"  diff.inserted = зелёный (green)\n"
-"  diff.changed = белый (white)\n"
-"  diff.trailingwhitespace = жирный красный_фон (bold red_background)"
+"  diff.diffline = bold # жирный\n"
+"  diff.extended = cyan bold # голубой жирный\n"
+"  diff.file_a = red bold # красный жирный\n"
+"  diff.file_b = green bold # зелёный жирный\n"
+"  diff.hunk = magenta # пурпурный\n"
+"  diff.deleted = red # красный\n"
+"  diff.inserted = green # зелёный\n"
+"  diff.changed = white # белый\n"
+"  diff.trailingwhitespace = bold red_background # жирный красный_фон "
 
 msgid ""
 "  resolve.unresolved = red bold\n"
 "  resolve.resolved = green bold"
 msgstr ""
-"  resolve.unresolved = красный жирный (red bold)\n"
-"  resolve.resolved = зелёный жирный (green bold"
+"  resolve.unresolved = red bold # красный жирный\n"
+"  resolve.resolved = green bold # зелёный жирный"
 
 msgid "  bookmarks.current = green"
 msgstr ""
@@ -1058,6 +1137,11 @@
 msgstr ""
 
 msgid ""
+"  tags.normal = green\n"
+"  tags.local = black bold"
+msgstr ""
+
+msgid ""
 "The available effects in terminfo mode are 'blink', 'bold', 'dim',\n"
 "'inverse', 'invisible', 'italic', 'standout', and 'underline'; in\n"
 "ECMA-48 mode, the options are 'bold', 'inverse', 'italic', and\n"
@@ -1403,10 +1487,11 @@
 "        c недостающими revlog'ами путем ковертации из репозитория\n"
 "        Mercurial и обратно. По умолчанию False."
 
+#, fuzzy
 msgid ""
 "    :convert.hg.saverev: store original revision ID in changeset\n"
-"        (forces target IDs to change). It takes and boolean argument\n"
-"        and defaults to False."
+"        (forces target IDs to change). It takes a boolean argument and\n"
+"        defaults to False."
 msgstr ""
 "    :convert.hg.saverev: созранять исходный номер ревизии в наборе\n"
 "        изменений (изменяет выходные номера ревизий).\n"
@@ -2333,9 +2418,10 @@
 msgstr ""
 
 msgid ""
-"The extension uses an optional ``[eol]`` section in your hgrc file\n"
-"(not the ``.hgeol`` file) for settings that control the overall\n"
-"behavior. There are two settings:"
+"The extension uses an optional ``[eol]`` section read from both the\n"
+"normal Mercurial configuration files and the ``.hgeol`` file, with the\n"
+"latter overriding the former. You can use that section to control the\n"
+"overall behavior. There are three settings:"
 msgstr ""
 
 msgid ""
@@ -2354,6 +2440,12 @@
 msgstr ""
 
 msgid ""
+"- ``eol.fix-trailing-newline`` (default False) can be set to True to\n"
+"  ensure that converted files end with a EOL character (either ``\\n``\n"
+"  or ``\\r\\n`` as per the configured patterns)."
+msgstr ""
+
+msgid ""
 "The extension provides ``cleverencode:`` and ``cleverdecode:`` filters\n"
 "like the deprecated win32text extension does. This means that you can\n"
 "disable win32text and enable eol and your filters will still work. You\n"
@@ -2615,7 +2707,7 @@
 
 #, python-format
 msgid "pulling from %s\n"
-msgstr "подтягивая из %s\n"
+msgstr "получение изменений из %s\n"
 
 msgid ""
 "Other repository doesn't support revision lookup, so a rev cannot be "
@@ -2956,6 +3048,7 @@
 msgid "hg debug-merge-base REV REV"
 msgstr ""
 
+#. i18n: bisect changeset status
 msgid "ignored"
 msgstr "игнорируемые"
 
@@ -3436,6 +3529,408 @@
 "    "
 msgstr ""
 
+#, fuzzy
+msgid "track large binary files"
+msgstr "- Вернуть (revert) копии больших бинарных файлов::"
+
+msgid ""
+"Large binary files tend to be not very compressible, not very\n"
+"diffable, and not at all mergeable. Such files are not handled\n"
+"efficiently by Mercurial's storage format (revlog), which is based on\n"
+"compressed binary deltas; storing large binary files as regular\n"
+"Mercurial files wastes bandwidth and disk space and increases\n"
+"Mercurial's memory usage. The largefiles extension addresses these\n"
+"problems by adding a centralized client-server layer on top of\n"
+"Mercurial: largefiles live in a *central store* out on the network\n"
+"somewhere, and you only fetch the revisions that you need when you\n"
+"need them."
+msgstr ""
+
+msgid ""
+"largefiles works by maintaining a \"standin file\" in .hglf/ for each\n"
+"largefile. The standins are small (41 bytes: an SHA-1 hash plus\n"
+"newline) and are tracked by Mercurial. Largefile revisions are\n"
+"identified by the SHA-1 hash of their contents, which is written to\n"
+"the standin. largefiles uses that revision ID to get/put largefile\n"
+"revisions from/to the central store. This saves both disk space and\n"
+"bandwidth, since you don't need to retrieve all historical revisions\n"
+"of large files when you clone or pull."
+msgstr ""
+
+msgid ""
+"To start a new repository or add new large binary files, just add\n"
+"--large to your :hg:`add` command. For example::"
+msgstr ""
+
+msgid ""
+"  $ dd if=/dev/urandom of=randomdata count=2000\n"
+"  $ hg add --large randomdata\n"
+"  $ hg commit -m 'add randomdata as a largefile'"
+msgstr ""
+
+msgid ""
+"When you push a changeset that adds/modifies largefiles to a remote\n"
+"repository, its largefile revisions will be uploaded along with it.\n"
+"Note that the remote Mercurial must also have the largefiles extension\n"
+"enabled for this to work."
+msgstr ""
+
+msgid ""
+"When you pull a changeset that affects largefiles from a remote\n"
+"repository, Mercurial behaves as normal. However, when you update to\n"
+"such a revision, any largefiles needed by that revision are downloaded\n"
+"and cached (if they have never been downloaded before). This means\n"
+"that network access may be required to update to changesets you have\n"
+"not previously updated to."
+msgstr ""
+
+msgid ""
+"If you already have large files tracked by Mercurial without the\n"
+"largefiles extension, you will need to convert your repository in\n"
+"order to benefit from largefiles. This is done with the\n"
+":hg:`lfconvert` command::"
+msgstr ""
+
+msgid "  $ hg lfconvert --size 10 oldrepo newrepo"
+msgstr ""
+
+msgid ""
+"In repositories that already have largefiles in them, any new file\n"
+"over 10MB will automatically be added as a largefile. To change this\n"
+"threshold, set ``largefiles.minsize`` in your Mercurial config file\n"
+"to the minimum size in megabytes to track as a largefile, or use the\n"
+"--lfsize option to the add command (also in megabytes)::"
+msgstr ""
+
+msgid ""
+"  [largefiles]\n"
+"  minsize = 2"
+msgstr ""
+
+msgid "  $ hg add --lfsize 2"
+msgstr ""
+
+msgid ""
+"The ``largefiles.patterns`` config option allows you to specify a list\n"
+"of filename patterns (see :hg:`help patterns`) that should always be\n"
+"tracked as largefiles::"
+msgstr ""
+
+msgid ""
+"  [largefiles]\n"
+"  patterns =\n"
+"    *.jpg\n"
+"    re:.*\\.(png|bmp)$\n"
+"    library.zip\n"
+"    content/audio/*"
+msgstr ""
+
+msgid ""
+"Files that match one of these patterns will be added as largefiles\n"
+"regardless of their size.\n"
+msgstr ""
+
+#, fuzzy
+msgid "convert a normal repository to a largefiles repository"
+msgstr "Преобразовать репозиторий другой SCM в репозиторий Mercurial"
+
+msgid ""
+"    Convert repository SOURCE to a new repository DEST, identical to\n"
+"    SOURCE except that certain files will be converted as largefiles:\n"
+"    specifically, any file that matches any PATTERN *or* whose size is\n"
+"    above the minimum size threshold is converted as a largefile. The\n"
+"    size used to determine whether or not to track a file as a\n"
+"    largefile is the size of the first version of the file. The\n"
+"    minimum size can be specified either with --size or in\n"
+"    configuration as ``largefiles.size``."
+msgstr ""
+
+msgid ""
+"    After running this command you will need to make sure that\n"
+"    largefiles is enabled anywhere you intend to push the new\n"
+"    repository."
+msgstr ""
+
+msgid ""
+"    Use --to-normal to convert largefiles back to normal files; after\n"
+"    this, the DEST repository can be used without largefiles at all."
+msgstr ""
+
+msgid "getting largefiles"
+msgstr ""
+
+#, fuzzy, python-format
+msgid "getting %s:%s\n"
+msgstr "забываю %s\n"
+
+#, python-format
+msgid "%s: data corruption (expected %s, got %s)\n"
+msgstr ""
+
+#, python-format
+msgid "searching %d changesets for largefiles\n"
+msgstr ""
+
+#, python-format
+msgid "verified contents of %d revisions of %d largefiles\n"
+msgstr ""
+
+#, python-format
+msgid "verified existence of %d revisions of %d largefiles\n"
+msgstr ""
+
+#, python-format
+msgid "unsupported URL scheme %r"
+msgstr ""
+
+#, python-format
+msgid "%s does not appear to be a largefile store"
+msgstr ""
+
+#, fuzzy, python-format
+msgid "%s is not a local Mercurial repo"
+msgstr "метка '%s' не является локальной"
+
+#, python-format
+msgid "initializing destination %s\n"
+msgstr ""
+
+#, fuzzy
+msgid "converting revisions"
+msgstr "показать оконечную (tip) ревизию"
+
+#, python-format
+msgid "renamed/copied largefile %s becomes symlink"
+msgstr ""
+
+#, python-format
+msgid "largefile %s becomes symlink"
+msgstr ""
+
+msgid "uploading largefiles"
+msgstr ""
+
+#, python-format
+msgid "largefile %s missing from store (needs to be uploaded)"
+msgstr ""
+
+#, fuzzy
+msgid "getting changed largefiles\n"
+msgstr "нет изменений\n"
+
+#, python-format
+msgid "%d largefiles updated, %d removed\n"
+msgstr ""
+
+msgid "minimum size (MB) for files to be converted as largefiles"
+msgstr ""
+
+msgid "convert from a largefiles repo to a normal repo"
+msgstr ""
+
+#, fuzzy
+msgid "hg lfconvert SOURCE DEST [FILE ...]"
+msgstr "hg convert [ПАРАМЕТР]... ИСТОЧНИК [НАЗН [REVMAP]]"
+
+#, python-format
+msgid "largefiles: size must be number (not %s)\n"
+msgstr ""
+
+msgid "minimum size for largefiles must be specified"
+msgstr ""
+
+#, fuzzy, python-format
+msgid "unknown operating system: %s\n"
+msgstr "не обновлено: %s\n"
+
+#, python-format
+msgid "Found %s in store\n"
+msgstr ""
+
+#, python-format
+msgid "Found %s in system cache\n"
+msgstr ""
+
+#, python-format
+msgid "bad hash in '%s' (only %d bytes long)"
+msgstr ""
+
+msgid "Can't get file locally"
+msgstr ""
+
+#, python-format
+msgid ""
+"changeset %s: %s missing\n"
+"  (looked for hash %s)\n"
+msgstr ""
+
+#, python-format
+msgid ""
+"changeset %s: %s: contents differ\n"
+"  (%s:\n"
+"  expected hash %s,\n"
+"  but got %s)\n"
+msgstr ""
+
+#, fuzzy, python-format
+msgid "%s already a largefile\n"
+msgstr "файл %s уже существует\n"
+
+#, python-format
+msgid "adding %s as a largefile\n"
+msgstr ""
+
+msgid "no files specified"
+msgstr "не задано ни одного файла"
+
+#, fuzzy, python-format
+msgid "not removing %s: %s (use -f to force removal)\n"
+msgstr "%s не удален: файл изменен (-f - удалить принудительно)\n"
+
+#, fuzzy
+msgid "file still exists"
+msgstr "файл %s уже существует\n"
+
+#, fuzzy
+msgid "file is modified"
+msgstr "%d изменено"
+
+msgid "file has been marked for add"
+msgstr ""
+
+#, python-format
+msgid "removing %s\n"
+msgstr "удаляю %s\n"
+
+msgid "uncommitted local changes"
+msgstr "незакоммиченные локальные изменения"
+
+#, python-format
+msgid "merging %s and %s to %s\n"
+msgstr ""
+
+#, python-format
+msgid "merging %s\n"
+msgstr ""
+
+#, python-format
+msgid ""
+"largefile %s has a merge conflict\n"
+"keep (l)ocal or take (o)ther?"
+msgstr ""
+
+msgid "&Local"
+msgstr "&Локальные"
+
+msgid "&Other"
+msgstr "&Другие"
+
+#, fuzzy
+msgid "destination largefile already exists"
+msgstr "файл %s уже существует\n"
+
+msgid "no files to copy"
+msgstr ""
+
+#, python-format
+msgid "unknown archive type '%s'"
+msgstr ""
+
+msgid "cannot give prefix when archiving to files"
+msgstr ""
+
+#, python-format
+msgid "not removing %s: file is already untracked\n"
+msgstr "%s не удален, он и так не отслеживается\n"
+
+msgid "largefiles: No remote repo\n"
+msgstr ""
+
+msgid "largefiles to upload:\n"
+msgstr ""
+
+#, python-format
+msgid "largefiles: %d to upload\n"
+msgstr ""
+
+msgid "addremove cannot be run on a repo with largefiles"
+msgstr ""
+
+#, python-format
+msgid "largefiles: failed to put %s (%s) into store: %s"
+msgstr ""
+
+#, python-format
+msgid "requested largefile %s not present in cache"
+msgstr ""
+
+msgid "putlfile failed:"
+msgstr ""
+
+msgid "putlfile failed (unexpected response):"
+msgstr ""
+
+msgid "unexpected response:"
+msgstr ""
+
+#, python-format
+msgid "remotestore: could not put %s to remote store %s"
+msgstr ""
+
+#, python-format
+msgid "remotestore: put %s to remote store %s"
+msgstr ""
+
+#, python-format
+msgid "remotestore: could not open file %s: %s"
+msgstr ""
+
+#, python-format
+msgid "remotestore: largefile %s is invalid"
+msgstr ""
+
+#, python-format
+msgid "remotestore: largefile %s is missing"
+msgstr ""
+
+#, fuzzy, python-format
+msgid "changeset %s: %s: contents differ\n"
+msgstr "Набор изменений %d:%s: %s\n"
+
+#, fuzzy, python-format
+msgid "changeset %s: %s missing\n"
+msgstr "Набор изменений %d:%s: %s\n"
+
+#, python-format
+msgid ""
+"largefiles: repo method %r appears to have already been wrapped by another "
+"extension: largefiles may behave incorrectly\n"
+msgstr ""
+
+#, python-format
+msgid "file \"%s\" is a largefile standin"
+msgstr ""
+
+msgid "add as largefile"
+msgstr ""
+
+msgid ""
+"add all files above this size (in megabytes) as largefiles (default: 10)"
+msgstr ""
+
+msgid "verify largefiles"
+msgstr ""
+
+msgid "verify all revisions of largefiles not just current"
+msgstr ""
+
+msgid "verify largefile contents not just existence"
+msgstr ""
+
+#, fuzzy
+msgid "display outgoing largefiles"
+msgstr "отображать с использование файла-карты шаблонов"
+
 msgid "manage a stack of patches"
 msgstr ""
 
@@ -4471,6 +4966,11 @@
 msgid "copy %s to %s\n"
 msgstr ""
 
+msgid ""
+"strip specified revision (optional, can specify revisions without this "
+"option)"
+msgstr ""
+
 msgid "force removal of changesets, discard uncommitted changes (no backup)"
 msgstr ""
 
@@ -4647,9 +5147,16 @@
 msgid "no revisions specified"
 msgstr ""
 
+#, fuzzy
+msgid "warning: uncommitted changes in the working directory\n"
+msgstr "показать измененные файлы в рабочем каталоге"
+
 msgid "list all available queues"
 msgstr ""
 
+msgid "print name of active queue"
+msgstr ""
+
 msgid "create new queue"
 msgstr ""
 
@@ -4678,7 +5185,9 @@
 "registered\n"
 "    queues - by default the \"normal\" patches queue is registered. The "
 "currently\n"
-"    active queue will be marked with \"(active)\"."
+"    active queue will be marked with \"(active)\". Specifying --active will "
+"print\n"
+"    only the name of the active queue."
 msgstr ""
 
 msgid ""
@@ -4772,94 +5281,184 @@
 msgid "operate on patch repository"
 msgstr "работать с репозиторием патчей mq"
 
-msgid "hooks for sending email notifications at commit/push time"
-msgstr ""
-
-msgid ""
-"Subscriptions can be managed through a hgrc file. Default mode is to\n"
-"print messages to stdout, for testing and configuring."
-msgstr ""
-
-msgid ""
-"To use, configure the notify extension and enable it in hgrc like\n"
-"this::"
-msgstr ""
-
-msgid ""
-"  [extensions]\n"
-"  notify ="
+msgid "hooks for sending email push notifications"
+msgstr ""
+
+msgid ""
+"This extension let you run hooks sending email notifications when\n"
+"changesets are being pushed, from the sending or receiving side."
+msgstr ""
+
+msgid ""
+"First, enable the extension as explained in :hg:`help extensions`, and\n"
+"register the hook you want to run. ``incoming`` and ``outgoing`` hooks\n"
+"are run by the changesets receiver while the ``outgoing`` one is for\n"
+"the sender::"
 msgstr ""
 
 msgid ""
 "  [hooks]\n"
 "  # one email for each incoming changeset\n"
 "  incoming.notify = python:hgext.notify.hook\n"
-"  # batch emails when many changesets incoming at one time\n"
-"  changegroup.notify = python:hgext.notify.hook\n"
-"  # batch emails when many changesets outgoing at one time (client side)\n"
+"  # one email for all incoming changesets\n"
+"  changegroup.notify = python:hgext.notify.hook"
+msgstr ""
+
+msgid ""
+"  # one email for all outgoing changesets\n"
 "  outgoing.notify = python:hgext.notify.hook"
 msgstr ""
 
 msgid ""
-"  [notify]\n"
-"  # config items go here"
-msgstr ""
-
-msgid "Required configuration items::"
-msgstr ""
-
-msgid "  config = /path/to/file # file containing subscriptions"
-msgstr ""
-
-msgid "Optional configuration items::"
-msgstr ""
-
-msgid ""
-"  test = True            # print messages to stdout for testing\n"
-"  strip = 3              # number of slashes to strip for url paths\n"
-"  domain = example.com   # domain to use if committer missing domain\n"
-"  style = ...            # style file to use when formatting email\n"
-"  template = ...         # template to use when formatting email\n"
-"  incoming = ...         # template to use when run as incoming hook\n"
-"  outgoing = ...         # template to use when run as outgoing hook\n"
-"  changegroup = ...      # template to use when run as changegroup hook\n"
-"  maxdiff = 300          # max lines of diffs to include (0=none, -1=all)\n"
-"  maxsubject = 67        # truncate subject line longer than this\n"
-"  diffstat = True        # add a diffstat before the diff content\n"
-"  sources = serve        # notify if source of incoming changes in this "
-"list\n"
-"                         # (serve == ssh or http, push, pull, bundle)\n"
-"  merge = False          # send notification for merges (default True)\n"
-"  [email]\n"
-"  from = user@host.com   # email address to send as if none given\n"
-"  [web]\n"
-"  baseurl = http://hgserver/... # root of hg web site for browsing commits"
-msgstr ""
-
-msgid ""
-"The notify config file has same format as a regular hgrc file. It has\n"
-"two sections so you can express subscriptions in whatever way is\n"
-"handier for you."
+"Now the hooks are running, subscribers must be assigned to\n"
+"repositories. Use the ``[usersubs]`` section to map repositories to a\n"
+"given email or the ``[reposubs]`` section to map emails to a single\n"
+"repository::"
 msgstr ""
 
 msgid ""
 "  [usersubs]\n"
-"  # key is subscriber email, value is \",\"-separated list of glob patterns\n"
+"  # key is subscriber email, value is a comma-separated list of glob\n"
+"  # patterns\n"
 "  user@host = pattern"
 msgstr ""
 
 msgid ""
 "  [reposubs]\n"
-"  # key is glob pattern, value is \",\"-separated list of subscriber emails\n"
+"  # key is glob pattern, value is a comma-separated list of subscriber\n"
+"  # emails\n"
 "  pattern = user@host"
 msgstr ""
 
-msgid "Glob patterns are matched against path to repository root."
-msgstr ""
-
-msgid ""
-"If you like, you can put notify config file in repository that users\n"
-"can push changes to, they can manage their own subscriptions.\n"
+msgid ""
+"Glob patterns are matched against absolute path to repository\n"
+"root. The subscriptions can be defined in their own file and\n"
+"referenced with::"
+msgstr ""
+
+msgid ""
+"  [notify]\n"
+"  config = /path/to/subscriptionsfile"
+msgstr ""
+
+msgid ""
+"Alternatively, they can be added to Mercurial configuration files by\n"
+"setting the previous entry to an empty value."
+msgstr ""
+
+msgid ""
+"At this point, notifications should be generated but will not be sent until "
+"you\n"
+"set the ``notify.test`` entry to ``False``."
+msgstr ""
+
+msgid ""
+"Notifications content can be tweaked with the following configuration "
+"entries:"
+msgstr ""
+
+msgid ""
+"notify.test\n"
+"  If ``True``, print messages to stdout instead of sending them. Default: "
+"True."
+msgstr ""
+
+msgid ""
+"notify.sources\n"
+"  Space separated list of change sources. Notifications are sent only\n"
+"  if it includes the incoming or outgoing changes source. Incoming\n"
+"  sources can be ``serve`` for changes coming from http or ssh,\n"
+"  ``pull`` for pulled changes, ``unbundle`` for changes added by\n"
+"  :hg:`unbundle` or ``push`` for changes being pushed\n"
+"  locally. Outgoing sources are the same except for ``unbundle`` which\n"
+"  is replaced by ``bundle``. Default: serve."
+msgstr ""
+
+msgid ""
+"notify.strip\n"
+"  Number of leading slashes to strip from url paths. By default, "
+"notifications\n"
+"  references repositories with their absolute path. ``notify.strip`` let "
+"you\n"
+"  turn them into relative paths. For example, ``notify.strip=3`` will "
+"change\n"
+"  ``/long/path/repository`` into ``repository``. Default: 0."
+msgstr ""
+
+msgid ""
+"notify.domain\n"
+"  If subscribers emails or the from email have no domain set, complete them\n"
+"  with this value."
+msgstr ""
+
+#, fuzzy
+msgid ""
+"notify.style\n"
+"  Style file to use when formatting emails."
+msgstr ""
+"bugzilla.style\n"
+"  Файл стиля для форматирования комментариев."
+
+#, fuzzy
+msgid ""
+"notify.template\n"
+"  Template to use when formatting emails."
+msgstr ""
+"bugzilla.style\n"
+"  Файл стиля для форматирования комментариев."
+
+msgid ""
+"notify.incoming\n"
+"  Template to use when run as incoming hook, override ``notify.template``."
+msgstr ""
+
+msgid ""
+"notify.outgoing\n"
+"  Template to use when run as outgoing hook, override ``notify.template``."
+msgstr ""
+
+msgid ""
+"notify.changegroup\n"
+"  Template to use when running as changegroup hook, override\n"
+"  ``notify.template``."
+msgstr ""
+
+msgid ""
+"notify.maxdiff\n"
+"  Maximum number of diff lines to include in notification email. Set to 0\n"
+"  to disable the diff, -1 to include all of it. Default: 300."
+msgstr ""
+
+msgid ""
+"notify.maxsubject\n"
+"  Maximum number of characters in emails subject line. Default: 67."
+msgstr ""
+
+msgid ""
+"notify.diffstat\n"
+"  Set to True to include a diffstat before diff content. Default: True."
+msgstr ""
+
+msgid ""
+"notify.merge\n"
+"  If True, send notifications for merge changesets. Default: True."
+msgstr ""
+
+msgid ""
+"If set, the following entries will also be used to customize the "
+"notifications:"
+msgstr ""
+
+msgid ""
+"email.from\n"
+"  Email ``From`` address to use if none can be found in generated email "
+"content."
+msgstr ""
+
+msgid ""
+"web.baseurl\n"
+"  Root repository browsing URL to combine with repository paths when making\n"
+"  references. See also ``notify.strip``."
 msgstr ""
 
 #, python-format
@@ -5012,13 +5611,6 @@
 "hgrc(5) for details.\n"
 msgstr ""
 
-#, python-format
-msgid "%s Please enter a valid value"
-msgstr ""
-
-msgid "Please enter a valid value.\n"
-msgstr ""
-
 msgid "send patches as attachments"
 msgstr "отправить патчи как вложения"
 
@@ -5230,6 +5822,9 @@
 msgid "This patch series consists of %d patches."
 msgstr ""
 
+msgid "no recipient addresses provided"
+msgstr ""
+
 msgid ""
 "\n"
 "Final summary:"
@@ -5278,6 +5873,9 @@
 msgid ""
 "  [progress]\n"
 "  delay = 3 # number of seconds (float) before showing the progress bar\n"
+"  changedelay = 1 # changedelay: minimum delay before showing a new topic.\n"
+"                  # If set to less than 3 * refresh, that value will\n"
+"                  # be used instead.\n"
 "  refresh = 0.1 # time in seconds between refreshes of the progress bar\n"
 "  format = topic bar number estimate # format of the progress bar\n"
 "  width = <none> # if set, the maximum width of the progress information\n"
@@ -5424,6 +6022,10 @@
 "ancestor of base and dest)"
 msgstr ""
 
+#, fuzzy
+msgid "rebase these revisions"
+msgstr "вернуть состяние на момент указанной ревизию"
+
 msgid "rebase onto the specified changeset"
 msgstr ""
 
@@ -5433,6 +6035,10 @@
 msgid "use text as collapse commit message"
 msgstr ""
 
+#, fuzzy
+msgid "invoke editor on commit messages"
+msgstr "редактировать комментарий к коммиту"
+
 msgid "read collapse commit message from file"
 msgstr ""
 
@@ -5542,18 +6148,36 @@
 msgid "tool option will be ignored\n"
 msgstr ""
 
+#, fuzzy
+msgid "cannot specify both a source and a base"
+msgstr "нельзя указывать --noupdate и --updaterev одновременно"
+
 msgid "cannot specify both a revision and a base"
 msgstr ""
 
+#, fuzzy
+msgid "cannot specify both a revision and a source"
+msgstr "нельзя указывать одновременно дату и ревизию"
+
 msgid "detach requires a revision to be specified"
 msgstr ""
 
 msgid "cannot specify a base with detach"
 msgstr ""
 
+msgid "can't remove original changesets with unrebased descendants"
+msgstr ""
+
+#, fuzzy
+msgid "use --keep to keep original changesets"
+msgstr "пропустить тестирование набора изменений"
+
 msgid "nothing to rebase\n"
 msgstr ""
 
+msgid "cannot collapse multiple named branches"
+msgstr ""
+
 msgid "rebasing"
 msgstr ""
 
@@ -5599,12 +6223,16 @@
 msgid "cannot rebase onto an applied mq patch"
 msgstr ""
 
+#, fuzzy
+msgid "no matching revisions"
+msgstr "напечатать заданную ревизию"
+
+msgid "can't rebase multiple roots"
+msgstr ""
+
 msgid "source is ancestor of destination"
 msgstr ""
 
-msgid "source is descendant of destination"
-msgstr ""
-
 msgid "--tool can only be used with --rebase"
 msgstr ""
 
@@ -5920,6 +6548,19 @@
 "    "
 msgstr ""
 
+#, fuzzy
+msgid "convert a shared repository to a normal one"
+msgstr "Преобразовать репозиторий другой SCM в репозиторий Mercurial"
+
+msgid ""
+"    Copy the store data to the repo and remove the sharedpath data.\n"
+"    "
+msgstr ""
+
+#, fuzzy
+msgid "this is not a shared repo"
+msgstr "%s не родитель %s"
+
 msgid "do not create a working copy"
 msgstr ""
 
@@ -6315,17 +6956,14 @@
 msgid "archive prefix contains illegal components"
 msgstr ""
 
-msgid "cannot give prefix when archiving to files"
-msgstr ""
-
-#, python-format
-msgid "unknown archive type '%s'"
-msgstr ""
-
 msgid "archiving"
 msgstr ""
 
 #, python-format
+msgid "malformed line in .hg/bookmarks: %r\n"
+msgstr ""
+
+#, python-format
 msgid "bookmark '%s' contains illegal character"
 msgstr ""
 
@@ -6384,6 +7022,10 @@
 msgid "the name '%s' is reserved"
 msgstr "имя '%s' зарезервировано"
 
+#, python-format
+msgid "uncommitted changes in subrepo %s"
+msgstr ""
+
 msgid "options --message and --logfile are mutually exclusive"
 msgstr ""
 
@@ -6470,9 +7112,6 @@
 msgid "destination %s is not a directory"
 msgstr ""
 
-msgid "no files to copy"
-msgstr ""
-
 msgid "(consider using --after)\n"
 msgstr ""
 
@@ -6613,8 +7252,8 @@
 msgid "change working directory"
 msgstr "сменить рабочий каталог"
 
-msgid "do not prompt, assume 'yes' for any required answers"
-msgstr "не спрашивать подтверждания, всегда автоматически отвечать 'да'"
+msgid "do not prompt, automatically pick the first choice for all prompts"
+msgstr ""
 
 msgid "suppress output"
 msgstr "подавлять вывод"
@@ -6678,16 +7317,16 @@
 msgstr "ШАБЛОН"
 
 msgid "include names matching the given patterns"
-msgstr "включить файлы, имена которых соответствуют данным шаблонам"
+msgstr "добавить файлы, имена которых соответствуют данным шаблонам"
 
 msgid "exclude names matching the given patterns"
-msgstr "исключить файлы, имена которых соответствуют данным шаблонам"
+msgstr "не добавлять файлы, имена которых соответствуют данным шаблонам"
 
 msgid "use text as commit message"
 msgstr "текст комментария к коммиту"
 
 msgid "read commit message from file"
-msgstr "читать журнальные сообщения из файла"
+msgstr "взять комментарий к коммиту из файла"
 
 msgid "record the specified date as commit date"
 msgstr "использовать эту дату в качестве даты коммита"
@@ -6822,7 +7461,7 @@
 "    can be expensive. After using this option, :hg:`status -C` can be\n"
 "    used to check which files were identified as moved or renamed."
 msgstr ""
-"    Используйте параметр -s/--similarity чтобы найти переименованные\n"
+"    Используйте параметр -s/--similarity, чтобы найти переименованные\n"
 "    файлы. Если этот параметр больше 0, то производится сравнение\n"
 "    каждого удаленного файла с каждым добавленным, и если они достаточно\n"
 "    похожи, то это фиксируется как переименование. Этот параметр принимает\n"
@@ -6883,7 +7522,7 @@
 "    This command is useful for discovering when a change was made and\n"
 "    by whom."
 msgstr ""
-"    Эта комадна полезна для того чтобы узнать, когда и кем было внесено\n"
+"    Эта комадна полезна для того, чтобы узнать, когда и кем было внесено\n"
 "    изменение."
 
 msgid ""
@@ -6942,6 +7581,22 @@
 "    Тип архива выбирается автоматически на основе расширения файла\n"
 "    (можно переопределить с помощью -t/--type)."
 
+#, fuzzy
+msgid "      Examples:"
+msgstr "    Примеры::"
+
+msgid "      - create a zip file containing the 1.0 release::"
+msgstr ""
+
+msgid "          hg archive -r 1.0 project-1.0.zip"
+msgstr ""
+
+msgid "      - create a tarball excluding .hg files::"
+msgstr ""
+
+msgid "          hg archive project.tar.gz -X \".hg*\""
+msgstr ""
+
 msgid "    Valid types are:"
 msgstr "    Допустимые типы:"
 
@@ -6990,7 +7645,8 @@
 msgid "merge with old dirstate parent after backout"
 msgstr "слить со старым родителем после завершения"
 
-msgid "parent to choose when backing out merge"
+#, fuzzy
+msgid "parent to choose when backing out merge (DEPRECATED)"
 msgstr "выбираемая родительская ревизия при отмене слияния"
 
 msgid "revision to backout"
@@ -7020,10 +7676,17 @@
 "    незакоммиченным."
 
 msgid ""
-"    By default, the pending changeset will have one parent,\n"
-"    maintaining a linear history. With --merge, the pending changeset\n"
-"    will instead have two parents: the old parent of the working\n"
-"    directory and a new child of REV that simply undoes REV."
+"    .. note::\n"
+"      backout cannot be used to fix either an unwanted or\n"
+"      incorrect merge."
+msgstr ""
+
+#, fuzzy
+msgid ""
+"      By default, the pending changeset will have one parent,\n"
+"      maintaining a linear history. With --merge, the pending\n"
+"      changeset will instead have two parents: the old parent of the\n"
+"      working directory and a new child of REV that simply undoes REV."
 msgstr ""
 "    По умолчанию, созданный набор изменений будет иметь одного\n"
 "    родителя, что сохраняет линейую история. Если указан --merge,\n"
@@ -7031,11 +7694,12 @@
 "    каталога и новую дочернюю ревизию РЕВИЗИИ, которая просто\n"
 "    отменяет ее действие."
 
-msgid ""
-"    Before version 1.7, the behavior without --merge was equivalent to\n"
-"    specifying --merge followed by :hg:`update --clean .` to cancel\n"
-"    the merge and leave the child of REV as a head to be merged\n"
-"    separately."
+#, fuzzy
+msgid ""
+"      Before version 1.7, the behavior without --merge was equivalent\n"
+"      to specifying --merge followed by :hg:`update --clean .` to\n"
+"      cancel the merge and leave the child of REV as a head to be\n"
+"      merged separately."
 msgstr ""
 "    До версии 1.7 поведение без --merge было эквивалентно поведению\n"
 "    с --merge с последующим :hg:`update --clean .` с целью отменить\n"
@@ -7054,7 +7718,8 @@
 msgid "cannot backout a change with no parents"
 msgstr "не могу отменить ревизию без родителей"
 
-msgid "cannot backout a merge changeset without --parent"
+#, fuzzy
+msgid "cannot backout a merge changeset"
 msgstr "немогу отменить ревизию слияния без --parent"
 
 #, python-format
@@ -7141,6 +7806,83 @@
 "    ревизию, 127 (команда не найдена) отменяет поиск, любой другой\n"
 "    код возврата означает плохую ревизию."
 
+#, fuzzy
+msgid "      Some examples:"
+msgstr "    Примеры::"
+
+msgid ""
+"      - start a bisection with known bad revision 12, and good revision 34::"
+msgstr ""
+
+msgid ""
+"          hg bisect --bad 34\n"
+"          hg bisect --good 12"
+msgstr ""
+
+msgid ""
+"      - advance the current bisection by marking current revision as good "
+"or\n"
+"        bad::"
+msgstr ""
+
+msgid ""
+"          hg bisect --good\n"
+"          hg bisect --bad"
+msgstr ""
+
+msgid ""
+"      - mark the current revision, or a known revision, to be skipped (eg. "
+"if\n"
+"        that revision is not usable because of another issue)::"
+msgstr ""
+
+msgid ""
+"          hg bisect --skip\n"
+"          hg bisect --skip 23"
+msgstr ""
+
+msgid "      - forget the current bisection::"
+msgstr ""
+
+msgid "          hg bisect --reset"
+msgstr ""
+
+msgid ""
+"      - use 'make && make tests' to automatically find the first broken\n"
+"        revision::"
+msgstr ""
+
+msgid ""
+"          hg bisect --reset\n"
+"          hg bisect --bad 34\n"
+"          hg bisect --good 12\n"
+"          hg bisect --command 'make && make tests'"
+msgstr ""
+
+msgid ""
+"      - see all changesets whose states are already known in the current\n"
+"        bisection::"
+msgstr ""
+
+msgid "          hg log -r \"bisect(pruned)\""
+msgstr ""
+
+msgid "      - see all changesets that took part in the current bisection::"
+msgstr ""
+
+msgid "          hg log -r \"bisect(range)\""
+msgstr ""
+
+msgid "      - with the graphlog extension, you can even get a nice graph::"
+msgstr ""
+
+msgid "          hg log --graph -r \"bisect(range)\""
+msgstr ""
+
+#, fuzzy
+msgid "      See :hg:`help revsets` for more about the `bisect()` keyword."
+msgstr "    Подробнее см. :hg:`help urls`."
+
 msgid "The first good revision is:\n"
 msgstr "Первая хорошая ревизия:\n"
 
@@ -7327,10 +8069,9 @@
 "    ветвь. Используйте :hg:`commit --close-branch` чтобы пометить эту\n"
 "    ветвь как закрытую."
 
-msgid "    .. note::"
-msgstr ""
-
-msgid ""
+#, fuzzy
+msgid ""
+"    .. note::\n"
 "       Branch names are permanent. Use :hg:`bookmark` to create a\n"
 "       light-weight bookmark instead. See :hg:`help glossary` for more\n"
 "       information about named branches and bookmarks."
@@ -7562,48 +8303,35 @@
 "    Адрес источника добавляется в файл ``.hg/hgrc`` нового репозитория,\n"
 "    и используется по умолчанию для последующих pull'ов и push'ей."
 
-msgid "    See :hg:`help urls` for valid source format details."
-msgstr "    См. :hg:`help urls` о форматах адреса источника."
-
-msgid ""
-"    It is possible to specify an ``ssh://`` URL as the destination, but no\n"
-"    ``.hg/hgrc`` and working directory will be created on the remote side.\n"
-"    Please see :hg:`help urls` for important details about ``ssh://`` URLs."
-msgstr ""
-"    Можно указать ``ssh://...`` в качестве адреса назначения, но файл\n"
-"    ``.hg/hgrc`` и рабочая копия не будут созданы на удаленном компьютере.\n"
-"    См. :hg:`help urls` для важной информации об адресах вида ``ssh://...``."
-
-msgid ""
-"    A set of changesets (tags, or branch names) to pull may be specified\n"
-"    by listing each changeset (tag, or branch name) with -r/--rev.\n"
-"    If -r/--rev is used, the cloned repository will contain only a subset\n"
-"    of the changesets of the source repository. Only the set of changesets\n"
-"    defined by all -r/--rev options (including all their ancestors)\n"
-"    will be pulled into the destination repository.\n"
-"    No subsequent changesets (including subsequent tags) will be present\n"
-"    in the destination."
-msgstr ""
-"    Копируемые наборы изменений (changesets) (как метки или имена ветвей)\n"
-"    могут быть заданы указанием каждого набора изменений (метки или имени\n"
-"    ветви) с помощью -r/--rev. При использовании -r/--rev, клонированный\n"
-"    репозиторий будет содержать только подмножество наборов изменений\n"
-"    источника."
-
-msgid ""
-"    Using -r/--rev (or 'clone src#rev dest') implies --pull, even for\n"
-"    local source repositories."
-msgstr ""
-"    Использование -r/--rev (или 'clone источник#ревизия назн')\n"
-"    предполагает --pull, даже если источник локален."
-
-msgid ""
-"    For efficiency, hardlinks are used for cloning whenever the source\n"
-"    and destination are on the same filesystem (note this applies only\n"
-"    to the repository data, not to the working directory). Some\n"
-"    filesystems, such as AFS, implement hardlinking incorrectly, but\n"
-"    do not report errors. In these cases, use the --pull option to\n"
-"    avoid hardlinking."
+msgid ""
+"    Only local paths and ``ssh://`` URLs are supported as\n"
+"    destinations. For ``ssh://`` destinations, no working directory or\n"
+"    ``.hg/hgrc`` will be created on the remote side."
+msgstr ""
+
+msgid ""
+"    To pull only a subset of changesets, specify one or more revisions\n"
+"    identifiers with -r/--rev or branches with -b/--branch. The\n"
+"    resulting clone will contain only the specified changesets and\n"
+"    their ancestors. These options (or 'clone src#rev dest') imply\n"
+"    --pull, even for local source repositories. Note that specifying a\n"
+"    tag will include the tagged changeset but not the changeset\n"
+"    containing the tag."
+msgstr ""
+
+msgid ""
+"    To check out a particular version, use -u/--update, or\n"
+"    -U/--noupdate to create a clone with no working directory."
+msgstr ""
+
+#, fuzzy
+msgid ""
+"      For efficiency, hardlinks are used for cloning whenever the\n"
+"      source and destination are on the same filesystem (note this\n"
+"      applies only to the repository data, not to the working\n"
+"      directory). Some filesystems, such as AFS, implement hardlinking\n"
+"      incorrectly, but do not report errors. In these cases, use the\n"
+"      --pull option to avoid hardlinking."
 msgstr ""
 "    Для эффективности, при клонировании источника на одной файловой\n"
 "    системе с целевым репозиторием, используются жесткие ссылки (это\n"
@@ -7612,23 +8340,26 @@
 "    жесткие ссылки, но не сообщают об ошибках. В этом случае используйте\n"
 "    --pull чтобы избежать жестких ссылок."
 
-msgid ""
-"    In some cases, you can clone repositories and the working directory\n"
-"    using full hardlinks with ::"
+#, fuzzy
+msgid ""
+"      In some cases, you can clone repositories and the working\n"
+"      directory using full hardlinks with ::"
 msgstr ""
 "    В некоторых случаях можно клонировать репозитории и рабочие\n"
 "    каталоги целиком жесткими ссылками ::"
 
-msgid "      $ cp -al REPO REPOCLONE"
+#, fuzzy
+msgid "        $ cp -al REPO REPOCLONE"
 msgstr "      $ cp -al РЕПОЗИТОРИЙ КЛОН"
 
-msgid ""
-"    This is the fastest way to clone, but it is not always safe. The\n"
-"    operation is not atomic (making sure REPO is not modified during\n"
-"    the operation is up to you) and you have to make sure your editor\n"
-"    breaks hardlinks (Emacs and most Linux Kernel tools do so). Also,\n"
-"    this is not compatible with certain extensions that place their\n"
-"    metadata under the .hg directory, such as mq."
+#, fuzzy
+msgid ""
+"      This is the fastest way to clone, but it is not always safe. The\n"
+"      operation is not atomic (making sure REPO is not modified during\n"
+"      the operation is up to you) and you have to make sure your\n"
+"      editor breaks hardlinks (Emacs and most Linux Kernel tools do\n"
+"      so). Also, this is not compatible with certain extensions that\n"
+"      place their metadata under the .hg directory, such as mq."
 msgstr ""
 "    Это самый быстрый способ клонирования, но он не всегда безопасен.\n"
 "    Эта операция не атомарна (вам надо следить за тем, что РЕПОЗИТОРИЙ\n"
@@ -7638,24 +8369,26 @@
 "    не совместим с некоторыми расширениями, которые хранят свои\n"
 "    метаданные в каталоге .hg, как mq."
 
-msgid ""
-"    Mercurial will update the working directory to the first applicable\n"
-"    revision from this list:"
+#, fuzzy
+msgid ""
+"      Mercurial will update the working directory to the first applicable\n"
+"      revision from this list:"
 msgstr ""
 "    Mercurial обновит рабочий каталог до первой подходящей ревизии по\n"
 "    списку:"
 
-msgid ""
-"    a) null if -U or the source repository has no changesets\n"
-"    b) if -u . and the source repository is local, the first parent of\n"
-"       the source repository's working directory\n"
-"    c) the changeset specified with -u (if a branch name, this means the\n"
-"       latest head of that branch)\n"
-"    d) the changeset specified with -r\n"
-"    e) the tipmost head specified with -b\n"
-"    f) the tipmost head specified with the url#branch source syntax\n"
-"    g) the tipmost head of the default branch\n"
-"    h) tip"
+#, fuzzy
+msgid ""
+"      a) null if -U or the source repository has no changesets\n"
+"      b) if -u . and the source repository is local, the first parent of\n"
+"         the source repository's working directory\n"
+"      c) the changeset specified with -u (if a branch name, this means the\n"
+"         latest head of that branch)\n"
+"      d) the changeset specified with -r\n"
+"      e) the tipmost head specified with -b\n"
+"      f) the tipmost head specified with the url#branch source syntax\n"
+"      g) the tipmost head of the default branch\n"
+"      h) tip"
 msgstr ""
 "    а) пустой каталог, если в источнике нет наборов изменений или указан -U\n"
 "    б) если указан -u . и источник локален, до первого родителя рабочей "
@@ -7669,6 +8402,51 @@
 "    ж) до последней ревизии ветви default\n"
 "    з) до последней ревизии"
 
+#, fuzzy
+msgid "      - clone a remote repository to a new directory named hg/::"
+msgstr "    Создает копию существующего репозитория в новом каталоге."
+
+msgid "          hg clone http://selenic.com/hg"
+msgstr ""
+
+msgid "      - create a lightweight local clone::"
+msgstr ""
+
+msgid "          hg clone project/ project-feature/"
+msgstr ""
+
+msgid ""
+"      - clone from an absolute path on an ssh server (note double-slash)::"
+msgstr ""
+
+msgid "          hg clone ssh://user@server//home/projects/alpha/"
+msgstr ""
+
+msgid ""
+"      - do a high-speed clone over a LAN while checking out a\n"
+"        specified version::"
+msgstr ""
+
+msgid "          hg clone --uncompressed http://server/repo -u 1.5"
+msgstr ""
+
+msgid ""
+"      - create a repository without changesets after a particular revision::"
+msgstr ""
+
+msgid "          hg clone -r 04e544 experimental/ good/"
+msgstr ""
+
+msgid "      - clone (and track) a particular named branch::"
+msgstr ""
+
+msgid "          hg clone http://selenic.com/hg#stable"
+msgstr ""
+
+#, fuzzy
+msgid "    See :hg:`help urls` for details on specifying URLs."
+msgstr "    Подробнее см. :hg:`help urls`."
+
 msgid "cannot specify both --noupdate and --updaterev"
 msgstr "нельзя указывать --noupdate и --updaterev одновременно"
 
@@ -8046,7 +8824,8 @@
 msgid " (check that you compiled the extensions)\n"
 msgstr ""
 
-msgid "Checking templates...\n"
+#, python-format
+msgid "Checking templates (%s)...\n"
 msgstr ""
 
 msgid " (templates seem to have been installed incorrectly)\n"
@@ -8226,6 +9005,42 @@
 "    Используйте -g/--git чтобы генерировать отличия в расширенном\n"
 "    формате git. Подробнее см. :hg:`help diffs`."
 
+#, fuzzy
+msgid "      - compare a file in the current working directory to its parent::"
+msgstr "    Если каталог не задан, будет использован текущий."
+
+msgid "          hg diff foo.c"
+msgstr ""
+
+msgid ""
+"      - compare two historical versions of a directory, with rename info::"
+msgstr ""
+
+msgid "          hg diff --git -r 1.0:1.2 lib/"
+msgstr ""
+
+msgid "      - get change stats relative to the last change on some date::"
+msgstr ""
+
+msgid "          hg diff --stat -r \"date('may 2')\""
+msgstr ""
+
+#, fuzzy
+msgid "      - diff all newly-added files that contain a keyword::"
+msgstr "- Найти текстовые файлы, содержащие строку::"
+
+msgid "          hg diff \"set:added() and grep(GNU)\""
+msgstr ""
+
+msgid "      - compare a revision and its parents::"
+msgstr ""
+
+msgid ""
+"          hg diff -c 9353         # compare against first parent\n"
+"          hg diff -r 9353^:9353   # same using revset syntax\n"
+"          hg diff -r 9353^2:9353  # compare against the second parent"
+msgstr ""
+
 msgid "diff against the second parent"
 msgstr "отличия от второй родительской ревизии"
 
@@ -8270,6 +9085,7 @@
 "    Можно осуществлять вывод в файл, при этом имя файла задается\n"
 "    в виде форматирующей строки. Правила форматирования:"
 
+#, fuzzy
 msgid ""
 "    :``%%``: literal \"%\" character\n"
 "    :``%H``: changeset hash (40 hexadecimal digits)\n"
@@ -8277,6 +9093,8 @@
 "    :``%R``: changeset revision number\n"
 "    :``%b``: basename of the exporting repository\n"
 "    :``%h``: short-form changeset hash (12 hexadecimal digits)\n"
+"    :``%m``: first line of the commit message (only alphanumeric "
+"characters)\n"
 "    :``%n``: zero-padded sequence number, starting at 1\n"
 "    :``%r``: zero-padded changeset revision number"
 msgstr ""
@@ -8312,6 +9130,30 @@
 "    Если указан --switch-parent, будут генерироваться отличия от\n"
 "    второго родителя. Это может быть полезно при анализе слияния."
 
+msgid ""
+"      - use export and import to transplant a bugfix to the current\n"
+"        branch::"
+msgstr ""
+
+msgid "          hg export -r 9353 | hg import -"
+msgstr ""
+
+msgid ""
+"      - export all the changesets between two revisions to a file with\n"
+"        rename information::"
+msgstr ""
+
+msgid "          hg export --git -r 123:150 > changes.txt"
+msgstr ""
+
+msgid ""
+"      - split outgoing changes into a series of patches with\n"
+"        descriptive names::"
+msgstr ""
+
+msgid "          hg export -r \"outgoing()\" -o \"%n-%m.patch\""
+msgstr ""
+
 msgid "export requires at least one changeset"
 msgstr "для экспорта требуется хотя бы один набор изменений"
 
@@ -8344,16 +9186,126 @@
 "    Чтобы отменить действие forget до следующего коммита\n"
 "    см. :hg:`add`."
 
-msgid "no files specified"
-msgstr "не задано ни одного файла"
-
-#, python-format
-msgid "not removing %s: file is already untracked\n"
-msgstr "%s не удален, он и так не отслеживается\n"
-
-#, python-format
-msgid "removing %s\n"
-msgstr "удаляю %s\n"
+#, fuzzy
+msgid "      - forget newly-added binary files::"
+msgstr "- Вернуть (revert) копии больших бинарных файлов::"
+
+msgid "          hg forget \"set:added() and binary()\""
+msgstr ""
+
+msgid "      - forget files that would be excluded by .hgignore::"
+msgstr ""
+
+msgid "          hg forget \"set:hgignore()\""
+msgstr ""
+
+msgid "resume interrupted graft"
+msgstr ""
+
+#, fuzzy
+msgid "record the current date as commit date"
+msgstr "использовать эту дату в качестве даты коммита"
+
+#, fuzzy
+msgid "record the current user as committer"
+msgstr "использовать этого пользователя как автора коммита"
+
+#, fuzzy
+msgid "[OPTION]... REVISION..."
+msgstr "[ПАРАМЕТР]... ФАЙЛ..."
+
+msgid "copy changes from other branches onto the current branch"
+msgstr ""
+
+msgid ""
+"    This command uses Mercurial's merge logic to copy individual\n"
+"    changes from other branches without merging branches in the\n"
+"    history graph. This is sometimes known as 'backporting' or\n"
+"    'cherry-picking'. By default, graft will copy user, date, and\n"
+"    description from the source changesets."
+msgstr ""
+
+msgid ""
+"    Changesets that are ancestors of the current revision, that have\n"
+"    already been grafted, or that are merges will be skipped."
+msgstr ""
+
+msgid ""
+"    If a graft merge results in conflicts, the graft process is\n"
+"    aborted so that the current merge can be manually resolved. Once\n"
+"    all conflicts are addressed, the graft process can be continued\n"
+"    with the -c/--continue option."
+msgstr ""
+
+msgid ""
+"    .. note::\n"
+"      The -c/--continue option does not reapply earlier options."
+msgstr ""
+
+msgid ""
+"      - copy a single change to the stable branch and edit its description::"
+msgstr ""
+
+msgid ""
+"          hg update stable\n"
+"          hg graft --edit 9393"
+msgstr ""
+
+msgid ""
+"      - graft a range of changesets with one exception, updating dates::"
+msgstr ""
+
+msgid "          hg graft -D \"2085::2093 and not 2091\""
+msgstr ""
+
+msgid "      - continue a graft after resolving conflicts::"
+msgstr ""
+
+msgid "          hg graft -c"
+msgstr ""
+
+msgid "      - show the source of a grafted changeset::"
+msgstr ""
+
+msgid "          hg log --debug -r tip"
+msgstr ""
+
+#, fuzzy
+msgid ""
+"    Returns 0 on successful completion.\n"
+"    "
+msgstr ""
+"    В случае успеха возвращает 0.\n"
+"    "
+
+#, fuzzy
+msgid "can't specify --continue and revisions"
+msgstr "нельзя задавать шаблон и --all одновременно"
+
+msgid "no graft state found, can't continue"
+msgstr ""
+
+#, python-format
+msgid "skipping ungraftable merge revision %s\n"
+msgstr ""
+
+#, fuzzy, python-format
+msgid "skipping ancestor revision %s\n"
+msgstr "пропустить неверный псевдоним: %s\n"
+
+#, fuzzy, python-format
+msgid "skipping already grafted revision %s\n"
+msgstr "пропустить неверный псевдоним: %s\n"
+
+#, fuzzy, python-format
+msgid "grafting revision %s\n"
+msgstr "Задание набора ревизий"
+
+msgid "unresolved conflicts, can't continue"
+msgstr ""
+
+msgid "use hg resolve and hg graft --continue"
+msgstr ""
 
 msgid "end fields with NUL"
 msgstr "заканчивать поля символом NUL"
@@ -8457,9 +9409,12 @@
 "    объектами для операций update или merge. Головы ветвей - это наборы\n"
 "    изменений, у которых нет дочерних наборов на той же ветви."
 
+#, fuzzy
 msgid ""
 "    If one or more REVs are given, only branch heads on the branches\n"
-"    associated with the specified changesets are shown."
+"    associated with the specified changesets are shown. This means\n"
+"    that you can use :hg:`heads foo` to see the heads on a branch\n"
+"    named ``foo``."
 msgstr ""
 "    Если указана одна или более РЕВИЗИЯ, показываются только головы\n"
 "    на ветвях, ассоциированных с указанными ревизиями."
@@ -8532,6 +9487,20 @@
 "    Возвращает 0 при успешном выполнении.\n"
 "    "
 
+msgid "VALUE"
+msgstr "ЗНАЧЕНИЕ"
+
+msgid "DEPRECATED"
+msgstr "УСТАРЕЛО"
+
+#, fuzzy
+msgid ""
+"\n"
+"[+] marked option can be specified multiple times\n"
+msgstr ""
+"\n"
+"параметры, помеченные [+], могут указываться многократно"
+
 msgid "global options:"
 msgstr "глобальные параметры:"
 
@@ -8553,13 +9522,10 @@
 "используйте \"hg -v help%s\" чтобы посмотреть встроенные псевдонимы и "
 "глобальные параметры"
 
-#, python-format
-msgid "use \"hg -v help %s\" to show global options"
+#, fuzzy, python-format
+msgid "use \"hg -v help %s\" to show more info"
 msgstr "используйте \"hg -v help %s\" для просмотра глобальных параметров"
 
-msgid "list of commands:"
-msgstr "список команд:"
-
 #, python-format
 msgid ""
 "\n"
@@ -8588,23 +9554,42 @@
 msgstr "%s"
 
 #, python-format
+msgid "use \"hg help -e %s\" to show help for the %s extension"
+msgstr "используйте \"hg help -e %s\" для просмотра справки по расширению %s"
+
+#, fuzzy, python-format
 msgid ""
 "\n"
-"use \"hg -v help %s\" to show verbose help\n"
+"use \"hg help %s\" to show the full help text\n"
+msgstr "используйте \"hg help %s\" чтобы получить полную справку"
+
+#, fuzzy, python-format
+msgid ""
+"\n"
+"use \"hg -v help %s\" to show more info\n"
 msgstr ""
 "\n"
 "используйте \"hg -v help %s\" чтобы посмотреть подробную справку\n"
 
-msgid "options:\n"
-msgstr "параметры:\n"
-
-#, python-format
-msgid "use \"hg help -e %s\" to show help for the %s extension"
-msgstr "используйте \"hg help -e %s\" для просмотра справки по расширению %s"
+msgid "basic commands:"
+msgstr "Основные команды:"
+
+msgid "list of commands:"
+msgstr "список команд:"
 
 msgid "no commands defined\n"
 msgstr "команды не определены\n"
 
+msgid "enabled extensions:"
+msgstr "Включенные расширения:"
+
+msgid ""
+"\n"
+"additional help topics:"
+msgstr ""
+"\n"
+"дополнительные разделы справки:"
+
 #, python-format
 msgid ""
 "\n"
@@ -8630,32 +9615,6 @@
 msgid "Mercurial Distributed SCM\n"
 msgstr "Распределенная SCM Mercurial\n"
 
-msgid "basic commands:"
-msgstr "Основные команды:"
-
-msgid "enabled extensions:"
-msgstr "Включенные расширения:"
-
-msgid "VALUE"
-msgstr "ЗНАЧЕНИЕ"
-
-msgid "DEPRECATED"
-msgstr "УСТАРЕЛО"
-
-msgid ""
-"\n"
-"[+] marked option can be specified multiple times"
-msgstr ""
-"\n"
-"параметры, помеченные [+], могут указываться многократно"
-
-msgid ""
-"\n"
-"additional help topics:"
-msgstr ""
-"\n"
-"дополнительные разделы справки:"
-
 msgid "identify the specified revision"
 msgstr "описать заданную ревизию"
 
@@ -8706,6 +9665,25 @@
 "    Если задан путь к репозиторию или бандлу Mercurial, будет\n"
 "    работать с этим репозиторием/бандлом."
 
+msgid "      - generate a build identifier for the working directory::"
+msgstr ""
+
+msgid "          hg id --id > build-id.dat"
+msgstr ""
+
+msgid "      - find the revision corresponding to a tag::"
+msgstr ""
+
+msgid "          hg id -n -r 1.3"
+msgstr ""
+
+#, fuzzy
+msgid "      - check the most recent revision of a remote repository::"
+msgstr "    Печатает корневой каталог текущего репозитория."
+
+msgid "          hg id -r tip http://selenic.com/hg/"
+msgstr ""
+
 msgid "can't query remote revision number, branch, or tags"
 msgstr "не могу запросить номер удаленной ревизии, ветви или метки"
 
@@ -8823,6 +9801,36 @@
 "    стандартного ввода. Если указан URL, патч будет загружен оттуда.\n"
 "    См. :hg:`help dates` о допустимых форматах дат для -d/--date."
 
+msgid "      - import a traditional patch from a website and detect renames::"
+msgstr ""
+
+msgid "          hg import -s 80 http://example.com/bugfix.patch"
+msgstr ""
+
+msgid "      - import a changeset from an hgweb server::"
+msgstr ""
+
+msgid "          hg import http://www.selenic.com/hg/rev/5ca8c111e9aa"
+msgstr ""
+
+msgid "      - import all the patches in an Unix-style mbox::"
+msgstr ""
+
+msgid "          hg import incoming-patches.mbox"
+msgstr ""
+
+msgid ""
+"      - attempt to exactly restore an exported changeset (not always\n"
+"        possible)::"
+msgstr ""
+
+msgid "          hg import --exact proposed-fix.patch"
+msgstr ""
+
+#, fuzzy
+msgid "need at least one patch to import"
+msgstr "работать с репозиторием патчей mq"
+
 msgid "cannot use --no-commit with --bypass"
 msgstr ""
 
@@ -8832,20 +9840,23 @@
 msgid "patch is damaged or loses information"
 msgstr "патч поврежден или в нем недостает данных"
 
-msgid "to working directory"
+#, fuzzy
+msgid "applied to working directory"
 msgstr "в рабочий каталог"
 
 msgid "not a Mercurial patch"
 msgstr "не патч Mercurial"
 
+#. i18n: refers to a short changeset id
+#, fuzzy, python-format
+msgid "created %s"
+msgstr "удаленный репозиторий: %s\n"
+
 msgid "applying patch from stdin\n"
 msgstr "применяю патч со стандартного вводар\n"
 
-#, python-format
-msgid "applied %s\n"
-msgstr "применен %s\n"
-
-msgid "no diffs found"
+#, fuzzy, python-format
+msgid "%s: no diffs found"
 msgstr "отличий не найдено"
 
 msgid "run even if remote repository is unrelated"
@@ -8978,7 +9989,8 @@
 "    проблем, когда \"xargs\" считает отдельные имена с пробелами\n"
 "    несколькими файлами."
 
-msgid "only follow the first parent of merge changesets"
+#, fuzzy
+msgid "only follow the first parent of merge changesets (DEPRECATED)"
 msgstr "следовать только за первым родителем ревизий слияния"
 
 msgid "show revisions matching date spec"
@@ -8993,7 +10005,8 @@
 msgid "include revisions where files were removed"
 msgstr "включить ревизии, в которых файлы были удалены"
 
-msgid "show only merges"
+#, fuzzy
+msgid "show only merges (DEPRECATED)"
 msgstr "показывать только слияния"
 
 msgid "revisions committed by user"
@@ -9008,7 +10021,8 @@
 msgid "do not display revision or any of its ancestors"
 msgstr "не показывать ревизию и всех ее предшественников"
 
-msgid "show hidden changesets"
+#, fuzzy
+msgid "show hidden changesets (DEPRECATED)"
 msgstr "показывать скрытые наборы изменений"
 
 msgid "[OPTION]... [FILE]"
@@ -9022,12 +10036,23 @@
 "    project."
 msgstr "    Печатает историю ревизий указанных файлов или всего проекта."
 
+#, fuzzy
+msgid ""
+"    If no revision range is specified, the default is ``tip:0`` unless\n"
+"    --follow is set, in which case the working directory parent is\n"
+"    used as the starting revision."
+msgstr ""
+"    Если не указан диапазон ревизий, по умолчанию используется\n"
+"    ``tip:0``, если не указан --follow, в случае чего родительская\n"
+"    ревизия рабочего каталога используются как начальная ревизия.\n"
+"    Можно также указывать набор ревизий, см. :hg:`help revsets`."
+
+#, fuzzy
 msgid ""
 "    File history is shown without following rename or copy history of\n"
 "    files. Use -f/--follow with a filename to follow history across\n"
 "    renames and copies. --follow without a filename will only show\n"
-"    ancestors or descendants of the starting revision. --follow-first\n"
-"    only follows the first parent of merge revisions."
+"    ancestors or descendants of the starting revision."
 msgstr ""
 "    История файла показывается без следования за переименованиями или\n"
 "    копированиями файлов. Используйте -f/-follow, чтобы показать\n"
@@ -9037,17 +10062,6 @@
 "    ревизий слияния."
 
 msgid ""
-"    If no revision range is specified, the default is ``tip:0`` unless\n"
-"    --follow is set, in which case the working directory parent is\n"
-"    used as the starting revision. You can specify a revision set for\n"
-"    log, see :hg:`help revsets` for more information."
-msgstr ""
-"    Если не указан диапазон ревизий, по умолчанию используется\n"
-"    ``tip:0``, если не указан --follow, в случае чего родительская\n"
-"    ревизия рабочего каталога используются как начальная ревизия.\n"
-"    Можно также указывать набор ревизий, см. :hg:`help revsets`."
-
-msgid ""
 "    By default this command prints revision number and changeset id,\n"
 "    tags, non-trivial parents, user, date and time, and a summary for\n"
 "    each commit. When the -v/--verbose switch is used, the list of\n"
@@ -9072,6 +10086,82 @@
 "       производится только с ее первым родителем. Также в список\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 ""
+
+msgid "      - changesets with full descriptions and file lists::"
+msgstr ""
+
+msgid "          hg log -v"
+msgstr ""
+
+#, fuzzy
+msgid "      - changesets ancestral to the working directory::"
+msgstr "показать измененные файлы в рабочем каталоге"
+
+msgid "          hg log -f"
+msgstr ""
+
+#, fuzzy
+msgid "      - last 10 commits on the current branch::"
+msgstr "задать или показать имя текущей ветви"
+
+msgid "          hg log -l 10 -b ."
+msgstr ""
+
+msgid ""
+"      - changesets showing all modifications of a file, including removals::"
+msgstr ""
+
+msgid "          hg log --removed file.c"
+msgstr ""
+
+#, fuzzy
+msgid ""
+"      - all changesets that touch a directory, with diffs, excluding merges::"
+msgstr ""
+"- Ревизии на ветви default, начиная с ветки 1.5, не включая ревизии\n"
+"  слияния::"
+
+msgid "          hg log -Mp lib/"
+msgstr ""
+
+#, fuzzy
+msgid "      - all revision numbers that match a keyword::"
+msgstr "печатать все подходящие ревизии"
+
+msgid "          hg log -k bug --template \"{rev}\\n\""
+msgstr ""
+
+msgid "      - check if a given changeset is included is a tagged release::"
+msgstr ""
+
+msgid "          hg log -r \"a21ccf and ancestor(1.9)\""
+msgstr ""
+
+msgid "      - find all changesets by some user in a date range::"
+msgstr ""
+
+msgid "          hg log -k alice -d \"may 2008 to jul 2008\""
+msgstr ""
+
+msgid "      - summary of all changesets after the last tag::"
+msgstr ""
+
+msgid ""
+"          hg log -r \"last(tagged())::\" --template \"{desc|firstline}\\n\""
+msgstr ""
+
+msgid ""
+"    See :hg:`help revisions` and :hg:`help revsets` for more about\n"
+"    specifying revisions."
+msgstr ""
+
 msgid "revision to display"
 msgstr "показать ревизию"
 
@@ -9369,7 +10459,7 @@
 msgstr "подтянуть изменения из указанного источника"
 
 msgid "    Pull changes from a remote repository to a local one."
-msgstr "    Подтягивает изменения из удаленного репозитория в локальный."
+msgstr "    Скачивает изменения из удаленного репозитория в локальный."
 
 msgid ""
 "    This finds all changes from the repository at the specified path\n"
@@ -9554,15 +10644,25 @@
 msgid "remove the specified files on the next commit"
 msgstr "удалить указанные файлы при следующем коммите"
 
-msgid "    Schedule the indicated files for removal from the repository."
+#, fuzzy
+msgid "    Schedule the indicated files for removal from the current branch."
 msgstr "    Помечает заданные файлы для удаления из репозитория."
 
-msgid ""
-"    This only removes files from the current branch, not from the\n"
-"    entire project history. -A/--after can be used to remove only\n"
-"    files that have already been deleted, -f/--force can be used to\n"
-"    force deletion, and -Af can be used to remove files from the next\n"
-"    revision without deleting them from the working directory."
+#, fuzzy
+msgid ""
+"    This command schedules the files to be removed at the next commit.\n"
+"    To undo a remove before that, see :hg:`revert`. To undo added\n"
+"    files, see :hg:`forget`."
+msgstr ""
+"    Эта команда помечает файлы для удаления при следующем коммите.\n"
+"    Чтобы отменить удаление до коммита, см. :hg:`revert`."
+
+#, fuzzy
+msgid ""
+"      -A/--after can be used to remove only files that have already\n"
+"      been deleted, -f/--force can be used to force deletion, and -Af\n"
+"      can be used to remove files from the next revision without\n"
+"      deleting them from the working directory."
 msgstr ""
 "    Удаляются только файлы с текущей ветки, а не из всей истории\n"
 "    проекта. Используйте -A/--after, чтобы удалить из репозитория\n"
@@ -9571,12 +10671,13 @@
 "    удалить файлы из следующей ревизии, не удаляя их из рабочего\n"
 "    каталога."
 
-msgid ""
-"    The following table details the behavior of remove for different\n"
-"    file states (columns) and option combinations (rows). The file\n"
-"    states are Added [A], Clean [C], Modified [M] and Missing [!] (as\n"
-"    reported by :hg:`status`). The actions are Warn, Remove (from\n"
-"    branch) and Delete (from disk)::"
+#, fuzzy
+msgid ""
+"      The following table details the behavior of remove for different\n"
+"      file states (columns) and option combinations (rows). The file\n"
+"      states are Added [A], Clean [C], Modified [M] and Missing [!]\n"
+"      (as reported by :hg:`status`). The actions are Warn, Remove\n"
+"      (from branch) and Delete (from disk):"
 msgstr ""
 "    Приведенная ниже таблица поясняет поведение команды remove для\n"
 "    разных состояний файла (столбцы) и комбинаций параметров (строки).\n"
@@ -9589,11 +10690,14 @@
 # сбивается форматирование!!!
 #, fuzzy
 msgid ""
-"             A  C  M  !\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"
+"              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 ""
 "             A  C  M  !\n"
 "      нет    W  RD W  R\n"
@@ -9601,21 +10705,15 @@
 "      -A     W  W  W  R\n"
 "      -Af    R  R  R  R"
 
-msgid ""
-"    Note that remove never deletes files in Added [A] state from the\n"
-"    working directory, not even if option --force is specified."
+#, fuzzy
+msgid ""
+"      Note that remove never deletes files in Added [A] state from the\n"
+"      working directory, not even if option --force is specified."
 msgstr ""
 "    Обратите внимание, что remove никогда не удаляет из рабочего\n"
 "    каталога файлы с состоянием Added [A], даже c опцией --force."
 
 msgid ""
-"    This command schedules the files to be removed at the next commit.\n"
-"    To undo a remove before that, see :hg:`revert`."
-msgstr ""
-"    Эта команда помечает файлы для удаления при следующем коммите.\n"
-"    Чтобы отменить удаление до коммита, см. :hg:`revert`."
-
-msgid ""
 "    Returns 0 on success, 1 if any warnings encountered.\n"
 "    "
 msgstr "    При успехе возвращает 0, 1 если были придупреждения."
@@ -9632,9 +10730,8 @@
 msgid "not removing %s: file is modified (use -f to force removal)\n"
 msgstr "%s не удален: файл изменен (-f - удалить принудительно)\n"
 
-#, python-format
-msgid ""
-"not removing %s: file has been marked for add (use -f to force removal)\n"
+#, fuzzy, python-format
+msgid "not removing %s: file has been marked for add (use forget to undo)\n"
 msgstr ""
 "%s не удален: файл был помечен для добавления (-f - удалить принудительно)\n"
 
@@ -9700,14 +10797,16 @@
 msgid "    The resolve command can be used in the following ways:"
 msgstr "    Команда resolve может использоваться следующими способами:"
 
+#, fuzzy
 msgid ""
 "    - :hg:`resolve [--tool TOOL] FILE...`: attempt to re-merge the "
 "specified\n"
 "      files, discarding any previous merge attempts. Re-merging is not\n"
 "      performed for files already marked as resolved. Use ``--all/-a``\n"
-"      to selects all unresolved files. ``--tool`` can be used to specify\n"
+"      to select all unresolved files. ``--tool`` can be used to specify\n"
 "      the merge tool used for the given files. It overrides the HGMERGE\n"
-"      environment variable and your configuration files."
+"      environment variable and your configuration files.  Previous file\n"
+"      contents are saved with a ``.orig`` suffix."
 msgstr ""
 "    - :hg:`resolve [--tool ПРОГРАММА] ФАЙЛ...`: попытаться повторитьслияние\n"
 "    файлов, отменяя предыдущие попытки. Повторное слияние не проводится\n"
@@ -9794,11 +10893,14 @@
 "       :hg:`update РЕВИЗИЯ`. Чтобы отменить слияние (с потерей сделанных)\n"
 "       изменений), используйте :hg:`update --clean .`."
 
+#, fuzzy
 msgid ""
 "    With no revision specified, revert the specified files or directories\n"
-"    to the state they had in the first parent of the working directory.\n"
+"    to the contents they had in the parent of the working directory.\n"
 "    This restores the contents of files to an unmodified\n"
-"    state and unschedules adds, removes, copies, and renames."
+"    state and unschedules adds, removes, copies, and renames. If the\n"
+"    working directory has two parents, you must explicitly specify a\n"
+"    revision."
 msgstr ""
 "    Если ревизия не задана, вернуть указанные файлы и каталоги к\n"
 "    состоянию, в котором они сохранены в родительской ревизии\n"
@@ -9831,6 +10933,14 @@
 msgid "you can't specify a revision and a date"
 msgstr "нельзя указывать одновременно дату и ревизию"
 
+msgid "uncommitted merge with no revision specified"
+msgstr ""
+
+#, fuzzy
+msgid "use \"hg update\" or see \"hg help revert\""
+msgstr ""
+"незакомиченное слияние - используйте \"hg update\", см. \"hg help revert\""
+
 msgid "no files or directories specified"
 msgstr "не указаны файлы или каталоги"
 
@@ -9882,6 +10992,9 @@
 msgid "no changes needed to %s\n"
 msgstr "не требуются изменения для %s\n"
 
+msgid "ignore safety measures"
+msgstr ""
+
 msgid "roll back the last transaction (dangerous)"
 msgstr "откатить последнюю транзакцию (опасно)"
 
@@ -9923,6 +11036,14 @@
 "    - unbundle"
 
 msgid ""
+"    It's possible to lose data with rollback: commit, update back to\n"
+"    an older changeset, and then rollback. The update removes the\n"
+"    changes you committed from the working directory, and rollback\n"
+"    removes them from history. To avoid data loss, you must pass\n"
+"    --force in this case."
+msgstr ""
+
+msgid ""
 "    This command is not intended for use on public repositories. Once\n"
 "    changes are visible for pull by other users, rolling a transaction\n"
 "    back locally is ineffective (someone else may already have pulled\n"
@@ -10194,6 +11315,25 @@
 "      I = игнорируется (ignored)\n"
 "        = источник предыдущего файла показанного как A (добавлен)"
 
+#, fuzzy
+msgid "      - show changes in the working directory relative to a changeset:"
+msgstr "показать измененные файлы в рабочем каталоге"
+
+msgid "          hg status --rev 9353"
+msgstr ""
+
+msgid "      - show all changes including copies in an existing changeset::"
+msgstr ""
+
+msgid "          hg status --copies --change 9353"
+msgstr ""
+
+msgid "      - get a NUL separated list of added files, suitable for xargs::"
+msgstr ""
+
+msgid "          hg status -an0"
+msgstr ""
+
 msgid "check for push and pull"
 msgstr "проверить наличие входящих и исходящих изменений"
 
@@ -10229,6 +11369,10 @@
 msgid "branch: %s\n"
 msgstr "ветвь: %s\n"
 
+#, fuzzy
+msgid "bookmarks:"
+msgstr "показать закладки"
+
 #, python-format
 msgid "%d modified"
 msgstr "%d изменено"
@@ -10587,9 +11731,6 @@
 msgid "cannot specify both -c/--check and -C/--clean"
 msgstr "нельзя одновременно указывать -c/--check и -C/-clean"
 
-msgid "uncommitted local changes"
-msgstr "незакоммиченные локальные изменения"
-
 msgid "verify the integrity of the repository"
 msgstr "проверить целостность репозитория"
 
@@ -10624,7 +11765,7 @@
 msgstr ""
 "(С) 2005-2011 Matt Mackall и другие.\n"
 "Это свободное ПО; условия распространения см. в исходном коде.\n"
-"НИКАКИХ ГАРАНТИЙ НЕ ПРЕДОСТАВЛЯЕТСЯ, в том числе, на пригодность для\n"
+"НИКАКИХ ГАРАНТИЙ НЕ ПРЕДОСТАВЛЯЕТСЯ, в том числе на пригодность для\n"
 "коммерческого использования и для решения конкертных задач.\n"
 
 #, python-format
@@ -10917,9 +12058,9 @@
 msgid "repository '%s' is not local"
 msgstr "репозиторий '%s' не локальный"
 
-#, python-format
-msgid "no repository found in %r (.hg not found)"
-msgstr ""
+#, fuzzy, python-format
+msgid "no repository found in '%s' (.hg not found)"
+msgstr "репозиторий %s не найден"
 
 msgid "warning: --repository ignored\n"
 msgstr ""
@@ -10969,20 +12110,6 @@
 "keep (l)ocal or take (o)ther?"
 msgstr ""
 
-msgid "&Local"
-msgstr "&Локальные"
-
-msgid "&Other"
-msgstr "&Другие"
-
-#, python-format
-msgid "merging %s and %s to %s\n"
-msgstr ""
-
-#, python-format
-msgid "merging %s\n"
-msgstr ""
-
 #, python-format
 msgid "%s.premerge not valid ('%s' is neither boolean nor %s)"
 msgstr ""
@@ -11098,9 +12225,10 @@
 msgid "not a function: %s"
 msgstr ""
 
+#, fuzzy
 msgid ""
 "``binary()``\n"
-"    File that appears to be binary (contails NUL bytes)."
+"    File that appears to be binary (contains NUL bytes)."
 msgstr ""
 "``binary()``\n"
 "    Файл, который рассматривается как бинарный (содержит символы NUL)."
@@ -11242,6 +12370,34 @@
 msgid "unknown bisect kind %s"
 msgstr ""
 
+msgid "invalid bisect state"
+msgstr ""
+
+#. i18n: bisect changeset status
+msgid "good"
+msgstr ""
+
+#. i18n: bisect changeset status
+msgid "bad"
+msgstr ""
+
+#. i18n: bisect changeset status
+#, fuzzy
+msgid "skipped"
+msgstr "%s завершен (killed)"
+
+#. i18n: bisect changeset status
+msgid "untested"
+msgstr ""
+
+#. i18n: bisect changeset status
+msgid "good (implicit)"
+msgstr ""
+
+#. i18n: bisect changeset status
+msgid "bad (implicit)"
+msgstr ""
+
 msgid "disabled extensions:"
 msgstr "отключенные расширения:"
 
@@ -11751,6 +12907,12 @@
 "``hg echo foo``, ``$HG_ARGS`` раскроется в ``echo foo``."
 
 msgid ""
+".. note:: Some global configuration options such as ``-R`` are\n"
+"   processed before shell aliases and will thus not be passed to\n"
+"   aliases."
+msgstr ""
+
+msgid ""
 "``auth``\n"
 "\"\"\"\"\"\"\"\""
 msgstr ""
@@ -11812,12 +12974,15 @@
 "    префикс не включает схему, при проверке совпадения из URI также.\n"
 "    удаляется схема и далее прверяется аргумент schemes."
 
+#, fuzzy
 msgid ""
 "``username``\n"
 "    Optional. Username to authenticate with. If not given, and the\n"
 "    remote site requires basic or digest authentication, the user will\n"
 "    be prompted for it. Environment variables are expanded in the\n"
-"    username letting you do ``foo.username = $USER``."
+"    username letting you do ``foo.username = $USER``. If the URI\n"
+"    includes a username, only ``[auth]`` entries with a matching\n"
+"    username or without a username will be considered."
 msgstr ""
 "``username``\n"
 "    Не обязательный. Имя, используемое при аутентификации. Если не\n"
@@ -12593,7 +13758,7 @@
 msgstr ""
 "Команды или функции Python, вызываемые автоматически при различных\n"
 "действиях, таких как начало или конец коммита. Можно задавать несколько\n"
-"зацепок для одного и того же действия, добавляя к действию суффикс.\n"
+"хуков для одного и того же действия, добавляя к действию суффикс.\n"
 "Можно переопределить глобальный хук, изменив его значения или задав\n"
 "для него пустую строку."
 
@@ -12612,7 +13777,7 @@
 "  [hooks]\n"
 "  # Обновить рабочий каталог после добавления наборов изменений\n"
 "  changegroup.update = hg update\n"
-"  # не использовать глобальную зацепку\n"
+"  # не использовать глобальный хук\n"
 "  incoming =\n"
 "  incoming.email = /my/email/hook\n"
 "  incoming.autobuild = /my/build/hook"
@@ -12622,8 +13787,8 @@
 "additional information. For each hook below, the environment\n"
 "variables it is passed are listed with names of the form ``$HG_foo``."
 msgstr ""
-"Большинство зацепок выполняются с переменными окружения, содержащими\n"
-"полезную дополнительную информацию. Для каждой зацепки ниже, передаваемые\n"
+"Болшьниство хуков выполняются с переменными окружения, содержащими\n"
+"полезную дополнительную информацию. Для каждого хука ниже, передаваемые\n"
 "ему переменные перечисленны с именами вида ``$HG_foo``."
 
 msgid ""
@@ -12669,7 +13834,7 @@
 "  Выполняется после отправки изменений из локального репозитория в\n"
 "  другой. ID первого набора изменений содержится в ``$HG_NODE``.\n"
 "  Источник операции находится в ``$HG_SOURCE``; описание см. в\n"
-"  \"preoutgoing\" зацепке."
+"  \"preoutgoing\""
 
 msgid ""
 "``post-<command>``\n"
@@ -12689,7 +13854,7 @@
 "  строковое представление данных Python, передаваемых <команде>\n"
 "  внутренней реализацией. ``$HG_OPTS`` - это словарь опций \n"
 "  (опущенные опциии установлены в значения по умолчанию).\n"
-"  ``$HG_PATS`` - список аргументов. Неудачное завершение зацепки\n"
+"  ``$HG_PATS`` - список аргументов. Неудачное завершение хука\n"
 "  игнорируется."
 
 msgid ""
@@ -12711,7 +13876,7 @@
 "  Python, передаваемых <команде> внутренней реализацией. ``$HG_OPTS`` -\n"
 "  это словарь опций (опущенные опции установленны в значения по\n"
 "  умолчанию).``$HG_PATS`` - список аргументов. Неудачное завершение\n"
-"  зацепки игнорируется."
+"  хука игнорируется."
 
 msgid ""
 "``prechangegroup``\n"
@@ -12814,7 +13979,7 @@
 "``pretxnchangegroup``\n"
 "  Выполняется после добавления группы наборов изменений с помощью\n"
 "  push, pull или unbundle, до коммита транзакции. Группа изменений\n"
-"  доступна в программе зацепки. Это позволяет проверить входящие\n"
+"  доступна в программе хука. Это позволяет проверить входящие\n"
 "  изменения, перед тем, как принять их. ID первого добавляемого\n"
 "  набора изменений передается в ``$HG_NODE``. Код возврата 0 разрешает\n"
 "  закоммитить транзакцию, ненулевой откатывает ее и заставляет\n"
@@ -12833,7 +13998,7 @@
 "``pretxncommit``\n"
 "  Выполняется после того, как набор изменений был создан, но еще\n"
 "  транзакция еще не закоммичена. Набор изменений доступен в программе\n"
-"  зацепки. Это позволяет проверить текст коммита и изменения. Код\n"
+"  хука. Это позволяет проверить текст коммита и изменения. Код\n"
 "  возврата 0 разрешает продолжение коммита, ненулевой код возврата\n"
 "  откатит транзакцию. ID набора изменений передается в ``$HG_NODE``.\n"
 "  ID родителей передаются в ``$HG_PARENT1`` и ``$HG_PARENT2``."
@@ -12908,8 +14073,8 @@
 "   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"
-"   а не pre- и post-зацепки, потому что они гарантированно вызываются\n"
+".. note:: Вообще говоря обычно лучше использовать стандартные хуки,\n"
+"   а не pre- и post-хуки, потому что они гарантированно вызываются\n"
 "   с правильным контекстом для транзакций, на которые они влияют.\n"
 "   Также такие хуки как \"commit\" будут вызваны во всех ситуациях,\n"
 "   когда создается коммит (например, tag), а не только по команде\n"
@@ -12922,19 +14087,19 @@
 "   changesets, while it will not be available at all under Windows."
 msgstr ""
 ".. note:: Переменные окружения с пустыми значениями могут не\n"
-"   передаться в зацепки на платформах вроде Windows. Например,\n"
+"   передаться в хуки на платформах вроде Windows. Например,\n"
 "   ``$HG_PARENT2`` будет иметь пустое значение в Unix-подобных\n"
 "   ОС, а под Windows вообще будет недоступна."
 
 msgid "The syntax for Python hooks is as follows::"
-msgstr "Синтаксис зацепок для Python::"
+msgstr "Синтаксис хуков для Python::"
 
 msgid ""
 "  hookname = python:modulename.submodule.callable\n"
 "  hookname = python:/path/to/python/module.py:callable"
 msgstr ""
-"  имя_зацепки = python:modulename.submodule.callable\n"
-"  имя_зацепки = python:/path/to/python/module.py:callable"
+"  имя_хука = python:modulename.submodule.callable\n"
+"  имя_хука = python:/path/to/python/module.py:callable"
 
 msgid ""
 "Python hooks are run within the Mercurial process. Each hook is\n"
@@ -12944,10 +14109,10 @@
 "environment variables above are passed as keyword arguments, with no\n"
 "``HG_`` prefix, and names in lower case."
 msgstr ""
-"Зацепки на Python выполняются в рамках процесса Mercurial. Каждая зацепка\n"
+"Хуки на Python выполняются в рамках процесса Mercurial. Каждый хук\n"
 "вызывается как минимум с тремя аргументами - ключевыми словами:\n"
 "объект интерфейса (``ui``), объект репозитория (``repo``) и ``hooktype``\n"
-"который определяет, какой вид зацепки используется. Аргументы, описанные\n"
+"который определяет, какой вид хука используется. Аргументы, описанные\n"
 "выше как переменные окружения, передаются как ключевые слова без\n"
 "префикса ``HG_`` с именами в нижнем регистре."
 
@@ -12955,8 +14120,8 @@
 "If a Python hook returns a \"true\" value or raises an exception, this\n"
 "is treated as a failure."
 msgstr ""
-"Если зацепки Python'а возвращают значение \"true\" или бросают исключение,\n"
-"это расценивается как ошибка."
+"Если хуки Python возвращают значение \"true\" или возбуждают исключение\n"
+"что расценивается как ошибка."
 
 msgid ""
 "\n"
@@ -13303,7 +14468,7 @@
 "репозитория, если он не принадлежит доверенному пользователю или\n"
 "группе, поскольку многие функции из hgrc позволяют выполнять\n"
 "произвольные команды. С этим часто возникают проблемы при настройке\n"
-"зацепок или расширений для публичных репозиториев или серверов. Однако,\n"
+"хуков или расширений для публичных репозиториев или серверов. Однако,\n"
 "web-интерфейс будет использовать некоторые безопасные настройки из\n"
 "секции ``[web]``."
 
@@ -13371,12 +14536,13 @@
 "    ввести имя пользователя. Если ничего не введено, будет использовано\n"
 "    ``ПОЛЬЗОВАТЕЛЬ@ХОСТ``. По умолчанию False (отключено)."
 
+#, fuzzy
 msgid ""
 "``commitsubrepos``\n"
 "    Whether to commit modified subrepositories when committing the\n"
 "    parent repository. If False and one subrepository has uncommitted\n"
 "    changes, abort the commit.\n"
-"    Default is True."
+"    Default is False."
 msgstr ""
 "``commitsubrepos``\n"
 "    Коммитить или нет измененные субрепозитории при коммите\n"
@@ -13419,7 +14585,7 @@
 "``ignore``\n"
 "    Файл, из которого читаются шаблоны игнорируемых файлов данного\n"
 "    пользователя. Имеет тот же формате, что и файл .hgignore репозитория.\n"
-"    Эта опция поддерживает синтаксис зацепок, так что можно задать несколько\n"
+"    Эта опция поддерживает синтаксис хуков, так что можно задать несколько\n"
 "    таких файлов, написав что-то вроде ``ignore.other = ~/.hgignore2``.\n"
 "    Дополнительно см. справку по hgignore."
 
@@ -13717,6 +14883,15 @@
 "    Этот список проверяется после списка deny_push."
 
 msgid ""
+"``guessmime``\n"
+"    Control MIME types for raw download of file content.\n"
+"    Set to True to let hgweb guess the content type from the file\n"
+"    extension. This will serve HTML files as ``text/html`` and might\n"
+"    allow cross-site scripting attacks when serving untrusted\n"
+"    repositories. Default is False."
+msgstr ""
+
+msgid ""
 "``allow_read``\n"
 "    If the user has not already been denied repository access due to\n"
 "    the contents of deny_read, this list determines whether to grant\n"
@@ -13757,7 +14932,7 @@
 msgstr ""
 "``baseurl``\n"
 "    Базовый URL, используемый при публикации ссылок в других местах,\n"
-"    чтобы сторонние инструменты, например зацепки уведомлений, могли\n"
+"    чтобы сторонние инструменты, например хуки уведомлений, могли\n"
 "    составлять URLы. Например: ``http://hgserver/repos/``."
 
 msgid ""
@@ -13938,6 +15113,14 @@
 "    Использовать IPv6. По умолчанию False (не использовать)."
 
 msgid ""
+"``logoimg``\n"
+"    File name of the logo image that some templates display on each page.\n"
+"    The file name is relative to ``staticurl``. That is, the full path to\n"
+"    the logo image is \"staticurl/logoimg\".\n"
+"    If unset, ``hglogo.png`` will be used."
+msgstr ""
+
+msgid ""
 "``logourl``\n"
 "    Base URL to use for logos. If unset, ``http://mercurial.selenic.com/``\n"
 "    will be used."
@@ -14178,7 +15361,7 @@
 msgstr ""
 "HG\n"
 "    Путь к исполняемому файлу 'hg', передается автоматически при\n"
-"    при обработке зацепок, расширений или внешних программ. Если не\n"
+"    при обработке хуков, расширений или внешних программ. Если не\n"
 "    установлена или пустая, это имя исполняемого файла hg, если\n"
 "    если оно зафиксировано, либо выполняется поиск исполняемого\n"
 "    файла 'hg' (с добавленным %PATHEXT% [по умолчанию COM/EXE/BAT/CMD]\n"
@@ -14393,7 +15576,7 @@
 msgstr ""
 "В Mercurial можно добавлять новые функции с помощью расширений.\n"
 "Расширения могут добавлять новые команды, опции к существующим\n"
-"командам, изменять поведение команд, реализовывать зацепки."
+"командам, изменять поведение команд, реализовывать хуки."
 
 msgid ""
 "Extensions are not loaded by default for a variety of reasons:\n"
@@ -14569,7 +15752,8 @@
 msgid "    hg revert \"set:copied() and binary() and size('>1M')\""
 msgstr ""
 
-msgid "- Remove files listed in files.lst that contain the letter a or b::"
+#, fuzzy
+msgid "- Remove files listed in foo.lst that contain the letter a or b::"
 msgstr ""
 "- Удалить файлы, перечисленные в files.lst и содержащие букву a или b::"
 
@@ -16388,24 +17572,29 @@
 "\"\n"
 msgstr ""
 
+#, fuzzy
 msgid ""
 "Subrepositories let you nest external repositories or projects into a\n"
 "parent Mercurial repository, and make commands operate on them as a\n"
-"group. External Mercurial and Subversion projects are currently\n"
-"supported."
+"group."
 msgstr ""
 "Субрепозитории (подрепозитории) позволяют вложить несколько внешних\n"
 "репозиториев или пректов в один репозиторий Mercurial и выполнять\n"
 "над ними команды как над единой группой. В настоящее время поддерживаются\n"
 "внешнии проекты Mercurial и Subversion."
 
+msgid ""
+"Mercurial currently supports Mercurial, Git, and Subversion\n"
+"subrepositories."
+msgstr ""
+
 msgid "Subrepositories are made of three components:"
 msgstr "Субрепозитории включают три компонента:"
 
+#, fuzzy
 msgid ""
 "1. Nested repository checkouts. They can appear anywhere in the\n"
-"   parent working directory, and are Mercurial clones or Subversion\n"
-"   checkouts."
+"   parent working directory."
 msgstr ""
 "1. Извлеченные рабочие копии вложенных репозиториев. Они могут\n"
 "   находится где угодно в рабочем каталоге и являются либо клонами\n"
@@ -16423,11 +17612,20 @@
 msgid "     path/to/nested = https://example.com/nested/repo/path"
 msgstr ""
 
+msgid "   Git and Subversion subrepos are also supported:"
+msgstr ""
+
+msgid ""
+"     path/to/nested = [git]git://example.com/nested/repo/path\n"
+"     path/to/nested = [svn]https://example.com/nested/trunk/path"
+msgstr ""
+
+#, fuzzy
 msgid ""
 "   where ``path/to/nested`` is the checkout location relatively to the\n"
 "   parent Mercurial root, and ``https://example.com/nested/repo/path``\n"
 "   is the source repository path. The source can also reference a\n"
-"   filesystem path. Subversion repositories are defined with:"
+"   filesystem path."
 msgstr ""
 "   где ``path/to/nested`` - путь к извлеченной рабочей копии относительно\n"
 "   корня родительского репозитория Mercurial, а \n"
@@ -16435,9 +17633,6 @@
 "   источнику. Источник может быть также путем в файловой системе.\n"
 "   Репозитории Subversion определяются так:"
 
-msgid "     path/to/nested = [svn]https://example.com/nested/trunk/path"
-msgstr ""
-
 msgid ""
 "   Note that ``.hgsub`` does not exist by default in Mercurial\n"
 "   repositories, you have to create and add it to the parent\n"
@@ -16543,14 +17738,18 @@
 "Взаимодействие с командами Mercurial\n"
 "------------------------------------"
 
+#, fuzzy
 msgid ""
 ":add: add does not recurse in subrepos unless -S/--subrepos is\n"
-"    specified. Subversion subrepositories are currently silently\n"
+"    specified.  However, if you specify the full path of a file in a\n"
+"    subrepo, it will be added even without -S/--subrepos specified.\n"
+"    Git and Subversion subrepositories are currently silently\n"
 "    ignored."
 msgstr ""
-":add: add не обрабатывает субрепозитории рекурсивно, если не указана\n"
-"    опция -S/--subrepos. Субрепозитории Subversion в настоящее\n"
-"    время молча игнорируются."
+":diff: diff не обрабатывает субрепозитории рекурсивно, если не указана\n"
+"    опция -S/--subrepos. Различия отображаются как обычно для элементов    "
+"субрепозиториев. Репозитории Subversion в настоящее время молча\n"
+"    игнорируются."
 
 msgid ""
 ":archive: archive does not recurse in subrepositories unless\n"
@@ -16559,14 +17758,16 @@
 ":archive: archive не обрабатывает субрепозитории рекурсивно, если\n"
 "    не указана опция -S/--subrepos."
 
+#, fuzzy
 msgid ""
 ":commit: commit creates a consistent snapshot of the state of the\n"
-"    entire project and its subrepositories. It does this by first\n"
-"    attempting to commit all modified subrepositories, then recording\n"
-"    their state and finally committing it in the parent\n"
-"    repository. Mercurial can be made to abort if any subrepository\n"
-"    content is modified by setting \"ui.commitsubrepos=no\" in a\n"
-"    configuration file (see :hg:`help config`)."
+"    entire project and its subrepositories. If any subrepositories\n"
+"    have been modified, Mercurial will abort.  Mercurial can be made\n"
+"    to instead commit all modified subrepositories by specifying\n"
+"    -S/--subrepos, or setting \"ui.commitsubrepos=True\" in a\n"
+"    configuration file (see :hg:`help config`).  After there are no\n"
+"    longer any modified subrepositories, it records their state and\n"
+"    finally commits it in the parent repository."
 msgstr ""
 ":commit: commit создает целостный снисок состояния всего проекта и\n"
 "    его субрепозиториев. Она делает это сначала пытаясь закоммитить\n"
@@ -16576,30 +17777,42 @@
 "    субрепозиторий изменено, с помощью установки \"ui.commitsubrepos=no\"\n"
 "    в конфиге (см. :hg:`help config`)."
 
+#, fuzzy
 msgid ""
 ":diff: diff does not recurse in subrepos unless -S/--subrepos is\n"
 "    specified. Changes are displayed as usual, on the subrepositories\n"
-"    elements. Subversion subrepositories are currently silently\n"
-"    ignored."
+"    elements. Git and Subversion subrepositories are currently\n"
+"    silently ignored."
 msgstr ""
 ":diff: diff не обрабатывает субрепозитории рекурсивно, если не указана\n"
 "    опция -S/--subrepos. Различия отображаются как обычно для элементов    "
 "субрепозиториев. Репозитории Subversion в настоящее время молча\n"
 "    игнорируются."
 
+#, fuzzy
+msgid ""
+":forget: forget currently only handles exact file matches in subrepos.\n"
+"    Git and Subversion subrepositories are currently silently ignored."
+msgstr ""
+":outgoing: outgoing не обрабатывает субрепозитории рекурсивно, если\n"
+"    не указана опция -S/--subrepos. Субрепозитории Subversion в\n"
+"    настоящее время молча игнорируются."
+
+#, fuzzy
 msgid ""
 ":incoming: incoming does not recurse in subrepos unless -S/--subrepos\n"
-"    is specified. Subversion subrepositories are currently silently\n"
-"    ignored."
+"    is specified. Git and Subversion subrepositories are currently\n"
+"    silently ignored."
 msgstr ""
 ":incoming: incoming не обрабатывает субрепозитории рекурсивно, если\n"
 "    не указана опция -S/--subrepos. Субрепозитории Subversion в\n"
 "    настоящее время молча игнорируются."
 
+#, fuzzy
 msgid ""
 ":outgoing: outgoing does not recurse in subrepos unless -S/--subrepos\n"
-"    is specified. Subversion subrepositories are currently silently\n"
-"    ignored."
+"    is specified. Git and Subversion subrepositories are currently\n"
+"    silently ignored."
 msgstr ""
 ":outgoing: outgoing не обрабатывает субрепозитории рекурсивно, если\n"
 "    не указана опция -S/--subrepos. Субрепозитории Subversion в\n"
@@ -16618,11 +17831,12 @@
 "    подтянуютые ревизии родительского репозитория в лучшем случае\n"
 "    дорого, и вообще не возможно в случае Subversion."
 
+#, fuzzy
 msgid ""
 ":push: Mercurial will automatically push all subrepositories first\n"
 "    when the parent repository is being pushed. This ensures new\n"
 "    subrepository changes are available when referenced by top-level\n"
-"    repositories."
+"    repositories.  Push is a no-op for Subversion subrepositories."
 msgstr ""
 ":push: Mercurial автоматически выполняет push для всех субрепозиториев\n"
 "    при выполнении push для родительского репозитория. Это позволяет\n"
@@ -17080,9 +18294,6 @@
 msgid "'%s' uses newer protocol %s"
 msgstr ""
 
-msgid "unexpected response:"
-msgstr ""
-
 #, python-format
 msgid "push failed: %s"
 msgstr ""
@@ -17145,6 +18356,9 @@
 msgid "no interrupted transaction available\n"
 msgstr ""
 
+msgid "no rollback information available\n"
+msgstr ""
+
 #, python-format
 msgid "repository tip rolled back to revision %s (undo %s: %s)\n"
 msgstr ""
@@ -17156,8 +18370,14 @@
 msgid "rolling back unknown transaction\n"
 msgstr ""
 
-#, python-format
-msgid "named branch could not be reset, current branch is still: %s\n"
+msgid "rollback of last commit while not checked out may lose data"
+msgstr ""
+
+msgid "use -f to force"
+msgstr ""
+
+#, python-format
+msgid "named branch could not be reset: current branch is still '%s'\n"
 msgstr ""
 
 #, python-format
@@ -17168,9 +18388,6 @@
 msgid "working directory now based on revision %d\n"
 msgstr ""
 
-msgid "no rollback information available\n"
-msgstr ""
-
 #, python-format
 msgid "waiting for lock on %s held by %r\n"
 msgstr ""
@@ -17193,8 +18410,7 @@
 msgid "can't commit subrepos without .hgsub"
 msgstr ""
 
-#, python-format
-msgid "uncommitted changes in subrepo %s"
+msgid "use --subrepos for recursive commit"
 msgstr ""
 
 msgid "file not found!"
@@ -17571,6 +18787,10 @@
 msgstr ""
 
 #, python-format
+msgid "Removing unknown node %(n)s from %(p)i-phase boundary"
+msgstr ""
+
+#, python-format
 msgid "exited with status %d"
 msgstr ""
 
@@ -17687,16 +18907,22 @@
 msgstr ""
 
 msgid ""
-"``bisected(string)``\n"
-"    Changesets marked in the specified bisect state (good, bad, skip)."
+"``bisect(string)``\n"
+"    Changesets marked in the specified bisect status:"
+msgstr ""
+
+msgid ""
+"    - ``good``, ``bad``, ``skip``: csets explicitly marked as good/bad/skip\n"
+"    - ``goods``, ``bads``      : csets topologicaly good/bad\n"
+"    - ``range``              : csets taking part in the bisection\n"
+"    - ``pruned``             : csets that are goods, bads or skipped\n"
+"    - ``untested``           : csets whose fate is yet unknown\n"
+"    - ``ignored``            : csets ignored due to DAG topology"
 msgstr ""
 
 msgid "bisect requires a string"
 msgstr ""
 
-msgid "invalid bisect state"
-msgstr ""
-
 msgid ""
 "``bookmark([name])``\n"
 "    The named bookmark or all bookmarks."
@@ -17773,6 +18999,11 @@
 msgstr ""
 
 msgid ""
+"``first(set, [n])``\n"
+"    An alias for limit()."
+msgstr ""
+
+msgid ""
 "``follow([file])``\n"
 "    An alias for ``::.`` (ancestors of the working copy's first parent).\n"
 "    If a filename is specified, the history of the given file is followed,\n"
@@ -17849,13 +19080,14 @@
 msgstr ""
 
 msgid ""
-"``limit(set, n)``\n"
-"    First n members of set."
+"``limit(set, [n])``\n"
+"    First n members of set, defaulting to 1."
 msgstr ""
 
 #. i18n: "limit" is a keyword
-msgid "limit requires two arguments"
-msgstr ""
+#, fuzzy
+msgid "limit requires one or two arguments"
+msgstr "unknown не требует аргументов"
 
 #. i18n: "limit" is a keyword
 msgid "limit requires a number"
@@ -17866,13 +19098,14 @@
 msgstr ""
 
 msgid ""
-"``last(set, n)``\n"
-"    Last n members of set."
+"``last(set, [n])``\n"
+"    Last n members of set, defaulting to 1."
 msgstr ""
 
 #. i18n: "last" is a keyword
-msgid "last requires two arguments"
-msgstr ""
+#, fuzzy
+msgid "last requires one or two arguments"
+msgstr "unknown не требует аргументов"
 
 #. i18n: "last" is a keyword
 msgid "last requires a number"
@@ -18075,7 +19308,7 @@
 msgstr ""
 
 #, python-format
-msgid "path %r is inside nested repo %r"
+msgid "path '%s' is inside nested repo %r"
 msgstr ""
 
 #, python-format
@@ -18152,6 +19385,9 @@
 msgid "push refused: %s"
 msgstr ""
 
+msgid "Python SSL support not found"
+msgstr ""
+
 msgid "certificate checking requires Python 2.6"
 msgstr ""
 
@@ -18216,13 +19452,13 @@
 msgid "subrepo spec file %s not found"
 msgstr ""
 
-msgid "missing ] in subrepo source"
-msgstr ""
-
 #, python-format
 msgid "bad subrepository pattern in %s: %s"
 msgstr ""
 
+msgid "missing ] in subrepo source"
+msgstr ""
+
 #, python-format
 msgid ""
 " subrepository sources for %s differ\n"
@@ -18288,6 +19524,10 @@
 msgid "pushing subrepo %s to %s\n"
 msgstr ""
 
+#, python-format
+msgid "'svn' executable not found for subrepo '%s'"
+msgstr ""
+
 msgid "cannot retrieve svn tool version"
 msgstr ""
 
@@ -18476,6 +19716,13 @@
 ":short: Хэш набора изменений. Возвращает хэш набора изменений в\n"
 "    сокращенной форме, т.е. строку из 12 шестнадцатиричных символов."
 
+msgid ""
+":shortbisect: Any text. Treats `text` as a bisection status, and\n"
+"    returns a single-character representing the status (G: good, B: bad,\n"
+"    S: skipped, U: untested, I: ignored). Returns single space if `text`\n"
+"    is not a valid bisection status."
+msgstr ""
+
 msgid ":shortdate: Date. Returns a date like \"2006-09-18\"."
 msgstr ":shortdate: Дата. Возвращает дату в виде \"2006-09-18\"."
 
@@ -18519,6 +19766,10 @@
 msgid ":author: String. The unmodified author of the changeset."
 msgstr ":author: Строка. Неизмененный автор набора изменений."
 
+#, fuzzy
+msgid ":bisect: String. The changeset bisection status."
+msgstr ":desc: Строка. Текст описания набора изменений."
+
 msgid ""
 ":branch: String. The name of the branch on which the changeset was\n"
 "    committed."
@@ -18604,6 +19855,10 @@
 ":node: Строка. Хэш набора изменений в виде 40-значной шестнадцатиричной\n"
 "    строки."
 
+#, fuzzy
+msgid ":rev: Integer. The changeset phase."
+msgstr ":rev: Целое число. Локальный номер ревизии в этом репозитории."
+
 msgid ":rev: Integer. The repository-local changeset revision number."
 msgstr ":rev: Целое число. Локальный номер ревизии в этом репозитории."
 
@@ -19011,6 +20266,71 @@
 msgid "push failed:"
 msgstr ""
 
+#~ msgid "acl: access denied for changeset %s"
+#~ msgstr "acl: нет доступа для набора изменений %s"
+
+#~ msgid "    See :hg:`help urls` for valid source format details."
+#~ msgstr "    См. :hg:`help urls` о форматах адреса источника."
+
+#~ msgid ""
+#~ "    It is possible to specify an ``ssh://`` URL as the destination, but "
+#~ "no\n"
+#~ "    ``.hg/hgrc`` and working directory will be created on the remote "
+#~ "side.\n"
+#~ "    Please see :hg:`help urls` for important details about ``ssh://`` "
+#~ "URLs."
+#~ msgstr ""
+#~ "    Можно указать ``ssh://...`` в качестве адреса назначения, но файл\n"
+#~ "    ``.hg/hgrc`` и рабочая копия не будут созданы на удаленном "
+#~ "компьютере.\n"
+#~ "    См. :hg:`help urls` для важной информации об адресах вида ``ssh://..."
+#~ "``."
+
+#~ msgid ""
+#~ "    A set of changesets (tags, or branch names) to pull may be specified\n"
+#~ "    by listing each changeset (tag, or branch name) with -r/--rev.\n"
+#~ "    If -r/--rev is used, the cloned repository will contain only a "
+#~ "subset\n"
+#~ "    of the changesets of the source repository. Only the set of "
+#~ "changesets\n"
+#~ "    defined by all -r/--rev options (including all their ancestors)\n"
+#~ "    will be pulled into the destination repository.\n"
+#~ "    No subsequent changesets (including subsequent tags) will be present\n"
+#~ "    in the destination."
+#~ msgstr ""
+#~ "    Копируемые наборы изменений (changesets) (как метки или имена "
+#~ "ветвей)\n"
+#~ "    могут быть заданы указанием каждого набора изменений (метки или "
+#~ "имени\n"
+#~ "    ветви) с помощью -r/--rev. При использовании -r/--rev, клонированный\n"
+#~ "    репозиторий будет содержать только подмножество наборов изменений\n"
+#~ "    источника."
+
+#~ msgid ""
+#~ "    Using -r/--rev (or 'clone src#rev dest') implies --pull, even for\n"
+#~ "    local source repositories."
+#~ msgstr ""
+#~ "    Использование -r/--rev (или 'clone источник#ревизия назн')\n"
+#~ "    предполагает --pull, даже если источник локален."
+
+#~ msgid "options:\n"
+#~ msgstr "параметры:\n"
+
+#~ msgid "applied %s\n"
+#~ msgstr "применен %s\n"
+
+#~ msgid ""
+#~ ":add: add does not recurse in subrepos unless -S/--subrepos is\n"
+#~ "    specified. Subversion subrepositories are currently silently\n"
+#~ "    ignored."
+#~ msgstr ""
+#~ ":add: add не обрабатывает субрепозитории рекурсивно, если не указана\n"
+#~ "    опция -S/--subrepos. Субрепозитории Subversion в настоящее\n"
+#~ "    время молча игнорируются."
+
+#~ msgid "do not prompt, assume 'yes' for any required answers"
+#~ msgstr "не спрашивать подтверждания, всегда автоматически отвечать 'да'"
+
 #~ msgid "read config from: %s\n"
 #~ msgstr "читаю конфиг из: %s\n"
 
@@ -19063,28 +20383,16 @@
 #~ "    Если заданы имена, восстанавливаются все файлы с подходящими\n"
 #~ "    именами. Без аргумнтов никакие файлы не будут восстановлены."
 
-#~ msgid "uncommitted merge - use \"hg update\", see \"hg help revert\""
-#~ msgstr ""
-#~ "незакомиченное слияние - используйте \"hg update\", см. \"hg help revert\""
-
 #~ msgid ""
 #~ "no files or directories specified; use --all to revert the whole repo"
 #~ msgstr "не заданы файлы или каталоги; --all откатит весь репозиторий"
 
-#, fuzzy
-#~ msgid "%s already exists"
-#~ msgstr "файл %s уже существует\n"
-
 #~ msgid "base path"
 #~ msgstr "базовый путь"
 
 #~ msgid "not updating, since new heads added\n"
 #~ msgstr "не обновляюсь т.к. добавлены новые головы\n"
 
-#, fuzzy
-#~ msgid "%s still exists!\n"
-#~ msgstr "файл %s уже существует\n"
-
 #~ msgid ""
 #~ "Mercurial reads configuration data from several files, if they exist.\n"
 #~ "Below we list the most specific file first."