i18n/ru.po
branchstable
changeset 17311 6510dc36ce36
parent 16976 cf1680c8567e
child 17312 2e4478cf8fed
--- a/i18n/ru.po	Wed Aug 01 05:58:00 2012 +0900
+++ b/i18n/ru.po	Wed Aug 01 18:10:07 2012 +0400
@@ -135,6 +135,7 @@
 # checkin        (в конфиге для encode/decode) сейчас фиксация ???
 # lookup         поиск ???
 # facility       ???
+# obsolete marker маркер устаревшей ревизии
 #
 #
 # === TODO ===
@@ -172,7 +173,7 @@
 msgstr ""
 "Project-Id-Version: Mercurial\n"
 "Report-Msgid-Bugs-To: <mercurial-devel@selenic.com>\n"
-"POT-Creation-Date: 2012-06-15 10:29+0400\n"
+"POT-Creation-Date: 2012-07-30 14:28+0400\n"
 "PO-Revision-Date: 2011-05-12 23:48+0400\n"
 "Last-Translator: Alexander Sauta <demosito@gmail.com>\n"
 "Language-Team: Russian\n"
@@ -272,10 +273,10 @@
 
 msgid ""
 "Branch-based Access Control\n"
-"..........................."
-msgstr ""
-"Контроль доступа, основанный на ветке\n"
-"....................................."
+"---------------------------"
+msgstr ""
+"Контроль доступа по веткам\n"
+"--------------------------"
 
 msgid ""
 "Use the ``acl.deny.branches`` and ``acl.allow.branches`` sections to\n"
@@ -304,11 +305,19 @@
 "- звёздочка, чтобы выбрать любого;"
 
 msgid ""
+"You can add the \"!\" prefix to a user or group name to invert the sense\n"
+"of the match."
+msgstr ""
+"Вы можете добавить префикс \"!\" перед именем пользователя или группы, "
+"чтобы\n"
+"изменить смысл правила на противоположный."
+
+msgid ""
 "Path-based Access Control\n"
-"........................."
-msgstr ""
-"Контроль доступа основанный на пути\n"
-"..................................."
+"-------------------------"
+msgstr ""
+"Контроль доступа по путям\n"
+"-------------------------"
 
 msgid ""
 "Use the ``acl.deny`` and ``acl.allow`` sections to have path-based\n"
@@ -325,10 +334,10 @@
 
 msgid ""
 "Groups\n"
-"......"
+"------"
 msgstr ""
 "Группы\n"
-"......"
+"------"
 
 msgid ""
 "Group names must be prefixed with an ``@`` symbol. Specifying a group\n"
@@ -351,10 +360,10 @@
 
 msgid ""
 "Example Configuration\n"
-"....................."
+"---------------------"
 msgstr ""
 "Пример конфигурации\n"
-"..................."
+"-------------------"
 
 msgid "::"
 msgstr "::"
@@ -536,6 +545,90 @@
 msgid "  .hgtags = release_engineer"
 msgstr "  .hgtags = release_engineer"
 
+msgid ""
+"Examples using the \"!\" prefix\n"
+"............................."
+msgstr ""
+"Примеры использования префикса \"!\"\n"
+".................................."
+
+msgid ""
+"Suppose there's a branch that only a given user (or group) should be able "
+"to\n"
+"push to, and you don't want to restrict access to any other branch that may\n"
+"be created."
+msgstr ""
+"Допустим, есть ветка, доступ на запись к которой должен иметь только "
+"заданный\n"
+"пользователь или группа, и вы не хотите ограничивать доступ к другим веткам."
+
+msgid ""
+"The \"!\" prefix allows you to prevent anyone except a given user or group "
+"to\n"
+"push changesets in a given branch or path."
+msgstr ""
+"Префикс \"!\" позволяет запретить всем, кроме заданного пользователя или\n"
+"группы проталкивать изменения в заданную ветку или по заданному пути."
+
+msgid ""
+"In the examples below, we will:\n"
+"1) Deny access to branch \"ring\" to anyone but user \"gollum\"\n"
+"2) Deny access to branch \"lake\" to anyone but members of the group \"hobbit"
+"\"\n"
+"3) Deny access to a file to anyone but user \"gollum\""
+msgstr ""
+"В следующем примере мы:\n"
+"1) Запретим доступ к ветке \"ring\" всем, кроме пользователя \"gollum\"\n"
+"2) Запретим доступ к ветке \"lake\" всем, кроме членов группы \"hobbit\"\n"
+"3) Запретим доступ к файлу всем, кроме пользователя \"gollum\""
+
+msgid ""
+"  [acl.allow.branches]\n"
+"  # Empty"
+msgstr ""
+"  [acl.allow.branches]\n"
+"  # Пусто"
+
+msgid ""
+"  # 1) only 'gollum' can commit to branch 'ring';\n"
+"  # 'gollum' and anyone else can still commit to any other branch.\n"
+"  ring = !gollum"
+msgstr ""
+"  # 1) только 'gollum' может фиксировать в ветку 'ring';\n"
+"  # 'gollum' и все остальные погут фиксировать в любую другую ветку.\n"
+"  ring = !gollum"
+
+msgid ""
+"  # 2) only members of the group 'hobbit' can commit to branch 'lake';\n"
+"  # 'hobbit' members and anyone else can still commit to any other branch.\n"
+"  lake = !@hobbit"
+msgstr ""
+"  # 2) только члены группы 'hobbit' могут фиксировать в ветку 'lake';\n"
+"  # члены группы 'hobbit' и все остальные могут фиксировать в любую другую "
+"ветку.\n"
+"  lake = !@hobbit"
+
+msgid "  # You can also deny access based on file paths:"
+msgstr "  # Можно также запрещать доступ к определенным путям:"
+
+msgid ""
+"  [acl.allow]\n"
+"  # Empty"
+msgstr ""
+"  [acl.allow]\n"
+"  # Пусто"
+
+msgid ""
+"  [acl.deny]\n"
+"  # 3) only 'gollum' can change the file below;\n"
+"  # 'gollum' and anyone else can still change any other file.\n"
+"  /misty/mountains/cave/ring = !gollum"
+msgstr ""
+"  [acl.deny]\n"
+"  # только 'gollum' может изменять нижеперечисленные файлы;\n"
+"  # 'gollum' и все остальные могут изменять любой другой файл.\n"
+"  /misty/mountains/cave/ring = !gollum"
+
 #, python-format
 msgid "group '%s' is undefined"
 msgstr "группа '%s' не определена"
@@ -1242,8 +1335,14 @@
 msgid "Bugzilla error: %s"
 msgstr "Ошибка Bugzilla: %s"
 
-msgid "command to display child changesets"
-msgstr "Команда для отображения дочерних наборов изменений"
+msgid "command to display child changesets (DEPRECATED)"
+msgstr "команда для отображения дочерних наборов изменений (УСТАРЕЛО)"
+
+msgid ""
+"This extension is deprecated. You should use :hg:`log -r\n"
+"\"children(REV)\"` instead.\n"
+msgstr ""
+"Это расширение устарело, используйте :hg:`log -r \"children(РЕВИЗИЯ)\"`.\n"
 
 msgid "show the children of the given or working directory revision"
 msgstr "показать дочерние ревизии для заданной ревизии"
@@ -1277,8 +1376,8 @@
 msgstr "команда для отображения статистики об истории хранилища"
 
 #, python-format
-msgid "Revision %d is a merge, ignoring...\n"
-msgstr "Ревизия %d это слияние (merge), пропускаем...\n"
+msgid "revision %d is a merge, ignoring...\n"
+msgstr "ревизия %d это слияние (merge), игнорируется...\n"
 
 msgid "analyzing"
 msgstr "анализ"
@@ -1889,10 +1988,10 @@
 
 msgid ""
 "    Mercurial Source\n"
-"    ''''''''''''''''"
+"    ################"
 msgstr ""
 "    Источник - Mercurial\n"
-"    ''''''''''''''''''''"
+"    ####################"
 
 msgid ""
 "    The Mercurial source recognizes the following configuration\n"
@@ -1931,10 +2030,10 @@
 
 msgid ""
 "    CVS Source\n"
-"    ''''''''''"
+"    ##########"
 msgstr ""
 "    Источник - CVS\n"
-"    ''''''''''''''"
+"    ##############"
 
 msgid ""
 "    CVS source will use a sandbox (i.e. a checked-out copy) from CVS\n"
@@ -2021,7 +2120,7 @@
 
 msgid ""
 "    :hook.cvschangesets: Specify a Python function to be called after\n"
-"        the changesets are calculated from the the CVS log. The\n"
+"        the changesets are calculated from the CVS log. The\n"
 "        function is passed a list with the changeset entries, and can\n"
 "        modify the changesets in-place, or add or delete them."
 msgstr ""
@@ -2043,10 +2142,10 @@
 
 msgid ""
 "    Subversion Source\n"
-"    '''''''''''''''''"
+"    #################"
 msgstr ""
 "    Источник - Subversion\n"
-"    '''''''''''''''''''''"
+"    #####################"
 
 msgid ""
 "    Subversion source detects classical trunk/branches/tags layouts.\n"
@@ -2115,10 +2214,10 @@
 
 msgid ""
 "    Perforce Source\n"
-"    '''''''''''''''"
+"    ###############"
 msgstr ""
 "    Источник - Perforce\n"
-"    '''''''''''''''''''"
+"    ###################"
 
 msgid ""
 "    The Perforce (P4) importer can be given a p4 depot path or a\n"
@@ -2151,10 +2250,10 @@
 
 msgid ""
 "    Mercurial Destination\n"
-"    '''''''''''''''''''''"
+"    #####################"
 msgstr ""
 "    Выходное хранилище Mercurial\n"
-"    ''''''''''''''''''''''''''''"
+"    ############################"
 
 msgid "    The following options are supported:"
 msgstr "    Поддерживаются следующие параметры:"
@@ -2387,12 +2486,12 @@
 msgstr "не все ревизии были отсортированы"
 
 #, python-format
-msgid "Writing author map file %s\n"
-msgstr "Записываем файл отображений (map file) авторов %s\n"
-
-#, python-format
-msgid "Ignoring bad line in author map file %s: %s\n"
-msgstr "Ошибочная строка в файле отображения авторов %s игнорируется: %s\n"
+msgid "writing author map file %s\n"
+msgstr "запись файла отображения (map file) авторов %s\n"
+
+#, python-format
+msgid "ignoring bad line in author map file %s: %s\n"
+msgstr "ошибочная строка в файле отображения авторов %s игнорируется: %s\n"
 
 #, python-format
 msgid "mapping author %s to %s\n"
@@ -2712,6 +2811,10 @@
 msgid "collecting p4 changelists\n"
 msgstr "сбор списков изменений p4\n"
 
+msgid "debugsvnlog could not load Subversion python bindings"
+msgstr ""
+"debugsvnlog не удалось загрузить привязки (bindings) Subversion для python"
+
 msgid "Mercurial failed to run itself, check hg executable is in PATH"
 msgstr ""
 "Mercurial не удалось запустить себя самого, убедитесь, что переменная\n"
@@ -2733,7 +2836,7 @@
 msgid "%s does not look like a Subversion repository"
 msgstr "%s не похож на хранилище Subversion"
 
-msgid "Could not load Subversion python bindings"
+msgid "could not load Subversion python bindings"
 msgstr "Не удалось загрузить привязки (bindings) Subversion для python"
 
 #, python-format
@@ -3325,8 +3428,8 @@
 msgid "factotum not responding"
 msgstr "factotum не отвечает"
 
-msgid "pull, update and merge in one command"
-msgstr "затянуть, обновиться и слить одной командой"
+msgid "pull, update and merge in one command (DEPRECATED)"
+msgstr "затянуть, обновиться и слить одной командой (УСТАРЕЛО)"
 
 msgid "pull changes from a remote repository, merge new changes if needed."
 msgstr ""
@@ -3396,11 +3499,11 @@
 msgstr "затягиваем из %s\n"
 
 msgid ""
-"Other repository doesn't support revision lookup, so a rev cannot be "
+"other repository doesn't support revision lookup, so a rev cannot be "
 "specified."
 msgstr ""
-"Другое хранилище не поддерживает поиск ревизий, поэтому нельзя\n"
-"задавать ревизию."
+"Отдалённое хранилище не поддерживает поиск ревизий, поэтому ревизия не может "
+"быть задана."
 
 #, python-format
 msgid ""
@@ -3466,15 +3569,15 @@
 msgid "%s:%d node does not exist\n"
 msgstr "узел %s:%d не существует\n"
 
-msgid "hg sigcheck REVISION"
+msgid "hg sigcheck REV"
 msgstr "hg sigcheck РЕВИЗИЯ"
 
 msgid "verify all the signatures there may be for a particular revision"
 msgstr "проверить все возможные подписи для указанной ревизии"
 
 #, python-format
-msgid "No valid signature for %s\n"
-msgstr "Нет действительной подписи для %s\n"
+msgid "no valid signature for %s\n"
+msgstr "нет действительной подписи для %s\n"
 
 msgid "make the signature local"
 msgstr "сделать подпись локальной"
@@ -3497,7 +3600,7 @@
 msgid "commit message"
 msgstr "сообщение фиксации"
 
-msgid "hg sign [OPTION]... [REVISION]..."
+msgid "hg sign [OPTION]... [REV]..."
 msgstr "hg sign [ПАРАМЕТР]... [РЕВИЗИЯ]..."
 
 msgid "add a signature for the current or given revision"
@@ -3521,8 +3624,8 @@
 msgstr "незафиксированное слияние - пожалуйста, явно укажите ревизию"
 
 #, python-format
-msgid "Signing %d:%s\n"
-msgstr "Подписывается %d:%s\n"
+msgid "signing %d:%s\n"
+msgstr "подписывается %d:%s\n"
 
 msgid "error while signing"
 msgstr "ошибка при подписи"
@@ -3548,23 +3651,6 @@
 "Эта команда добавляет опцию --graph к командам incoming, outgoing и\n"
 "log. Если эта опция указана, то отображается граф ревизий в ASCII-графике.\n"
 
-#, python-format
-msgid "-G/--graph option is incompatible with --%s"
-msgstr "опция -G/--graph несовместима с --%s "
-
-#, python-format
-msgid "cannot follow file not in parent revision: \"%s\""
-msgstr ""
-"невозможно отслеживать файл, которого нет в родительской ревизии: \"%s\""
-
-#, python-format
-msgid "cannot follow nonexistent file: \"%s\""
-msgstr "невозможно отслеживать несуществующий файл: \"%s\""
-
-msgid "can only follow copies/renames for explicit filenames"
-msgstr ""
-"чтобы отслеживать копирования/переименования, требуется явное имя файла"
-
 msgid "follow changeset history, or file history across copies and renames"
 msgstr ""
 "следовать истории набора изменений или истории файла при копированиях/"
@@ -3634,9 +3720,6 @@
 "    каталога.\n"
 "    "
 
-msgid "show the revision DAG"
-msgstr "показать граф ревизий"
-
 msgid "hooks for integrating with the CIA.vc notification service"
 msgstr "хуки для интеграции с сервисом уведомлений CIA.vc"
 
@@ -3900,6 +3983,393 @@
 msgid "The default is 'colorful'.\n"
 msgstr "По умолчанию 'colorful'.\n"
 
+msgid "interactive history editing"
+msgstr "интерактивное редактирование истории"
+
+msgid ""
+"With this extension installed, Mercurial gains one new command: histedit. "
+"Usage\n"
+"is as follows, assuming the following history::"
+msgstr ""
+"Это расширение добавляет в Mercurial одну команду: histedit.\n"
+"Ниже приводится пример использования для следующей истории:"
+
+msgid ""
+" @  3[tip]   7c2fd3b9020c   2009-04-27 18:04 -0500   durin42\n"
+" |    Add delta\n"
+" |\n"
+" o  2   030b686bedc4   2009-04-27 18:04 -0500   durin42\n"
+" |    Add gamma\n"
+" |\n"
+" o  1   c561b4e977df   2009-04-27 18:04 -0500   durin42\n"
+" |    Add beta\n"
+" |\n"
+" o  0   d8d2fcd0e319   2009-04-27 18:04 -0500   durin42\n"
+"      Add alpha"
+msgstr ""
+" @  3[tip]   7c2fd3b9020c   2009-04-27 18:04 -0500   durin42\n"
+" |    Add delta\n"
+" |\n"
+" o  2   030b686bedc4   2009-04-27 18:04 -0500   durin42\n"
+" |    Add gamma\n"
+" |\n"
+" o  1   c561b4e977df   2009-04-27 18:04 -0500   durin42\n"
+" |    Add beta\n"
+" |\n"
+" o  0   d8d2fcd0e319   2009-04-27 18:04 -0500   durin42\n"
+"      Add alpha"
+
+msgid ""
+"If you were to run ``hg histedit c561b4e977df``, you would see the "
+"following\n"
+"file open in your editor::"
+msgstr ""
+"Если вы выполните ``hg histedit c561b4e977df``, вы увидите следующий файл,"
+"открытый в вашем редакторе::"
+
+msgid ""
+" pick c561b4e977df Add beta\n"
+" pick 030b686bedc4 Add gamma\n"
+" pick 7c2fd3b9020c Add delta"
+msgstr ""
+" pick c561b4e977df Add beta\n"
+" pick 030b686bedc4 Add gamma\n"
+" pick 7c2fd3b9020c Add delta"
+
+# this output is not localized yet
+msgid ""
+" # Edit history between 633536316234 and 7c2fd3b9020c\n"
+" #\n"
+" # Commands:\n"
+" #  p, pick = use commit\n"
+" #  e, edit = use commit, but stop for amending\n"
+" #  f, fold = use commit, but fold into previous commit\n"
+" #  d, drop = remove commit from history\n"
+" #  m, mess = edit message without changing commit content\n"
+" #\n"
+" 0 files updated, 0 files merged, 0 files removed, 0 files unresolved"
+msgstr ""
+" # Edit history between 633536316234 and 7c2fd3b9020c\n"
+" #\n"
+" # Commands:\n"
+" #  p, pick = use commit\n"
+" #  e, edit = use commit, but stop for amending\n"
+" #  f, fold = use commit, but fold into previous commit\n"
+" #  d, drop = remove commit from history\n"
+" #  m, mess = edit message without changing commit content\n"
+" #\n"
+" 0 files updated, 0 files merged, 0 files removed, 0 files unresolved"
+
+msgid ""
+"In this file, lines beginning with ``#`` are ignored. You must specify a "
+"rule\n"
+"for each revision in your history. For example, if you had meant to add "
+"gamma\n"
+"before beta, and then wanted to add delta in the same revision as beta, you\n"
+"would reorganize the file to look like this::"
+msgstr ""
+"В этом файле строки, начинающиеся с ``#``, игнорируются. Вы должны задать\n"
+"правило для каждой ревизии в вашей истории. Например, если вы хотели\n"
+"добавить gamma перед beta, а потом хотели добавить delta в той же ревизии,\n"
+"что и beta, вам следует отредактировать файл следующим образом::"
+
+msgid ""
+" pick 030b686bedc4 Add gamma\n"
+" pick c561b4e977df Add beta\n"
+" fold 7c2fd3b9020c Add delta"
+msgstr ""
+" pick 030b686bedc4 Add gamma\n"
+" pick c561b4e977df Add beta\n"
+" fold 7c2fd3b9020c Add delta"
+
+msgid ""
+"At which point you close the editor and ``histedit`` starts working. When "
+"you\n"
+"specify a ``fold`` operation, ``histedit`` will open an editor when it "
+"folds\n"
+"those revisions together, offering you a chance to clean up the commit "
+"message::"
+msgstr ""
+"После того, как вы закроете редактор, ``histedit`` начнет работать.\n"
+"Когда вы указываете операцию ``fold`` (совместить), ``histedit`` откроет\n"
+"редактор при совмещении этих ревизий вместе, предлагая вам подчистить\n"
+"сообщение фиксации::"
+
+msgid ""
+" Add beta\n"
+" ***\n"
+" Add delta"
+msgstr ""
+" Add beta\n"
+" ***\n"
+" Add delta"
+
+msgid ""
+"Edit the commit message to your liking, then close the editor. For\n"
+"this example, let's assume that the commit message was changed to\n"
+"``Add beta and delta.`` After histedit has run and had a chance to\n"
+"remove any old or temporary revisions it needed, the history looks\n"
+"like this::"
+msgstr ""
+"Напишите подходящее сообщение фиксации и закройте редактор. Здесь\n"
+"предположим, что сообщение фиксации было заменено на ``Add beta and "
+"delta``.\n"
+"После того, как histedit завершился и удалил все старые и промежуточные\n"
+"ревизии, история будет выглядеть так::"
+
+msgid ""
+" @  2[tip]   989b4d060121   2009-04-27 18:04 -0500   durin42\n"
+" |    Add beta and delta.\n"
+" |\n"
+" o  1   081603921c3f   2009-04-27 18:04 -0500   durin42\n"
+" |    Add gamma\n"
+" |\n"
+" o  0   d8d2fcd0e319   2009-04-27 18:04 -0500   durin42\n"
+"      Add alpha"
+msgstr ""
+" @  2[tip]   989b4d060121   2009-04-27 18:04 -0500   durin42\n"
+" |    Add beta and delta.\n"
+" |\n"
+" o  1   081603921c3f   2009-04-27 18:04 -0500   durin42\n"
+" |    Add gamma\n"
+" |\n"
+" o  0   d8d2fcd0e319   2009-04-27 18:04 -0500   durin42\n"
+"      Add alpha"
+
+msgid ""
+"Note that ``histedit`` does *not* remove any revisions (even its own "
+"temporary\n"
+"ones) until after it has completed all the editing operations, so it will\n"
+"probably perform several strip operations when it's done. For the above "
+"example,\n"
+"it had to run strip twice. Strip can be slow depending on a variety of "
+"factors,\n"
+"so you might need to be a little patient. You can choose to keep the "
+"original\n"
+"revisions by passing the ``--keep`` flag."
+msgstr ""
+"Обратите внимание, что ``histedit`` *не* удаляет никакие ревизии (даже\n"
+"промежуточные временные ревизии) до того, как завершит все операции\n"
+"редактирования, поэтому он, возможно, будет проводить несколько операций\n"
+"strip после завершения. Для приведенного примера, strip выполнится дважды.\n"
+"Strip может выполняться медленно в зависимости от многих факторов, поэтому\n"
+"вам, возможно, потребуется немого подождать. Вы также можете не удалять\n"
+"ревизии с помощью флага ``--keep``."
+
+# spell также так же
+msgid ""
+"The ``edit`` operation will drop you back to a command prompt,\n"
+"allowing you to edit files freely, or even use ``hg record`` to commit\n"
+"some changes as a separate commit. When you're done, any remaining\n"
+"uncommitted changes will be committed as well. When done, run ``hg\n"
+"histedit --continue`` to finish this step. You'll be prompted for a\n"
+"new commit message, but the default commit message will be the\n"
+"original message for the ``edit`` ed revision."
+msgstr ""
+"Операция ``edit`` вернет вас обратно в командную строку, позволяя\n"
+"произвольно редактировать файлы и даже использовать ``hg record``,\n"
+"чтобы зафиксировать некоторые изменения отдельной ревизией. После того,\n"
+"как вы закончите, все незафиксированные изменения будут так же "
+"зафиксированы.\n"
+"После завершения запустите ``hg histedit --continue`` чтобы закончить этот\n"
+"шаг. Вам будет предложено ввести новое сообщение фиксации, при этом\n"
+"по умолчанию сообщение фиксации берется из редактируемой ревизии."
+
+msgid ""
+"The ``message`` operation will give you a chance to revise a commit\n"
+"message without changing the contents. It's a shortcut for doing\n"
+"``edit`` immediately followed by `hg histedit --continue``."
+msgstr ""
+"Операция ``message`` позволит вам исправить сообщение фиксации без\n"
+"изменения содержимого ревизии. Это сокращенный вариант выполнения\n"
+"операции ``edit`` с последующим `hg histedit --continue``."
+
+msgid ""
+"If ``histedit`` encounters a conflict when moving a revision (while\n"
+"handling ``pick`` or ``fold``), it'll stop in a similar manner to\n"
+"``edit`` with the difference that it won't prompt you for a commit\n"
+"message when done. If you decide at this point that you don't like how\n"
+"much work it will be to rearrange history, or that you made a mistake,\n"
+"you can use ``hg histedit --abort`` to abandon the new changes you\n"
+"have made and return to the state before you attempted to edit your\n"
+"history."
+msgstr ""
+"Если ``histedit`` обнаруживает конфликт при перемещении ревизии (во\n"
+"время ``pick`` или ``fold``), он остановится, как при ``edit``, за\n"
+"исключением того, что вам не будет предложено ввести сообщение фиксации\n"
+"по завершении. Если в этот момент вы решите, что вам не нравится тот\n"
+"объем работы, который потребуется для переделывания истории, или вы\n"
+"допустили ошибку, можно использовать ``hg histedit --abort``, чтобы\n"
+"отбросить новые изменения и вернуться к состоянию до редактирования\n"
+"истории."
+
+msgid ""
+"If we clone the example repository above and add three more changes, such "
+"that\n"
+"we have the following history::"
+msgstr ""
+"Если мы клонируем приведенное выше хранилище и добавим еще три изменения,\n"
+"получим такую историю::"
+
+msgid ""
+"   @  6[tip]   038383181893   2009-04-27 18:04 -0500   stefan\n"
+"   |    Add theta\n"
+"   |\n"
+"   o  5   140988835471   2009-04-27 18:04 -0500   stefan\n"
+"   |    Add eta\n"
+"   |\n"
+"   o  4   122930637314   2009-04-27 18:04 -0500   stefan\n"
+"   |    Add zeta\n"
+"   |\n"
+"   o  3   836302820282   2009-04-27 18:04 -0500   stefan\n"
+"   |    Add epsilon\n"
+"   |\n"
+"   o  2   989b4d060121   2009-04-27 18:04 -0500   durin42\n"
+"   |    Add beta and delta.\n"
+"   |\n"
+"   o  1   081603921c3f   2009-04-27 18:04 -0500   durin42\n"
+"   |    Add gamma\n"
+"   |\n"
+"   o  0   d8d2fcd0e319   2009-04-27 18:04 -0500   durin42\n"
+"        Add alpha"
+msgstr ""
+"   @  6[tip]   038383181893   2009-04-27 18:04 -0500   stefan\n"
+"   |    Add theta\n"
+"   |\n"
+"   o  5   140988835471   2009-04-27 18:04 -0500   stefan\n"
+"   |    Add eta\n"
+"   |\n"
+"   o  4   122930637314   2009-04-27 18:04 -0500   stefan\n"
+"   |    Add zeta\n"
+"   |\n"
+"   o  3   836302820282   2009-04-27 18:04 -0500   stefan\n"
+"   |    Add epsilon\n"
+"   |\n"
+"   o  2   989b4d060121   2009-04-27 18:04 -0500   durin42\n"
+"   |    Add beta and delta.\n"
+"   |\n"
+"   o  1   081603921c3f   2009-04-27 18:04 -0500   durin42\n"
+"   |    Add gamma\n"
+"   |\n"
+"   o  0   d8d2fcd0e319   2009-04-27 18:04 -0500   durin42\n"
+"        Add alpha"
+
+msgid ""
+"If you run ``hg histedit --outgoing`` on the clone then it is the same\n"
+"as running ``hg histedit 836302820282``. If you need plan to push to a\n"
+"repository that Mercurial does not detect to be related to the source\n"
+"repo, you can add a ``--force`` option.\n"
+msgstr ""
+"Выполнение ``hg histedit --outgoing`` на клоне эквивалентно выполнению\n"
+"``hg histedit 836302820282``. Если вы хотите протолкнуть изменения в\n"
+"хранилище, которое Mercurial не опознает как связанное с источником,\n"
+"можно использовать параметр ``--force``.\n"
+
+msgid "cannot edit history that would orphan nodes"
+msgstr "нельзя редактировать историю, если это оставляет висячие узлы"
+
+msgid "can't edit history with merges"
+msgstr "нельзя редактировать историю со слияниями"
+
+#, python-format
+msgid "%s: empty changeset"
+msgstr "%s: пустой набор изменений"
+
+msgid "Fix up the change and run hg histedit --continue"
+msgstr "Исправьте изменение и запустите hg histedit --continue"
+
+msgid ""
+"Make changes as needed, you may commit or record as needed now.\n"
+"When you are finished, run hg histedit --continue to resume."
+msgstr ""
+"Внесите изменения при необходимости, при этом, если хотите, можно\n"
+"выполнять commit или record. Когда закончите, выполните\n"
+"hg histedit --continue для продолжения."
+
+msgid "Read history edits from the specified file."
+msgstr "Читать изменения истории из указанного файла."
+
+msgid "continue an edit already in progress"
+msgstr "продолжить текущее изменение истории"
+
+msgid "don't strip old nodes after edit is complete"
+msgstr "не вырезать старые узлы после завершения"
+
+msgid "abort an edit in progress"
+msgstr "отменить текущее редактирование"
+
+msgid "changesets not found in destination"
+msgstr "наборы изменений, отсутствующие в другом хранилище"
+
+msgid "force outgoing even for unrelated repositories"
+msgstr "использовать outgoing даже для несвязанных хранилищах"
+
+msgid "first revision to be edited"
+msgstr "первая редактируемая ревизия"
+
+msgid "[PARENT]"
+msgstr "[РОДИТЕЛЬ]"
+
+msgid ""
+"interactively edit changeset history\n"
+"    "
+msgstr "интерактивно редактировать историю ревизий    "
+
+msgid "source has mq patches applied"
+msgstr "источник имеет наложенные патчи mq"
+
+msgid "only one repo argument allowed with --outgoing"
+msgstr "допускается только одно хранилище с --outgoing"
+
+#, python-format
+msgid "comparing with %s\n"
+msgstr "сравниваем с %s\n"
+
+msgid "--force only allowed with --outgoing"
+msgstr "--force допустимо только с --outgoing"
+
+msgid "no arguments allowed with --continue"
+msgstr "другие аргументы не допускаются с --continue"
+
+msgid "no arguments allowed with --abort"
+msgstr "другие аргументы не допускаются с --abort"
+
+msgid "history edit already in progress, try --continue or --abort"
+msgstr ""
+"редактирование истории уже выполняется, используйте --continue или --abort"
+
+msgid "histedit requires exactly one parent revision"
+msgstr "histedit требует ровно одну родительскую ревизию"
+
+msgid "histedit: Should update metadata for the following changes:\n"
+msgstr "histedit: Необходимо обновить метаданные для следующих изменений:\n"
+
+#, python-format
+msgid "histedit:  %s to %s\n"
+msgstr "histedit: %s to %s\n"
+
+#, python-format
+msgid "histedit:     moving bookmarks %s\n"
+msgstr "histedit:     перемещаются закладки %s\n"
+
+msgid "must specify a rule for each changeset once"
+msgstr "для каждой ревизии требуется указать одно правило"
+
+#, python-format
+msgid "malformed line \"%s\""
+msgstr "неверный формат строки \"%s\""
+
+msgid "may not use changesets other than the ones listed"
+msgstr "можно использовать только перечисленные наборы изменений"
+
+#, python-format
+msgid "unknown changeset %s listed"
+msgstr "перечислен неизвестный набор изменений %s"
+
+#, python-format
+msgid "unknown action \"%s\""
+msgstr "неизвестное действие \"%s\""
+
 msgid "accelerate status report using Linux's inotify service"
 msgstr "ускоренные уведомления об изменениях с использованием Linux inotify"
 
@@ -4720,6 +5190,14 @@
 msgid "largefile %s missing from store (needs to be uploaded)"
 msgstr "большой файл %s отсутствует на складе (необходимо его загрузить)"
 
+#, python-format
+msgid "%d additional largefiles cached\n"
+msgstr "%d больших файлов закэшировано дополнительно\n"
+
+#, python-format
+msgid "%d largefiles failed to download\n"
+msgstr "не удалось загрузить %d больших файлов\n"
+
 msgid "getting changed largefiles\n"
 msgstr "получение измененных больших файлов\n"
 
@@ -4753,15 +5231,15 @@
 msgstr "неизвестная операционная система: %s\n"
 
 #, python-format
-msgid "Found %s in store\n"
+msgid "found %s in store\n"
 msgstr "%s найден на складе\n"
 
 #, python-format
-msgid "Found %s in system cache\n"
-msgstr "%s найден в кэше системы\n"
-
-msgid "Can't get file locally"
-msgstr "Невозможно получить файл локально"
+msgid "found %s in system cache\n"
+msgstr "%s найден в системном кэше\n"
+
+msgid "can't get file locally"
+msgstr "невозможно получить файл локально"
 
 #, python-format
 msgid ""
@@ -4868,12 +5346,12 @@
 msgid "&Other"
 msgstr "&Other - другой"
 
+msgid "no files to copy"
+msgstr "нет файлов для копирования"
+
 msgid "destination largefile already exists"
 msgstr "большой файл назначения уже существует"
 
-msgid "no files to copy"
-msgstr "нет файлов для копирования"
-
 msgid "caching new largefiles\n"
 msgstr "кэшируем новые большие файлы\n"
 
@@ -4882,6 +5360,10 @@
 msgstr "%d больших файлов закэшировано\n"
 
 #, python-format
+msgid "--all-largefiles is incompatible with non-local destination %s"
+msgstr "--all-largefiles несовместим с нелокальным путем назначения %s"
+
+#, python-format
 msgid "unknown archive type '%s'"
 msgstr "неизвестный тип архива '%s'"
 
@@ -4996,6 +5478,12 @@
 msgid "display outgoing largefiles"
 msgstr "показать исходящие большие файлы"
 
+msgid "download all pulled versions of largefiles"
+msgstr "загрузить все затянутые версии больших файлов"
+
+msgid "download all versions of all largefiles"
+msgstr "загрузить все версии всех больших файлов"
+
 msgid "manage a stack of patches"
 msgstr "управление стеком патчей"
 
@@ -5086,11 +5574,37 @@
 
 msgid ""
 "You will by default be managing a patch queue named \"patches\". You can\n"
-"create other, independent patch queues with the :hg:`qqueue` command.\n"
+"create other, independent patch queues with the :hg:`qqueue` command."
 msgstr ""
 "По умолчанию будет создана очередь патчей с именем \"patches\". Вы\n"
 "можете создавать другие независимые очереди патчей с помощью команды\n"
-":hg:`qqueue`.\n"
+":hg:`qqueue`."
+
+msgid ""
+"If the working directory contains uncommitted files, qpush, qpop and\n"
+"qgoto abort immediately. If -f/--force is used, the changes are\n"
+"discarded. Setting::"
+msgstr ""
+"Если рабочий каталог содержит незафиксированные файлы, qpush, apop и\n"
+"qgoto немедленно прерываются. Если укзан -f/--force, изменения будут\n"
+"потеряны. Настройка::"
+
+msgid ""
+"  [mq]\n"
+"  keepchanges = True"
+msgstr ""
+"  [mq]\n"
+"  keepchanges = True"
+
+msgid ""
+"make them behave as if --keep-changes were passed, and non-conflicting\n"
+"local changes will be tolerated and preserved. If incompatible options\n"
+"such as -f/--force or --exact are passed, this setting is ignored.\n"
+msgstr ""
+"заставляет эти команды вести себя так, как будто был указан --keep-changes,\n"
+"при этом локальные изменения без конфликтов сохраняются. Если указаны\n"
+"несовместимые параметры, такие как -f/--force и --exact, этот параметр\n"
+"игнорируется.\n"
 
 msgid "print first line of patch header"
 msgstr "печатать первую строку заголовка патча"
@@ -5192,6 +5706,9 @@
 msgid "unable to read %s\n"
 msgstr "невозможно прочитать %s\n"
 
+msgid "local changes found, refresh first"
+msgstr "найдены локальные изменения, необходимо сначала обновиться"
+
 #, python-format
 msgid "patch %s is empty\n"
 msgstr "патч %s пуст\n"
@@ -5250,9 +5767,6 @@
 msgid "uncommitted changes in subrepository %s"
 msgstr "незафиксированные изменения в подхранилище %s"
 
-msgid "local changes found, refresh first"
-msgstr "найдены локальные изменения, необходимо сначала обновиться"
-
 msgid "local changes found"
 msgstr "найдены локальные изменения"
 
@@ -5276,6 +5790,9 @@
 msgid "patch \"%s\" already exists"
 msgstr "патч \"%s\" уже существует"
 
+msgid "cannot use both --force and --keep-changes"
+msgstr "нельзя одновременно указывать --force и --keep-changes"
+
 msgid "cannot manage merge changesets"
 msgstr "не могу работать с ревизией слияния"
 
@@ -5326,6 +5843,9 @@
 msgid "patch series already fully applied\n"
 msgstr "последовательность патчей уже полностью наложена\n"
 
+msgid "cannot use --exact and --keep-changes together"
+msgstr "нельзя использовать --exact и --keep-changes одновременно"
+
 msgid "cannot use --exact and --move together"
 msgstr "нельзя использовать --exact и --move одновременно"
 
@@ -5407,8 +5927,8 @@
 msgid "patch %s is not in series file"
 msgstr "патч %s не в файле последовательностей (series)"
 
-msgid "No saved patch data found\n"
-msgstr "Не найдено сохраненных данных патча\n"
+msgid "no saved patch data found\n"
+msgstr "не найдено сохраненных данных патча\n"
 
 #, python-format
 msgid "restoring status: %s\n"
@@ -5428,8 +5948,8 @@
 msgid "updating queue directory\n"
 msgstr "обновление каталога очереди\n"
 
-msgid "Unable to load queue repository\n"
-msgstr "Невозможно загрузить хранилище очереди\n"
+msgid "unable to load queue repository\n"
+msgstr "невозможно загрузить хранилище очереди\n"
 
 msgid "save: no patches applied, exiting\n"
 msgstr "save: нет наложенных патчей, выход\n"
@@ -5450,6 +5970,9 @@
 msgid "option \"-r\" not valid when importing files"
 msgstr "опция \"-r\" недопустима при импорте файлов"
 
+msgid "no files or revisions specified"
+msgstr "не заданы файлы или ревизии"
+
 msgid "option \"-n\" not valid when importing multiple patches"
 msgstr "опция \"-n\" недопустима при импорте нескольких патчей"
 
@@ -5581,8 +6104,8 @@
 msgid "qpush after importing"
 msgstr "выполнить qpush после импортирования"
 
-msgid "hg qimport [-e] [-n NAME] [-f] [-g] [-P] [-r REV]... FILE..."
-msgstr "hg qimport [-e] [-n ИМЯ] [-f] [-g] [-P] [-r РЕВ]... ФАЙЛ..."
+msgid "hg qimport [-e] [-n NAME] [-f] [-g] [-P] [-r REV]... [FILE]..."
+msgstr "hg qimport [-e] [-n ИМЯ] [-f] [-g] [-P] [-r РЕВ]... [ФАЙЛ]..."
 
 msgid "import a patch or existing changeset"
 msgstr "импортировать патч или существующий набор изменений"
@@ -5999,8 +6522,8 @@
 msgstr "qfold требует указать хотя бы одно имя патча"
 
 #, python-format
-msgid "Skipping already folded patch %s\n"
-msgstr "Пропускается уже подшитый патч %s\n"
+msgid "skipping already folded patch %s\n"
+msgstr "пропускается уже подшитый патч %s\n"
 
 #, python-format
 msgid "qfold cannot fold already applied patch %s"
@@ -6010,6 +6533,9 @@
 msgid "error folding patch %s"
 msgstr "ошибка при подшивке патча %s"
 
+msgid "tolerate non-conflicting local changes"
+msgstr "допускать неконфликтующие локальные изменения"
+
 msgid "overwrite any local changes"
 msgstr "перезаписывать все локальные изменения"
 
@@ -6117,11 +6643,16 @@
 msgstr "протолкнуть следующий патч в стек"
 
 msgid ""
-"    When -f/--force is applied, all local changes in patched files\n"
-"    will be lost."
-msgstr ""
-"    С -f/--force все локальные изменения в файлах, на которые накладывается\n"
-"    патч, будут утеряны."
+"    By default, abort if the working directory contains uncommitted\n"
+"    changes. With --keep-changes, abort only if the uncommitted files\n"
+"    overlap with patched files. With -f/--force, backup and patch over\n"
+"    uncommitted changes."
+msgstr ""
+"    По умолчанию выполнение прерывается, если в рабочем каталоге есть\n"
+"    назафиксированные изменения. С --keep-changes прерывается только\n"
+"    если незафиксированные изменения пересекаются с файлами, на которые\n"
+"    накладывается патч. C -f/--force создается резервная копия и патч\n"
+"    накладывается поверх незафиксированных изменений."
 
 msgid "no saved queues found, please use -n\n"
 msgstr "не найдено сохраненных очередей, пожалуйста используйте -n\n"
@@ -6147,14 +6678,26 @@
 msgstr "вытолкнуть текущий патч из стека"
 
 msgid ""
-"    By default, pops off the top of the patch stack. If given a patch\n"
-"    name, keeps popping off patches until the named patch is at the\n"
-"    top of the stack."
-msgstr ""
-"    По умолчанию, выталкивает вершину стека патчей. Если указано имя\n"
+"    Without argument, pops off the top of the patch stack. If given a\n"
+"    patch name, keeps popping off patches until the named patch is at\n"
+"    the top of the stack."
+msgstr ""
+"    Без аргументов выталкивает вершину стека патчей. Если указано имя\n"
 "    патча, продолжает выталкивать патчи до тех пор, пока указанный патч\n"
 "    не окажется на вершине."
 
+msgid ""
+"    By default, abort if the working directory contains uncommitted\n"
+"    changes. With --keep-changes, abort only if the uncommitted files\n"
+"    overlap with patched files. With -f/--force, backup and discard\n"
+"    changes made to such files."
+msgstr ""
+"    По умолчанию выполнение прерывается, если в рабочем каталоге имеются\n"
+"    незафиксированные изменения. С --keep-changes прерывается только\n"
+"    если незафиксированные файлы пересекаются с файлами, на которые\n"
+"    накладывается патч. С -f/--force создается резервная копия и все\n"
+"    изменения в таких файлах отменяются."
+
 #, python-format
 msgid "using patch queue: %s\n"
 msgstr "используется очередь патчей: %s\n"
@@ -6248,8 +6791,11 @@
 msgid "do not modify working copy during strip"
 msgstr "не изменять рабочую копию во во время операции strip"
 
-msgid "hg strip [-k] [-f] [-n] REV..."
-msgstr "hg strip [-k] [-f] [-n] РЕВ..."
+msgid "remove revs only reachable from given bookmark"
+msgstr "удалить ревизии, доступные только через указанную закладку"
+
+msgid "hg strip [-k] [-f] [-n] [-B bookmark] [-r] REV..."
+msgstr "hg strip [-k] [-f] [-n] [-B закладка] [-r] РЕВИЗИЯ..."
 
 msgid "strip changesets and all their descendants from the repository"
 msgstr "срезать наборы изменений и всех их потомков из хранилища"
@@ -6298,6 +6844,23 @@
 "    Используйте параметр --no-backup чтобы удалить комплект резервного\n"
 "    восстановления сразу после завершения операции."
 
+msgid ""
+"    Strip is not a history-rewriting operation and can be used on\n"
+"    changesets in the public phase. But if the stripped changesets have\n"
+"    been pushed to a remote repository you will likely pull them again."
+msgstr ""
+"    Strip не изменяет историю, поэтому может быть использована на наборах\n"
+"    изменений в публичной фазе. Но если вырезанный набор изменений\n"
+"    был записан в отдаленное хранилище, скорее всего вы затяните его снова."
+
+#, python-format
+msgid "bookmark '%s' not found"
+msgstr "закладка '%s' не найдена"
+
+#, python-format
+msgid "bookmark '%s' deleted\n"
+msgstr "закладк '%s' удалена\n"
+
 msgid "empty revision set"
 msgstr "пустой набор ревизий"
 
@@ -6562,16 +7125,13 @@
 msgid "cannot commit over an applied mq patch"
 msgstr "не могу зафиксировать поверх наложенного патч mq"
 
-msgid "source has mq patches applied"
-msgstr "источник имеет наложенные патчи mq"
-
 #, python-format
 msgid "mq status file refers to unknown node %s\n"
 msgstr "файл состояния mq ссылается на неизвестный узел %s\n"
 
 #, python-format
-msgid "Tag %s overrides mq patch of the same name\n"
-msgstr "Метка %s подменяет патч mq с таким же именем\n"
+msgid "tag %s overrides mq patch of the same name\n"
+msgstr "метка %s подменяет патч mq с таким же именем\n"
 
 msgid "cannot import over an applied patch"
 msgstr "невозможно импортировать поверх наложенного патча"
@@ -6613,24 +7173,24 @@
 msgstr "хуки для отправки уведомлений о новых изменениях по email"
 
 msgid ""
-"This extension let you run hooks sending email notifications when\n"
-"changesets are being pushed, from the sending or receiving side."
-msgstr ""
-"Это расширение позволяет вам запускать хуки, отправляющие уведомление\n"
-"по email, когда наборы изменений проталкиваются в хранилище, от принимающей\n"
+"This extension implements hooks to send email notifications when\n"
+"changesets are sent from or received by the local repository."
+msgstr ""
+"Это расширение реализует хуки, отправляющие уведомления\n"
+"по email, когда наборы изменений проталкиваются или затягиваются\n"
 "или получающей стороны."
 
 msgid ""
 "First, enable the extension as explained in :hg:`help extensions`, and\n"
 "register the hook you want to run. ``incoming`` and ``changegroup`` hooks\n"
-"are run by the changesets receiver while the ``outgoing`` one is for\n"
-"the sender::"
+"are run when changesets are received, while ``outgoing`` hooks are for\n"
+"changesets sent to another repository::"
 msgstr ""
 "Первым делом, включите расширение, как это описано в :hg:`help extensions`\n"
-"и зарегистрируйте хук, который вы желаете запускать. На стороне,\n"
-"принимающей наборы изменений, выполняются хуки ``incoming`` и "
-"``changegroup``,\n"
-"в то время как на передающей стороне выполняется только ``outgoing``::"
+"и зарегистрируйте хук, который вы желаете запускать. При получении,\n"
+"изменений, выполняются хуки ``incoming`` и ``changegroup``,\n"
+"в то время как ``outgoing`` вызывается для передаваемых в другое хранилище\n"
+"наборов изменений::"
 
 msgid ""
 "  [hooks]\n"
@@ -6653,19 +7213,19 @@
 "  outgoing.notify = python:hgext.notify.hook"
 
 msgid ""
-"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 ""
-"Теперь, когда хуки активированы, подписчики должны быть привязаны к\n"
-"хранилищам. Используйте секции ``[usersubs]``, чтобы связать хранилища\n"
-"с заданным адресом email, или секцию ``[reposubs]``, чтобы связать\n"
-"адреса email с одним хранилищем::"
+"This registers the hooks. To enable notification, subscribers must\n"
+"be assigned to repositories. The ``[usersubs]`` section maps multiple\n"
+"repositories to a given recipient. The ``[reposubs]`` section maps\n"
+"multiple recipients to a single repository::"
+msgstr ""
+"Таким образом хуки зарегистрированы. Чтобы включить уведомления,\n"
+"подписчики должны быть связаны с хранилищами. Секция ``[usersubs]``\n"
+"связывает несколько хранилищ с заданным получателем. Секция ``[reposubs]``\n"
+"связывает несколько получателей с одним хранилищем::"
 
 msgid ""
 "  [usersubs]\n"
-"  # key is subscriber email, value is a comma-separated list of glob\n"
+"  # key is subscriber email, value is a comma-separated list of repo glob\n"
 "  # patterns\n"
 "  user@host = pattern"
 msgstr ""
@@ -6682,19 +7242,23 @@
 "  pattern = user@host"
 msgstr ""
 "  [reposubs]\n"
-"  # ключ - шаблон в стиле glob, значение - разделенный запятыми список "
-"адресов\n"
-"  # email\n"
+"  # ключ - шаблон в стиле glob, значение - разделенный запятыми список\n"
+"  # email-адресов\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 ""
-"Шаблоны сравниваются с абсолютными путями к корню хранилища.\n"
-"Подписки могут определяться в отдельном файле, при этом на\n"
-"них можно сослаться следующим образом::"
+"root."
+msgstr "Шаблоны сопоставляются с абсолютными путями к корню хранилища."
+
+msgid ""
+"In order to place them under direct user management, ``[usersubs]`` and\n"
+"``[reposubs]`` sections may be placed in a separate ``hgrc`` file and\n"
+"incorporated by reference::"
+msgstr ""
+"Секции ``[reposubs]`` и ``[usersubs]`` могут быть помещены в отдельный файл\n"
+"конфигурации (hgrc), для того чтобы пользователь мог явно управлять ими, и\n"
+"могут подключаться с помощью ссылки:"
 
 msgid ""
 "  [notify]\n"
@@ -6704,20 +7268,11 @@
 "  config = /путь/к/файлу/подписок"
 
 msgid ""
-"Alternatively, they can be added to Mercurial configuration files by\n"
-"setting the previous entry to an empty value."
-msgstr ""
-"Также они могут быть добавлены прямо в конфигурационные файлы Mercurial,\n"
-"для этого надо установить предыдущий параметр в пустое значение (config= )"
-
-msgid ""
-"At this point, notifications should be generated but will not be sent until "
-"you\n"
-"set the ``notify.test`` entry to ``False``."
-msgstr ""
-"После этого уведомления уже должны генерироваться, но они не будут "
-"отправляться\n"
-"до тех пор, пока вы не установите ``notify.test`` в ``False``."
+"Notifications will not be sent until the ``notify.test`` value is set\n"
+"to ``False``; see below."
+msgstr ""
+"Уведомления не будут отправляться до тех пор, пока вы не установите\n"
+" ``notify.test`` в ``False``; см. далее."
 
 msgid ""
 "Notifications content can be tweaked with the following configuration "
@@ -6736,29 +7291,37 @@
 
 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."
+"  Space-separated list of change sources. Notifications are activated only\n"
+"  when a changeset's source is in this list. Sources may be:"
 msgstr ""
 "notify.sources\n"
-"  Разделенный пробелами список источников изменений. Уведомления\n"
-"  отсылаются, только если он содержит источники входящих или исходящих\n"
-"  изменений. Входящие источники могут быть ``serve`` - для изменений,\n"
-"  получаемых по ssh или http, ``pull`` - для затягиваемых изменений,\n"
-"  ``unbundle`` - для изменений, добавляемых с помощью :hg:`unbundle`,\n"
-"  или ``push`` - для добавленных локально с помощью команды :hg:`push`.\n"
-"  Такие же значения возможны и для исходящих, кроме ``unbundle``, который\n"
-"  заменяется на ``bundle``. По умолчанию: serve."
+"  Разделенный пробелами список источников изменений. Уведомления "
+"активируются\n"
+"  только когда источник набора изменений находится в этом списке.\n"
+"  Источником могут быть:"
+
+msgid ""
+"  :``serve``: changesets received via http or ssh\n"
+"  :``pull``: changesets received via ``hg pull``\n"
+"  :``unbundle``: changesets received via ``hg unbundle``\n"
+"  :``push``: changesets sent or received via ``hg push``\n"
+"  :``bundle``: changesets sent via ``hg unbundle``"
+msgstr ""
+"  :``serve``: наборы изменений, полученные по http или ssh\n"
+"  :``pull``: наборы изменений, полученные с помощью ``hg pull``\n"
+"  :``unbundle``: наборы изменений, полученные с помощью ``hg unbundle``\n"
+"  :``push``: наборы изменений, полученные или отправленные с помощью ``hg "
+"push``\n"
+"  :``bundle``: наборы изменений, отправленные с помощью ``hg unbundle``"
+
+msgid "  Default: serve."
+msgstr "  По умолчанию: serve."
 
 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 "
+"  reference repositories with their absolute path. ``notify.strip`` lets "
 "you\n"
 "  turn them into relative paths. For example, ``notify.strip=3`` will "
 "change\n"
@@ -6772,12 +7335,11 @@
 
 msgid ""
 "notify.domain\n"
-"  If subscribers emails or the from email have no domain set, complete them\n"
-"  with this value."
+"  Default email domain for sender or recipients with no explicit domain."
 msgstr ""
 "notify.domain\n"
-"  Если адреса email подписчиков или поле email \"From:\" (От) не имеют\n"
-"  домена, он заменяется этим значением."
+"  Домен email, используемый по умолчанию для отправителя или получателей,\n"
+"  если он не задан явно."
 
 msgid ""
 "notify.style\n"
@@ -6795,23 +7357,25 @@
 
 msgid ""
 "notify.incoming\n"
-"  Template to use when run as incoming hook, override ``notify.template``."
+"  Template to use when run as an incoming hook, overriding ``notify."
+"template``."
 msgstr ""
 "notify.incoming\n"
-"  Шаблон, используемый при запуске в качестве хука для входящих изменений,\n"
-"  переопределяет ``notify.template``."
+"  Шаблон, используемый при запуске в качестве хука для входящих изменений,"
+"переопределяет ``notify.template``."
 
 msgid ""
 "notify.outgoing\n"
-"  Template to use when run as outgoing hook, override ``notify.template``."
+"  Template to use when run as an outgoing hook, overriding ``notify."
+"template``."
 msgstr ""
 "notify.outgoing\n"
-"  Шаблон, используемый при запуске в качестве хука для исходящих изменений,\n"
-"  переопределяет ``notify.template``."
+"  Шаблон, используемый при запуске в качестве хука для исходящих изменений,"
+"переопределяет ``notify.template``."
 
 msgid ""
 "notify.changegroup\n"
-"  Template to use when running as changegroup hook, override\n"
+"  Template to use when running as a changegroup hook, overriding\n"
 "  ``notify.template``."
 msgstr ""
 "notify.changegroup\n"
@@ -6821,7 +7385,7 @@
 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."
+"  to disable the diff, or -1 to include all of it. Default: 300."
 msgstr ""
 "notify.maxdiff\n"
 "  Максимальное количество строк различий, включаемых в письмо уведомления.\n"
@@ -6830,7 +7394,7 @@
 
 msgid ""
 "notify.maxsubject\n"
-"  Maximum number of characters in emails subject line. Default: 67."
+"  Maximum number of characters in email's subject line. Default: 67."
 msgstr ""
 "notify.maxsubject\n"
 "  Максимальное количество символов в теме (\"Subject:\") письма. По "
@@ -6863,19 +7427,18 @@
 
 msgid ""
 "notify.fromauthor\n"
-"  If set, use the first committer of the changegroup for the \"From\" field "
-"of\n"
-"  the notification mail. If not set, take the user from the pushing repo.\n"
-"  Default: False."
+"  If set, use the committer of the first changeset in a changegroup for\n"
+"  the \"From\" field of the notification mail. If not set, take the user\n"
+"  from the pushing repo.  Default: False."
 msgstr ""
 "notify.fromauthor\n"
-"  Если истина, использовать первого автора группы изменений для поля \"От\"\n"
-"  сообщения. Если не задан, использовать пользователя из исходящего "
-"хранилища.\n"
+"  Если задано, использовать автора первого изменения группы изменений для\n"
+"  поля \"От\" email-сообщения. Если не задан, использовать пользователя из   "
+"исходящего хранилища.\n"
 "  По умолчанию: False (Ложь)"
 
 msgid ""
-"If set, the following entries will also be used to customize the "
+"If set, the following entries will also be used to customize the\n"
 "notifications:"
 msgstr ""
 "Следующие параметры также используются для настройки уведомлений,\n"
@@ -6883,8 +7446,8 @@
 
 msgid ""
 "email.from\n"
-"  Email ``From`` address to use if none can be found in generated email "
-"content."
+"  Email ``From`` address to use if none can be found in the generated\n"
+"  email content."
 msgstr ""
 "email.from\n"
 "  Адрес для поля ``От`` (``From``), если нет другого подходящего\n"
@@ -6892,11 +7455,11 @@
 
 msgid ""
 "web.baseurl\n"
-"  Root repository browsing URL to combine with repository paths when making\n"
+"  Root repository URL to combine with repository paths when making\n"
 "  references. See also ``notify.strip``."
 msgstr ""
 "web.baseurl\n"
-"  URL корня хранилища для обозревателя, совмещаемый с путями хранилища\n"
+"  URL корня хранилища, присоединяемый к путям хранилища\n"
 "  при создании ссылок. См. также ``notify.strip``."
 
 #, python-format
@@ -7363,10 +7926,6 @@
 "    в вашем конфигурационном файле. См. секцию [email] в справке по\n"
 "    hgrc(5) для дополнительной информации.    "
 
-#, python-format
-msgid "comparing with %s\n"
-msgstr "сравниваем с %s\n"
-
 msgid "no changes found\n"
 msgstr "изменения не найдены\n"
 
@@ -7391,8 +7950,8 @@
 "Напишите вводное письмо для серии патчей."
 
 #, python-format
-msgid "This patch series consists of %d patches."
-msgstr "Эта серия содержит %d патчей."
+msgid "this patch series consists of %d patches."
+msgstr "Эта серия состоит из %d патчей."
 
 msgid "no recipient addresses provided"
 msgstr "не указан адрес получателя"
@@ -7419,11 +7978,11 @@
 msgid "patchbomb canceled"
 msgstr "отправка отменена"
 
-msgid "Displaying "
-msgstr "Показывается "
-
-msgid "Sending "
-msgstr "Отправляется "
+msgid "displaying "
+msgstr "отображение "
+
+msgid "sending "
+msgstr "отправка "
 
 msgid "sending"
 msgstr "отправка"
@@ -7609,12 +8168,12 @@
 msgstr "предупреждение: %s\n"
 
 #, python-format
-msgid "Removing file %s\n"
-msgstr "Удаляем файл %s\n"
-
-#, python-format
-msgid "Removing directory %s\n"
-msgstr "Удаляем каталог %s\n"
+msgid "removing file %s\n"
+msgstr "удаляется файл %s\n"
+
+#, python-format
+msgid "removing directory %s\n"
+msgstr "удаляется каталог %s\n"
 
 msgid "command to move sets of revisions to a different ancestor"
 msgstr "команда для перемещения наборов ревизий к другому предку"
@@ -7669,8 +8228,8 @@
 msgid "keep original branch names"
 msgstr "сохранить исходные имена веток"
 
-msgid "force detaching of source from its original branch"
-msgstr "принудительно отцепить источник от его ветки-источника"
+msgid "(DEPRECATED)"
+msgstr "(УСТАРЕЛО)"
 
 msgid "specify merge tool"
 msgstr "задать инструмент слияния"
@@ -7808,9 +8367,6 @@
 msgid "cannot use collapse with continue or abort"
 msgstr "нельзя использовать collapse с continue или abort"
 
-msgid "cannot use detach with continue or abort"
-msgstr "нельзя использовать detach с continue или abort"
-
 msgid "abort and continue do not allow specifying revisions"
 msgstr "abort и continue не позволяют задавать ревизии"
 
@@ -7826,12 +8382,6 @@
 msgid "cannot specify both a revision and a source"
 msgstr "нельзя указывать одновременно ревизию и source"
 
-msgid "detach requires a revision to be specified"
-msgstr "detach требует указания ревизии"
-
-msgid "cannot specify a base with detach"
-msgstr "нельзя задавать base с detach"
-
 msgid "can't remove original changesets with unrebased descendants"
 msgstr ""
 "не удается удалить исходный набор изменений с неперебазированными потомками"
@@ -7892,10 +8442,9 @@
 msgid "no rebase in progress"
 msgstr "нет прерванного перебазирования"
 
-msgid "warning: immutable rebased changeset detected, can't abort\n"
-msgstr ""
-"внимание: обнаружены неизменяемые перебазированные наборы изменений, нельзя "
-"прервать\n"
+#, python-format
+msgid "can't abort rebase due to immutable changesets %s"
+msgstr "невозможно отменить перебазирование из-за неизменяемых ревизий %s"
 
 msgid "warning: new changesets detected on target branch, can't abort\n"
 msgstr ""
@@ -8192,9 +8741,6 @@
 msgid "hardlinks are not supported on this system"
 msgstr "эта система не поддерживать жесткие ссылки"
 
-msgid "must specify local origin repository"
-msgstr "хранилище-источник должно быть локальным"
-
 #, python-format
 msgid "relinking %s to %s\n"
 msgstr "пересоздаем ссылки %s в %s\n"
@@ -8420,10 +8966,6 @@
 msgid "can only omit patchfile if merging"
 msgstr "patchfile можно опустить только при слиянии"
 
-#, python-format
-msgid "%s: empty changeset"
-msgstr "%s: пустой набор изменений"
-
 msgid "fix up the merge and run hg transplant --continue"
 msgstr "разрешите конфликты и запустите hg transplant --continue"
 
@@ -8551,12 +9093,12 @@
 "    изменений, которые вы хотите пересадить."
 
 msgid ""
-"    :hg:`transplant --branch REVISION --all` will transplant the\n"
+"    :hg:`transplant --branch REV --all` will transplant the\n"
 "    selected branch (up to the named revision) onto your current\n"
 "    working directory."
 msgstr ""
 "    :hg:`transplant --branch РЕВИЗИЯ --all` пересадит выбранную\n"
-"    ветке (вплоть до указанной ревизии) поверх текущего рабочего\n"
+"    ветку (вплоть до указанной ревизии) поверх текущего рабочего\n"
 "    каталога."
 
 msgid ""
@@ -8808,8 +9350,10 @@
 "в Mercurial.ini или %s.\n"
 
 #, python-format
-msgid "Attempt to commit or push text file(s) using %s line endings\n"
-msgstr "Попытка зафиксировать или протолкнуть файл(ы) с переводами строки %s\n"
+msgid "attempt to commit or push text file(s) using %s line endings\n"
+msgstr ""
+"попытка зафиксировать или протолкнуть текстовые файл(ы) с переводами\n"
+"строки формата %s\n"
 
 #, python-format
 msgid "in %s: %s\n"
@@ -8924,6 +9468,10 @@
 msgid "divergent bookmark %s stored as %s\n"
 msgstr "противоречивая закладка %s сохранена как %s\n"
 
+#, python-format
+msgid "adding remote bookmark %s\n"
+msgstr "добавление отдалённой закладки %s\n"
+
 msgid "searching for changed bookmarks\n"
 msgstr "поиск изменившихся закладок\n"
 
@@ -9140,13 +9688,30 @@
 
 # второй параметр - дата/время
 #, python-format
-msgid "Found revision %s from %s\n"
-msgstr "Найдена ревизия %s от %s\n"
+msgid "found revision %s from %s\n"
+msgstr "найдена ревизия %s от %s\n"
 
 msgid "revision matching date not found"
 msgstr "не найдена ревизия для данной даты"
 
 #, python-format
+msgid "cannot follow file not in parent revision: \"%s\""
+msgstr ""
+"невозможно отслеживать файл, которого нет в родительской ревизии: \"%s\""
+
+#, python-format
+msgid "cannot follow nonexistent file: \"%s\""
+msgstr "невозможно отслеживать несуществующий файл: \"%s\""
+
+msgid "can only follow copies/renames for explicit filenames"
+msgstr ""
+"чтобы отслеживать копирования/переименования, требуется явное имя файла"
+
+#, python-format
+msgid "-G/--graph option is incompatible with --%s"
+msgstr "опция -G/--graph несовместима с --%s "
+
+#, python-format
 msgid "adding %s\n"
 msgstr "добавляется %s\n"
 
@@ -9344,6 +9909,9 @@
 msgid "output diffstat-style summary of changes"
 msgstr "отображать сводку изменений в стиле diffstat"
 
+msgid "show the revision DAG"
+msgstr "показать граф ревизий"
+
 msgid "treat all files as text"
 msgstr "обрабатывать все файлы как текстовые"
 
@@ -9449,27 +10017,27 @@
 "    при следующей фиксации."
 
 msgid ""
-"    Use the -s/--similarity option to detect renamed files. With a\n"
-"    parameter greater than 0, this compares every removed file with\n"
-"    every added file and records those similar enough as renames. This\n"
+"    Use the -s/--similarity option to detect renamed files. This\n"
 "    option takes a percentage between 0 (disabled) and 100 (files must\n"
-"    be identical) as its parameter. Detecting renamed files this way\n"
+"    be identical) as its parameter. With a parameter greater than 0,\n"
+"    this compares every removed file with every added file and records\n"
+"    those similar enough as renames. Detecting renamed files this way\n"
 "    can be expensive. After using this option, :hg:`status -C` can be\n"
-"    used to check which files were identified as moved or renamed.\n"
-"    If this option is not specified, only renames of identical files\n"
-"    are detected."
+"    used to check which files were identified as moved or renamed. If\n"
+"    not specified, -s/--similarity defaults to 100 and only renames of\n"
+"    identical files are detected."
 msgstr ""
 "    Используйте параметр -s/--similarity, чтобы найти переименованные\n"
 "    файлы. Если этот параметр больше 0, то производится сравнение\n"
-"    каждого отдалённого файла с каждым добавленным, и если они достаточно\n"
+"    каждого удалённого файла с каждым добавленным, и если они достаточно\n"
 "    похожи, то это фиксируется как переименование. Этот параметр принимает\n"
 "    в качестве параметра \"процент похожести\" от 0 (отключено) до 100\n"
 "    (файлы должны быть одинаковыми). Этот способ нахождения\n"
-"    переименованных файлов может оказать дорогим. После использования\n"
+"    переименованных файлов может оказаться затратным. После использования\n"
 "    этого параметра можно использовать :hg:`status -C` чтобы проверить,\n"
 "    какие файлы были идентифицированы как перемещенные или\n"
 "    переименованные. Если этот параметр не задан, обнаруживаются только\n"
-"    переименования идентичных файлов."
+"    переименования идентичных файлов (--similarity = 100)."
 
 msgid "similarity must be a number"
 msgstr "параметр \"similarity\" должен быть числом"
@@ -9788,13 +10356,16 @@
 
 msgid ""
 "    If you supply a command, it will be used for automatic bisection.\n"
-"    Its exit status will be used to mark revisions as good or bad:\n"
-"    status 0 means good, 125 means to skip the revision, 127\n"
-"    (command not found) will abort the bisection, and any other\n"
-"    non-zero exit status means the revision is bad."
-msgstr ""
-"    Если вы укажите команду, она будет использована для автоматического\n"
-"    поиска. Ее код возврата будет использован чтобы пометить ревизию\n"
+"    The environment variable HG_NODE will contain the ID of the\n"
+"    changeset being tested. The exit status of the command will be\n"
+"    used to mark revisions as good or bad: status 0 means good, 125\n"
+"    means to skip the revision, 127 (command not found) will abort the\n"
+"    bisection, and any other non-zero exit status means the revision\n"
+"    is bad."
+msgstr ""
+"    Если вы укажите команду, она будет использована для автоматической\n"
+"    бисекции. Переменная окружения HG_NODE будет содержать ID тестируемой\n"
+"    ревизии. Код возврата команды будет использован чтобы пометить ревизию\n"
 "    как плохую или хорошую: код 0 - хорошая, код 125 означает пропустить\n"
 "    ревизию, 127 (команда не найдена) отменяет поиск, любой другой\n"
 "    код возврата означает плохую ревизию."
@@ -9877,6 +10448,17 @@
 msgid "          hg log -r \"bisect(pruned)\""
 msgstr "          hg log -r \"bisect(pruned)\""
 
+msgid ""
+"      - see the changeset currently being bisected (especially useful\n"
+"        if running with -U/--noupdate)::"
+msgstr ""
+"      - посмотреть ревизию, над которой в данный момент выполняется "
+"бисекция\n"
+"        (особенно полезно при запуске с -U/--noupdate)::"
+
+msgid "          hg log -r \"bisect(current)\""
+msgstr "          hg log -r \"bisect(current)\""
+
 msgid "      - see all changesets that took part in the current bisection::"
 msgstr ""
 "      - посмотреть все наборы изменений, которые участвовали в текущей "
@@ -9929,6 +10511,12 @@
 msgid "incompatible arguments"
 msgstr "несовместимые аргументы"
 
+msgid "current bisect revision is unknown - start a new bisect to fix"
+msgstr "текущая ревизия бисекции неизвестна - начните бисекцию заново"
+
+msgid "current bisect revision is a merge"
+msgstr "текущая ревизия бисекция является ревизией слияния"
+
 #, python-format
 msgid "failed to execute %s"
 msgstr "не удалось выполнить %s"
@@ -9938,8 +10526,8 @@
 msgstr "%s завершен (killed)"
 
 #, python-format
-msgid "Changeset %d:%s: %s\n"
-msgstr "Набор изменений %d:%s: %s\n"
+msgid "changeset %d:%s: %s\n"
+msgstr "ревизия %d:%s: %s\n"
 
 #, python-format
 msgid "Extending search to changeset %d:%s\n"
@@ -10943,15 +11531,15 @@
 msgstr "протестировать установка Mercurial"
 
 #, python-format
-msgid "Checking encoding (%s)...\n"
-msgstr "Проверка кодировки (%s)...\n"
+msgid "checking encoding (%s)...\n"
+msgstr "проверка кодировки (%s)...\n"
 
 msgid " (check that your locale is properly set)\n"
 msgstr " (проверьте правильность установки локали)\n"
 
 #, python-format
-msgid "Checking installed modules (%s)...\n"
-msgstr "Проверка установленных модулей (%s)...\n"
+msgid "checking installed modules (%s)...\n"
+msgstr "проверка установленных модулей (%s)...\n"
 
 msgid " One or more extensions could not be found"
 msgstr " Одно или более расширение не найдено"
@@ -10960,14 +11548,14 @@
 msgstr " (убедитесь, что вы скомпилировали расширение)\n"
 
 #, python-format
-msgid "Checking templates (%s)...\n"
-msgstr "Проверка шаблонов (%s)...\n"
+msgid "checking templates (%s)...\n"
+msgstr "проверка шаблонов (%s)...\n"
 
 msgid " (templates seem to have been installed incorrectly)\n"
 msgstr " (шаблоны, похоже, некорректно установлены)\n"
 
-msgid "Checking commit editor...\n"
-msgstr "Проверка редактора сообщений фиксации...\n"
+msgid "checking commit editor...\n"
+msgstr "проверка редактора сообщений фиксации...\n"
 
 msgid " No commit editor set and can't find vi in PATH\n"
 msgstr " Редактор сообщений не установлен и vi не доступен в PATH\n"
@@ -10979,14 +11567,14 @@
 msgid " Can't find editor '%s' in PATH\n"
 msgstr " Редактор '%s' не доступен в PATH\n"
 
-msgid "Checking username...\n"
-msgstr "Проверка имени пользователя...\n"
+msgid "checking username...\n"
+msgstr "проверка имени пользователя...\n"
 
 msgid " (specify a username in your configuration file)\n"
 msgstr " (задайте имя пользователя в конфиге)\n"
 
-msgid "No problems detected\n"
-msgstr "Проблем не обнаружено\n"
+msgid "no problems detected\n"
+msgstr "проблем не обнаружено\n"
 
 #, python-format
 msgid "%s problems detected, please check your install!\n"
@@ -10999,15 +11587,20 @@
 msgstr "проверить, известны ли идентификаторы узлов в хранилище"
 
 msgid ""
-"    Every ID must be a full-length hex node id string. Returns a list of 0s "
-"and 1s\n"
-"    indicating unknown/known.\n"
+"    Every ID must be a full-length hex node id string. Returns a list of 0s\n"
+"    and 1s indicating unknown/known.\n"
 "    "
 msgstr ""
 "    Каждый идентификатор должен быть полным 16-ричным идентификатором узла.\n"
 "    Возвращает список нулей и единиц, означающих неизвестен/известен.\n"
 "    "
 
+msgid "[OBSOLETED [REPLACEMENT] [REPL... ]"
+msgstr "[УСТАРЕВШЕЕ [ЗАМЕНА] [ЗАМЕНА... ]"
+
+msgid "create arbitrary obsolete marker"
+msgstr "создать произвольный маркер устаревшей ревизии"
+
 msgid "REPO NAMESPACE [KEY OLD NEW]"
 msgstr "ХРАНИЛИЩЕ ПРОСТРАНСТВО_ИМЕН [КЛЮЧ СТАРЫЙ НОВЫЙ]"
 
@@ -11227,8 +11820,8 @@
 msgid "revisions to export"
 msgstr "ревизии для экспортирования"
 
-msgid "[OPTION]... [-o OUTFILESPEC] REV..."
-msgstr "[ПАРАМЕТР]... [-o OUTFILESPEC] РЕВИЗИЯ..."
+msgid "[OPTION]... [-o OUTFILESPEC] [-r] REV..."
+msgstr "[ПАРАМЕТР]... [-o ВЫХФОРМАТ] [-r] РЕВИЗИЯ..."
 
 msgid "dump the header and diffs for one or more changesets"
 msgstr "вывести заголовок и различия для одной или нескольких ревизий"
@@ -11384,17 +11977,23 @@
 msgid "          hg forget \"set:hgignore()\""
 msgstr "          hg forget \"set:hgignore()\""
 
+msgid "revisions to graft"
+msgstr "ревизии для переноса"
+
 msgid "resume interrupted graft"
 msgstr "возобновить прерванную операцию graft"
 
+msgid "append graft info to log message"
+msgstr "добавить информацию о переносе в журнальное сообщение"
+
 msgid "record the current date as commit date"
 msgstr "использовать текущую дату в качестве даты фиксации"
 
 msgid "record the current user as committer"
 msgstr "использовать текущего пользователя как автора фиксации"
 
-msgid "[OPTION]... REVISION..."
-msgstr "[ПАРАМЕТР]... РЕВИЗИЯ..."
+msgid "[OPTION]... [-r] REV..."
+msgstr "[ПАРАМЕТР]... [-r] РЕВИЗИЯ..."
 
 msgid "copy changes from other branches onto the current branch"
 msgstr "копировать изменения с другой ветки в текущую"
@@ -11420,6 +12019,9 @@
 "    уже была применена операция graft, а также ревизии слияния будут\n"
 "    пропущены."
 
+msgid "      (grafted from CHANGESETHASH)"
+msgstr "      (перенесено из ХЭШРЕВИЗИИ)"
+
 msgid ""
 "    If a graft merge results in conflicts, the graft process is\n"
 "    interrupted so that the current merge can be manually resolved.\n"
@@ -11514,6 +12116,10 @@
 msgid "use hg resolve and hg graft --continue"
 msgstr "используйте hg resolve и hg graft --continue"
 
+#, python-format
+msgid "graft for revision %s is empty\n"
+msgstr "нечего переносить для ревизии %s\n"
+
 msgid "end fields with NUL"
 msgstr "заканчивать поля символом NUL"
 
@@ -11665,6 +12271,9 @@
 msgid "show only help for commands"
 msgstr "показать только справку по командам"
 
+msgid "show topics matching keyword"
+msgstr "показать темы, соответствующие ключевому слову"
+
 msgid "[-ec] [TOPIC]"
 msgstr "[-ec] [ТЕМА]"
 
@@ -11689,44 +12298,6 @@
 "    Возвращает 0 при успешном выполнении.\n"
 "    "
 
-msgid "VALUE"
-msgstr "ЗНАЧЕНИЕ"
-
-msgid "DEPRECATED"
-msgstr "УСТАРЕЛО"
-
-msgid ""
-"\n"
-"[+] marked option can be specified multiple times\n"
-msgstr ""
-"\n"
-"параметры, помеченные [+], могут указываться многократно\n"
-
-msgid "global options:"
-msgstr "глобальные параметры:"
-
-msgid "use \"hg help\" for the full list of commands"
-msgstr "используйте \"hg help\" чтобы посмотреть полный список команд"
-
-msgid "use \"hg help\" for the full list of commands or \"hg -v\" for details"
-msgstr ""
-"используйте \"hg help\" чтобы посмотреть полный список команд,\"hg -v\" для "
-"подробной информации"
-
-#, python-format
-msgid "use \"hg help %s\" to show the full help text"
-msgstr "используйте \"hg help %s\" чтобы получить полную справку"
-
-#, python-format
-msgid "use \"hg -v help%s\" to show builtin aliases and global options"
-msgstr ""
-"используйте \"hg -v help%s\" чтобы посмотреть встроенные псевдонимы и "
-"глобальные параметры"
-
-#, python-format
-msgid "use \"hg -v help %s\" to show more info"
-msgstr "используйте \"hg -v help %s\" для дополнительной информации"
-
 #, python-format
 msgid ""
 "\n"
@@ -11761,6 +12332,9 @@
 msgid "options:"
 msgstr "параметры:"
 
+msgid "global options:"
+msgstr "глобальные параметры:"
+
 #, python-format
 msgid ""
 "\n"
@@ -11796,6 +12370,24 @@
 "\n"
 "дополнительные разделы справки:"
 
+msgid "use \"hg help\" for the full list of commands"
+msgstr "используйте \"hg help\" чтобы посмотреть полный список команд"
+
+msgid "use \"hg help\" for the full list of commands or \"hg -v\" for details"
+msgstr ""
+"используйте \"hg help\" чтобы посмотреть полный список команд,\"hg -v\" для "
+"подробной информации"
+
+#, python-format
+msgid "use \"hg help %s\" to show the full help text"
+msgstr "используйте \"hg help %s\" чтобы получить полную справку"
+
+#, python-format
+msgid "use \"hg -v help%s\" to show builtin aliases and global options"
+msgstr ""
+"используйте \"hg -v help%s\" чтобы посмотреть встроенные псевдонимы и "
+"глобальные параметры"
+
 #, python-format
 msgid ""
 "\n"
@@ -11818,6 +12410,12 @@
 msgid "'%s' is provided by the following extension:"
 msgstr "'%s' предоставляется следующим расширением:"
 
+msgid "Topics"
+msgstr "Темы"
+
+msgid "Extension Commands"
+msgstr "Команды Расширения"
+
 msgid "Mercurial Distributed SCM\n"
 msgstr "Распределенная система контроля версий Mercurial\n"
 
@@ -12454,6 +13052,20 @@
 "    При успехе возвращает 0, 1 если есть неразрешенные конфликты.\n"
 "    "
 
+msgid ""
+"multiple matching bookmarks to merge - please merge with an explicit rev or "
+"bookmark"
+msgstr ""
+"несколько подходящих закладок - явно укажите ревизию или закладку для слияния"
+
+msgid "run 'hg heads' to see all heads"
+msgstr "используйте 'hg heads' чтобы посмотреть все головы"
+
+msgid ""
+"no matching bookmark to merge - please merge with an explicit rev or bookmark"
+msgstr ""
+"нет подходящих закладок - явно укажите ревизию или закладку для слияния"
+
 #, python-format
 msgid "branch '%s' has %d heads - please merge with an explicit rev"
 msgstr "ветка '%s' имеет %d голов(ы) - явно укажите ревизию для слияния"
@@ -12461,13 +13073,13 @@
 msgid "run 'hg heads .' to see heads"
 msgstr "используйте 'hg heads .' чтобы посмотреть головы"
 
+msgid "heads are bookmarked - please merge with an explicit rev"
+msgstr "головы помечены закладками - явно укажите ревизию для слияния"
+
 #, python-format
 msgid "branch '%s' has one head - please merge with an explicit rev"
 msgstr "ветка '%s' имеет одну голову - явно укажите ревизию для слияния"
 
-msgid "run 'hg heads' to see all heads"
-msgstr "используйте 'hg heads' чтобы посмотреть все головы"
-
 msgid "nothing to merge"
 msgstr "нечего сливать"
 
@@ -12747,13 +13359,6 @@
 msgid "remote bookmark %s not found!"
 msgstr "закладка %s не найдена в отдалённом хранилище"
 
-msgid ""
-"other repository doesn't support revision lookup, so a rev cannot be "
-"specified."
-msgstr ""
-"Отдалённое хранилище не поддерживает поиск ревизий, поэтому ревизия не может "
-"быть задана."
-
 #, python-format
 msgid "importing bookmark %s\n"
 msgstr "импортируется закладка %s\n"
@@ -12824,6 +13429,14 @@
 "    будут переданы в отдалённое хранилище."
 
 msgid ""
+"    If -B/--bookmark is used, the specified bookmarked revision, its\n"
+"    ancestors, and the bookmark will be pushed to the remote\n"
+"    repository."
+msgstr ""
+"    Если указан -B/--bookmark, то ревизия, помеченная заданной закладкой,\n"
+"    ее предки и сама закладка будут протолкнуты в отдалённое хранилище."
+
+msgid ""
 "    Please see :hg:`help urls` for important details about ``ssh://``\n"
 "    URLs. If DESTINATION is omitted, a default path will be used."
 msgstr ""
@@ -13132,14 +13745,17 @@
 msgid "restore files to their checkout state"
 msgstr "восстановить файлы до их состояния в хранилище"
 
-msgid ""
-"    .. note::\n"
+# does this require a translation?
+msgid "    .. note::"
+msgstr "    .. примечание::"
+
+msgid ""
 "       To check out earlier revisions, you should use :hg:`update REV`.\n"
-"       To cancel a merge (and lose your changes), use :hg:`update --clean .`."
-msgstr ""
-"    .. note::\n"
+"       To cancel an uncommitted merge (and lose your changes), use\n"
+"       :hg:`update --clean .`."
+msgstr ""
 "       Чтобы извлечь более ранние ревизии, необходимо использовать\n"
-"       :hg:`update РЕВИЗИЯ`. Чтобы отменить слияние (с потерей сделанных)\n"
+"       :hg:`update РЕВИЗИЯ`. Чтобы отменить слияние (с потерей сделанных\n"
 "       изменений), используйте :hg:`update --clean .`."
 
 msgid ""
@@ -13242,35 +13858,40 @@
 msgid ""
 "    Transactions are used to encapsulate the effects of all commands\n"
 "    that create new changesets or propagate existing changesets into a\n"
-"    repository. For example, the following commands are transactional,\n"
-"    and their effects can be rolled back:"
-msgstr ""
-"    Транзакции используются для инкапсуляции эффектов всех команд,\n"
+"    repository."
+msgstr ""
+"    Для инкапсуляции эффектов всех команд,\n"
 "    которые создают новые наборы изменений или передают уже\n"
-"    существующие в хранилище. Действие таких команд можно откатить.\n"
-"    Транзакционными являются, например, следующие команды:"
-
-msgid ""
-"    - commit\n"
-"    - import\n"
-"    - pull\n"
-"    - push (with this repository as the destination)\n"
-"    - unbundle"
-msgstr ""
-"    - commit\n"
-"    - import\n"
-"    - pull\n"
-"    - push (с текущим хранилищем в качестве назначения)\n"
-"    - unbundle"
-
-msgid ""
-"    To avoid permanent data loss, rollback will refuse to rollback a\n"
-"    commit transaction if it isn't checked out. Use --force to\n"
-"    override this protection."
-msgstr ""
-"    Чтобы предотвратить безвозвратную потерю данных, rollback откажется\n"
-"    выполнять откат транзакции фиксации, если она не извлечена. Вы можете\n"
-"    использовать --force, чтобы откатить принудительно."
+"    существующие наборы изменений в хранилище, используются транзакции."
+
+msgid ""
+"      For example, the following commands are transactional, and their\n"
+"      effects can be rolled back:"
+msgstr ""
+"      Так, следующие команды являются транзакционными и их эффекты\n"
+"      можно откатить:"
+
+msgid ""
+"      - commit\n"
+"      - import\n"
+"      - pull\n"
+"      - push (with this repository as the destination)\n"
+"      - unbundle"
+msgstr ""
+"      - commit\n"
+"      - import\n"
+"      - pull\n"
+"      - push (с текущим хранилищем в качестве назначения)\n"
+"      - unbundle"
+
+msgid ""
+"      To avoid permanent data loss, rollback will refuse to rollback a\n"
+"      commit transaction if it isn't checked out. Use --force to\n"
+"      override this protection."
+msgstr ""
+"      Чтобы предотвратить безвозвратную потерю данных, rollback откажется\n"
+"      выполнять откат транзакции фиксации, если она не извлечена. Вы можете\n"
+"      использовать --force, чтобы откатить принудительно."
 
 msgid ""
 "    This command is not intended for use on public repositories. Once\n"
@@ -13396,9 +14017,6 @@
 msgid "cannot use --stdio with --cmdserver"
 msgstr "нельзя использовать --stdio с --cmdserver"
 
-msgid "There is no Mercurial repository here (.hg not found)"
-msgstr "Здесь нет хранилища Mercurial (.hg не обнаружен)"
-
 #, python-format
 msgid "listening at http://%s%s/%s (bound to %s:%d)\n"
 msgstr "слушаю по адресу http://%s%s/%s (привязан к %s:%d)\n"
@@ -13809,6 +14427,9 @@
 msgid "not at a branch head (use -f to force)"
 msgstr "не на голове ветки (-f - установить принудительно)"
 
+msgid "null revision specified"
+msgstr "задана пустая ревизия"
+
 msgid "list repository tags"
 msgstr "перечислить метки в хранилище"
 
@@ -13894,6 +14515,13 @@
 "    bookmarks`)."
 
 msgid ""
+"    Update sets the working directory's parent revison to the specified\n"
+"    changeset (see :hg:`help parents`)."
+msgstr ""
+"    Update устанавливает ревизию родителя рабочего каталога в заданный\n"
+"    набор изменений (см. :hg:`help update`)."
+
+msgid ""
 "    If the changeset is not a descendant or ancestor of the working\n"
 "    directory's parent, the update is aborted. With the -c/--check\n"
 "    option, the working directory is checked for uncommitted changes; if\n"
@@ -13907,50 +14535,50 @@
 "    если таковых нет, рабочий каталог обновляется до указанной ревизии."
 
 msgid ""
-"    Update sets the working directory's parent revison to the specified\n"
-"    changeset (see :hg:`help parents`)."
-msgstr ""
-"    Update устанавливает ревизию родителя рабочего каталога в заданный\n"
-"    набор изменений (см. :hg:`help update`)."
-
-msgid ""
-"    The following rules apply when the working directory contains\n"
-"    uncommitted changes:"
-msgstr ""
-"    Если рабочий каталог содержит незафиксированные изменения,\n"
-"    применяются следующие правила:"
-
-msgid ""
-"    1. If neither -c/--check nor -C/--clean is specified, and if\n"
-"       the requested changeset is an ancestor or descendant of\n"
-"       the working directory's parent, the uncommitted changes\n"
-"       are merged into the requested changeset and the merged\n"
-"       result is left uncommitted. If the requested changeset is\n"
-"       not an ancestor or descendant (that is, it is on another\n"
-"       branch), the update is aborted and the uncommitted changes\n"
-"       are preserved."
-msgstr ""
-"    1. Если не указаны ни -c/--check, ни -C/--clean и если заданная\n"
-"       ревизия является предком или потомком родителя рабочего\n"
-"       каталога, незафиксированные изменения сливаются в заданную\n"
-"       ревизию и результат слияния остается незафиксированным. Если\n"
-"       заданная ревизия не предок и не потомок (т.е. на другой ветке)\n"
-"       update завершается с ошибкой, незафиксированные изменения\n"
-"       сохраняются."
-
-msgid ""
-"    2. With the -c/--check option, the update is aborted and the\n"
-"       uncommitted changes are preserved."
-msgstr ""
-"    2. С опцией -c/--check update завершается с ошибкой и\n"
-"       незафиксированные изменения сохраняются."
-
-msgid ""
-"    3. With the -C/--clean option, uncommitted changes are discarded and\n"
-"       the working directory is updated to the requested changeset."
-msgstr ""
-"    3. С опцией -C/--clean незафиксированные изменения отбрасываются\n"
-"       и рабочий каталог обновляется до указанной ревизии."
+"      The following rules apply when the working directory contains\n"
+"      uncommitted changes:"
+msgstr ""
+"      Если рабочий каталог содержит незафиксированные изменения,\n"
+"      применяются следующие правила:"
+
+msgid ""
+"      1. If neither -c/--check nor -C/--clean is specified, and if\n"
+"         the requested changeset is an ancestor or descendant of\n"
+"         the working directory's parent, the uncommitted changes\n"
+"         are merged into the requested changeset and the merged\n"
+"         result is left uncommitted. If the requested changeset is\n"
+"         not an ancestor or descendant (that is, it is on another\n"
+"         branch), the update is aborted and the uncommitted changes\n"
+"         are preserved."
+msgstr ""
+"      1. Если не указаны ни -c/--check, ни -C/--clean и если заданная\n"
+"         ревизия является предком или потомком родителя рабочего\n"
+"         каталога, незафиксированные изменения сливаются в заданную\n"
+"         ревизию и результат слияния остается незафиксированным. Если\n"
+"         заданная ревизия не предок и не потомок (т.е. на другой ветке)\n"
+"         update завершается с ошибкой, незафиксированные изменения\n"
+"         сохраняются."
+
+msgid ""
+"      2. With the -c/--check option, the update is aborted and the\n"
+"         uncommitted changes are preserved."
+msgstr ""
+"      2. С опцией -c/--check update завершается с ошибкой и\n"
+"         незафиксированные изменения сохраняются."
+
+msgid ""
+"      3. With the -C/--clean option, uncommitted changes are discarded and\n"
+"         the working directory is updated to the requested changeset."
+msgstr ""
+"      3. С опцией -C/--clean незафиксированные изменения отбрасываются\n"
+"         и рабочий каталог обновляется до указанной ревизии."
+
+msgid ""
+"    To cancel an uncommitted merge (and lose your changes), use\n"
+"    :hg:`update --clean .`."
+msgstr ""
+"    Чтобы отменить незафиксированное слияние (с потерей сделанных\n"
+"    изменений), используйте :hg:`update --clean .`."
 
 msgid ""
 "    Use null as the changeset to remove the working directory (like\n"
@@ -14265,11 +14893,28 @@
 msgid "abort: out of memory\n"
 msgstr "прервано: недостаточно памяти\n"
 
+msgid "the extension author."
+msgstr "автор расширения."
+
+#, python-format
+msgid ""
+"** Unknown exception encountered with possibly-broken third-party extension "
+"%s\n"
+"** which supports versions %s of Mercurial.\n"
+"** Please disable %s and try your action again.\n"
+"** If that fixes the bug please report it to %s\n"
+msgstr ""
+"** Неизвестное исключение в возможно неисправном стороннем дополнении \n"
+"%s\n"
+"** которое поддерживает версии Mercurial %s.\n"
+"** Отключите %s и попробуйте еще раз.\n"
+"** Если это помогло, пожалуйста сообщите об этом %s\n"
+
 msgid "** unknown exception encountered, please report by visiting\n"
 msgstr "** неизвестное исключение, пожалуйте, сообщите об этом по адресу\n"
 
-msgid "**  http://mercurial.selenic.com/wiki/BugTracker\n"
-msgstr "**  http://mercurial.selenic.com/wiki/BugTracker\n"
+msgid "** http://mercurial.selenic.com/wiki/BugTracker\n"
+msgstr "** http://mercurial.selenic.com/wiki/BugTracker\n"
 
 #, python-format
 msgid "** Python %s\n"
@@ -14333,8 +14978,8 @@
 "--repository можно сократить только до --repo!"
 
 #, python-format
-msgid "Time: real %.3f secs (user %.3f+%.3f sys %.3f+%.3f)\n"
-msgstr "Время: полное (real) %.3f c (польз %.3f+%.3f сист %.3f+%.3f)\n"
+msgid "time: real %.3f secs (user %.3f+%.3f sys %.3f+%.3f)\n"
+msgstr "время: полное (real) %.3f c (польз %.3f+%.3f сист %.3f+%.3f)\n"
 
 #, python-format
 msgid "repository '%s' is not local"
@@ -14780,6 +15425,19 @@
 msgid "disabled extensions:"
 msgstr "отключенные расширения:"
 
+msgid "VALUE"
+msgstr "ЗНАЧЕНИЕ"
+
+msgid "DEPRECATED"
+msgstr "УСТАРЕЛО"
+
+msgid ""
+"\n"
+"[+] marked option can be specified multiple times\n"
+msgstr ""
+"\n"
+"параметры, помеченные [+], могут указываться многократно\n"
+
 msgid "Configuration Files"
 msgstr "Файлы конфигурации"
 
@@ -14868,10 +15526,10 @@
 
 msgid ""
 "Files\n"
-"-----"
+"====="
 msgstr ""
 "Файлы\n"
-"-----"
+"====="
 
 msgid ""
 "Mercurial reads configuration data from several files, if they exist.\n"
@@ -15027,10 +15685,10 @@
 
 msgid ""
 "Syntax\n"
-"------"
+"======"
 msgstr ""
 "Синтаксис\n"
-"---------"
+"========="
 
 msgid ""
 "A configuration file consists of sections, led by a ``[section]`` header\n"
@@ -15210,10 +15868,10 @@
 
 msgid ""
 "Sections\n"
-"--------"
+"========"
 msgstr ""
 "Секции\n"
-"------"
+"======"
 
 msgid ""
 "This section describes the different sections that may appear in a\n"
@@ -15226,10 +15884,10 @@
 
 msgid ""
 "``alias``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``alias``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Defines command aliases.\n"
@@ -15349,11 +16007,11 @@
 msgid ""
 "\n"
 "``annotate``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 msgstr ""
 "\n"
 "``annotate``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 
 msgid ""
 "Settings used when displaying file annotations. All values are\n"
@@ -15389,11 +16047,11 @@
 msgid ""
 "\n"
 "``auth``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "\n"
 "``auth``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid ""
 "Authentication credentials for HTTP authentication. This section\n"
@@ -15532,11 +16190,11 @@
 msgid ""
 "\n"
 "``decode/encode``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-----------------"
 msgstr ""
 "\n"
 "``decode/encode``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-----------------"
 
 msgid ""
 "Filters for transforming files on checkout/checkin. This would\n"
@@ -15636,11 +16294,11 @@
 msgid ""
 "\n"
 "``defaults``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 msgstr ""
 "\n"
 "``defaults``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 
 msgid "(defaults are deprecated. Don't use them. Use aliases instead)"
 msgstr "(устарело. Не используйте эту секцию. Используйте псевдонимы.)"
@@ -15681,11 +16339,11 @@
 msgid ""
 "\n"
 "``diff``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "\n"
 "``diff``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid ""
 "Settings used when displaying diffs. Everything except for ``unified``\n"
@@ -15727,10 +16385,10 @@
 
 msgid ""
 "``email``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``email``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid "Settings for extensions that send email messages."
 msgstr "Настройки для расширений, отправляющих сообщения по email"
@@ -15841,11 +16499,11 @@
 msgid ""
 "\n"
 "``extensions``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 msgstr ""
 "\n"
 "``extensions``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 
 msgid ""
 "Mercurial has an extension mechanism for adding new features. To\n"
@@ -15901,11 +16559,11 @@
 msgid ""
 "\n"
 "``format``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "\n"
 "``format``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid ""
 "``usestore``\n"
@@ -15963,10 +16621,10 @@
 
 msgid ""
 "``graph``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``graph``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Web graph view configuration. This section let you change graph\n"
@@ -16014,10 +16672,10 @@
 
 msgid ""
 "``hooks``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``hooks``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 # NOT-SURE site-wide - ?
 msgid ""
@@ -16406,11 +17064,11 @@
 msgid ""
 "\n"
 "``hostfingerprints``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------------"
 msgstr ""
 "\n"
 "``hostfingerprints``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------------"
 
 msgid ""
 "Fingerprints of the certificates of known HTTPS servers.\n"
@@ -16445,11 +17103,11 @@
 msgid ""
 "\n"
 "``http_proxy``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 msgstr ""
 "\n"
 "``http_proxy``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 
 msgid ""
 "Used to access web-based Mercurial repositories through a HTTP\n"
@@ -16501,10 +17159,10 @@
 
 msgid ""
 "``merge-patterns``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------------"
 msgstr ""
 "``merge-patterns``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------------"
 
 msgid ""
 "This section specifies merge tools to associate with particular file\n"
@@ -16528,10 +17186,10 @@
 
 msgid ""
 "``merge-tools``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 msgstr ""
 "``merge-tools``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 
 msgid ""
 "This section configures external merge tools to use for file-level\n"
@@ -16747,11 +17405,11 @@
 msgid ""
 "\n"
 "``patch``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "\n"
 "``patch``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Settings used when applying patches, for instance through the 'import'\n"
@@ -16787,11 +17445,11 @@
 msgid ""
 "\n"
 "``paths``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "\n"
 "``paths``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Assigns symbolic names to repositories. The left side is the\n"
@@ -16825,10 +17483,10 @@
 
 msgid ""
 "``phases``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "``phases``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid ""
 "Specifies default handling of phases. See :hg:`help phases` for more\n"
@@ -16862,10 +17520,10 @@
 
 msgid ""
 "``profiling``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-------------"
 msgstr ""
 "``profiling``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-------------"
 
 msgid ""
 "Specifies profiling type, format, and file output. Two profilers are\n"
@@ -16968,10 +17626,10 @@
 
 msgid ""
 "``revsetalias``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 msgstr ""
 "``revsetalias``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 
 msgid "Alias definitions for revsets. See :hg:`help revsets` for details."
 msgstr ""
@@ -16980,10 +17638,10 @@
 
 msgid ""
 "``server``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "``server``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid "Controls generic server settings."
 msgstr "Общие настройки сервера."
@@ -17036,10 +17694,10 @@
 
 msgid ""
 "``smtp``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "``smtp``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid "Configuration for extensions that need to send email messages."
 msgstr "Настройки для расширений, которые рассылают email-сообщения."
@@ -17099,11 +17757,11 @@
 msgid ""
 "\n"
 "``subpaths``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 msgstr ""
 "\n"
 "``subpaths``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 
 msgid ""
 "Subrepository source URLs can go stale if a remote server changes name\n"
@@ -17135,7 +17793,7 @@
 msgstr "заменит ``http://server/foo-hg/`` на ``http://hg.server/foo/``."
 
 msgid ""
-"Relative subrepository paths are first made absolute, and the the\n"
+"Relative subrepository paths are first made absolute, and the\n"
 "rewrite rules are then applied on the full (absolute) path. The rules\n"
 "are applied in definition order."
 msgstr ""
@@ -17145,10 +17803,10 @@
 
 msgid ""
 "``trusted``\n"
-"\"\"\"\"\"\"\"\"\"\"\""
+"-----------"
 msgstr ""
 "``trusted``\n"
-"\"\"\"\"\"\"\"\"\"\"\""
+"-----------"
 
 msgid ""
 "Mercurial will not use the settings in the\n"
@@ -17197,11 +17855,11 @@
 msgid ""
 "\n"
 "``ui``\n"
-"\"\"\"\"\"\""
+"------"
 msgstr ""
 "\n"
 "``ui``\n"
-"\"\"\"\"\"\""
+"------"
 
 msgid "User interface controls."
 msgstr "Настройки интерфейса пользователя."
@@ -17471,11 +18129,11 @@
 msgid ""
 "\n"
 "``web``\n"
-"\"\"\"\"\"\"\""
+"-------"
 msgstr ""
 "\n"
 "``web``\n"
-"\"\"\"\"\"\"\""
+"-------"
 
 msgid ""
 "Web interface configuration. The settings in this section apply to\n"
@@ -17834,12 +18492,29 @@
 "    Куда писать журнал ошибок. По умолчанию stderr."
 
 msgid ""
+"``comparisoncontext``\n"
+"    Number of lines of context to show in side-by-side file comparison. If\n"
+"    negative or the value ``full``, whole files are shown. Default is 5.\n"
+"    This setting can be overridden by a ``context`` request parameter to "
+"the\n"
+"    ``comparison`` command, taking the same values."
+msgstr ""
+"``comparisoncontext``\n"
+"    Количество строк контекста, показываемого при построчном сравнении "
+"файлов.\n"
+"    Если отрицательно или ``full``, файлы показыаются целиком. По умолчанию "
+"5.\n"
+"    Это значение может быть переопределено параметром запроса ``context`` "
+"команды\n"
+"    ``comparison``, принимающей такие же значения."
+
+msgid ""
 "``hidden``\n"
 "    Whether to hide the repository in the hgwebdir index.\n"
 "    Default is False."
 msgstr ""
 "``hidden``\n"
-"    Прятать хранилище из списка hgwebdir.\n"
+"    Скрывать ли хранилище в списке hgwebdir.\n"
 "    По умолчанию False (не прятать)."
 
 msgid ""
@@ -19407,10 +20082,10 @@
 
 msgid ""
 "Synopsis\n"
-"--------"
-msgstr ""
-"Сводка\n"
-"------"
+"========"
+msgstr ""
+"Обзор\n"
+"====="
 
 msgid ""
 "The Mercurial system uses a file called ``.hgignore`` in the root\n"
@@ -19423,10 +20098,10 @@
 
 msgid ""
 "Description\n"
-"-----------"
+"==========="
 msgstr ""
 "Описание\n"
-"--------"
+"========"
 
 msgid ""
 "The working directory of a Mercurial repository will often contain\n"
@@ -19484,6 +20159,17 @@
 "Подробнее см. :hg:`help <команда>` и :hg:`help patterns`."
 
 msgid ""
+"Files that are already tracked are not affected by .hgignore, even\n"
+"if they appear in .hgignore. An untracked file X can be explicitly\n"
+"added with :hg:`add X`, even if X would be excluded by a pattern\n"
+"in .hgignore."
+msgstr ""
+"Содержимое .hgignore не влияет на файлы, уже отслеживаемые Mercurial,\n"
+"даже если они перечислены в .hgignore. Неотслеживаемый файл X может быть\n"
+"явно добавлен с помощью :hg:`add X`, даже если X был бы исключен шаблоном\n"
+"из .hgignore."
+
+msgid ""
 "An ignore file is a plain text file consisting of a list of patterns,\n"
 "with one pattern per line. Empty lines are skipped. The ``#``\n"
 "character is treated as a comment character, and the ``\\`` character\n"
@@ -19551,10 +20237,10 @@
 
 msgid ""
 "Example\n"
-"-------"
+"======="
 msgstr ""
 "Пример\n"
-"------"
+"======"
 
 msgid "Here is an example ignore file. ::"
 msgstr "Пример файла игнорирования. ::"
@@ -19586,18 +20272,19 @@
 
 msgid ""
 "Mercurial's internal web server, hgweb, can serve either a single\n"
-"repository, or a collection of them. In the latter case, a special\n"
-"configuration file can be used to specify the repository paths to use\n"
-"and global web configuration options."
+"repository, or a tree of repositories. In the second case, repository\n"
+"paths and global options can be defined using a dedicated\n"
+"configuration file common to :hg:`serve`, ``hgweb.wsgi``,\n"
+"``hgweb.cgi`` and ``hgweb.fcgi``."
 msgstr ""
 "Встроенный веб-сервер Mercurial, hgweb, может обслуживать как одно\n"
-"хранилище, так и несколько. В последнем случае может быть использован\n"
-"отдельный файл конфигурации чтобы задать пути к хранилищам вместе\n"
-"с глобальными настройками веб-сервера."
-
-msgid ""
-"This file uses the same syntax as other Mercurial configuration files,\n"
-"but only the following sections are recognized:"
+"хранилище, так и несколько. В последнем случае пути хранилищ и\n"
+"глобальные параметры могут быть опеределены в отдельном файле, общем\n"
+"для :hg:`serve`, ``hgweb.wsgi``, ``hgweb.cgi`` and ``hgweb.fcgi``."
+
+msgid ""
+"This file uses the same syntax as other Mercurial configuration files\n"
+"but recognizes only the following sections:"
 msgstr ""
 "Этот файл имеет тот же формат, что и другие файлы конфигурации\n"
 "Mercurial, но обрабатываются только следующие секции:"
@@ -19611,87 +20298,81 @@
 "  - paths\n"
 "  - collections"
 
-msgid ""
-"The ``web`` section can specify all the settings described in the web\n"
-"section of the hgrc(5) documentation. See :hg:`help config` for\n"
-"information on where to find the manual page."
-msgstr ""
-"Секция ``web`` для задания всех параметров, описанных в справке по\n"
-"одноименной секции из :hg:`help config`."
-
-msgid ""
-"The ``paths`` section provides mappings of physical repository\n"
-"paths to virtual ones. For instance::"
-msgstr ""
-"Секция ``paths`` задает соответствие физических путей к хранилищам\n"
-"и виртуальных. Например::"
+msgid "The ``web`` options are thorougly described in :hg:`help config`."
+msgstr "Настройки секции ``web`` подробно описаны в :hg:`help config`."
+
+msgid ""
+"The ``paths`` section maps URL paths to paths of repositories in the\n"
+"filesystem. hgweb will not expose the filesystem directly - only\n"
+"Mercurial repositories can be published and only according to the\n"
+"configuration."
+msgstr ""
+"Секция ``paths`` связывает пути в URL с путями хранилищ в файловой\n"
+"системе. hgweb не выставляет наружу файловую систему напрямую - \n"
+"публикуются только хранилища Mercurial и только в соответствии с конфигом."
+
+msgid ""
+"The left hand side is the path in the URL. Note that hgweb reserves\n"
+"subpaths like ``rev`` or ``file``, try using different names for\n"
+"nested repositories to avoid confusing effects."
+msgstr ""
+"В левой части находится путь в URL. Обратите внимание, что hgweb\n"
+"резервирует такие пути, как ``rev`` или ``file``, используйте\n"
+"другие имена для вложенных подхранилищ, чтобы избежать неожиданных\n"
+"эффектов."
+
+msgid ""
+"The right hand side is the path in the filesystem. If the specified\n"
+"path ends with ``*`` or ``**`` the filesystem will be searched\n"
+"recursively for repositories below that point.\n"
+"With ``*`` it will not recurse into the repositories it finds (except for\n"
+"``.hg/patches``).\n"
+"With ``**`` it will also search inside repository working directories\n"
+"and possibly find subrepositories."
+msgstr ""
+"В правой части находится путь в файловой системе. Если указанный путь\n"
+"заканчивается на ``*`` или ``**``, хранилища будут искаться рекурсивно\n"
+"в этом каталоге. При ``*`` поиск в подкаталогах хранилищ не ведется\n"
+"(за исключением ``.hg/patches``). При ``**`` поиск производится также\n"
+"внутри рабочих каталогов хранилищ."
+
+msgid "In this example::"
+msgstr "В этом примере::"
 
 msgid ""
 "  [paths]\n"
-"  projects/a = /foo/bar\n"
-"  projects/b = /baz/quux\n"
-"  web/root = /real/root/*\n"
-"  / = /real/root2/*\n"
-"  virtual/root2 = /real/root2/**"
+"  /projects/a = /srv/tmprepos/a\n"
+"  /projects/b = c:/repos/b\n"
+"  / = /srv/repos/*\n"
+"  /user/bob = /home/bob/repos/**"
 msgstr ""
 "  [paths]\n"
-"  projects/a = /foo/bar\n"
-"  projects/b = /baz/quux\n"
-"  web/root = /real/root/*\n"
-"  / = /real/root2/*\n"
-"  virtual/root2 = /real/root2/**"
+"  /projects/a = /srv/tmprepos/a\n"
+"  /projects/b = c:/repos/b\n"
+"  / = /srv/repos/*\n"
+"  /user/bob = /home/bob/repos/**"
 
 msgid ""
 "- The first two entries make two repositories in different directories\n"
 "  appear under the same directory in the web interface\n"
-"- The third entry maps every Mercurial repository found in '/real/root'\n"
-"  into 'web/root'. This format is preferred over the [collections] one,\n"
-"  since using absolute paths as configuration keys is not supported on "
-"every\n"
-"  platform (especially on Windows).\n"
-"- The fourth entry is a special case mapping all repositories in\n"
-"  '/real/root2' in the root of the virtual directory.\n"
-"- The fifth entry recursively finds all repositories under the real\n"
-"  root, and maps their relative paths under the virtual root."
-msgstr ""
-"- Первые две строки показывают два хранилища, физически находящиеся по\n"
-"  разным путям, в одном каталоге в веб-интерфейсе\n"
-"- Третья строка показывает все хранилища Mercurial, находящиеся в\n"
-"  '/real/root', в каталоге 'web/root' веб-интерфейса. Такая форма\n"
-"  является предпочтительной по сравнению с секцией [collections],\n"
-"  т.к. использование абсолютных путей в качестве ключей поддерживается\n"
-"  не на всех платформах (в частности, не работает в Windows)\n"
-"- Четвертая строка иллюстрирует особый случай, при котором все\n"
-"  хранилища из каталога '/real/root2' отображаются в корневом\n"
-"  виртуальном каталоге.\n"
-"- Пятая строка рекурсивно ищет все хранилища в подкаталогах\n"
-"  /real/root2 и показывает из относительные пути в виртуальном\n"
-"  каталоге."
-
-msgid ""
-"The ``collections`` section provides mappings of trees of physical\n"
-"repositories paths to virtual ones, though the paths syntax is generally\n"
-"preferred. For instance::"
-msgstr ""
-"Секция ``collections`` задает соответствие деревьев физических путей\n"
-"хранилищ виртуальным. Однако, предпочтительно использовать секцию\n"
-"paths. Пример::"
-
-msgid ""
-"  [collections]\n"
-"  /foo = /foo"
-msgstr ""
-"  [collections]\n"
-"  /foo = /foo"
-
-msgid ""
-"Here, the left side will be stripped off all repositories found in the\n"
-"right side. Thus ``/foo/bar`` and ``foo/quux/baz`` will be listed as\n"
-"``bar`` and ``quux/baz`` respectively.\n"
-msgstr ""
-"Здесь левая часть путей будет удалена из всех путей хранилищ,\n"
-"найденных в каталоге из правой части. Так, ``/foo/bar`` и ``foo/quux/baz``\n"
-"будут отображаться как ``bar`` и ``quux/baz`` соответственно.\n"
+"- The third entry will publish every Mercurial repository found in\n"
+"  ``/srv/repos/``, for instance the repository ``/srv/repos/quux/``\n"
+"  will appear as ``http://server/quux/``\n"
+"- The fourth entry will publish both ``http://server/user/bob/quux/``\n"
+"  and ``http://server/user/bob/quux/testsubrepo/``"
+msgstr ""
+"- Первые две строки позволяют двум хранилищам из разных каталогов\n"
+"  отображаться в одном каталоге в веб-интерфейсе\n"
+"- Третья строка публикует каждое хранилище Mercurial в каталоге\n"
+"  ``/srv/repos/``. Например, хранилище ``/srv/repos/quux/`` будет\n"
+"  опубликовано как ``http://server/quux/``\n"
+"- Четвертая строка публикует хранилища ``http://server/user/bob/quux/``\n"
+"  и ``http://server/user/bob/quux/testsubrepo/``"
+
+msgid ""
+"The ``collections`` section is deprecated and has been superseeded by\n"
+"``paths``.\n"
+msgstr "Секция ``collections`` устарела и заменена секцией ``paths``.\n"
 
 msgid "To merge files Mercurial uses merge tools."
 msgstr "При слиянии файлов Mercurial использует специальные инструменты."
@@ -19735,10 +20416,10 @@
 
 msgid ""
 "Available merge tools\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
-msgstr ""
-"Возможные инструменты слияния\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"====================="
+msgstr ""
+"Доступные инструменты слияния\n"
+"============================="
 
 msgid ""
 "External merge tools and their properties are configured in the\n"
@@ -19786,10 +20467,10 @@
 
 msgid ""
 "Choosing a merge tool\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"====================="
 msgstr ""
 "Выбор инструмента слияния\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"========================="
 
 msgid "Mercurial uses these rules when deciding which merge tool to use:"
 msgstr "Mercurial использует следующие правила при выбора программы слияния:"
@@ -20058,10 +20739,10 @@
 
 msgid ""
 "What are phases?\n"
-"----------------"
+"================"
 msgstr ""
 "Что такое фазы?\n"
-"---------------"
+"=============="
 
 msgid ""
 "Phases are a system for tracking which changesets have been or should\n"
@@ -20099,10 +20780,10 @@
 
 msgid ""
 "How are phases managed?\n"
-"-----------------------"
-msgstr ""
-"Что происходит с фазами?\n"
-"------------------------"
+"======================="
+msgstr ""
+"Как происходит работа с фазами?\n"
+"==============================="
 
 msgid ""
 "For the most part, phases should work transparently. By default, a\n"
@@ -20126,10 +20807,10 @@
 
 msgid ""
 "Phases and servers\n"
-"------------------"
+"=================="
 msgstr ""
 "Фазы и серверы\n"
-"--------------"
+"=============="
 
 msgid "Normally, all servers are ``publishing`` by default. This means::"
 msgstr "Как правило, все серверы по умолчанию ``публичные``. Это означает::"
@@ -20193,10 +20874,10 @@
 
 msgid ""
 "Examples\n"
-"--------"
+"========"
 msgstr ""
 "Примеры\n"
-"-------"
+"======="
 
 msgid " - list changesets in draft or secret phase::"
 msgstr " - перечислить наборы изменений в черновой или секретной фазе::"
@@ -20268,22 +20949,22 @@
 "ровно одного полного ID ревизии."
 
 msgid ""
-"Any other string is treated as a tag or branch name. A tag name is a\n"
-"symbolic name associated with a revision identifier. A branch name\n"
-"denotes the tipmost revision of that branch. Tag and branch names must\n"
-"not contain the \":\" character."
-msgstr ""
-"Любая другая строка интерпретируется как имя ветки или метки. Имя\n"
-"метки - это символьное имя, ассоциированное с некоторым ID ревизии.\n"
-"Имя ветки означает последнюю ревизию на этой ветки. Имена ветки и\n"
-"метки не должны содержать символа \":\"."
-
-msgid ""
-"The reserved name \"tip\" is a special tag that always identifies the\n"
-"most recent revision."
-msgstr ""
-"Зарезервированное имя \"tip\" является специальной меткой, которая\n"
-"всегда ссылается на самую последнюю ревизию."
+"Any other string is treated as a bookmark, tag, or branch name. A\n"
+"bookmark is a movable pointer to a revision. A tag is a permanent name\n"
+"associated with a revision. A branch name denotes the tipmost revision\n"
+"of that branch. Bookmark, tag, and branch names must not contain the \":\"\n"
+"character."
+msgstr ""
+"Любая другая строка интерпретируется как имя закладки, ветки или метки.\n"
+"Закладка - это автоматически передвигаемый указатель на ревизию.\n"
+"Метка - постоянное имя, ассоциированное с некоторой ревизией.\n"
+"Имя ветки означает последнюю ревизию на этой ветки. Имена ветки, метки или\n"
+"закладки не должны содержать символа \":\"."
+
+msgid "The reserved name \"tip\" always identifies the most recent revision."
+msgstr ""
+"Зарезервированное имя \"tip\" всегда всегда ссылается на самую последнюю "
+"ревизию."
 
 msgid ""
 "The reserved name \"null\" indicates the null revision. This is the\n"
@@ -20627,11 +21308,11 @@
 msgid ""
 "\n"
 "Adding a Subrepository\n"
-"----------------------"
+"======================"
 msgstr ""
 "\n"
 "Добавление подхранилища\n"
-"-----------------------"
+"======================="
 
 msgid ""
 "If ``.hgsub`` does not exist, create it and add it to the parent\n"
@@ -20652,10 +21333,10 @@
 
 msgid ""
 "Synchronizing a Subrepository\n"
-"-----------------------------"
+"============================="
 msgstr ""
 "Синхронизация подхранилища\n"
-"--------------------------"
+"=========================="
 
 msgid ""
 "Subrepos do not automatically track the latest changeset of their\n"
@@ -20681,10 +21362,10 @@
 
 msgid ""
 "Deleting a Subrepository\n"
-"------------------------"
+"========================"
 msgstr ""
 "Удаление подхранилища\n"
-"---------------------"
+"====================="
 
 msgid ""
 "To remove a subrepository from the parent repository, delete its\n"
@@ -20695,10 +21376,10 @@
 
 msgid ""
 "Interaction with Mercurial Commands\n"
-"-----------------------------------"
+"==================================="
 msgstr ""
 "Взаимодействие с командами Mercurial\n"
-"------------------------------------"
+"===================================="
 
 msgid ""
 ":add: add does not recurse in subrepos unless -S/--subrepos is\n"
@@ -20827,10 +21508,10 @@
 
 msgid ""
 "Remapping Subrepositories Sources\n"
-"---------------------------------"
+"================================="
 msgstr ""
 "Переназначение источников подхранилищ\n"
-"-------------------------------------"
+"====================================="
 
 msgid ""
 "A subrepository source location may change during a project life,\n"
@@ -21105,6 +21786,9 @@
 msgid "destination directory: %s\n"
 msgstr "каталог назначения: %s\n"
 
+msgid "empty destination path is not valid"
+msgstr "пустой путь назначения недопустим"
+
 #, python-format
 msgid "destination '%s' already exists"
 msgstr "путь назначения '%s' уже существует"
@@ -21170,6 +21854,10 @@
 msgstr "не удается запустить сервер по адресу '%s:%d': %s"
 
 #, python-format
+msgid "(binary file %s, hash: %s)"
+msgstr "(бинарный файл %s, хэш: %s)"
+
+#, python-format
 msgid " %d files changed, %d insertions(+), %d deletions(-)\n"
 msgstr " %d файлов изменено, %d вставок(+), %d удалений(-)\n"
 
@@ -21228,6 +21916,10 @@
 msgid "warning: %s hook %s\n"
 msgstr "внимание: хук %s %s\n"
 
+#, python-format
+msgid "loading %s hook failed:\n"
+msgstr "не удалось загрузить хука %s:\n"
+
 msgid "kb"
 msgstr "Кб"
 
@@ -21432,11 +22124,25 @@
 "частичное затягивание не может быть произведено, т.к. второе хранилище\n"
 "не поддерживает подмножества групп изменений (changegroupsubset)"
 
+msgid "destination does not support push"
+msgstr "хранилище назначения не поддерживает push"
+
+#, python-format
+msgid "push includes an obsolete changeset: %s!"
+msgstr "push включает устаревшую ревизию: %s!"
+
+#, python-format
+msgid "push includes an unstable changeset: %s!"
+msgstr "push включает нестабильную ревизию: %s!"
+
 # CHECK ME NOT-SURE
 #, python-format
 msgid "updating %s to public failed!\n"
 msgstr "обновление %s до публичной фазы завершилась неудачей!\n"
 
+msgid "failed to push obsolete markers!\n"
+msgstr "не удалось протолкнуть маркеры устаревших ревизий!\n"
+
 #, python-format
 msgid "%d changesets found\n"
 msgstr "найдено %d наборов изменений\n"
@@ -21484,8 +22190,8 @@
 msgid "added %d changesets with %d changes to %d files%s\n"
 msgstr "добавлено %d наборов изменений с %d изменениями в %d файлах%s\n"
 
-msgid "Unexpected response from remote server:"
-msgstr "Неожиданный ответ от отдалённого сервера:"
+msgid "unexpected response from remote server:"
+msgstr "неожиданный ответ от отдалённого сервера:"
 
 msgid "operation forbidden by server"
 msgstr "операция запрещена на сервере"
@@ -21504,6 +22210,9 @@
 msgid "%d files to transfer, %s of data\n"
 msgstr "%d файлов для передачи, %s данных\n"
 
+msgid "clone"
+msgstr "клонирование"
+
 #, python-format
 msgid "transferred %s in %.1f seconds (%s/sec)\n"
 msgstr "передано %s за %.1f секунд (%s/c)\n"
@@ -21664,6 +22373,10 @@
 msgid "note: possible conflict - %s was renamed multiple times to:\n"
 msgstr "внимание: возможен конфликт - %s был переименован несколько раз в:\n"
 
+#, python-format
+msgid "note: possible conflict - %s was deleted and renamed to:\n"
+msgstr "внимание: возможен конфликт - %s был удален и переименован в:\n"
+
 msgid "merging with a working directory ancestor has no effect"
 msgstr "слияние с предком рабочего каталога не имеет смысла"
 
@@ -21716,6 +22429,24 @@
 msgstr "Внимание!"
 
 #, python-format
+msgid "parsing obsolete marker: unknown version %r"
+msgstr "ошибка разбора маркера устаревшей ревизии: неизвестная версия %r"
+
+#, python-format
+msgid ""
+"parsing obsolete marker: metadata is too short, %d bytes expected, got %d"
+msgstr ""
+"ошибка разбора маркера устаревшей ревизии: слишком малая длина метаданных,\n"
+"ожидалось %d байт, получено %d"
+
+#, python-format
+msgid "unknown key: %r"
+msgstr "неизвестный ключ: %r"
+
+msgid "unexpected old value"
+msgstr "неожиданное старое значение"
+
+#, python-format
 msgid "unexpected token: %s"
 msgstr "неожиданный символ (token): %s"
 
@@ -21822,6 +22553,13 @@
 msgstr "не удалось наложить патч"
 
 #, python-format
+msgid "cannot %s; remote repository does not support the %r capability"
+msgstr "%s не возможно; отдаленное хранилище не поддерживает возможность %r"
+
+msgid "cannot change null revision phase"
+msgstr "невозможно изменить фазу пустой ревизии"
+
+#, python-format
 msgid "ignoring inconsistent public root from remote: %s\n"
 msgstr "игнорируем неподходящий публичный корень от отдалённого сервера: %s\n"
 
@@ -21861,8 +22599,8 @@
 msgstr "strip не удался, частичный комплект (bundle) сохранен в '%s'\n"
 
 #, python-format
-msgid "cannot %s; remote repository does not support the %r capability"
-msgstr "%s не возможно; отдаленное хранилище не поддерживает возможность %r"
+msgid "revlog decompress error: %s"
+msgstr "ошибка распаковки revlog: %s"
 
 #, python-format
 msgid "unknown compression type %r"
@@ -21976,7 +22714,8 @@
 "    - ``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"
+"    - ``ignored``            : csets ignored due to DAG topology\n"
+"    - ``current``            : the cset currently being bisected"
 msgstr ""
 "    - ``good``, ``bad``, ``skip``: явно помеченные как хороший/плохой/"
 "пропущенный\n"
@@ -21984,8 +22723,10 @@
 "    - ``range``              : находящиеся в рамках бисекции\n"
 "    - ``pruned``             : goods, bads или пропущенные\n"
 "    - ``untested``           : те, чья судьба ещё неизвестна\n"
-"    - ``ignored``            : игнорируемые ввиду топологии графа ревизий"
-
+"    - ``ignored``            : игнорируемые ввиду топологии графа ревизий    "
+"- ``current``            : обрабатываемый в данный момент"
+
+#. i18n: "bisect" is a keyword
 msgid "bisect requires a string"
 msgstr "bisect требует строку"
 
@@ -21996,6 +22737,17 @@
 "``bookmark([имя])``\n"
 "    Именованная закладка или все закладки."
 
+msgid ""
+"    If `name` starts with `re:`, the remainder of the name is treated as\n"
+"    a regular expression. To match a bookmark that actually starts with `re:"
+"`,\n"
+"    use the prefix `literal:`."
+msgstr ""
+"    Если `имя` начинается с `re:`, остальная часть имени считается "
+"регулярным\n"
+"    выражением. Чтобы найти закладку, имя которой начинается с символов\n"
+"    `re:`, используйте префикс `literal:`."
+
 #. i18n: "bookmark" is a keyword
 msgid "bookmark takes one or no arguments"
 msgstr "bookmark принимает один или ноль аргументов"
@@ -22004,6 +22756,10 @@
 msgid "the argument to bookmark must be a string"
 msgstr "аргумент для bookmark должен быть строкой"
 
+#, python-format
+msgid "no bookmarks exist that match '%s'"
+msgstr "нет закладок, совпадающих с '%s'"
+
 msgid ""
 "``branch(string or set)``\n"
 "    All changesets belonging to the given branch or the branches of the "
@@ -22015,6 +22771,17 @@
 "    данных наборов изменений."
 
 msgid ""
+"    If `string` starts with `re:`, the remainder of the name is treated as\n"
+"    a regular expression. To match a branch that actually starts with `re:"
+"`,\n"
+"    use the prefix `literal:`."
+msgstr ""
+"    Если `строка` начинается с `re:`, остальная часть имени считается "
+"регулярным\n"
+"    выражением. Чтобы найти ветку, имя которой начинается с символов\n"
+"    `re:`, используйте префикс `literal:`."
+
+msgid ""
 "``children(set)``\n"
 "    Child changesets of changesets in set."
 msgstr ""
@@ -22047,6 +22814,26 @@
 msgstr "contains требует шаблон"
 
 msgid ""
+"``converted([id])``\n"
+"    Changesets converted from the given identifier in the old repository if\n"
+"    present, or all converted changesets if no identifier is specified."
+msgstr ""
+"``converted([id])``\n"
+"    Наборы изменений, сконвертированные из заданного идентификатора в "
+"старом\n"
+"    хранилище, или все сконвертированные наборы изменений, если "
+"идентификатор\n"
+"    не указан."
+
+#. i18n: "converted" is a keyword
+msgid "converted takes one or no arguments"
+msgstr "converted принимает ноль или один аргумент"
+
+#. i18n: "converted" is a keyword
+msgid "converted requires a revision"
+msgstr "converted требует ревизию"
+
+msgid ""
 "``date(interval)``\n"
 "    Changesets within the interval, see :hg:`help dates`."
 msgstr ""
@@ -22076,22 +22863,90 @@
 "    Наборы изменений, являющиеся потомками наборов из множества."
 
 msgid ""
+"``destination([set])``\n"
+"    Changesets that were created by a graft, transplant or rebase "
+"operation,\n"
+"    with the given revisions specified as the source.  Omitting the optional "
+"set\n"
+"    is the same as passing all()."
+msgstr ""
+"``destination([множество])``\n"
+"    Наборы изменений, созданные с помощью операций graft, transplant или\n"
+"    rebase c указанными ревизиями в качестве источников. Если множество\n"
+"    ревизий опущено, вместо него предполагается all()."
+
+msgid ""
 "``draft()``\n"
 "    Changeset in draft phase."
 msgstr ""
 "``draft()``\n"
 "    Набор изменений в черновой фазе."
 
+#. i18n: "draft" is a keyword
 msgid "draft takes no arguments"
 msgstr "draft не требует аргументов"
 
 msgid ""
+"``extinct()``\n"
+"    obsolete changeset with obsolete descendant only."
+msgstr ""
+"``extinct()``\n"
+"    устаревший набор изменений, имеющий только устаревших потомков."
+
+#. i18n: "extinct" is a keyword
+msgid "extinct takes no arguments"
+msgstr "extinct не требует аргументов"
+
+msgid ""
+"``extra(label, [value])``\n"
+"    Changesets with the given label in the extra metadata, with the given\n"
+"    optional value."
+msgstr ""
+"``extra(label, [значение])``\n"
+"    Наборы изменений с заданной меткой в дополнительных метаданных и с\n"
+"    заданным значением (необязательным)."
+
+msgid ""
+"    If `value` starts with `re:`, the remainder of the value is treated as\n"
+"    a regular expression. To match a value that actually starts with `re:`,\n"
+"    use the prefix `literal:`."
+msgstr ""
+"    Если `значение` начинается с `re:`, остальная часть значения считается "
+"регулярным\n"
+"    выражением. Чтобы найти значение, которое начинается с символов\n"
+"    `re:`, используйте префикс `literal:`."
+
+#. i18n: "extra" is a keyword
+msgid "extra takes at least 1 and at most 2 arguments"
+msgstr "extra требует от одного до двух аргументов"
+
+#. i18n: "extra" is a keyword
+msgid "first argument to extra must be a string"
+msgstr "первый аргумент для extra должен быть строкой"
+
+#. i18n: "extra" is a keyword
+msgid "second argument to extra must be a string"
+msgstr "второй аргумент для extra должен быть строкой"
+
+msgid ""
 "``filelog(pattern)``\n"
 "    Changesets connected to the specified filelog."
 msgstr ""
 "``filelog(шаблон)``\n"
 "    Наборы изменений, связанные с указанным объектом filelog."
 
+msgid ""
+"    For performance reasons, ``filelog()`` does not show every changeset\n"
+"    that affects the requested file(s). See :hg:`help log` for details. For\n"
+"    a slower, more accurate result, use ``file()``."
+msgstr ""
+"    Из соображений производительности, ``filelog()`` не показывает все\n"
+"    наборы изменений, затрагивающие указанный файл(ы). Подробнее см.\n"
+"    :hg:`help log`. Для более точного, но медленного результата, "
+"используйте\n"
+"    ``file()``."
+
+#. i18n: "filelog" is a keyword
 msgid "filelog requires a pattern"
 msgstr "filelog требует шаблон"
 
@@ -22155,15 +23010,19 @@
 msgid "_matchfiles requires at least one argument"
 msgstr "_matchfiles требует хотя бы один аргумент"
 
+#. i18n: "_matchfiles" is a keyword
 msgid "_matchfiles requires string arguments"
 msgstr "_matchfiles требует строковых аргументов"
 
+#. i18n: "_matchfiles" is a keyword
 msgid "_matchfiles expected at most one revision"
 msgstr "_matchfiles ожидает не более одной ревизии"
 
+#. i18n: "_matchfiles" is a keyword
 msgid "_matchfiles expected at most one default mode"
 msgstr "_matchfiles ожидает не более одного режима сравнения по умолчанию"
 
+#. i18n: "_matchfiles" is a keyword
 #, python-format
 msgid "invalid _matchfiles prefix: %s"
 msgstr "неверный префикс для _matchfiles: %s"
@@ -22175,6 +23034,13 @@
 "``file(шаблон)``\n"
 "    Наборы изменений, затрагивающие файлы, совпадающие с шаблоном."
 
+msgid ""
+"    For a faster but less accurate result, consider using ``filelog()``\n"
+"    instead."
+msgstr ""
+"    Для более быстрого, но не столь точного результата, используйте\n"
+"    ``filelog()``."
+
 #. i18n: "file" is a keyword
 msgid "file requires a pattern"
 msgstr "file требует шаблон"
@@ -22300,6 +23166,37 @@
 msgstr "id требует строку"
 
 msgid ""
+"``obsolete()``\n"
+"    Mutable changeset with a newer version."
+msgstr ""
+"``obsolete()``\n"
+"    Изменяемый набор изменений, имеющий более новую версию."
+
+#. i18n: "obsolete" is a keyword
+msgid "obsolete takes no arguments"
+msgstr "obsolete не требует аргументов"
+
+msgid ""
+"``origin([set])``\n"
+"    Changesets that were specified as a source for the grafts, transplants "
+"or\n"
+"    rebases that created the given revisions.  Omitting the optional set is "
+"the\n"
+"    same as passing all().  If a changeset created by these operations is "
+"itself\n"
+"    specified as a source for one of these operations, only the source "
+"changeset\n"
+"    for the first operation is selected."
+msgstr ""
+"``origin([множество])``\n"
+"    Наборы изменений, которые были заданы в качестве исходных для операций\n"
+"    graft, rebase или transplant, создавших указанные ревизии. Если "
+"множество\n"
+"    не задано, предполагается all(). Если набор изменений, созданный этими\n"
+"    операциями, указан в качестве источника для одной из этих операций,\n"
+"    будет выбран только исходный набор изменений для первой операции."
+
+msgid ""
 "``outgoing([path])``\n"
 "    Changesets not found in the specified destination repository, or the\n"
 "    default push location."
@@ -22369,6 +23266,7 @@
 "``public()``\n"
 "    Набор изменений в публичной фазе."
 
+#. i18n: "public" is a keyword
 msgid "public takes no arguments"
 msgstr "public не требует аргументов"
 
@@ -22441,7 +23339,7 @@
 msgstr ""
 "    Для поиска ревизий с несколькими совпадающими полями, задайте список "
 "имен,\n"
-"    полей, разделенных пробелами (например, ``author dexcription``)."
+"    полей, разделенных пробелами (например, ``author description``)."
 
 msgid ""
 "    Valid fields are most regular revision fields and some special fields."
@@ -22449,16 +23347,23 @@
 "    В качестве полей могут выступать \"обычные\" поля ревизий, а также\n"
 "    несколько особых полей."
 
+# NOT-SURE
 msgid ""
 "    Regular revision fields are ``description``, ``author``, ``branch``,\n"
-"    ``date``, ``files``, ``phase``, ``parents``, ``substate`` and ``user``.\n"
-"    Note that ``author`` and ``user`` are synonyms."
+"    ``date``, ``files``, ``phase``, ``parents``, ``substate``, ``user``\n"
+"    and ``diff``.\n"
+"    Note that ``author`` and ``user`` are synonyms. ``diff`` refers to the\n"
+"    contents of the revision. Two revisions matching their ``diff`` will\n"
+"    also match their ``files``."
 msgstr ""
 "    \"Обычные\" поля ревизий: ``description``, ``author``, ``branch``,\n"
-"    ``date``, ``files``, ``phase``, ``parents``, ``substate`` and ``user``\n"
-"    (описание, автор, ветка, дата, файлы, фаза, родители, состояние, и еще\n"
-"    раз автор-пользователь).\n"
-"    Обратите внимание, что ``author`` and ``user`` являются синонимами."
+"    ``date``, ``files``, ``phase``, ``parents``, ``substate``, ``user``\n"
+"    и ``diff``.\n"
+"    (описание, автор, ветка, дата, файлы, фаза, родители, состояние, еще\n"
+"    раз автор-пользователь, и различия).\n"
+"    Обратите внимание, что ``author`` and ``user`` являются синонимами.    "
+"``diff`` означает содержимое ревизии. У двух ревизий, совпадающих с\n"
+"    заданным ``diff``, совпадут также и ``files``."
 
 msgid ""
 "    Special fields are ``summary`` and ``metadata``:\n"
@@ -22478,12 +23383,15 @@
 "    ``metadata`` используется по умолчанию, когда не указано ни одного\n"
 "    поля. Можно искать по нескольким полям за раз."
 
+#. i18n: "matching" is a keyword
 msgid "matching takes 1 or 2 arguments"
 msgstr "matching принимает один или два аргумента"
 
+#. i18n: "matching" is a keyword
 msgid "matching requires a string as its second argument"
 msgstr "matching требует строку в качестве второго аргумента"
 
+#. i18n: "matching" is a keyword
 #, python-format
 msgid "unexpected field name passed to matching: %s"
 msgstr "неожиданное имя поля, переданное matching: %s"
@@ -22509,6 +23417,7 @@
 "``secret()``\n"
 "    Набор изменений в секретной фазе."
 
+#. i18n: "secret" is a keyword
 msgid "secret takes no arguments"
 msgstr "secret не требует аргументов"
 
@@ -22541,6 +23450,7 @@
 msgid "sort requires one or two arguments"
 msgstr "sort требует один или два аргумента"
 
+#. i18n: "sort" is a keyword
 msgid "sort spec must be a string"
 msgstr "спецификация sort должна быть строкой"
 
@@ -22548,6 +23458,10 @@
 msgid "unknown sort key %r"
 msgstr "неизвестный ключ сортировки %r"
 
+#, python-format
+msgid "invalid regular expression: %s"
+msgstr "недопустимое регулярное выражение: %s"
+
 msgid ""
 "``tag([name])``\n"
 "    The specified tag by name, or all tagged revisions if no name is given."
@@ -22563,6 +23477,22 @@
 msgid "the argument to tag must be a string"
 msgstr "аргумент для tag должен быть строкой"
 
+#, python-format
+msgid "no tags exist that match '%s"
+msgstr "нет меток, совпадающих с '%s'"
+
+msgid ""
+"``unstable()``\n"
+"    Unstable changesets are non-obsolete with obsolete descendants."
+msgstr ""
+"``unstable()``\n"
+"    Нестабильные наборы изменений - не устаревшие наборы изменений\n"
+"    с устаревшими потомками."
+
+#. i18n: "unstable" is a keyword
+msgid "unstable takes no arguments"
+msgstr "unstable не требует аргументов"
+
 msgid ""
 "``user(string)``\n"
 "    User name contains string. The match is case-insensitive."
@@ -22570,6 +23500,18 @@
 "``user(строка)``\n"
 "    Имя пользователя содержит строку. Регистр букв не учитывается."
 
+msgid ""
+"    If `string` starts with `re:`, the remainder of the string is treated "
+"as\n"
+"    a regular expression. To match a user that actually contains `re:`, use\n"
+"    the prefix `literal:`."
+msgstr ""
+"    Если `строка` начинается с `re:`, остальная часть имени считается "
+"регулярным\n"
+"    выражением. Чтобы найти пользователя, имя которого начинается с "
+"символов\n"
+"    `re:`, используйте префикс `literal:`."
+
 msgid "can't negate that"
 msgstr "это нельзя отрицать"
 
@@ -22908,6 +23850,12 @@
 msgid "not removing repo %s because it has changes.\n"
 msgstr "не удаляем хранилище %s, т.к. в нем имеются изменения.\n"
 
+msgid "cannot retrieve git version"
+msgstr "не удалось получить версию git"
+
+msgid "git subrepo requires at least 1.6.0 or later"
+msgstr "подхранилище git требует версии не ниже 1.6.0"
+
 #, python-format
 msgid "revision %s does not exist in subrepo %s\n"
 msgstr "ревизия %s не существует в подхранилище %s\n"
@@ -22934,10 +23882,10 @@
 #, python-format
 msgid ""
 "no branch checked out in subrepo %s\n"
-"cannot push revision %s"
+"cannot push revision %s\n"
 msgstr ""
 "нет извлеченной ветки в подхранилище %s\n"
-"невозможно протолкнуть ревизию %s"
+"невозможно протолкнуть ревизию %s\n"
 
 #, python-format
 msgid "%s, line %s: %s\n"
@@ -23288,6 +24236,16 @@
 msgid ":tags: List of strings. Any tags associated with the changeset."
 msgstr ":tags: Список строк. Все метки, ассоциированные с набором изменений."
 
+msgid ""
+":parents: List of strings. The parents of the changeset in \"rev:node\"\n"
+"    format. If the changeset has only one \"natural\" parent (the "
+"predecessor\n"
+"    revision) nothing is shown."
+msgstr ""
+":parents: Список строк. Родители ревизии в формате \"номер ревизии:хэш\".\n"
+"    Если набор изменений имеет только одного \"естественного\" родителя\n"
+"    (предшествующая ревизия), ничего не показывается."
+
 #, python-format
 msgid "unknown method '%s'"
 msgstr "неизвестный метод '%s'"
@@ -23343,12 +24301,12 @@
 msgstr "уже имеется набор изменений "
 
 #, python-format
-msgid "Not trusting file %s from untrusted user %s, group %s\n"
-msgstr "Не доверяем файлу %s от недоверенного пользователя %s, группа %s\n"
-
-#, python-format
-msgid "Ignored: %s\n"
-msgstr "Игнорируется: %s\n"
+msgid "not trusting file %s from untrusted user %s, group %s\n"
+msgstr "не доверяем файлу %s от недоверенного пользователя %s, группа %s\n"
+
+#, python-format
+msgid "ignored: %s\n"
+msgstr "игнорируется: %s\n"
 
 #, python-format
 msgid "(deprecated '%%' in path %s=%s from %s)\n"
@@ -23366,8 +24324,8 @@
 msgstr "введите имя пользователя для фиксации:"
 
 #, python-format
-msgid "No username found, using '%s' instead\n"
-msgstr "Имя пользователя не найдено, используется '%s'\n"
+msgid "no username found, using '%s' instead\n"
+msgstr "имя пользователя не найдено, используется '%s'\n"
 
 msgid "no username supplied (see \"hg help config\")"
 msgstr "не задано имя пользователя (см. \"hg help config\")"
@@ -23691,6 +24649,450 @@
 msgstr "ошибка при проталкивании:"
 
 #~ msgid ""
+#~ "Branch-based Access Control\n"
+#~ "..........................."
+#~ msgstr ""
+#~ "Контроль доступа, основанный на ветке\n"
+#~ "....................................."
+
+#~ msgid ""
+#~ "Path-based Access Control\n"
+#~ "........................."
+#~ msgstr ""
+#~ "Контроль доступа основанный на пути\n"
+#~ "..................................."
+
+#~ msgid ""
+#~ "Groups\n"
+#~ "......"
+#~ msgstr ""
+#~ "Группы\n"
+#~ "......"
+
+#~ msgid ""
+#~ "Example Configuration\n"
+#~ "....................."
+#~ msgstr ""
+#~ "Пример конфигурации\n"
+#~ "..................."
+
+#~ msgid ""
+#~ "    Mercurial Destination\n"
+#~ "    '''''''''''''''''''''"
+#~ msgstr ""
+#~ "    Выходное хранилище Mercurial\n"
+#~ "    ''''''''''''''''''''''''''''"
+
+#~ msgid "must specify local origin repository"
+#~ msgstr "хранилище-источник должно быть локальным"
+
+#~ msgid ""
+#~ "Files\n"
+#~ "-----"
+#~ msgstr ""
+#~ "Файлы\n"
+#~ "-----"
+
+#~ msgid ""
+#~ "Syntax\n"
+#~ "------"
+#~ msgstr ""
+#~ "Синтаксис\n"
+#~ "---------"
+
+#~ msgid ""
+#~ "``alias``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``alias``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``annotate``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``annotate``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``auth``\n"
+#~ "\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``auth``\n"
+#~ "\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``decode/encode``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``decode/encode``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``defaults``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``defaults``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``diff``\n"
+#~ "\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``diff``\n"
+#~ "\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``email``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``email``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``extensions``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``extensions``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``format``\n"
+#~ "\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``format``\n"
+#~ "\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``graph``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``graph``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``hooks``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``hooks``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``hostfingerprints``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``hostfingerprints``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``http_proxy``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``http_proxy``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``merge-patterns``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``merge-patterns``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``merge-tools``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``merge-tools``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``patch``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``patch``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``paths``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``paths``\n"
+#~ "\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``phases``\n"
+#~ "\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``phases``\n"
+#~ "\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``profiling``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``profiling``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``revsetalias``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``revsetalias``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``server``\n"
+#~ "\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``server``\n"
+#~ "\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``smtp``\n"
+#~ "\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``smtp``\n"
+#~ "\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``subpaths``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``subpaths``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "``trusted``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "``trusted``\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``ui``\n"
+#~ "\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``ui``\n"
+#~ "\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "\n"
+#~ "``web``\n"
+#~ "\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "\n"
+#~ "``web``\n"
+#~ "\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "Example\n"
+#~ "-------"
+#~ msgstr ""
+#~ "Пример\n"
+#~ "------"
+
+#~ msgid ""
+#~ "The ``web`` section can specify all the settings described in the web\n"
+#~ "section of the hgrc(5) documentation. See :hg:`help config` for\n"
+#~ "information on where to find the manual page."
+#~ msgstr ""
+#~ "Секция ``web`` для задания всех параметров, описанных в справке по\n"
+#~ "одноименной секции из :hg:`help config`."
+
+#~ msgid ""
+#~ "The ``paths`` section provides mappings of physical repository\n"
+#~ "paths to virtual ones. For instance::"
+#~ msgstr ""
+#~ "Секция ``paths`` задает соответствие физических путей к хранилищам\n"
+#~ "и виртуальных. Например::"
+
+#~ msgid ""
+#~ "- The first two entries make two repositories in different directories\n"
+#~ "  appear under the same directory in the web interface\n"
+#~ "- The third entry maps every Mercurial repository found in '/real/root'\n"
+#~ "  into 'web/root'. This format is preferred over the [collections] one,\n"
+#~ "  since using absolute paths as configuration keys is not supported on "
+#~ "every\n"
+#~ "  platform (especially on Windows).\n"
+#~ "- The fourth entry is a special case mapping all repositories in\n"
+#~ "  '/real/root2' in the root of the virtual directory.\n"
+#~ "- The fifth entry recursively finds all repositories under the real\n"
+#~ "  root, and maps their relative paths under the virtual root."
+#~ msgstr ""
+#~ "- Первые две строки показывают два хранилища, физически находящиеся по\n"
+#~ "  разным путям, в одном каталоге в веб-интерфейсе\n"
+#~ "- Третья строка показывает все хранилища Mercurial, находящиеся в\n"
+#~ "  '/real/root', в каталоге 'web/root' веб-интерфейса. Такая форма\n"
+#~ "  является предпочтительной по сравнению с секцией [collections],\n"
+#~ "  т.к. использование абсолютных путей в качестве ключей поддерживается\n"
+#~ "  не на всех платформах (в частности, не работает в Windows)\n"
+#~ "- Четвертая строка иллюстрирует особый случай, при котором все\n"
+#~ "  хранилища из каталога '/real/root2' отображаются в корневом\n"
+#~ "  виртуальном каталоге.\n"
+#~ "- Пятая строка рекурсивно ищет все хранилища в подкаталогах\n"
+#~ "  /real/root2 и показывает из относительные пути в виртуальном\n"
+#~ "  каталоге."
+
+#~ msgid ""
+#~ "The ``collections`` section provides mappings of trees of physical\n"
+#~ "repositories paths to virtual ones, though the paths syntax is generally\n"
+#~ "preferred. For instance::"
+#~ msgstr ""
+#~ "Секция ``collections`` задает соответствие деревьев физических путей\n"
+#~ "хранилищ виртуальным. Однако, предпочтительно использовать секцию\n"
+#~ "paths. Пример::"
+
+#~ msgid ""
+#~ "  [collections]\n"
+#~ "  /foo = /foo"
+#~ msgstr ""
+#~ "  [collections]\n"
+#~ "  /foo = /foo"
+
+#~ msgid ""
+#~ "Here, the left side will be stripped off all repositories found in the\n"
+#~ "right side. Thus ``/foo/bar`` and ``foo/quux/baz`` will be listed as\n"
+#~ "``bar`` and ``quux/baz`` respectively.\n"
+#~ msgstr ""
+#~ "Здесь левая часть путей будет удалена из всех путей хранилищ,\n"
+#~ "найденных в каталоге из правой части. Так, ``/foo/bar`` и ``foo/quux/"
+#~ "baz``\n"
+#~ "будут отображаться как ``bar`` и ``quux/baz`` соответственно.\n"
+
+#~ msgid ""
+#~ "Available merge tools\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "Возможные инструменты слияния\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "Choosing a merge tool\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+#~ msgstr ""
+#~ "Выбор инструмента слияния\n"
+#~ "\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+
+#~ msgid ""
+#~ "Interaction with Mercurial Commands\n"
+#~ "-----------------------------------"
+#~ msgstr ""
+#~ "Взаимодействие с командами Mercurial\n"
+#~ "------------------------------------"
+
+#~ msgid ""
+#~ "Remapping Subrepositories Sources\n"
+#~ "---------------------------------"
+#~ msgstr ""
+#~ "Переназначение источников подхранилищ\n"
+#~ "-------------------------------------"
+
+#~ msgid ""
+#~ "Other repository doesn't support revision lookup, so a rev cannot be "
+#~ "specified."
+#~ msgstr ""
+#~ "Другое хранилище не поддерживает поиск ревизий, поэтому нельзя\n"
+#~ "задавать ревизию."
+
+#~ msgid ""
+#~ "    When -f/--force is applied, all local changes in patched files\n"
+#~ "    will be lost."
+#~ msgstr ""
+#~ "    С -f/--force все локальные изменения в файлах, на которые "
+#~ "накладывается\n"
+#~ "    патч, будут утеряны."
+
+#~ msgid ""
+#~ "Alternatively, they can be added to Mercurial configuration files by\n"
+#~ "setting the previous entry to an empty value."
+#~ msgstr ""
+#~ "Также они могут быть добавлены прямо в конфигурационные файлы Mercurial,\n"
+#~ "для этого надо установить предыдущий параметр в пустое значение (config= )"
+
+#~ 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 ""
+#~ "notify.sources\n"
+#~ "  Разделенный пробелами список источников изменений. Уведомления\n"
+#~ "  отсылаются, только если он содержит источники входящих или исходящих\n"
+#~ "  изменений. Входящие источники могут быть ``serve`` - для изменений,\n"
+#~ "  получаемых по ssh или http, ``pull`` - для затягиваемых изменений,\n"
+#~ "  ``unbundle`` - для изменений, добавляемых с помощью :hg:`unbundle`,\n"
+#~ "  или ``push`` - для добавленных локально с помощью команды :hg:`push`.\n"
+#~ "  Такие же значения возможны и для исходящих, кроме ``unbundle``, "
+#~ "который\n"
+#~ "  заменяется на ``bundle``. По умолчанию: serve."
+
+#~ msgid ""
+#~ "notify.domain\n"
+#~ "  If subscribers emails or the from email have no domain set, complete "
+#~ "them\n"
+#~ "  with this value."
+#~ msgstr ""
+#~ "notify.domain\n"
+#~ "  Если адреса email подписчиков или поле email \"From:\" (От) не имеют\n"
+#~ "  домена, он заменяется этим значением."
+
+#~ msgid "Sending "
+#~ msgstr "Отправляется "
+
+#~ msgid "force detaching of source from its original branch"
+#~ msgstr "принудительно отцепить источник от его ветки-источника"
+
+#~ msgid "cannot use detach with continue or abort"
+#~ msgstr "нельзя использовать detach с continue или abort"
+
+#~ msgid "cannot specify a base with detach"
+#~ msgstr "нельзя задавать base с detach"
+
+#~ msgid "warning: immutable rebased changeset detected, can't abort\n"
+#~ msgstr ""
+#~ "внимание: обнаружены неизменяемые перебазированные наборы изменений, "
+#~ "нельзя прервать\n"
+
+#~ msgid "[OPTION]... REVISION..."
+#~ msgstr "[ПАРАМЕТР]... РЕВИЗИЯ..."
+
+#~ msgid "use \"hg -v help %s\" to show more info"
+#~ msgstr "используйте \"hg -v help %s\" для дополнительной информации"
+
+#~ msgid "There is no Mercurial repository here (.hg not found)"
+#~ msgstr "Здесь нет хранилища Mercurial (.hg не обнаружен)"
+
+#~ msgid ""
 #~ "If you notice \"BROKEN PIPE\" error messages, you can disable them by\n"
 #~ "setting::"
 #~ msgstr ""