merge with i18n stable
authorAlexander Sauta <demosito@gmail.com>
Mon, 04 Aug 2014 16:21:58 +0100
branchstable
changeset 22065 45a01832cad1
parent 22064 ec7555522ccf (current diff)
parent 21975 8cab8a5006a5 (diff)
child 22066 43b93194a77a
merge with i18n
--- a/.hgsigs	Mon Aug 04 18:51:18 2014 +0400
+++ b/.hgsigs	Mon Aug 04 16:21:58 2014 +0100
@@ -91,3 +91,4 @@
 269c80ee5b3cb3684fa8edc61501b3506d02eb10 0 iQIVAwUAU4uX5CBXgaxoKi1yAQLpdg/+OxulOKwZN+Nr7xsRhUijYjyAElRf2mGDvMrbAOA2xNf85DOXjOrX5TKETumf1qANA5cHa1twA8wYgxUzhx30H+w5EsLjyeSsOncRnD5WZNqSoIq2XevT0T4c8xdyNftyBqK4h/SC/t2h3vEiSCUaGcfNK8yk4XO45MIk4kk9nlA9jNWdA5ZMLgEFBye2ggz0JjEAPUkVDqlr9sNORDEbnwZxGPV8CK9HaL/I8VWClaFgjKQmjqV3SQsNFe2XPffzXmIipFJ+ODuXVxYpAsvLiGmcfuUfSDHQ4L9QvjBsWe1PgYMr/6CY/lPYmR+xW5mJUE9eIdN4MYcXgicLrmMpdF5pToNccNCMtfa6CDvEasPRqe2bDzL/Q9dQbdOVE/boaYBlgmYLL+/u+dpqip9KkyGgbSo9uJzst1mLTCzJmr5bw+surul28i9HM+4+Lewg4UUdHLz46no1lfTlB5o5EAhiOZBTEVdoBaKfewVpDa/aBRvtWX7UMVRG5qrtA0sXwydN00Jaqkr9m20W0jWjtc1ZC72QCrynVHOyfIb2rN98rnuy2QN4bTvjNpNjHOhhhPTOoVo0YYPdiUupm46vymUTQCmWsglU4Rlaa3vXneP7JenL5TV8WLPs9J28lF0IkOnyBXY7OFcpvYO1euu7iR1VdjfrQukMyaX18usymiA=
 2d8cd3d0e83c7336c0cb45a9f88638363f993848 0 iQIVAwUAU7OLTCBXgaxoKi1yAQJ+pw/+M3yOesgf55eo3PUTZw02QZxDyEg9ElrRc6664/QFXaJuYdz8H3LGG/NYs8uEdYihiGpS1Qc70jwd1IoUlrCELsaSSZpzWQ+VpQFX29aooBoetfL+8WgqV8zJHCtY0E1EBg/Z3ZL3n2OS++fVeWlKtp5mwEq8uLTUmhIS7GseP3bIG/CwF2Zz4bzhmPGK8V2s74aUvELZLCfkBE1ULNs7Nou1iPDGnhYOD53eq1KGIPlIg1rnLbyYw5bhS20wy5IxkWf2eCaXfmQBTG61kO5m3nkzfVgtxmZHLqYggISTJXUovfGsWZcp5a71clCSMVal+Mfviw8L/UPHG0Ie1c36djJiFLxM0f2HlwVMjegQOZSAeMGg1YL1xnIys2zMMsKgEeR+JISTal1pJyLcT9x5mr1HCnUczSGXE5zsixN+PORRnZOqcEZTa2mHJ1h5jJeEm36B/eR57BMJG+i0QgZqTpLzYTFrp2eWokGMjFB1MvgAkL2YoRsw9h6TeIwqzK8mFwLi28bf1c90gX9uMbwY/NOqGzfQKBR9bvCjs2k/gmJ+qd5AbC3DvOxHnN6hRZUqNq76Bo4F+CUVcjQ/NXnfnOIVNbILpl5Un5kl+8wLFM+mNxDxduajaUwLhSHZofKmmCSLbuuaGmQTC7a/4wzhQM9e5dX0X/8sOo8CptW7uw4=
 6c36dc6cd61a0e1b563f1d51e55bdf4dacf12162 0 iQIVAwUAU8n97yBXgaxoKi1yAQKqcA/+MT0VFoP6N8fHnlxj85maoM2HfZbAzX7oEW1B8F1WH6rHESHDexDWIYWJ2XnEeTD4GCXN0/1p+O/I0IMPNzqoSz8BU0SR4+ejhRkGrKG7mcFiF5G8enxaiISn9nmax6DyRfqtOQBzuXYGObXg9PGvMS6zbR0SorJK61xX7fSsUNN6BAvHJfpwcVkOrrFAIpEhs/Gh9wg0oUKCffO/Abs6oS+P6nGLylpIyXqC7rKZ4uPVc6Ljh9DOcpV4NCU6kQbNE7Ty79E0/JWWLsHOEY4F4WBzI7rVh7dOkRMmfNGaqvKkuNkJOEqTR1o1o73Hhbxn4NU7IPbVP/zFKC+/4QVtcPk2IPlpK1MqA1H2hBNYZhJlNhvAa7LwkIxM0916/zQ8dbFAzp6Ay/t/L0tSEcIrudTz2KTrY0WKw+pkzB/nTwaS3XZre6H2B+gszskmf1Y41clkIy/nH9K7zBuzANWyK3+bm40vmMoBbbnsweUAKkyCwqm4KTyQoYQWzu/ZiZcI+Uuk/ajJ9s7EhJbIlSnYG9ttWL/IZ1h+qPU9mqVO9fcaqkeL/NIRh+IsnzaWo0zmHU1bK+/E29PPGGf3v6+IEJmXg7lvNl5pHiMd2tb7RNO/UaNSv1Y2E9naD4FQwSWo38GRBcnRGuKCLdZNHGUR+6dYo6BJCGG8wtZvNXb3TOo=
+3178e49892020336491cdc6945885c4de26ffa8b 0 iQIVAwUAU9whUCBXgaxoKi1yAQJDKxAAoGzdHXV/BvZ598VExEQ8IqkmBVIP1QZDVBr/orMc1eFM4tbGKxumMGbqgJsg+NetI0irkh/YWeJQ13lT4Og72iJ+4UC9eF9pcpUKr/0eBYdU2N/p2MIbVNWh3aF5QkbuQpSri0VbHOWkxqwoqrrwXEjgHaKYP4PKh+Dzukax4yzBUIyzAG38pt4a8hbjnozCl2uAikxk4Ojg+ZufhPoZWgFEuYzSfK5SrwVKOwuxKYFGbbVGTQMIXLvBhOipAmHp4JMEYHfG85kwuyx/DCDbGmXKPQYQfClwjJ4ob/IwG8asyMsPWs+09vrvpVO08HBuph3GjuiWJ1fhEef/ImWmZdQySI9Y4SjwP4dMVfzLCnY+PYPDM9Sq/5Iee13gI2lVM2NtAfQZPXh9l8u6SbCir1UhMNMx0qVMkqMAATmiZ+ETHCO75q4Wdcmnv5fk2PbvaGBVtrHGeiyuz5mK/j4cMbd0R9R0hR1PyC4dOhNqOnbqELNIe0rKNByG1RkpiQYsqZTU6insmnZrv4fVsxfA4JOObPfKNT4oa24MHS73ldLFCfQAuIxVE7RDJJ3bHeh/yO6Smo28FuVRldBl5e+wj2MykS8iVcuSa1smw6gJ14iLBH369nlR3fAAQxI0omVYPDHLr7SsH3vJasTaCD7V3SL4lW6vo/yaAh4ImlTAE+Y=
--- a/.hgtags	Mon Aug 04 18:51:18 2014 +0400
+++ b/.hgtags	Mon Aug 04 16:21:58 2014 +0100
@@ -104,3 +104,4 @@
 269c80ee5b3cb3684fa8edc61501b3506d02eb10 3.0.1
 2d8cd3d0e83c7336c0cb45a9f88638363f993848 3.0.2
 6c36dc6cd61a0e1b563f1d51e55bdf4dacf12162 3.1-rc
+3178e49892020336491cdc6945885c4de26ffa8b 3.1
--- a/hgext/convert/git.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/hgext/convert/git.py	Mon Aug 04 16:21:58 2014 +0100
@@ -127,7 +127,8 @@
         size = int(info[2])
         data = self.catfilepipe[1].read(size)
         if len(data) < size:
-            raise util.Abort(_('cannot read %r object at %s: %s') % (type, rev))
+            raise util.Abort(_('cannot read %r object at %s: unexpected size')
+                             % (type, rev))
         # read the trailing newline
         self.catfilepipe[1].read(1)
         return data
--- a/hgext/fetch.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/hgext/fetch.py	Mon Aug 04 16:21:58 2014 +0100
@@ -19,7 +19,7 @@
 @command('fetch',
     [('r', 'rev', [],
      _('a specific revision you would like to pull'), _('REV')),
-    ('e', 'edit', None, _('edit commit message')),
+    ('e', 'edit', None, _('invoke editor on commit messages')),
     ('', 'force-editor', None, _('edit commit message (DEPRECATED)')),
     ('', 'switch-parent', None, _('switch parents when merging')),
     ] + commands.commitopts + commands.commitopts2 + commands.remoteopts,
--- a/hgext/gpg.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/hgext/gpg.py	Mon Aug 04 16:21:58 2014 +0100
@@ -203,7 +203,7 @@
           ('k', 'key', '',
            _('the key id to sign with'), _('ID')),
           ('m', 'message', '',
-           _('commit message'), _('TEXT')),
+           _('use text as commit message'), _('TEXT')),
           ('e', 'edit', False, _('invoke editor on commit messages')),
          ] + commands.commitopts2,
          _('hg sign [OPTION]... [REV]...'))
--- a/hgext/histedit.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/hgext/histedit.py	Mon Aug 04 16:21:58 2014 +0100
@@ -158,6 +158,7 @@
 from mercurial import hg
 from mercurial import node
 from mercurial import repair
+from mercurial import scmutil
 from mercurial import util
 from mercurial import obsolete
 from mercurial import merge as mergemod
@@ -567,11 +568,11 @@
                 remote = None
             root = findoutgoing(ui, repo, remote, force, opts)
         else:
-            rootrevs = list(repo.set('roots(%lr)', revs))
-            if len(rootrevs) != 1:
+            rr = list(repo.set('roots(%ld)', scmutil.revrange(repo, revs)))
+            if len(rr) != 1:
                 raise util.Abort(_('The specified revisions must have '
                     'exactly one common root'))
-            root = rootrevs[0].node()
+            root = rr[0].node()
 
         keep = opts.get('keep', False)
         revs = between(repo, root, topmost, keep)
--- a/hgext/mq.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/hgext/mq.py	Mon Aug 04 16:21:58 2014 +0100
@@ -1995,12 +1995,12 @@
                 self.added.append(patchname)
                 imported.append(patchname)
                 patchname = None
-            if rev and repo.ui.configbool('mq', 'secret', False):
-                # if we added anything with --rev, we must move the secret root
-                phases.retractboundary(repo, phases.secret, [n])
-            self.parseseries()
-            self.applieddirty = True
-            self.seriesdirty = True
+                if rev and repo.ui.configbool('mq', 'secret', False):
+                    # if we added anything with --rev, move the secret root
+                    phases.retractboundary(repo, phases.secret, [n])
+                self.parseseries()
+                self.applieddirty = True
+                self.seriesdirty = True
 
         for i, filename in enumerate(files):
             if existing:
@@ -2407,7 +2407,7 @@
         opts['date'] = "%d %d" % util.makedate()
 
 @command("^qnew",
-         [('e', 'edit', None, _('edit commit message')),
+         [('e', 'edit', None, _('invoke editor on commit messages')),
           ('f', 'force', None, _('import uncommitted changes (DEPRECATED)')),
           ('g', 'git', None, _('use git extended diff format')),
           ('U', 'currentuser', None, _('add "From: <current user>" to patch')),
@@ -2453,7 +2453,7 @@
     return 0
 
 @command("^qrefresh",
-         [('e', 'edit', None, _('edit commit message')),
+         [('e', 'edit', None, _('invoke editor on commit messages')),
           ('g', 'git', None, _('use git extended diff format')),
           ('s', 'short', None,
            _('refresh only files already in the patch and specified files')),
@@ -2523,7 +2523,7 @@
     return 0
 
 @command('qfold',
-         [('e', 'edit', None, _('edit patch header')),
+         [('e', 'edit', None, _('invoke editor on commit messages')),
           ('k', 'keep', None, _('keep folded patch files')),
          ] + commands.commitopts,
          _('hg qfold [-e] [-k] [-m TEXT] [-l FILE] PATCH...'))
--- a/i18n/ja.po	Mon Aug 04 18:51:18 2014 +0400
+++ b/i18n/ja.po	Mon Aug 04 16:21:58 2014 +0100
@@ -149,8 +149,8 @@
 msgstr ""
 "Project-Id-Version: Mercurial\n"
 "Report-Msgid-Bugs-To: <mercurial-devel@selenic.com>\n"
-"POT-Creation-Date: 2014-06-30 18:45+0900\n"
-"PO-Revision-Date: 2014-06-30 19:03+0900\n"
+"POT-Creation-Date: 2014-08-01 17:00+0900\n"
+"PO-Revision-Date: 2014-08-01 17:24+0900\n"
 "Last-Translator: Japanese translation team <mercurial-ja@googlegroups.com>\n"
 "Language-Team: Japanese\n"
 "Language: ja\n"
@@ -1173,7 +1173,7 @@
 "    bzurl=http://my-project.org/bugzilla\n"
 "    user=bugmail@my-project.org\n"
 "    password=plugh\n"
-"    version=xmlrpc\n"
+"    version=xmlrpc+email\n"
 "    bzemail=bugzilla@my-project.org\n"
 "    template=Changeset {node|short} in {root|basename}.\n"
 "             {hgweb}/{webroot}/rev/{node|short}\\n\n"
@@ -1184,7 +1184,7 @@
 "    bzurl=http://my-project.org/bugzilla\n"
 "    user=bugmail@my-project.org\n"
 "    password=plugh\n"
-"    version=xmlrpc\n"
+"    version=xmlrpc+email\n"
 "    bzemail=bugzilla@my-project.org\n"
 "    template=Changeset {node|short} in {root|basename}.\n"
 "             {hgweb}/{webroot}/rev/{node|short}\\n\n"
@@ -1357,6 +1357,15 @@
 "本エクステンションは非推奨です。:hg:`log -r \"children(REV)\"`\n"
 "を使用してください。\n"
 
+msgid "REV"
+msgstr "リビジョン"
+
+msgid "show children of the specified revision"
+msgstr "指定リビジョンの子リビジョンの表示"
+
+msgid "hg children [-r REV] [FILE]"
+msgstr "hg children [-r REV] [FILE]"
+
 msgid "show the children of the given or working directory revision"
 msgstr "指定リビジョンの子リビジョンの表示"
 
@@ -1375,15 +1384,6 @@
 "    します。\n"
 "    "
 
-msgid "REV"
-msgstr "リビジョン"
-
-msgid "show children of the specified revision"
-msgstr "指定リビジョンの子リビジョンの表示"
-
-msgid "hg children [-r REV] [FILE]"
-msgstr "hg children [-r REV] [FILE]"
-
 msgid "command to display statistics about repository history"
 msgstr "変更履歴の統計情報表示のコマンド"
 
@@ -1394,6 +1394,45 @@
 msgid "analyzing"
 msgstr "解析中"
 
+msgid "count rate for the specified revision or range"
+msgstr "処理対象とする特定リビジョン/範囲の指定"
+
+msgid "DATE"
+msgstr "日時"
+
+msgid "count rate for revisions matching date spec"
+msgstr "指定日時と一致したリビジョンを処理対象とする"
+
+msgid "TEMPLATE"
+msgstr "テンプレート"
+
+msgid "template to group changesets"
+msgstr "リビジョン表示をグループ化するためのテンプレート"
+
+msgid "FORMAT"
+msgstr "書式"
+
+msgid "strftime-compatible format for grouping by date"
+msgstr "日時グループ化のための strftime 互換形式フォーマット"
+
+msgid "count rate by number of changesets"
+msgstr "リビジョン数で統計"
+
+msgid "sort by key (default: sort by count)"
+msgstr "キーによる整列(無指定時: 統計量で整列)"
+
+msgid "display added/removed lines separately"
+msgstr "追加/削除行表示の分離"
+
+msgid "FILE"
+msgstr "ファイル"
+
+msgid "file with email aliases"
+msgstr "ユーザ名変換用ファイル"
+
+msgid "hg churn [-d DATE] [-r REV] [--aliases FILE] [FILE]"
+msgstr "hg churn [-d DATE] [-r REV] [--aliases FILE] [FILE]"
+
 msgid "histogram of changes to the repository"
 msgstr "リポジトリにおける変更の統計分布表示"
 
@@ -1475,45 +1514,6 @@
 msgid "skipping malformed alias: %s\n"
 msgstr "不正な形式の別名を無視: %s\n"
 
-msgid "count rate for the specified revision or range"
-msgstr "処理対象とする特定リビジョン/範囲の指定"
-
-msgid "DATE"
-msgstr "日時"
-
-msgid "count rate for revisions matching date spec"
-msgstr "指定日時と一致したリビジョンを処理対象とする"
-
-msgid "TEMPLATE"
-msgstr "テンプレート"
-
-msgid "template to group changesets"
-msgstr "リビジョン表示をグループ化するためのテンプレート"
-
-msgid "FORMAT"
-msgstr "書式"
-
-msgid "strftime-compatible format for grouping by date"
-msgstr "日時グループ化のための strftime 互換形式フォーマット"
-
-msgid "count rate by number of changesets"
-msgstr "リビジョン数で統計"
-
-msgid "sort by key (default: sort by count)"
-msgstr "キーによる整列(無指定時: 統計量で整列)"
-
-msgid "display added/removed lines separately"
-msgstr "追加/削除行表示の分離"
-
-msgid "FILE"
-msgstr "ファイル"
-
-msgid "file with email aliases"
-msgstr "ユーザ名変換用ファイル"
-
-msgid "hg churn [-d DATE] [-r REV] [--aliases FILE] [FILE]"
-msgstr "hg churn [-d DATE] [-r REV] [--aliases FILE] [FILE]"
-
 msgid "colorize output from some commands"
 msgstr "コマンド出力のカラー化"
 
@@ -1766,6 +1766,45 @@
 msgid "import revisions from foreign VCS repositories into Mercurial"
 msgstr "他の構成管理ツールから Mercurial への履歴取り込み"
 
+msgid "username mapping filename (DEPRECATED, use --authormap instead)"
+msgstr "ユーザ名変換ファイルの指定 (非推奨: --authormap を使用してください)"
+
+msgid "source repository type"
+msgstr "変換元リポジトリ種別"
+
+msgid "destination repository type"
+msgstr "変換先のリポジトリ種別"
+
+msgid "import up to source revision REV"
+msgstr "変換元の指定リビジョンまでの取り込み"
+
+msgid "remap usernames using this file"
+msgstr "変換時のユーザ名変換用ファイル"
+
+msgid "remap file names using contents of file"
+msgstr "変換時のファイル名変換用ファイル"
+
+msgid "splice synthesized history into place"
+msgstr "継ぎ合わせによる履歴の合成"
+
+msgid "change branch names while converting"
+msgstr "変換時のブランチ名変換用ファイル"
+
+msgid "try to sort changesets by branches"
+msgstr "ブランチによるリビジョンの並び替え"
+
+msgid "try to sort changesets by date"
+msgstr "日付によるリビジョンの並び替え"
+
+msgid "preserve source changesets order"
+msgstr "元リポジトリでのリビジョン順を尊重"
+
+msgid "try to reorder closed revisions"
+msgstr "閉鎖実施リビジョン群の並び替え"
+
+msgid "hg convert [OPTION]... SOURCE [DEST [REVMAP]]"
+msgstr "hg convert [OPTION]... SOURCE [DEST [REVMAP]]"
+
 msgid "convert a foreign SCM repository to a Mercurial one."
 msgstr "別 SCM のリポジトリから Mercurial リポジトリへの変換"
 
@@ -2307,65 +2346,6 @@
 "        デフォルト値は True。\n"
 "    "
 
-msgid "create changeset information from CVS"
-msgstr "CVS からのリビジョン情報の作成"
-
-msgid ""
-"    This command is intended as a debugging tool for the CVS to\n"
-"    Mercurial converter, and can be used as a direct replacement for\n"
-"    cvsps."
-msgstr ""
-"    本コマンドの位置付けは、 CVS から Mercurial への変換におけるデバッグ\n"
-"    ツールであり、 cvsps の代替ツールとして使用可能です。"
-
-msgid ""
-"    Hg debugcvsps reads the CVS rlog for current directory (or any\n"
-"    named directory) in the CVS repository, and converts the log to a\n"
-"    series of changesets based on matching commit log entries and\n"
-"    dates."
-msgstr ""
-"    本コマンドは、 現ディレクトリ (または指定ディレクトリ) 中の CVS rlog\n"
-"    を読み込み、 コミットログの内容と日付を元にリビジョンを推測します。"
-
-msgid "username mapping filename (DEPRECATED, use --authormap instead)"
-msgstr "ユーザ名変換ファイルの指定 (非推奨: --authormap を使用してください)"
-
-msgid "source repository type"
-msgstr "変換元リポジトリ種別"
-
-msgid "destination repository type"
-msgstr "変換先のリポジトリ種別"
-
-msgid "import up to source revision REV"
-msgstr "変換元の指定リビジョンまでの取り込み"
-
-msgid "remap usernames using this file"
-msgstr "変換時のユーザ名変換用ファイル"
-
-msgid "remap file names using contents of file"
-msgstr "変換時のファイル名変換用ファイル"
-
-msgid "splice synthesized history into place"
-msgstr "継ぎ合わせによる履歴の合成"
-
-msgid "change branch names while converting"
-msgstr "変換時のブランチ名変換用ファイル"
-
-msgid "try to sort changesets by branches"
-msgstr "ブランチによるリビジョンの並び替え"
-
-msgid "try to sort changesets by date"
-msgstr "日付によるリビジョンの並び替え"
-
-msgid "preserve source changesets order"
-msgstr "元リポジトリでのリビジョン順を尊重"
-
-msgid "try to reorder closed revisions"
-msgstr "閉鎖実施リビジョン群の並び替え"
-
-msgid "hg convert [OPTION]... SOURCE [DEST [REVMAP]]"
-msgstr "hg convert [OPTION]... SOURCE [DEST [REVMAP]]"
-
 msgid "only return changes on specified branches"
 msgstr "指定ブランチのみの変換"
 
@@ -2399,6 +2379,26 @@
 msgid "hg debugcvsps [OPTION]... [PATH]..."
 msgstr "hg debugcvsps [OPTION]... [PATH]..."
 
+msgid "create changeset information from CVS"
+msgstr "CVS からのリビジョン情報の作成"
+
+msgid ""
+"    This command is intended as a debugging tool for the CVS to\n"
+"    Mercurial converter, and can be used as a direct replacement for\n"
+"    cvsps."
+msgstr ""
+"    本コマンドの位置付けは、 CVS から Mercurial への変換におけるデバッグ\n"
+"    ツールであり、 cvsps の代替ツールとして使用可能です。"
+
+msgid ""
+"    Hg debugcvsps reads the CVS rlog for current directory (or any\n"
+"    named directory) in the CVS repository, and converts the log to a\n"
+"    series of changesets based on matching commit log entries and\n"
+"    dates."
+msgstr ""
+"    本コマンドは、 現ディレクトリ (または指定ディレクトリ) 中の CVS rlog\n"
+"    を読み込み、 コミットログの内容と日付を元にリビジョンを推測します。"
+
 msgid ":svnrev: String. Converted subversion revision number."
 msgstr ":svnrev: 文字列。 変換元の subversion リビジョン番号。"
 
@@ -2726,6 +2726,10 @@
 msgstr "%r オブジェクトが %s から読み込めません"
 
 #, python-format
+msgid "cannot read %r object at %s: unexpected size"
+msgstr "%r オブジェクトが %s から読み込めません: 想定外のサイズ"
+
+#, python-format
 msgid "cannot read submodules config file in %s"
 msgstr "%s におけるサブモジュールの設定ファイルが読み込めません"
 
@@ -3313,6 +3317,27 @@
 msgid "cleaning up temp directory\n"
 msgstr "一時ディレクトリの破棄中\n"
 
+msgid "CMD"
+msgstr "コマンド"
+
+msgid "comparison program to run"
+msgstr "差分表示プログラム"
+
+msgid "OPT"
+msgstr "オプション"
+
+msgid "pass option to comparison program"
+msgstr "差分表示プログラムへのオプション指定"
+
+msgid "revision"
+msgstr "リビジョン"
+
+msgid "change made by revision"
+msgstr "当該リビジョンにおける変更内容の表示"
+
+msgid "hg extdiff [OPT]... [FILE]..."
+msgstr "hg extdiff [OPT]... [FILE]..."
+
 msgid "use external program to diff repository (or selected files)"
 msgstr "外部コマンドを使用したリポジトリ(または指定ファイル)の差分表示"
 
@@ -3348,27 +3373,6 @@
 "    リビジョンが1つ指定された場合、 作業領域との間の差分が表示されます。\n"
 "    リビジョンが指定されない場合、 作業領域と親との差分が表示されます。"
 
-msgid "CMD"
-msgstr "コマンド"
-
-msgid "comparison program to run"
-msgstr "差分表示プログラム"
-
-msgid "OPT"
-msgstr "オプション"
-
-msgid "pass option to comparison program"
-msgstr "差分表示プログラムへのオプション指定"
-
-msgid "revision"
-msgstr "リビジョン"
-
-msgid "change made by revision"
-msgstr "当該リビジョンにおける変更内容の表示"
-
-msgid "hg extdiff [OPT]... [FILE]..."
-msgstr "hg extdiff [OPT]... [FILE]..."
-
 #, python-format
 msgid "use %(path)s to diff repository (or selected files)"
 msgstr "%(path)s によるリポジトリ(または指定ファイル)の差分表示"
@@ -3454,6 +3458,21 @@
 msgid "pull, update and merge in one command (DEPRECATED)"
 msgstr "pull, update, merge の一括実行 (非推奨)"
 
+msgid "a specific revision you would like to pull"
+msgstr "取り込み対象リビジョンの指定"
+
+msgid "invoke editor on commit messages"
+msgstr "コミットログ入力にエディタを起動"
+
+msgid "edit commit message (DEPRECATED)"
+msgstr "コミットログの編集(非推奨)"
+
+msgid "switch parents when merging"
+msgstr "マージの際の第1親リビジョンを切り替え"
+
+msgid "hg fetch [SOURCE]"
+msgstr "hg fetch [SOURCE]"
+
 msgid "pull changes from a remote repository, merge new changes if needed."
 msgstr "連携先リポジトリからの取り込みと、 必要に応じたマージ実施"
 
@@ -3541,21 +3560,6 @@
 msgid "new changeset %d:%s merges remote changes with local\n"
 msgstr "新規リビジョン %d:%s により、連携先とローカルのリビジョンをマージ\n"
 
-msgid "a specific revision you would like to pull"
-msgstr "取り込み対象リビジョンの指定"
-
-msgid "edit commit message"
-msgstr "コミットログの編集"
-
-msgid "edit commit message (DEPRECATED)"
-msgstr "コミットログの編集(非推奨)"
-
-msgid "switch parents when merging"
-msgstr "マージの際の第1親リビジョンを切り替え"
-
-msgid "hg fetch [SOURCE]"
-msgstr "hg fetch [SOURCE]"
-
 msgid "commands to sign and verify changesets"
 msgstr "リビジョンへの署名および検証コマンド"
 
@@ -3613,8 +3617,8 @@
 msgid "TEXT"
 msgstr "テキスト"
 
-msgid "commit message"
-msgstr "コミットログ"
+msgid "use text as commit message"
+msgstr "指定テキストをコミットログとして使用"
 
 msgid "hg sign [OPTION]... [REV]..."
 msgstr "hg sign [OPTION]... [REV]..."
@@ -3885,42 +3889,6 @@
 "上記設定により、 リビジョンのコンテキストメニューには、 対象リビジョンと、\n"
 "指定したリビジョンに対して、 vdiff を起動する項目が追加されます。\n"
 
-msgid "diff trees from two commits"
-msgstr "2リビジョン間の差分ツリー表示"
-
-msgid "output common ancestor information"
-msgstr "共通の祖先リビジョンの情報表示"
-
-msgid "cat a specific revision"
-msgstr "指定リビジョン時点の内容表示"
-
-msgid "cat-file: type or revision not supplied\n"
-msgstr "cat-file: 種別もリビジョンも指定されていません\n"
-
-msgid "aborting hg cat-file only understands commits\n"
-msgstr "中止: catfile は commit 種別でのみ実行可能です\n"
-
-msgid "parse given revisions"
-msgstr "指定リビジョンの解析"
-
-msgid "print revisions"
-msgstr "リビジョンの表示"
-
-msgid "print extension options"
-msgstr "エクステンション設定の表示"
-
-msgid "start interactive history viewer"
-msgstr "対話的な履歴参照の開始"
-
-msgid "NUM"
-msgstr "数値"
-
-msgid "limit number of changes displayed"
-msgstr "最大表示リビジョン数"
-
-msgid "hg view [-l LIMIT] [REVRANGE]"
-msgstr "hg view [-l LIMIT] [REVRANGE]"
-
 msgid "generate patch"
 msgstr "パッチの生成"
 
@@ -3939,17 +3907,26 @@
 msgid "search"
 msgstr "検索"
 
-msgid "hg git-diff-tree [OPTION]... NODE1 NODE2 [FILE]..."
-msgstr "hg git-diff-tree [OPTION]... NODE1 NODE2 [FILE]..."
+msgid "diff trees from two commits"
+msgstr "2リビジョン間の差分ツリー表示"
+
+msgid "hg debug-merge-base REV REV"
+msgstr "hg debug-merge-base REV REV"
+
+msgid "output common ancestor information"
+msgstr "共通の祖先リビジョンの情報表示"
 
 msgid "hg debug-cat-file [OPTION]... TYPE FILE"
 msgstr "hg debug-cat-file [OPTION]... TYPE FILE"
 
-msgid "hg debug-config"
-msgstr "hg debug-config"
-
-msgid "hg debug-merge-base REV REV"
-msgstr "hg debug-merge-base REV REV"
+msgid "cat a specific revision"
+msgstr "指定リビジョン時点の内容表示"
+
+msgid "cat-file: type or revision not supplied\n"
+msgstr "cat-file: 種別もリビジョンも指定されていません\n"
+
+msgid "aborting hg cat-file only understands commits\n"
+msgstr "中止: catfile は commit 種別でのみ実行可能です\n"
 
 #. i18n: bisect changeset status
 msgid "ignored"
@@ -3958,6 +3935,9 @@
 msgid "hg debug-rev-parse REV"
 msgstr "hg debug-rev-parse REV"
 
+msgid "parse given revisions"
+msgstr "指定リビジョンの解析"
+
 msgid "header"
 msgstr "ヘッダ"
 
@@ -3970,8 +3950,26 @@
 msgid "max-count"
 msgstr "最大数"
 
-msgid "hg debug-rev-list [OPTION]... REV..."
-msgstr "hg debug-rev-list [OPTION]... REV..."
+msgid "print revisions"
+msgstr "リビジョンの表示"
+
+msgid "hg debug-config"
+msgstr "hg debug-config"
+
+msgid "print extension options"
+msgstr "エクステンション設定の表示"
+
+msgid "NUM"
+msgstr "数値"
+
+msgid "limit number of changes displayed"
+msgstr "最大表示リビジョン数"
+
+msgid "hg view [-l LIMIT] [REVRANGE]"
+msgstr "hg view [-l LIMIT] [REVRANGE]"
+
+msgid "start interactive history viewer"
+msgstr "対話的な履歴参照の開始"
 
 msgid "syntax highlighting for hgweb (requires Pygments)"
 msgstr "hgweb におけるシンタックスハイライト (要 Pygments)"
@@ -5138,6 +5136,15 @@
 msgid "%s does not appear to be a largefile store"
 msgstr "%s は largefiles 対応とは思われません"
 
+msgid "minimum size (MB) for files to be converted as largefiles"
+msgstr "大容量ファイル化するファイルの最小サイズ (MB)"
+
+msgid "convert from a largefiles repo to a normal repo"
+msgstr "大容量ファイル使用リポジトリから通常リポジトリへの変換"
+
+msgid "hg lfconvert SOURCE DEST [FILE ...]"
+msgstr "hg lfconvert SOURCE DEST [FILE ...]"
+
 #, python-format
 msgid "%s is not a local Mercurial repo"
 msgstr "%s はローカルの Mercurial リポジトリではありません"
@@ -5195,6 +5202,12 @@
 msgid "%d largefiles updated, %d removed\n"
 msgstr "大容量ファイルの更新数 %d、 削除数 %d\n"
 
+msgid "pull largefiles for these revisions"
+msgstr "指定リビジョンに関連する大容量ファイルを入手"
+
+msgid "-r REV... [-e CMD] [--remotecmd CMD] [SOURCE]"
+msgstr "-r REV... [-e CMD] [--remotecmd CMD] [SOURCE]"
+
 msgid "no revisions specified"
 msgstr "リビジョン指定がありません"
 
@@ -5206,21 +5219,6 @@
 msgid "%d largefiles cached\n"
 msgstr "大容量ファイル %d 個をキャッシュ\n"
 
-msgid "minimum size (MB) for files to be converted as largefiles"
-msgstr "大容量ファイル化するファイルの最小サイズ (MB)"
-
-msgid "convert from a largefiles repo to a normal repo"
-msgstr "大容量ファイル使用リポジトリから通常リポジトリへの変換"
-
-msgid "hg lfconvert SOURCE DEST [FILE ...]"
-msgstr "hg lfconvert SOURCE DEST [FILE ...]"
-
-msgid "pull largefiles for these revisions"
-msgstr "指定リビジョンに関連する大容量ファイルを入手"
-
-msgid "-r REV... [-e CMD] [--remotecmd CMD] [SOURCE]"
-msgstr "-r REV... [-e CMD] [--remotecmd CMD] [SOURCE]"
-
 #, python-format
 msgid "largefiles: size must be number (not %s)\n"
 msgstr "largefiles: サイズは数値で指定してください (%s は不正です)\n"
@@ -5347,8 +5345,9 @@
 msgid "largefiles: no files to upload\n"
 msgstr "largefiles: 転送予定ファイルはありません\n"
 
-msgid "largefiles to upload:\n"
-msgstr "転送予定大容量ファイル:\n"
+#, python-format
+msgid "largefiles to upload (%d entities):\n"
+msgstr "転送予定大容量ファイル (実体数 %d):\n"
 
 #. i18n: column positioning for "hg summary"
 msgid "largefiles: (no remote repo)\n"
@@ -5360,8 +5359,8 @@
 
 #. i18n: column positioning for "hg summary"
 #, python-format
-msgid "largefiles: %d to upload\n"
-msgstr "largefiles:   %d 個の転送予定ファイル\n"
+msgid "largefiles: %d entities for %d files to upload\n"
+msgstr "largefiles: %d 個のファイルに対して %d 個の実体を転送予定\n"
 
 #, python-format
 msgid "largefile %s is not in cache and could not be downloaded"
@@ -5774,6 +5773,10 @@
 msgid "cannot write patch \"%s\": %s"
 msgstr "パッチ \"%s\" の書き出しに失敗: %s"
 
+#. i18n: this message is shown in editor with "HG: " prefix
+msgid "Leave message empty to use default message."
+msgstr "メッセージが空のままならコミットを中止します。"
+
 #, python-format
 msgid "error unlinking %s\n"
 msgstr "%s の unlink に失敗\n"
@@ -6413,9 +6416,6 @@
 "    通常と変わりなく機能します。 git 差分形式の詳細に関しては、\n"
 "    'help diffs' を参照してください。"
 
-msgid "option \"-e\" incompatible with \"-m\" or \"-l\""
-msgstr "\"-e\" と、 \"-m\" または \"-l\" は併用できません"
-
 msgid "hg qdiff [OPTION]... [FILE]..."
 msgstr "hg qdiff [OPTION]... [FILE]..."
 
@@ -6442,9 +6442,6 @@
 "    場合は :hg:`diff` を、 作業領域の変更内容を含まない現行パッチの内容\n"
 "    のみを見たい場合は :hg:`export qtip` を使用してください。"
 
-msgid "edit patch header"
-msgstr "パッチヘッダ内容の編集"
-
 msgid "keep folded patch files"
 msgstr "併合対象パッチのパッチファイル削除を抑止"
 
@@ -7391,6 +7388,22 @@
 msgstr "pager.attend 設定時は pager.ignore 設定は無視されます。"
 
 msgid ""
+"Lastly, you can enable and disable paging for individual commands with\n"
+"the attend-<command> option. This setting takes precedence over\n"
+"existing attend and ignore options and defaults::"
+msgstr ""
+"``attend-<command>`` 設定により、 ページングの有無を、 個別のコマンド毎に、\n"
+"設定可能です。 既存の ``attend`` や ``ignore`` 設定やデフォルト挙動よりも、\n"
+"この設定が優先されます::"
+
+msgid ""
+"  [pager]\n"
+"  attend-cat = false"
+msgstr ""
+"  [pager]\n"
+"  attend-cat = false"
+
+msgid ""
 "To ignore global commands like :hg:`version` or :hg:`help`, you have\n"
 "to specify them in your user configuration file."
 msgstr ""
@@ -7401,11 +7414,11 @@
 msgid ""
 "The --pager=... option can also be used to control when the pager is\n"
 "used. Use a boolean value like yes, no, on, off, or use auto for\n"
-"normal behavior.\n"
+"normal behavior."
 msgstr ""
 "ページャーの使用は、 --pager=... でも制御できます。\n"
 "真偽値の yes no on off 以外に、 無指定時挙動に相当する auto\n"
-"を指定できます。\n"
+"を指定できます。"
 
 msgid "when to paginate (boolean, always, auto, or never)"
 msgstr "ページャーの要否 (真偽値、 always auto または never)"
@@ -7900,6 +7913,12 @@
 msgid "purge ignored files too"
 msgstr "無視対象ファイルも削除"
 
+msgid "purge empty directories"
+msgstr "空ディレクトリを削除"
+
+msgid "purge files"
+msgstr "ファイルを削除"
+
 msgid "print filenames instead of deleting them"
 msgstr "ファイル削除の変わりにファイル名表示を実施"
 
@@ -7920,8 +7939,8 @@
 "    記録済みのリビジョンや、 未コミット変更をテストする場合など、\n"
 "    作業領域を綺麗にしたい場合に有用です。"
 
-msgid "    This means that purge will delete:"
-msgstr "    本コマンドは、 以下のファイルを削除します:"
+msgid "    This means that purge will delete the following by default:"
+msgstr "    本コマンドのデフォルト挙動では、 以下のファイルが削除されます:"
 
 msgid ""
 "    - Unknown files: files marked with \"?\" by :hg:`status`\n"
@@ -7945,6 +7964,15 @@
 "    - 新規登録されたファイル (:hg:`add` 実施対象)"
 
 msgid ""
+"    The --files and --dirs options can be used to direct purge to delete\n"
+"    only files, only directories, or both. If neither option is given,\n"
+"    both will be deleted."
+msgstr ""
+"    ``--files``/``--dirs`` により、 ファイルのみ、 ディレクトリのみ、\n"
+"    あるいは両方を、 削除対象に指定できます。 オプション無指定の場合は、\n"
+"    ファイル・ディレクトリの両方が削除されます。"
+
+msgid ""
 "    If directories are given on the command line, only files in these\n"
 "    directories are considered."
 msgstr ""
@@ -8017,9 +8045,6 @@
 msgid "use text as collapse commit message"
 msgstr "指定テキストを要約コミットログとして使用"
 
-msgid "invoke editor on commit messages"
-msgstr "コミットログ入力にエディタを起動"
-
 msgid "read collapse commit message from file"
 msgstr "要約コミットログをファイルから読み込み"
 
@@ -8481,6 +8506,9 @@
 msgid "    This command is not available when committing a merge."
 msgstr "    本コマンドをマージのコミットに使用することはできません。"
 
+msgid "hg qrecord [OPTION]... PATCH [FILE]..."
+msgstr "hg qrecord [OPTION]... PATCH [FILE]..."
+
 msgid "interactively record a new patch"
 msgstr "新規パッチのコミット内容を対話的に選択"
 
@@ -8509,15 +8537,15 @@
 msgid "no changes to record\n"
 msgstr "記録可能な変更がありません\n"
 
-msgid "hg qrecord [OPTION]... PATCH [FILE]..."
-msgstr "hg qrecord [OPTION]... PATCH [FILE]..."
-
 msgid "interactively select changes to refresh"
 msgstr "パッチ更新内容を対話的に選択"
 
 msgid "recreates hardlinks between repository clones"
 msgstr "複製リポジトリ間でのハードリンクの再生成"
 
+msgid "[ORIGIN]"
+msgstr "[ORIGIN]"
+
 msgid "recreate hardlinks between two repositories"
 msgstr "2つのリポジトリ間でのハードリンクの再生成"
 
@@ -8614,9 +8642,6 @@
 msgid "relinked %d files (%s reclaimed)\n"
 msgstr "%d ファイルを再リンク (%s バイトの節約)\n"
 
-msgid "[ORIGIN]"
-msgstr "[ORIGIN]"
-
 msgid "extend schemes with shortcuts to repository swarms"
 msgstr "連携先リポジトリ群に対する略記指定の拡張"
 
@@ -8701,6 +8726,12 @@
 msgid "share a common history between several working directories"
 msgstr "複数作業領域による履歴情報領域の共有"
 
+msgid "do not create a working copy"
+msgstr "作業領域の更新を抑止します"
+
+msgid "[-U] SOURCE [DEST]"
+msgstr "[-U] SOURCE [DEST]"
+
 msgid "create a new shared repository"
 msgstr "共有リポジトリの新規作成"
 
@@ -8746,12 +8777,6 @@
 msgid "this is not a shared repo"
 msgstr "共有状態のリポジトリではありません"
 
-msgid "do not create a working copy"
-msgstr "作業領域の更新を抑止します"
-
-msgid "[-U] SOURCE [DEST]"
-msgstr "[-U] SOURCE [DEST]"
-
 msgid "save and restore changes to the working directory"
 msgstr "作業領域中の変更内容の退避および復旧"
 
@@ -9045,6 +9070,10 @@
 msgid "local changed subrepos found"
 msgstr "サブリポジトリに変更があります"
 
+#, python-format
+msgid "bookmark '%s' deleted\n"
+msgstr "ブックマーク '%s' が破棄されました\n"
+
 msgid ""
 "strip specified revision (optional, can specify revisions without this "
 "option)"
@@ -9053,12 +9082,6 @@
 msgid "force removal of changesets, discard uncommitted changes (no backup)"
 msgstr "リビジョンを強制的に削除し、 未コミット変更内容を破棄(保存無し)"
 
-msgid ""
-"bundle only changesets with local revision number greater than REV which are "
-"not descendants of REV (DEPRECATED)"
-msgstr ""
-"指定リビジョンよりリビジョン番号が大きく子孫以外のものを bundle 化(非推奨)"
-
 msgid "no backups"
 msgstr "バックアップ作成の抑止"
 
@@ -9137,10 +9160,6 @@
 msgid "bookmark '%s' not found"
 msgstr "ブックマーク '%s' がありません"
 
-#, python-format
-msgid "bookmark '%s' deleted\n"
-msgstr "ブックマーク '%s' が破棄されました\n"
-
 msgid "empty revision set"
 msgstr "指定に該当するリビジョンはありません"
 
@@ -9997,6 +10016,13 @@
 msgstr "%s: '%s' というキーはありません"
 
 #, python-format
+msgid "available styles: %s\n"
+msgstr "利用可能なスタイル: %s\n"
+
+msgid "specify a template"
+msgstr "テンプレートを指定してください"
+
+#, python-format
 msgid "found revision %s from %s\n"
 msgstr "リビジョン %s (%s) が指定日時に合致します\n"
 
@@ -10042,12 +10068,15 @@
 msgid "stripping amended changeset %s\n"
 msgstr "改変対象リビジョン %s を除外中\n"
 
+msgid "Leave message empty to abort commit."
+msgstr "メッセージが空のままならコミットを中止します。"
+
+msgid "empty commit message"
+msgstr "コミットログがありません"
+
 msgid "HG: Enter commit message.  Lines beginning with 'HG:' are removed."
 msgstr "HG: コミットログを入力してください。'HG:' で始まる行は無視されます。"
 
-msgid "HG: Leave message empty to abort commit."
-msgstr "HG: メッセージが空のままならコミットを中止します。"
-
 #, python-format
 msgid "HG: user: %s"
 msgstr "HG: ユーザ: %s"
@@ -10082,9 +10111,6 @@
 msgid "HG: no files changed"
 msgstr "HG: ファイル変更なし"
 
-msgid "empty commit message"
-msgstr "コミットログがありません"
-
 msgid "created new head\n"
 msgstr "新規ヘッドが増えました\n"
 
@@ -10209,9 +10235,6 @@
 msgid "exclude names matching the given patterns"
 msgstr "パターンに合致したファイルを処理対象から除外"
 
-msgid "use text as commit message"
-msgstr "指定テキストをコミットログとして使用"
-
 msgid "read commit message from file"
 msgstr "コミットログをファイルから読み込み"
 
@@ -10886,69 +10909,77 @@
 msgid "hg bookmarks [OPTIONS]... [NAME]..."
 msgstr "hg bookmarks [OPTIONS]... [NAME]..."
 
-msgid "track a line of development with movable markers"
-msgstr "移動可能なマーキングによる履歴進展の追跡"
-
-msgid ""
-"    Bookmarks are pointers to certain commits that move when committing.\n"
-"    Bookmarks are local. They can be renamed, copied and deleted. It is\n"
-"    possible to use :hg:`merge NAME` to merge from a given bookmark, and\n"
-"    :hg:`update NAME` to update to a given bookmark."
-msgstr ""
-"    ブックマーク (bookmark) は、 コミット操作に追従して移動する、\n"
-"    リビジョン特定用の情報です。\n"
-"    ブックマークのリポジトリ間伝播は、 自動的には行われません。\n"
-"    ブックマークに対しては、 改名/複製/削除が可能です。\n"
-"    :hg:`merge` や :hg:`update` へのリビジョン指定において、\n"
-"    ブックマークを使用することが可能です。"
-
-msgid ""
-"    You can use :hg:`bookmark NAME` to set a bookmark on the working\n"
-"    directory's parent revision with the given name. If you specify\n"
-"    a revision using -r REV (where REV may be an existing bookmark),\n"
-"    the bookmark is assigned to that revision."
-msgstr ""
-"    :hg:`bookmark NAME` を実行することで、 作業領域の親リビジョンに、\n"
-"    指定された名前で、 ブックマークが設定されます。\n"
-"    -r を使用して、 対象リビジョンを指定した場合\n"
-"    (対象指定自体にも、 ブックマークを使用可能)\n"
-"    そのリビジョンにブックマークが設定されます。"
-
-msgid ""
-"    Bookmarks can be pushed and pulled between repositories (see :hg:`help\n"
-"    push` and :hg:`help pull`). This requires both the local and remote\n"
-"    repositories to support bookmarks. For versions prior to 1.8, this "
-"means\n"
-"    the bookmarks extension must be enabled."
+msgid "create a new bookmark or list existing bookmarks"
+msgstr "ブックマークの、新規作成、又は既存の一覧表示"
+
+msgid ""
+"    Bookmarks are labels on changesets to help track lines of development.\n"
+"    Bookmarks are unversioned and can be moved, renamed and deleted.\n"
+"    Deleting or moving a bookmark has no effect on the associated changesets."
+msgstr ""
+"    リビジョンへのラベルであるブックマークは、 作業履歴の追跡を助けます。\n"
+"    ブックマークへの操作は履歴記録されず、 移動・削除・改名も可能です。\n"
+"    ブックマークの削除・移動による、 対象リビジョンへの影響はありません。"
+
+msgid ""
+"    Creating or updating to a bookmark causes it to be marked as 'active'.\n"
+"    Active bookmarks are indicated with a '*'.\n"
+"    When a commit is made, an active bookmark will advance to the new "
+"commit.\n"
+"    A plain :hg:`update` will also advance an active bookmark, if possible.\n"
+"    Updating away from a bookmark will cause it to be deactivated."
+msgstr ""
+"    ブックマークの作成や更新は、 ブックマークを 'アクティブ' 化します。\n"
+"    アクティブなブックマークは '*' 付きで表示されます。 コミットの際に、\n"
+"    アクティブなブックマークの参照先は、 新規リビジョンへと移動します。\n"
+"    アクティブブックマークは、 リビジョン指定無し :hg:`update` で移動が、\n"
+"    リビジョン指定付き :hg:`update` で非アクティブ化が発生します。"
+
+msgid ""
+"    Bookmarks can be pushed and pulled between repositories (see\n"
+"    :hg:`help push` and :hg:`help pull`). If a shared bookmark has\n"
+"    diverged, a new 'divergent bookmark' of the form 'name@path' will\n"
+"    be created. Using :hg:'merge' will resolve the divergence."
 msgstr ""
 "    ブックマークは、 リポジトリ間での取り込みや反映が可能です\n"
-"    (:hg:`help push` および :hg:`help pull` 参照)。\n"
-"    但し、 連携するリポジトリの両方が、\n"
-"    ブックマーク機能に対応している必要があります\n"
-"    1.8 版より前の Mercurial の場合、 \n"
-"    bookmarks エクステンションを有効にしてください。"
-
-msgid ""
-"    If you set a bookmark called '@', new clones of the repository will\n"
-"    have that revision checked out (and the bookmark made active) by\n"
-"    default."
-msgstr ""
-"    ブックマーク '@' が設定されている場合、 特に指定がなければ、\n"
-"    複製先の作業領域は、 そのリビジョンで更新されます (ブックマーク '@'\n"
-"    はアクティブになります)"
-
-msgid ""
-"    With -i/--inactive, the new bookmark will not be made the active\n"
-"    bookmark. If -r/--rev is given, the new bookmark will not be made\n"
-"    active even if -i/--inactive is not given. If no NAME is given, the\n"
-"    current active bookmark will be marked inactive.\n"
-"    "
-msgstr ""
-"    -i/--inactive 指定のある場合、 作成された新規ブックマークは、\n"
-"    アクティブにはなりません。 -r/--rev 指定のある場合、 -i/--inactive\n"
-"    指定が無くても、 新規ブックマークはアクティブになりません。\n"
-"    -i/--inactive 指定時に、 ブックマーク名指定が無い場合は、\n"
-"    現在アクティブなブックマークが、 非アクティブ化されます。\n"
+"    (:hg:`help push` および :hg:`help pull` 参照)。 連携先リポジトリで、\n"
+"    同名ブックマークの参照先が分岐 (divergent) する場合、\n"
+"    'ブックマーク名@連携先' 形式の '分岐ブックマーク' が新規作成されます。\n"
+"    :hg:'merge' により分岐が解消されます。"
+
+msgid ""
+"    A bookmark named '@' has the special property that :hg:`clone` will\n"
+"    check it out by default if it exists."
+msgstr ""
+"    ブックマーク '@' が存在する場合、 :hg:`clone` での作業領域更新の、\n"
+"    デフォルト対象リビジョンとして使用されます。"
+
+msgid "      - create an active bookmark for a new line of development::"
+msgstr "      - 新規開発ライン向けに、アクティブブックマークを作成::"
+
+msgid "          hg book new-feature"
+msgstr "          hg book new-feature"
+
+msgid "      - create an inactive bookmark as a place marker::"
+msgstr "      - 非アクティブブックマークをマーキング代わりに作成::"
+
+msgid "          hg book -i reviewed"
+msgstr "          hg book -i reviewed"
+
+msgid "      - create an inactive bookmark on another changeset::"
+msgstr "      - 作業領域親リビジョン以外を指す非アクティブブックマークを作成::"
+
+msgid "          hg book -r .^ tested"
+msgstr "          hg book -r .^ tested"
+
+msgid "      - move the '@' bookmark from another branch::"
+msgstr "      - ブックマーク '@' を作業領域親リビジョンに強制的に移動::"
+
+msgid ""
+"          hg book -f @\n"
+"    "
+msgstr ""
+"          hg book -f @\n"
 "    "
 
 msgid "bookmark names cannot consist entirely of whitespace"
@@ -11453,9 +11484,6 @@
 msgid "use the secret phase for committing"
 msgstr "secret フェーズでコミット中"
 
-msgid "further edit commit message already specified"
-msgstr "指定されたコミットログをエディタで更に編集"
-
 msgid "commit the specified files or all outstanding changes"
 msgstr "指定ファイルまたは全ての変更内容のリポジトリへの記録"
 
@@ -12620,6 +12648,13 @@
 msgstr "          hg log --debug -r ."
 
 msgid ""
+"    See :hg:`help revisions` and :hg:`help revsets` for more about\n"
+"    specifying revisions."
+msgstr ""
+"    リビジョン指定の詳細は :hg:`help revisions` および :hg:`help revsets`\n"
+"    を参照してください。"
+
+msgid ""
 "    Returns 0 on successful completion.\n"
 "    "
 msgstr ""
@@ -12931,6 +12966,9 @@
 msgid "apply patch without touching the working directory"
 msgstr "作業領域の内容を変更せずにパッチを適用"
 
+msgid "commit even if some hunks fail"
+msgstr "適用失敗があってもコミットを実施"
+
 msgid "apply patch to the nodes from which it was generated"
 msgstr "パッチ作成時と同じ親リビジョンに対して適用"
 
@@ -13012,6 +13050,26 @@
 "    パッチによる変更結果から、 改名や複製を検出します。"
 
 msgid ""
+"    Use --partial to ensure a changeset will be created from the patch\n"
+"    even if some hunks fail to apply. Hunks that fail to apply will be\n"
+"    written to a <target-file>.rej file. Conflicts can then be resolved\n"
+"    by hand before :hg:`commit --amend` is run to update the created\n"
+"    changeset. This flag exists to let people import patches that\n"
+"    partially apply without losing the associated metadata (author,\n"
+"    date, description, ...). Note that when none of the hunk applies\n"
+"    cleanly, :hg:`import --partial` will create an empty changeset,\n"
+"    importing only the patch metadata."
+msgstr ""
+"    --partial 指定により、 パッチが部分的にしか適用されない場合でも、\n"
+"    新規リビジョンの生成が保証されます。 適用失敗したパッチ部位は、\n"
+"    ``対象ファイル.rej`` ファイルに保存されます。 適用失敗部位の問題を、\n"
+"    手動で解消した上で、 :hg:`commit --amend` で取り込むことも可能です。\n"
+"    --partial には、 パッチに含まれるメタデータ情報 (コミットユーザ名、\n"
+"    日付、 コミットログなど) を失うことを回避する目的があります。\n"
+"    パッチ適用が完全に失敗した場合でも、 :hg:`import --partial` は、\n"
+"    メタデータのみが記録された、 新規リビジョンを作成します。"
+
+msgid ""
 "    To read a patch from standard input, use \"-\" as the patch name. If\n"
 "    a URL is specified, the patch will be downloaded from it.\n"
 "    See :hg:`help dates` for a list of formats valid for -d/--date."
@@ -13047,6 +13105,13 @@
 msgid "          hg import --exact proposed-fix.patch"
 msgstr "          hg import --exact proposed-fix.patch"
 
+msgid ""
+"    Returns 0 on success, 1 on partial success (see --partial).\n"
+"    "
+msgstr ""
+"    成功時のコマンド終了値は 0、部分成功時は 1 です (--partial 参照).\n"
+"    "
+
 msgid "need at least one patch to import"
 msgstr "取り込みには最低1つのパッチ名指定が必要です"
 
@@ -13059,6 +13124,12 @@
 msgid "applying patch from stdin\n"
 msgstr "標準入力からのパッチを適用中\n"
 
+msgid "patch applied partially\n"
+msgstr "パッチの一部のみが適用されました\n"
+
+msgid "(fix the .rej files and run `hg commit --amend`)\n"
+msgstr "(.rej ファイル中の却下差分への対処後に hg commit --amend を推奨)\n"
+
 #, python-format
 msgid "%s: no diffs found"
 msgstr "%s: 差分がありません"
@@ -13330,6 +13401,12 @@
 msgid "          hg log -k bug --template \"{rev}\\n\""
 msgstr "          hg log -k bug --template \"{rev}\\n\""
 
+msgid "      - list available log templates::"
+msgstr "      - 利用可能なテンプレートスタイル一覧の表示::"
+
+msgid "          hg log -T list"
+msgstr "          hg log -T list"
+
 msgid "      - check if a given changeset is included is a tagged release::"
 msgstr "      - 指定リビジョンが指定タグ時点において含まれているかを確認::"
 
@@ -13351,13 +13428,6 @@
 "          hg log -r \"last(tagged())::\" --template \"{desc|firstline}\\n\""
 
 msgid ""
-"    See :hg:`help revisions` and :hg:`help revsets` for more about\n"
-"    specifying revisions."
-msgstr ""
-"    リビジョン指定の詳細は :hg:`help revisions` および :hg:`help revsets`\n"
-"    を参照してください。"
-
-msgid ""
 "    See :hg:`help templates` for more about pre-packaged styles and\n"
 "    specifying custom templates."
 msgstr ""
@@ -14106,8 +14176,17 @@
 msgid "can't specify --all and patterns"
 msgstr "--all とパターンは同時に指定できません"
 
-msgid "no files or directories specified; use --all to remerge all files"
-msgstr "再マージには、 ファイル/ディレクトリか、 --all を指定してください"
+msgid "no files or directories specified"
+msgstr "ファイル/ディレクトリ指定がありません"
+
+msgid "resolve command not applicable when not merging"
+msgstr "マージが実施されていない場合は resolve コマンドを使用できません"
+
+msgid "arguments do not match paths that need resolving\n"
+msgstr "指定パターンは衝突解消対象ファイルに合致しません\n"
+
+msgid "(no more unresolved files)\n"
+msgstr "(衝突未解消ファイルはありません)\n"
 
 msgid "revert all changes when no arguments given"
 msgstr "引数指定が無い場合に、 全ファイルの内容を復旧"
@@ -14178,9 +14257,6 @@
 msgid "use \"hg update\" or see \"hg help revert\""
 msgstr "\"hg update\" 実施を検討するか、\"hg help revert\" を参照"
 
-msgid "no files or directories specified"
-msgstr "ファイル/ディレクトリ指定がありません"
-
 msgid ""
 "uncommitted merge, use --all to discard all changes, or 'hg update -C .' to "
 "abort the merge"
@@ -14674,9 +14750,6 @@
 msgid "remove a tag"
 msgstr "タグの削除"
 
-msgid "use <text> as commit message"
-msgstr "指定文字列をコミットログとして使用"
-
 msgid "[-f] [-l] [-m TEXT] [-d DATE] [-u USER] [-r REV] NAME..."
 msgstr "[-f] [-l] [-m TEXT] [-d DATE] [-u USER] [-r REV] NAME..."
 
@@ -14937,6 +15010,14 @@
 msgid "cannot specify both -c/--check and -C/--clean"
 msgstr "-c/--check と -C/--clean は併用できません"
 
+#, python-format
+msgid "(activating bookmark %s)\n"
+msgstr "(ブックマーク %s をアクティブ化中)\n"
+
+#, python-format
+msgid "(leaving bookmark %s)\n"
+msgstr "(ブックマーク %s を非アクティブ化中)\n"
+
 msgid "verify the integrity of the repository"
 msgstr "リポジトリの整合性検証"
 
@@ -14982,6 +15063,13 @@
 "頒布条件に関しては同梱されるライセンス条項をお読みください。\n"
 "市場適合性や特定用途への可否を含め、 本製品は無保証です。\n"
 
+msgid ""
+"\n"
+"Enabled extensions:"
+msgstr ""
+"\n"
+"有効化されているエクステンション:"
+
 #, python-format
 msgid "unknown mode %s"
 msgstr "未知のモード %s"
@@ -15139,6 +15227,10 @@
 msgstr "新しいヘッド %s が連携先のブランチ '%s' に作成されます!"
 
 #, python-format
+msgid "push creates new remote head %s with bookmark '%s'!"
+msgstr "新しいヘッド %s がブックマーク '%s' 付きで連携先に作成されます!"
+
+#, python-format
 msgid "push creates new remote head %s!"
 msgstr "新しいヘッド %s が連携先に作成されます!"
 
@@ -15404,6 +15496,10 @@
 msgstr "履歴反映対象に分岐 (divergent) した後継リビジョンが含まれます!: %s"
 
 #, python-format
+msgid "server ignored update of %s to public!\n"
+msgstr "連携先で、%s の public 化が無視されました!\n"
+
+#, python-format
 msgid "updating %s to public failed!\n"
 msgstr "%s のフェーズの public 化に失敗!\n"
 
@@ -15423,6 +15519,10 @@
 msgstr "連携先の changegroupsubset 機能未対応により、 部分取り込みできません。"
 
 #, python-format
+msgid "unsupported getbundle arguments: %s"
+msgstr "getbundle プロトコルに未知の引数が指定されました: %s"
+
+#, python-format
 msgid "*** failed to import extension %s from %s: %s\n"
 msgstr "*** %s のインポートに失敗 (%s): %s\n"
 
@@ -15524,6 +15624,21 @@
 msgstr "警告: internal:merge はシンボリックリンク %s をマージできません\n"
 
 msgid ""
+"``internal:tagmerge``\n"
+"Uses the internal tag merge algorithm (experimental)."
+msgstr ""
+"``internal:tagmerge``\n"
+"タグファイル専用のマージ処理を行います (実験的実装)"
+
+#, python-format
+msgid ""
+"automatic tag merging of %s failed! (use 'hg resolve --tool internal:merge' "
+"or another merge tool of your choice)\n"
+msgstr ""
+"タグファイル %s の自動マージに失敗しました ('hg resolve --tool internal:"
+"merge'あるいは別のツールを使ってマージしてください)\n"
+
+msgid ""
 "``internal:dump``\n"
 "Creates three versions of the files to merge, containing the\n"
 "    contents of local, other and base. These files can then be used to\n"
@@ -16045,6 +16160,20 @@
 msgid "Extension Commands"
 msgstr "エクステンション由来のコマンド"
 
+msgid "no matches"
+msgstr "該当するヘルプトピックはありません"
+
+msgid "try \"hg help\" for a list of topics"
+msgstr "ヘルプトピックの一覧は \"hg help\" で表示されます"
+
+#, python-format
+msgid "no such help topic: %s"
+msgstr "該当するヘルプトピックはありません: %s"
+
+#, python-format
+msgid "try \"hg help --keyword %s\""
+msgstr "\"hg help --keyword %s\" を使用してみてください"
+
 msgid "Mercurial Distributed SCM\n"
 msgstr "Mercurial - 分散構成管理ツール\n"
 
@@ -16776,10 +16905,132 @@
 
 msgid ""
 "\n"
+"``committemplate``\n"
+"------------------"
+msgstr ""
+"\n"
+"``committemplate``\n"
+"------------------"
+
+msgid ""
+"``changeset`` configuration in this section is used as the template to\n"
+"customize the text shown in the editor when committing."
+msgstr ""
+"本セクションでの ``changeset`` 設定は、 コミット時のエディタ起動の際に、\n"
+"表示されるテキストのカスタマイズに使用されます。"
+
+msgid ""
+"In addition to pre-defined template keywords, commit log specific one\n"
+"below can be used for customization:"
+msgstr ""
+"既存のテンプレートキーワードの他に、 本セクションでの定義でのみ有効な、\n"
+"以下のテンプレートキーワードが使用できます:"
+
+msgid ""
+"``extramsg``\n"
+"    String: Extra message (typically 'Leave message empty to abort\n"
+"    commit.'). This may be changed by some commands or extensions."
+msgstr ""
+"``extramsg``\n"
+"    文字列。 追加メッセージ (通常は 'メッセージが空のままならコミットを\n"
+"    中止します。') 実行されるコマンドによって、指定される内容が、\n"
+"    異なる場合があります。 (※ 訳注: MQ 系コマンドで異なる内容になります)"
+
+msgid ""
+"For example, the template configuration below shows as same text as\n"
+"one shown by default::"
+msgstr ""
+"例えば、 以下のような設定記述により、 カスタマイズ未実施の際の表示と、\n"
+"全く同じ内容の情報が表示されます::"
+
+msgid ""
+"    [committemplate]\n"
+"    changeset = {desc}\\n\\n\n"
+"        HG: Enter commit message.  Lines beginning with 'HG:' are removed.\n"
+"        HG: {extramsg}\n"
+"        HG: --\n"
+"        HG: user: {author}\\n{ifeq(p2rev, \"-1\", \"\",\n"
+"       \"HG: branch merge\\n\")\n"
+"       }HG: branch '{branch}'\\n{if(currentbookmark,\n"
+"       \"HG: bookmark '{currentbookmark}'\\n\")  }{subrepos %\n"
+"       \"HG: subrepo {subrepo}\\n\"              }{file_adds %\n"
+"       \"HG: added {file}\\n\"                   }{file_mods %\n"
+"       \"HG: changed {file}\\n\"                 }{file_dels %\n"
+"       \"HG: removed {file}\\n\"                 }{if(files, \"\",\n"
+"       \"HG: no files changed\\n\")}"
+msgstr ""
+"    [committemplate]\n"
+"    changeset = {desc}\\n\\n\n"
+"       HG: コミットログを入力してください。'HG:' で始まる行は無視されます。\n"
+"       HG: {extramsg}\n"
+"       HG: --\n"
+"       HG: ユーザ: {author}\\n{ifeq(p2rev, \"-1\", \"\",\n"
+"      \"HG: ブランチのマージ\\n\")\n"
+"      }HG: ブランチ '{branch}'\\n{if(currentbookmark,\n"
+"      \"HG: ブックマーク '{currentbookmark}'\\n\")  }{subrepos %\n"
+"      \"HG: サブリポジトリ {subrepo}\\n\"           }{file_adds %\n"
+"      \"HG: {file} を追加\\n\"                      }{file_mods %\n"
+"      \"HG: {file} を変更\\n\"                      }{file_dels %\n"
+"      \"HG: {file} を削除\\n\"                      }{if(files, \"\",\n"
+"      \"HG: ファイル変更なし\\n\")}"
+
+msgid ""
+"   For some problematic encodings (see :hg:`help win32mbcs` for\n"
+"   detail), this customization should be configured carefully, to\n"
+"   avoid showing broken characters."
+msgstr ""
+"   問題のある文字コード (詳細は :hg:`help win32mbcs` 参照) を使う場合、\n"
+"   本機能によるカスタマイズは、 表示内容が崩れないように注意が必要です。"
+
+msgid ""
+"   For example, if multibyte character ending with backslash (0x5c) is\n"
+"   followed by ASCII character 'n' in the customized template,\n"
+"   sequence of backslash and 'n' is treated as line-feed unexpectedly\n"
+"   (and multibyte character is broken, too)."
+msgstr ""
+"   例えば、 バックスラッシュ (0x5c) で終了する複数バイト文字が、 ASCII\n"
+"   文字の ``n`` を後ろに伴うようなテンプレート定義では、 この2バイトが、\n"
+"   改行文字扱いされてしまいます (先行する複数バイト文字も崩れます)。\n"
+"   (※ 訳注: cp932/Shift-JIS では「ソ」や「能」などが該当します)"
+
+msgid ""
+"Customized template is used for commands below (``--edit`` may be\n"
+"required):"
+msgstr ""
+"カスタマイズ用テンプレートは、 以下のコマンドで利用されます\n"
+"(エディタ起動のために ``--edit`` オプションが必要な場合もあります):"
+
+msgid ""
+"- :hg:`backout`\n"
+"- :hg:`commit`\n"
+"- :hg:`fetch` (for merge commit only)\n"
+"- :hg:`graft`\n"
+"- :hg:`histedit`\n"
+"- :hg:`import`\n"
+"- :hg:`qfold`, :hg:`qnew` and :hg:`qrefresh`\n"
+"- :hg:`rebase`\n"
+"- :hg:`shelve`\n"
+"- :hg:`sign`\n"
+"- :hg:`tag`\n"
+"- :hg:`transplant`"
+msgstr ""
+"- :hg:`backout`\n"
+"- :hg:`commit`\n"
+"- :hg:`fetch` (マージコミット時限定)\n"
+"- :hg:`graft`\n"
+"- :hg:`histedit`\n"
+"- :hg:`import`\n"
+"- :hg:`qfold`, :hg:`qnew` および :hg:`qrefresh`\n"
+"- :hg:`rebase`\n"
+"- :hg:`shelve`\n"
+"- :hg:`sign`\n"
+"- :hg:`tag`\n"
+"- :hg:`transplant`"
+
+msgid ""
 "``decode/encode``\n"
 "-----------------"
 msgstr ""
-"\n"
 "``decode/encode``\n"
 "-----------------"
 
@@ -17799,8 +18050,14 @@
 
 msgid ""
 "This section configures external merge tools to use for file-level\n"
-"merges."
-msgstr "ファイル単位のマージを行う外部マージツールの設定。"
+"merges. This section has likely been preconfigured at install time.\n"
+"Use :hg:`config merge-tools` to check the existing configuration.\n"
+"Also see :hg:`help merge-tools` for more details."
+msgstr ""
+"本セクションは、 ファイル毎のマージ処理のための、 外部ツールを設定します。\n"
+"インストール時に事前設定されている可能性もあります。 既存の設定内容は、\n"
+":hg:`config merge-tools` で確認できます。 設定の詳細は\n"
+":hg:`help merge-tools` も参照してください。"
 
 msgid "Example ``~/.hgrc``::"
 msgstr "``~/.hgrc`` での設定例を以下に示します::"
@@ -17823,6 +18080,13 @@
 "  kdiff3.priority = 1"
 
 msgid ""
+"  # Changing the priority of preconfigured tool\n"
+"  vimdiff.priority = 0"
+msgstr ""
+"  # 設定済みツール間での優先度の変更\n"
+"  vimdiff.priority = 0"
+
+msgid ""
 "  # Define new tool\n"
 "  myHtmlTool.args = -m $local $other $base $output\n"
 "  myHtmlTool.regkey = Software\\FooSoftware\\HtmlMerge\n"
@@ -17856,13 +18120,26 @@
 "``args``\n"
 "  The arguments to pass to the tool executable. You can refer to the\n"
 "  files being merged as well as the output file through these\n"
-"  variables: ``$base``, ``$local``, ``$other``, ``$output``.\n"
+"  variables: ``$base``, ``$local``, ``$other``, ``$output``. The meaning\n"
+"  of ``$local`` and ``$other`` can vary depending on which action is being\n"
+"  performed. During and update or merge, ``$local`` represents the original\n"
+"  state of the file, while ``$other`` represents the commit you are "
+"updating\n"
+"  to or the commit you are merging with. During a rebase ``$local``\n"
+"  represents the destination of the rebase, and ``$other`` represents the\n"
+"  commit being rebased.\n"
 "  Default: ``$local $base $other``"
 msgstr ""
 "``args``\n"
-"  実行可能ファイルに渡される引数。 ``$base``、 ``$local``、 ``$other``\n"
-"  および ``$output`` という記述で、 マージ対象ファイル群や、\n"
-"  結果ファイルを指定可能です。 デフォルト値: ``$local $base $other``"
+"  実行時にツールに指定される引数。 ``$base``, ``$local``, ``$other``, \n"
+"  ``$output`` といった表記により、マージ対象や、 結果格納先ファイルも、\n"
+"  指定可能です。 ``$local`` や ``$other`` は、 実施する処理に応じて、\n"
+"  意味合いが変化します。 update や merge コマンドの場合、 ``$local``\n"
+"  はコマンド実施前時点の作業領域の、 ``$other`` は対象リビジョン時点の、\n"
+"  それぞれの内容を保持するファイルを指します。 一方で rebase の場合は、\n"
+"  ``$local`` が rebase 先、 ``$other`` が rebase 元リビジョン時点の、\n"
+"  それぞれの内容を保持するファイルを指します。デフォルト値:\n"
+"  ``$local $base $other``"
 
 msgid ""
 "``premerge``\n"
@@ -18669,6 +18946,50 @@
 "    セクションの説明を参照してください。"
 
 msgid ""
+"``mergemarkers``\n"
+"    Sets the merge conflict marker label styling. The ``detailed``\n"
+"    style uses the ``mergemarkertemplate`` setting to style the labels.\n"
+"    The ``basic`` style just uses 'local' and 'other' as the marker label.\n"
+"    One of ``basic`` or ``detailed``.\n"
+"    Default is ``basic``."
+msgstr ""
+"``mergemarkers``\n"
+"    マージで衝突が検出された際に、 ファイルに挿入される衝突マークの、\n"
+"    情報ラベル部分の形式。 ``detailed`` 形式では ``mergemarkertemplate``\n"
+"    によるテンプレート定義が使用されます。 ``basic`` 形式では ``local``\n"
+"    および ``other`` だけの単純なラベルになります。上記のいずれかのみ、\n"
+"    指定可能です。デフォルト値: ``basic``"
+
+msgid ""
+"``mergemarkertemplate``\n"
+"    The template used to print the commit description next to each conflict\n"
+"    marker during merge conflicts. See :hg:`help templates` for the "
+"template\n"
+"    format.\n"
+"    Defaults to showing the hash, tags, branches, bookmarks, author, and\n"
+"    the first line of the commit description.\n"
+"    You have to pay attention to encodings of managed files, if you\n"
+"    use non-ASCII characters in tags, branches, bookmarks, author\n"
+"    and/or commit descriptions. At template expansion, non-ASCII\n"
+"    characters use the encoding specified by ``--encoding`` global\n"
+"    option, ``HGENCODING`` or other locale setting environment\n"
+"    variables. The difference of encoding between merged file and\n"
+"    conflict markers causes serious problem."
+msgstr ""
+"``mergemarkertemplate``\n"
+"    マージで衝突が検出された際に、 ファイルに挿入される衝突マークの、\n"
+"    テンプレート機能による定義。 テンプレート機能そのものに関する詳細は\n"
+"    :hg:`help templates` を参照してください。 デフォルト設定では、\n"
+"    ハッシュ値、タグ名、ブランチ名、ブックマーク、ユーザ名および、\n"
+"    コミットログの一行目を表示します。 タグ名、ブランチ名、ブックマーク、\n"
+"    ユーザ名、 コミットログのいずれかで非 ASCII 文字を使用している場合は、\n"
+"    マージ対象ファイルの文字コードに、 注意を払う必要があります。\n"
+"    テンプレート展開の際に、 非 ASCII 文字は ``--encoding`` オプション、\n"
+"    ``HGENCODING`` あるいは各種ロケール環境変数で指定された文字コードで、\n"
+"    符号化されます。 マージ対象ファイルの文字コードと異なる場合、\n"
+"    文字コード混在による深刻な問題を生じます。"
+
+msgid ""
 "``portablefilenames``\n"
 "    Check for portable filenames. Can be ``warn``, ``ignore`` or ``abort``.\n"
 "    Default is ``warn``.\n"
@@ -22750,33 +23071,29 @@
 
 msgid ""
 "Mercurial allows you to customize output of commands through\n"
-"templates. You can either pass in a template from the command\n"
-"line, via the --template option, or select an existing\n"
-"template-style (--style)."
-msgstr ""
-"Mercurial では、 テンプレート機能によってコマンドの出力をカスタマイズ\n"
-"することができます。 コマンドラインからの指定では、 --template による\n"
-"テンプレート指定と、 --style によるスタイル指定の両方が使用できます。"
+"templates. You can either pass in a template or select an existing\n"
+"template-style from the command line, via the --template option."
+msgstr ""
+"Mercurial は、 コマンド出力をテンプレート機能でカスタマイズ可能です。\n"
+"コマンドラインの --template オプション経由で、 テンプレート指定や、\n"
+"スタイル定義 (※ 訳注: 同梱のもの以外に独自定義可能) を指定できます。"
 
 msgid ""
 "You can customize output for any \"log-like\" command: log,\n"
-"outgoing, incoming, tip, parents, heads and glog."
+"outgoing, incoming, tip, parents, and heads."
 msgstr ""
 "「log 的」な出力を行う一連のコマンド出力をカスタマイズ可能です:\n"
-"log, outgoing, incoming, tip, parents, heads, glog"
-
-msgid ""
-"Five styles are packaged with Mercurial: default (the style used\n"
-"when no explicit preference is passed), compact, changelog, phases\n"
-"and xml.\n"
-"Usage::"
-msgstr ""
-"Mercurial には、 default(明示的な指定が無い場合のスタイル)、 compact、\n"
-"changelog、 phases、 および xml の5つのスタイル設定が同梱されています。\n"
-"スタイルの指定方法は以下の通り::"
-
-msgid "    $ hg log -r1 --style changelog"
-msgstr "    $ hg log -r1 --style changelog"
+"log, outgoing, incoming, tip, parents, heads"
+
+msgid ""
+"Some built-in styles are packaged with Mercurial. These can be listed\n"
+"with :hg:`log --template list`. Example usage::"
+msgstr ""
+"いくつかのスタイル定義が Mercurial に同梱されています。 スタイルの一覧は\n"
+":hg:`log --template list` で表示されます。 スタイル定義の利用例::"
+
+msgid "    $ hg log -r1.0::1.1 --template changelog"
+msgstr "    $ hg log -r1.0::1.1 --template changelog"
 
 msgid ""
 "A template is a piece of text, with markup to invoke variable\n"
@@ -22873,12 +23190,18 @@
 msgid "- shortest(node)"
 msgstr "- shortest(node)"
 
+msgid "- startswith(string, text)"
+msgstr "- startswith(string, text)"
+
 msgid "- strip(text[, chars])"
 msgstr "- strip(text[, chars])"
 
 msgid "- sub(pat, repl, expr)"
 msgstr "- sub(pat, repl, expr)"
 
+msgid "- word(number, text[, separator])"
+msgstr "- word(number, text[, separator])"
+
 msgid "Also, for any expression that returns a list, there is a list operator:"
 msgstr "また、 列挙形式を返す expr に対しては、 以下の様な記述が可能です:"
 
@@ -22900,6 +23223,12 @@
 msgid "   $ hg log -r 0 --template \"files: {join(files, ', ')}\\n\""
 msgstr "   $ hg log -r 0 --template \"files: {join(files, ', ')}\\n\""
 
+msgid "- Modify each line of a commit description::"
+msgstr "- コミットログの各行の行頭に文字を追加::"
+
+msgid "   $ hg log --template \"{splitlines(desc) % '**** {line}\\n'}\""
+msgstr "   $ hg log --template \"{splitlines(desc) % '**** {line}\\n'}\""
+
 msgid "- Format date::"
 msgstr "- 日時情報の整形::"
 
@@ -22963,8 +23292,22 @@
 msgid "- Mark the working copy parent with '@'::"
 msgstr "- 作業領域の親リビジョンに '@' を表示::"
 
-msgid "   $ hg log --template \"{ifcontains(rev, revset('.'), '@')}\\n\"\n"
-msgstr "   $ hg log --template \"{ifcontains(rev, revset('.'), '@')}\\n\"\n"
+msgid "   $ hg log --template \"{ifcontains(rev, revset('.'), '@')}\\n\""
+msgstr "   $ hg log --template \"{ifcontains(rev, revset('.'), '@')}\\n\""
+
+msgid "- Show only commit descriptions that start with \"template\"::"
+msgstr "- \"template\" で始まるコミットログのみを表示::"
+
+msgid ""
+"   $ hg log --template \"{startswith(\\\"template\\\", firstline(desc))}\\n\""
+msgstr ""
+"   $ hg log --template \"{startswith(\\\"template\\\", firstline(desc))}\\n\""
+
+msgid "- Print the first word of each line of a commit message::"
+msgstr "- コミットログの最初の語のみを表示::"
+
+msgid "   $ hg log --template \"{word(\\\"0\\\", desc)}\\n\"\n"
+msgstr "   $ hg log --template \"{word(\\\"0\\\", desc)}\\n\"\n"
 
 msgid "Valid URLs are of the form::"
 msgstr "有効な URL 指定は以下の形式です::"
@@ -23367,8 +23710,11 @@
 msgid "working copy of .hgtags is changed (please commit .hgtags manually)"
 msgstr "作業領域の .hgtags が変更されています (手動でコミットしてください)"
 
-msgid "abandoned transaction found - run hg recover"
-msgstr "中断トランザクションを検出 - 'hg recover' を実施してください"
+msgid "abandoned transaction found"
+msgstr "中断トランザクションを検出しました"
+
+msgid "run 'hg recover' to clean up transaction"
+msgstr "情報を破棄する場合は 'hg recover' を実施してください"
 
 msgid "rolling back interrupted transaction\n"
 msgstr "中断されたトランザクションをロールバック中\n"
@@ -24549,9 +24895,6 @@
 "``min(set)``\n"
 "    指定リビジョン群中で、 リビジョン番号が最小のもの。"
 
-msgid "_missingancestors requires two arguments"
-msgstr "_missingancestors の引数は2つです"
-
 msgid ""
 "``modifies(pattern)``\n"
 "    Changesets modifying files matched by pattern."
@@ -25324,6 +25667,17 @@
 "リビジョン %s を反映できません。\n"
 
 #, python-format
+msgid ""
+"automatic .hgtags merge failed\n"
+"the following %d tags are in conflict: %s\n"
+msgstr ""
+"タグファイルの自動マージに失敗しました。\n"
+"%d 個のタグ定義が衝突しています: %s\n"
+
+msgid ".hgtags merged successfully\n"
+msgstr "タグファイルのマージに成功しました\n"
+
+#, python-format
 msgid "%s, line %s: %s\n"
 msgstr "%s %s行目: %s\n"
 
@@ -25512,6 +25866,9 @@
 msgid ":shortdate: Date. Returns a date like \"2006-09-18\"."
 msgstr ":shortdate: 日時情報。 \"2006-09-18\" 形式で可読化します。"
 
+msgid ":splitlines: Any text. Split text into a list of lines."
+msgstr ":splitlines: 文字列。 文字列を行のリストに分割します。"
+
 msgid ""
 ":stringify: Any type. Turns the value into text by converting values into\n"
 "    text and concatenating them."
@@ -25570,6 +25927,13 @@
 msgid ":children: List of strings. The children of the changeset."
 msgstr ":children: 文字列列挙。 リビジョンの子供。"
 
+msgid ""
+":currentbookmark: String. The active bookmark, if it is\n"
+"    associated with the changeset"
+msgstr ""
+":currentbookmark: 文字列. アクティブブックマーク (対象リビジョンに対して、\n"
+"    関連付けられている場合のみ)"
+
 msgid ":date: Date information. The date when the changeset was committed."
 msgstr ":date: 日時情報。 リビジョンが記録された日時。"
 
@@ -25672,6 +26036,9 @@
 msgid ":rev: Integer. The repository-local changeset revision number."
 msgstr ":rev: 整数。 各リポジトリ固有のリビジョン番号。"
 
+msgid ":subrepos: List of strings. Updated subrepositories in the changeset."
+msgstr ":subrepos: 文字列挙。 当該リビジョンで更新されたサブリポジトリ名。"
+
 msgid ":tags: List of strings. Any tags associated with the changeset."
 msgstr ":tags: 文字列列挙。 当該リビジョンに付与されたタグの一覧。"
 
@@ -25688,8 +26055,9 @@
 msgid "unknown method '%s'"
 msgstr "未知の処理 '%s' が指定されました"
 
-msgid "expected a symbol"
-msgstr "シンボル指定が必要です"
+#, python-format
+msgid "expected a symbol, got '%s'"
+msgstr "シンボル (symbol) 指定が必要です (実際の指定は '%s')"
 
 #, python-format
 msgid "unknown function '%s'"
@@ -25760,6 +26128,15 @@
 msgid "sub expects three arguments"
 msgstr "sub は引数が3つ必要です"
 
+#. i18n: "startswith" is a keyword
+msgid "startswith expects two arguments"
+msgstr "startswith の引数は2つです"
+
+#. i18n: "word" is a keyword
+#, python-format
+msgid "word expects two or three arguments, got %d"
+msgstr "word は2または3の引数が必要です (実際の引数は %d 個)"
+
 msgid "unmatched quotes"
 msgstr "引用符の対応関係が不正です"
 
--- a/i18n/pt_BR.po	Mon Aug 04 18:51:18 2014 +0400
+++ b/i18n/pt_BR.po	Mon Aug 04 16:21:58 2014 +0100
@@ -2662,8 +2662,8 @@
 msgstr "não é possível ler objeto %r em %s"
 
 #, python-format
-msgid "cannot read %r object at %s: %s"
-msgstr "não é possível ler objeto %r em %s: %s"
+msgid "cannot read %r object at %s: unexpected size"
+msgstr "não é possível ler objeto %r em %s: tamanho inesperado"
 
 #, python-format
 msgid "cannot read submodules config file in %s"
@@ -3424,8 +3424,8 @@
 msgid "a specific revision you would like to pull"
 msgstr "uma revisão específica que você gostaria de trazer"
 
-msgid "edit commit message"
-msgstr "editar mensagem de consolidação"
+msgid "invoke editor on commit messages"
+msgstr "chama um editor para mensagens de consolidação"
 
 msgid "edit commit message (DEPRECATED)"
 msgstr "editar mensagem de consolidação (OBSOLETO)"
@@ -3586,11 +3586,8 @@
 msgid "TEXT"
 msgstr "TEXTO"
 
-msgid "commit message"
-msgstr "mensagem de consolidação"
-
-msgid "invoke editor on commit messages"
-msgstr "chama um editor para mensagens de consolidação"
+msgid "use text as commit message"
+msgstr "usa o texto como mensagem de consolidação"
 
 msgid "hg sign [OPTION]... [REV]..."
 msgstr "hg sign [OPÇÃO]... [REV]..."
@@ -6467,9 +6464,6 @@
 "    mudanças feitas pelo patch atual sem incluir as mudanças feitas\n"
 "    desde o último qrefresh."
 
-msgid "edit patch header"
-msgstr "edita o cabeçalho do patch"
-
 msgid "keep folded patch files"
 msgstr "mantém os arquivos dos patches incorporados"
 
@@ -10379,9 +10373,6 @@
 msgid "exclude names matching the given patterns"
 msgstr "exclui nomes que casem com os padrões fornecidos"
 
-msgid "use text as commit message"
-msgstr "usa o texto como mensagem de consolidação"
-
 msgid "read commit message from file"
 msgstr "lê de um arquivo a mensagem de consolidação"
 
@@ -11680,9 +11671,6 @@
 msgid "use the secret phase for committing"
 msgstr "consolida a revisão na fase \"secret\""
 
-msgid "further edit commit message already specified"
-msgstr "edita a mensagem de consolidação especificada"
-
 msgid "commit the specified files or all outstanding changes"
 msgstr "consolida os arquivos pedidos ou todas as mudanças por gravar"
 
@@ -13378,6 +13366,9 @@
 msgid "patch applied partially\n"
 msgstr "o patch foi aplicado parcialmente\n"
 
+msgid "(fix the .rej files and run `hg commit --amend`)\n"
+msgstr "(corrija os arquivos .rej e execute `hg commit --amend`)\n"
+
 #, python-format
 msgid "%s: no diffs found"
 msgstr "%s: nenhum diff encontrado"
@@ -15053,9 +15044,6 @@
 msgid "remove a tag"
 msgstr "remove uma etiqueta"
 
-msgid "use <text> as commit message"
-msgstr "usa <texto> como mensagem de consolidação"
-
 msgid "[-f] [-l] [-m TEXT] [-d DATE] [-u USER] [-r REV] NAME..."
 msgstr "[-f] [-l] [-m TEXTO] [-d DATA] [-u USUÁRIO] [-r REV] NOME..."
 
@@ -26722,9 +26710,11 @@
 msgid "sub expects three arguments"
 msgstr "sub espera três argumentos"
 
+#. i18n: "startswith" is a keyword
 msgid "startswith expects two arguments"
 msgstr "startswith espera dois argumentos"
 
+#. i18n: "word" is a keyword
 #, python-format
 msgid "word expects two or three arguments, got %d"
 msgstr "word espera dois ou três argumentos, %d recebidos"
--- a/mercurial/cmdutil.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/mercurial/cmdutil.py	Mon Aug 04 16:21:58 2014 +0100
@@ -1629,7 +1629,7 @@
 
     filematcher = None
     if opts.get('patch') or opts.get('stat'):
-        if follow:
+        if follow and not match.always():
             # _makelogfilematcher expects its files argument to be relative to
             # the repo root, so use match.files(), not pats.
             filematcher = _makelogfilematcher(repo, match.files(), followfirst)
--- a/mercurial/commands.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/mercurial/commands.py	Mon Aug 04 16:21:58 2014 +0100
@@ -8,7 +8,7 @@
 from node import hex, bin, nullid, nullrev, short
 from lock import release
 from i18n import _
-import os, re, difflib, time, tempfile, errno
+import os, re, difflib, time, tempfile, errno, shlex
 import sys
 import hg, scmutil, util, revlog, copies, error, bookmarks
 import patch, help, encoding, templatekw, discovery
@@ -1339,8 +1339,7 @@
      _('mark a branch as closed, hiding it from the branch list')),
     ('', 'amend', None, _('amend the parent of the working dir')),
     ('s', 'secret', None, _('use the secret phase for committing')),
-    ('e', 'edit', None,
-     _('further edit commit message already specified')),
+    ('e', 'edit', None, _('invoke editor on commit messages')),
     ] + walkopts + commitopts + commitopts2 + subrepoopts,
     _('[OPTION]... [FILE]...'),
     inferrepo=True)
@@ -2248,7 +2247,7 @@
     # editor
     ui.status(_("checking commit editor...\n"))
     editor = ui.geteditor()
-    cmdpath = util.findexe(editor) or util.findexe(editor.split()[0])
+    cmdpath = util.findexe(shlex.split(editor)[0])
     if not cmdpath:
         if editor == 'vi':
             ui.write(_(" No commit editor set and can't find vi in PATH\n"))
@@ -3883,8 +3882,8 @@
                         parents = [repo[node]]
                     if rej:
                         ui.write_err(_("patch applied partially\n"))
-                        ui.write_err(("(fix the .rej files and run "
-                                      "`hg commit --amend`)\n"))
+                        ui.write_err(_("(fix the .rej files and run "
+                                       "`hg commit --amend`)\n"))
                         ret = 1
                         break
 
@@ -5695,8 +5694,8 @@
     ('r', 'rev', '', _('revision to tag'), _('REV')),
     ('', 'remove', None, _('remove a tag')),
     # -l/--local is already there, commitopts cannot be used
-    ('e', 'edit', None, _('edit commit message')),
-    ('m', 'message', '', _('use <text> as commit message'), _('TEXT')),
+    ('e', 'edit', None, _('invoke editor on commit messages')),
+    ('m', 'message', '', _('use text as commit message'), _('TEXT')),
     ] + commitopts2,
     _('[-f] [-l] [-m TEXT] [-d DATE] [-u USER] [-r REV] NAME...'))
 def tag(ui, repo, name1, *names, **opts):
--- a/mercurial/context.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/mercurial/context.py	Mon Aug 04 16:21:58 2014 +0100
@@ -120,7 +120,7 @@
         mf2 = self._manifestmatches(match, s)
 
         modified, added, clean = [], [], []
-        deleted, unknown, ignored = s[3], [], []
+        deleted, unknown, ignored = s[3], s[4], s[5]
         withflags = mf1.withflags() | mf2.withflags()
         for fn, mf2node in mf2.iteritems():
             if fn in mf1:
@@ -135,6 +135,10 @@
             elif fn not in deleted:
                 added.append(fn)
         removed = mf1.keys()
+        if removed:
+            # need to filter files if they are already reported as removed
+            unknown = [fn for fn in unknown if fn not in mf1]
+            ignored = [fn for fn in ignored if fn not in mf1]
 
         return [modified, added, removed, deleted, unknown, ignored, clean]
 
@@ -316,7 +320,8 @@
                              listunknown)
 
         if reversed:
-            r[1], r[2], r[3], r[4] = r[2], r[1], r[4], r[3]
+            # reverse added and removed
+            r[1], r[2] = r[2], r[1]
 
         if listsubrepos:
             for subpath, sub in scmutil.itersubrepos(ctx1, ctx2):
--- a/mercurial/dispatch.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/mercurial/dispatch.py	Mon Aug 04 16:21:58 2014 +0100
@@ -766,7 +766,7 @@
     if options['version']:
         return commands.version_(ui)
     if options['help']:
-        return commands.help_(ui, cmd)
+        return commands.help_(ui, cmd, command=True)
     elif not cmd:
         return commands.help_(ui, 'shortlist')
 
--- a/mercurial/templater.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/mercurial/templater.py	Mon Aug 04 16:21:58 2014 +0100
@@ -468,6 +468,7 @@
 
 def startswith(context, mapping, args):
     if len(args) != 2:
+        # i18n: "startswith" is a keyword
         raise error.ParseError(_("startswith expects two arguments"))
 
     patn = stringify(args[0][0](context, mapping, args[0][1]))
@@ -480,6 +481,7 @@
 def word(context, mapping, args):
     """return nth word from a string"""
     if not (2 <= len(args) <= 3):
+        # i18n: "word" is a keyword
         raise error.ParseError(_("word expects two or three arguments, got %d")
                                % len(args))
 
--- a/mercurial/ui.py	Mon Aug 04 18:51:18 2014 +0400
+++ b/mercurial/ui.py	Mon Aug 04 16:21:58 2014 +0100
@@ -437,7 +437,7 @@
         """
         user = os.environ.get("HGUSER")
         if user is None:
-            user = self.config("ui", "username")
+            user = self.config("ui", ["username", "user"])
             if user is not None:
                 user = os.path.expandvars(user)
         if user is None:
--- a/tests/test-bundle2.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-bundle2.t	Mon Aug 04 16:21:58 2014 +0100
@@ -8,6 +8,15 @@
   > code. We still need to be able to test it while it grow up.
   > """
   > 
+  > import sys, os
+  > from mercurial import cmdutil
+  > from mercurial import util
+  > from mercurial import bundle2
+  > from mercurial import scmutil
+  > from mercurial import discovery
+  > from mercurial import changegroup
+  > from mercurial import error
+  > 
   > try:
   >     import msvcrt
   >     msvcrt.setmode(sys.stdin.fileno(), os.O_BINARY)
@@ -16,14 +25,6 @@
   > except ImportError:
   >     pass
   > 
-  > import sys
-  > from mercurial import cmdutil
-  > from mercurial import util
-  > from mercurial import bundle2
-  > from mercurial import scmutil
-  > from mercurial import discovery
-  > from mercurial import changegroup
-  > from mercurial import error
   > cmdtable = {}
   > command = cmdutil.command(cmdtable)
   > 
--- a/tests/test-committer.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-committer.t	Mon Aug 04 16:21:58 2014 +0100
@@ -52,15 +52,34 @@
   abort: no username supplied
   (use "hg config --edit" to set your username)
   [255]
+
+# test alternate config var
+
+  $ echo 1234 > asdf
+  $ echo "[ui]" > .hg/hgrc
+  $ echo "user = Foo Bar II <foo2@bar.com>" >> .hg/hgrc
+  $ hg commit -m commit-1
+  $ hg tip
+  changeset:   4:6f24bfb4c617
+  tag:         tip
+  user:        Foo Bar II <foo2@bar.com>
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     commit-1
+  
+# test no .hg/hgrc (uses generated non-interactive username)
+
+  $ echo space > asdf
   $ rm .hg/hgrc
   $ hg commit -m commit-1 2>&1
   no username found, using '[^']*' instead (re)
 
-  $ echo space > asdf
+  $ echo space2 > asdf
   $ hg commit -u ' ' -m commit-1
   transaction abort!
   rollback completed
   abort: empty username!
   [255]
 
+# don't add tests here, previous test is unstable
+
   $ cd ..
--- a/tests/test-help.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-help.t	Mon Aug 04 16:21:58 2014 +0100
@@ -862,6 +862,17 @@
   *"hg -v help debugoptDEP"* (glob)
 #endif
 
+Test commands that collide with topics (issue4240)
+
+  $ hg config -hq
+  hg config [-u] [NAME]...
+  
+  show combined config settings from all hgrc files
+  $ hg showconfig -hq
+  hg config [-u] [NAME]...
+  
+  show combined config settings from all hgrc files
+
 Test a help topic
 
   $ hg help revs
--- a/tests/test-histedit-commute.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-histedit-commute.t	Mon Aug 04 16:21:58 2014 +0100
@@ -324,6 +324,30 @@
      date:        Thu Jan 01 00:00:00 1970 +0000
      summary:     a
   
+Verify that revsetalias entries work with histedit:
+  $ cat >> $HGRCPATH <<EOF
+  > [revsetalias]
+  > grandparent(ARG) = p1(p1(ARG))
+  > EOF
+  $ echo extra commit >> c
+  $ hg ci -m 'extra commit to c'
+  $ HGEDITOR=cat hg histedit 'grandparent(.)'
+  pick ece0b8d93dda 6 c
+  pick 803ef1c6fcfd 7 e
+  pick 9c863c565126 8 extra commit to c
+  
+  # Edit history between ece0b8d93dda and 9c863c565126
+  #
+  # Commits are listed from least to most recent
+  #
+  # Commands:
+  #  p, pick = use commit
+  #  e, edit = use commit, but stop for amending
+  #  f, fold = use commit, but combine it with the one above
+  #  d, drop = remove commit from history
+  #  m, mess = edit message without changing commit content
+  #
+  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
 should also work if a commit message is missing
   $ BUNDLE="$TESTDIR/missing-comment.hg"
--- a/tests/test-log.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-log.t	Mon Aug 04 16:21:58 2014 +0100
@@ -260,6 +260,98 @@
   +a
   
 
+log -pf, but no args
+
+  $ hg log -pf
+  changeset:   3:2ca5ba701980
+  user:        test
+  date:        Thu Jan 01 00:00:04 1970 +0000
+  summary:     d
+  
+  diff -r f8954cd4dc1f -r 2ca5ba701980 a
+  --- a/a	Thu Jan 01 00:00:03 1970 +0000
+  +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  @@ -1,1 +0,0 @@
+  -a
+  diff -r f8954cd4dc1f -r 2ca5ba701980 b
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/b	Thu Jan 01 00:00:04 1970 +0000
+  @@ -0,0 +1,1 @@
+  +a
+  diff -r f8954cd4dc1f -r 2ca5ba701980 d
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/d	Thu Jan 01 00:00:04 1970 +0000
+  @@ -0,0 +1,1 @@
+  +a
+  diff -r f8954cd4dc1f -r 2ca5ba701980 g
+  --- a/g	Thu Jan 01 00:00:03 1970 +0000
+  +++ b/g	Thu Jan 01 00:00:04 1970 +0000
+  @@ -1,2 +1,2 @@
+   f
+  -g
+  +f
+  
+  changeset:   2:f8954cd4dc1f
+  user:        test
+  date:        Thu Jan 01 00:00:03 1970 +0000
+  summary:     c
+  
+  diff -r d89b0a12d229 -r f8954cd4dc1f b
+  --- a/b	Thu Jan 01 00:00:02 1970 +0000
+  +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  @@ -1,1 +0,0 @@
+  -a
+  diff -r d89b0a12d229 -r f8954cd4dc1f dir/b
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/dir/b	Thu Jan 01 00:00:03 1970 +0000
+  @@ -0,0 +1,1 @@
+  +a
+  diff -r d89b0a12d229 -r f8954cd4dc1f f
+  --- a/f	Thu Jan 01 00:00:02 1970 +0000
+  +++ b/f	Thu Jan 01 00:00:03 1970 +0000
+  @@ -1,1 +1,2 @@
+   f
+  +f
+  diff -r d89b0a12d229 -r f8954cd4dc1f g
+  --- a/g	Thu Jan 01 00:00:02 1970 +0000
+  +++ b/g	Thu Jan 01 00:00:03 1970 +0000
+  @@ -1,1 +1,2 @@
+   f
+  +g
+  
+  changeset:   1:d89b0a12d229
+  user:        test
+  date:        Thu Jan 01 00:00:02 1970 +0000
+  summary:     b
+  
+  diff -r 9161b9aeaf16 -r d89b0a12d229 b
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/b	Thu Jan 01 00:00:02 1970 +0000
+  @@ -0,0 +1,1 @@
+  +a
+  diff -r 9161b9aeaf16 -r d89b0a12d229 g
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/g	Thu Jan 01 00:00:02 1970 +0000
+  @@ -0,0 +1,1 @@
+  +f
+  
+  changeset:   0:9161b9aeaf16
+  user:        test
+  date:        Thu Jan 01 00:00:01 1970 +0000
+  summary:     a
+  
+  diff -r 000000000000 -r 9161b9aeaf16 a
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/a	Thu Jan 01 00:00:01 1970 +0000
+  @@ -0,0 +1,1 @@
+  +a
+  diff -r 000000000000 -r 9161b9aeaf16 f
+  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/f	Thu Jan 01 00:00:01 1970 +0000
+  @@ -0,0 +1,1 @@
+  +f
+  
+
 log -vf dir/b
 
   $ hg log -vf dir/b
--- a/tests/test-mq-qimport.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-mq-qimport.t	Mon Aug 04 16:21:58 2014 +0100
@@ -196,6 +196,14 @@
   now at: appendbar.diff
   $ hg qfin -a
   patch b.diff finalized without changeset message
+  $ touch .hg/patches/2.diff
+  $ hg qimport -r 'p1(.)::'
+  abort: patch "2.diff" already exists
+  [255]
+  $ hg qapplied
+  3.diff
+  $ hg qfin -a
+  $ rm .hg/patches/2.diff
   $ hg qimport -r 'p1(.)::' -P
   $ hg qpop -a
   popping 3.diff
--- a/tests/test-mq-qrefresh-interactive.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-mq-qrefresh-interactive.t	Mon Aug 04 16:21:58 2014 +0100
@@ -31,7 +31,7 @@
   
   options:
   
-   -e --edit                edit commit message
+   -e --edit                invoke editor on commit messages
    -g --git                 use git extended diff format
    -s --short               refresh only files already in the patch and
                             specified files
@@ -75,7 +75,7 @@
   
   options:
   
-   -e --edit                edit commit message
+   -e --edit                invoke editor on commit messages
    -g --git                 use git extended diff format
    -s --short               refresh only files already in the patch and
                             specified files
--- a/tests/test-qrecord.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-qrecord.t	Mon Aug 04 16:21:58 2014 +0100
@@ -62,7 +62,7 @@
                             list
       --amend               amend the parent of the working dir
    -s --secret              use the secret phase for committing
-   -e --edit                further edit commit message already specified
+   -e --edit                invoke editor on commit messages
    -I --include PATTERN [+] include names matching the given patterns
    -X --exclude PATTERN [+] exclude names matching the given patterns
    -m --message TEXT        use text as commit message
@@ -135,7 +135,7 @@
   
   options:
   
-   -e --edit                edit commit message
+   -e --edit                invoke editor on commit messages
    -g --git                 use git extended diff format
    -U --currentuser         add "From: <current user>" to patch
    -u --user USER           add "From: <USER>" to patch
--- a/tests/test-status.t	Mon Aug 04 18:51:18 2014 +0400
+++ b/tests/test-status.t	Mon Aug 04 16:21:58 2014 +0100
@@ -280,6 +280,12 @@
   R removed
   C deleted
 
+status against non-parent with unknown file (issue4321)
+
+  $ touch unknown
+  $ hg status --rev 0 unknown
+  ? unknown
+
 status of removed but existing in working directory.  "? removed" should
 not be included: