changeset 17314:d5bbb29a80ae stable

merge with i18n
author Matt Mackall <mpm@selenic.com>
date Thu, 02 Aug 2012 00:52:43 -0500
parents 2e0805f59736 (current diff) 3eae346a30c4 (diff)
children f320d7ed912f
files
diffstat 3 files changed, 3512 insertions(+), 1195 deletions(-) [+]
line wrap: on
line diff
--- a/i18n/ja.po	Wed Aug 01 15:49:00 2012 +0200
+++ b/i18n/ja.po	Thu Aug 02 00:52:43 2012 -0500
@@ -128,7 +128,7 @@
 msgstr ""
 "Project-Id-Version: Mercurial\n"
 "Report-Msgid-Bugs-To: <mercurial-devel@selenic.com>\n"
-"POT-Creation-Date: 2012-07-29 22:08+0900\n"
+"POT-Creation-Date: 2012-08-01 04:42+0900\n"
 "PO-Revision-Date: 2009-11-16 21:24+0100\n"
 "Last-Translator: Japanese translation team <mercurial-ja@googlegroups.com>\n"
 "Language-Team: Japanese\n"
@@ -3806,7 +3806,7 @@
 msgstr "hg debug-rev-list [OPTION]... REV..."
 
 msgid "syntax highlighting for hgweb (requires Pygments)"
-msgstr "hgweb におけるシンタックスハイライトの実施(要 Pygments)"
+msgstr "hgweb におけるシンタックスハイライト (要 Pygments)"
 
 msgid ""
 "It depends on the Pygments syntax highlighting library:\n"
@@ -3870,9 +3870,7 @@
 "file open in your editor::"
 msgstr ""
 "``hg histedit c561b4e977df`` 実行により、 エディタが起動された上で、\n"
-"以下の内容のファイルが開かれます (※ 訳注: ヘルプ原文では\n"
-"『ファイルの更新数 〜』 相当行が編集対象に含まれるような記述ですが、\n"
-"実際には当該行は、 編集可能対象には含まれません)::"
+"以下の内容のファイルが開かれます::"
 
 msgid ""
 " pick c561b4e977df Add beta\n"
@@ -3892,8 +3890,7 @@
 " #  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"
@@ -3939,7 +3936,7 @@
 "``histedit`` の実際の処理は、 エディタを終了させた時点から始まります。\n"
 "``fold`` 操作を指定した場合、 併合後リビジョンのコミットログ入力のために、\n"
 "併合対象と併合先の各コミットログを、 以下の様に結合したファイルを、\n"
-"``histedit`` がエディタで開きます。"
+"``histedit`` がエディタで開きます::"
 
 msgid ""
 " Add beta\n"
@@ -7263,10 +7260,10 @@
 
 msgid ""
 "  [pager]\n"
-"  pager = less -FRSX"
+"  pager = less -FRX"
 msgstr ""
 "  [pager]\n"
-"  pager = less -FRSX"
+"  pager = less -FRX"
 
 msgid ""
 "If no pager is set, the pager extensions uses the environment variable\n"
@@ -7906,7 +7903,7 @@
 msgstr "ディレクトリ %s の削除中\n"
 
 msgid "command to move sets of revisions to a different ancestor"
-msgstr "一連のリビジョンを、履歴ツリー上の異なる位置に移動させるコマンド"
+msgstr "履歴上の異なる位置への一連のリビジョンの移動"
 
 msgid ""
 "This extension lets you rebase changesets in an existing Mercurial\n"
@@ -8192,7 +8189,7 @@
 msgstr "移動用のマージツールの指定"
 
 msgid "commands to interactively select changes for commit/qrefresh"
-msgstr "commit または qrefresh 実行時に対話的な変更選択を行うコマンド"
+msgstr "commit や qrefresh における対話的な変更取り込みの選択"
 
 msgid "ignore white space when comparing lines"
 msgstr "差分判定の際に空白文字を無視"
@@ -8861,7 +8858,7 @@
 msgstr ":transplanted: 文字列。 (移植先であれば) 移植元リビジョンの ID。"
 
 msgid "allow the use of MBCS paths with problematic encodings"
-msgstr "問題のある文字コードでの多バイト符号化文字を使用したパス名の有効化"
+msgstr "問題ある文字コードをパス名に使用する場合の対処"
 
 msgid ""
 "Some MBCS encodings are not good for some path operations (i.e.\n"
@@ -14073,7 +14070,7 @@
 msgid ""
 "      The following rules apply when the working directory contains\n"
 "      uncommitted changes:"
-msgstr "    作業領域の変更が未コミットの場合、 以下の規則が適用されます:"
+msgstr "      作業領域の変更が未コミットの場合、 以下の規則が適用されます:"
 
 msgid ""
 "      1. If neither -c/--check nor -C/--clean is specified, and if\n"
@@ -14097,7 +14094,7 @@
 "      2. With the -c/--check option, the update is aborted and the\n"
 "         uncommitted changes are preserved."
 msgstr ""
-"      2. -c/--check が指定された場合、 更新は中断され、 \n"
+"      2. -c/--check が指定された場合、 更新は中断され、\n"
 "         未コミット変更は、 作業領域に残ります。"
 
 msgid ""
@@ -14977,10 +14974,10 @@
 msgstr "複数リビジョンの指定"
 
 msgid "Specifying Revision Sets"
-msgstr "複数リビジョンの指定"
+msgstr "リビジョン群の指定"
 
 msgid "Specifying File Sets"
-msgstr "複数ファイルの指定"
+msgstr "ファイル群の指定"
 
 msgid "Diff Formats"
 msgstr "差分形式"
@@ -16132,8 +16129,8 @@
 msgstr ""
 "``dotencode``\n"
 "    \"fncache\" 形式リポジトリ (本設定の有効化に必須) において、\n"
-"    Mac OS X および Windows で生じる、 ドットと空白文字 (``. ``)\n"
-"    で始まるファイル名の問題を回避するための、 \"dotencode\"\n"
+"    Mac OS X では ``._``  、Windows では空白文字で始まるファイル名が、\n"
+"    原因となって発生する問題を、 回避するための  \"dotencode\"\n"
 "    形式リポジトリの使用可否。 デフォルトでは有効化されています。\n"
 "    この設定を無効化した場合、 新規作成したリポジトリは、 1.7 以前の\n"
 "    Mercurial と、 ディスク記録形式で互換性が保たれます。"
@@ -21647,8 +21644,8 @@
 msgid "updating %s to public failed!\n"
 msgstr "%s のフェーズの public 化に失敗!\n"
 
-msgid "failed to push obsolete markers!\n"
-msgstr "『廃止』情報の反映に失敗しました!\n"
+msgid "failed to push some obsolete markers!\n"
+msgstr "リビジョンの『廃止』情報の反映に失敗しました!\n"
 
 #, python-format
 msgid "%d changesets found\n"
@@ -22358,11 +22355,10 @@
 
 msgid ""
 "``extinct()``\n"
-"    obsolete changeset with obsolete descendant only."
+"    Obsolete changesets with obsolete descendants only."
 msgstr ""
 "``extinct()``\n"
-"    『廃止』リビジョン以外の子孫を持たない『廃止』リビジョン群。\n"
-"    (※ 訳注: \"extinct\" は「廃れた」等の意)"
+"    子孫が全て『廃止』リビジョンな、『廃止』リビジョン群。"
 
 #. i18n: "extinct" is a keyword
 msgid "extinct takes no arguments"
@@ -22942,13 +22938,10 @@
 
 msgid ""
 "``unstable()``\n"
-"    Unstable changesets are non-obsolete with obsolete descendants."
+"    Non-obsolete changesets with obsolete ancestors."
 msgstr ""
 "``unstable()``\n"
-"    『廃止』リビジョンを祖先に持つ『非廃止』リビジョン群。\n"
-"    (※ 訳注: 『廃止』リビジョンを祖先に持つ『非廃止』リビジョンは、\n"
-"    rebase 等での移動が想定されている = 永続的リビジョンではないことから、\n"
-"    unstable と呼ばれています)"
+"    祖先に『廃止』リビジョンを持つ、『非廃止』リビジョン群。"
 
 #. i18n: "unstable" is a keyword
 msgid "unstable takes no arguments"
--- a/i18n/pt_BR.po	Wed Aug 01 15:49:00 2012 +0200
+++ b/i18n/pt_BR.po	Thu Aug 02 00:52:43 2012 -0500
@@ -31,7 +31,7 @@
 msgstr ""
 "Project-Id-Version: Mercurial\n"
 "Report-Msgid-Bugs-To: <mercurial-devel@selenic.com>\n"
-"POT-Creation-Date: 2012-04-21 11:29-0300\n"
+"POT-Creation-Date: 2012-07-31 14:10-0300\n"
 "PO-Revision-Date: 2011-06-28 09:55+0200\n"
 "Last-Translator: Wagner Bruna <wbruna@yahoo.com>\n"
 "Language-Team: Brazilian Portuguese\n"
@@ -128,10 +128,10 @@
 
 msgid ""
 "Branch-based Access Control\n"
-"..........................."
+"---------------------------"
 msgstr ""
 "Controle de Acesso Baseado em Ramos\n"
-"..................................."
+"-----------------------------------"
 
 msgid ""
 "Use the ``acl.deny.branches`` and ``acl.allow.branches`` sections to\n"
@@ -159,11 +159,18 @@
 "- um asterisco, que significa \"qualquer usuário ou grupo\";"
 
 msgid ""
+"You can add the \"!\" prefix to a user or group name to invert the sense\n"
+"of the match."
+msgstr ""
+"Você pode adicionar o prefixo \"!\" para um usuário ou grupo\n"
+"para inverter o sentido do casamento."
+
+msgid ""
 "Path-based Access Control\n"
-"........................."
+"-------------------------"
 msgstr ""
 "Controle de Acesso Baseado em Caminhos\n"
-"......................................"
+"--------------------------------------"
 
 msgid ""
 "Use the ``acl.deny`` and ``acl.allow`` sections to have path-based\n"
@@ -179,10 +186,10 @@
 
 msgid ""
 "Groups\n"
-"......"
+"------"
 msgstr ""
 "Grupos\n"
-"......"
+"------"
 
 msgid ""
 "Group names must be prefixed with an ``@`` symbol. Specifying a group\n"
@@ -205,10 +212,10 @@
 
 msgid ""
 "Example Configuration\n"
-"....................."
+"---------------------"
 msgstr ""
 "Exemplo de Configuração\n"
-"......................."
+"-----------------------"
 
 msgid "::"
 msgstr "::"
@@ -321,7 +328,7 @@
 "  # user6 will not have write access to any file:\n"
 "  ** = user6"
 msgstr ""
-"  # usuário6 não terá acesso a nenhum arquivo:\n"
+"  # usuário6 não terá acesso de escrita a nenhum arquivo:\n"
 "  ** = usuário6"
 
 msgid ""
@@ -382,9 +389,91 @@
 msgid "  .hgtags = release_engineer"
 msgstr "  .hgtags = release_engineer"
 
+msgid ""
+"Examples using the \"!\" prefix\n"
+"............................."
+msgstr ""
+"Exemplos usando o prefixo \"!\"\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 ""
+"Suponha que haja um ramo para o qual somente um dado usuário (ou grupo) seja capaz\n"
+"de enviar revisões, e você não quer restringir acesso a qualquer outro ramo que\n"
+"possa ser criado."
+
+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 ""
+"O prefixo \"!\" permite que você previna que qualquer um com exceção de um\n"
+"dado usuário ou grupo envie revisões em um certo ramo ou caminho."
+
+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 ""
+"No exemplo abaixo, nós iremos:\n"
+"1) Negar o acesso a um ramo \"ring\" a todos, menos ao usuário \"gollum\"\n"
+"2) Negar o acesso ao ramo \"lake\" a todos, menos aos membros do grupo \"hobbit\"\n"
+"3) Negar o acesso a um arquivo a todos, menos ao usuário \"gollum\""
+
+msgid ""
+"  [acl.allow.branches]\n"
+"  # Empty"
+msgstr ""
+"  [acl.allow.branches]\n"
+"  # Vazio"
+
+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) somente 'gollum' pode consolidar no ramo 'ring';\n"
+"  # 'gollum' e qualquer outro usuário ainda pode consolidar em\n"
+"  # qualquer outro ramo.\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) somente membros do grupo 'hobbit' podem consolidar em um ramo 'lake';\n"
+"  # membros do grupo 'hobbit' e qualquer outro usuário ainda podem consolidar\n"
+"  # em qualquer outro ramo.\n"
+"  lake = !@hobbit"
+
+msgid "  # You can also deny access based on file paths:"
+msgstr "  # Você também pode negar o acesso com base em caminhos de arquivo:"
+
+msgid ""
+"  [acl.allow]\n"
+"  # Empty"
+msgstr ""
+"  [acl.allow]\n"
+"  # Vazio"
+
+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"
+"  # 3) somente 'gollum' pode mudar o arquivo abaixo;\n"
+"  # 'gollum' e qualquer outro ainda pode mudar qualquer outro arquivo.\n"
+"  /misty/mountains/cave/ring = !gollum"
+
 #, python-format
 msgid "group '%s' is undefined"
-msgstr "O grupo '%s' não está definido"
+msgstr "o grupo '%s' não está definido"
 
 #, python-format
 msgid ""
@@ -1088,8 +1177,15 @@
 msgid "Bugzilla error: %s"
 msgstr "Erro do Bugzilla: %s"
 
-msgid "command to display child changesets"
-msgstr "comando para exibir revisões filhas"
+msgid "command to display child changesets (DEPRECATED)"
+msgstr "comando para exibir revisões filhas (OBSOLETO)"
+
+msgid ""
+"This extension is deprecated. You should use :hg:`log -r\n"
+"\"children(REV)\"` instead.\n"
+msgstr ""
+"Esta extensão é obsoleta. Você deve usar :hg:`log -r\n"
+"\"children(REV)\"` em seu lugar.\n"
 
 msgid "show the children of the given or working directory revision"
 msgstr "exibe os filhos da revisão pedida ou do diretório de trabalho"
@@ -1122,8 +1218,8 @@
 msgstr "comando para mostrar estatísticas do histórico do repositório"
 
 #, python-format
-msgid "Revision %d is a merge, ignoring...\n"
-msgstr "Revisão %d é uma mesclagem, ignorando...\n"
+msgid "revision %d is a merge, ignoring...\n"
+msgstr "a revisão %d é uma mesclagem, ignorando...\n"
 
 msgid "analyzing"
 msgstr "analisando"
@@ -1732,10 +1828,10 @@
 
 msgid ""
 "    Mercurial Source\n"
-"    ''''''''''''''''"
+"    ################"
 msgstr ""
 "    Origem Mercurial\n"
-"    ''''''''''''''''"
+"    ################"
 
 msgid ""
 "    The Mercurial source recognizes the following configuration\n"
@@ -1773,10 +1869,10 @@
 
 msgid ""
 "    CVS Source\n"
-"    ''''''''''"
+"    ##########"
 msgstr ""
 "    Origem CVS\n"
-"    ''''''''''"
+"    ##########"
 
 msgid ""
 "    CVS source will use a sandbox (i.e. a checked-out copy) from CVS\n"
@@ -1863,7 +1959,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 ""
@@ -1886,10 +1982,10 @@
 
 msgid ""
 "    Subversion Source\n"
-"    '''''''''''''''''"
+"    #################"
 msgstr ""
 "    Origem Subversion\n"
-"    '''''''''''''''''"
+"    #################"
 
 msgid ""
 "    Subversion source detects classical trunk/branches/tags layouts.\n"
@@ -1957,10 +2053,10 @@
 
 msgid ""
 "    Perforce Source\n"
-"    '''''''''''''''"
+"    ###############"
 msgstr ""
 "    Origem Perforce\n"
-"    '''''''''''''''"
+"    ###############"
 
 msgid ""
 "    The Perforce (P4) importer can be given a p4 depot path or a\n"
@@ -1994,10 +2090,10 @@
 
 msgid ""
 "    Mercurial Destination\n"
-"    '''''''''''''''''''''"
+"    #####################"
 msgstr ""
 "    Destino Mercurial\n"
-"    '''''''''''''''''"
+"    #################"
 
 msgid "    The following options are supported:"
 msgstr "    As seguintes opções são suportadas:"
@@ -2226,12 +2322,12 @@
 msgstr "nem todas as revisões foram ordenadas"
 
 #, python-format
-msgid "Writing author map file %s\n"
-msgstr "Escrevendo arquivo de mapeamento de autor %s\n"
-
-#, python-format
-msgid "Ignoring bad line in author map file %s: %s\n"
-msgstr "Ignorando linha inválida no arquivo de mapeamento de autor %s: %s\n"
+msgid "writing author map file %s\n"
+msgstr "escrevendo arquivo de mapeamento de autor %s\n"
+
+#, python-format
+msgid "ignoring bad line in author map file %s: %s\n"
+msgstr "ignorando linha inválida no arquivo de mapeamento de autor %s: %s\n"
 
 #, python-format
 msgid "mapping author %s to %s\n"
@@ -2552,6 +2648,10 @@
 msgid "collecting p4 changelists\n"
 msgstr "coletando changelists do p4\n"
 
+msgid "debugsvnlog could not load Subversion python bindings"
+msgstr ""
+"debugsvnlog: não foi possível carregar os módulos python do Subversion"
+
 msgid "Mercurial failed to run itself, check hg executable is in PATH"
 msgstr ""
 "Mercurial falhou ao executar a si próprio, veja se o executável hg está no "
@@ -2572,8 +2672,8 @@
 msgid "%s does not look like a Subversion repository"
 msgstr "%s não parece ser um repositório do Subversion"
 
-msgid "Could not load Subversion python bindings"
-msgstr "Não foi possível carregar os módulos python do Subversion"
+msgid "could not load Subversion python bindings"
+msgstr "não foi possível carregar os módulos python do Subversion"
 
 #, python-format
 msgid "Subversion python bindings %d.%d found, 1.4 or later required"
@@ -3172,8 +3272,8 @@
 msgid "factotum not responding"
 msgstr "factotum não está respondendo"
 
-msgid "pull, update and merge in one command"
-msgstr "pull, update e merge em um comando"
+msgid "pull, update and merge in one command (DEPRECATED)"
+msgstr "pull, update e merge em um comando (OBSOLETA)"
 
 msgid "pull changes from a remote repository, merge new changes if needed."
 msgstr "traz mudanças de um repositório remoto, mesclando se necessário"
@@ -3240,10 +3340,10 @@
 msgstr "trazendo revisões de %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 ""
-"O outro repositório não suporta busca por revisão, portanto uma revisão não "
+"o outro repositório não suporta busca por revisão, portanto uma revisão não "
 "pode ser especificada."
 
 #, python-format
@@ -3309,8 +3409,8 @@
 msgid "%s:%d node does not exist\n"
 msgstr "nó %s:%d não existe\n"
 
-msgid "hg sigcheck REVISION"
-msgstr "hg sigcheck REVISÃO"
+msgid "hg sigcheck REV"
+msgstr "hg sigcheck REV"
 
 msgid "verify all the signatures there may be for a particular revision"
 msgstr ""
@@ -3318,8 +3418,8 @@
 "particular"
 
 #, python-format
-msgid "No valid signature for %s\n"
-msgstr "Assinatura inválida para %s\n"
+msgid "no valid signature for %s\n"
+msgstr "nenhuma assinatura válida para %s\n"
 
 msgid "make the signature local"
 msgstr "torna a assinatura local"
@@ -3342,8 +3442,8 @@
 msgid "commit message"
 msgstr "mensagem de consolidação"
 
-msgid "hg sign [OPTION]... [REVISION]..."
-msgstr "hg sign [OPÇÃO]... [REVISÃO]..."
+msgid "hg sign [OPTION]... [REV]..."
+msgstr "hg sign [OPÇÃO]... [REV]..."
 
 msgid "add a signature for the current or given revision"
 msgstr "adiciona uma assinatura para a revisão atual ou pedida"
@@ -3368,8 +3468,8 @@
 msgstr "mesclagem não consolidada - por favor forneça uma revisão específica"
 
 #, python-format
-msgid "Signing %d:%s\n"
-msgstr "Assinando %d: %s\n"
+msgid "signing %d:%s\n"
+msgstr "assinando %d: %s\n"
 
 msgid "error while signing"
 msgstr "erro ao assinar"
@@ -3396,23 +3496,6 @@
 "outgoing e log. Quando esta opção for passada, também será mostrada\n"
 "uma representação ASCII do grafo de revisões.\n"
 
-#, python-format
-msgid "-G/--graph option is incompatible with --%s"
-msgstr "a opção -G/--graph é incompatível com --%s"
-
-#, python-format
-msgid "cannot follow file not in parent revision: \"%s\""
-msgstr "não é possível seguir arquivo não presente na revisão pai: \"%s\""
-
-#, python-format
-msgid "cannot follow nonexistent file: \"%s\""
-msgstr "não é possível seguir arquivo inexistente: \"%s\""
-
-msgid "can only follow copies/renames for explicit filenames"
-msgstr ""
-"é possível acompanhar cópias/renomeações apenas para nomes de arquivo "
-"explícitos"
-
 msgid "follow changeset history, or file history across copies and renames"
 msgstr ""
 "acompanha histórico de revisões, ou histórico de arquivo através de cópias e"
@@ -3482,9 +3565,6 @@
 "    trabalho.\n"
 "    "
 
-msgid "show the revision DAG"
-msgstr "mostra o grafo de revisões"
-
 msgid "hooks for integrating with the CIA.vc notification service"
 msgstr "ganchos para integração com o serviço de notificação CIA.vc"
 
@@ -3748,6 +3828,381 @@
 msgid "The default is 'colorful'.\n"
 msgstr "O padrão é 'colorful'.\n"
 
+msgid "interactive history editing"
+msgstr "edição interativa de histórico"
+
+msgid ""
+"With this extension installed, Mercurial gains one new command: histedit. Usage\n"
+"is as follows, assuming the following history::"
+msgstr ""
+"Com essa extensão instalada, o Mercurial ganha um novo comando: histedit.\n"
+"O uso é como a seguir, assumindo o seguinte histórico::"
+
+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 ""
+"Se você fosse rodar ``hg histedit c561b4e977df``, você veria o seguinte\n"
+"arquivo aberto no seu editor::"
+
+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"
+
+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"
+" #"
+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"
+" #"
+
+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 ""
+"Nesse arquivo, linhas que começam com ``#`` são ignoradas. Você deve\n"
+"especificar uma regra para cada revisão no seu histórico. Por exemplo,\n"
+"para alterar o histórico para adicionar gama antes de beta, e acrescentar\n"
+"delta na mesma revisão que beta, você reorganizaria o arquivo para ficar\n"
+"da seguinte forma:"
+
+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 ""
+"Em seguida, no momento em que você fechar o editor, o 'histedit'\n"
+"começará a funcionar.\n"
+"Quando você especificar a operação ``fold``(incorporar), ``histedit``\n"
+"abrirá um editor ao incorporar as revisões, oferecendo a você\n"
+"uma chance de limpar a mensagem de consolidação::"
+
+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 ""
+"Edite a mensagem de consolidação, e feche o editor.\n"
+"Para esse exemplo, vamos assumir que a mensagem\n"
+"foi mudada para ``Add beta and delta.``Depois que o histedit for\n"
+"executado, e tiver removido quaisquer revisões velhas ou temporárias\n"
+"de que necessitava, o histórico se parecerá com o seguinte::"
+
+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 ""
+"Note que ``histedit`` *não* remove qualquer revisão (até mesmo\n"
+"as temporárias) até completar todas as operações de edição, então\n"
+"provavelmente ele irá realizar diversas operações de remoção\n"
+"quando for terminado. Para o exemplo acima, ele teve que executar\n"
+"a remoção duas vezes. Dependendo de uma variedade de fatores, a\n"
+"remoção pode ser lenta, então você pode precisar ser um pouco\n"
+"paciente. Você pode escolher manter as revisões originais passando\n"
+"o parâmetro ``--keep``."
+
+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 ""
+"A operação de edição (``edit``) irá conduzi-lo de volta ao prompt de comando,\n"
+"permitindo que você edite arquivos livremente, ou mesmo use ``hg record``\n"
+"para consolidar algumas mudanças como uma consolidação separada. Quando\n"
+"você acabar, qualquer mudança restante não consolidada também será\n"
+"consolidada. Quando terminado, execute ``hg histedit --continue`` para\n"
+"finalizar essa etapa. Você será consultado interativamente para uma nova\n"
+"mensagem de consolidação, mas o texto da mensagem original será incluído\n"
+"na edição."
+
+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 ""
+"A operação de mensagem ( ``message``) irá dar a você a chance de\n"
+"revisar uma mensagem de consolidação sem mudar o conteúdo. É um\n"
+"atalho para fazer ``edit`` e imediatamente em seguida fazer\n"
+"``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 ""
+"Se ``histedit`` encontrar um conflito ao mover uma revisão\n"
+"(ao executar ``pick`` ou ``fold``), ela parará de uma maneira\n"
+"similar a ``edit``, mas não solicitará uma mensagem de consolidação\n"
+"ao encerrar. Se nesse ponto você mudar de ideia a respeito da\n"
+"reorganização do histórico, você pode usar ``hg histedit --abort``\n"
+"para abandonar as novas mudanças e retornar ao estado anterior\n"
+"à tentativa de edição de histórico."
+
+msgid ""
+"If we clone the example repository above and add three more changes, such that\n"
+"we have the following history::"
+msgstr ""
+"Se clonarmos o repositório de exemplo acima e adicionarmos mais\n"
+"três mudanças, de modo que tenhamos o seguinte histórico::"
+
+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 ""
+"Rodar ``hg histedit --outgoing`` no clone será o mesmo que rodar\n"
+"``hg histedit 836302820282``. Caso você pretenda enviar revisões para\n"
+"um repositório que o Mercurial detectar como não relacionado ao de\n"
+"origem, você pode adicionar uma opção ``--force``.\n"
+
+msgid "cannot edit history that would orphan nodes"
+msgstr "não é possível editar histórico de forma a produzir nós órfãos"
+
+msgid "can't edit history with merges"
+msgstr "não se pode editar histórico contendo mesclagens"
+
+#, python-format
+msgid "%s: empty changeset"
+msgstr "%s: revisão vazia"
+
+msgid "Fix up the change and run hg histedit --continue"
+msgstr "Conserte a mudança e execute 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 ""
+"Faça mudanças conforme for necessário, consolidando ou gravando usando record.\n"
+"Quando tiver terminado, execute hg histedit --continue para retomar."
+
+msgid "Read history edits from the specified file."
+msgstr "Lê alterações de histórico a partir do arquivo especificado."
+
+msgid "continue an edit already in progress"
+msgstr "continua uma edição em progresso"
+
+msgid "don't strip old nodes after edit is complete"
+msgstr "não remove nós antigos após o término da edição"
+
+msgid "abort an edit in progress"
+msgstr "aborta uma edição de histórico em andamento"
+
+msgid "changesets not found in destination"
+msgstr "revisões não encontradas no destino"
+
+msgid "force outgoing even for unrelated repositories"
+msgstr "força outgoing mesmo para repositórios não relacionados"
+
+msgid "first revision to be edited"
+msgstr "primeira revisão a ser editada"
+
+msgid "[PARENT]"
+msgstr "[PAI]"
+
+msgid ""
+"interactively edit changeset history\n"
+"    "
+msgstr ""
+"edição interativa de histórico de revisões\n"
+"    "
+
+msgid "source has mq patches applied"
+msgstr "a origem tem patches mq aplicados"
+
+msgid "only one repo argument allowed with --outgoing"
+msgstr "apenas um repositório pode ser usado com --outgoing"
+
+#, python-format
+msgid "comparing with %s\n"
+msgstr "comparando com %s\n"
+
+msgid "--force only allowed with --outgoing"
+msgstr "--force só é permitido com --outgoing"
+
+msgid "no arguments allowed with --continue"
+msgstr "--continue não recebe argumentos adicionais"
+
+msgid "no arguments allowed with --abort"
+msgstr "--abort não recebe argumentos adicionais"
+
+msgid "history edit already in progress, try --continue or --abort"
+msgstr ""
+"uma edição de histórico já está em progresso, tente --continue ou --abort"
+
+msgid "histedit requires exactly one parent revision"
+msgstr "histedit requer exatamente uma revisão pai"
+
+msgid "histedit: Should update metadata for the following changes:\n"
+msgstr "histedit: Deve atualizar metadados para as seguintes mudanças:\n"
+
+#, python-format
+msgid "histedit:  %s to %s\n"
+msgstr "histedit:  %s a %s\n"
+
+#, python-format
+msgid "histedit:     moving bookmarks %s\n"
+msgstr "histedit:     movendo marcadores %s\n"
+
+msgid "must specify a rule for each changeset once"
+msgstr "é necessário especificar uma vez uma regra para cada revisão"
+
+#, python-format
+msgid "malformed line \"%s\""
+msgstr "linha malformada \"%s\""
+
+msgid "may not use changesets other than the ones listed"
+msgstr "não é possível usar revisões além das listadas"
+
+#, python-format
+msgid "unknown changeset %s listed"
+msgstr "revisão desconhecida %s listada"
+
+#, python-format
+msgid "unknown action \"%s\""
+msgstr "ação desconhecida \"%s\""
+
 msgid "accelerate status report using Linux's inotify service"
 msgstr "acelera informações de status usando o serviço inotify do Linux"
 
@@ -4573,6 +5028,14 @@
 msgid "largefile %s missing from store (needs to be uploaded)"
 msgstr "o largefile %s está faltando no repositório (deve ser enviado)"
 
+#, python-format
+msgid "%d additional largefiles cached\n"
+msgstr "%d largefiles adicionados ao cache\n"
+
+#, python-format
+msgid "%d largefiles failed to download\n"
+msgstr "o download de %d largefiles falhou\n"
+
 msgid "getting changed largefiles\n"
 msgstr "obtendo largefiles modificados\n"
 
@@ -4605,15 +5068,15 @@
 msgstr "sistema operacional desconhecido: %s\n"
 
 #, python-format
-msgid "Found %s in store\n"
-msgstr "Encontrado %s no armazenamento\n"
-
-#, python-format
-msgid "Found %s in system cache\n"
-msgstr "Encontrado %s no cache do sistema\n"
-
-msgid "Can't get file locally"
-msgstr "Não é possível obter o arquivo localmente"
+msgid "found %s in store\n"
+msgstr "encontrado %s no armazenamento\n"
+
+#, python-format
+msgid "found %s in system cache\n"
+msgstr "encontrado %s no cache do sistema\n"
+
+msgid "can't get file locally"
+msgstr "não é possível obter o arquivo localmente"
 
 #, python-format
 msgid ""
@@ -4713,12 +5176,12 @@
 msgid "&Other"
 msgstr "&Outra"
 
+msgid "no files to copy"
+msgstr "nenhum arquivo para copiar"
+
 msgid "destination largefile already exists"
 msgstr "largefile de destino já existe"
 
-msgid "no files to copy"
-msgstr "nenhum arquivo para copiar"
-
 msgid "caching new largefiles\n"
 msgstr "adicionando novos largefiles ao cache\n"
 
@@ -4727,6 +5190,10 @@
 msgstr "%d largefiles adicionados ao cache\n"
 
 #, python-format
+msgid "--all-largefiles is incompatible with non-local destination %s"
+msgstr "--all-largefiles é incompatível com um destino não-local %s"
+
+#, python-format
 msgid "unknown archive type '%s'"
 msgstr "tipo de arquivo '%s' desconhecido"
 
@@ -4844,6 +5311,12 @@
 msgid "display outgoing largefiles"
 msgstr "exibe largefiles a serem enviados"
 
+msgid "download all pulled versions of largefiles"
+msgstr "baixa todas as versões trazidas dos largefiles"
+
+msgid "download all versions of all largefiles"
+msgstr "baixa todas as versões de todos os largefiles"
+
 msgid "manage a stack of patches"
 msgstr "gerencia uma pilha de patches"
 
@@ -4937,10 +5410,36 @@
 
 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 ""
 "Você gerenciará por padrão uma fila de patches chamada \"patches\". Você\n"
-"pode criar outras filas independentes usando o comando :hg:`qqueue`.\n"
+"pode criar outras filas independentes usando o comando :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 ""
+"Se o diretório de trabalho contiver mudanças não consolidadas,\n"
+"qpush, qpop e qgoto abortam imediatamente. Se for usado -f/--force,\n"
+"essas mudanças serão descartadas. A definição::"
+
+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 ""
+"faz com que esses comandos se comportem como se --keep-changes\n"
+"tivesse sido passada, e mudanças locais não conflitantes serão\n"
+"toleradas e preservadas. Se forem passadas mudanças incompatíveis\n"
+"como -f/--force ou --exact, esta configuração será ignorada.\n"
 
 msgid "print first line of patch header"
 msgstr "imprime a primeira linha do cabeçalho do patch"
@@ -5042,6 +5541,9 @@
 msgid "unable to read %s\n"
 msgstr "impossível ler %s\n"
 
+msgid "local changes found, refresh first"
+msgstr "mudanças locais encontradas, você deve primeiro renovar"
+
 #, python-format
 msgid "patch %s is empty\n"
 msgstr "o patch %s é vazio\n"
@@ -5099,9 +5601,6 @@
 msgid "uncommitted changes in subrepository %s"
 msgstr "mudanças não consolidadas no sub-repositório %s"
 
-msgid "local changes found, refresh first"
-msgstr "mudanças locais encontradas, você deve primeiro renovar"
-
 msgid "local changes found"
 msgstr "mudanças locais encontradas"
 
@@ -5125,6 +5624,9 @@
 msgid "patch \"%s\" already exists"
 msgstr "o patch \"%s\" já existe"
 
+msgid "cannot use both --force and --keep-changes"
+msgstr "não se pode especificar --force e --keep-changes simultaneamente"
+
 msgid "cannot manage merge changesets"
 msgstr "não se pode gerenciar revisões de mesclagem"
 
@@ -5175,8 +5677,11 @@
 msgid "patch series already fully applied\n"
 msgstr "série de patches já completamente aplicada\n"
 
+msgid "cannot use --exact and --keep-changes together"
+msgstr "não se pode especificar --exact e --keep-changes simultaneamente"
+
 msgid "cannot use --exact and --move together"
-msgstr "não se pode usar --exact e --move ao mesmo tempo"
+msgstr "não se pode especificar --exact e --move simultaneamente"
 
 msgid "cannot push --exact with applied patches"
 msgstr "não se pode fazer qpush usando --exact com patches aplicados"
@@ -5257,8 +5762,8 @@
 msgid "patch %s is not in series file"
 msgstr "o patch %s não está no arquivo series"
 
-msgid "No saved patch data found\n"
-msgstr "Nenhum dado salvo de patches encontrado\n"
+msgid "no saved patch data found\n"
+msgstr "nenhum dado salvo de patches encontrado\n"
 
 #, python-format
 msgid "restoring status: %s\n"
@@ -5278,8 +5783,8 @@
 msgid "updating queue directory\n"
 msgstr "atualizando diretório da fila\n"
 
-msgid "Unable to load queue repository\n"
-msgstr "Incapaz de carregar o repositório da fila\n"
+msgid "unable to load queue repository\n"
+msgstr "incapaz de carregar o repositório da fila\n"
 
 msgid "save: no patches applied, exiting\n"
 msgstr "save: nenhum patch aplicado, saindo\n"
@@ -5300,6 +5805,9 @@
 msgid "option \"-r\" not valid when importing files"
 msgstr "opção \"-r\" inválida ao importar arquivos"
 
+msgid "no files or revisions specified"
+msgstr "nenhuma revisão ou arquivo especificados"
+
 msgid "option \"-n\" not valid when importing multiple patches"
 msgstr "opção \"-n\" inválida ao importar múltiplos patches"
 
@@ -5430,8 +5938,8 @@
 msgid "qpush after importing"
 msgstr "executa qpush após importar"
 
-msgid "hg qimport [-e] [-n NAME] [-f] [-g] [-P] [-r REV]... FILE..."
-msgstr "hg qimport [-e] [-n NOME] [-f] [-g] [-P] [-r REV]... ARQUIVO..."
+msgid "hg qimport [-e] [-n NAME] [-f] [-g] [-P] [-r REV]... [FILE]..."
+msgstr "hg qimport [-e] [-n NOME] [-f] [-g] [-P] [-r REV]... [ARQUIVO]..."
 
 msgid "import a patch or existing changeset"
 msgstr "importa um patch ou revisão existente"
@@ -5845,8 +6353,8 @@
 msgstr "qfold requer ao menos um nome de patch"
 
 #, python-format
-msgid "Skipping already folded patch %s\n"
-msgstr "Omitindo patch %s já incorporado\n"
+msgid "skipping already folded patch %s\n"
+msgstr "omitindo patch %s já incorporado\n"
 
 #, python-format
 msgid "qfold cannot fold already applied patch %s"
@@ -5856,6 +6364,9 @@
 msgid "error folding patch %s"
 msgstr "erro incorporando patch %s"
 
+msgid "tolerate non-conflicting local changes"
+msgstr "tolera alterações locais não conflitantes"
+
 msgid "overwrite any local changes"
 msgstr "sobrescreve qualquer alteração local"
 
@@ -5958,11 +6469,16 @@
 msgstr "empilha o próximo patch na pilha"
 
 msgid ""
-"    When -f/--force is applied, all local changes in patched files\n"
-"    will be lost."
-msgstr ""
-"    Se -f/--force for pedido, todas as mudanças locais em arquivos\n"
-"    modificados pelo patch serão perdidas."
+"    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 ""
+"    Por padrão, aborta se o diretório de trabalho contiver mudanças\n"
+"    não consolidadas. Com a opção --keep-changes, aborta apenas se as\n"
+"    mudanças não consolidadas se sobrepõe a arquivos no patch. Com\n"
+"    -f/--force, cria uma cópia de segurança e sobrescreve as mudanças\n"
+"    não consolidadas."
 
 msgid "no saved queues found, please use -n\n"
 msgstr "nenhuma fila salva encontrada, por favor use -n\n"
@@ -5987,14 +6503,26 @@
 msgstr "desempilha o patch atual da pilha"
 
 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 ""
-"    Por padrão, desempilha o topo da pilha de patches. Se for\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 ""
+"    Sem parâmetros, desempilha o topo da pilha de patches. Se for\n"
 "    passado um nome, desempilha sucessivamente os patches até que\n"
 "    o patch com esse nome esteja no topo da pilha."
 
+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 ""
+"    Por padrão, aborta se o diretório de trabalho contiver mudanças\n"
+"    não consolidadas. Com a opção --keep-changes, aborta apenas se as\n"
+"    mudanças não consolidadas se sobrepõem a arquivos no patch. Com\n"
+"    -f/--force, cria uma cópia de segurança e descarta as mudanças\n"
+"    desses arquivos."
+
 #, python-format
 msgid "using patch queue: %s\n"
 msgstr "usando fila de patches: %s\n"
@@ -6087,8 +6615,11 @@
 msgid "do not modify working copy during strip"
 msgstr "não modifica a cópia de trabalho durante o strip"
 
-msgid "hg strip [-k] [-f] [-n] REV..."
-msgstr "hg strip [-k] [-f] [-n] REV..."
+msgid "remove revs only reachable from given bookmark"
+msgstr "remove revisões alcançáveis apenas pelo marcador dado"
+
+msgid "hg strip [-k] [-f] [-n] [-B bookmark] [-r] REV..."
+msgstr "hg strip [-k] [-f] [-n] [-B marcador] [-r] REV..."
 
 msgid "strip changesets and all their descendants from the repository"
 msgstr "remove do repositório revisões e todos os seus descendentes"
@@ -6148,6 +6679,14 @@
 "    tiverem sido enviadas para um repositório remoto, um comando pull\n"
 "    subsequente poderá trazê-las de volta."
 
+#, python-format
+msgid "bookmark '%s' not found"
+msgstr "marcador '%s' não encontrado"
+
+#, python-format
+msgid "bookmark '%s' deleted\n"
+msgstr "marcador '%s' apagado\n"
+
 msgid "empty revision set"
 msgstr "conjunto vazio de revisões"
 
@@ -6405,16 +6944,13 @@
 msgid "cannot commit over an applied mq patch"
 msgstr "não se pode consolidar sobre um patch mq aplicado"
 
-msgid "source has mq patches applied"
-msgstr "a origem tem patches mq aplicados"
-
 #, python-format
 msgid "mq status file refers to unknown node %s\n"
 msgstr "arquivo de estado da mq se refere ao nó desconhecido %s\n"
 
 #, python-format
-msgid "Tag %s overrides mq patch of the same name\n"
-msgstr "A etiqueta %s se sobrepõe ao patch mq de mesmo nome\n"
+msgid "tag %s overrides mq patch of the same name\n"
+msgstr "a etiqueta %s se sobrepõe ao patch mq de mesmo nome\n"
 
 msgid "cannot import over an applied patch"
 msgstr "não se pode importar sobre um patch aplicado"
@@ -6771,10 +7307,10 @@
 
 msgid ""
 "  [pager]\n"
-"  pager = less -FRSX"
+"  pager = less -FRX"
 msgstr ""
 "  [pager]\n"
-"  pager = less -FRSX"
+"  pager = less -FRX"
 
 msgid ""
 "If no pager is set, the pager extensions uses the environment variable\n"
@@ -7191,10 +7727,6 @@
 "    seu hgrc. Veja a seção [email] em hgrc(5) para mais detalhes.\n"
 "    "
 
-#, python-format
-msgid "comparing with %s\n"
-msgstr "comparando com %s\n"
-
 msgid "no changes found\n"
 msgstr "nenhuma alteração encontrada\n"
 
@@ -7219,8 +7751,8 @@
 "Escreva a mensagem introdutória para a série de patches."
 
 #, python-format
-msgid "This patch series consists of %d patches."
-msgstr "Esta série de patches consiste de %d patches."
+msgid "this patch series consists of %d patches."
+msgstr "esta série de patches consiste de %d patches."
 
 msgid "no recipient addresses provided"
 msgstr "nenhum endereço de destinatário fornecido"
@@ -7244,11 +7776,11 @@
 msgid "patchbomb canceled"
 msgstr "patchbomb cancelado"
 
-msgid "Displaying "
-msgstr "Exibindo "
-
-msgid "Sending "
-msgstr "Enviando "
+msgid "displaying "
+msgstr "exibindo "
+
+msgid "sending "
+msgstr "enviando "
 
 msgid "sending"
 msgstr "enviando"
@@ -7437,12 +7969,12 @@
 msgstr "aviso: %s\n"
 
 #, python-format
-msgid "Removing file %s\n"
-msgstr "Removendo arquivo %s\n"
-
-#, python-format
-msgid "Removing directory %s\n"
-msgstr "Removendo diretório %s\n"
+msgid "removing file %s\n"
+msgstr "removendo arquivo %s\n"
+
+#, python-format
+msgid "removing directory %s\n"
+msgstr "removendo diretório %s\n"
 
 msgid "command to move sets of revisions to a different ancestor"
 msgstr "comando para mover conjuntos de revisões para um ancestral diferente"
@@ -7495,8 +8027,8 @@
 msgid "keep original branch names"
 msgstr "mantém nomes de ramos originais"
 
-msgid "force detaching of source from its original branch"
-msgstr "força desacoplamento da origem de seu ramo original"
+msgid "(DEPRECATED)"
+msgstr "(OBSOLETA)"
 
 msgid "specify merge tool"
 msgstr "especifica o utilitário de mesclagem"
@@ -7630,9 +8162,6 @@
 msgid "cannot use collapse with continue or abort"
 msgstr "não se pode usar collapse com continue ou abort"
 
-msgid "cannot use detach with continue or abort"
-msgstr "não se pode usar detach com continue ou abort"
-
 msgid "abort and continue do not allow specifying revisions"
 msgstr "abort e continue não permitem especificar revisões"
 
@@ -7648,12 +8177,6 @@
 msgid "cannot specify both a revision and a source"
 msgstr "não se pode especificar ao mesmo tempo uma revisão e uma origem"
 
-msgid "detach requires a revision to be specified"
-msgstr "detach exige que uma revisão seja especificada"
-
-msgid "cannot specify a base with detach"
-msgstr "não se pode especificar base com detach"
-
 msgid "can't remove original changesets with unrebased descendants"
 msgstr ""
 "não é possível remover revisões originais que tenham descendentes não "
@@ -8005,9 +8528,6 @@
 msgid "hardlinks are not supported on this system"
 msgstr "hardlinks não são suportados neste sistema"
 
-msgid "must specify local origin repository"
-msgstr "é necessário especificar um repositório de origem local"
-
 #, python-format
 msgid "relinking %s to %s\n"
 msgstr "restaurando hardlinks de %s para %s\n"
@@ -8231,10 +8751,6 @@
 msgid "can only omit patchfile if merging"
 msgstr "só é possível omitir arquivo de patch em uma mesclagem"
 
-#, python-format
-msgid "%s: empty changeset"
-msgstr "%s: revisão vazia"
-
 msgid "fix up the merge and run hg transplant --continue"
 msgstr "conserte a mesclagem e execute hg transplant --continue"
 
@@ -8360,11 +8876,11 @@
 "    transplantadas serão pedidas interativamente."
 
 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 REVISÃO --all` irá transplantar o ramo\n"
+"    :hg:`transplant --branch REV --all` irá transplantar o ramo\n"
 "    selecionado (até a revisão pedida) no seu diretório de trabalho\n"
 "    atual."
 
@@ -8614,9 +9130,9 @@
 "Mercurial.ini ou %s.\n"
 
 #, python-format
-msgid "Attempt to commit or push text file(s) using %s line endings\n"
-msgstr ""
-"Tentativa de consolidação ou push de arquivo(s) texto usando quebras de "
+msgid "attempt to commit or push text file(s) using %s line endings\n"
+msgstr ""
+"tentativa de consolidação ou push de arquivo(s) texto usando quebras de "
 "linha %s\n"
 
 #, python-format
@@ -8729,6 +9245,10 @@
 msgid "divergent bookmark %s stored as %s\n"
 msgstr "marcador divergente %s guardado como %s\n"
 
+#, python-format
+msgid "adding remote bookmark %s\n"
+msgstr "adicionando marcador remoto %s\n"
+
 msgid "searching for changed bookmarks\n"
 msgstr "procurando por marcadores modificados\n"
 
@@ -8944,13 +9464,30 @@
 msgstr "%s: nenhuma chave nomeada '%s'"
 
 #, python-format
-msgid "Found revision %s from %s\n"
-msgstr "Encontrada revisão %s de %s\n"
+msgid "found revision %s from %s\n"
+msgstr "encontrada revisão %s de %s\n"
 
 msgid "revision matching date not found"
 msgstr "revisão com data equivalente não encontrada"
 
 #, python-format
+msgid "cannot follow file not in parent revision: \"%s\""
+msgstr "não é possível seguir arquivo não presente na revisão pai: \"%s\""
+
+#, python-format
+msgid "cannot follow nonexistent file: \"%s\""
+msgstr "não é possível seguir arquivo inexistente: \"%s\""
+
+msgid "can only follow copies/renames for explicit filenames"
+msgstr ""
+"é possível acompanhar cópias/renomeações apenas para nomes de arquivo "
+"explícitos"
+
+#, python-format
+msgid "-G/--graph option is incompatible with --%s"
+msgstr "a opção -G/--graph é incompatível com --%s"
+
+#, python-format
 msgid "adding %s\n"
 msgstr "adicionando %s\n"
 
@@ -9148,6 +9685,9 @@
 msgid "output diffstat-style summary of changes"
 msgstr "imprime sumário de mudanças no estilo diffstat"
 
+msgid "show the revision DAG"
+msgstr "mostra o grafo de revisões"
+
 msgid "treat all files as text"
 msgstr "trata todos os arquivos como texto"
 
@@ -9254,25 +9794,27 @@
 "    próxima consolidação."
 
 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 ""
 "    Use a opção -s/--similarity para detectar arquivos renomeados.\n"
-"    Com um parâmetro maior do que 0, compara cada arquivo removido com cada\n"
+"    Esta opção recebe como parâmetro uma porcentagem entre 0\n"
+"    (desabilitada) e 100 (arquivos devem ser idênticos).    Com um parâmetro maior do que 0, compara cada arquivo removido com cada\n"
 "    arquivo adicionado e grava como renomeações aqueles semelhantes o\n"
-"    bastante. Esta opção usa uma porcentagem entre 0 (desabilitada)\n"
-"    e 100 (arquivos devem ser idênticos) como parâmetro. Detectar\n"
+"    bastante.  Detectar\n"
 "    desta maneira arquivos renomeados pode ser uma operação cara.\n"
 "    Após o uso dessa opção, :hg:`status -C` pode ser usado para\n"
 "    verificar quais arquivos foram identificados como movidos ou\n"
-"    renomeados. Se esta opção não for especificada, apenas\n"
+"    renomeados.\n"
+"    Se -s/--similarity não for especificada, seu valor será 100,\n"
+"    de modo que apenas\n"
 "    renomeações idênticas aos originais serão detectadas."
 
 msgid "similarity must be a number"
@@ -9590,13 +10132,17 @@
 
 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."
+"    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 ""
 "    Se você fornecer um comando ele será usado para bissecção\n"
-"    automática. Seu código de saída será usado para marcar revisões\n"
+"    automática. A variável de ambiente HG_NODE conterá o ID da\n"
+"    revisão sendo testada. O código de saída do comando\n"
+"    será usado para marcar revisões\n"
 "    como boas ou ruins: o código de saída 0 marcará a revisão como\n"
 "    boa, 125 omitirá a revisão, 127 (comando não encontrado)\n"
 "    abortará a bissecção, e qualquer outro código maior que 0\n"
@@ -9680,6 +10226,16 @@
 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 ""
+"      - mostra a revisão sendo bisseccionada no momento (especialmente\n"
+"        útil ao rodar com -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 "      - mostra todas as revisões que tomam parte na bissecção atual::"
 
@@ -9730,11 +10286,19 @@
 msgstr "não é possível fazer o bisect (nenhuma revisão ruim conhecida)"
 
 msgid "(use of 'hg bisect <cmd>' is deprecated)\n"
-msgstr "(uso 'hg bisect <cmd>' é obsoleto)\n"
+msgstr "(o uso 'hg bisect <cmd>' é obsoleto)\n"
 
 msgid "incompatible arguments"
 msgstr "argumentos incompatíveis"
 
+msgid "current bisect revision is unknown - start a new bisect to fix"
+msgstr ""
+"a revisão biseccionada atual é desconhecida - para corrigir inicie uma nova "
+"bissecção"
+
+msgid "current bisect revision is a merge"
+msgstr "a revisão biseccionada atual é uma mesclagem"
+
 #, python-format
 msgid "failed to execute %s"
 msgstr "falhou ao executar %s"
@@ -9744,8 +10308,8 @@
 msgstr "%s morto"
 
 #, python-format
-msgid "Changeset %d:%s: %s\n"
-msgstr "Revisão %d:%s: %s\n"
+msgid "changeset %d:%s: %s\n"
+msgstr "revisão %d:%s: %s\n"
 
 #, python-format
 msgid "Extending search to changeset %d:%s\n"
@@ -10735,15 +11299,15 @@
 msgstr "testa a instalação do Mercurial"
 
 #, python-format
-msgid "Checking encoding (%s)...\n"
-msgstr "Verificando codificação (%s)...\n"
+msgid "checking encoding (%s)...\n"
+msgstr "verificando codificação (%s)...\n"
 
 msgid " (check that your locale is properly set)\n"
 msgstr " (verifique se seu locale está configurado propriamente)\n"
 
 #, python-format
-msgid "Checking installed modules (%s)...\n"
-msgstr "Verificando módulos instalados (%s)...\n"
+msgid "checking installed modules (%s)...\n"
+msgstr "verificando módulos instalados (%s)...\n"
 
 msgid " One or more extensions could not be found"
 msgstr " Uma ou mais extensões não puderam ser encontradas"
@@ -10752,14 +11316,14 @@
 msgstr " (verifique se você compilou as extensões)\n"
 
 #, python-format
-msgid "Checking templates (%s)...\n"
-msgstr "Verificando modelos (%s)...\n"
+msgid "checking templates (%s)...\n"
+msgstr "verificando modelos (%s)...\n"
 
 msgid " (templates seem to have been installed incorrectly)\n"
 msgstr " (modelos parecem ter sido instalados incorretamente)\n"
 
-msgid "Checking commit editor...\n"
-msgstr "Verificando editor para consolidação...\n"
+msgid "checking commit editor...\n"
+msgstr "verificando editor para consolidação...\n"
 
 msgid " No commit editor set and can't find vi in PATH\n"
 msgstr ""
@@ -10774,14 +11338,14 @@
 msgid " Can't find editor '%s' in PATH\n"
 msgstr " Não é possível localizar editor '%s' no PATH\n"
 
-msgid "Checking username...\n"
-msgstr "Verificando nome de usuário...\n"
+msgid "checking username...\n"
+msgstr "verificando nome de usuário...\n"
 
 msgid " (specify a username in your configuration file)\n"
 msgstr " (especifique um nome de usuário em seu arquivo de configuração)\n"
 
-msgid "No problems detected\n"
-msgstr "Nenhum problema detectado\n"
+msgid "no problems detected\n"
+msgstr "nenhum problema detectado\n"
 
 #, python-format
 msgid "%s problems detected, please check your install!\n"
@@ -10794,8 +11358,8 @@
 msgstr "testa se os ids dos nós são conhecidos em um repositório"
 
 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 ""
 "    Todo ID deve ser uma string hexadecimal completa.\n"
@@ -10803,6 +11367,12 @@
 "    desconhecidos e conhecidos.\n"
 "    "
 
+msgid "[OBSOLETED [REPLACEMENT] [REPL... ]"
+msgstr "[OBSOLETA [SUBSTITUTA] [SUBSTITUTA... ]"
+
+msgid "create arbitrary obsolete marker"
+msgstr "cria uma marcação de obsolescência arbitrária"
+
 msgid "REPO NAMESPACE [KEY OLD NEW]"
 msgstr "REPOSITÓRIO NAMESPACE [CHAVE ANTIGO NOVO]"
 
@@ -11025,8 +11595,8 @@
 msgid "revisions to export"
 msgstr "revisões a serem exportadas"
 
-msgid "[OPTION]... [-o OUTFILESPEC] REV..."
-msgstr "[OPÇÃO]... [-o PADRÃOARQSAÍDA] REV..."
+msgid "[OPTION]... [-o OUTFILESPEC] [-r] REV..."
+msgstr "[OPÇÃO]... [-o PADRÃOARQSAÍDA] [-r] REV..."
 
 msgid "dump the header and diffs for one or more changesets"
 msgstr "exibe o cabeçalho e diffs para uma ou mais revisões"
@@ -11181,17 +11751,23 @@
 msgid "          hg forget \"set:hgignore()\""
 msgstr "          hg forget \"set:hgignore()\""
 
+msgid "revisions to graft"
+msgstr "revisões a serem enxertadas"
+
 msgid "resume interrupted graft"
 msgstr "continua um enxerto interrompido"
 
+msgid "append graft info to log message"
+msgstr "anexa informações de enxerto à mensagem de log"
+
 msgid "record the current date as commit date"
 msgstr "grava a data atual como data da consolidação"
 
 msgid "record the current user as committer"
 msgstr "grava o usuário atual como autor da consolidação"
 
-msgid "[OPTION]... REVISION..."
-msgstr "[OPÇÃO]... REVISÃO..."
+msgid "[OPTION]... [-r] REV..."
+msgstr "[OPÇÃO]... [-r] REV..."
 
 msgid "copy changes from other branches onto the current branch"
 msgstr "copia mudanças de outros ramos para o ramo atual"
@@ -11217,6 +11793,9 @@
 "    Serão omitidas revisões ancestrais da revisão atual, já\n"
 "    enxertadas ou mesclagens."
 
+msgid "      (grafted from CHANGESETHASH)"
+msgstr "      (grafted from CHANGESETHASH)"
+
 msgid ""
 "    If a graft merge results in conflicts, the graft process is\n"
 "    interrupted so that the current merge can be manually resolved.\n"
@@ -11312,6 +11891,10 @@
 msgid "use hg resolve and hg graft --continue"
 msgstr "use hg resolve e hg graft --continue"
 
+#, python-format
+msgid "graft for revision %s is empty\n"
+msgstr "o enxerto para a revisão %s é vazio\n"
+
 msgid "end fields with NUL"
 msgstr "termina campos com NUL"
 
@@ -11466,6 +12049,9 @@
 msgid "show only help for commands"
 msgstr "mostra apenas a ajuda para comandos"
 
+msgid "show topics matching keyword"
+msgstr "mostra os tópicos que correspondem à palavra chave"
+
 msgid "[-ec] [TOPIC]"
 msgstr "[-ec] [TÓPICO]"
 
@@ -11492,42 +12078,6 @@
 "    Devolve 0 para indicar sucesso.\n"
 "    "
 
-msgid "VALUE"
-msgstr "VALOR"
-
-msgid "DEPRECATED"
-msgstr "OBSOLETO"
-
-msgid ""
-"\n"
-"[+] marked option can be specified multiple times\n"
-msgstr ""
-"\n"
-"opções marcadas com [+] podem ser especificadas múltiplas vezes\n"
-
-msgid "global options:"
-msgstr "opções globais:"
-
-msgid "use \"hg help\" for the full list of commands"
-msgstr "use \"hg help\" para a lista completa de comandos"
-
-msgid "use \"hg help\" for the full list of commands or \"hg -v\" for details"
-msgstr "use \"hg help\" para a lista completa de comandos ou \"hg -v\" para detalhes"
-
-#, python-format
-msgid "use \"hg help %s\" to show the full help text"
-msgstr "use \"hg help %s\" para mostrar o texto completo de ajuda"
-
-#, python-format
-msgid "use \"hg -v help%s\" to show builtin aliases and global options"
-msgstr ""
-"use \"hg -v help%s\" para mostrar apelidos pré-definidos de comandos e "
-"opções globais"
-
-#, python-format
-msgid "use \"hg -v help %s\" to show more info"
-msgstr "use \"hg -v help %s\" para mostrar mais informações"
-
 #, python-format
 msgid ""
 "\n"
@@ -11562,6 +12112,9 @@
 msgid "options:"
 msgstr "opções:"
 
+msgid "global options:"
+msgstr "opções globais:"
+
 #, python-format
 msgid ""
 "\n"
@@ -11597,6 +12150,22 @@
 "\n"
 "tópicos adicionais de ajuda:"
 
+msgid "use \"hg help\" for the full list of commands"
+msgstr "use \"hg help\" para a lista completa de comandos"
+
+msgid "use \"hg help\" for the full list of commands or \"hg -v\" for details"
+msgstr "use \"hg help\" para a lista completa de comandos ou \"hg -v\" para detalhes"
+
+#, python-format
+msgid "use \"hg help %s\" to show the full help text"
+msgstr "use \"hg help %s\" para mostrar o texto completo de ajuda"
+
+#, python-format
+msgid "use \"hg -v help%s\" to show builtin aliases and global options"
+msgstr ""
+"use \"hg -v help%s\" para mostrar apelidos pré-definidos de comandos e "
+"opções globais"
+
 #, python-format
 msgid ""
 "\n"
@@ -11620,6 +12189,12 @@
 msgid "'%s' is provided by the following extension:"
 msgstr "'%s' é fornecido pela seguinte extensão:"
 
+msgid "Topics"
+msgstr "Tópicos"
+
+msgid "Extension Commands"
+msgstr "Comandos de Extensões"
+
 msgid "Mercurial Distributed SCM\n"
 msgstr "Sistema de controle de versão distribuído Mercurial\n"
 
@@ -12270,6 +12845,23 @@
 "    Devolve 0 para indicar sucesso, 1 se houver arquivos não resolvidos.\n"
 "    "
 
+msgid ""
+"multiple matching bookmarks to merge - please merge with an explicit rev or "
+"bookmark"
+msgstr ""
+"múltiplos marcadores para mesclar - por favor mescle com uma revisão ou "
+"marcador explícitos"
+
+msgid "run 'hg heads' to see all heads"
+msgstr "execute 'hg heads' para ver todas as cabeças"
+
+msgid ""
+"no matching bookmark to merge - please merge with an explicit rev or "
+"bookmark"
+msgstr ""
+"nenhum marcador correspondente para mesclar - por favor mescle com uma "
+"revisão ou marcador explícitos"
+
 #, python-format
 msgid "branch '%s' has %d heads - please merge with an explicit rev"
 msgstr ""
@@ -12278,15 +12870,17 @@
 msgid "run 'hg heads .' to see heads"
 msgstr "execute 'hg heads .' para ver as cabeças"
 
+msgid "heads are bookmarked - please merge with an explicit rev"
+msgstr ""
+"as cabeças estão marcadas com bookmarks - por favor mescle com uma revisão "
+"explícita"
+
 #, python-format
 msgid "branch '%s' has one head - please merge with an explicit rev"
 msgstr ""
 "o ramo '%s' tem apenas uma cabeça - por favor mescle com uma revisão "
 "explícita"
 
-msgid "run 'hg heads' to see all heads"
-msgstr "execute 'hg heads' para ver todas as cabeças"
-
 msgid "nothing to merge"
 msgstr "nada para mesclar"
 
@@ -12564,13 +13158,6 @@
 msgid "remote bookmark %s not found!"
 msgstr "marcador remoto %s não encontrado!"
 
-msgid ""
-"other repository doesn't support revision lookup, so a rev cannot be "
-"specified."
-msgstr ""
-"o outro repositório não suporta busca por revisão, portanto uma revisão não "
-"pode ser especificada."
-
 #, python-format
 msgid "importing bookmark %s\n"
 msgstr "importando marcador %s\n"
@@ -12638,6 +13225,15 @@
 "    ancestrais serão enviados para o repositório remoto."
 
 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 ""
+"    Se -B/--bookmark for usado, a revisão marcada especificada, seus\n"
+"    ancestrais, e o próprio marcador serão enviados para o repositório\n"
+"    remoto."
+
+msgid ""
 "    Please see :hg:`help urls` for important details about ``ssh://``\n"
 "    URLs. If DESTINATION is omitted, a default path will be used."
 msgstr ""
@@ -12952,15 +13548,17 @@
 msgstr ""
 "restaura arquivos para o estado correspondente a uma cópia de trabalho"
 
-msgid ""
-"    .. note::\n"
+msgid "    .. note::"
+msgstr "    .. note::"
+
+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 ""
 "       Para obter revisões anteriores, você deve usar :hg:`update REV`.\n"
-"       Para cancelar uma mesclagem (e perder suas modificações), use\n"
-"       :hg:`update --clean .`."
+"       Para cancelar uma mesclagem não consolidada (e descartar suas\n"
+"       modificações), use :hg:`update --clean .`."
 
 msgid ""
 "    With no revision specified, revert the specified files or directories\n"
@@ -13061,36 +13659,41 @@
 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:"
+"    repository."
 msgstr ""
 "    Transações são usadas para encapsular os efeitos de todos os comandos\n"
 "    que criam novas revisões ou propagam revisões existentes para o\n"
-"    repositório. Por exemplo, os seguintes comandos são transacionais,\n"
-"    e seus efeitos podem ser revertidos com rollback::"
-
-msgid ""
-"    - commit\n"
-"    - import\n"
-"    - pull\n"
-"    - push (with this repository as the destination)\n"
-"    - unbundle"
-msgstr ""
-"    - commit\n"
-"    - import\n"
-"    - pull\n"
-"    - push (com este repositório como destino)\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 ""
-"    Para evitar perda permanente de dados, o comando rollback se recusará\n"
-"    a desfazer a transação de um commit se a revisão correspondente não\n"
-"    for a revisão atual do diretório de trabalho. Para desabilitar essa\n"
-"    proteção e remover a revisão de qualquer maneira, use a opção --force."
+"    repositório."
+
+msgid ""
+"      For example, the following commands are transactional, and their\n"
+"      effects can be rolled back:"
+msgstr ""
+"      Por exemplo, os seguintes comandos são transacionais,\n"
+"      e seus efeitos podem ser revertidos com rollback::"
+
+msgid ""
+"      - commit\n"
+"      - import\n"
+"      - pull\n"
+"      - push (with this repository as the destination)\n"
+"      - unbundle"
+msgstr ""
+"      - commit\n"
+"      - import\n"
+"      - pull\n"
+"      - push (com este repositório como destino)\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 ""
+"      Para evitar perda permanente de dados, o comando rollback se recusará\n"
+"      a desfazer a transação de um commit se a revisão correspondente não\n"
+"      for a revisão atual do diretório de trabalho. Para desabilitar essa\n"
+"      proteção e remover a revisão de qualquer maneira, use a opção --force."
 
 msgid ""
 "    This command is not intended for use on public repositories. Once\n"
@@ -13215,9 +13818,6 @@
 msgid "cannot use --stdio with --cmdserver"
 msgstr "não se pode usar --stdio com --cmdserver"
 
-msgid "There is no Mercurial repository here (.hg not found)"
-msgstr "Não há um repositório do Mercurial aqui (.hg não encontrado)"
-
 #, python-format
 msgid "listening at http://%s%s/%s (bound to %s:%d)\n"
 msgstr "ouvindo em http://%s%s/%s (associado a %s:%d)\n"
@@ -13633,6 +14233,9 @@
 msgid "not at a branch head (use -f to force)"
 msgstr "não está em uma cabeça de ramo (use -f para forçar)"
 
+msgid "null revision specified"
+msgstr "foi especificada a revisão nula"
+
 msgid "list repository tags"
 msgstr "lista as etiquetas do repositório"
 
@@ -13720,6 +14323,13 @@
 "    (veja :hg:`help bookmarks`)."
 
 msgid ""
+"    Update sets the working directory's parent revison to the specified\n"
+"    changeset (see :hg:`help parents`)."
+msgstr ""
+"    Update muda o pai do diretório de trabalho para a revisão especificada\n"
+"    (veja :hg:`help parents`)."
+
+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"
@@ -13734,51 +14344,51 @@
 "    atualizado para a revisão pedida."
 
 msgid ""
-"    Update sets the working directory's parent revison to the specified\n"
-"    changeset (see :hg:`help parents`)."
-msgstr ""
-"    Update muda o pai do diretório de trabalho para a revisão especificada\n"
-"    (veja :hg:`help parents`)."
-
-msgid ""
-"    The following rules apply when the working directory contains\n"
-"    uncommitted changes:"
-msgstr ""
-"    Quando o diretório de trabalho contiver mudanças não consolidadas, as\n"
-"    seguintes regras se aplicam:"
-
-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. Se nem -c/--check nem -C/--clean forem especificadas, e se a\n"
-"       revisão pedida for um ancestral ou um descendente do pai do\n"
-"       diretório de trabalho, as alterações não consolidadas são\n"
-"       mescladas com a revisão pedida e o resultado da mesclagem não\n"
-"       será automaticamente consolidado. Se a revisão pedida não for\n"
-"       um ancestral ou um descendente (ou seja, se estiver em um\n"
-"       outro ramo), a atualização abortará e as mudanças não\n"
-"       consolidadas serão preservadas."
-
-msgid ""
-"    2. With the -c/--check option, the update is aborted and the\n"
-"       uncommitted changes are preserved."
-msgstr ""
-"    2. Com a opção -c/--check, a atualização abortará e as mudanças\n"
-"       não consolidadas serão preservadas."
-
-msgid ""
-"    3. With the -C/--clean option, uncommitted changes are discarded and\n"
-"       the working directory is updated to the requested changeset."
-msgstr ""
-"    3. Com a opção -C/--clean, mudanças não consolidadas são descartadas\n"
-"       e o diretório de trabalho é atualizado para a revisão pedida."
+"      The following rules apply when the working directory contains\n"
+"      uncommitted changes:"
+msgstr ""
+"      Quando o diretório de trabalho contiver mudanças não consolidadas, as\n"
+"      seguintes regras se aplicam:"
+
+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. Se nem -c/--check nem -C/--clean forem especificadas, e se a\n"
+"         revisão pedida for um ancestral ou um descendente do pai do\n"
+"         diretório de trabalho, as alterações não consolidadas são\n"
+"         mescladas com a revisão pedida e o resultado da mesclagem não\n"
+"         será automaticamente consolidado. Se a revisão pedida não for\n"
+"         um ancestral ou um descendente (ou seja, se estiver em um\n"
+"         outro ramo), a atualização abortará e as mudanças não\n"
+"         consolidadas serão preservadas."
+
+msgid ""
+"      2. With the -c/--check option, the update is aborted and the\n"
+"         uncommitted changes are preserved."
+msgstr ""
+"      2. Com a opção -c/--check, a atualização abortará e as mudanças\n"
+"         não consolidadas serão preservadas."
+
+msgid ""
+"      3. With the -C/--clean option, uncommitted changes are discarded and\n"
+"         the working directory is updated to the requested changeset."
+msgstr ""
+"      3. Com a opção -C/--clean, mudanças não consolidadas são descartadas\n"
+"         e o diretório de trabalho é atualizado para a revisão pedida."
+
+msgid ""
+"    To cancel an uncommitted merge (and lose your changes), use\n"
+"    :hg:`update --clean .`."
+msgstr ""
+"    Para cancelar uma mesclagem não consolidada (e perder suas\n"
+"    modificações), use :hg:`update --clean .`."
 
 msgid ""
 "    Use null as the changeset to remove the working directory (like\n"
@@ -14086,13 +14696,28 @@
 msgid "abort: out of memory\n"
 msgstr "abortado: sem memória\n"
 
+msgid "the extension author."
+msgstr "o autor da extensão."
+
+#, 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 ""
+"** Exceção desconhecida encontrada, envolvendo a extensão de terceiros %s,\n"
+"** possivelmente defeituosa, que suporta a versão %s do Mercurial.\n"
+"** Por favor desabilite %s e tente sua ação novamente.\n"
+"** Se isso corrigir o erro, por favor informe-o para %s\n"
+
 msgid "** unknown exception encountered, please report by visiting\n"
 msgstr ""
 "** exceção desconhecida encontrada, por favor informe sobre esse erro "
 "visitando\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"
@@ -14155,8 +14780,8 @@
 "--repository pode ser abreviada apenas como --repo!"
 
 #, python-format
-msgid "Time: real %.3f secs (user %.3f+%.3f sys %.3f+%.3f)\n"
-msgstr "Tempo: real %.3f segs (user %.3f+%.3f sys %.3f+%.3f)\n"
+msgid "time: real %.3f secs (user %.3f+%.3f sys %.3f+%.3f)\n"
+msgstr "tempo: real %.3f segs (user %.3f+%.3f sys %.3f+%.3f)\n"
 
 #, python-format
 msgid "repository '%s' is not local"
@@ -14603,6 +15228,19 @@
 msgid "disabled extensions:"
 msgstr "extensões desabilitadas:"
 
+msgid "VALUE"
+msgstr "VALOR"
+
+msgid "DEPRECATED"
+msgstr "OBSOLETO"
+
+msgid ""
+"\n"
+"[+] marked option can be specified multiple times\n"
+msgstr ""
+"\n"
+"opções marcadas com [+] podem ser especificadas múltiplas vezes\n"
+
 msgid "Configuration Files"
 msgstr "Arquivos de Configuração"
 
@@ -14691,10 +15329,10 @@
 
 msgid ""
 "Files\n"
-"-----"
+"====="
 msgstr ""
 "Arquivos\n"
-"--------"
+"========"
 
 msgid ""
 "Mercurial reads configuration data from several files, if they exist.\n"
@@ -14854,10 +15492,10 @@
 
 msgid ""
 "Syntax\n"
-"------"
+"======"
 msgstr ""
 "Sintaxe\n"
-"-------"
+"======="
 
 msgid ""
 "A configuration file consists of sections, led by a ``[section]`` header\n"
@@ -15043,10 +15681,10 @@
 
 msgid ""
 "Sections\n"
-"--------"
+"========"
 msgstr ""
 "Seções\n"
-"------"
+"======"
 
 msgid ""
 "This section describes the different sections that may appear in a\n"
@@ -15059,10 +15697,10 @@
 
 msgid ""
 "``alias``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``alias``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Defines command aliases.\n"
@@ -15184,11 +15822,11 @@
 msgid ""
 "\n"
 "``annotate``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 msgstr ""
 "\n"
 "``annotate``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 
 msgid ""
 "Settings used when displaying file annotations. All values are\n"
@@ -15223,11 +15861,11 @@
 msgid ""
 "\n"
 "``auth``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "\n"
 "``auth``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid ""
 "Authentication credentials for HTTP authentication. This section\n"
@@ -15369,11 +16007,11 @@
 msgid ""
 "\n"
 "``decode/encode``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-----------------"
 msgstr ""
 "\n"
 "``decode/encode``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-----------------"
 
 msgid ""
 "Filters for transforming files on checkout/checkin. This would\n"
@@ -15476,11 +16114,11 @@
 msgid ""
 "\n"
 "``defaults``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 msgstr ""
 "\n"
 "``defaults``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 
 msgid "(defaults are deprecated. Don't use them. Use aliases instead)"
 msgstr ""
@@ -15523,11 +16161,11 @@
 msgid ""
 "\n"
 "``diff``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "\n"
 "``diff``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid ""
 "Settings used when displaying diffs. Everything except for ``unified``\n"
@@ -15568,10 +16206,10 @@
 
 msgid ""
 "``email``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``email``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid "Settings for extensions that send email messages."
 msgstr "Definições para extensões que enviam mensagens de email."
@@ -15687,11 +16325,11 @@
 msgid ""
 "\n"
 "``extensions``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 msgstr ""
 "\n"
 "``extensions``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 
 msgid ""
 "Mercurial has an extension mechanism for adding new features. To\n"
@@ -15749,11 +16387,11 @@
 msgid ""
 "\n"
 "``format``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "\n"
 "``format``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid ""
 "``usestore``\n"
@@ -15812,10 +16450,10 @@
 
 msgid ""
 "``graph``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``graph``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Web graph view configuration. This section let you change graph\n"
@@ -15863,10 +16501,10 @@
 
 msgid ""
 "``hooks``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``hooks``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Commands or Python functions that get automatically executed by\n"
@@ -16272,11 +16910,11 @@
 msgid ""
 "\n"
 "``hostfingerprints``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------------"
 msgstr ""
 "\n"
 "``hostfingerprints``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------------"
 
 msgid ""
 "Fingerprints of the certificates of known HTTPS servers.\n"
@@ -16313,11 +16951,11 @@
 msgid ""
 "\n"
 "``http_proxy``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 msgstr ""
 "\n"
 "``http_proxy``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 
 msgid ""
 "Used to access web-based Mercurial repositories through a HTTP\n"
@@ -16369,10 +17007,10 @@
 
 msgid ""
 "``merge-patterns``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------------"
 msgstr ""
 "``merge-patterns``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------------"
 
 msgid ""
 "This section specifies merge tools to associate with particular file\n"
@@ -16396,10 +17034,10 @@
 
 msgid ""
 "``merge-tools``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 msgstr ""
 "``merge-tools``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 
 msgid ""
 "This section configures external merge tools to use for file-level\n"
@@ -16617,11 +17255,11 @@
 msgid ""
 "\n"
 "``patch``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "\n"
 "``patch``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Settings used when applying patches, for instance through the 'import'\n"
@@ -16658,11 +17296,11 @@
 msgid ""
 "\n"
 "``paths``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "\n"
 "``paths``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Assigns symbolic names to repositories. The left side is the\n"
@@ -16697,10 +17335,10 @@
 
 msgid ""
 "``phases``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "``phases``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid ""
 "Specifies default handling of phases. See :hg:`help phases` for more\n"
@@ -16733,10 +17371,10 @@
 
 msgid ""
 "``profiling``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-------------"
 msgstr ""
 "``profiling``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-------------"
 
 msgid ""
 "Specifies profiling type, format, and file output. Two profilers are\n"
@@ -16842,10 +17480,10 @@
 
 msgid ""
 "``revsetalias``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 msgstr ""
 "``revsetalias``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 
 msgid "Alias definitions for revsets. See :hg:`help revsets` for details."
 msgstr ""
@@ -16854,10 +17492,10 @@
 
 msgid ""
 "``server``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "``server``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid "Controls generic server settings."
 msgstr "Controla configurações genéricas de servidores."
@@ -16912,10 +17550,10 @@
 
 msgid ""
 "``smtp``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "``smtp``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid "Configuration for extensions that need to send email messages."
 msgstr "Configurações para extensões que enviam mensagens de email."
@@ -16976,11 +17614,11 @@
 msgid ""
 "\n"
 "``subpaths``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 msgstr ""
 "\n"
 "``subpaths``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 
 msgid ""
 "Subrepository source URLs can go stale if a remote server changes name\n"
@@ -17012,7 +17650,7 @@
 msgstr "reescreve ``http://server/foo-hg/`` como ``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 ""
@@ -17022,10 +17660,10 @@
 
 msgid ""
 "``trusted``\n"
-"\"\"\"\"\"\"\"\"\"\"\""
+"-----------"
 msgstr ""
 "``trusted``\n"
-"\"\"\"\"\"\"\"\"\"\"\""
+"-----------"
 
 msgid ""
 "Mercurial will not use the settings in the\n"
@@ -17075,11 +17713,11 @@
 msgid ""
 "\n"
 "``ui``\n"
-"\"\"\"\"\"\""
+"------"
 msgstr ""
 "\n"
 "``ui``\n"
-"\"\"\"\"\"\""
+"------"
 
 msgid "User interface controls."
 msgstr "Controles de interface com o usuário."
@@ -17351,11 +17989,11 @@
 msgid ""
 "\n"
 "``web``\n"
-"\"\"\"\"\"\"\""
+"-------"
 msgstr ""
 "\n"
 "``web``\n"
-"\"\"\"\"\"\"\""
+"-------"
 
 msgid ""
 "Web interface configuration. The settings in this section apply to\n"
@@ -17726,6 +18364,20 @@
 "    Onde escrever o log de erros. O padrão é a saída de erros (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úmero de linhas de contexto a serem exibidas em comparações lado a\n"
+"    lado. Se negativo, ou com o valor ``full``, serão exibidos arquivos\n"
+"    completos. O padrão é 5.\n"
+"    Esta configuração pode ser redefinida por um parâmetro ``context`` do\n"
+"    pedido para o comando ``comparison``, recebendo os mesmos valores."
+
+msgid ""
 "``hidden``\n"
 "    Whether to hide the repository in the hgwebdir index.\n"
 "    Default is False."
@@ -19360,10 +20012,10 @@
 
 msgid ""
 "Synopsis\n"
-"--------"
+"========"
 msgstr ""
 "Sinopse\n"
-"-------"
+"======="
 
 msgid ""
 "The Mercurial system uses a file called ``.hgignore`` in the root\n"
@@ -19376,10 +20028,10 @@
 
 msgid ""
 "Description\n"
-"-----------"
+"==========="
 msgstr ""
 "Descrição\n"
-"---------"
+"========="
 
 msgid ""
 "The working directory of a Mercurial repository will often contain\n"
@@ -19439,6 +20091,17 @@
 ":hg:`help <comando>` e :hg:`help patterns` para mais detalhes."
 
 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 ""
+"O .hgignore não afeta arquivos já rastreados, mesmo que estes\n"
+"apareçam no .hgignore. Um arquivo X não rastreado pode ser adicionado\n"
+"explicitamente usando :hg:`add X`, mesmo se X estiver sendo excluído\n"
+"por um padrão no .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"
@@ -19507,10 +20170,10 @@
 
 msgid ""
 "Example\n"
-"-------"
+"======="
 msgstr ""
 "Exemplo\n"
-"-------"
+"======="
 
 msgid "Here is an example ignore file. ::"
 msgstr "Este é um exemplo de arquivo hgignore. ::"
@@ -19542,22 +20205,23 @@
 
 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."
-msgstr ""
-"hgweb, o servidor web interno do Mercurial, pode servir tanto\n"
-"um único como uma coleção de repositórios. No último caso, um\n"
-"arquivo de configuração especial pode ser usado para especificar\n"
-"os caminhos dos repositórios a serem usados e opções globais\n"
-"de configuração web.."
-
-msgid ""
-"This file uses the same syntax as other Mercurial configuration files,\n"
-"but only the following sections are recognized:"
+"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 ""
+"hgweb, o servidor web interno do Mercurial, é capaz de servir tanto um único\n"
+"repositório como uma árvore de repositórios. No caso de uma árvore,\n"
+"os caminhos e opções globais podem ser especificados através de um\n"
+"arquivo de configuração dedicado comum a :hg:`serve`, ``hgweb.wsgi``,\n"
+"``hgweb.cgi`` e ``hgweb.fcgi``."
+
+msgid ""
+"This file uses the same syntax as other Mercurial configuration files\n"
+"but recognizes only the following sections:"
 msgstr ""
 "Este arquivo usa a mesma sintaxe de arquivos de configuração do Mercurial,\n"
-"mas apenas as seguintes seções são reconhecidas:"
+"mas reconhece apenas as seguintes seções:"
 
 msgid ""
 "  - web\n"
@@ -19568,86 +20232,87 @@
 "  - 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 ""
-"A seção ``web`` pode especificar todas as configurações descritas na\n"
-"seção web da documentação do hgrc (man page hgrc(5)). Veja\n"
-":hg:`help config` para informações sobre onde encontrar a página\n"
-"de manual."
-
-msgid ""
-"The ``paths`` section provides mappings of physical repository\n"
-"paths to virtual ones. For instance::"
-msgstr ""
-"A seção ``paths`` provê mapeamentos de caminhos de repositórios\n"
-"físicos para virtuais. Por exemplo::"
+msgid "The ``web`` options are thorougly described in :hg:`help config`."
+msgstr "As opções ``web`` são descritas com detalhes em :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 ""
+"A seção ``paths`` mapeia caminhos URL para caminhos de\n"
+"repositórios no sistema de arquivos. O hgweb não expõe o\n"
+"sistema de arquivos diretamente - apenas repositórios\n"
+"do Mercurial podem ser publicados e apenas de acordo com a\n"
+"configuração."
+
+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 ""
+"O lado esquerdo corresponde ao caminho na URL. Note que o hgweb\n"
+"reserva caminhos intermediários como ``rev`` ou ``file``, tente\n"
+"usar nomes diferentes para repositórios aninhados para evitar\n"
+"confusão."
+
+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 ""
+"O lado direito corresponde ao caminho no sistema de arquivos.\n"
+"Se o caminho especificado terminar por ``*`` ou ``**``, será feita\n"
+"uma busca recursiva por repositórios a partir daquele ponto.\n"
+"Com ``*`` a busca não entrará nos repositórios que encontrar (com\n"
+"a exceção de ``.hg/patches``).\n"
+"Com ``**`` a busca incluirá os diretórios de trabalho dos\n"
+"repositórios, e eventuais sub-repositórios."
+
+msgid "In this example::"
+msgstr "Neste exemplo::"
 
 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"
-"  projetos/a = /foo/bar\n"
-"  projetos/b = /baz/quux\n"
-"  web/raiz = /raiz/real/*\n"
-"  / = /raiz/real2/*\n"
-"  raiz/virtual2 = /raiz/real2/**"
+"  /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 ""
-"- As primeiras duas entradas fazem com que dois repositórios em\n"
-"  diretórios diferentes apareçam sob o mesmo diretório na interface web\n"
-"- A terceira entrada mapeia todos os repositórios encontrados em\n"
-"  '/raiz/real' para 'web/raiz'. Este formato é preferido em relação\n"
-"  ao da seção [collections], pois o uso de caminhos absolutos como\n"
-"  chaves de configuração não é suportado em qualquer plataforma\n"
-"  (especialmente no Windows).\n"
-"- A quarta entrada é um caso especial mapeando todos os repositórios\n"
-"  em '/raiz/real2' para o raiz do diretório virtual.\n"
-"- A quinta entrada busca recursivamente todos os repositórios sob a\n"
-"  raiz real, e mapeia seus caminhos relativos sob a raiz virtual."
-
-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 ""
-"A seção ``collections`` provê mapeamentos de árvores de caminhos\n"
-"de repositórios físicos para virtuais, embora a sintaxe de caminhos\n"
-"seja em geral preferida. Por exemplo::"
-
-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 ""
-"Aqui, o lado esquerdo terá todos os caminhos de repositórios encontrados\n"
-"do lado direito removidos. Assim, ``/foo/bar`` e ``foo/quux/baz`` serão\n"
-"listados como ``bar`` e ``quux/baz`` respectivamente.\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 ""
+"- As primeiras duas entradas fazem dois repositórios em diretórios\n"
+"  diferentes aparecerem sob o mesmo diretório na interface web\n"
+"- A terceira entrada publicará todos os repositórios do Mercurial\n"
+"  encontrados em ``/srv/repos/``, por exemplo o repositório\n"
+"  ``/srv/repos/quux/`` aparecerá em ``http://server/quux/``\n"
+"- A quarta entrada publicará tanto ``http://server/user/bob/quux/``\n"
+"  como ``http://server/user/bob/quux/testsubrepo/``"
+
+msgid ""
+"The ``collections`` section is deprecated and has been superseeded by\n"
+"``paths``.\n"
+msgstr ""
+"A seção ``collections`` é obsoleta e foi completamente substituída\n"
+"pela seção ``paths``.\n"
 
 msgid "To merge files Mercurial uses merge tools."
 msgstr "Para mesclar arquivos o Mercurial usa utilitários de mesclagem."
@@ -19691,10 +20356,10 @@
 
 msgid ""
 "Available merge tools\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"====================="
 msgstr ""
 "Utilitários de mesclagem disponíveis\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"===================================="
 
 msgid ""
 "External merge tools and their properties are configured in the\n"
@@ -19745,10 +20410,10 @@
 
 msgid ""
 "Choosing a merge tool\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"====================="
 msgstr ""
 "Escolhendo um utilitário de mesclagem\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"====================================="
 
 msgid "Mercurial uses these rules when deciding which merge tool to use:"
 msgstr ""
@@ -20017,10 +20682,10 @@
 
 msgid ""
 "What are phases?\n"
-"----------------"
+"================"
 msgstr ""
 "O que são fases?\n"
-"----------------"
+"================"
 
 msgid ""
 "Phases are a system for tracking which changesets have been or should\n"
@@ -20058,10 +20723,10 @@
 
 msgid ""
 "How are phases managed?\n"
-"-----------------------"
+"======================="
 msgstr ""
 "Como fases são gerenciadas?\n"
-"---------------------------"
+"==========================="
 
 msgid ""
 "For the most part, phases should work transparently. By default, a\n"
@@ -20086,10 +20751,10 @@
 
 msgid ""
 "Phases and servers\n"
-"------------------"
+"=================="
 msgstr ""
 "Fases e servidores\n"
-"------------------"
+"=================="
 
 msgid "Normally, all servers are ``publishing`` by default. This means::"
 msgstr ""
@@ -20157,10 +20822,10 @@
 
 msgid ""
 "Examples\n"
-"--------"
+"========"
 msgstr ""
 "Exemplos\n"
-"--------"
+"========"
 
 msgid " - list changesets in draft or secret phase::"
 msgstr " - lista revisões nas fases rascunho ou secreta::"
@@ -20237,22 +20902,23 @@
 "de um identificador completo."
 
 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 ""
-"Qualquer outra string é tratada como um nome de etiqueta ou\n"
-"ramo. Um nome de etiqueta é um nome simbólico associado a um\n"
-"identificador de revisão. Um nome de ramo denota a revisão mais\n"
-"recente de tal ramo. Nomes de etiqueta ou de ramo não podem\n"
-"conter o caractere \":\"."
-
-msgid ""
-"The reserved name \"tip\" is a special tag that always identifies the\n"
-"most recent revision."
-msgstr ""
-"O nome reservado \"tip\" é uma etiqueta especial que sempre\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 ""
+"Qualquer outra string é tratada como um nome de marcador, etiqueta\n"
+"ou ramo.\n"
+"Um marcador (bookmark) é um apontador móvel para uma revisão.\n"
+"Uma etiqueta (tag) é um nome simbólico permanente associado a uma\n"
+"revisão.\n"
+"Um nome de ramo denota a revisão mais recente de tal ramo.\n"
+"Nomes de marcadores, etiquetas e ramos não podem conter o caractere \":\"."
+
+msgid "The reserved name \"tip\" always identifies the most recent revision."
+msgstr ""
+"O nome reservado \"tip\" sempre\n"
 "identifica a revisão mais recente."
 
 msgid ""
@@ -20601,11 +21267,11 @@
 msgid ""
 "\n"
 "Adding a Subrepository\n"
-"----------------------"
-msgstr ""
-"\n"
-"Como Adicionar um Sub-Repositório\n"
-"---------------------------------"
+"======================"
+msgstr ""
+"\n"
+"Adicionando um Sub-Repositório\n"
+"=============================="
 
 msgid ""
 "If ``.hgsub`` does not exist, create it and add it to the parent\n"
@@ -20625,10 +21291,10 @@
 
 msgid ""
 "Synchronizing a Subrepository\n"
-"-----------------------------"
-msgstr ""
-"Como Sincronizar um Sub-Repositório\n"
-"-----------------------------------"
+"============================="
+msgstr ""
+"Sincronizando um Sub-Repositório\n"
+"================================"
 
 msgid ""
 "Subrepos do not automatically track the latest changeset of their\n"
@@ -20656,10 +21322,10 @@
 
 msgid ""
 "Deleting a Subrepository\n"
-"------------------------"
-msgstr ""
-"Como Remover um Sub-Repositório\n"
-"-------------------------------"
+"========================"
+msgstr ""
+"Apagando um Sub-Repositório\n"
+"==========================="
 
 msgid ""
 "To remove a subrepository from the parent repository, delete its\n"
@@ -20671,10 +21337,10 @@
 
 msgid ""
 "Interaction with Mercurial Commands\n"
-"-----------------------------------"
-msgstr ""
-"Interação com comandos do Mercurial\n"
-"-----------------------------------"
+"==================================="
+msgstr ""
+"Interação com Comandos do Mercurial\n"
+"==================================="
 
 msgid ""
 ":add: add does not recurse in subrepos unless -S/--subrepos is\n"
@@ -20818,10 +21484,10 @@
 
 msgid ""
 "Remapping Subrepositories Sources\n"
-"---------------------------------"
-msgstr ""
-"Remapeando Origens de Sub-Repositórios\n"
-"--------------------------------------"
+"================================="
+msgstr ""
+"Remapeamento de Origens de Sub-Repositórios\n"
+"==========================================="
 
 msgid ""
 "A subrepository source location may change during a project life,\n"
@@ -21099,6 +21765,9 @@
 msgid "destination directory: %s\n"
 msgstr "diretório de destino: %s\n"
 
+msgid "empty destination path is not valid"
+msgstr "um caminho de destino vazio não é válido"
+
 #, python-format
 msgid "destination '%s' already exists"
 msgstr "o destino '%s' já existe"
@@ -21164,6 +21833,10 @@
 msgstr "não é possível iniciar o servidor em '%s:%d': %s"
 
 #, python-format
+msgid "(binary file %s, hash: %s)"
+msgstr "(arquivo binário %s, hash: %s)"
+
+#, python-format
 msgid " %d files changed, %d insertions(+), %d deletions(-)\n"
 msgstr "%d arquivos modificados, %d inserções(+), %d remoções(-)\n"
 
@@ -21221,6 +21894,10 @@
 msgid "warning: %s hook %s\n"
 msgstr "aviso: gancho %s %s\n"
 
+#, python-format
+msgid "loading %s hook failed:\n"
+msgstr "o carregamento do gancho %s falhou:\n"
+
 msgid "kb"
 msgstr "kb"
 
@@ -21431,10 +22108,24 @@
 "pull parcial não pode ser feito porque o outro repositório não suporta "
 "'changegroupsubset'."
 
+msgid "destination does not support push"
+msgstr "o destino não suporta push"
+
+#, python-format
+msgid "push includes an obsolete changeset: %s!"
+msgstr "push inclui uma revisão obsoleta: %s!"
+
+#, python-format
+msgid "push includes an unstable changeset: %s!"
+msgstr "push inclui uma revisão instável: %s!"
+
 #, python-format
 msgid "updating %s to public failed!\n"
 msgstr "a atualização da fase de %s para pública falhou!\n"
 
+msgid "failed to push some obsolete markers!\n"
+msgstr "erro ao enviar algumas marcações de obsolescência!\n"
+
 #, python-format
 msgid "%d changesets found\n"
 msgstr "%d revisões encontradas\n"
@@ -21479,8 +22170,8 @@
 msgid "added %d changesets with %d changes to %d files%s\n"
 msgstr "adicionadas %d revisões com %d mudanças em %d arquivos%s\n"
 
-msgid "Unexpected response from remote server:"
-msgstr "Resposta inesperada do servidor remoto:"
+msgid "unexpected response from remote server:"
+msgstr "resposta inesperada do servidor remoto:"
 
 msgid "operation forbidden by server"
 msgstr "operação não permitida pelo servidor"
@@ -21498,6 +22189,9 @@
 msgid "%d files to transfer, %s of data\n"
 msgstr "%d arquivos para transferir, %s de dados\n"
 
+msgid "clone"
+msgstr "clone"
+
 #, python-format
 msgid "transferred %s in %.1f seconds (%s/sec)\n"
 msgstr "transferidos %s em %.1f segundos (%s/s)\n"
@@ -21649,6 +22343,10 @@
 msgid "note: possible conflict - %s was renamed multiple times to:\n"
 msgstr "nota: possível conflito - %s foi renomeado múltiplas vezes para:\n"
 
+#, python-format
+msgid "note: possible conflict - %s was deleted and renamed to:\n"
+msgstr "nota: possível conflito - %s foi apagado e renomeado para:\n"
+
 msgid "merging with a working directory ancestor has no effect"
 msgstr ""
 "mesclar com um ancestral do diretório de trabalho não tem nenhum efeito"
@@ -21700,6 +22398,24 @@
 msgstr "Aviso!"
 
 #, python-format
+msgid "parsing obsolete marker: unknown version %r"
+msgstr "decodificando marcações de obsolescência: versão desconhecida %r"
+
+#, python-format
+msgid ""
+"parsing obsolete marker: metadata is too short, %d bytes expected, got %d"
+msgstr ""
+"decodificando marcações de obsolescência: metadados são curtos demais, %d "
+"bytes esperados, %d obtidos"
+
+#, python-format
+msgid "unknown key: %r"
+msgstr "chave desconhecida: %r"
+
+msgid "unexpected old value"
+msgstr "valor antigo inesperado"
+
+#, python-format
 msgid "unexpected token: %s"
 msgstr "token inesperado: %s"
 
@@ -21804,6 +22520,13 @@
 msgstr "aplicação do patch falhou"
 
 #, python-format
+msgid "cannot %s; remote repository does not support the %r capability"
+msgstr "impossível %s; repositório remoto não suporta a funcionalidade '%r'"
+
+msgid "cannot change null revision phase"
+msgstr "não é possível mudar a fase da revisão nula"
+
+#, python-format
 msgid "ignoring inconsistent public root from remote: %s\n"
 msgstr "ignorando raiz pública inconsistente no repositório remoto: %s\n"
 
@@ -21843,8 +22566,8 @@
 msgstr "strip falhou, bundle parcial armazenado em '%s'\n"
 
 #, python-format
-msgid "cannot %s; remote repository does not support the %r capability"
-msgstr "impossível %s; repositório remoto não suporta a funcionalidade '%r'"
+msgid "revlog decompress error: %s"
+msgstr "erro de descompressão do revlog: %s"
 
 #, python-format
 msgid "unknown compression type %r"
@@ -21956,15 +22679,18 @@
 "    - ``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``: revs explicitamente marcadas como boas, ruins ou omitidas\n"
 "    - ``goods``, ``bads``      : revs topologicamente boas ou ruins\n"
 "    - ``range``              : revs participando da bissecção\n"
 "    - ``pruned``             : revs goods, bads ou skipped\n"
 "    - ``untested``           : revs que ainda não foram testadas\n"
-"    - ``ignored``            : revs ignoradas pela topologia do DAG"
-
+"    - ``ignored``            : revs ignoradas pela topologia do DAG\n"
+"    - ``current``            : a revisão sendo biseccionada no momento"
+
+#. i18n: "bisect" is a keyword
 msgid "bisect requires a string"
 msgstr "bisect requer uma string"
 
@@ -21975,6 +22701,15 @@
 "``bookmark([nome])``\n"
 "    O marcador chamado nome, ou todos os marcadores."
 
+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 ""
+"    Se `nome` começar com `re:`, o restante do nome é tratado como\n"
+"    uma expressão regular. Para combinar com um marcador que comece\n"
+"    com `re:` literalmente, use o prefixo `literal:`."
+
 #. i18n: "bookmark" is a keyword
 msgid "bookmark takes one or no arguments"
 msgstr "bookmark requer um ou nenhum argumento"
@@ -21983,6 +22718,10 @@
 msgid "the argument to bookmark must be a string"
 msgstr "o argumento para o comando bookmark deve ser uma string"
 
+#, python-format
+msgid "no bookmarks exist that match '%s'"
+msgstr "não existe nenhum marcador que corresponda a '%s'"
+
 msgid ""
 "``branch(string or set)``\n"
 "    All changesets belonging to the given branch or the branches of the given\n"
@@ -21993,6 +22732,15 @@
 "    das revisões no conjunto."
 
 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 ""
+"    Se `string` começar com `re:`, o restante do nome é tratado como\n"
+"    uma expressão regular. Para combinar com um ramo que comece\n"
+"    com `re:` literalmente, use o prefixo `literal:`."
+
+msgid ""
 "``children(set)``\n"
 "    Child changesets of changesets in set."
 msgstr ""
@@ -22024,6 +22772,24 @@
 msgstr "contains requer um padrão"
 
 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"
+"    Revisões convertidas a partir do identificador dado no\n"
+"    repositório de origem, ou todas as revisões convertidas se\n"
+"    um identificador não for fornecido."
+
+#. i18n: "converted" is a keyword
+msgid "converted takes one or no arguments"
+msgstr "converted recebe um ou nenhum argumento"
+
+#. i18n: "converted" is a keyword
+msgid "converted requires a revision"
+msgstr "converted requer uma revisão"
+
+msgid ""
 "``date(interval)``\n"
 "    Changesets within the interval, see :hg:`help dates`."
 msgstr ""
@@ -22054,22 +22820,87 @@
 "    Todas as revisões descendentes de revisões do conjunto."
 
 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([conjunto])``\n"
+"    Revisões criadas por operações graft, transplant ou rebase\n"
+"    que tiveram como origem revisões no conjunto. Se o conjunto\n"
+"    não for especificado, será o mesmo que especificar all()."
+
+msgid ""
 "``draft()``\n"
 "    Changeset in draft phase."
 msgstr ""
 "``draft()``\n"
 "    Revisões na fase \"draft\" (rascunho)."
 
+#. i18n: "draft" is a keyword
 msgid "draft takes no arguments"
 msgstr "draft não tem argumentos"
 
 msgid ""
+"``extinct()``\n"
+"    Obsolete changesets with obsolete descendants only."
+msgstr ""
+"``extinct()``\n"
+"    Revisões extintas (revisões obsoletas que possuam apenas\n"
+"    descendentes obsoletos)."
+
+#. i18n: "extinct" is a keyword
+msgid "extinct takes no arguments"
+msgstr "extinct não tem argumentos"
+
+msgid ""
+"``extra(label, [value])``\n"
+"    Changesets with the given label in the extra metadata, with the given\n"
+"    optional value."
+msgstr ""
+"``extra(rótulo, [valor])``\n"
+"    Revisões com o rótulo pedido nos metadados extras, opcionalmente\n"
+"    com o valor pedido."
+
+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 ""
+"    Se `valor` começar com `re:`, o restante do valor é tratado como\n"
+"    uma expressão regular. Para combinar com um valor que comece\n"
+"    com `re:` literalmente, use o prefixo `literal:`."
+
+#. i18n: "extra" is a keyword
+msgid "extra takes at least 1 and at most 2 arguments"
+msgstr "extra recebe um ou dois argumentos"
+
+#. i18n: "extra" is a keyword
+msgid "first argument to extra must be a string"
+msgstr "o primeiro argumento de extra deve ser uma string"
+
+#. i18n: "extra" is a keyword
+msgid "second argument to extra must be a string"
+msgstr "o segundo argumento de extra deve ser uma string"
+
+msgid ""
 "``filelog(pattern)``\n"
 "    Changesets connected to the specified filelog."
 msgstr ""
 "``filelog(padrão)``\n"
 "    Revisões conectadas ao filelog especificado."
 
+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 ""
+"    Por razões de desempenho, ``filelog()`` não mostra todas as\n"
+"    revisões que afetaram os arquivos pedidos. Veja :hg:`help log`\n"
+"    para mais detalhes. Para um resultado mais preciso, mas mais\n"
+"    lento, use ``file()``."
+
+#. i18n: "filelog" is a keyword
 msgid "filelog requires a pattern"
 msgstr "filelog requer um padrão"
 
@@ -22134,15 +22965,19 @@
 msgid "_matchfiles requires at least one argument"
 msgstr "_matchfiles requer ao menos um argumento"
 
+#. i18n: "_matchfiles" is a keyword
 msgid "_matchfiles requires string arguments"
 msgstr "_matchfiles requer argumentos de texto"
 
+#. i18n: "_matchfiles" is a keyword
 msgid "_matchfiles expected at most one revision"
 msgstr "_matchfiles espera no máximo uma revisão"
 
+#. i18n: "_matchfiles" is a keyword
 msgid "_matchfiles expected at most one default mode"
 msgstr "_matchfiles espera no máximo um modo padrão"
 
+#. i18n: "_matchfiles" is a keyword
 #, python-format
 msgid "invalid _matchfiles prefix: %s"
 msgstr "prefixo _matchfiles inválido: %s"
@@ -22154,6 +22989,13 @@
 "``file(padrão)``\n"
 "    Revisões que afetam arquivos correspondentes ao padrão."
 
+msgid ""
+"    For a faster but less accurate result, consider using ``filelog()``\n"
+"    instead."
+msgstr ""
+"    Para um resultado mais rápido mas menos preciso, considere usar\n"
+"    ``filelog()``."
+
 #. i18n: "file" is a keyword
 msgid "file requires a pattern"
 msgstr "file requer um padrão"
@@ -22281,6 +23123,33 @@
 msgstr "id requer uma string"
 
 msgid ""
+"``obsolete()``\n"
+"    Mutable changeset with a newer version."
+msgstr ""
+"``obsolete()``\n"
+"    Revisões obsoletas (revisões mutáveis com uma nova versão)."
+
+#. i18n: "obsolete" is a keyword
+msgid "obsolete takes no arguments"
+msgstr "obsolete não tem argumentos"
+
+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([conjunto])``\n"
+"    Revisões que foram especificadas como origem em operações graft,\n"
+"    transplant ou rebase que criaram as revisões no conjunto. Omitir\n"
+"    o conjunto tem o mesmo efeito de passar all(). Se uma revisão\n"
+"    criada por essas operações for ela mesma especificada como\n"
+"    origem de uma dessas operações, apenas a revisão de origem da\n"
+"    primeira operação será selecionada."
+
+msgid ""
 "``outgoing([path])``\n"
 "    Changesets not found in the specified destination repository, or the\n"
 "    default push location."
@@ -22347,6 +23216,7 @@
 "``public()``\n"
 "    Revisões na fase \"public\" (pública)."
 
+#. i18n: "public" is a keyword
 msgid "public takes no arguments"
 msgstr "public não tem argumentos"
 
@@ -22428,13 +23298,18 @@
 
 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 ""
 "    Os campos comuns são: ``description`` (descrição), ``author`` (autor),\n"
 "    ``branch`` (ramo), ``date`` (data), ``files`` (arquivos),\n"
 "    ``phase`` (fase), ``parents`` (pais), ``substate`` (sub-repositórios)\n"
-"    e ``user`` (usuário). Note que ``user`` ``author`` são sinônimos."
+"    e ``user`` (usuário). Note que ``user`` ``author`` são sinônimos.\n"
+"    ``diff`` se refere ao conteúdo da revisão. Duas revisões com mesmo\n"
+"    ``diff`` também terão o mesmo ``files``."
 
 msgid ""
 "    Special fields are ``summary`` and ``metadata``:\n"
@@ -22454,12 +23329,15 @@
 "    Se não forem especificados campos, será utilizado o campo metadata.\n"
 "    Você pode corresponder mais de um campo simultaneamente."
 
+#. i18n: "matching" is a keyword
 msgid "matching takes 1 or 2 arguments"
 msgstr "matching recebe um ou dois argumentos"
 
+#. i18n: "matching" is a keyword
 msgid "matching requires a string as its second argument"
 msgstr "matching exige uma string como segundo argumento"
 
+#. i18n: "matching" is a keyword
 #, python-format
 msgid "unexpected field name passed to matching: %s"
 msgstr "nome de campo inesperado passado para matching: %s"
@@ -22485,6 +23363,7 @@
 "``secret()``\n"
 "    A revisão está na fase \"secret\" (secreta)."
 
+#. i18n: "secret" is a keyword
 msgid "secret takes no arguments"
 msgstr "secret não tem argumentos"
 
@@ -22517,6 +23396,7 @@
 msgid "sort requires one or two arguments"
 msgstr "sort exige um ou dois argumentos"
 
+#. i18n: "sort" is a keyword
 msgid "sort spec must be a string"
 msgstr "especificação do sort deve ser uma string"
 
@@ -22524,6 +23404,10 @@
 msgid "unknown sort key %r"
 msgstr "especificação de ordenação desconhecida: %r"
 
+#, python-format
+msgid "invalid regular expression: %s"
+msgstr "expressão regular inválida: %s"
+
 msgid ""
 "``tag([name])``\n"
 "    The specified tag by name, or all tagged revisions if no name is given."
@@ -22541,6 +23425,21 @@
 msgid "the argument to tag must be a string"
 msgstr "o argumento de tag deve ser uma string"
 
+#, python-format
+msgid "no tags exist that match '%s'"
+msgstr "não existem etiquetas que correspondem a '%s'"
+
+msgid ""
+"``unstable()``\n"
+"    Non-obsolete changesets with obsolete ancestors."
+msgstr ""
+"``unstable()``\n"
+"    Revisões instáveis (revisões não-obsoletas com ancestrais obsoletos)."
+
+#. i18n: "unstable" is a keyword
+msgid "unstable takes no arguments"
+msgstr "unstable não tem argumentos"
+
 msgid ""
 "``user(string)``\n"
 "    User name contains string. The match is case-insensitive."
@@ -22549,6 +23448,15 @@
 "    O nome do usuário contém texto. A comparação não diferencia\n"
 "    maiúsculas e minúsculas."
 
+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 ""
+"    Se `texto` começar com `re:`, o restante do texto é tratado como\n"
+"    uma expressão regular. Para combinar com um usuário que contiver\n"
+"    `re:` literalmente, use o prefixo `literal:`."
+
 msgid "can't negate that"
 msgstr "não é possível negar essa expressão"
 
@@ -22911,10 +23819,10 @@
 #, python-format
 msgid ""
 "no branch checked out in subrepo %s\n"
-"cannot push revision %s"
+"cannot push revision %s\n"
 msgstr ""
 "nenhum ramo obtido no sub-repositório %s\n"
-"não é possível fazer push da revisão %s"
+"não é possível fazer push da revisão %s\n"
 
 #, python-format
 msgid "%s, line %s: %s\n"
@@ -23269,6 +24177,15 @@
 msgid ":tags: List of strings. Any tags associated with the changeset."
 msgstr ":tags: Lista de strings. Quaisquer etiquetas associadas à revisão."
 
+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: Lista de strings. Os pais da revisão no formato \"rev:node\".\n"
+"    Se a revisão só tiver um pai \"natural\" (a revisão predecessora),\n"
+"    nada é exibido."
+
 #, python-format
 msgid "unknown method '%s'"
 msgstr "método desconhecido '%s'"
@@ -23322,12 +24239,12 @@
 msgstr "já possui a revisão "
 
 #, python-format
-msgid "Not trusting file %s from untrusted user %s, group %s\n"
-msgstr "Não confiando em arquivo %s de usuário não confiável %s, grupo %s\n"
-
-#, python-format
-msgid "Ignored: %s\n"
-msgstr "Ignorado: %s\n"
+msgid "not trusting file %s from untrusted user %s, group %s\n"
+msgstr "não confiando em arquivo %s de usuário não confiável %s, grupo %s\n"
+
+#, python-format
+msgid "ignored: %s\n"
+msgstr "ignorado: %s\n"
 
 #, python-format
 msgid "(deprecated '%%' in path %s=%s from %s)\n"
@@ -23345,8 +24262,8 @@
 msgstr "entre o nome do usuário para consolidação:"
 
 #, python-format
-msgid "No username found, using '%s' instead\n"
-msgstr "Nome de usuário não encontrado, usando '%s'\n"
+msgid "no username found, using '%s' instead\n"
+msgstr "nome de usuário não encontrado, usando '%s'\n"
 
 msgid "no username supplied (see \"hg help config\")"
 msgstr "nome de usuário não fornecido (veja \"hg help config\")"
--- a/i18n/ru.po	Wed Aug 01 15:49:00 2012 +0200
+++ b/i18n/ru.po	Thu Aug 02 00:52:43 2012 -0500
@@ -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-08-01 18:47+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,391 @@
 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"
+" #"
+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"
+" #"
+
+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 +5188,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 +5229,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 +5344,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 +5358,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 +5476,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 +5572,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 +5704,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 +5765,6 @@
 msgid "uncommitted changes in subrepository %s"
 msgstr "незафиксированные изменения в подхранилище %s"
 
-msgid "local changes found, refresh first"
-msgstr "найдены локальные изменения, необходимо сначала обновиться"
-
 msgid "local changes found"
 msgstr "найдены локальные изменения"
 
@@ -5276,6 +5788,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 +5841,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 +5925,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 +5946,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 +5968,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 +6102,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 +6520,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 +6531,9 @@
 msgid "error folding patch %s"
 msgstr "ошибка при подшивке патча %s"
 
+msgid "tolerate non-conflicting local changes"
+msgstr "допускать неконфликтующие локальные изменения"
+
 msgid "overwrite any local changes"
 msgstr "перезаписывать все локальные изменения"
 
@@ -6117,11 +6641,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 +6676,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 +6789,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 +6842,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 +7123,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 +7171,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 +7211,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 +7240,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 +7266,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 +7289,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 +7333,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 +7355,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 +7383,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 +7392,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 +7425,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 +7444,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 +7453,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
@@ -6937,10 +7498,10 @@
 
 msgid ""
 "  [pager]\n"
-"  pager = less -FRSX"
+"  pager = less -FRX"
 msgstr ""
 "  [pager]\n"
-"  pager = less -FRSX"
+"  pager = less -FRX"
 
 msgid ""
 "If no pager is set, the pager extensions uses the environment variable\n"
@@ -7363,10 +7924,6 @@
 "    в вашем конфигурационном файле. См. секцию [email] в справке по\n"
 "    hgrc(5) для дополнительной информации.    "
 
-#, python-format
-msgid "comparing with %s\n"
-msgstr "сравниваем с %s\n"
-
 msgid "no changes found\n"
 msgstr "изменения не найдены\n"
 
@@ -7391,8 +7948,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 +7976,11 @@
 msgid "patchbomb canceled"
 msgstr "отправка отменена"
 
-msgid "Displaying "
-msgstr "Показывается "
-
-msgid "Sending "
-msgstr "Отправляется "
+msgid "displaying "
+msgstr "отображение "
+
+msgid "sending "
+msgstr "отправка "
 
 msgid "sending"
 msgstr "отправка"
@@ -7609,12 +8166,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 +8226,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 +8365,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 +8380,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 +8440,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 +8739,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 +8964,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 +9091,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 +9348,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 +9466,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 +9686,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 +9907,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 +10015,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 +10354,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 +10446,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 +10509,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 +10524,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 +11529,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 +11546,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 +11565,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 +11585,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 +11818,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 +11975,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 +12017,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 +12114,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 +12269,9 @@
 msgid "show only help for commands"
 msgstr "показать только справку по командам"
 
+msgid "show topics matching keyword"
+msgstr "показать темы, соответствующие ключевому слову"
+
 msgid "[-ec] [TOPIC]"
 msgstr "[-ec] [ТЕМА]"
 
@@ -11689,44 +12296,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 +12330,9 @@
 msgid "options:"
 msgstr "параметры:"
 
+msgid "global options:"
+msgstr "глобальные параметры:"
+
 #, python-format
 msgid ""
 "\n"
@@ -11796,6 +12368,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 +12408,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 +13050,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 +13071,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 +13357,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 +13427,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 +13743,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 +13856,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 +14015,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"
@@ -13593,7 +14209,7 @@
 
 #, python-format
 msgid "parent: %d:%s "
-msgstr "родитель: %d:%s"
+msgstr "родитель: %d:%s "
 
 msgid " (empty repository)"
 msgstr " (пустое хранилище)"
@@ -13809,6 +14425,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 +14513,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 +14533,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 +14891,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 +14976,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 +15423,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 +15524,10 @@
 
 msgid ""
 "Files\n"
-"-----"
+"====="
 msgstr ""
 "Файлы\n"
-"-----"
+"====="
 
 msgid ""
 "Mercurial reads configuration data from several files, if they exist.\n"
@@ -15027,10 +15683,10 @@
 
 msgid ""
 "Syntax\n"
-"------"
+"======"
 msgstr ""
 "Синтаксис\n"
-"---------"
+"========="
 
 msgid ""
 "A configuration file consists of sections, led by a ``[section]`` header\n"
@@ -15210,10 +15866,10 @@
 
 msgid ""
 "Sections\n"
-"--------"
+"========"
 msgstr ""
 "Секции\n"
-"------"
+"======"
 
 msgid ""
 "This section describes the different sections that may appear in a\n"
@@ -15226,10 +15882,10 @@
 
 msgid ""
 "``alias``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``alias``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Defines command aliases.\n"
@@ -15349,11 +16005,11 @@
 msgid ""
 "\n"
 "``annotate``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 msgstr ""
 "\n"
 "``annotate``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 
 msgid ""
 "Settings used when displaying file annotations. All values are\n"
@@ -15389,11 +16045,11 @@
 msgid ""
 "\n"
 "``auth``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "\n"
 "``auth``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid ""
 "Authentication credentials for HTTP authentication. This section\n"
@@ -15532,11 +16188,11 @@
 msgid ""
 "\n"
 "``decode/encode``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-----------------"
 msgstr ""
 "\n"
 "``decode/encode``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-----------------"
 
 msgid ""
 "Filters for transforming files on checkout/checkin. This would\n"
@@ -15636,11 +16292,11 @@
 msgid ""
 "\n"
 "``defaults``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 msgstr ""
 "\n"
 "``defaults``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------"
 
 msgid "(defaults are deprecated. Don't use them. Use aliases instead)"
 msgstr "(устарело. Не используйте эту секцию. Используйте псевдонимы.)"
@@ -15681,11 +16337,11 @@
 msgid ""
 "\n"
 "``diff``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "\n"
 "``diff``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid ""
 "Settings used when displaying diffs. Everything except for ``unified``\n"
@@ -15727,10 +16383,10 @@
 
 msgid ""
 "``email``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``email``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid "Settings for extensions that send email messages."
 msgstr "Настройки для расширений, отправляющих сообщения по email"
@@ -15841,11 +16497,11 @@
 msgid ""
 "\n"
 "``extensions``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 msgstr ""
 "\n"
 "``extensions``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------"
 
 msgid ""
 "Mercurial has an extension mechanism for adding new features. To\n"
@@ -15901,11 +16557,11 @@
 msgid ""
 "\n"
 "``format``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "\n"
 "``format``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid ""
 "``usestore``\n"
@@ -15963,10 +16619,10 @@
 
 msgid ""
 "``graph``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``graph``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Web graph view configuration. This section let you change graph\n"
@@ -16014,10 +16670,10 @@
 
 msgid ""
 "``hooks``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "``hooks``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 # NOT-SURE site-wide - ?
 msgid ""
@@ -16406,11 +17062,11 @@
 msgid ""
 "\n"
 "``hostfingerprints``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------------"
 msgstr ""
 "\n"
 "``hostfingerprints``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"--------------------"
 
 msgid ""
 "Fingerprints of the certificates of known HTTPS servers.\n"
@@ -16445,11 +17101,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 +17157,10 @@
 
 msgid ""
 "``merge-patterns``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------------"
 msgstr ""
 "``merge-patterns``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"------------------"
 
 msgid ""
 "This section specifies merge tools to associate with particular file\n"
@@ -16528,10 +17184,10 @@
 
 msgid ""
 "``merge-tools``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 msgstr ""
 "``merge-tools``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 
 msgid ""
 "This section configures external merge tools to use for file-level\n"
@@ -16747,11 +17403,11 @@
 msgid ""
 "\n"
 "``patch``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "\n"
 "``patch``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Settings used when applying patches, for instance through the 'import'\n"
@@ -16787,11 +17443,11 @@
 msgid ""
 "\n"
 "``paths``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 msgstr ""
 "\n"
 "``paths``\n"
-"\"\"\"\"\"\"\"\"\""
+"---------"
 
 msgid ""
 "Assigns symbolic names to repositories. The left side is the\n"
@@ -16825,10 +17481,10 @@
 
 msgid ""
 "``phases``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "``phases``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid ""
 "Specifies default handling of phases. See :hg:`help phases` for more\n"
@@ -16862,10 +17518,10 @@
 
 msgid ""
 "``profiling``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-------------"
 msgstr ""
 "``profiling``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"-------------"
 
 msgid ""
 "Specifies profiling type, format, and file output. Two profilers are\n"
@@ -16968,10 +17624,10 @@
 
 msgid ""
 "``revsetalias``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 msgstr ""
 "``revsetalias``\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"---------------"
 
 msgid "Alias definitions for revsets. See :hg:`help revsets` for details."
 msgstr ""
@@ -16980,10 +17636,10 @@
 
 msgid ""
 "``server``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 msgstr ""
 "``server``\n"
-"\"\"\"\"\"\"\"\"\"\""
+"----------"
 
 msgid "Controls generic server settings."
 msgstr "Общие настройки сервера."
@@ -17036,10 +17692,10 @@
 
 msgid ""
 "``smtp``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 msgstr ""
 "``smtp``\n"
-"\"\"\"\"\"\"\"\""
+"--------"
 
 msgid "Configuration for extensions that need to send email messages."
 msgstr "Настройки для расширений, которые рассылают email-сообщения."
@@ -17099,11 +17755,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 +17791,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 +17801,10 @@
 
 msgid ""
 "``trusted``\n"
-"\"\"\"\"\"\"\"\"\"\"\""
+"-----------"
 msgstr ""
 "``trusted``\n"
-"\"\"\"\"\"\"\"\"\"\"\""
+"-----------"
 
 msgid ""
 "Mercurial will not use the settings in the\n"
@@ -17197,11 +17853,11 @@
 msgid ""
 "\n"
 "``ui``\n"
-"\"\"\"\"\"\""
+"------"
 msgstr ""
 "\n"
 "``ui``\n"
-"\"\"\"\"\"\""
+"------"
 
 msgid "User interface controls."
 msgstr "Настройки интерфейса пользователя."
@@ -17471,11 +18127,11 @@
 msgid ""
 "\n"
 "``web``\n"
-"\"\"\"\"\"\"\""
+"-------"
 msgstr ""
 "\n"
 "``web``\n"
-"\"\"\"\"\"\"\""
+"-------"
 
 msgid ""
 "Web interface configuration. The settings in this section apply to\n"
@@ -17834,12 +18490,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 +20080,10 @@
 
 msgid ""
 "Synopsis\n"
-"--------"
-msgstr ""
-"Сводка\n"
-"------"
+"========"
+msgstr ""
+"Обзор\n"
+"====="
 
 msgid ""
 "The Mercurial system uses a file called ``.hgignore`` in the root\n"
@@ -19423,10 +20096,10 @@
 
 msgid ""
 "Description\n"
-"-----------"
+"==========="
 msgstr ""
 "Описание\n"
-"--------"
+"========"
 
 msgid ""
 "The working directory of a Mercurial repository will often contain\n"
@@ -19484,6 +20157,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 +20235,10 @@
 
 msgid ""
 "Example\n"
-"-------"
+"======="
 msgstr ""
 "Пример\n"
-"------"
+"======"
 
 msgid "Here is an example ignore file. ::"
 msgstr "Пример файла игнорирования. ::"
@@ -19586,18 +20270,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 +20296,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 +20414,10 @@
 
 msgid ""
 "Available merge tools\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
-msgstr ""
-"Возможные инструменты слияния\n"
-"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\""
+"====================="
+msgstr ""
+"Доступные инструменты слияния\n"
+"============================="
 
 msgid ""
 "External merge tools and their properties are configured in the\n"
@@ -19786,10 +20465,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 +20737,10 @@
 
 msgid ""
 "What are phases?\n"
-"----------------"
+"================"
 msgstr ""
 "Что такое фазы?\n"
-"---------------"
+"==============="
 
 msgid ""
 "Phases are a system for tracking which changesets have been or should\n"
@@ -20099,10 +20778,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 +20805,10 @@
 
 msgid ""
 "Phases and servers\n"
-"------------------"
+"=================="
 msgstr ""
 "Фазы и серверы\n"
-"--------------"
+"=============="
 
 msgid "Normally, all servers are ``publishing`` by default. This means::"
 msgstr "Как правило, все серверы по умолчанию ``публичные``. Это означает::"
@@ -20193,10 +20872,10 @@
 
 msgid ""
 "Examples\n"
-"--------"
+"========"
 msgstr ""
 "Примеры\n"
-"-------"
+"======="
 
 msgid " - list changesets in draft or secret phase::"
 msgstr " - перечислить наборы изменений в черновой или секретной фазе::"
@@ -20268,22 +20947,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 +21306,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 +21331,10 @@
 
 msgid ""
 "Synchronizing a Subrepository\n"
-"-----------------------------"
+"============================="
 msgstr ""
 "Синхронизация подхранилища\n"
-"--------------------------"
+"=========================="
 
 msgid ""
 "Subrepos do not automatically track the latest changeset of their\n"
@@ -20681,10 +21360,10 @@
 
 msgid ""
 "Deleting a Subrepository\n"
-"------------------------"
+"========================"
 msgstr ""
 "Удаление подхранилища\n"
-"---------------------"
+"====================="
 
 msgid ""
 "To remove a subrepository from the parent repository, delete its\n"
@@ -20695,10 +21374,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 +21506,10 @@
 
 msgid ""
 "Remapping Subrepositories Sources\n"
-"---------------------------------"
+"================================="
 msgstr ""
 "Переназначение источников подхранилищ\n"
-"-------------------------------------"
+"====================================="
 
 msgid ""
 "A subrepository source location may change during a project life,\n"
@@ -21105,6 +21784,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 +21852,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 +21914,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 +22122,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 some obsolete markers!\n"
+msgstr "не удалось протолкнуть некоторые маркеры устаревших ревизий!\n"
+
 #, python-format
 msgid "%d changesets found\n"
 msgstr "найдено %d наборов изменений\n"
@@ -21484,8 +22188,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 +22208,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 +22371,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 +22427,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 +22551,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 +22597,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 +22712,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 +22721,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 +22735,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 +22754,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 +22769,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 +22812,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 +22861,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 changesets with obsolete descendants 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 +23008,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 +23032,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 +23164,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 +23264,7 @@
 "``public()``\n"
 "    Набор изменений в публичной фазе."
 
+#. i18n: "public" is a keyword
 msgid "public takes no arguments"
 msgstr "public не требует аргументов"
 
@@ -22441,7 +23337,7 @@
 msgstr ""
 "    Для поиска ревизий с несколькими совпадающими полями, задайте список "
 "имен,\n"
-"    полей, разделенных пробелами (например, ``author dexcription``)."
+"    полей, разделенных пробелами (например, ``author description``)."
 
 msgid ""
 "    Valid fields are most regular revision fields and some special fields."
@@ -22449,16 +23345,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 +23381,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 +23415,7 @@
 "``secret()``\n"
 "    Набор изменений в секретной фазе."
 
+#. i18n: "secret" is a keyword
 msgid "secret takes no arguments"
 msgstr "secret не требует аргументов"
 
@@ -22541,6 +23448,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 +23456,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 +23475,21 @@
 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"
+"    Non-obsolete changesets with obsolete ancestors."
+msgstr ""
+"``unstable()``\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 +23497,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 +23847,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 +23879,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 +24233,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 +24298,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 +24321,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 +24646,458 @@
 msgstr "ошибка при проталкивании:"
 
 #~ msgid ""
+#~ "``unstable()``\n"
+#~ "    Unstable changesets are non-obsolete with obsolete descendants."
+#~ msgstr ""
+#~ "``unstable()``\n"
+#~ "    Нестабильные наборы изменений - не устаревшие наборы изменений\n"
+#~ "    с устаревшими потомками."
+
+#~ 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 ""