shallow: rewrite functions to take object_id arguments
[gitweb.git] / po / zh_CN.po
index 4b0e9eeaa687b2eca2d739c7e3e34c4e55b44749..dd2948c322704e096afa755e2448bf9149e0d64e 100644 (file)
@@ -2,7 +2,7 @@
 # Git 软件包的简体中文翻译.
 # Copyright (C) 2012,2013 Jiang Xin <worldhello.net AT gmail.com>
 # This file is distributed under the same license as the Git package.
-# Contributers:
+# Contributors:
 #   - Jiang Xin <worldhello.net AT gmail.com>
 #   - Riku <lu.riku AT gmail.com>
 #   - Zhuang Ya <zhuangya AT me.com>
@@ -12,8 +12,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2014-11-20 09:42+0800\n"
-"PO-Revision-Date: 2014-11-20 16:10+0800\n"
+"POT-Creation-Date: 2015-04-03 08:13+0800\n"
+"PO-Revision-Date: 2015-04-03 08:35+0800\n"
 "Last-Translator: Jiang Xin <worldhello.net@gmail.com>\n"
 "Language-Team: GitHub <https://github.com/gotgit/git/>\n"
 "Language: zh_CN\n"
@@ -32,12 +32,12 @@ msgid ""
 "Fix them up in the work tree, and then use 'git add/rm <file>'\n"
 "as appropriate to mark resolution and make a commit."
 msgstr ""
-"请在工作区改正文件,然后酌情使用 'git add/rm <file>' 命令标记\n"
+"请在工作区改正文件,然后酌情使用 'git add/rm <文件>' 命令标记\n"
 "解决方案并提交。"
 
 #: archive.c:11
-msgid "git archive [options] <tree-ish> [<path>...]"
-msgstr "git archive [选项] <树或提交> [<路径>...]"
+msgid "git archive [<options>] <tree-ish> [<path>...]"
+msgstr "git archive [<选项>] <树或提交> [<路径>...]"
 
 #: archive.c:12
 msgid "git archive --list"
@@ -45,88 +45,88 @@ msgstr "git archive --list"
 
 #: archive.c:13
 msgid ""
-"git archive --remote <repo> [--exec <cmd>] [options] <tree-ish> [<path>...]"
+"git archive --remote <repo> [--exec <cmd>] [<options>] <tree-ish> [<path>...]"
 msgstr ""
-"git archive --remote <版本库> [--exec <命令>] [选项] <树或提交> [<路径>...]"
+"git archive --remote <版本库> [--exec <命令>] [<选项>] <树或提交> [<路径>...]"
 
 #: archive.c:14
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <版本库> [--exec <命令>] --list"
 
-#: archive.c:334 builtin/add.c:137 builtin/add.c:427 builtin/rm.c:328
+#: archive.c:342 builtin/add.c:137 builtin/add.c:427 builtin/rm.c:328
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "路径规则 '%s' 未匹配任何文件"
 
-#: archive.c:419
+#: archive.c:427
 msgid "fmt"
 msgstr "格式"
 
-#: archive.c:419
+#: archive.c:427
 msgid "archive format"
 msgstr "归档格式"
 
-#: archive.c:420 builtin/log.c:1204
+#: archive.c:428 builtin/log.c:1204
 msgid "prefix"
 msgstr "前缀"
 
-#: archive.c:421
+#: archive.c:429
 msgid "prepend prefix to each pathname in the archive"
 msgstr "为归档中每个路径名加上前缀"
 
-#: archive.c:422 builtin/archive.c:88 builtin/blame.c:2517
-#: builtin/blame.c:2518 builtin/config.c:57 builtin/fast-export.c:986
+#: archive.c:430 builtin/archive.c:88 builtin/blame.c:2516
+#: builtin/blame.c:2517 builtin/config.c:57 builtin/fast-export.c:986
 #: builtin/fast-export.c:988 builtin/grep.c:712 builtin/hash-object.c:101
-#: builtin/ls-files.c:489 builtin/ls-files.c:492 builtin/notes.c:411
-#: builtin/notes.c:568 builtin/read-tree.c:109 parse-options.h:151
+#: builtin/ls-files.c:446 builtin/ls-files.c:449 builtin/notes.c:394
+#: builtin/notes.c:557 builtin/read-tree.c:109 parse-options.h:151
 msgid "file"
 msgstr "文件"
 
-#: archive.c:423 builtin/archive.c:89
+#: archive.c:431 builtin/archive.c:89
 msgid "write the archive to this file"
 msgstr "归档写入此文件"
 
-#: archive.c:425
+#: archive.c:433
 msgid "read .gitattributes in working directory"
 msgstr "读取工作区中的 .gitattributes"
 
-#: archive.c:426
+#: archive.c:434
 msgid "report archived files on stderr"
 msgstr "在标准错误上报告归档文件"
 
-#: archive.c:427
+#: archive.c:435
 msgid "store only"
 msgstr "只存储"
 
-#: archive.c:428
+#: archive.c:436
 msgid "compress faster"
 msgstr "压缩速度更快"
 
-#: archive.c:436
+#: archive.c:444
 msgid "compress better"
 msgstr "压缩效果更好"
 
-#: archive.c:439
+#: archive.c:447
 msgid "list supported archive formats"
 msgstr "列出支持的归档格式"
 
-#: archive.c:441 builtin/archive.c:90 builtin/clone.c:85
+#: archive.c:449 builtin/archive.c:90 builtin/clone.c:86
 msgid "repo"
 msgstr "版本库"
 
-#: archive.c:442 builtin/archive.c:91
+#: archive.c:450 builtin/archive.c:91
 msgid "retrieve the archive from remote repository <repo>"
 msgstr "从远程版本库(<版本库>)提取归档文件"
 
-#: archive.c:443 builtin/archive.c:92 builtin/notes.c:490
+#: archive.c:451 builtin/archive.c:92 builtin/notes.c:478
 msgid "command"
 msgstr "命令"
 
-#: archive.c:444 builtin/archive.c:93
+#: archive.c:452 builtin/archive.c:93
 msgid "path to the remote git-upload-archive command"
 msgstr "远程 git-upload-archive 命令的路径"
 
-#: attr.c:258
+#: attr.c:264
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
@@ -251,7 +251,7 @@ msgstr "'%s' 不像是一个 v2 版本的包文件"
 msgid "unrecognized header: %s%s (%d)"
 msgstr "未能识别的包头:%s%s (%d)"
 
-#: bundle.c:87 builtin/commit.c:788
+#: bundle.c:87 builtin/commit.c:766
 #, c-format
 msgid "could not open '%s'"
 msgstr "不能打开 '%s'"
@@ -260,9 +260,9 @@ msgstr "不能打开 '%s'"
 msgid "Repository lacks these prerequisite commits:"
 msgstr "版本库缺少这些必备的提交:"
 
-#: bundle.c:163 sequencer.c:641 sequencer.c:1096 builtin/blame.c:2706
-#: builtin/branch.c:652 builtin/commit.c:1085 builtin/log.c:330
-#: builtin/log.c:823 builtin/log.c:1432 builtin/log.c:1669 builtin/merge.c:357
+#: bundle.c:163 sequencer.c:650 sequencer.c:1105 builtin/blame.c:2705
+#: builtin/branch.c:659 builtin/commit.c:1045 builtin/log.c:330
+#: builtin/log.c:823 builtin/log.c:1432 builtin/log.c:1669 builtin/merge.c:358
 #: builtin/shortlog.c:158
 msgid "revision walk setup failed"
 msgstr "版本遍历设置失败"
@@ -302,25 +302,25 @@ msgstr "rev-list 终止"
 msgid "ref '%s' is excluded by the rev-list options"
 msgstr "引用 '%s' 被 rev-list 选项排除"
 
-#: bundle.c:438 builtin/log.c:153 builtin/log.c:1342 builtin/shortlog.c:261
+#: bundle.c:437 builtin/log.c:153 builtin/log.c:1342 builtin/shortlog.c:261
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "未能识别的参数:%s"
 
-#: bundle.c:444
+#: bundle.c:443
 msgid "Refusing to create empty bundle."
 msgstr "不能创建空包。"
 
-#: bundle.c:454
+#: bundle.c:453
 #, c-format
 msgid "cannot create '%s'"
 msgstr "不能创建 '%s'"
 
-#: bundle.c:475
+#: bundle.c:474
 msgid "index-pack died"
 msgstr "index-pack 终止"
 
-#: color.c:157
+#: color.c:260
 #, c-format
 msgid "invalid color value: %.*s"
 msgstr "无效的颜色值:%.*s"
@@ -339,55 +339,55 @@ msgstr "%s %s 不是一个提交!"
 msgid "memory exhausted"
 msgstr "内存耗尽"
 
-#: config.c:469 config.c:471
+#: config.c:474 config.c:476
 #, c-format
 msgid "bad config file line %d in %s"
 msgstr "配置文件 %2$s 出错于第 %1$d 行"
 
-#: config.c:587
+#: config.c:592
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in %s: %s"
 msgstr "文件 %3$s 中配置变量 '%2$s' 的数字取值 '%1$s' 设置错误: %4$s"
 
-#: config.c:589
+#: config.c:594
 #, c-format
 msgid "bad numeric config value '%s' for '%s': %s"
 msgstr "配置变量 '%2$s' 的数字取值 '%1$s' 设置错误: %3$s"
 
-#: config.c:674
+#: config.c:679
 #, c-format
 msgid "failed to expand user dir in: '%s'"
 msgstr "无法扩展 '%s' 中的用户目录"
 
-#: config.c:752 config.c:763
+#: config.c:757 config.c:768
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr "错误的 zlib 压缩级别 %d"
 
-#: config.c:885
+#: config.c:890
 #, c-format
 msgid "invalid mode for object creation: %s"
 msgstr "无效的对象创建模式:%s"
 
-#: config.c:1201
+#: config.c:1216
 msgid "unable to parse command-line config"
 msgstr "无法解析命令行中的配置"
 
-#: config.c:1262
+#: config.c:1277
 msgid "unknown error occured while reading the configuration files"
 msgstr "在读取配置文件时遇到未知错误"
 
-#: config.c:1586
+#: config.c:1601
 #, c-format
 msgid "unable to parse '%s' from command-line config"
 msgstr "无法解析命令行配置中的 '%s'"
 
-#: config.c:1588
+#: config.c:1603
 #, c-format
 msgid "bad config variable '%s' in file '%s' at line %d"
 msgstr "在文件 '%2$s' 的第 %3$d 行发现错误的配置变量 '%1$s'"
 
-#: config.c:1647
+#: config.c:1662
 #, c-format
 msgid "%s has multiple values"
 msgstr "%s 有多个取值"
@@ -479,7 +479,7 @@ msgstr[1] "%lu 年前"
 msgid "failed to read orderfile '%s'"
 msgstr "无法读取排序文件 '%s'"
 
-#: diffcore-rename.c:516
+#: diffcore-rename.c:536
 msgid "Performing inexact rename detection"
 msgstr "正在进行非精确的重命名检测"
 
@@ -509,16 +509,16 @@ msgstr ""
 "发现配置变量 'diff.dirstat' 中的错误:\n"
 "%s"
 
-#: diff.c:2957
+#: diff.c:2956
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr "外部 diff 退出,停止在 %s"
 
-#: diff.c:3352
+#: diff.c:3351
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow 参数后只跟一个 pathspec"
 
-#: diff.c:3515
+#: diff.c:3514
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -527,7 +527,7 @@ msgstr ""
 "无法解析 --dirstat/-X 选项的参数:\n"
 "%s"
 
-#: diff.c:3529
+#: diff.c:3528
 #, c-format
 msgid "Failed to parse --submodule option parameter: '%s'"
 msgstr "无法解析 --submodule 选项的参数:'%s'"
@@ -633,11 +633,11 @@ msgstr[1] ""
 msgid "%s: %s - %s"
 msgstr "%s:%s - %s"
 
-#: lockfile.c:275
+#: lockfile.c:283
 msgid "BUG: reopen a lockfile that is still open"
 msgstr "BUG: 重新打开一个仍打开着的锁文件"
 
-#: lockfile.c:277
+#: lockfile.c:285
 msgid "BUG: reopen a lockfile that has been committed"
 msgstr "BUG: 重新打开一个已提交的锁文件"
 
@@ -645,8 +645,8 @@ msgstr "BUG: 重新打开一个已提交的锁文件"
 msgid "failed to read the cache"
 msgstr "无法读取缓存"
 
-#: merge.c:94 builtin/checkout.c:356 builtin/checkout.c:562
-#: builtin/clone.c:659
+#: merge.c:94 builtin/checkout.c:374 builtin/checkout.c:580
+#: builtin/clone.c:662
 msgid "unable to write new index file"
 msgstr "无法写新的索引文件"
 
@@ -664,64 +664,64 @@ msgstr "为路径 '%s' addinfo_cache 失败"
 msgid "error building trees"
 msgstr "无法创建树"
 
-#: merge-recursive.c:691
+#: merge-recursive.c:688
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr "无法创建路径 '%s'%s"
 
-#: merge-recursive.c:702
+#: merge-recursive.c:699
 #, c-format
 msgid "Removing %s to make room for subdirectory\n"
 msgstr "删除 %s 以便为子目录留出空间\n"
 
-#: merge-recursive.c:716 merge-recursive.c:737
+#: merge-recursive.c:713 merge-recursive.c:734
 msgid ": perhaps a D/F conflict?"
 msgstr ":可能是一个目录/文件冲突?"
 
-#: merge-recursive.c:727
+#: merge-recursive.c:724
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr "拒绝丢弃 '%s' 中的未跟踪文件"
 
-#: merge-recursive.c:767
+#: merge-recursive.c:764
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "不能读取对象 %s '%s'"
 
-#: merge-recursive.c:769
+#: merge-recursive.c:766
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "%s '%s' 应为数据(blob)对象"
 
-#: merge-recursive.c:792 builtin/clone.c:318
+#: merge-recursive.c:789 builtin/clone.c:321
 #, c-format
 msgid "failed to open '%s'"
 msgstr "无法打开 '%s'"
 
-#: merge-recursive.c:800
+#: merge-recursive.c:797
 #, c-format
 msgid "failed to symlink '%s'"
 msgstr "无法创建符号链接 '%s'"
 
-#: merge-recursive.c:803
+#: merge-recursive.c:800
 #, c-format
 msgid "do not know what to do with %06o %s '%s'"
 msgstr "不知道如何处理 %06o %s '%s'"
 
-#: merge-recursive.c:941
+#: merge-recursive.c:938
 msgid "Failed to execute internal merge"
 msgstr "无法执行内部合并"
 
-#: merge-recursive.c:945
+#: merge-recursive.c:942
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "不能添加 %s 至对象库"
 
-#: merge-recursive.c:961
+#: merge-recursive.c:958
 msgid "unsupported object type in the tree"
 msgstr "在树中有不支持的对象类型"
 
-#: merge-recursive.c:1036 merge-recursive.c:1050
+#: merge-recursive.c:1033 merge-recursive.c:1047
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -730,7 +730,7 @@ msgstr ""
 "冲突(%1$s/删除):%2$s 在 %3$s 中被删除,在 %5$s 中被 %4$s。%7$s 在 %6$s 中"
 "的版本被保留。"
 
-#: merge-recursive.c:1042 merge-recursive.c:1055
+#: merge-recursive.c:1039 merge-recursive.c:1052
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -739,20 +739,20 @@ msgstr ""
 "冲突(%1$s/删除):%2$s 在 %3$s 中被删除,在 %5$s 中被 %4$s。%7$s 在 %6$s 中"
 "的版本保留于 %8$s 中。"
 
-#: merge-recursive.c:1096
+#: merge-recursive.c:1093
 msgid "rename"
 msgstr "重命名"
 
-#: merge-recursive.c:1096
+#: merge-recursive.c:1093
 msgid "renamed"
 msgstr "重命名"
 
-#: merge-recursive.c:1152
+#: merge-recursive.c:1149
 #, c-format
 msgid "%s is a directory in %s adding as %s instead"
 msgstr "%s 是 %s 中的一个目录而以 %s 为名被添加"
 
-#: merge-recursive.c:1174
+#: merge-recursive.c:1171
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -761,119 +761,119 @@ msgstr ""
 "冲突(重命名/重命名):在分支 \"%3$s\" 中重命名 \"%1$s\"->\"%2$s\",在分支 "
 "\"%6$s\" 中重命名 \"%4$s\"->\"%5$s\"%7$s"
 
-#: merge-recursive.c:1179
+#: merge-recursive.c:1176
 msgid " (left unresolved)"
 msgstr "(留下未解决)"
 
-#: merge-recursive.c:1233
+#: merge-recursive.c:1230
 #, c-format
 msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
 msgstr ""
 "冲突(重命名/重命名):在 %3$s 中重命名 %1$s->%2$s,在 %6$s 中重命名 %4$s->"
 "%5$s"
 
-#: merge-recursive.c:1263
+#: merge-recursive.c:1260
 #, c-format
 msgid "Renaming %s to %s and %s to %s instead"
 msgstr "而是重命名 %s 至 %s,以及 %s 至 %s"
 
-#: merge-recursive.c:1462
+#: merge-recursive.c:1459
 #, c-format
 msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s"
 msgstr "冲突(重命名/添加):在 %3$s 中重命名 %1$s->%2$s。在 %5$s 中添加 %4$s"
 
-#: merge-recursive.c:1472
+#: merge-recursive.c:1469
 #, c-format
 msgid "Adding merged %s"
 msgstr "添加合并后的 %s"
 
-#: merge-recursive.c:1477 merge-recursive.c:1675
+#: merge-recursive.c:1474 merge-recursive.c:1672
 #, c-format
 msgid "Adding as %s instead"
 msgstr "而是以 %s 为名添加"
 
-#: merge-recursive.c:1528
+#: merge-recursive.c:1525
 #, c-format
 msgid "cannot read object %s"
 msgstr "不能读取对象 %s"
 
-#: merge-recursive.c:1531
+#: merge-recursive.c:1528
 #, c-format
 msgid "object %s is not a blob"
 msgstr "对象 %s 不是一个数据(blob)对象"
 
-#: merge-recursive.c:1579
+#: merge-recursive.c:1576
 msgid "modify"
 msgstr "修改"
 
-#: merge-recursive.c:1579
+#: merge-recursive.c:1576
 msgid "modified"
 msgstr "修改"
 
-#: merge-recursive.c:1589
+#: merge-recursive.c:1586
 msgid "content"
 msgstr "内容"
 
-#: merge-recursive.c:1596
+#: merge-recursive.c:1593
 msgid "add/add"
 msgstr "添加/添加"
 
-#: merge-recursive.c:1630
+#: merge-recursive.c:1627
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "略过 %s(已经做过相同合并)"
 
-#: merge-recursive.c:1644
+#: merge-recursive.c:1641
 #, c-format
 msgid "Auto-merging %s"
 msgstr "自动合并 %s"
 
-#: merge-recursive.c:1648 git-submodule.sh:1150
+#: merge-recursive.c:1645 git-submodule.sh:1150
 msgid "submodule"
 msgstr "子模组"
 
-#: merge-recursive.c:1649
+#: merge-recursive.c:1646
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "冲突(%s):合并冲突于 %s"
 
-#: merge-recursive.c:1735
+#: merge-recursive.c:1732
 #, c-format
 msgid "Removing %s"
 msgstr "删除 %s"
 
-#: merge-recursive.c:1760
+#: merge-recursive.c:1757
 msgid "file/directory"
 msgstr "文件/目录"
 
-#: merge-recursive.c:1766
+#: merge-recursive.c:1763
 msgid "directory/file"
 msgstr "目录/文件"
 
-#: merge-recursive.c:1771
+#: merge-recursive.c:1768
 #, c-format
 msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
 msgstr "冲突(%1$s):在 %3$s 中有一个名为 %2$s 的目录。以 %5$s 为名添加 %4$s"
 
-#: merge-recursive.c:1781
+#: merge-recursive.c:1778
 #, c-format
 msgid "Adding %s"
 msgstr "添加 %s"
 
-#: merge-recursive.c:1798
+#: merge-recursive.c:1795
 msgid "Fatal merge failure, shouldn't happen."
 msgstr "严重的合并错误,不应发生。"
 
-#: merge-recursive.c:1817
+#: merge-recursive.c:1814
 msgid "Already up-to-date!"
 msgstr "已经是最新的!"
 
-#: merge-recursive.c:1826
+#: merge-recursive.c:1823
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "无法合并树 %s 和 %s"
 
-#: merge-recursive.c:1856
+#: merge-recursive.c:1853
 #, c-format
 msgid "Unprocessed path??? %s"
 msgstr "未处理的路径??? %s"
@@ -898,7 +898,7 @@ msgstr "合并未返回提交"
 msgid "Could not parse object '%s'"
 msgstr "不能解析对象 '%s'"
 
-#: merge-recursive.c:2019 builtin/merge.c:666
+#: merge-recursive.c:2019 builtin/merge.c:667
 msgid "Unable to write index."
 msgstr "不能写入索引。"
 
@@ -906,19 +906,19 @@ msgstr "不能写入索引。"
 msgid "Cannot commit uninitialized/unreferenced notes tree"
 msgstr "不能提交未初始化/未引用的注解树"
 
-#: notes-utils.c:83
+#: notes-utils.c:82
 #, c-format
 msgid "Bad notes.rewriteMode value: '%s'"
 msgstr "坏的 notes.rewriteMode 值:'%s'"
 
-#: notes-utils.c:93
+#: notes-utils.c:92
 #, c-format
 msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
 msgstr "拒绝向 %s(在 refs/notes/ 之外)写入注解"
 
 #. TRANSLATORS: The first %s is the name of the
 #. environment variable, the second %s is its value
-#: notes-utils.c:120
+#: notes-utils.c:119
 #, c-format
 msgid "Bad %s value: '%s'"
 msgstr "坏的 %s 值:'%s'"
@@ -1024,7 +1024,7 @@ msgstr "不能解析 --pretty 格式"
 msgid "done"
 msgstr "完成"
 
-#: read-cache.c:1261
+#: read-cache.c:1275
 #, c-format
 msgid ""
 "index.version set, but the value is invalid.\n"
@@ -1033,7 +1033,7 @@ msgstr ""
 "设置了 index.version,但是取值无效。\n"
 "使用版本 %i"
 
-#: read-cache.c:1271
+#: read-cache.c:1285
 #, c-format
 msgid ""
 "GIT_INDEX_VERSION set, but the value is invalid.\n"
@@ -1061,32 +1061,32 @@ msgstr "%s 同时跟踪 %s 和 %s"
 msgid "Internal error"
 msgstr "内部错误"
 
-#: remote.c:1968
+#: remote.c:1980
 #, c-format
 msgid "Your branch is based on '%s', but the upstream is gone.\n"
 msgstr "您的分支基于 '%s',但此上游分支已经不存在。\n"
 
-#: remote.c:1972
+#: remote.c:1984
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "  (使用 \"git branch --unset-upstream\" 来修复)\n"
 
-#: remote.c:1975
+#: remote.c:1987
 #, c-format
 msgid "Your branch is up-to-date with '%s'.\n"
 msgstr "您的分支与上游分支 '%s' 一致。\n"
 
-#: remote.c:1979
+#: remote.c:1991
 #, c-format
 msgid "Your branch is ahead of '%s' by %d commit.\n"
 msgid_plural "Your branch is ahead of '%s' by %d commits.\n"
 msgstr[0] "您的分支领先 '%s' 共 %d 个提交。\n"
 msgstr[1] "您的分支领先 '%s' 共 %d 个提交。\n"
 
-#: remote.c:1985
+#: remote.c:1997
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (使用 \"git push\" 来发布您的本地提交)\n"
 
-#: remote.c:1988
+#: remote.c:2000
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -1095,11 +1095,11 @@ msgstr[0] "您的分支落后 '%s' 共 %d 个提交,并且可以快进。\n"
 msgstr[1] "您的分支落后 '%s' 共 %d 个提交,并且可以快进。\n"
 
 #  译者:注意保持前导空格
-#: remote.c:1996
+#: remote.c:2008
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (使用 \"git pull\" 来更新您的本地分支)\n"
 
-#: remote.c:1999
+#: remote.c:2011
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -1115,35 +1115,43 @@ msgstr[1] ""
 "并且分别有 %d 和 %d 处不同的提交。\n"
 
 #  译者:注意保持前导空格
-#: remote.c:2009
+#: remote.c:2021
 msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr "  (使用 \"git pull\" 来合并远程分支)\n"
 
-#: run-command.c:87
+#: revision.c:2348
+msgid "--first-parent is incompatible with --bisect"
+msgstr "--first-parent 与 --bisect 不兼容"
+
+#: run-command.c:83
 msgid "open /dev/null failed"
 msgstr "不能打开 /dev/null"
 
-#: run-command.c:89
+#: run-command.c:85
 #, c-format
 msgid "dup2(%d,%d) failed"
 msgstr "不能调用 dup2(%d,%d)"
 
-#: send-pack.c:265
+#: send-pack.c:272
 msgid "failed to sign the push certificate"
 msgstr "无法为推送证书签名"
 
-#: send-pack.c:322
+#: send-pack.c:356
 msgid "the receiving end does not support --signed push"
 msgstr "接收端不支持签名推送"
 
-#: sequencer.c:172 builtin/merge.c:781 builtin/merge.c:892
-#: builtin/merge.c:1002 builtin/merge.c:1012
+#: send-pack.c:366
+msgid "the receiving end does not support --atomic push"
+msgstr "接收端不支持原子推送"
+
+#: sequencer.c:172 builtin/merge.c:782 builtin/merge.c:893 builtin/merge.c:995
+#: builtin/merge.c:1005
 #, c-format
 msgid "Could not open '%s' for writing"
 msgstr "不能为写入打开 '%s'"
 
-#: sequencer.c:174 builtin/merge.c:343 builtin/merge.c:784
-#: builtin/merge.c:1004 builtin/merge.c:1017
+#: sequencer.c:174 builtin/merge.c:344 builtin/merge.c:785 builtin/merge.c:997
+#: builtin/merge.c:1010
 #, c-format
 msgid "Could not write to '%s'"
 msgstr "不能写入 '%s'"
@@ -1153,7 +1161,7 @@ msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
 msgstr ""
-"冲突解决完毕后,用 'git add <paths>' 或 'git rm <paths>'\n"
+"冲突解决完毕后,用 'git add <路径>' 或 'git rm <路径>'\n"
 "命令标记修正后的文件"
 
 #: sequencer.c:198
@@ -1162,10 +1170,10 @@ msgid ""
 "with 'git add <paths>' or 'git rm <paths>'\n"
 "and commit the result with 'git commit'"
 msgstr ""
-"冲突解决完毕后,用 'git add <paths>' 或 'git rm <paths>'\n"
+"冲突解决完毕后,用 'git add <路径>' 或 'git rm <路径>'\n"
 "对修正后的文件做标记,然后用 'git commit' 提交"
 
-#: sequencer.c:211 sequencer.c:852 sequencer.c:935
+#: sequencer.c:211 sequencer.c:861 sequencer.c:944
 #, c-format
 msgid "Could not write to %s"
 msgstr "不能写入 %s"
@@ -1188,197 +1196,197 @@ msgid "Commit your changes or stash them to proceed."
 msgstr "提交您的修改或保存进度后再继续。"
 
 #. TRANSLATORS: %s will be "revert" or "cherry-pick"
-#: sequencer.c:304
+#: sequencer.c:321
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s:无法写入新索引文件"
 
-#: sequencer.c:335
+#: sequencer.c:339
 msgid "Could not resolve HEAD commit\n"
 msgstr "不能解析 HEAD 提交\n"
 
-#: sequencer.c:355
+#: sequencer.c:359
 msgid "Unable to update cache tree\n"
 msgstr "不能更新缓存\n"
 
-#: sequencer.c:402
+#: sequencer.c:411
 #, c-format
 msgid "Could not parse commit %s\n"
 msgstr "不能解析提交 %s\n"
 
-#: sequencer.c:407
+#: sequencer.c:416
 #, c-format
 msgid "Could not parse parent commit %s\n"
 msgstr "不能解析父提交 %s\n"
 
-#: sequencer.c:473
+#: sequencer.c:482
 msgid "Your index file is unmerged."
 msgstr "您的索引文件未完成合并。"
 
-#: sequencer.c:492
+#: sequencer.c:501
 #, c-format
 msgid "Commit %s is a merge but no -m option was given."
 msgstr "提交 %s 是一个合并提交但未提供 -m 选项。"
 
-#: sequencer.c:500
+#: sequencer.c:509
 #, c-format
 msgid "Commit %s does not have parent %d"
 msgstr "提交 %s 没有父提交 %d"
 
-#: sequencer.c:504
+#: sequencer.c:513
 #, c-format
 msgid "Mainline was specified but commit %s is not a merge."
 msgstr "指定了主线但提交 %s 不是一个合并。"
 
 #. TRANSLATORS: The first %s will be "revert" or
 #. "cherry-pick", the second %s a SHA1
-#: sequencer.c:517
+#: sequencer.c:526
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s:不能解析父提交 %s"
 
-#: sequencer.c:521
+#: sequencer.c:530
 #, c-format
 msgid "Cannot get commit message for %s"
 msgstr "不能得到 %s 的提交说明"
 
-#: sequencer.c:607
+#: sequencer.c:616
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "不能还原 %s... %s"
 
-#: sequencer.c:608
+#: sequencer.c:617
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "不能应用 %s... %s"
 
-#: sequencer.c:644
+#: sequencer.c:653
 msgid "empty commit set passed"
 msgstr "提供了空的提交集"
 
-#: sequencer.c:652
+#: sequencer.c:661
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s:无法读取索引"
 
-#: sequencer.c:656
+#: sequencer.c:665
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s:无法刷新索引"
 
-#: sequencer.c:716
+#: sequencer.c:725
 #, c-format
 msgid "Cannot %s during a %s"
 msgstr "无法 %s 在一个 %s 过程中"
 
-#: sequencer.c:738
+#: sequencer.c:747
 #, c-format
 msgid "Could not parse line %d."
 msgstr "不能解析第 %d 行。"
 
-#: sequencer.c:743
+#: sequencer.c:752
 msgid "No commits parsed."
 msgstr "没有提交被解析。"
 
-#: sequencer.c:756
+#: sequencer.c:765
 #, c-format
 msgid "Could not open %s"
 msgstr "不能打开 %s"
 
-#: sequencer.c:760
+#: sequencer.c:769
 #, c-format
 msgid "Could not read %s."
 msgstr "不能读取 %s。"
 
-#: sequencer.c:767
+#: sequencer.c:776
 #, c-format
 msgid "Unusable instruction sheet: %s"
 msgstr "无用的指令表单:%s"
 
-#: sequencer.c:797
+#: sequencer.c:806
 #, c-format
 msgid "Invalid key: %s"
 msgstr "无效键名:%s"
 
-#: sequencer.c:800
+#: sequencer.c:809
 #, c-format
 msgid "Invalid value for %s: %s"
 msgstr "%s 的值无效:%s"
 
-#: sequencer.c:812
+#: sequencer.c:821
 #, c-format
 msgid "Malformed options sheet: %s"
 msgstr "非法的选项表单:%s"
 
-#: sequencer.c:833
+#: sequencer.c:842
 msgid "a cherry-pick or revert is already in progress"
 msgstr "一个拣选或还原操作已在进行"
 
-#: sequencer.c:834
+#: sequencer.c:843
 msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
 msgstr "尝试 \"git cherry-pick (--continue | --quit | --abort)\""
 
-#: sequencer.c:838
+#: sequencer.c:847
 #, c-format
 msgid "Could not create sequencer directory %s"
 msgstr "不能创建序列目录 %s"
 
-#: sequencer.c:854 sequencer.c:939
+#: sequencer.c:863 sequencer.c:948
 #, c-format
 msgid "Error wrapping up %s."
 msgstr "错误收尾 %s。"
 
-#: sequencer.c:873 sequencer.c:1009
+#: sequencer.c:882 sequencer.c:1018
 msgid "no cherry-pick or revert in progress"
 msgstr "拣选或还原操作并未进行"
 
-#: sequencer.c:875
+#: sequencer.c:884
 msgid "cannot resolve HEAD"
 msgstr "不能解析 HEAD"
 
-#: sequencer.c:877
+#: sequencer.c:886
 msgid "cannot abort from a branch yet to be born"
 msgstr "不能从尚未建立的分支终止"
 
-#: sequencer.c:899 builtin/apply.c:4128
+#: sequencer.c:908 builtin/apply.c:4288
 #, c-format
 msgid "cannot open %s: %s"
 msgstr "不能打开 %s:%s"
 
-#: sequencer.c:902
+#: sequencer.c:911
 #, c-format
 msgid "cannot read %s: %s"
 msgstr "不能读取 %s:%s"
 
-#: sequencer.c:903
+#: sequencer.c:912
 msgid "unexpected end of file"
 msgstr "意外的文件结束"
 
-#: sequencer.c:909
+#: sequencer.c:918
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr "保存拣选提交前的 HEAD 文件 '%s' 损坏"
 
-#: sequencer.c:932
+#: sequencer.c:941
 #, c-format
 msgid "Could not format %s."
 msgstr "不能格式化 %s。"
 
-#: sequencer.c:1077
+#: sequencer.c:1086
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s:不能拣选一个%s"
 
-#: sequencer.c:1080
+#: sequencer.c:1089
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s:错误的版本"
 
-#: sequencer.c:1114
+#: sequencer.c:1123
 msgid "Can't revert as initial commit"
 msgstr "不能作为初始提交还原"
 
-#: sequencer.c:1115
+#: sequencer.c:1124
 msgid "Can't cherry-pick into empty head"
 msgstr "不能拣选到空分支"
 
@@ -1445,38 +1453,38 @@ msgstr "无法移除 %s 的 .gitmodules 条目"
 msgid "staging updated .gitmodules failed"
 msgstr "将更新后 .gitmodules 添加暂存区失败"
 
-#: submodule.c:1111 builtin/init-db.c:363
+#: submodule.c:1109 builtin/init-db.c:371
 #, c-format
 msgid "Could not create git link %s"
 msgstr "不能创建 git link %s"
 
-#: submodule.c:1122
+#: submodule.c:1120
 #, c-format
 msgid "Could not set core.worktree in %s"
 msgstr "不能在 %s 中设置 core.worktree"
 
-#: trailer.c:499 trailer.c:503 trailer.c:507 trailer.c:561 trailer.c:565
-#: trailer.c:569
+#: trailer.c:491 trailer.c:495 trailer.c:499 trailer.c:553 trailer.c:557
+#: trailer.c:561
 #, c-format
 msgid "unknown value '%s' for key '%s'"
 msgstr "键 '%2$s' 的未知取值 '%1$s'"
 
-#: trailer.c:551 trailer.c:556 builtin/remote.c:288
+#: trailer.c:543 trailer.c:548 builtin/remote.c:290
 #, c-format
 msgid "more than one %s"
 msgstr "多于一个 %s"
 
-#: trailer.c:589
+#: trailer.c:581
 #, c-format
 msgid "empty trailer token in trailer '%.*s'"
 msgstr "签名 '%.*s' 的键为空"
 
-#: trailer.c:709
+#: trailer.c:701
 #, c-format
 msgid "could not read input file '%s'"
 msgstr "不能读取输入文件 '%s'"
 
-#: trailer.c:712
+#: trailer.c:704
 msgid "could not read from stdin"
 msgstr "不能自标准输入读取"
 
@@ -1513,26 +1521,26 @@ msgstr "无效的端口号"
 msgid "invalid '..' path segment"
 msgstr "无效的 '..' 路径片段"
 
-#: wrapper.c:509
+#: wrapper.c:523
 #, c-format
 msgid "unable to access '%s': %s"
 msgstr "不能访问 '%s':%s"
 
-#: wrapper.c:530
+#: wrapper.c:544
 #, c-format
 msgid "unable to access '%s'"
 msgstr "不能访问 '%s'"
 
-#: wrapper.c:541
+#: wrapper.c:555
 #, c-format
 msgid "unable to look up current user in the passwd file: %s"
 msgstr "无法在口令文件中查询到当前用户:%s"
 
-#: wrapper.c:542
+#: wrapper.c:556
 msgid "no such user"
 msgstr "无此用户"
 
-#: wrapper.c:550
+#: wrapper.c:564
 msgid "unable to get current working directory"
 msgstr "不能获取当前工作目录"
 
@@ -1544,51 +1552,51 @@ msgstr "未合并的路径:"
 #: wt-status.c:177 wt-status.c:204
 #, c-format
 msgid "  (use \"git reset %s <file>...\" to unstage)"
-msgstr "  (使用 \"git reset %s <file>...\" 撤出暂存区)"
+msgstr "  (使用 \"git reset %s <文件>...\" 撤出暂存区)"
 
 #  译者:注意保持前导空格
 #: wt-status.c:179 wt-status.c:206
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
-msgstr "  (使用 \"git rm --cached <file>...\" 撤出暂存区)"
+msgstr "  (使用 \"git rm --cached <文件>...\" 撤出暂存区)"
 
 #  译者:注意保持前导空格
 #: wt-status.c:183
 msgid "  (use \"git add <file>...\" to mark resolution)"
-msgstr "  (使用 \"git add <file>...\" 标记解决方案)"
+msgstr "  (使用 \"git add <文件>...\" 标记解决方案)"
 
 #  译者:注意保持前导空格
 #: wt-status.c:185 wt-status.c:189
 msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
-msgstr "  (酌情使用 \"git add/rm <file>...\" 标记解决方案)"
+msgstr "  (酌情使用 \"git add/rm <文件>...\" 标记解决方案)"
 
 #  译者:注意保持前导空格
 #: wt-status.c:187
 msgid "  (use \"git rm <file>...\" to mark resolution)"
-msgstr "  (使用 \"git rm <file>...\" 标记解决方案)"
+msgstr "  (使用 \"git rm <文件>...\" 标记解决方案)"
 
-#: wt-status.c:198
+#: wt-status.c:198 wt-status.c:878
 msgid "Changes to be committed:"
 msgstr "要提交的变更:"
 
-#: wt-status.c:216
+#: wt-status.c:216 wt-status.c:887
 msgid "Changes not staged for commit:"
 msgstr "尚未暂存以备提交的变更:"
 
 #  译者:注意保持前导空格
 #: wt-status.c:220
 msgid "  (use \"git add <file>...\" to update what will be committed)"
-msgstr "  (使用 \"git add <file>...\" 更新要提交的内容)"
+msgstr "  (使用 \"git add <文件>...\" 更新要提交的内容)"
 
 #  译者:注意保持前导空格
 #: wt-status.c:222
 msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
-msgstr "  (使用 \"git add/rm <file>...\" 更新要提交的内容)"
+msgstr "  (使用 \"git add/rm <文件>...\" 更新要提交的内容)"
 
 #  译者:注意保持前导空格
 #: wt-status.c:223
 msgid ""
 "  (use \"git checkout -- <file>...\" to discard changes in working directory)"
-msgstr "  (使用 \"git checkout -- <file>...\" 丢弃工作区的改动)"
+msgstr "  (使用 \"git checkout -- <文件>...\" 丢弃工作区的改动)"
 
 #  译者:注意保持前导空格
 #: wt-status.c:225
@@ -1599,7 +1607,7 @@ msgstr "  (提交或丢弃子模组中未跟踪或修改的内容)"
 #: wt-status.c:237
 #, c-format
 msgid "  (use \"git %s <file>...\" to include in what will be committed)"
-msgstr "  (使用 \"git %s <file>...\" 以包含要提交的内容)"
+msgstr "  (使用 \"git %s <文件>...\" 以包含要提交的内容)"
 
 #: wt-status.c:252
 msgid "both deleted:"
@@ -1686,15 +1694,15 @@ msgstr "未跟踪的内容, "
 msgid "bug: unhandled diff status %c"
 msgstr "bug:无法处理的差异状态 %c"
 
-#: wt-status.c:761
+#: wt-status.c:753
 msgid "Submodules changed but not updated:"
 msgstr "子模组已修改但尚未更新:"
 
-#: wt-status.c:763
+#: wt-status.c:755
 msgid "Submodule changes to be committed:"
 msgstr "要提交的子模组变更:"
 
-#: wt-status.c:842
+#: wt-status.c:835
 msgid ""
 "Do not touch the line above.\n"
 "Everything below will be removed."
@@ -1702,198 +1710,198 @@ msgstr ""
 "不要改动上面的一行。\n"
 "下面的所有内容均将被删除。"
 
-#: wt-status.c:933
+#: wt-status.c:946
 msgid "You have unmerged paths."
 msgstr "您有尚未合并的路径。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:936
+#: wt-status.c:949
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (解决冲突并运行 \"git commit\")"
 
-#: wt-status.c:939
+#: wt-status.c:952
 msgid "All conflicts fixed but you are still merging."
 msgstr "所有冲突已解决但您仍处于合并中。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:942
+#: wt-status.c:955
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (使用 \"git commit\" 结束合并)"
 
-#: wt-status.c:952
+#: wt-status.c:965
 msgid "You are in the middle of an am session."
 msgstr "您正处于 am 操作过程中。"
 
-#: wt-status.c:955
+#: wt-status.c:968
 msgid "The current patch is empty."
 msgstr "当前的补丁为空。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:959
+#: wt-status.c:972
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr "  (解决冲突,然后运行 \"git am --continue\")"
 
 #  译者:注意保持前导空格
-#: wt-status.c:961
+#: wt-status.c:974
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (使用 \"git am --skip\" 跳过此补丁)"
 
 #  译者:注意保持前导空格
-#: wt-status.c:963
+#: wt-status.c:976
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (使用 \"git am --abort\" 恢复原有分支)"
 
-#: wt-status.c:1023 wt-status.c:1040
+#: wt-status.c:1036 wt-status.c:1053
 #, c-format
 msgid "You are currently rebasing branch '%s' on '%s'."
 msgstr "您在执行将分支 '%s' 变基到 '%s' 的操作。"
 
-#: wt-status.c:1028 wt-status.c:1045
+#: wt-status.c:1041 wt-status.c:1058
 msgid "You are currently rebasing."
 msgstr "您在执行变基操作。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1031
+#: wt-status.c:1044
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr "  (解决冲突,然后运行 \"git rebase --continue\")"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1033
+#: wt-status.c:1046
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr "  (使用 \"git rebase --skip\" 跳过此补丁)"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1035
+#: wt-status.c:1048
 msgid "  (use \"git rebase --abort\" to check out the original branch)"
 msgstr "  (使用 \"git rebase --abort\" 以检出原有分支)"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1048
+#: wt-status.c:1061
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr "  (所有冲突已解决:运行 \"git rebase --continue\")"
 
-#: wt-status.c:1052
+#: wt-status.c:1065
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
 msgstr "您在执行将分支 '%s' 变基到 '%s' 的操作时拆分提交。"
 
-#: wt-status.c:1057
+#: wt-status.c:1070
 msgid "You are currently splitting a commit during a rebase."
 msgstr "您在执行变基操作时拆分提交。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1060
+#: wt-status.c:1073
 msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
 msgstr "  (一旦您工作目录提交干净后,运行 \"git rebase --continue\")"
 
-#: wt-status.c:1064
+#: wt-status.c:1077
 #, c-format
 msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
 msgstr "您在执行将分支 '%s' 变基到 '%s' 的操作时编辑提交。"
 
-#: wt-status.c:1069
+#: wt-status.c:1082
 msgid "You are currently editing a commit during a rebase."
 msgstr "您在执行变基操作时编辑提交。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1072
+#: wt-status.c:1085
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr "  (使用 \"git commit --amend\" 修补当前提交)"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1074
+#: wt-status.c:1087
 msgid ""
 "  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr "  (当您对您的修改满意后执行 \"git rebase --continue\")"
 
-#: wt-status.c:1084
+#: wt-status.c:1097
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr "您在执行拣选提交 %s 的操作。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1089
+#: wt-status.c:1102
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr "  (解决冲突并运行 \"git cherry-pick --continue\")"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1092
+#: wt-status.c:1105
 msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
 msgstr "  (所有冲突已解决:运行 \"git cherry-pick --continue\")"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1094
+#: wt-status.c:1107
 msgid "  (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
 msgstr "  (使用 \"git cherry-pick --abort\" 以取消拣选操作)"
 
-#: wt-status.c:1103
+#: wt-status.c:1116
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr "您在执行反转提交 %s 的操作。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1108
+#: wt-status.c:1121
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr "  (解决冲突并运行 \"git revert --continue\")"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1111
+#: wt-status.c:1124
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr "  (所有冲突已解决:运行 \"git revert --continue\")"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1113
+#: wt-status.c:1126
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr "  (使用 \"git revert --abort\" 以取消反转提交操作)"
 
-#: wt-status.c:1124
+#: wt-status.c:1137
 #, c-format
 msgid "You are currently bisecting, started from branch '%s'."
 msgstr "您在执行从分支 '%s' 开始的二分查找操作。"
 
-#: wt-status.c:1128
+#: wt-status.c:1141
 msgid "You are currently bisecting."
 msgstr "您在执行二分查找操作。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:1131
+#: wt-status.c:1144
 msgid "  (use \"git bisect reset\" to get back to the original branch)"
 msgstr "  (使用 \"git bisect reset\" 以回到原有分支)"
 
-#: wt-status.c:1306
+#: wt-status.c:1321
 msgid "On branch "
 msgstr "位于分支 "
 
-#: wt-status.c:1313
+#: wt-status.c:1328
 msgid "rebase in progress; onto "
 msgstr "变基操作正在进行中;至 "
 
-#: wt-status.c:1320
+#: wt-status.c:1333
 msgid "HEAD detached at "
 msgstr "头指针分离于 "
 
-#: wt-status.c:1322
+#: wt-status.c:1335
 msgid "HEAD detached from "
 msgstr "头指针分离自 "
 
-#: wt-status.c:1325
+#: wt-status.c:1338
 msgid "Not currently on any branch."
 msgstr "当前不在任何分支上。"
 
-#: wt-status.c:1342
+#: wt-status.c:1355
 msgid "Initial commit"
 msgstr "初始提交"
 
-#: wt-status.c:1356
+#: wt-status.c:1369
 msgid "Untracked files"
 msgstr "未跟踪的文件"
 
-#: wt-status.c:1358
+#: wt-status.c:1371
 msgid "Ignored files"
 msgstr "忽略的文件"
 
-#: wt-status.c:1362
+#: wt-status.c:1375
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -1903,98 +1911,98 @@ msgstr ""
 "耗费了 %.2f 秒以枚举未跟踪的文件。'status -uno' 也许能提高速度,\n"
 "但您需要小心不要忘了添加新文件(参见 'git help status')。"
 
-#: wt-status.c:1368
+#: wt-status.c:1381
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "未跟踪的文件没有列出%s"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1370
+#: wt-status.c:1383
 msgid " (use -u option to show untracked files)"
 msgstr "(使用 -u 参数显示未跟踪的文件)"
 
-#: wt-status.c:1376
+#: wt-status.c:1389
 msgid "No changes"
 msgstr "没有修改"
 
-#: wt-status.c:1381
+#: wt-status.c:1394
 #, c-format
 msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
 msgstr "修改尚未加入提交(使用 \"git add\" 和/或 \"git commit -a\")\n"
 
-#: wt-status.c:1384
+#: wt-status.c:1397
 #, c-format
 msgid "no changes added to commit\n"
 msgstr "修改尚未加入提交\n"
 
-#: wt-status.c:1387
+#: wt-status.c:1400
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
 "track)\n"
 msgstr "提交为空,但是存在尚未跟踪的文件(使用 \"git add\" 建立跟踪)\n"
 
-#: wt-status.c:1390
+#: wt-status.c:1403
 #, c-format
 msgid "nothing added to commit but untracked files present\n"
 msgstr "提交为空,但是存在尚未跟踪的文件\n"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1393
+#: wt-status.c:1406
 #, c-format
 msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
 msgstr "无文件要提交(创建/拷贝文件并使用 \"git add\" 建立跟踪)\n"
 
-#: wt-status.c:1396 wt-status.c:1401
+#: wt-status.c:1409 wt-status.c:1414
 #, c-format
 msgid "nothing to commit\n"
 msgstr "无文件要提交\n"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1399
+#: wt-status.c:1412
 #, c-format
 msgid "nothing to commit (use -u to show untracked files)\n"
 msgstr "无文件要提交(使用 -u 显示未跟踪的文件)\n"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1403
+#: wt-status.c:1416
 #, c-format
 msgid "nothing to commit, working directory clean\n"
 msgstr "无文件要提交,干净的工作区\n"
 
-#: wt-status.c:1512
+#: wt-status.c:1525
 msgid "HEAD (no branch)"
 msgstr "HEAD(非分支)"
 
 #  译者:注意保持句尾空格
-#: wt-status.c:1518
+#: wt-status.c:1531
 msgid "Initial commit on "
 msgstr "初始提交于 "
 
-#: wt-status.c:1550
+#: wt-status.c:1563
 msgid "gone"
 msgstr "丢失"
 
 #  译者:注意保持句尾空格
-#: wt-status.c:1552 wt-status.c:1560
+#: wt-status.c:1565 wt-status.c:1573
 msgid "behind "
 msgstr "落后 "
 
-#: compat/precompose_utf8.c:55 builtin/clone.c:357
+#: compat/precompose_utf8.c:55 builtin/clone.c:360
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "无法删除 '%s'"
 
 #: builtin/add.c:22
-msgid "git add [options] [--] <pathspec>..."
-msgstr "git add [选项] [--] <路径规则>..."
+msgid "git add [<options>] [--] <pathspec>..."
+msgstr "git add [<选项>] [--] <路径规则>..."
 
 #: builtin/add.c:65
 #, c-format
 msgid "unexpected diff status %c"
 msgstr "意外的差异状态 %c"
 
-#: builtin/add.c:70 builtin/commit.c:275
+#: builtin/add.c:70 builtin/commit.c:277
 msgid "updating files failed"
 msgstr "更新文件失败"
 
@@ -2038,14 +2046,14 @@ msgstr "不能应用 '%s'"
 msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr "下列路径根据您的一个 .gitignore 文件而被忽略:\n"
 
-#: builtin/add.c:248 builtin/clean.c:875 builtin/fetch.c:108 builtin/mv.c:110
-#: builtin/prune-packed.c:55 builtin/push.c:499 builtin/remote.c:1375
+#: builtin/add.c:248 builtin/clean.c:876 builtin/fetch.c:107 builtin/mv.c:110
+#: builtin/prune-packed.c:55 builtin/push.c:508 builtin/remote.c:1372
 #: builtin/rm.c:269
 msgid "dry run"
 msgstr "演习"
 
-#: builtin/add.c:249 builtin/apply.c:4415 builtin/check-ignore.c:19
-#: builtin/commit.c:1362 builtin/count-objects.c:63 builtin/fsck.c:608
+#: builtin/add.c:249 builtin/apply.c:4577 builtin/check-ignore.c:19
+#: builtin/commit.c:1322 builtin/count-objects.c:63 builtin/fsck.c:608
 #: builtin/log.c:1617 builtin/mv.c:109 builtin/read-tree.c:114
 msgid "be verbose"
 msgstr "冗长输出"
@@ -2054,7 +2062,7 @@ msgstr "冗长输出"
 msgid "interactive picking"
 msgstr "交互式拣选"
 
-#: builtin/add.c:252 builtin/checkout.c:1108 builtin/reset.c:286
+#: builtin/add.c:252 builtin/checkout.c:1126 builtin/reset.c:286
 msgid "select hunks interactively"
 msgstr "交互式挑选数据块"
 
@@ -2099,10 +2107,6 @@ msgstr "检查在演习模式下文件(即使不存在)是否被忽略"
 msgid "Use -f if you really want to add them.\n"
 msgstr "使用 -f 参数如果您确实要添加它们。\n"
 
-#: builtin/add.c:287
-msgid "no files added"
-msgstr "没有文件被添加"
-
 #: builtin/add.c:293
 msgid "adding files failed"
 msgstr "添加文件失败"
@@ -2125,75 +2129,75 @@ msgstr "没有指定文件,也没有文件被添加。\n"
 msgid "Maybe you wanted to say 'git add .'?\n"
 msgstr "也许您想要执行 'git add .'?\n"
 
-#: builtin/add.c:363 builtin/check-ignore.c:172 builtin/clean.c:919
-#: builtin/commit.c:333 builtin/mv.c:130 builtin/reset.c:235 builtin/rm.c:299
+#: builtin/add.c:363 builtin/check-ignore.c:172 builtin/clean.c:920
+#: builtin/commit.c:335 builtin/mv.c:130 builtin/reset.c:235 builtin/rm.c:299
 msgid "index file corrupt"
 msgstr "索引文件损坏"
 
-#: builtin/add.c:446 builtin/apply.c:4510 builtin/mv.c:279 builtin/rm.c:431
+#: builtin/add.c:446 builtin/apply.c:4675 builtin/mv.c:279 builtin/rm.c:431
 msgid "Unable to write new index file"
 msgstr "无法写入新索引文件"
 
-#: builtin/apply.c:58
-msgid "git apply [options] [<patch>...]"
-msgstr "git apply [选项] [<补丁>...]"
+#: builtin/apply.c:59
+msgid "git apply [<options>] [<patch>...]"
+msgstr "git apply [<选项>] [<补丁>...]"
 
-#: builtin/apply.c:111
+#: builtin/apply.c:112
 #, c-format
 msgid "unrecognized whitespace option '%s'"
 msgstr "未能识别的空白字符选项 '%s'"
 
-#: builtin/apply.c:126
+#: builtin/apply.c:127
 #, c-format
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "未能识别的空白字符忽略选项 '%s'"
 
-#: builtin/apply.c:826
+#: builtin/apply.c:822
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr "无法准备时间戳正则表达式 %s"
 
-#: builtin/apply.c:835
+#: builtin/apply.c:831
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "regexec 返回 %d,输入为:%s"
 
-#: builtin/apply.c:916
+#: builtin/apply.c:912
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr "不能在补丁的第 %d 行找到文件名"
 
-#: builtin/apply.c:948
+#: builtin/apply.c:944
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr "git apply:错误的 git-diff - 应为 /dev/null,但在第 %2$d 行得到 %1$s"
 
-#: builtin/apply.c:952
+#: builtin/apply.c:948
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
 msgstr "git apply:错误的 git-diff - 第 %d 行上新文件名不一致"
 
-#: builtin/apply.c:953
+#: builtin/apply.c:949
 #, c-format
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr "git apply:错误的 git-diff - 第 %d 行上旧文件名不一致"
 
-#: builtin/apply.c:960
+#: builtin/apply.c:956
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr "git apply:错误的 git-diff - 第 %d 行处应为 /dev/null"
 
-#: builtin/apply.c:1423
+#: builtin/apply.c:1419
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr "recount:意外的行:%.*s"
 
-#: builtin/apply.c:1480
+#: builtin/apply.c:1476
 #, c-format
 msgid "patch fragment without header at line %d: %.*s"
 msgstr "第 %d 行的补丁片段没有头信息:%.*s"
 
-#: builtin/apply.c:1497
+#: builtin/apply.c:1493
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -2204,77 +2208,77 @@ msgid_plural ""
 msgstr[0] "当移除 %d 个前导路径后 git diff 头缺乏文件名信息(第 %d 行)"
 msgstr[1] "当移除 %d 个前导路径后 git diff 头缺乏文件名信息(第 %d 行)"
 
-#: builtin/apply.c:1657
+#: builtin/apply.c:1656
 msgid "new file depends on old contents"
 msgstr "新文件依赖旧内容"
 
-#: builtin/apply.c:1659
+#: builtin/apply.c:1658
 msgid "deleted file still has contents"
 msgstr "删除的文件仍有内容"
 
-#: builtin/apply.c:1685
+#: builtin/apply.c:1684
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "补丁在第 %d 行损坏"
 
-#: builtin/apply.c:1721
+#: builtin/apply.c:1720
 #, c-format
 msgid "new file %s depends on old contents"
 msgstr "新文件 %s 依赖旧内容"
 
-#: builtin/apply.c:1723
+#: builtin/apply.c:1722
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "删除的文件 %s 仍有内容"
 
-#: builtin/apply.c:1726
+#: builtin/apply.c:1725
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** 警告:文件 %s 成为空文件但并未删除"
 
-#: builtin/apply.c:1872
+#: builtin/apply.c:1871
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "二进制补丁在第 %d 行损坏:%.*s"
 
-#: builtin/apply.c:1901
+#: builtin/apply.c:1900
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "未能识别的二进制补丁位于第 %d 行"
 
-#: builtin/apply.c:2052
+#: builtin/apply.c:2051
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "补丁文件的第 %d 行只有垃圾数据"
 
-#: builtin/apply.c:2142
+#: builtin/apply.c:2141
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "无法读取符号链接 %s"
 
-#: builtin/apply.c:2146
+#: builtin/apply.c:2145
 #, c-format
 msgid "unable to open or read %s"
 msgstr "不能打开或读取 %s"
 
-#: builtin/apply.c:2754
+#: builtin/apply.c:2778
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "无效的行首字符:'%c'"
 
-#: builtin/apply.c:2872
+#: builtin/apply.c:2897
 #, c-format
 msgid "Hunk #%d succeeded at %d (offset %d line)."
 msgid_plural "Hunk #%d succeeded at %d (offset %d lines)."
 msgstr[0] "块 #%d 成功应用于 %d(偏移 %d 行)"
 msgstr[1] "块 #%d 成功应用于 %d(偏移 %d 行)"
 
-#: builtin/apply.c:2884
+#: builtin/apply.c:2909
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr "上下文减少到(%ld/%ld)以在第 %d 行应用补丁片段"
 
-#: builtin/apply.c:2890
+#: builtin/apply.c:2915
 #, c-format
 msgid ""
 "while searching for:\n"
@@ -2283,317 +2287,336 @@ msgstr ""
 "当查询:\n"
 "%.*s"
 
-#: builtin/apply.c:2909
+#: builtin/apply.c:2935
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "缺失 '%s' 的二进制补丁数据"
 
-#: builtin/apply.c:3010
+#: builtin/apply.c:3036
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "二进制补丁未应用到 '%s'"
 
-#: builtin/apply.c:3016
+#: builtin/apply.c:3042
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr "到 '%s' 的二进制补丁产生了不正确的结果(应为 %s,却为 %s)"
 
-#: builtin/apply.c:3037
+#: builtin/apply.c:3063
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "打补丁失败:%s:%ld"
 
-#: builtin/apply.c:3161
+#: builtin/apply.c:3187
 #, c-format
 msgid "cannot checkout %s"
 msgstr "不能检出 %s"
 
-#: builtin/apply.c:3206 builtin/apply.c:3215 builtin/apply.c:3260
+#: builtin/apply.c:3232 builtin/apply.c:3243 builtin/apply.c:3288
 #, c-format
 msgid "read of %s failed"
 msgstr "读取 %s 失败"
 
-#: builtin/apply.c:3240 builtin/apply.c:3462
+#: builtin/apply.c:3240
+#, c-format
+msgid "reading from '%s' beyond a symbolic link"
+msgstr "读取位于符号链接中的 '%s'"
+
+#: builtin/apply.c:3268 builtin/apply.c:3490
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "路径 %s 已经被重命名/删除"
 
-#: builtin/apply.c:3321 builtin/apply.c:3476
+#: builtin/apply.c:3349 builtin/apply.c:3504
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s:不存在于索引中"
 
-#: builtin/apply.c:3325 builtin/apply.c:3468 builtin/apply.c:3490
+#: builtin/apply.c:3353 builtin/apply.c:3496 builtin/apply.c:3518
 #, c-format
 msgid "%s: %s"
 msgstr "%s:%s"
 
-#: builtin/apply.c:3330 builtin/apply.c:3484
+#: builtin/apply.c:3358 builtin/apply.c:3512
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s:和索引不匹配"
 
-#: builtin/apply.c:3432
+#: builtin/apply.c:3460
 msgid "removal patch leaves file contents"
 msgstr "移除补丁仍留下了文件内容"
 
-#: builtin/apply.c:3501
+#: builtin/apply.c:3529
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s:错误类型"
 
-#: builtin/apply.c:3503
+#: builtin/apply.c:3531
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s 的类型是 %o,应为 %o"
 
-#: builtin/apply.c:3604
+#: builtin/apply.c:3690 builtin/apply.c:3692
+#, c-format
+msgid "invalid path '%s'"
+msgstr "无效路径 '%s'"
+
+#: builtin/apply.c:3747
 #, c-format
 msgid "%s: already exists in index"
 msgstr "%s:已经存在于索引中"
 
-#: builtin/apply.c:3607
+#: builtin/apply.c:3750
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s:已经存在于工作区中"
 
-#: builtin/apply.c:3627
+#: builtin/apply.c:3770
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o)"
 msgstr "%2$s 的新模式(%1$o)和旧模式(%3$o)不匹配"
 
-#: builtin/apply.c:3632
+#: builtin/apply.c:3775
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o) of %s"
 msgstr "%2$s 的新模式(%1$o)和 %4$s 的旧模式(%3$o)不匹配"
 
-#: builtin/apply.c:3640
+#: builtin/apply.c:3795
+#, c-format
+msgid "affected file '%s' is beyond a symbolic link"
+msgstr "受影响的文件 '%s' 位于符号链接中"
+
+#: builtin/apply.c:3799
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s:补丁未应用"
 
-#: builtin/apply.c:3653
+#: builtin/apply.c:3813
 #, c-format
 msgid "Checking patch %s..."
 msgstr "检查补丁 %s..."
 
-#: builtin/apply.c:3746 builtin/checkout.c:213 builtin/reset.c:135
+#: builtin/apply.c:3906 builtin/checkout.c:231 builtin/reset.c:135
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "对路径 '%s' 的 make_cache_entry 操作失败"
 
-#: builtin/apply.c:3889
+#: builtin/apply.c:4049
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "不能从索引中移除 %s"
 
-#: builtin/apply.c:3918
+#: builtin/apply.c:4078
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "子模组 %s 损坏的补丁"
 
-#: builtin/apply.c:3922
+#: builtin/apply.c:4082
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "不能枚举新建文件 '%s' 的状态"
 
-#: builtin/apply.c:3927
+#: builtin/apply.c:4087
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr "不能为新建文件 %s 创建后端存储"
 
-#: builtin/apply.c:3930 builtin/apply.c:4038
+#: builtin/apply.c:4090 builtin/apply.c:4198
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "无法为 %s 添加缓存条目"
 
-#: builtin/apply.c:3963
+#: builtin/apply.c:4123
 #, c-format
 msgid "closing file '%s'"
 msgstr "关闭文件 '%s'"
 
-#: builtin/apply.c:4012
+#: builtin/apply.c:4172
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr "不能写文件 '%s' 权限 %o"
 
-#: builtin/apply.c:4099
+#: builtin/apply.c:4259
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "成功应用补丁 %s。"
 
-#: builtin/apply.c:4107
+#: builtin/apply.c:4267
 msgid "internal error"
 msgstr "内部错误"
 
-#: builtin/apply.c:4110
+#: builtin/apply.c:4270
 #, c-format
 msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] "应用 %%s 个补丁,其中 %d 个被拒绝..."
 msgstr[1] "应用 %%s 个补丁,其中 %d 个被拒绝..."
 
-#: builtin/apply.c:4120
+#: builtin/apply.c:4280
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "截短 .rej 文件名为 %.*s.rej"
 
-#: builtin/apply.c:4141
+#: builtin/apply.c:4301
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "第 #%d 个片段成功应用。"
 
-#: builtin/apply.c:4144
+#: builtin/apply.c:4304
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "拒绝第 #%d 个片段。"
 
-#: builtin/apply.c:4234
+#: builtin/apply.c:4394
 msgid "unrecognized input"
 msgstr "未能识别的输入"
 
-#: builtin/apply.c:4245
+#: builtin/apply.c:4405
 msgid "unable to read index file"
 msgstr "无法读取索引文件"
 
-#: builtin/apply.c:4362 builtin/apply.c:4365 builtin/clone.c:91
-#: builtin/fetch.c:93
+#: builtin/apply.c:4522 builtin/apply.c:4525 builtin/clone.c:92
+#: builtin/fetch.c:92
 msgid "path"
 msgstr "路径"
 
-#: builtin/apply.c:4363
+#: builtin/apply.c:4523
 msgid "don't apply changes matching the given path"
 msgstr "不要应用与给出路径向匹配的变更"
 
-#: builtin/apply.c:4366
+#: builtin/apply.c:4526
 msgid "apply changes matching the given path"
 msgstr "应用与给出路径向匹配的变更"
 
-#: builtin/apply.c:4368
+#: builtin/apply.c:4528
 msgid "num"
 msgstr "数字"
 
-#: builtin/apply.c:4369
+#: builtin/apply.c:4529
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "从传统的 diff 路径中移除指定数量的前导斜线"
 
-#: builtin/apply.c:4372
+#: builtin/apply.c:4532
 msgid "ignore additions made by the patch"
 msgstr "忽略补丁中的添加的文件"
 
-#: builtin/apply.c:4374
+#: builtin/apply.c:4534
 msgid "instead of applying the patch, output diffstat for the input"
 msgstr "不应用补丁,而是显示输入的差异统计(diffstat)"
 
-#: builtin/apply.c:4378
+#: builtin/apply.c:4538
 msgid "show number of added and deleted lines in decimal notation"
 msgstr "以十进制数显示添加和删除的行数"
 
-#: builtin/apply.c:4380
+#: builtin/apply.c:4540
 msgid "instead of applying the patch, output a summary for the input"
 msgstr "不应用补丁,而是显示输入的概要"
 
-#: builtin/apply.c:4382
+#: builtin/apply.c:4542
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr "不应用补丁,而是查看补丁是否可应用"
 
-#: builtin/apply.c:4384
+#: builtin/apply.c:4544
 msgid "make sure the patch is applicable to the current index"
 msgstr "确认补丁可以应用到当前索引"
 
-#: builtin/apply.c:4386
+#: builtin/apply.c:4546
 msgid "apply a patch without touching the working tree"
 msgstr "应用补丁而不修改工作区"
 
-#: builtin/apply.c:4388
+#: builtin/apply.c:4548
+msgid "accept a patch that touches outside the working area"
+msgstr "接受修改工作区之外文件的补丁"
+
+#: builtin/apply.c:4550
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "还应用此补丁(与 --stat/--summary/--check 选项同时使用)"
 
-#: builtin/apply.c:4390
+#: builtin/apply.c:4552
 msgid "attempt three-way merge if a patch does not apply"
 msgstr "如果一个补丁不能应用则尝试三路合并"
 
-#: builtin/apply.c:4392
+#: builtin/apply.c:4554
 msgid "build a temporary index based on embedded index information"
 msgstr "创建一个临时索引基于嵌入的索引信息"
 
-#: builtin/apply.c:4394 builtin/checkout-index.c:198 builtin/ls-files.c:455
+#: builtin/apply.c:4556 builtin/checkout-index.c:198 builtin/ls-files.c:412
 msgid "paths are separated with NUL character"
 msgstr "路径以 NUL 字符分隔"
 
-#: builtin/apply.c:4397
+#: builtin/apply.c:4559
 msgid "ensure at least <n> lines of context match"
 msgstr "确保至少匹配 <n> 行上下文"
 
-#: builtin/apply.c:4398
+#: builtin/apply.c:4560
 msgid "action"
 msgstr "动作"
 
-#: builtin/apply.c:4399
+#: builtin/apply.c:4561
 msgid "detect new or modified lines that have whitespace errors"
 msgstr "检查新增和修改的行中间的空白字符滥用"
 
-#: builtin/apply.c:4402 builtin/apply.c:4405
+#: builtin/apply.c:4564 builtin/apply.c:4567
 msgid "ignore changes in whitespace when finding context"
 msgstr "查找上下文时忽略空白字符的变更"
 
-#: builtin/apply.c:4408
+#: builtin/apply.c:4570
 msgid "apply the patch in reverse"
 msgstr "反向应用补丁"
 
-#: builtin/apply.c:4410
+#: builtin/apply.c:4572
 msgid "don't expect at least one line of context"
 msgstr "无需至少一行上下文"
 
-#: builtin/apply.c:4412
+#: builtin/apply.c:4574
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "将拒绝的补丁片段保存在对应的 *.rej 文件中"
 
-#: builtin/apply.c:4414
+#: builtin/apply.c:4576
 msgid "allow overlapping hunks"
 msgstr "允许重叠的补丁片段"
 
-#: builtin/apply.c:4417
+#: builtin/apply.c:4579
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr "允许不正确的文件末尾换行符"
 
-#: builtin/apply.c:4420
+#: builtin/apply.c:4582
 msgid "do not trust the line counts in the hunk headers"
 msgstr "不信任补丁片段的头信息中的行号"
 
-#: builtin/apply.c:4422
+#: builtin/apply.c:4584
 msgid "root"
 msgstr "根目录"
 
-#: builtin/apply.c:4423
+#: builtin/apply.c:4585
 msgid "prepend <root> to all filenames"
 msgstr "为所有文件名前添加 <根目录>"
 
-#: builtin/apply.c:4445
+#: builtin/apply.c:4607
 msgid "--3way outside a repository"
 msgstr "--3way 在一个版本库之外"
 
-#: builtin/apply.c:4453
+#: builtin/apply.c:4615
 msgid "--index outside a repository"
 msgstr "--index 在一个版本库之外"
 
-#: builtin/apply.c:4456
+#: builtin/apply.c:4618
 msgid "--cached outside a repository"
 msgstr "--cached 在一个版本库之外"
 
-#: builtin/apply.c:4472
+#: builtin/apply.c:4637
 #, c-format
 msgid "can't open patch '%s'"
 msgstr "不能打开补丁 '%s'"
 
-#: builtin/apply.c:4486
+#: builtin/apply.c:4651
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "抑制下仍有 %d 个空白字符误用"
 msgstr[1] "抑制下仍有 %d 个空白字符误用"
 
-#: builtin/apply.c:4492 builtin/apply.c:4502
+#: builtin/apply.c:4657 builtin/apply.c:4667
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
@@ -2648,102 +2671,102 @@ msgid "update BISECT_HEAD instead of checking out the current commit"
 msgstr "更新 BISECT_HEAD 而非检出当前提交"
 
 #: builtin/blame.c:30
-msgid "git blame [options] [rev-opts] [rev] [--] file"
-msgstr "git blame [选项] [版本选项] [版本] [--] 文件"
+msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] file"
+msgstr "git blame [<选项>] [<版本选项>] [<版本>] [--] 文件"
 
 #: builtin/blame.c:35
-msgid "[rev-opts] are documented in git-rev-list(1)"
-msgstr "[版本选项] 的文档记录在 git-rev-list(1) 中"
+msgid "<rev-opts> are documented in git-rev-list(1)"
+msgstr "<版本选项> 的文档记录在 git-rev-list(1) 中"
 
-#: builtin/blame.c:2501
+#: builtin/blame.c:2500
 msgid "Show blame entries as we find them, incrementally"
 msgstr "增量式地显示发现的 blame 条目"
 
-#: builtin/blame.c:2502
+#: builtin/blame.c:2501
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
 msgstr "边界提交显示空的 SHA-1(默认:关闭)"
 
-#: builtin/blame.c:2503
+#: builtin/blame.c:2502
 msgid "Do not treat root commits as boundaries (Default: off)"
 msgstr "不把根提交作为边界(默认:关闭)"
 
-#: builtin/blame.c:2504
+#: builtin/blame.c:2503
 msgid "Show work cost statistics"
 msgstr "显示命令消耗统计"
 
-#: builtin/blame.c:2505
+#: builtin/blame.c:2504
 msgid "Show output score for blame entries"
 msgstr "显示判断 blame 条目位移的得分诊断信息"
 
-#: builtin/blame.c:2506
+#: builtin/blame.c:2505
 msgid "Show original filename (Default: auto)"
 msgstr "显示原始文件名(默认:自动)"
 
-#: builtin/blame.c:2507
+#: builtin/blame.c:2506
 msgid "Show original linenumber (Default: off)"
 msgstr "显示原始的行号(默认:关闭)"
 
-#: builtin/blame.c:2508
+#: builtin/blame.c:2507
 msgid "Show in a format designed for machine consumption"
 msgstr "显示为一个适合机器读取的格式"
 
-#: builtin/blame.c:2509
+#: builtin/blame.c:2508
 msgid "Show porcelain format with per-line commit information"
 msgstr "为每一行显示机器适用的提交信息"
 
-#: builtin/blame.c:2510
+#: builtin/blame.c:2509
 msgid "Use the same output mode as git-annotate (Default: off)"
 msgstr "使用和 git-annotate 相同的输出模式(默认:关闭)"
 
-#: builtin/blame.c:2511
+#: builtin/blame.c:2510
 msgid "Show raw timestamp (Default: off)"
 msgstr "显示原始时间戳(默认:关闭)"
 
-#: builtin/blame.c:2512
+#: builtin/blame.c:2511
 msgid "Show long commit SHA1 (Default: off)"
 msgstr "显示长的SHA1提交号(默认:关闭)"
 
-#: builtin/blame.c:2513
+#: builtin/blame.c:2512
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr "隐藏作者名字和时间戳(默认:关闭)"
 
-#: builtin/blame.c:2514
+#: builtin/blame.c:2513
 msgid "Show author email instead of name (Default: off)"
 msgstr "显示作者的邮箱而不是名字(默认:关闭)"
 
-#: builtin/blame.c:2515
+#: builtin/blame.c:2514
 msgid "Ignore whitespace differences"
 msgstr "忽略空白差异"
 
-#: builtin/blame.c:2516
+#: builtin/blame.c:2515
 msgid "Spend extra cycles to find better match"
 msgstr "花费额外的循环来找到更好的匹配"
 
-#: builtin/blame.c:2517
+#: builtin/blame.c:2516
 msgid "Use revisions from <file> instead of calling git-rev-list"
-msgstr "使用来自 <file> 的修订集而不是调用 git-rev-list"
+msgstr "使用来自 <文件> 的修订集而不是调用 git-rev-list"
 
-#: builtin/blame.c:2518
+#: builtin/blame.c:2517
 msgid "Use <file>'s contents as the final image"
-msgstr "使用 <file> 的内容作为最终的图片"
+msgstr "使用 <文件> 的内容作为最终的图片"
 
-#: builtin/blame.c:2519 builtin/blame.c:2520
+#: builtin/blame.c:2518 builtin/blame.c:2519
 msgid "score"
 msgstr "得分"
 
-#: builtin/blame.c:2519
+#: builtin/blame.c:2518
 msgid "Find line copies within and across files"
 msgstr "找到文件内及跨文件的行拷贝"
 
-#: builtin/blame.c:2520
+#: builtin/blame.c:2519
 msgid "Find line movements within and across files"
 msgstr "找到文件内及跨文件的行移动"
 
-#: builtin/blame.c:2521
+#: builtin/blame.c:2520
 msgid "n,m"
 msgstr "n,m"
 
-#: builtin/blame.c:2521
+#: builtin/blame.c:2520
 msgid "Process only line range n,m, counting from 1"
 msgstr "只处理行范围在 n 和 m 之间的,从 1 开始"
 
@@ -2753,25 +2776,25 @@ msgstr "只处理行范围在 n 和 m 之间的,从 1 开始"
 #. takes 22 places, is the longest among various forms of
 #. relative timestamps, but your language may need more or
 #. fewer display columns.
-#: builtin/blame.c:2602
+#: builtin/blame.c:2601
 msgid "4 years, 11 months ago"
 msgstr "4 年 11 个月前"
 
 #: builtin/branch.c:24
-msgid "git branch [options] [-r | -a] [--merged | --no-merged]"
-msgstr "git branch [选项] [-r | -a] [--merged | --no-merged]"
+msgid "git branch [<options>] [-r | -a] [--merged | --no-merged]"
+msgstr "git branch [<选项>] [-r | -a] [--merged | --no-merged]"
 
 #: builtin/branch.c:25
-msgid "git branch [options] [-l] [-f] <branchname> [<start-point>]"
-msgstr "git branch [选项] [-l] [-f] <分支名> [<起始点>]"
+msgid "git branch [<options>] [-l] [-f] <branch-name> [<start-point>]"
+msgstr "git branch [<选项>] [-l] [-f] <分支名> [<起始点>]"
 
 #: builtin/branch.c:26
-msgid "git branch [options] [-r] (-d | -D) <branchname>..."
-msgstr "git branch [选项] [-r] (-d | -D) <分支名>..."
+msgid "git branch [<options>] [-r] (-d | -D) <branch-name>..."
+msgstr "git branch [<选项>] [-r] (-d | -D) <分支名>..."
 
 #: builtin/branch.c:27
-msgid "git branch [options] (-m | -M) [<oldbranch>] <newbranch>"
-msgstr "git branch [选项] (-m | -M) [<旧分支>] <新分支>"
+msgid "git branch [<options>] (-m | -M) [<old-branch>] <new-branch>"
+msgstr "git branch [<选项>] (-m | -M) [<旧分支>] <新分支>"
 
 #  译者:保持原换行格式,在输出时 %s 的替代内容会让字符串变长
 #: builtin/branch.c:152
@@ -2913,232 +2936,237 @@ msgstr "(非分支,正变基 %s)"
 msgid "(no branch, bisect started on %s)"
 msgstr "(非分支,二分查找开始于 %s)"
 
-#: builtin/branch.c:593
+#: builtin/branch.c:596
 #, c-format
-msgid "(detached from %s)"
-msgstr "ï¼\88å\88\86离è\87ª %s)"
+msgid "(HEAD detached at %s)"
+msgstr "ï¼\88头æ\8c\87é\92\88å\88\86离äº\8e %s)"
 
-#: builtin/branch.c:596
+#: builtin/branch.c:599
+#, c-format
+msgid "(HEAD detached from %s)"
+msgstr "(头指针分离自 %s)"
+
+#: builtin/branch.c:603
 msgid "(no branch)"
 msgstr "(非分支)"
 
-#: builtin/branch.c:643
+#: builtin/branch.c:650
 #, c-format
 msgid "object '%s' does not point to a commit"
 msgstr "对象 '%s' 没有指向一个提交"
 
-#: builtin/branch.c:691
+#: builtin/branch.c:698
 msgid "some refs could not be read"
 msgstr "一些引用不能读取"
 
-#: builtin/branch.c:704
+#: builtin/branch.c:711
 msgid "cannot rename the current branch while not on any."
 msgstr "无法重命名当前分支因为不处于任何分支上。"
 
-#: builtin/branch.c:714
+#: builtin/branch.c:721
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "无效的分支名:'%s'"
 
-#: builtin/branch.c:729
+#: builtin/branch.c:736
 msgid "Branch rename failed"
 msgstr "分支重命名失败"
 
-#: builtin/branch.c:733
+#: builtin/branch.c:740
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "重命名掉一个错误命名的旧分支 '%s'"
 
-#: builtin/branch.c:737
+#: builtin/branch.c:744
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr "分支重命名为 %s,但 HEAD 没有更新!"
 
-#: builtin/branch.c:744
+#: builtin/branch.c:751
 msgid "Branch is renamed, but update of config-file failed"
 msgstr "分支被重命名,但更新 config 文件失败"
 
-#: builtin/branch.c:759
+#: builtin/branch.c:766
 #, c-format
 msgid "malformed object name %s"
 msgstr "非法的对象名 %s"
 
-#: builtin/branch.c:783
+#: builtin/branch.c:790
 #, c-format
 msgid "could not write branch description template: %s"
 msgstr "不能写分支描述模版:%s"
 
-#: builtin/branch.c:813
+#: builtin/branch.c:820
 msgid "Generic options"
 msgstr "通用选项"
 
-#: builtin/branch.c:815
+#: builtin/branch.c:822
 msgid "show hash and subject, give twice for upstream branch"
 msgstr "显示哈希值和主题,若参数出现两次则显示上游分支"
 
-#: builtin/branch.c:816
+#: builtin/branch.c:823
 msgid "suppress informational messages"
 msgstr "不显示信息"
 
-#: builtin/branch.c:817
+#: builtin/branch.c:824
 msgid "set up tracking mode (see git-pull(1))"
 msgstr "设置跟踪模式(参见 git-pull(1))"
 
-#: builtin/branch.c:819
+#: builtin/branch.c:826
 msgid "change upstream info"
 msgstr "改变上游信息"
 
-#: builtin/branch.c:823
+#: builtin/branch.c:830
 msgid "use colored output"
 msgstr "使用彩色输出"
 
-#: builtin/branch.c:824
+#: builtin/branch.c:831
 msgid "act on remote-tracking branches"
 msgstr "作用于远程跟踪分支"
 
-#: builtin/branch.c:827 builtin/branch.c:833 builtin/branch.c:854
-#: builtin/branch.c:860 builtin/commit.c:1622 builtin/commit.c:1623
-#: builtin/commit.c:1624 builtin/commit.c:1625 builtin/tag.c:616
+#: builtin/branch.c:834 builtin/branch.c:840 builtin/branch.c:861
+#: builtin/branch.c:867 builtin/commit.c:1582 builtin/commit.c:1583
+#: builtin/commit.c:1584 builtin/commit.c:1585 builtin/tag.c:616
 #: builtin/tag.c:622
 msgid "commit"
 msgstr "提交"
 
-#: builtin/branch.c:828 builtin/branch.c:834
+#: builtin/branch.c:835 builtin/branch.c:841
 msgid "print only branches that contain the commit"
 msgstr "只打印包含该提交的分支"
 
-#: builtin/branch.c:840
+#: builtin/branch.c:847
 msgid "Specific git-branch actions:"
 msgstr "具体的 git-branch 动作:"
 
-#: builtin/branch.c:841
+#: builtin/branch.c:848
 msgid "list both remote-tracking and local branches"
 msgstr "列出远程跟踪及本地分支"
 
-#: builtin/branch.c:843
+#: builtin/branch.c:850
 msgid "delete fully merged branch"
 msgstr "删除完全合并的分支"
 
-#: builtin/branch.c:844
+#: builtin/branch.c:851
 msgid "delete branch (even if not merged)"
 msgstr "删除分支(即使没有合并)"
 
-#: builtin/branch.c:845
+#: builtin/branch.c:852
 msgid "move/rename a branch and its reflog"
 msgstr "移动/重命名一个分支,以及它的引用日志"
 
-#: builtin/branch.c:846
+#: builtin/branch.c:853
 msgid "move/rename a branch, even if target exists"
 msgstr "移动/重命名一个分支,即使目标已存在"
 
-#: builtin/branch.c:847
+#: builtin/branch.c:854
 msgid "list branch names"
 msgstr "列出分支名"
 
-#: builtin/branch.c:848
+#: builtin/branch.c:855
 msgid "create the branch's reflog"
 msgstr "创建分支的引用日志"
 
-#: builtin/branch.c:850
+#: builtin/branch.c:857
 msgid "edit the description for the branch"
 msgstr "标记分支的描述"
 
-#: builtin/branch.c:851
-msgid "force creation (when already exists)"
-msgstr "强制创建(当已经存在)"
+#: builtin/branch.c:858
+msgid "force creation, move/rename, deletion"
+msgstr "强制创建、移动/重命名、删除"
 
-#: builtin/branch.c:854
+#: builtin/branch.c:861
 msgid "print only not merged branches"
 msgstr "只打印没有合并的分支"
 
-#: builtin/branch.c:860
+#: builtin/branch.c:867
 msgid "print only merged branches"
 msgstr "只打印合并的分支"
 
-#: builtin/branch.c:864
+#: builtin/branch.c:871
 msgid "list branches in columns"
 msgstr "以列的方式显示分支"
 
-#: builtin/branch.c:877
+#: builtin/branch.c:884
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "无法将 HEAD 解析为有效引用。"
 
-#: builtin/branch.c:881 builtin/clone.c:634
+#: builtin/branch.c:888 builtin/clone.c:637
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD 没有位于 /refs/heads 之下!"
 
-#: builtin/branch.c:903
+#: builtin/branch.c:910
 msgid "--column and --verbose are incompatible"
 msgstr "--column 和 --verbose 不兼容"
 
-#: builtin/branch.c:909 builtin/branch.c:948
+#: builtin/branch.c:921 builtin/branch.c:960
 msgid "branch name required"
 msgstr "必须提供分支名"
 
-#: builtin/branch.c:924
+#: builtin/branch.c:936
 msgid "Cannot give description to detached HEAD"
 msgstr "不能向分离头指针提供描述"
 
-#: builtin/branch.c:929
+#: builtin/branch.c:941
 msgid "cannot edit description of more than one branch"
 msgstr "不能为一个以上的分支编辑描述"
 
-#: builtin/branch.c:936
+#: builtin/branch.c:948
 #, c-format
 msgid "No commit on branch '%s' yet."
 msgstr "分支 '%s' 尚无提交。"
 
-#: builtin/branch.c:939
+#: builtin/branch.c:951
 #, c-format
 msgid "No branch named '%s'."
 msgstr "没有分支 '%s'。"
 
-#: builtin/branch.c:954
+#: builtin/branch.c:966
 msgid "too many branches for a rename operation"
 msgstr "为重命名操作提供了太多的分支名"
 
-#: builtin/branch.c:959
+#: builtin/branch.c:971
 msgid "too many branches to set new upstream"
 msgstr "为设置新上游提供了太多的分支名"
 
-#: builtin/branch.c:963
+#: builtin/branch.c:975
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
 msgstr "无法设置 HEAD 的上游为 %s,因为 HEAD 没有指向任何分支。"
 
-#: builtin/branch.c:966 builtin/branch.c:988 builtin/branch.c:1009
+#: builtin/branch.c:978 builtin/branch.c:1000 builtin/branch.c:1021
 #, c-format
 msgid "no such branch '%s'"
 msgstr "没有此分支 '%s'"
 
-#: builtin/branch.c:970
+#: builtin/branch.c:982
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr "分支 '%s' 不存在"
 
-#: builtin/branch.c:982
+#: builtin/branch.c:994
 msgid "too many branches to unset upstream"
 msgstr "为取消上游设置操作提供了太多的分支名"
 
-#: builtin/branch.c:986
+#: builtin/branch.c:998
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr "无法取消 HEAD 的上游设置因为它没有指向一个分支"
 
-#: builtin/branch.c:992
+#: builtin/branch.c:1004
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr "分支 '%s' 没有上游信息"
 
-#: builtin/branch.c:1006
+#: builtin/branch.c:1018
 msgid "it does not make sense to create 'HEAD' manually"
 msgstr "手工创建 'HEAD' 没有意义"
 
-#: builtin/branch.c:1012
+#: builtin/branch.c:1024
 msgid "-a and -r options to 'git branch' do not make sense with a branch name"
 msgstr "'git branch' 的 -a 和 -r 选项带一个分支名参数没有意义"
 
-#: builtin/branch.c:1015
+#: builtin/branch.c:1027
 #, c-format
 msgid ""
 "The --set-upstream flag is deprecated and will be removed. Consider using --"
@@ -3146,7 +3174,7 @@ msgid ""
 msgstr ""
 "选项 --set-upstream 已弃用并将被移除。考虑使用 --track 或 --set-upstream-to\n"
 
-#: builtin/branch.c:1032
+#: builtin/branch.c:1044
 #, c-format
 msgid ""
 "\n"
@@ -3157,12 +3185,12 @@ msgstr ""
 "如果你想用 '%s' 跟踪 '%s', 这么做:\n"
 "\n"
 
-#: builtin/branch.c:1033
+#: builtin/branch.c:1045
 #, c-format
 msgid "    git branch -d %s\n"
 msgstr "    git branch -d %s\n"
 
-#: builtin/branch.c:1034
+#: builtin/branch.c:1046
 #, c-format
 msgid "    git branch --set-upstream-to %s\n"
 msgstr "    git branch --set-upstream-to %s\n"
@@ -3180,53 +3208,53 @@ msgstr "需要一个版本库来创建包。"
 msgid "Need a repository to unbundle."
 msgstr "需要一个版本库来解包。"
 
-#: builtin/cat-file.c:332
-msgid "git cat-file (-t|-s|-e|-p|<type>|--textconv) <object>"
-msgstr "git cat-file (-t|-s|-e|-p|<类型>|--textconv) <对象>"
+#: builtin/cat-file.c:326
+msgid "git cat-file (-t | -s | -e | -p | <type> | --textconv) <object>"
+msgstr "git cat-file (-t | -s | -e | -p | <类型> | --textconv) <对象>"
 
-#: builtin/cat-file.c:333
-msgid "git cat-file (--batch|--batch-check) < <list_of_objects>"
-msgstr "git cat-file (--batch|--batch-check) < <对象列表>"
+#: builtin/cat-file.c:327
+msgid "git cat-file (--batch | --batch-check) < <list-of-objects>"
+msgstr "git cat-file (--batch | --batch-check) < <对象列表>"
 
-#: builtin/cat-file.c:370
+#: builtin/cat-file.c:364
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr "<类型> 可以是其中之一:blob、tree、commit、tag"
 
-#: builtin/cat-file.c:371
+#: builtin/cat-file.c:365
 msgid "show object type"
 msgstr "显示对象类型"
 
-#: builtin/cat-file.c:372
+#: builtin/cat-file.c:366
 msgid "show object size"
 msgstr "显示对象大小"
 
-#: builtin/cat-file.c:374
+#: builtin/cat-file.c:368
 msgid "exit with zero when there's no error"
 msgstr "当没有错误时退出并返回零"
 
-#: builtin/cat-file.c:375
+#: builtin/cat-file.c:369
 msgid "pretty-print object's content"
 msgstr "美观地打印对象的内容"
 
-#: builtin/cat-file.c:377
+#: builtin/cat-file.c:371
 msgid "for blob objects, run textconv on object's content"
 msgstr "对于数据(blob)对象,对其内容执行 textconv"
 
-#: builtin/cat-file.c:379
+#: builtin/cat-file.c:373
 msgid "show info and content of objects fed from the standard input"
 msgstr "显示从标准输入提供的对象的信息和内容"
 
-#: builtin/cat-file.c:382
+#: builtin/cat-file.c:376
 msgid "show info about objects fed from the standard input"
 msgstr "显示从标准输入提供的对象的信息"
 
 #: builtin/check-attr.c:11
-msgid "git check-attr [-a | --all | attr...] [--] pathname..."
-msgstr "git check-attr [-a | --all | attr...] [--] 路径名..."
+msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
+msgstr "git check-attr [-a | --all | <属性>...] [--] <路径名>..."
 
 #: builtin/check-attr.c:12
-msgid "git check-attr --stdin [-z] [-a | --all | attr...] < <list-of-paths>"
-msgstr "git check-attr --stdin [-z] [-a | --all | attr...] < <路径列表>"
+msgid "git check-attr --stdin [-z] [-a | --all | <attr>...] < <list-of-paths>"
+msgstr "git check-attr --stdin [-z] [-a | --all | <属性>...] < <路径列表>"
 
 #: builtin/check-attr.c:19
 msgid "report all attributes set on file"
@@ -3244,7 +3272,7 @@ msgstr "从标准输入读出文件名"
 msgid "terminate input and output records by a NUL character"
 msgstr "输入和输出的记录使用 NUL 字符终结"
 
-#: builtin/check-ignore.c:18 builtin/checkout.c:1089 builtin/gc.c:274
+#: builtin/check-ignore.c:18 builtin/checkout.c:1107 builtin/gc.c:274
 msgid "suppress progress reporting"
 msgstr "不显示进度报告"
 
@@ -3281,8 +3309,8 @@ msgid "--non-matching is only valid with --verbose"
 msgstr "--non-matching 选项只在使用 --verbose 时有效"
 
 #: builtin/check-mailmap.c:8
-msgid "git check-mailmap [options] <contact>..."
-msgstr "git check-mailmap [选项] <联系地址>..."
+msgid "git check-mailmap [<options>] <contact>..."
+msgstr "git check-mailmap [<选项>] <联系地址>..."
 
 #: builtin/check-mailmap.c:13
 msgid "also read contacts from stdin"
@@ -3298,8 +3326,8 @@ msgid "no contacts specified"
 msgstr "未指定联系地址"
 
 #: builtin/checkout-index.c:126
-msgid "git checkout-index [options] [--] [<file>...]"
-msgstr "git checkout-index [选项] [--] [<文件>...]"
+msgid "git checkout-index [<options>] [--] [<file>...]"
+msgstr "git checkout-index [<选项>] [--] [<文件>...]"
 
 #: builtin/checkout-index.c:188
 msgid "check out all files in the index"
@@ -3342,113 +3370,113 @@ msgid "copy out the files from named stage"
 msgstr "从指定暂存区中拷出文件"
 
 #: builtin/checkout.c:25
-msgid "git checkout [options] <branch>"
-msgstr "git checkout [选项] <分支>"
+msgid "git checkout [<options>] <branch>"
+msgstr "git checkout [<选项>] <分支>"
 
 #: builtin/checkout.c:26
-msgid "git checkout [options] [<branch>] -- <file>..."
-msgstr "git checkout [选项] [<分支>] -- <文件>..."
+msgid "git checkout [<options>] [<branch>] -- <file>..."
+msgstr "git checkout [<选项>] [<分支>] -- <文件>..."
 
-#: builtin/checkout.c:114 builtin/checkout.c:147
+#: builtin/checkout.c:132 builtin/checkout.c:165
 #, c-format
 msgid "path '%s' does not have our version"
 msgstr "路径 '%s' 没有我们的版本"
 
-#: builtin/checkout.c:116 builtin/checkout.c:149
+#: builtin/checkout.c:134 builtin/checkout.c:167
 #, c-format
 msgid "path '%s' does not have their version"
 msgstr "路径 '%s' 没有他们的版本"
 
-#: builtin/checkout.c:132
+#: builtin/checkout.c:150
 #, c-format
 msgid "path '%s' does not have all necessary versions"
 msgstr "路径 '%s' 没有全部必须的版本"
 
-#: builtin/checkout.c:176
+#: builtin/checkout.c:194
 #, c-format
 msgid "path '%s' does not have necessary versions"
 msgstr "路径 '%s' 没有必须的版本"
 
-#: builtin/checkout.c:193
+#: builtin/checkout.c:211
 #, c-format
 msgid "path '%s': cannot merge"
 msgstr "path '%s':无法合并"
 
-#: builtin/checkout.c:210
+#: builtin/checkout.c:228
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr "无法为 '%s' 添加合并结果"
 
-#: builtin/checkout.c:231 builtin/checkout.c:234 builtin/checkout.c:237
-#: builtin/checkout.c:240
+#: builtin/checkout.c:249 builtin/checkout.c:252 builtin/checkout.c:255
+#: builtin/checkout.c:258
 #, c-format
 msgid "'%s' cannot be used with updating paths"
 msgstr "'%s' 不能在更新路径时使用"
 
-#: builtin/checkout.c:243 builtin/checkout.c:246
+#: builtin/checkout.c:261 builtin/checkout.c:264
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr "'%s' 不能和 %s 同时使用"
 
-#: builtin/checkout.c:249
+#: builtin/checkout.c:267
 #, c-format
 msgid "Cannot update paths and switch to branch '%s' at the same time."
 msgstr "不能同时更新路径并切换到分支'%s'。"
 
-#: builtin/checkout.c:260 builtin/checkout.c:449
+#: builtin/checkout.c:278 builtin/checkout.c:467
 msgid "corrupt index file"
 msgstr "损坏的索引文件"
 
-#: builtin/checkout.c:320 builtin/checkout.c:327
+#: builtin/checkout.c:338 builtin/checkout.c:345
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "路径 '%s' 未合并"
 
-#: builtin/checkout.c:471
+#: builtin/checkout.c:489
 msgid "you need to resolve your current index first"
 msgstr "您需要先解决当前索引的冲突"
 
-#: builtin/checkout.c:597
+#: builtin/checkout.c:615
 #, c-format
 msgid "Can not do reflog for '%s'\n"
 msgstr "不能对 '%s' 执行 reflog 操作\n"
 
-#: builtin/checkout.c:635
+#: builtin/checkout.c:653
 msgid "HEAD is now at"
 msgstr "HEAD 目前位于"
 
-#: builtin/checkout.c:642
+#: builtin/checkout.c:660
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "重置分支 '%s'\n"
 
-#: builtin/checkout.c:645
+#: builtin/checkout.c:663
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "已经位于 '%s'\n"
 
-#: builtin/checkout.c:649
+#: builtin/checkout.c:667
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "切换并重置分支 '%s'\n"
 
-#: builtin/checkout.c:651 builtin/checkout.c:1032
+#: builtin/checkout.c:669 builtin/checkout.c:1050
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "切换到一个新分支 '%s'\n"
 
-#: builtin/checkout.c:653
+#: builtin/checkout.c:671
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "切换到分支 '%s'\n"
 
 #  译者:注意保持前导空格
-#: builtin/checkout.c:705
+#: builtin/checkout.c:723
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " ... 及其它 %d 个。\n"
 
-#: builtin/checkout.c:711
+#: builtin/checkout.c:729
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -3469,154 +3497,154 @@ msgstr[1] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:729
+#: builtin/checkout.c:747
 #, c-format
 msgid ""
 "If you want to keep them by creating a new branch, this may be a good time\n"
 "to do so with:\n"
 "\n"
-" git branch new_branch_name %s\n"
+" git branch <new-branch-name> %s\n"
 "\n"
 msgstr ""
 "如果您想要通过创建新分支保存他们,这可能是一个好时候。\n"
 "如下操作:\n"
 "\n"
-" git branch new_branch_name %s\n"
+" git branch <新分支名> %s\n"
 "\n"
 
-#: builtin/checkout.c:759
+#: builtin/checkout.c:777
 msgid "internal error in revision walk"
 msgstr "在版本遍历时遇到内部错误"
 
-#: builtin/checkout.c:763
+#: builtin/checkout.c:781
 msgid "Previous HEAD position was"
 msgstr "之前的 HEAD 位置是"
 
-#: builtin/checkout.c:790 builtin/checkout.c:1027
+#: builtin/checkout.c:808 builtin/checkout.c:1045
 msgid "You are on a branch yet to be born"
 msgstr "您位于一个尚未初始化的分支"
 
-#: builtin/checkout.c:934
+#: builtin/checkout.c:952
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "只要一个引用,却给出了 %d 个"
 
-#: builtin/checkout.c:973
+#: builtin/checkout.c:991
 #, c-format
 msgid "invalid reference: %s"
 msgstr "无效引用:%s"
 
-#: builtin/checkout.c:1002
+#: builtin/checkout.c:1020
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "引用不是一个树:%s"
 
-#: builtin/checkout.c:1041
+#: builtin/checkout.c:1059
 msgid "paths cannot be used with switching branches"
 msgstr "路径不能和切换分支同时使用"
 
-#: builtin/checkout.c:1044 builtin/checkout.c:1048
+#: builtin/checkout.c:1062 builtin/checkout.c:1066
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr "'%s' 不能和切换分支同时使用"
 
-#: builtin/checkout.c:1052 builtin/checkout.c:1055 builtin/checkout.c:1060
-#: builtin/checkout.c:1063
+#: builtin/checkout.c:1070 builtin/checkout.c:1073 builtin/checkout.c:1078
+#: builtin/checkout.c:1081
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "'%s' 不能和 '%s' 同时使用"
 
-#: builtin/checkout.c:1068
+#: builtin/checkout.c:1086
 #, c-format
 msgid "Cannot switch branch to a non-commit '%s'"
 msgstr "不能切换分支到一个非提交 '%s'"
 
-#: builtin/checkout.c:1090 builtin/checkout.c:1092 builtin/clone.c:89
+#: builtin/checkout.c:1108 builtin/checkout.c:1110 builtin/clone.c:90
 #: builtin/remote.c:159 builtin/remote.c:161
 msgid "branch"
 msgstr "分支"
 
-#: builtin/checkout.c:1091
+#: builtin/checkout.c:1109
 msgid "create and checkout a new branch"
 msgstr "创建并检出一个新的分支"
 
-#: builtin/checkout.c:1093
+#: builtin/checkout.c:1111
 msgid "create/reset and checkout a branch"
 msgstr "创建/重置并检出一个分支"
 
-#: builtin/checkout.c:1094
+#: builtin/checkout.c:1112
 msgid "create reflog for new branch"
 msgstr "为新的分支创建引用日志"
 
-#: builtin/checkout.c:1095
+#: builtin/checkout.c:1113
 msgid "detach the HEAD at named commit"
 msgstr "成为指向该提交的分离头指针"
 
-#: builtin/checkout.c:1096
+#: builtin/checkout.c:1114
 msgid "set upstream info for new branch"
 msgstr "为新的分支设置上游信息"
 
-#: builtin/checkout.c:1098
+#: builtin/checkout.c:1116
 msgid "new-branch"
 msgstr "新分支"
 
-#: builtin/checkout.c:1098
+#: builtin/checkout.c:1116
 msgid "new unparented branch"
 msgstr "新的没有父提交的分支"
 
-#: builtin/checkout.c:1099
+#: builtin/checkout.c:1117
 msgid "checkout our version for unmerged files"
 msgstr "对尚未合并的文件检出我们的版本"
 
-#: builtin/checkout.c:1101
+#: builtin/checkout.c:1119
 msgid "checkout their version for unmerged files"
 msgstr "对尚未合并的文件检出他们的版本"
 
-#: builtin/checkout.c:1103
+#: builtin/checkout.c:1121
 msgid "force checkout (throw away local modifications)"
 msgstr "强制检出(丢弃本地修改)"
 
-#: builtin/checkout.c:1104
+#: builtin/checkout.c:1122
 msgid "perform a 3-way merge with the new branch"
 msgstr "和新的分支执行三路合并"
 
-#: builtin/checkout.c:1105 builtin/merge.c:226
+#: builtin/checkout.c:1123 builtin/merge.c:227
 msgid "update ignored files (default)"
 msgstr "更新忽略的文件(默认)"
 
-#: builtin/checkout.c:1106 builtin/log.c:1239 parse-options.h:245
+#: builtin/checkout.c:1124 builtin/log.c:1239 parse-options.h:245
 msgid "style"
 msgstr "风格"
 
-#: builtin/checkout.c:1107
+#: builtin/checkout.c:1125
 msgid "conflict style (merge or diff3)"
 msgstr "冲突输出风格(merge 或 diff3)"
 
-#: builtin/checkout.c:1110
+#: builtin/checkout.c:1128
 msgid "do not limit pathspecs to sparse entries only"
 msgstr "对路径不做稀疏检出的限制"
 
-#: builtin/checkout.c:1112
-msgid "second guess 'git checkout no-such-branch'"
-msgstr "再者猜测'git checkout no-such-branch'"
+#: builtin/checkout.c:1130
+msgid "second guess 'git checkout <no-such-branch>'"
+msgstr "二次猜测'git checkout <无此分支>'"
 
-#: builtin/checkout.c:1135
+#: builtin/checkout.c:1153
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr "-b、-B 和 --orphan 是互斥的"
 
-#: builtin/checkout.c:1152
+#: builtin/checkout.c:1170
 msgid "--track needs a branch name"
 msgstr "--track 需要一个分支名"
 
-#: builtin/checkout.c:1157
+#: builtin/checkout.c:1175
 msgid "Missing branch name; try -b"
 msgstr "缺少分支名;尝试 -b"
 
-#: builtin/checkout.c:1194
+#: builtin/checkout.c:1212
 msgid "invalid path specification"
 msgstr "无效的路径规格"
 
-#: builtin/checkout.c:1201
+#: builtin/checkout.c:1219
 #, c-format
 msgid ""
 "Cannot update paths and switch to branch '%s' at the same time.\n"
@@ -3625,12 +3653,12 @@ msgstr ""
 "不能同时更新路径并切换到分支'%s'。\n"
 "您是想要检出 '%s' 但其未能解析为提交么?"
 
-#: builtin/checkout.c:1206
+#: builtin/checkout.c:1224
 #, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
 msgstr "git checkout:--detach 不能接收路径参数 '%s'"
 
-#: builtin/checkout.c:1210
+#: builtin/checkout.c:1228
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -3719,16 +3747,17 @@ msgstr "警告:无法找到和 %s 匹配的条目"
 msgid "Select items to delete"
 msgstr "选择要删除的条目"
 
-#: builtin/clean.c:757
+#. TRANSLATORS: Make sure to keep [y/N] as is
+#: builtin/clean.c:758
 #, c-format
-msgid "remove %s? "
-msgstr "删除 %s?"
+msgid "Remove %s [y/N]? "
+msgstr "删除 %s [y/N]?"
 
-#: builtin/clean.c:782
+#: builtin/clean.c:783
 msgid "Bye."
 msgstr "再见。"
 
-#: builtin/clean.c:790
+#: builtin/clean.c:791
 msgid ""
 "clean               - start cleaning\n"
 "filter by pattern   - exclude items from deletion\n"
@@ -3746,69 +3775,69 @@ msgstr ""
 "help                - 显示本帮助\n"
 "?                   - 显示如何在提示符下选择的帮助"
 
-#: builtin/clean.c:817
+#: builtin/clean.c:818
 msgid "*** Commands ***"
 msgstr "*** 命令 ***"
 
-#: builtin/clean.c:818
+#: builtin/clean.c:819
 msgid "What now"
 msgstr "请选择"
 
-#: builtin/clean.c:826
+#: builtin/clean.c:827
 msgid "Would remove the following item:"
 msgid_plural "Would remove the following items:"
 msgstr[0] "将删除如下条目:"
 msgstr[1] "将删除如下条目:"
 
-#: builtin/clean.c:843
+#: builtin/clean.c:844
 msgid "No more files to clean, exiting."
 msgstr "没有要清理的文件,退出。"
 
-#: builtin/clean.c:874
+#: builtin/clean.c:875
 msgid "do not print names of files removed"
 msgstr "不打印删除文件的名称"
 
-#: builtin/clean.c:876
+#: builtin/clean.c:877
 msgid "force"
 msgstr "强制"
 
-#: builtin/clean.c:877
+#: builtin/clean.c:878
 msgid "interactive cleaning"
 msgstr "交互式清除"
 
-#: builtin/clean.c:879
+#: builtin/clean.c:880
 msgid "remove whole directories"
 msgstr "删除整个目录"
 
-#: builtin/clean.c:880 builtin/describe.c:407 builtin/grep.c:714
-#: builtin/ls-files.c:486 builtin/name-rev.c:311 builtin/show-ref.c:185
+#: builtin/clean.c:881 builtin/describe.c:407 builtin/grep.c:714
+#: builtin/ls-files.c:443 builtin/name-rev.c:311 builtin/show-ref.c:185
 msgid "pattern"
 msgstr "模式"
 
-#: builtin/clean.c:881
+#: builtin/clean.c:882
 msgid "add <pattern> to ignore rules"
 msgstr "添加<模式>到忽略规则"
 
-#: builtin/clean.c:882
+#: builtin/clean.c:883
 msgid "remove ignored files, too"
 msgstr "也删除忽略的文件"
 
-#: builtin/clean.c:884
+#: builtin/clean.c:885
 msgid "remove only ignored files"
 msgstr "只删除忽略的文件"
 
-#: builtin/clean.c:902
+#: builtin/clean.c:903
 msgid "-x and -X cannot be used together"
 msgstr "-x 和 -X 不能同时使用"
 
-#: builtin/clean.c:906
+#: builtin/clean.c:907
 msgid ""
 "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
 msgstr ""
 "clean.requireForce 设置为 true 且未提供 -i、-n 或 -f 选项,拒绝执行清理动作"
 
-#: builtin/clean.c:909
+#: builtin/clean.c:910
 msgid ""
 "clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
@@ -3816,149 +3845,153 @@ msgstr ""
 "clean.requireForce 默认为 true 且未提供 -i、-n 或 -f 选项,拒绝执行清理动作"
 
 #: builtin/clone.c:37
-msgid "git clone [options] [--] <repo> [<dir>]"
-msgstr "git clone [选项] [--] <版本库> [<路径>]"
+msgid "git clone [<options>] [--] <repo> [<dir>]"
+msgstr "git clone [<选项>] [--] <版本库> [<路径>]"
 
-#: builtin/clone.c:65 builtin/fetch.c:112 builtin/merge.c:223
-#: builtin/push.c:514
+#: builtin/clone.c:66 builtin/fetch.c:111 builtin/merge.c:224
+#: builtin/push.c:523
 msgid "force progress reporting"
 msgstr "强制显示进度报告"
 
-#: builtin/clone.c:67
+#: builtin/clone.c:68
 msgid "don't create a checkout"
 msgstr "不创建一个检出"
 
-#: builtin/clone.c:68 builtin/clone.c:70 builtin/init-db.c:488
+#: builtin/clone.c:69 builtin/clone.c:71 builtin/init-db.c:496
 msgid "create a bare repository"
 msgstr "创建一个纯版本库"
 
-#: builtin/clone.c:72
+#: builtin/clone.c:73
 msgid "create a mirror repository (implies bare)"
 msgstr "创建一个镜像版本库(也是纯版本库)"
 
-#: builtin/clone.c:74
+#: builtin/clone.c:75
 msgid "to clone from a local repository"
 msgstr "从本地版本库克隆"
 
-#: builtin/clone.c:76
+#: builtin/clone.c:77
 msgid "don't use local hardlinks, always copy"
 msgstr "不使用本地硬链接,始终复制"
 
-#: builtin/clone.c:78
+#: builtin/clone.c:79
 msgid "setup as shared repository"
 msgstr "设置为共享版本库"
 
-#: builtin/clone.c:80 builtin/clone.c:82
+#: builtin/clone.c:81 builtin/clone.c:83
 msgid "initialize submodules in the clone"
 msgstr "在克隆时初始化子模组"
 
-#: builtin/clone.c:83 builtin/init-db.c:485
+#: builtin/clone.c:84 builtin/init-db.c:493
 msgid "template-directory"
 msgstr "模板目录"
 
-#: builtin/clone.c:84 builtin/init-db.c:486
+#: builtin/clone.c:85 builtin/init-db.c:494
 msgid "directory from which templates will be used"
 msgstr "模板目录将被使用"
 
-#: builtin/clone.c:86
+#: builtin/clone.c:87
 msgid "reference repository"
 msgstr "参考版本库"
 
-#: builtin/clone.c:87 builtin/column.c:26 builtin/merge-file.c:44
+#: builtin/clone.c:88 builtin/column.c:26 builtin/merge-file.c:44
 msgid "name"
 msgstr "名称"
 
-#: builtin/clone.c:88
+#: builtin/clone.c:89
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr "使用<名称>而不是 'origin' 去跟踪上游"
 
-#: builtin/clone.c:90
+#: builtin/clone.c:91
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "检出<分支>而不是远程HEAD"
 
-#: builtin/clone.c:92
+#: builtin/clone.c:93
 msgid "path to git-upload-pack on the remote"
 msgstr "远程 git-upload-pack 路径"
 
-#: builtin/clone.c:93 builtin/fetch.c:113 builtin/grep.c:659
+#: builtin/clone.c:94 builtin/fetch.c:112 builtin/grep.c:659
 msgid "depth"
 msgstr "深度"
 
-#: builtin/clone.c:94
+#: builtin/clone.c:95
 msgid "create a shallow clone of that depth"
 msgstr "创建一个指定深度的浅克隆"
 
-#: builtin/clone.c:96
+#: builtin/clone.c:97
 msgid "clone only one branch, HEAD or --branch"
 msgstr "只克隆一个分支、HEAD 或 --branch"
 
-#: builtin/clone.c:97 builtin/init-db.c:494
+#: builtin/clone.c:99
+msgid "use --reference only while cloning"
+msgstr "仅在克隆时参考 --reference 指向的本地版本库"
+
+#: builtin/clone.c:100 builtin/init-db.c:502
 msgid "gitdir"
 msgstr "git目录"
 
-#: builtin/clone.c:98 builtin/init-db.c:495
+#: builtin/clone.c:101 builtin/init-db.c:503
 msgid "separate git dir from working tree"
 msgstr "git目录和工作区分离"
 
-#: builtin/clone.c:99
+#: builtin/clone.c:102
 msgid "key=value"
 msgstr "key=value"
 
-#: builtin/clone.c:100
+#: builtin/clone.c:103
 msgid "set config inside the new repository"
 msgstr "在新版本库中设置配置信息"
 
-#: builtin/clone.c:253
+#: builtin/clone.c:256
 #, c-format
 msgid "reference repository '%s' is not a local repository."
 msgstr "参考版本库 '%s' 不是一个本地版本库。"
 
-#: builtin/clone.c:257
+#: builtin/clone.c:260
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "参考版本库 '%s' 是一个浅克隆"
 
-#: builtin/clone.c:260
+#: builtin/clone.c:263
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "参考版本库 '%s' 已被嫁接"
 
-#: builtin/clone.c:322
+#: builtin/clone.c:325
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "无法创建目录 '%s'"
 
-#: builtin/clone.c:324 builtin/diff.c:84
+#: builtin/clone.c:327 builtin/diff.c:84
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "无法枚举 '%s' 状态"
 
-#: builtin/clone.c:326
+#: builtin/clone.c:329
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s 存在且不是一个目录"
 
-#: builtin/clone.c:340
+#: builtin/clone.c:343
 #, c-format
 msgid "failed to stat %s\n"
 msgstr "无法枚举 %s 状态\n"
 
-#: builtin/clone.c:362
+#: builtin/clone.c:365
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "无法创建链接 '%s'"
 
-#: builtin/clone.c:366
+#: builtin/clone.c:369
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "无法拷贝文件至 '%s'"
 
-#: builtin/clone.c:389 builtin/clone.c:563
+#: builtin/clone.c:392 builtin/clone.c:566
 #, c-format
 msgid "done.\n"
 msgstr "完成。\n"
 
-#: builtin/clone.c:401
+#: builtin/clone.c:404
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
@@ -3968,114 +4001,126 @@ msgstr ""
 "您可以通过 'git status' 检查哪些已被检出,然后使用命令\n"
 "'git checkout -f HEAD' 重试\n"
 
-#: builtin/clone.c:478
+#: builtin/clone.c:481
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "不能发现要克隆的远程分支 %s。"
 
-#: builtin/clone.c:558
+#: builtin/clone.c:561
 #, c-format
 msgid "Checking connectivity... "
 msgstr "检查连接... "
 
-#: builtin/clone.c:561
+#: builtin/clone.c:564
 msgid "remote did not send all necessary objects"
 msgstr "远程没有发送所有必须的对象"
 
-#: builtin/clone.c:625
+#: builtin/clone.c:628
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr "远程 HEAD 指向一个不存在的引用,无法检出。\n"
 
-#: builtin/clone.c:656
+#: builtin/clone.c:659
 msgid "unable to checkout working tree"
 msgstr "不能检出工作区"
 
-#: builtin/clone.c:765
+#: builtin/clone.c:746
+msgid "cannot repack to clean up"
+msgstr "无法执行 repack 来清理"
+
+#: builtin/clone.c:748
+msgid "cannot unlink temporary alternates file"
+msgstr "无法删除临时的 alternates 文件"
+
+#: builtin/clone.c:778
 msgid "Too many arguments."
 msgstr "太多参数。"
 
-#: builtin/clone.c:769
+#: builtin/clone.c:782
 msgid "You must specify a repository to clone."
 msgstr "您必须指定一个版本库来克隆。"
 
-#: builtin/clone.c:780
+#: builtin/clone.c:793
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "--bare 和 --origin %s 选项不兼容。"
 
-#: builtin/clone.c:783
+#: builtin/clone.c:796
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "--bare 和 --separate-git-dir 选项不兼容。"
 
-#: builtin/clone.c:796
+#: builtin/clone.c:809
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "版本库 '%s' 不存在"
 
-#: builtin/clone.c:802 builtin/fetch.c:1155
+#: builtin/clone.c:815 builtin/fetch.c:1156
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "深度 %s 不是一个正数"
 
-#: builtin/clone.c:812
+#: builtin/clone.c:825
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr "目标路径 '%s' 已经存在,并且不是一个空目录。"
 
-#: builtin/clone.c:822
+#: builtin/clone.c:835
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "工作区 '%s' 已经存在。"
 
-#: builtin/clone.c:835 builtin/clone.c:847
+#: builtin/clone.c:850 builtin/clone.c:861
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "不能为 '%s' 创建先导目录"
 
-#: builtin/clone.c:838
+#: builtin/clone.c:853
 #, c-format
-msgid "could not create work tree dir '%s'."
-msgstr "不能为 '%s' 创建工作区目录。"
+msgid "could not create work tree dir '%s'"
+msgstr "不能创建工作区目录 '%s'"
 
-#: builtin/clone.c:857
+#: builtin/clone.c:871
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "克隆到纯版本库 '%s'...\n"
 
-#: builtin/clone.c:859
+#: builtin/clone.c:873
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "正克隆到 '%s'...\n"
 
-#: builtin/clone.c:895
+#: builtin/clone.c:898
+msgid "--dissociate given, but there is no --reference"
+msgstr "提供了参数 --dissociate,但未提供 --reference"
+
+#: builtin/clone.c:913
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr "--depth 在本地克隆被忽略,改为 file:// 协议试试。"
 
-#: builtin/clone.c:898
+#: builtin/clone.c:916
 msgid "source repository is shallow, ignoring --local"
 msgstr "源版本库是浅克隆,忽略 --local"
 
-#: builtin/clone.c:903
+#: builtin/clone.c:921
 msgid "--local is ignored"
 msgstr "--local 被忽略"
 
-#: builtin/clone.c:907
+#: builtin/clone.c:925
 #, c-format
 msgid "Don't know how to clone %s"
 msgstr "不知道如何克隆 %s"
 
-#: builtin/clone.c:958 builtin/clone.c:966
+#: builtin/clone.c:976 builtin/clone.c:984
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr "远程分支 %s 在上游 %s 未发现"
 
-#: builtin/clone.c:969
+#: builtin/clone.c:987
 msgid "You appear to have cloned an empty repository."
 msgstr "您似乎克隆了一个空版本库。"
 
 #: builtin/column.c:9
-msgid "git column [options]"
-msgstr "git column [选项]"
+msgid "git column [<options>]"
+msgstr "git column [<选项>]"
 
 #: builtin/column.c:26
 msgid "lookup config vars"
@@ -4106,12 +4151,12 @@ msgid "--command must be the first argument"
 msgstr "--command 必须是第一个参数"
 
 #: builtin/commit.c:37
-msgid "git commit [options] [--] <pathspec>..."
-msgstr "git commit [选项] [--] <路径规则>..."
+msgid "git commit [<options>] [--] <pathspec>..."
+msgstr "git commit [<选项>] [--] <路径规则>..."
 
 #: builtin/commit.c:42
-msgid "git status [options] [--] <pathspec>..."
-msgstr "git status [选项] [--] <路径规则>..."
+msgid "git status [<options>] [--] <pathspec>..."
+msgstr "git status [<选项>] [--] <路径规则>..."
 
 #: builtin/commit.c:47
 msgid ""
@@ -4203,117 +4248,112 @@ msgstr ""
 "然后执行 \"git cherry-pick --continue\" 继续对其余提交执行拣选\n"
 "操作。\n"
 
-#: builtin/commit.c:302
+#: builtin/commit.c:304
 msgid "failed to unpack HEAD tree object"
 msgstr "无法解包 HEAD 树对象"
 
-#: builtin/commit.c:342
+#: builtin/commit.c:344
 msgid "unable to create temporary index"
 msgstr "不能创建临时索引"
 
-#: builtin/commit.c:348
+#: builtin/commit.c:350
 msgid "interactive add failed"
 msgstr "交互式添加失败"
 
-#: builtin/commit.c:359
+#: builtin/commit.c:361
 msgid "unable to write index file"
 msgstr "无法写入索引文件"
 
-#: builtin/commit.c:361
+#: builtin/commit.c:363
 msgid "unable to update temporary index"
 msgstr "无法更新临时索引"
 
-#: builtin/commit.c:363
+#: builtin/commit.c:365
 msgid "Failed to update main cache tree"
 msgstr "不能更新树的主缓存"
 
-#: builtin/commit.c:387 builtin/commit.c:412 builtin/commit.c:461
+#: builtin/commit.c:389 builtin/commit.c:414 builtin/commit.c:463
 msgid "unable to write new_index file"
 msgstr "无法写 new_index 文件"
 
-#: builtin/commit.c:443
+#: builtin/commit.c:445
 msgid "cannot do a partial commit during a merge."
 msgstr "在合并过程中不能做部分提交。"
 
-#: builtin/commit.c:445
+#: builtin/commit.c:447
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr "在拣选过程中不能做部分提交。"
 
-#: builtin/commit.c:454
+#: builtin/commit.c:456
 msgid "cannot read the index"
 msgstr "无法读取索引"
 
-#: builtin/commit.c:473
+#: builtin/commit.c:475
 msgid "unable to write temporary index file"
 msgstr "无法写临时索引文件"
 
-#: builtin/commit.c:592
+#: builtin/commit.c:580
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr "提交 '%s' 缺少作者信息"
 
-#: builtin/commit.c:594
+#: builtin/commit.c:582
 #, c-format
 msgid "commit '%s' has malformed author line"
 msgstr "提交 '%s' 有非法的作者信息"
 
-#: builtin/commit.c:613
+#: builtin/commit.c:601
 msgid "malformed --author parameter"
 msgstr "非法的 --author 参数"
 
-#: builtin/commit.c:621
+#: builtin/commit.c:609
 #, c-format
 msgid "invalid date format: %s"
 msgstr "无效的日期格式:%s"
 
-#: builtin/commit.c:642
-#, c-format
-msgid "Malformed ident string: '%s'"
-msgstr "非法的身份字符串:'%s'"
-
-#: builtin/commit.c:675
+#: builtin/commit.c:653
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
 msgstr "无法选择一个未被当前提交说明使用的注释字符"
 
-#: builtin/commit.c:712 builtin/commit.c:745 builtin/commit.c:1120
+#: builtin/commit.c:690 builtin/commit.c:723 builtin/commit.c:1080
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "不能查询提交 %s"
 
-#: builtin/commit.c:724 builtin/shortlog.c:273
+#: builtin/commit.c:702 builtin/shortlog.c:273
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr "(正从标准输入中读取日志信息)\n"
 
-#: builtin/commit.c:726
+#: builtin/commit.c:704
 msgid "could not read log from standard input"
 msgstr "不能从标准输入中读取日志信息"
 
-#: builtin/commit.c:730
+#: builtin/commit.c:708
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "不能读取日志文件 '%s'"
 
-#: builtin/commit.c:752
+#: builtin/commit.c:730
 msgid "could not read MERGE_MSG"
 msgstr "不能读取 MERGE_MSG"
 
-#: builtin/commit.c:756
+#: builtin/commit.c:734
 msgid "could not read SQUASH_MSG"
 msgstr "不能读取 SQUASH_MSG"
 
-#: builtin/commit.c:760
+#: builtin/commit.c:738
 #, c-format
 msgid "could not read '%s'"
 msgstr "不能读取 '%s'"
 
-#: builtin/commit.c:831
+#: builtin/commit.c:785
 msgid "could not write commit template"
 msgstr "不能写提交模版"
 
-#: builtin/commit.c:849
+#: builtin/commit.c:803
 #, c-format
 msgid ""
 "\n"
@@ -4327,7 +4367,7 @@ msgstr ""
 "\t%s\n"
 "然后重试。\n"
 
-#: builtin/commit.c:854
+#: builtin/commit.c:808
 #, c-format
 msgid ""
 "\n"
@@ -4341,7 +4381,7 @@ msgstr ""
 "\t%s\n"
 "然后重试。\n"
 
-#: builtin/commit.c:867
+#: builtin/commit.c:821
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -4350,7 +4390,7 @@ msgstr ""
 "请为您的变更输入提交说明。以 '%c' 开始的行将被忽略,而一个空的提交\n"
 "说明将会终止提交。\n"
 
-#: builtin/commit.c:874
+#: builtin/commit.c:828
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -4361,353 +4401,353 @@ msgstr ""
 "也可以删除它们。一个空的提交说明将会终止提交。\n"
 
 #  译者:为保证在输出中对齐,注意调整句中空格!
-#: builtin/commit.c:888
+#: builtin/commit.c:848
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%s作者:  %.*s <%.*s>"
 
 #  译者:为保证在输出中对齐,注意调整句中空格!
-#: builtin/commit.c:896
+#: builtin/commit.c:856
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%s日期:  %s"
 
 #  译者:为保证在输出中对齐,注意调整句中空格!
-#: builtin/commit.c:903
+#: builtin/commit.c:863
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%s提交者:%.*s <%.*s>"
 
-#: builtin/commit.c:921
+#: builtin/commit.c:881
 msgid "Cannot read index"
 msgstr "无法读取索引"
 
-#: builtin/commit.c:978
+#: builtin/commit.c:938
 msgid "Error building trees"
 msgstr "无法创建树对象"
 
-#: builtin/commit.c:993 builtin/tag.c:495
+#: builtin/commit.c:953 builtin/tag.c:495
 #, c-format
 msgid "Please supply the message using either -m or -F option.\n"
 msgstr "请使用 -m 或 -F 选项提供提交说明。\n"
 
-#: builtin/commit.c:1095
+#: builtin/commit.c:1055
 #, c-format
-msgid "No existing author found with '%s'"
-msgstr "没有找到匹配 '%s' 的作者"
+msgid "--author '%s' is not 'Name <email>' and matches no existing author"
+msgstr "--author '%s' 不是 'Name <email>' 格式,且未能在现有作者中找到匹配"
 
-#: builtin/commit.c:1110 builtin/commit.c:1350
+#: builtin/commit.c:1070 builtin/commit.c:1310
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "无效的未追踪文件参数 '%s'"
 
-#: builtin/commit.c:1147
+#: builtin/commit.c:1107
 msgid "--long and -z are incompatible"
 msgstr "--long 和 -z 选项不兼容"
 
-#: builtin/commit.c:1177
+#: builtin/commit.c:1137
 msgid "Using both --reset-author and --author does not make sense"
 msgstr "同时使用 --reset-author 和 --author 没有意义"
 
-#: builtin/commit.c:1186
+#: builtin/commit.c:1146
 msgid "You have nothing to amend."
 msgstr "您没有可修补的提交。"
 
-#: builtin/commit.c:1189
+#: builtin/commit.c:1149
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "您正处于一个合并过程中 -- 无法修补提交。"
 
-#: builtin/commit.c:1191
+#: builtin/commit.c:1151
 msgid "You are in the middle of a cherry-pick -- cannot amend."
 msgstr "您正处于一个拣选过程中 -- 无法修补提交。"
 
-#: builtin/commit.c:1194
+#: builtin/commit.c:1154
 msgid "Options --squash and --fixup cannot be used together"
 msgstr "选项 --squash 和 --fixup 不能同时使用"
 
-#: builtin/commit.c:1204
+#: builtin/commit.c:1164
 msgid "Only one of -c/-C/-F/--fixup can be used."
 msgstr "只能用一个 -c/-C/-F/--fixup 选项。"
 
-#: builtin/commit.c:1206
+#: builtin/commit.c:1166
 msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
 msgstr "选项 -m 不能和 -c/-C/-F/--fixup 同时使用。"
 
-#: builtin/commit.c:1214
+#: builtin/commit.c:1174
 msgid "--reset-author can be used only with -C, -c or --amend."
 msgstr "--reset-author 只能和 -C、-c 或 --amend 同时使用。"
 
-#: builtin/commit.c:1231
+#: builtin/commit.c:1191
 msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
 msgstr "只能用一个 --include/--only/--all/--interactive/--patch 选项。"
 
-#: builtin/commit.c:1233
+#: builtin/commit.c:1193
 msgid "No paths with --include/--only does not make sense."
 msgstr "参数 --include/--only 不跟路径没有意义。"
 
-#: builtin/commit.c:1235
+#: builtin/commit.c:1195
 msgid "Clever... amending the last one with dirty index."
 msgstr "聪明... 在索引不干净下修补最后的提交。"
 
-#: builtin/commit.c:1237
+#: builtin/commit.c:1197
 msgid "Explicit paths specified without -i or -o; assuming --only paths..."
 msgstr "指定了明确的路径而没有使用 -i 或 -o 选项,认为是 --only paths..."
 
-#: builtin/commit.c:1249 builtin/tag.c:728
+#: builtin/commit.c:1209 builtin/tag.c:728
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "无效的清理模式 %s"
 
-#: builtin/commit.c:1254
+#: builtin/commit.c:1214
 msgid "Paths with -a does not make sense."
 msgstr "路径和 -a 选项同时使用没有意义。"
 
-#: builtin/commit.c:1364 builtin/commit.c:1644
+#: builtin/commit.c:1324 builtin/commit.c:1604
 msgid "show status concisely"
 msgstr "以简洁的格式显示状态"
 
-#: builtin/commit.c:1366 builtin/commit.c:1646
+#: builtin/commit.c:1326 builtin/commit.c:1606
 msgid "show branch information"
 msgstr "显示分支信息"
 
-#: builtin/commit.c:1368 builtin/commit.c:1648 builtin/push.c:500
+#: builtin/commit.c:1328 builtin/commit.c:1608 builtin/push.c:509
 msgid "machine-readable output"
 msgstr "机器可读的输出"
 
-#: builtin/commit.c:1371 builtin/commit.c:1650
+#: builtin/commit.c:1331 builtin/commit.c:1610
 msgid "show status in long format (default)"
 msgstr "以长格式显示状态(默认)"
 
-#: builtin/commit.c:1374 builtin/commit.c:1653
+#: builtin/commit.c:1334 builtin/commit.c:1613
 msgid "terminate entries with NUL"
 msgstr "条目以NUL字符结尾"
 
-#: builtin/commit.c:1376 builtin/commit.c:1656 builtin/fast-export.c:980
+#: builtin/commit.c:1336 builtin/commit.c:1616 builtin/fast-export.c:980
 #: builtin/fast-export.c:983 builtin/tag.c:603
 msgid "mode"
 msgstr "模式"
 
-#: builtin/commit.c:1377 builtin/commit.c:1656
+#: builtin/commit.c:1337 builtin/commit.c:1616
 msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
 msgstr "显示未跟踪的文件,“模式”的可选参数:all、normal、no。(默认:all)"
 
-#: builtin/commit.c:1380
+#: builtin/commit.c:1340
 msgid "show ignored files"
 msgstr "显示忽略的文件"
 
-#: builtin/commit.c:1381 parse-options.h:153
+#: builtin/commit.c:1341 parse-options.h:153
 msgid "when"
 msgstr "何时"
 
-#: builtin/commit.c:1382
+#: builtin/commit.c:1342
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
 msgstr ""
 "忽略子模组的更改,“何时”的可选参数:all、dirty、untracked。(默认:all)"
 
-#: builtin/commit.c:1384
+#: builtin/commit.c:1344
 msgid "list untracked files in columns"
 msgstr "以列的方式显示未跟踪的文件"
 
-#: builtin/commit.c:1471
+#: builtin/commit.c:1431
 msgid "couldn't look up newly created commit"
 msgstr "无法找到新创建的提交"
 
-#: builtin/commit.c:1473
+#: builtin/commit.c:1433
 msgid "could not parse newly created commit"
 msgstr "不能解析新创建的提交"
 
-#: builtin/commit.c:1518
+#: builtin/commit.c:1478
 msgid "detached HEAD"
 msgstr "分离头指针"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: builtin/commit.c:1521
+#: builtin/commit.c:1481
 msgid " (root-commit)"
 msgstr "(根提交)"
 
-#: builtin/commit.c:1614
+#: builtin/commit.c:1574
 msgid "suppress summary after successful commit"
 msgstr "提交成功后不显示概述信息"
 
-#: builtin/commit.c:1615
+#: builtin/commit.c:1575
 msgid "show diff in commit message template"
 msgstr "在提交说明模板里显示差异"
 
-#: builtin/commit.c:1617
+#: builtin/commit.c:1577
 msgid "Commit message options"
 msgstr "提交说明选项"
 
-#: builtin/commit.c:1618 builtin/tag.c:601
+#: builtin/commit.c:1578 builtin/tag.c:601
 msgid "read message from file"
 msgstr "从文件中读取提交说明"
 
-#: builtin/commit.c:1619
+#: builtin/commit.c:1579
 msgid "author"
 msgstr "作者"
 
-#: builtin/commit.c:1619
+#: builtin/commit.c:1579
 msgid "override author for commit"
 msgstr "提交时覆盖作者"
 
-#: builtin/commit.c:1620 builtin/gc.c:275
+#: builtin/commit.c:1580 builtin/gc.c:275
 msgid "date"
 msgstr "日期"
 
-#: builtin/commit.c:1620
+#: builtin/commit.c:1580
 msgid "override date for commit"
 msgstr "提交时覆盖日期"
 
-#: builtin/commit.c:1621 builtin/merge.c:217 builtin/notes.c:408
-#: builtin/notes.c:565 builtin/tag.c:599
+#: builtin/commit.c:1581 builtin/merge.c:218 builtin/notes.c:391
+#: builtin/notes.c:554 builtin/tag.c:599
 msgid "message"
 msgstr "说明"
 
-#: builtin/commit.c:1621
+#: builtin/commit.c:1581
 msgid "commit message"
 msgstr "提交说明"
 
-#: builtin/commit.c:1622
+#: builtin/commit.c:1582
 msgid "reuse and edit message from specified commit"
 msgstr "重用并编辑指定提交的提交说明"
 
-#: builtin/commit.c:1623
+#: builtin/commit.c:1583
 msgid "reuse message from specified commit"
 msgstr "重用指定提交的提交说明"
 
-#: builtin/commit.c:1624
+#: builtin/commit.c:1584
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr "使用 autosquash 格式的提交说明用以修正指定的提交"
 
-#: builtin/commit.c:1625
+#: builtin/commit.c:1585
 msgid "use autosquash formatted message to squash specified commit"
 msgstr "使用 autosquash 格式的提交说明用以压缩至指定的提交"
 
-#: builtin/commit.c:1626
+#: builtin/commit.c:1586
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr "现在将该提交的作者改为我(和 -C/-c/--amend 参数共用)"
 
-#: builtin/commit.c:1627 builtin/log.c:1191 builtin/revert.c:86
+#: builtin/commit.c:1587 builtin/log.c:1191 builtin/revert.c:86
 msgid "add Signed-off-by:"
 msgstr "添加 Signed-off-by: 签名"
 
-#: builtin/commit.c:1628
+#: builtin/commit.c:1588
 msgid "use specified template file"
 msgstr "使用指定的模板文件"
 
-#: builtin/commit.c:1629
+#: builtin/commit.c:1589
 msgid "force edit of commit"
 msgstr "强制编辑提交"
 
 #  译者:可选值,不能翻译(或是原文中笔误,应为 mode)
-#: builtin/commit.c:1630
+#: builtin/commit.c:1590
 msgid "default"
 msgstr "default"
 
-#: builtin/commit.c:1630 builtin/tag.c:604
+#: builtin/commit.c:1590 builtin/tag.c:604
 msgid "how to strip spaces and #comments from message"
 msgstr "设置如何删除提交说明里的空格和#注释"
 
-#: builtin/commit.c:1631
+#: builtin/commit.c:1591
 msgid "include status in commit message template"
 msgstr "在提交说明模板里包含状态信息"
 
-#: builtin/commit.c:1632 builtin/merge.c:224 builtin/revert.c:92
+#: builtin/commit.c:1592 builtin/merge.c:225 builtin/revert.c:92
 #: builtin/tag.c:605
 msgid "key-id"
 msgstr "key-id"
 
-#: builtin/commit.c:1633 builtin/merge.c:225 builtin/revert.c:93
+#: builtin/commit.c:1593 builtin/merge.c:226 builtin/revert.c:93
 msgid "GPG sign commit"
 msgstr "GPG 提交签名"
 
-#: builtin/commit.c:1636
+#: builtin/commit.c:1596
 msgid "Commit contents options"
 msgstr "提交内容选项"
 
-#: builtin/commit.c:1637
+#: builtin/commit.c:1597
 msgid "commit all changed files"
 msgstr "提交所有改动的文件"
 
-#: builtin/commit.c:1638
+#: builtin/commit.c:1598
 msgid "add specified files to index for commit"
 msgstr "添加指定的文件到索引区等待提交"
 
-#: builtin/commit.c:1639
+#: builtin/commit.c:1599
 msgid "interactively add files"
 msgstr "交互式添加文件"
 
-#: builtin/commit.c:1640
+#: builtin/commit.c:1600
 msgid "interactively add changes"
 msgstr "交互式添加变更"
 
-#: builtin/commit.c:1641
+#: builtin/commit.c:1601
 msgid "commit only specified files"
 msgstr "只提交指定的文件"
 
-#: builtin/commit.c:1642
+#: builtin/commit.c:1602
 msgid "bypass pre-commit hook"
 msgstr "绕过 pre-commit 钩子"
 
-#: builtin/commit.c:1643
+#: builtin/commit.c:1603
 msgid "show what would be committed"
 msgstr "显示将要提交的内容"
 
-#: builtin/commit.c:1654
+#: builtin/commit.c:1614
 msgid "amend previous commit"
 msgstr "修改先前的提交"
 
-#: builtin/commit.c:1655
+#: builtin/commit.c:1615
 msgid "bypass post-rewrite hook"
 msgstr "绕过 post-rewrite 钩子"
 
-#: builtin/commit.c:1660
+#: builtin/commit.c:1620
 msgid "ok to record an empty change"
 msgstr "允许一个空提交"
 
-#: builtin/commit.c:1662
+#: builtin/commit.c:1622
 msgid "ok to record a change with an empty message"
 msgstr "允许空的提交说明"
 
-#: builtin/commit.c:1691
+#: builtin/commit.c:1651
 msgid "could not parse HEAD commit"
 msgstr "不能解析 HEAD 提交"
 
-#: builtin/commit.c:1730 builtin/merge.c:518
+#: builtin/commit.c:1690 builtin/merge.c:519
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "不能为读入打开 '%s'"
 
-#: builtin/commit.c:1737
+#: builtin/commit.c:1697
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "损坏的 MERGE_HEAD 文件(%s)"
 
-#: builtin/commit.c:1744
+#: builtin/commit.c:1704
 msgid "could not read MERGE_MODE"
 msgstr "不能读取 MERGE_MODE"
 
-#: builtin/commit.c:1763
+#: builtin/commit.c:1723
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "不能读取提交说明:%s"
 
-#: builtin/commit.c:1774
+#: builtin/commit.c:1734
 #, c-format
 msgid "Aborting commit; you did not edit the message.\n"
 msgstr "终止提交;您未更改来自模版的提交说明。\n"
 
-#: builtin/commit.c:1779
+#: builtin/commit.c:1739
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr "终止提交因为提交说明为空。\n"
 
-#: builtin/commit.c:1794 builtin/merge.c:850 builtin/merge.c:875
+#: builtin/commit.c:1754 builtin/merge.c:851 builtin/merge.c:876
 msgid "failed to write commit object"
 msgstr "无法写提交对象"
 
-#: builtin/commit.c:1827
+#: builtin/commit.c:1787
 msgid ""
 "Repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
@@ -4717,8 +4757,8 @@ msgstr ""
 "或磁盘配额已耗尽,然后执行 \"git reset HEAD\" 恢复。"
 
 #: builtin/config.c:8
-msgid "git config [options]"
-msgstr "git config [选项]"
+msgid "git config [<options>]"
+msgstr "git config [<选项>]"
 
 #: builtin/config.c:53
 msgid "Config file location"
@@ -4800,17 +4840,13 @@ msgstr "列出所有"
 msgid "open an editor"
 msgstr "打开一个编辑器"
 
-#: builtin/config.c:72 builtin/config.c:73
-msgid "slot"
-msgstr "slot"
-
 #: builtin/config.c:72
-msgid "find the color configured: [default]"
-msgstr "找到配置的颜色:[默认]"
+msgid "find the color configured: slot [default]"
+msgstr "获得配置的颜色:配置 [默认]"
 
 #: builtin/config.c:73
-msgid "find the color setting: [stdout-is-tty]"
-msgstr "找到颜色设置:[stdout-is-tty]"
+msgid "find the color setting: slot [stdout-is-tty]"
+msgstr "获得颜色设置:配置 [stdout-is-tty]"
 
 #: builtin/config.c:74
 msgid "Type"
@@ -4844,11 +4880,11 @@ msgstr "终止值是NUL字节"
 msgid "respect include directives on lookup"
 msgstr "查询时参照 include 指令递归查找"
 
-#: builtin/config.c:315
+#: builtin/config.c:316
 msgid "unable to parse default color value"
 msgstr "不能解析缺省的颜色值"
 
-#: builtin/config.c:455
+#: builtin/config.c:457
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -4863,7 +4899,7 @@ msgstr ""
 "#\tuser = %s\n"
 "#\temail = %s\n"
 
-#: builtin/config.c:590
+#: builtin/config.c:589
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr "不能创建配置文件 %s"
@@ -4877,12 +4913,12 @@ msgid "print sizes in human readable format"
 msgstr "以用户可读的格式显示大小"
 
 #: builtin/describe.c:17
-msgid "git describe [options] <commit-ish>*"
-msgstr "git describe [选项] <提交号>*"
+msgid "git describe [<options>] [<commit-ish>...]"
+msgstr "git describe [<选项>] [<提交号>...]"
 
 #: builtin/describe.c:18
-msgid "git describe [options] --dirty"
-msgstr "git describe [选项] --dirty"
+msgid "git describe [<options>] --dirty"
+msgstr "git describe [<选项>] --dirty"
 
 #: builtin/describe.c:217
 #, c-format
@@ -5097,179 +5133,179 @@ msgstr "对导出的引用应用引用表达式"
 msgid "anonymize output"
 msgstr "匿名输出"
 
-#: builtin/fetch.c:20
+#: builtin/fetch.c:19
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr "git fetch [<选项>] [<版本库> [<引用规则>...]]"
 
-#: builtin/fetch.c:21
+#: builtin/fetch.c:20
 msgid "git fetch [<options>] <group>"
 msgstr "git fetch [<选项>] <组>"
 
-#: builtin/fetch.c:22
+#: builtin/fetch.c:21
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
 msgstr "git fetch --multiple [<选项>] [(<版本库> | <组>)...]"
 
-#: builtin/fetch.c:23
+#: builtin/fetch.c:22
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<选项>]"
 
-#: builtin/fetch.c:90
+#: builtin/fetch.c:89
 msgid "fetch from all remotes"
 msgstr "从所有的远程抓取"
 
-#: builtin/fetch.c:92
+#: builtin/fetch.c:91
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "追加到 .git/FETCH_HEAD 而不是覆盖它"
 
-#: builtin/fetch.c:94
+#: builtin/fetch.c:93
 msgid "path to upload pack on remote end"
 msgstr "上传包到远程的路径"
 
-#: builtin/fetch.c:95
+#: builtin/fetch.c:94
 msgid "force overwrite of local branch"
 msgstr "强制覆盖本地分支"
 
-#: builtin/fetch.c:97
+#: builtin/fetch.c:96
 msgid "fetch from multiple remotes"
 msgstr "从多个远程抓取"
 
-#: builtin/fetch.c:99
+#: builtin/fetch.c:98
 msgid "fetch all tags and associated objects"
 msgstr "抓取所有的 tags 和关联对象"
 
-#: builtin/fetch.c:101
+#: builtin/fetch.c:100
 msgid "do not fetch all tags (--no-tags)"
 msgstr "不抓取任何 tags (--no-tags)"
 
-#: builtin/fetch.c:103
+#: builtin/fetch.c:102
 msgid "prune remote-tracking branches no longer on remote"
 msgstr "清除远程已经不存在的分支的跟踪分支"
 
 #  译者:可选值,不能翻译
-#: builtin/fetch.c:104
+#: builtin/fetch.c:103
 msgid "on-demand"
 msgstr "on-demand"
 
-#: builtin/fetch.c:105
+#: builtin/fetch.c:104
 msgid "control recursive fetching of submodules"
 msgstr "控制子模组的递归抓取"
 
-#: builtin/fetch.c:109
+#: builtin/fetch.c:108
 msgid "keep downloaded pack"
 msgstr "保持下载包"
 
-#: builtin/fetch.c:111
+#: builtin/fetch.c:110
 msgid "allow updating of HEAD ref"
 msgstr "允许更新 HEAD 引用"
 
-#: builtin/fetch.c:114
+#: builtin/fetch.c:113
 msgid "deepen history of shallow clone"
 msgstr "深化浅克隆的历史"
 
-#: builtin/fetch.c:116
+#: builtin/fetch.c:115
 msgid "convert to a complete repository"
 msgstr "转换为一个完整的版本库"
 
-#: builtin/fetch.c:118 builtin/log.c:1208
+#: builtin/fetch.c:117 builtin/log.c:1208
 msgid "dir"
 msgstr "目录"
 
-#: builtin/fetch.c:119
+#: builtin/fetch.c:118
 msgid "prepend this to submodule path output"
 msgstr "在子模组路径输出的前面加上此目录"
 
-#: builtin/fetch.c:122
+#: builtin/fetch.c:121
 msgid "default mode for recursion"
 msgstr "递归的默认模式"
 
-#: builtin/fetch.c:124
+#: builtin/fetch.c:123
 msgid "accept refs that update .git/shallow"
 msgstr "接受更新 .git/shallow 的引用"
 
-#: builtin/fetch.c:125
+#: builtin/fetch.c:124
 msgid "refmap"
 msgstr "引用映射"
 
-#: builtin/fetch.c:126
+#: builtin/fetch.c:125
 msgid "specify fetch refmap"
 msgstr "指定获取操作的引用映射"
 
-#: builtin/fetch.c:376
+#: builtin/fetch.c:375
 msgid "Couldn't find remote ref HEAD"
 msgstr "无法发现远程 HEAD 引用"
 
-#: builtin/fetch.c:454
+#: builtin/fetch.c:455
 #, c-format
 msgid "object %s not found"
 msgstr "对象 %s 未发现"
 
-#: builtin/fetch.c:459
+#: builtin/fetch.c:460
 msgid "[up to date]"
 msgstr "[最新]"
 
-#: builtin/fetch.c:473
+#: builtin/fetch.c:474
 #, c-format
 msgid "! %-*s %-*s -> %s  (can't fetch in current branch)"
 msgstr "! %-*s %-*s -> %s  (在当前分支下不能获取)"
 
-#: builtin/fetch.c:474 builtin/fetch.c:560
+#: builtin/fetch.c:475 builtin/fetch.c:561
 msgid "[rejected]"
 msgstr "[已拒绝]"
 
-#: builtin/fetch.c:485
+#: builtin/fetch.c:486
 msgid "[tag update]"
 msgstr "[tag更新]"
 
 #  译者:注意保持前导空格
-#: builtin/fetch.c:487 builtin/fetch.c:522 builtin/fetch.c:540
+#: builtin/fetch.c:488 builtin/fetch.c:523 builtin/fetch.c:541
 msgid "  (unable to update local ref)"
 msgstr "  (不能更新本地引用)"
 
-#: builtin/fetch.c:505
+#: builtin/fetch.c:506
 msgid "[new tag]"
 msgstr "[新tag]"
 
-#: builtin/fetch.c:508
+#: builtin/fetch.c:509
 msgid "[new branch]"
 msgstr "[新分支]"
 
-#: builtin/fetch.c:511
+#: builtin/fetch.c:512
 msgid "[new ref]"
 msgstr "[新引用]"
 
-#: builtin/fetch.c:556
+#: builtin/fetch.c:557
 msgid "unable to update local ref"
 msgstr "不能更新本地引用"
 
-#: builtin/fetch.c:556
+#: builtin/fetch.c:557
 msgid "forced update"
 msgstr "强制更新"
 
-#: builtin/fetch.c:562
+#: builtin/fetch.c:563
 msgid "(non-fast-forward)"
 msgstr "(非快进式)"
 
-#: builtin/fetch.c:595 builtin/fetch.c:828
+#: builtin/fetch.c:596 builtin/fetch.c:829
 #, c-format
 msgid "cannot open %s: %s\n"
 msgstr "无法打开 %s:%s\n"
 
-#: builtin/fetch.c:604
+#: builtin/fetch.c:605
 #, c-format
 msgid "%s did not send all necessary objects\n"
 msgstr "%s 未发送所有必须的对象\n"
 
-#: builtin/fetch.c:622
+#: builtin/fetch.c:623
 #, c-format
 msgid "reject %s because shallow roots are not allowed to be updated"
 msgstr "拒绝 %s 因为浅克隆不允许被更新"
 
-#: builtin/fetch.c:710 builtin/fetch.c:793
+#: builtin/fetch.c:711 builtin/fetch.c:794
 #, c-format
 msgid "From %.*s\n"
 msgstr "来自 %.*s\n"
 
-#: builtin/fetch.c:721
+#: builtin/fetch.c:722
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -5279,167 +5315,167 @@ msgstr ""
 " 'git remote prune %s' 来删除旧的、有冲突的分支"
 
 #  译者:注意保持前导空格
-#: builtin/fetch.c:773
+#: builtin/fetch.c:774
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s 将成为摇摆状态)"
 
 #  译者:注意保持前导空格
-#: builtin/fetch.c:774
+#: builtin/fetch.c:775
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s 已成为摇摆状态)"
 
-#: builtin/fetch.c:798
+#: builtin/fetch.c:799
 msgid "[deleted]"
 msgstr "[已删除]"
 
-#: builtin/fetch.c:799 builtin/remote.c:1063
+#: builtin/fetch.c:800 builtin/remote.c:1060
 msgid "(none)"
 msgstr "(无)"
 
-#: builtin/fetch.c:818
+#: builtin/fetch.c:819
 #, c-format
 msgid "Refusing to fetch into current branch %s of non-bare repository"
 msgstr "拒绝获取到非纯版本库的当前分支 %s"
 
-#: builtin/fetch.c:837
+#: builtin/fetch.c:838
 #, c-format
 msgid "Option \"%s\" value \"%s\" is not valid for %s"
 msgstr "选项 \"%s\" 的值 \"%s\" 对于 %s 是无效的"
 
-#: builtin/fetch.c:840
+#: builtin/fetch.c:841
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "选项 \"%s\" 为 %s 所忽略\n"
 
-#: builtin/fetch.c:896
+#: builtin/fetch.c:897
 #, c-format
 msgid "Don't know how to fetch from %s"
 msgstr "不知道如何从 %s 获取"
 
-#: builtin/fetch.c:1058
+#: builtin/fetch.c:1059
 #, c-format
 msgid "Fetching %s\n"
 msgstr "正在获取 %s\n"
 
-#: builtin/fetch.c:1060 builtin/remote.c:90
+#: builtin/fetch.c:1061 builtin/remote.c:90
 #, c-format
 msgid "Could not fetch %s"
 msgstr "不能获取 %s"
 
-#: builtin/fetch.c:1078
+#: builtin/fetch.c:1079
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
 msgstr "未指定远程版本库。请通过一个URL或远程版本库名指定,用以获取新提交。"
 
-#: builtin/fetch.c:1101
+#: builtin/fetch.c:1102
 msgid "You need to specify a tag name."
 msgstr "您需要指定一个 tag 名称。"
 
-#: builtin/fetch.c:1143
+#: builtin/fetch.c:1144
 msgid "--depth and --unshallow cannot be used together"
 msgstr "--depth 和 --unshallow 不能同时使用"
 
-#: builtin/fetch.c:1145
+#: builtin/fetch.c:1146
 msgid "--unshallow on a complete repository does not make sense"
 msgstr "对于一个完整的版本库,参数 --unshallow 没有意义"
 
-#: builtin/fetch.c:1168
+#: builtin/fetch.c:1169
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all 不能带一个版本库参数"
 
-#: builtin/fetch.c:1170
+#: builtin/fetch.c:1171
 msgid "fetch --all does not make sense with refspecs"
 msgstr "fetch --all 带引用规则没有任何意义"
 
-#: builtin/fetch.c:1181
+#: builtin/fetch.c:1182
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr "没有这样的远程或远程组:%s"
 
-#: builtin/fetch.c:1189
+#: builtin/fetch.c:1190
 msgid "Fetching a group and specifying refspecs does not make sense"
 msgstr "获取组并指定引用规则没有意义"
 
 #: builtin/fmt-merge-msg.c:13
-msgid "git fmt-merge-msg [-m <message>] [--log[=<n>]|--no-log] [--file <file>]"
-msgstr ""
-"git fmt-merge-msg [-m <message>] [--log[=<n>]|--no-log] [--file <file>]"
+msgid ""
+"git fmt-merge-msg [-m <message>] [--log[=<n>] | --no-log] [--file <file>]"
+msgstr "git fmt-merge-msg [-m <说明>] [--log[=<n>] | --no-log] [--file <文件>]"
 
-#: builtin/fmt-merge-msg.c:663 builtin/fmt-merge-msg.c:666 builtin/grep.c:698
-#: builtin/merge.c:197 builtin/repack.c:179 builtin/repack.c:183
-#: builtin/show-branch.c:654 builtin/show-ref.c:178 builtin/tag.c:590
+#: builtin/fmt-merge-msg.c:662 builtin/fmt-merge-msg.c:665 builtin/grep.c:698
+#: builtin/merge.c:198 builtin/repack.c:178 builtin/repack.c:182
+#: builtin/show-branch.c:657 builtin/show-ref.c:178 builtin/tag.c:590
 #: parse-options.h:132 parse-options.h:239
 msgid "n"
 msgstr "n"
 
-#: builtin/fmt-merge-msg.c:664
+#: builtin/fmt-merge-msg.c:663
 msgid "populate log with at most <n> entries from shortlog"
 msgstr "向提交说明中最多复制指定条目(合并而来的提交)的简短说明"
 
-#: builtin/fmt-merge-msg.c:667
+#: builtin/fmt-merge-msg.c:666
 msgid "alias for --log (deprecated)"
 msgstr "参数 --log 的别名(已弃用)"
 
-#: builtin/fmt-merge-msg.c:670
+#: builtin/fmt-merge-msg.c:669
 msgid "text"
 msgstr "文本"
 
-#: builtin/fmt-merge-msg.c:671
+#: builtin/fmt-merge-msg.c:670
 msgid "use <text> as start of message"
 msgstr "使用 <文本> 作为提交说明的开始"
 
-#: builtin/fmt-merge-msg.c:672
+#: builtin/fmt-merge-msg.c:671
 msgid "file to read from"
 msgstr "从文件中读取"
 
-#: builtin/for-each-ref.c:676
+#: builtin/for-each-ref.c:675
 msgid "unable to parse format"
 msgstr "不能解析格式"
 
-#: builtin/for-each-ref.c:1057
-msgid "git for-each-ref [options] [<pattern>]"
-msgstr "git for-each-ref [选项] [<模式>]"
+#: builtin/for-each-ref.c:1063
+msgid "git for-each-ref [<options>] [<pattern>]"
+msgstr "git for-each-ref [<选项>] [<模式>]"
 
-#: builtin/for-each-ref.c:1072
+#: builtin/for-each-ref.c:1078
 msgid "quote placeholders suitably for shells"
 msgstr "引用占位符适用于 shells"
 
-#: builtin/for-each-ref.c:1074
+#: builtin/for-each-ref.c:1080
 msgid "quote placeholders suitably for perl"
 msgstr "引用占位符适用于 perl"
 
-#: builtin/for-each-ref.c:1076
+#: builtin/for-each-ref.c:1082
 msgid "quote placeholders suitably for python"
 msgstr "引用占位符适用于 python"
 
-#: builtin/for-each-ref.c:1078
-msgid "quote placeholders suitably for tcl"
-msgstr "引用占位符适用于 tcl"
+#: builtin/for-each-ref.c:1084
+msgid "quote placeholders suitably for Tcl"
+msgstr "引用占位符适用于 Tcl"
 
-#: builtin/for-each-ref.c:1081
+#: builtin/for-each-ref.c:1087
 msgid "show only <n> matched refs"
 msgstr "只显示 <n> 个匹配的引用"
 
-#: builtin/for-each-ref.c:1082 builtin/replace.c:438
+#: builtin/for-each-ref.c:1088 builtin/replace.c:438
 msgid "format"
 msgstr "格式"
 
-#: builtin/for-each-ref.c:1082
+#: builtin/for-each-ref.c:1088
 msgid "format to use for the output"
 msgstr "输出格式"
 
-#: builtin/for-each-ref.c:1083
+#: builtin/for-each-ref.c:1089
 msgid "key"
 msgstr "key"
 
-#: builtin/for-each-ref.c:1084
+#: builtin/for-each-ref.c:1090
 msgid "field name to sort on"
 msgstr "排序的字段名"
 
-#: builtin/fsck.c:147 builtin/prune.c:136
+#: builtin/fsck.c:147 builtin/prune.c:137
 msgid "Checking connectivity"
 msgstr "检查连接中"
 
@@ -5448,8 +5484,8 @@ msgid "Checking object directories"
 msgstr "检查对象目录中"
 
 #: builtin/fsck.c:603
-msgid "git fsck [options] [<object>...]"
-msgstr "git fsck [选项] [<对象>...]"
+msgid "git fsck [<options>] [<object>...]"
+msgstr "git fsck [<选项>] [<对象>...]"
 
 #: builtin/fsck.c:609
 msgid "show unreachable objects"
@@ -5496,8 +5532,8 @@ msgid "Checking objects"
 msgstr "检查对象中"
 
 #: builtin/gc.c:24
-msgid "git gc [options]"
-msgstr "git gc [选项]"
+msgid "git gc [<options>]"
+msgstr "git gc [<选项>]"
 
 #: builtin/gc.c:79
 #, c-format
@@ -5553,8 +5589,8 @@ msgid ""
 msgstr "有太多不可达的松散对象,运行 'git prune' 删除它们。"
 
 #: builtin/grep.c:23
-msgid "git grep [options] [-e] <pattern> [<rev>...] [[--] <path>...]"
-msgstr "git grep [选项] [-e] <模式> [<修订>...] [[--] <路径>...]"
+msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
+msgstr "git grep [<选项>] [-e] <模式> [<版本>...] [[--] <路径>...]"
 
 #: builtin/grep.c:218
 #, c-format
@@ -5595,8 +5631,8 @@ msgid "search in both tracked and untracked files"
 msgstr "在跟踪和未跟踪的文件中搜索"
 
 #: builtin/grep.c:644
-msgid "search also in ignored files"
-msgstr "也在忽略的文件中搜索"
+msgid "ignore files specified via '.gitignore'"
+msgstr "忽略 '.gitignore' 包含的文件"
 
 #: builtin/grep.c:647
 msgid "show non-matching lines"
@@ -5780,17 +5816,17 @@ msgstr "同时给出了 --cached 和树对象。"
 
 #: builtin/hash-object.c:82
 msgid ""
-"git hash-object [-t <type>] [-w] [--path=<file>|--no-filters] [--stdin] [--] "
-"<file>..."
+"git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
+"[--] <file>..."
 msgstr ""
-"git hash-object [-t <类型>] [-w] [--path=<文件>|--no-filters] [--stdin] [--] "
-"<文件>..."
+"git hash-object [-t <类型>] [-w] [--path=<文件> | --no-filters] [--stdin] "
+"[--] <文件>..."
 
 #: builtin/hash-object.c:83
 msgid "git hash-object  --stdin-paths < <list-of-paths>"
 msgstr "git hash-object  --stdin-paths < <路径列表>"
 
-#: builtin/hash-object.c:94 builtin/tag.c:610
+#: builtin/hash-object.c:94 builtin/tag.c:612
 msgid "type"
 msgstr "类型"
 
@@ -5840,8 +5876,8 @@ msgid "show info page"
 msgstr "显示 info 手册"
 
 #: builtin/help.c:52
-msgid "git help [--all] [--guides] [--man|--web|--info] [command]"
-msgstr "git help [--all] [--guides] [--man|--web|--info] [命令]"
+msgid "git help [--all] [--guides] [--man | --web | --info] [<command>]"
+msgstr "git help [--all] [--guides] [--man | --web | --info] [<命令>]"
 
 #: builtin/help.c:64
 #, c-format
@@ -5873,7 +5909,7 @@ msgid ""
 "Please consider using 'man.<tool>.cmd' instead."
 msgstr ""
 "'%s':不支持的 man 手册查看器的路径。\n"
-"请使用 'man.<tool>.cmd'。"
+"请使用 'man.<工具>.cmd'。"
 
 #: builtin/help.c:227
 #, c-format
@@ -5882,63 +5918,63 @@ msgid ""
 "Please consider using 'man.<tool>.path' instead."
 msgstr ""
 "'%s': 支持的 man 手册查看器命令。\n"
-"请使用 'man.<tool>.path'。"
+"请使用 'man.<工具>.path'。"
 
-#: builtin/help.c:352
+#: builtin/help.c:354
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr "'%s':未知的 man 查看器。"
 
-#: builtin/help.c:369
+#: builtin/help.c:371
 msgid "no man viewer handled the request"
 msgstr "没有 man 查看器处理此请求"
 
-#: builtin/help.c:377
+#: builtin/help.c:379
 msgid "no info viewer handled the request"
 msgstr "没有 info 查看器处理此请求"
 
-#: builtin/help.c:423
+#: builtin/help.c:428
 msgid "Defining attributes per path"
 msgstr "定义路径的属性"
 
-#: builtin/help.c:424
+#: builtin/help.c:429
 msgid "Everyday Git With 20 Commands Or So"
 msgstr "每一天 Git 常用的约 20 条命令"
 
-#: builtin/help.c:425
+#: builtin/help.c:430
 msgid "A Git glossary"
 msgstr "Git 词汇表"
 
-#: builtin/help.c:426
+#: builtin/help.c:431
 msgid "Specifies intentionally untracked files to ignore"
 msgstr "忽略指定的未跟踪文件"
 
-#: builtin/help.c:427
+#: builtin/help.c:432
 msgid "Defining submodule properties"
 msgstr "定义子模组属性"
 
-#: builtin/help.c:428
+#: builtin/help.c:433
 msgid "Specifying revisions and ranges for Git"
 msgstr "指定 Git 的版本和版本范围"
 
-#: builtin/help.c:429
+#: builtin/help.c:434
 msgid "A tutorial introduction to Git (for version 1.5.1 or newer)"
 msgstr "一个 Git 教程(针对 1.5.1 或更新版本)"
 
-#: builtin/help.c:430
+#: builtin/help.c:435
 msgid "An overview of recommended workflows with Git"
 msgstr "Git 推荐的工作流概览"
 
-#: builtin/help.c:442
+#: builtin/help.c:447
 msgid "The common Git guides are:\n"
 msgstr "最常用的 Git 向导有:\n"
 
-#: builtin/help.c:463 builtin/help.c:480
+#: builtin/help.c:468 builtin/help.c:485
 #, c-format
 msgid "usage: %s%s"
 msgstr "用法:%s%s"
 
-#: builtin/help.c:496
+#: builtin/help.c:501
 #, c-format
 msgid "`git %s' is aliased to `%s'"
 msgstr "`git %s' 是 `%s' 的别名"
@@ -6049,8 +6085,8 @@ msgstr "解压缩严重的不一致"
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "发现 %s 出现 SHA1 冲突!"
 
-#: builtin/index-pack.c:689 builtin/pack-objects.c:164
-#: builtin/pack-objects.c:256
+#: builtin/index-pack.c:689 builtin/pack-objects.c:162
+#: builtin/pack-objects.c:254
 #, c-format
 msgid "unable to read %s"
 msgstr "不能读 %s"
@@ -6137,97 +6173,97 @@ msgid_plural "pack has %d unresolved deltas"
 msgstr[0] "包有 %d 个未解决的 delta"
 msgstr[1] "包有 %d 个未解决的 delta"
 
-#: builtin/index-pack.c:1220
+#: builtin/index-pack.c:1219
 #, c-format
 msgid "unable to deflate appended object (%d)"
 msgstr "不能压缩附加对象(%d)"
 
-#: builtin/index-pack.c:1299
+#: builtin/index-pack.c:1298
 #, c-format
 msgid "local object %s is corrupt"
 msgstr "本地对象 %s 已损坏"
 
-#: builtin/index-pack.c:1323
+#: builtin/index-pack.c:1322
 msgid "error while closing pack file"
 msgstr "关闭包文件时出错"
 
-#: builtin/index-pack.c:1336
+#: builtin/index-pack.c:1335
 #, c-format
 msgid "cannot write keep file '%s'"
 msgstr "无法写保留文件 '%s'"
 
-#: builtin/index-pack.c:1344
+#: builtin/index-pack.c:1343
 #, c-format
 msgid "cannot close written keep file '%s'"
 msgstr "无法关闭保留文件 '%s'"
 
-#: builtin/index-pack.c:1357
+#: builtin/index-pack.c:1356
 msgid "cannot store pack file"
 msgstr "无法存储包文件"
 
-#: builtin/index-pack.c:1368
+#: builtin/index-pack.c:1367
 msgid "cannot store index file"
 msgstr "无法存储索引文件"
 
-#: builtin/index-pack.c:1401
+#: builtin/index-pack.c:1400
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr "坏的 pack.indexversion=%<PRIu32>"
 
-#: builtin/index-pack.c:1407
+#: builtin/index-pack.c:1406
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "指定的线程数无效(%d)"
 
-#: builtin/index-pack.c:1411 builtin/index-pack.c:1590
+#: builtin/index-pack.c:1410 builtin/index-pack.c:1589
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "没有线程支持,忽略 %s"
 
-#: builtin/index-pack.c:1469
+#: builtin/index-pack.c:1468
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr "无法打开现存包文件 '%s'"
 
-#: builtin/index-pack.c:1471
+#: builtin/index-pack.c:1470
 #, c-format
 msgid "Cannot open existing pack idx file for '%s'"
 msgstr "无法为 %s 打开包索引文件"
 
-#: builtin/index-pack.c:1518
+#: builtin/index-pack.c:1517
 #, c-format
 msgid "non delta: %d object"
 msgid_plural "non delta: %d objects"
 msgstr[0] "非 delta:%d 个对象"
 msgstr[1] "非 delta:%d 个对象"
 
-#: builtin/index-pack.c:1525
+#: builtin/index-pack.c:1524
 #, c-format
 msgid "chain length = %d: %lu object"
 msgid_plural "chain length = %d: %lu objects"
 msgstr[0] "链长 = %d: %lu 对象"
 msgstr[1] "链长 = %d: %lu 对象"
 
-#: builtin/index-pack.c:1554
+#: builtin/index-pack.c:1553
 msgid "Cannot come back to cwd"
 msgstr "无法返回当前工作目录"
 
-#: builtin/index-pack.c:1602 builtin/index-pack.c:1605
-#: builtin/index-pack.c:1617 builtin/index-pack.c:1621
+#: builtin/index-pack.c:1601 builtin/index-pack.c:1604
+#: builtin/index-pack.c:1616 builtin/index-pack.c:1620
 #, c-format
 msgid "bad %s"
 msgstr "错误选项 %s"
 
-#: builtin/index-pack.c:1635
+#: builtin/index-pack.c:1634
 msgid "--fix-thin cannot be used without --stdin"
 msgstr "--fix-thin 不能和 --stdin 同时使用"
 
-#: builtin/index-pack.c:1639 builtin/index-pack.c:1648
+#: builtin/index-pack.c:1638 builtin/index-pack.c:1647
 #, c-format
 msgid "packfile name '%s' does not end with '.pack'"
 msgstr "包名 '%s' 没有以 '.pack' 结尾"
 
-#: builtin/index-pack.c:1656
+#: builtin/index-pack.c:1655
 msgid "--verify with no packfile name given"
 msgstr "--verify 没有提供包名参数"
 
@@ -6281,37 +6317,37 @@ msgstr "不能拷贝 '%s' 至 '%s'"
 msgid "ignoring template %s"
 msgstr "忽略模版 %s"
 
-#: builtin/init-db.c:133
+#: builtin/init-db.c:136
 #, c-format
 msgid "insanely long template path %s"
 msgstr "太长的模版路径 %s"
 
-#: builtin/init-db.c:141
+#: builtin/init-db.c:144
 #, c-format
 msgid "templates not found %s"
 msgstr "模版未找到 %s"
 
-#: builtin/init-db.c:154
+#: builtin/init-db.c:157
 #, c-format
 msgid "not copying templates of a wrong format version %d from '%s'"
 msgstr "没有从 '%2$s' 复制带有错误版本 %1$d 的模版"
 
-#: builtin/init-db.c:192
+#: builtin/init-db.c:197
 #, c-format
 msgid "insane git directory %s"
 msgstr "不正常的 git 目录 %s"
 
-#: builtin/init-db.c:323 builtin/init-db.c:326
+#: builtin/init-db.c:331 builtin/init-db.c:334
 #, c-format
 msgid "%s already exists"
 msgstr "%s 已经存在"
 
-#: builtin/init-db.c:355
+#: builtin/init-db.c:363
 #, c-format
 msgid "unable to handle file type %d"
 msgstr "不能处理 %d 类型的文件"
 
-#: builtin/init-db.c:358
+#: builtin/init-db.c:366
 #, c-format
 msgid "unable to move %s to %s"
 msgstr "不能移动 %s 至 %s"
@@ -6319,64 +6355,62 @@ msgstr "不能移动 %s 至 %s"
 #. TRANSLATORS: The first '%s' is either "Reinitialized
 #. existing" or "Initialized empty", the second " shared" or
 #. "", and the last '%s%s' is the verbatim directory name.
-#: builtin/init-db.c:418
+#: builtin/init-db.c:426
 #, c-format
 msgid "%s%s Git repository in %s%s\n"
 msgstr "%s%s Git 版本库于 %s%s\n"
 
-#: builtin/init-db.c:419
+#: builtin/init-db.c:427
 msgid "Reinitialized existing"
 msgstr "重新初始化现存的"
 
-#: builtin/init-db.c:419
+#: builtin/init-db.c:427
 msgid "Initialized empty"
 msgstr "初始化空的"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: builtin/init-db.c:420
+#: builtin/init-db.c:428
 msgid " shared"
 msgstr "共享"
 
-#: builtin/init-db.c:467
+#: builtin/init-db.c:475
 msgid ""
 "git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
-"shared[=<permissions>]] [directory]"
+"shared[=<permissions>]] [<directory>]"
 msgstr ""
 "git init [-q | --quiet] [--bare] [--template=<模板目录>] [--shared[=<权限>]] "
-"[目录]"
+"[<目录>]"
 
-#: builtin/init-db.c:490
+#: builtin/init-db.c:498
 msgid "permissions"
 msgstr "权限"
 
-#: builtin/init-db.c:491
+#: builtin/init-db.c:499
 msgid "specify that the git repository is to be shared amongst several users"
 msgstr "指定 git 版本库是多个用户之间共享的"
 
-#: builtin/init-db.c:493 builtin/prune-packed.c:57 builtin/repack.c:172
+#: builtin/init-db.c:501 builtin/prune-packed.c:57 builtin/repack.c:171
 msgid "be quiet"
 msgstr "保持安静"
 
-#: builtin/init-db.c:525 builtin/init-db.c:530
+#: builtin/init-db.c:533 builtin/init-db.c:538
 #, c-format
 msgid "cannot mkdir %s"
 msgstr "不能创建目录 %s"
 
-#: builtin/init-db.c:534
+#: builtin/init-db.c:542
 #, c-format
 msgid "cannot chdir to %s"
 msgstr "不能切换目录到 %s"
 
-#: builtin/init-db.c:555
+#: builtin/init-db.c:563
 #, c-format
 msgid ""
 "%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
 "dir=<directory>)"
-msgstr ""
-"不允许 %s(或 --work-tree=<directory>)而没有指定 %s(或 --git-"
-"dir=<directory>)"
+msgstr "不允许 %s(或 --work-tree=<目录>)而没有指定 %s(或 --git-dir=<目录>)"
 
-#: builtin/init-db.c:583
+#: builtin/init-db.c:591
 #, c-format
 msgid "Cannot access work tree '%s'"
 msgstr "不能访问工作区 '%s'"
@@ -6402,12 +6436,12 @@ msgid "trailer(s) to add"
 msgstr "要添加的签名"
 
 #: builtin/log.c:41
-msgid "git log [<options>] [<revision range>] [[--] <path>...]\n"
-msgstr "git log [<选项>] [<版本范围>] [[--] <路径>...]\n"
+msgid "git log [<options>] [<revision range>] [[--] <path>...]"
+msgstr "git log [<选项>] [<版本范围>] [[--] <路径>...]"
 
 #: builtin/log.c:42
-msgid "   or: git show [options] <object>..."
-msgstr "   或者:git show [选项] <对象>..."
+msgid "git show [<options>] <object>..."
+msgstr "git show [<选项>] <对象>..."
 
 #: builtin/log.c:81
 #, c-format
@@ -6485,8 +6519,8 @@ msgid "insane in-reply-to: %s"
 msgstr "不正常的 in-reply-to:%s"
 
 #: builtin/log.c:1026
-msgid "git format-patch [options] [<since> | <revision range>]"
-msgstr "git format-patch [选项] [<从> | <修订集范围>]"
+msgid "git format-patch [<options>] [<since> | <revision-range>]"
+msgstr "git format-patch [<选项>] [<从> | <版本范围>]"
 
 #: builtin/log.c:1071
 msgid "Two output directories?"
@@ -6534,7 +6568,7 @@ msgstr "使用 [<前缀>] 代替 [PATCH]"
 
 #: builtin/log.c:1208
 msgid "store resulting files in <dir>"
-msgstr "把结果文件存储在 <dir>"
+msgstr "把结果文件存储在 <目录>"
 
 #: builtin/log.c:1211
 msgid "don't strip/add [PATCH]"
@@ -6578,19 +6612,19 @@ msgstr "添加抄送"
 
 #: builtin/log.c:1227
 msgid "ident"
-msgstr "ident"
+msgstr "标识"
 
 #: builtin/log.c:1228
 msgid "set From address to <ident> (or committer ident if absent)"
-msgstr "设置 From 地址为 <ident>(如若不提供,用提交者ID做为地址)"
+msgstr "将 From 地址设置为 <标识>(如若不提供,则用提交者ID做为地址)"
 
 #: builtin/log.c:1230
 msgid "message-id"
-msgstr "message-id"
+msgstr "邮件标识"
 
 #: builtin/log.c:1231
 msgid "make first mail a reply to <message-id>"
-msgstr "使第一封邮件作为对 <message-id> 的回复"
+msgstr "使第一封邮件作为对 <邮件标识> 的回复"
 
 #: builtin/log.c:1232 builtin/log.c:1235
 msgid "boundary"
@@ -6675,102 +6709,102 @@ msgstr "git cherry [-v] [<上游> [<头> [<限制>]]]"
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
-msgstr "不能找到跟踪的远程分支,请手工指定 <upstream>。\n"
+msgstr "不能找到跟踪的远程分支,请手工指定 <上游>。\n"
 
 #: builtin/log.c:1651 builtin/log.c:1653 builtin/log.c:1665
 #, c-format
 msgid "Unknown commit %s"
 msgstr "未知提交 %s"
 
-#: builtin/ls-files.c:401
-msgid "git ls-files [options] [<file>...]"
-msgstr "git ls-files [选项] [<文件>...]"
+#: builtin/ls-files.c:358
+msgid "git ls-files [<options>] [<file>...]"
+msgstr "git ls-files [<选项>] [<文件>...]"
 
-#: builtin/ls-files.c:458
+#: builtin/ls-files.c:415
 msgid "identify the file status with tags"
 msgstr "用标签标识文件的状态"
 
-#: builtin/ls-files.c:460
+#: builtin/ls-files.c:417
 msgid "use lowercase letters for 'assume unchanged' files"
 msgstr "使用小写字母表示 '假设未改变的' 文件"
 
-#: builtin/ls-files.c:462
+#: builtin/ls-files.c:419
 msgid "show cached files in the output (default)"
 msgstr "显示缓存的文件(默认)"
 
-#: builtin/ls-files.c:464
+#: builtin/ls-files.c:421
 msgid "show deleted files in the output"
 msgstr "显示已删除的文件"
 
-#: builtin/ls-files.c:466
+#: builtin/ls-files.c:423
 msgid "show modified files in the output"
 msgstr "显示已修改的文件"
 
-#: builtin/ls-files.c:468
+#: builtin/ls-files.c:425
 msgid "show other files in the output"
 msgstr "显示其它文件"
 
-#: builtin/ls-files.c:470
+#: builtin/ls-files.c:427
 msgid "show ignored files in the output"
 msgstr "显示忽略的文件"
 
-#: builtin/ls-files.c:473
+#: builtin/ls-files.c:430
 msgid "show staged contents' object name in the output"
 msgstr "显示暂存区内容的对象名称"
 
-#: builtin/ls-files.c:475
+#: builtin/ls-files.c:432
 msgid "show files on the filesystem that need to be removed"
 msgstr "显示文件系统需要删除的文件"
 
-#: builtin/ls-files.c:477
+#: builtin/ls-files.c:434
 msgid "show 'other' directories' names only"
 msgstr "只显示“其他”目录的名称"
 
-#: builtin/ls-files.c:480
+#: builtin/ls-files.c:437
 msgid "don't show empty directories"
 msgstr "不显示空目录"
 
-#: builtin/ls-files.c:483
+#: builtin/ls-files.c:440
 msgid "show unmerged files in the output"
 msgstr "显示未合并的文件"
 
-#: builtin/ls-files.c:485
+#: builtin/ls-files.c:442
 msgid "show resolve-undo information"
 msgstr "显示 resolve-undo 信息"
 
-#: builtin/ls-files.c:487
+#: builtin/ls-files.c:444
 msgid "skip files matching pattern"
 msgstr "匹配排除文件的模式"
 
-#: builtin/ls-files.c:490
+#: builtin/ls-files.c:447
 msgid "exclude patterns are read from <file>"
 msgstr "从 <文件> 中读取排除模式"
 
-#: builtin/ls-files.c:493
+#: builtin/ls-files.c:450
 msgid "read additional per-directory exclude patterns in <file>"
 msgstr "从 <文件> 读取额外的每个目录的排除模式"
 
-#: builtin/ls-files.c:495
+#: builtin/ls-files.c:452
 msgid "add the standard git exclusions"
 msgstr "添加标准的 git 排除"
 
-#: builtin/ls-files.c:498
+#: builtin/ls-files.c:455
 msgid "make the output relative to the project top directory"
 msgstr "显示相对于顶级目录的文件名"
 
-#: builtin/ls-files.c:501
+#: builtin/ls-files.c:458
 msgid "if any <file> is not in the index, treat this as an error"
 msgstr "如果任何 <文件> 都不在索引区,视为错误"
 
-#: builtin/ls-files.c:502
+#: builtin/ls-files.c:459
 msgid "tree-ish"
 msgstr "树或提交"
 
-#: builtin/ls-files.c:503
+#: builtin/ls-files.c:460
 msgid "pretend that paths removed since <tree-ish> are still present"
 msgstr "假装自从 <树或提交> 之后删除的路径仍然存在"
 
-#: builtin/ls-files.c:505
+#: builtin/ls-files.c:462
 msgid "show debugging data"
 msgstr "显示调试数据"
 
@@ -6778,212 +6812,212 @@ msgstr "显示调试数据"
 msgid "git ls-tree [<options>] <tree-ish> [<path>...]"
 msgstr "git ls-tree [<选项>] <树或提交> [<路径>...]"
 
-#: builtin/ls-tree.c:126
+#: builtin/ls-tree.c:127
 msgid "only show trees"
 msgstr "只显示树"
 
-#: builtin/ls-tree.c:128
+#: builtin/ls-tree.c:129
 msgid "recurse into subtrees"
 msgstr "递归到子树"
 
-#: builtin/ls-tree.c:130
+#: builtin/ls-tree.c:131
 msgid "show trees when recursing"
 msgstr "当递归时显示树"
 
-#: builtin/ls-tree.c:133
+#: builtin/ls-tree.c:134
 msgid "terminate entries with NUL byte"
 msgstr "条目以NUL字符终止"
 
-#: builtin/ls-tree.c:134
+#: builtin/ls-tree.c:135
 msgid "include object size"
 msgstr "包括对象大小"
 
-#: builtin/ls-tree.c:136 builtin/ls-tree.c:138
+#: builtin/ls-tree.c:137 builtin/ls-tree.c:139
 msgid "list only filenames"
 msgstr "只列出文件名"
 
-#: builtin/ls-tree.c:141
+#: builtin/ls-tree.c:142
 msgid "use full path names"
 msgstr "使用文件的全路径"
 
-#: builtin/ls-tree.c:143
+#: builtin/ls-tree.c:144
 msgid "list entire tree; not just current directory (implies --full-name)"
 msgstr "列出整个树;不仅仅当前目录(隐含 --full-name)"
 
-#: builtin/merge.c:44
-msgid "git merge [options] [<commit>...]"
-msgstr "git merge [选项] [<提交>...]"
-
 #: builtin/merge.c:45
-msgid "git merge [options] <msg> HEAD <commit>"
-msgstr "git merge [选项] <说明> HEAD <提交>"
+msgid "git merge [<options>] [<commit>...]"
+msgstr "git merge [<选项>] [<提交>...]"
 
 #: builtin/merge.c:46
+msgid "git merge [<options>] <msg> HEAD <commit>"
+msgstr "git merge [<选项>] <说明> HEAD <提交>"
+
+#: builtin/merge.c:47
 msgid "git merge --abort"
 msgstr "git merge --abort"
 
-#: builtin/merge.c:99
+#: builtin/merge.c:100
 msgid "switch `m' requires a value"
 msgstr "开关 `m' 需要一个值"
 
-#: builtin/merge.c:136
+#: builtin/merge.c:137
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr "不能找到合并策略 '%s'。\n"
 
-#: builtin/merge.c:137
+#: builtin/merge.c:138
 #, c-format
 msgid "Available strategies are:"
 msgstr "可用的策略有:"
 
-#: builtin/merge.c:142
+#: builtin/merge.c:143
 #, c-format
 msgid "Available custom strategies are:"
 msgstr "可用的自定义策略有:"
 
-#: builtin/merge.c:192
+#: builtin/merge.c:193
 msgid "do not show a diffstat at the end of the merge"
 msgstr "在合并的最后不显示差异统计"
 
-#: builtin/merge.c:195
+#: builtin/merge.c:196
 msgid "show a diffstat at the end of the merge"
 msgstr "在合并的最后显示差异统计"
 
-#: builtin/merge.c:196
+#: builtin/merge.c:197
 msgid "(synonym to --stat)"
 msgstr "(和 --stat 同义)"
 
-#: builtin/merge.c:198
+#: builtin/merge.c:199
 msgid "add (at most <n>) entries from shortlog to merge commit message"
 msgstr "在合并提交信息中添加(最多 <n> 条)精简提交记录"
 
-#: builtin/merge.c:201
+#: builtin/merge.c:202
 msgid "create a single commit instead of doing a merge"
 msgstr "创建一个单独的提交而不是做一次合并"
 
-#: builtin/merge.c:203
+#: builtin/merge.c:204
 msgid "perform a commit if the merge succeeds (default)"
 msgstr "如果合并成功,执行一次提交(默认)"
 
-#: builtin/merge.c:205
+#: builtin/merge.c:206
 msgid "edit message before committing"
 msgstr "在提交前编辑提交说明"
 
-#: builtin/merge.c:206
+#: builtin/merge.c:207
 msgid "allow fast-forward (default)"
 msgstr "允许快进(默认)"
 
-#: builtin/merge.c:208
+#: builtin/merge.c:209
 msgid "abort if fast-forward is not possible"
 msgstr "如果不能快进就放弃合并"
 
-#: builtin/merge.c:212
+#: builtin/merge.c:213
 msgid "Verify that the named commit has a valid GPG signature"
 msgstr "验证指定的提交是否包含一个有效的 GPG 签名"
 
-#: builtin/merge.c:213 builtin/notes.c:741 builtin/revert.c:89
+#: builtin/merge.c:214 builtin/notes.c:753 builtin/revert.c:89
 msgid "strategy"
 msgstr "策略"
 
-#: builtin/merge.c:214
+#: builtin/merge.c:215
 msgid "merge strategy to use"
 msgstr "要使用的合并策略"
 
-#: builtin/merge.c:215
+#: builtin/merge.c:216
 msgid "option=value"
 msgstr "option=value"
 
-#: builtin/merge.c:216
+#: builtin/merge.c:217
 msgid "option for selected merge strategy"
 msgstr "所选的合并策略的选项"
 
-#: builtin/merge.c:218
+#: builtin/merge.c:219
 msgid "merge commit message (for a non-fast-forward merge)"
 msgstr "合并的提交说明(针对非快进式合并)"
 
-#: builtin/merge.c:222
+#: builtin/merge.c:223
 msgid "abort the current in-progress merge"
 msgstr "放弃当前正在进行的合并"
 
-#: builtin/merge.c:250
+#: builtin/merge.c:251
 msgid "could not run stash."
 msgstr "不能进行进度保存。"
 
-#: builtin/merge.c:255
+#: builtin/merge.c:256
 msgid "stash failed"
 msgstr "进度保存失败"
 
-#: builtin/merge.c:260
+#: builtin/merge.c:261
 #, c-format
 msgid "not a valid object: %s"
 msgstr "不是一个有效对象:%s"
 
-#: builtin/merge.c:279 builtin/merge.c:296
+#: builtin/merge.c:280 builtin/merge.c:297
 msgid "read-tree failed"
 msgstr "读取树失败"
 
 #  译者:注意保持前导空格
-#: builtin/merge.c:326
+#: builtin/merge.c:327
 msgid " (nothing to squash)"
 msgstr " (无可压缩)"
 
-#: builtin/merge.c:339
+#: builtin/merge.c:340
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr "压缩提交 -- 未更新 HEAD\n"
 
-#: builtin/merge.c:371
+#: builtin/merge.c:372
 msgid "Writing SQUASH_MSG"
 msgstr "写入 SQUASH_MSG"
 
-#: builtin/merge.c:373
+#: builtin/merge.c:374
 msgid "Finishing SQUASH_MSG"
 msgstr "完成 SQUASH_MSG"
 
-#: builtin/merge.c:396
+#: builtin/merge.c:397
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr "无合并信息 -- 未更新 HEAD\n"
 
-#: builtin/merge.c:446
+#: builtin/merge.c:447
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr "'%s' 没有指向一个提交"
 
-#: builtin/merge.c:558
+#: builtin/merge.c:559
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "坏的 branch.%s.mergeoptions 字符串:%s"
 
-#: builtin/merge.c:653
+#: builtin/merge.c:654
 msgid "git write-tree failed to write a tree"
 msgstr "git write-tree 无法写入一树对象"
 
-#: builtin/merge.c:677
+#: builtin/merge.c:678
 msgid "Not handling anything other than two heads merge."
 msgstr "不能处理两个头合并之外的任何操作。"
 
-#: builtin/merge.c:691
+#: builtin/merge.c:692
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "merge-recursive 的未知选项:-X%s"
 
-#: builtin/merge.c:704
+#: builtin/merge.c:705
 #, c-format
 msgid "unable to write %s"
 msgstr "不能写 %s"
 
-#: builtin/merge.c:793
+#: builtin/merge.c:794
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "不能从 '%s' 读取"
 
-#: builtin/merge.c:802
+#: builtin/merge.c:803
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr "未提交合并,使用 'git commit' 完成此次合并。\n"
 
-#: builtin/merge.c:808
+#: builtin/merge.c:809
 #, c-format
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
@@ -6997,47 +7031,47 @@ msgstr ""
 "\n"
 "以 '%c' 开头的行将被忽略,而且空提交说明将会终止提交。\n"
 
-#: builtin/merge.c:832
+#: builtin/merge.c:833
 msgid "Empty commit message."
 msgstr "空提交信息。"
 
-#: builtin/merge.c:844
+#: builtin/merge.c:845
 #, c-format
 msgid "Wonderful.\n"
 msgstr "太棒了。\n"
 
-#: builtin/merge.c:907
+#: builtin/merge.c:900
 #, c-format
 msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 msgstr "自动合并失败,修正冲突然后提交修正的结果。\n"
 
-#: builtin/merge.c:923
+#: builtin/merge.c:916
 #, c-format
 msgid "'%s' is not a commit"
 msgstr "'%s' 不是一个提交"
 
-#: builtin/merge.c:964
+#: builtin/merge.c:957
 msgid "No current branch."
 msgstr "没有当前分支。"
 
-#: builtin/merge.c:966
+#: builtin/merge.c:959
 msgid "No remote for the current branch."
 msgstr "当前分支没有对应的远程版本库。"
 
-#: builtin/merge.c:968
+#: builtin/merge.c:961
 msgid "No default upstream defined for the current branch."
 msgstr "当前分支没有定义默认的上游分支。"
 
-#: builtin/merge.c:973
+#: builtin/merge.c:966
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr "对于 %s 没有来自 %s 的远程跟踪分支"
 
-#: builtin/merge.c:1129
+#: builtin/merge.c:1122
 msgid "There is no merge to abort (MERGE_HEAD missing)."
 msgstr "没有要终止的合并(MERGE_HEAD 丢失)。"
 
-#: builtin/merge.c:1145
+#: builtin/merge.c:1138
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -7045,11 +7079,11 @@ msgstr ""
 "您尚未结束您的合并(存在 MERGE_HEAD)。\n"
 "请在合并前先提交您的修改。"
 
-#: builtin/merge.c:1148 git-pull.sh:34
+#: builtin/merge.c:1141 git-pull.sh:34
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "您尚未结束您的合并(存在 MERGE_HEAD)。"
 
-#: builtin/merge.c:1152
+#: builtin/merge.c:1145
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -7057,111 +7091,111 @@ msgstr ""
 "您尚未结束您的拣选(存在 CHERRY_PICK_HEAD)。\n"
 "请在合并前先提交您的修改。"
 
-#: builtin/merge.c:1155
+#: builtin/merge.c:1148
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
 msgstr "您尚未结束您的拣选(存在 CHERRY_PICK_HEAD)。"
 
-#: builtin/merge.c:1164
+#: builtin/merge.c:1157
 msgid "You cannot combine --squash with --no-ff."
 msgstr "您不能将 --squash 与 --no-ff 同时使用。"
 
-#: builtin/merge.c:1173
+#: builtin/merge.c:1166
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr "未指定提交并且 merge.defaultToUpstream 未设置。"
 
-#: builtin/merge.c:1205
+#: builtin/merge.c:1198
 msgid "Can merge only exactly one commit into empty head"
 msgstr "只能将一个提交合并到空分支上"
 
-#: builtin/merge.c:1208
+#: builtin/merge.c:1201
 msgid "Squash commit into empty head not supported yet"
 msgstr "尚不支持到空分支的压缩提交"
 
-#: builtin/merge.c:1210
+#: builtin/merge.c:1203
 msgid "Non-fast-forward commit does not make sense into an empty head"
 msgstr "到空分支的非快进式提交没有意义"
 
-#: builtin/merge.c:1215
+#: builtin/merge.c:1208
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - 不能被合并"
 
-#: builtin/merge.c:1266
+#: builtin/merge.c:1259
 #, c-format
 msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
 msgstr "提交 %s 有一个非可信的声称来自 %s 的 GPG 签名。"
 
-#: builtin/merge.c:1269
+#: builtin/merge.c:1262
 #, c-format
 msgid "Commit %s has a bad GPG signature allegedly by %s."
 msgstr "提交 %s 有一个错误的声称来自 %s 的 GPG 签名。"
 
-#: builtin/merge.c:1272
+#: builtin/merge.c:1265
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr "提交 %s 没有一个 GPG 签名。"
 
-#: builtin/merge.c:1275
+#: builtin/merge.c:1268
 #, c-format
 msgid "Commit %s has a good GPG signature by %s\n"
 msgstr "提交 %s 有一个来自 %s 的好的 GPG 签名。\n"
 
-#: builtin/merge.c:1356
+#: builtin/merge.c:1349
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "更新 %s..%s\n"
 
-#: builtin/merge.c:1395
+#: builtin/merge.c:1388
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "尝试非常小的索引内合并...\n"
 
-#: builtin/merge.c:1402
+#: builtin/merge.c:1395
 #, c-format
 msgid "Nope.\n"
 msgstr "无。\n"
 
-#: builtin/merge.c:1434
+#: builtin/merge.c:1427
 msgid "Not possible to fast-forward, aborting."
 msgstr "无法快进,终止。"
 
-#: builtin/merge.c:1457 builtin/merge.c:1536
+#: builtin/merge.c:1450 builtin/merge.c:1529
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "将树回滚至原始状态...\n"
 
-#: builtin/merge.c:1461
+#: builtin/merge.c:1454
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "尝试合并策略 %s...\n"
 
-#: builtin/merge.c:1527
+#: builtin/merge.c:1520
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr "没有合并策略处理此合并。\n"
 
-#: builtin/merge.c:1529
+#: builtin/merge.c:1522
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "使用策略 %s 合并失败。\n"
 
-#: builtin/merge.c:1538
+#: builtin/merge.c:1531
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
 msgstr "使用 %s 以准备手工解决。\n"
 
-#: builtin/merge.c:1550
+#: builtin/merge.c:1543
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr "自动合并进展顺利,按要求在提交前停止\n"
 
 #: builtin/merge-base.c:29
-msgid "git merge-base [-a|--all] <commit> <commit>..."
-msgstr "git merge-base [-a|--all] <提交> <提交>..."
+msgid "git merge-base [-a | --all] <commit> <commit>..."
+msgstr "git merge-base [-a | --all] <提交> <提交>..."
 
 #: builtin/merge-base.c:30
-msgid "git merge-base [-a|--all] --octopus <commit>..."
-msgstr "git merge-base [-a|--all] --octopus <提交>..."
+msgid "git merge-base [-a | --all] --octopus <commit>..."
+msgstr "git merge-base [-a | --all] --octopus <提交>..."
 
 #: builtin/merge-base.c:31
 msgid "git merge-base --independent <commit>..."
@@ -7173,7 +7207,7 @@ msgstr "git merge-base --is-ancestor <提交> <提交>"
 
 #: builtin/merge-base.c:33
 msgid "git merge-base --fork-point <ref> [<commit>]"
-msgstr "git merge-base --fork-point <提交> [<提交>]"
+msgstr "git merge-base --fork-point <引用> [<提交>]"
 
 #: builtin/merge-base.c:214
 msgid "output all common ancestors"
@@ -7193,14 +7227,15 @@ msgstr "第一个是其他的祖先提交么?"
 
 #: builtin/merge-base.c:222
 msgid "find where <commit> forked from reflog of <ref>"
-msgstr "查找 <commit> 从<引用>日志的何处分支的"
+msgstr "查找 <提交> 从<引用>日志的何处分支的"
 
 #: builtin/merge-file.c:8
 msgid ""
-"git merge-file [options] [-L name1 [-L orig [-L name2]]] file1 orig_file "
-"file2"
+"git merge-file [<options>] [-L <name1> [-L <orig> [-L <name2>]]] <file1> "
+"<orig-file> <file2>"
 msgstr ""
-"git merge-file [选项] [-L name1 [-L orig [-L name2]]] file1 orig_file file2"
+"git merge-file [<选项>] [-L <文件1> [-L <初始> [-L <名字2>]]] <文件1> <初始文"
+"件> <文件2>"
 
 #: builtin/merge-file.c:33
 msgid "send results to standard output"
@@ -7231,8 +7266,8 @@ msgid "do not warn about conflicts"
 msgstr "不要警告冲突"
 
 #: builtin/merge-file.c:45
-msgid "set labels for file1/orig_file/file2"
-msgstr "为 file1/orig_file/file2 设置标签"
+msgid "set labels for file1/orig-file/file2"
+msgstr "为 文件1/初始文件/文件2 设置标签"
 
 #: builtin/mktree.c:64
 msgid "git mktree [-z] [--missing] [--batch]"
@@ -7251,8 +7286,8 @@ msgid "allow creation of more than one tree"
 msgstr "允许创建一个以上的树"
 
 #: builtin/mv.c:15
-msgid "git mv [options] <source>... <destination>"
-msgstr "git mv [选项] <源>... <目标>"
+msgid "git mv [<options>] <source>... <destination>"
+msgstr "git mv [<选项>] <源>... <目标>"
 
 #: builtin/mv.c:69
 #, c-format
@@ -7337,22 +7372,22 @@ msgstr "%s,源=%s,目标=%s"
 msgid "Renaming %s to %s\n"
 msgstr "重命名 %s 至 %s\n"
 
-#: builtin/mv.c:256 builtin/remote.c:726 builtin/repack.c:358
+#: builtin/mv.c:256 builtin/remote.c:728 builtin/repack.c:359
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "重命名 '%s' 失败"
 
 #: builtin/name-rev.c:255
-msgid "git name-rev [options] <commit>..."
-msgstr "git name-rev [选项] <提交>..."
+msgid "git name-rev [<options>] <commit>..."
+msgstr "git name-rev [<选项>] <提交>..."
 
 #: builtin/name-rev.c:256
-msgid "git name-rev [options] --all"
-msgstr "git name-rev [选项] --all"
+msgid "git name-rev [<options>] --all"
+msgstr "git name-rev [<选项>] --all"
 
 #: builtin/name-rev.c:257
-msgid "git name-rev [options] --stdin"
-msgstr "git name-rev [选项] --stdin"
+msgid "git name-rev [<options>] --stdin"
+msgstr "git name-rev [<选项>] --stdin"
 
 #: builtin/name-rev.c:309
 msgid "print only names (no SHA-1)"
@@ -7383,40 +7418,40 @@ msgid "dereference tags in the input (internal use)"
 msgstr "反向解析输入中的 tags(内部使用)"
 
 #: builtin/notes.c:24
-msgid "git notes [--ref <notes_ref>] [list [<object>]]"
+msgid "git notes [--ref <notes-ref>] [list [<object>]]"
 msgstr "git notes [--ref <注解引用>] [list [<对象>]]"
 
 #: builtin/notes.c:25
 msgid ""
-"git notes [--ref <notes_ref>] add [-f] [-m <msg> | -F <file> | (-c | -C) "
-"<object>] [<object>]"
+"git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <msg> | -F <file> "
+"| (-c | -C) <object>] [<object>]"
 msgstr ""
-"git notes [--ref <注解引用>] add [-f] [-m <说明> | -F <文件> | (-c | -C) <对"
-"象>] [<对象>]"
+"git notes [--ref <注解引用>] add [-f] [--allow-empty] [-m <说明> | -F <文件> "
+"| (-c | -C) <对象>] [<对象>]"
 
 #: builtin/notes.c:26
-msgid "git notes [--ref <notes_ref>] copy [-f] <from-object> <to-object>"
+msgid "git notes [--ref <notes-ref>] copy [-f] <from-object> <to-object>"
 msgstr "git notes [--ref <注解引用>] copy [-f] <源对象> <目标对象>"
 
 #: builtin/notes.c:27
 msgid ""
-"git notes [--ref <notes_ref>] append [-m <msg> | -F <file> | (-c | -C) "
-"<object>] [<object>]"
+"git notes [--ref <notes-ref>] append [--allow-empty] [-m <msg> | -F <file> | "
+"(-c | -C) <object>] [<object>]"
 msgstr ""
-"git notes [--ref <注解引用>] append [-m <说明> | -F <文件> | (-c | -C) <对象"
-">] [<对象>]"
+"git notes [--ref <注解引用>] append [--allow-empty] [-m <说明> | -F <文件> | "
+"(-c | -C) <对象>] [<对象>]"
 
 #: builtin/notes.c:28
-msgid "git notes [--ref <notes_ref>] edit [<object>]"
-msgstr "git notes [--ref <注解引用>] edit [<对象>]"
+msgid "git notes [--ref <notes-ref>] edit [--allow-empty] [<object>]"
+msgstr "git notes [--ref <注解引用>] edit [--allow-empty] [<对象>]"
 
 #: builtin/notes.c:29
-msgid "git notes [--ref <notes_ref>] show [<object>]"
+msgid "git notes [--ref <notes-ref>] show [<object>]"
 msgstr "git notes [--ref <注解引用>] show [<对象>]"
 
 #: builtin/notes.c:30
 msgid ""
-"git notes [--ref <notes_ref>] merge [-v | -q] [-s <strategy> ] <notes_ref>"
+"git notes [--ref <notes-ref>] merge [-v | -q] [-s <strategy>] <notes-ref>"
 msgstr "git notes [--ref <注解引用>] merge [-v | -q] [-s <策略> ] <注解引用>"
 
 #: builtin/notes.c:31
@@ -7428,15 +7463,15 @@ msgid "git notes merge --abort [-v | -q]"
 msgstr "git notes merge --abort [-v | -q]"
 
 #: builtin/notes.c:33
-msgid "git notes [--ref <notes_ref>] remove [<object>...]"
+msgid "git notes [--ref <notes-ref>] remove [<object>...]"
 msgstr "git notes [--ref <注解引用>] remove [<对象>...]"
 
 #: builtin/notes.c:34
-msgid "git notes [--ref <notes_ref>] prune [-n | -v]"
+msgid "git notes [--ref <notes-ref>] prune [-n | -v]"
 msgstr "git notes [--ref <注解引用>] prune [-n | -v]"
 
 #: builtin/notes.c:35
-msgid "git notes [--ref <notes_ref>] get-ref"
+msgid "git notes [--ref <notes-ref>] get-ref"
 msgstr "git notes [--ref <注解引用>] get-ref"
 
 #: builtin/notes.c:40
@@ -7468,7 +7503,7 @@ msgid "git notes show [<object>]"
 msgstr "git notes show [<对象>]"
 
 #: builtin/notes.c:71
-msgid "git notes merge [<options>] <notes_ref>"
+msgid "git notes merge [<options>] <notes-ref>"
 msgstr "git notes merge [<选项>] <注解引用>"
 
 #: builtin/notes.c:72
@@ -7491,154 +7526,158 @@ msgstr "git notes prune [<选项>]"
 msgid "git notes get-ref"
 msgstr "git notes get-ref"
 
-#: builtin/notes.c:136
+#: builtin/notes.c:146
 #, c-format
 msgid "unable to start 'show' for object '%s'"
 msgstr "不能为对象 '%s' 开始 'show'"
 
-#: builtin/notes.c:140
+#: builtin/notes.c:150
 msgid "could not read 'show' output"
 msgstr "不能读取 'show' 的输出"
 
-#: builtin/notes.c:148
+#: builtin/notes.c:158
 #, c-format
 msgid "failed to finish 'show' for object '%s'"
 msgstr "无法为对象 '%s' 完成 'show'"
 
-#: builtin/notes.c:166 builtin/tag.c:477
+#: builtin/notes.c:173 builtin/tag.c:477
 #, c-format
 msgid "could not create file '%s'"
 msgstr "不能创建文件 '%s'"
 
-#: builtin/notes.c:185
+#: builtin/notes.c:192
 msgid "Please supply the note contents using either -m or -F option"
 msgstr "请通过 -m 或 -F 选项为注解提供内容"
 
-#: builtin/notes.c:206 builtin/notes.c:847
-#, c-format
-msgid "Removing note for object %s\n"
-msgstr "删除对象 %s 的注解\n"
-
-#: builtin/notes.c:211
+#: builtin/notes.c:201
 msgid "unable to write note object"
 msgstr "不能写注解对象"
 
-#: builtin/notes.c:213
+#: builtin/notes.c:203
 #, c-format
 msgid "The note contents have been left in %s"
 msgstr "注解内容被留在 %s 中"
 
-#: builtin/notes.c:247 builtin/tag.c:693
+#: builtin/notes.c:231 builtin/tag.c:693
 #, c-format
 msgid "cannot read '%s'"
 msgstr "不能读取 '%s'"
 
-#: builtin/notes.c:249 builtin/tag.c:696
+#: builtin/notes.c:233 builtin/tag.c:696
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "不能打开或读取 '%s'"
 
-#: builtin/notes.c:268 builtin/notes.c:319 builtin/notes.c:321
-#: builtin/notes.c:381 builtin/notes.c:435 builtin/notes.c:518
-#: builtin/notes.c:523 builtin/notes.c:598 builtin/notes.c:640
-#: builtin/notes.c:842 builtin/tag.c:709
+#: builtin/notes.c:252 builtin/notes.c:303 builtin/notes.c:305
+#: builtin/notes.c:365 builtin/notes.c:420 builtin/notes.c:506
+#: builtin/notes.c:511 builtin/notes.c:589 builtin/notes.c:652
+#: builtin/notes.c:854 builtin/tag.c:709
 #, c-format
 msgid "Failed to resolve '%s' as a valid ref."
 msgstr "无法解析 '%s' 为一个有效引用。"
 
-#: builtin/notes.c:271
+#: builtin/notes.c:255
 #, c-format
 msgid "Failed to read object '%s'."
 msgstr "无法读取对象 '%s'。"
 
-#: builtin/notes.c:275
+#: builtin/notes.c:259
 #, c-format
 msgid "Cannot read note data from non-blob object '%s'."
 msgstr "不能从非数据对象 '%s' 中读取注解数据"
 
-#: builtin/notes.c:315
+#: builtin/notes.c:299
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "非法的输入行:'%s'。"
 
-#: builtin/notes.c:330
+#: builtin/notes.c:314
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "无法从 '%s' 到 '%s' 拷贝注解"
 
-#: builtin/notes.c:374 builtin/notes.c:428 builtin/notes.c:501
-#: builtin/notes.c:513 builtin/notes.c:586 builtin/notes.c:633
-#: builtin/notes.c:907
+#: builtin/notes.c:358 builtin/notes.c:413 builtin/notes.c:489
+#: builtin/notes.c:501 builtin/notes.c:577 builtin/notes.c:645
+#: builtin/notes.c:919
 msgid "too many parameters"
 msgstr "参数太多"
 
-#: builtin/notes.c:387 builtin/notes.c:646
+#: builtin/notes.c:371 builtin/notes.c:658
 #, c-format
 msgid "No note found for object %s."
 msgstr "未发现对象 %s 的注解。"
 
-#: builtin/notes.c:409 builtin/notes.c:566
+#: builtin/notes.c:392 builtin/notes.c:555
 msgid "note contents as a string"
 msgstr "注解内容作为一个字符串"
 
-#: builtin/notes.c:412 builtin/notes.c:569
+#: builtin/notes.c:395 builtin/notes.c:558
 msgid "note contents in a file"
 msgstr "注解内容到一个文件中"
 
-#: builtin/notes.c:414 builtin/notes.c:417 builtin/notes.c:571
-#: builtin/notes.c:574 builtin/tag.c:628
+#: builtin/notes.c:397 builtin/notes.c:400 builtin/notes.c:560
+#: builtin/notes.c:563 builtin/tag.c:628
 msgid "object"
 msgstr "对象"
 
-#: builtin/notes.c:415 builtin/notes.c:572
+#: builtin/notes.c:398 builtin/notes.c:561
 msgid "reuse and edit specified note object"
 msgstr "重用和编辑指定的注解对象"
 
-#: builtin/notes.c:418 builtin/notes.c:575
+#: builtin/notes.c:401 builtin/notes.c:564
 msgid "reuse specified note object"
 msgstr "重用指定的注解对象"
 
-#: builtin/notes.c:420 builtin/notes.c:488
+#: builtin/notes.c:404 builtin/notes.c:567
+msgid "allow storing empty note"
+msgstr "允许保存空白注释"
+
+#: builtin/notes.c:405 builtin/notes.c:476
 msgid "replace existing notes"
 msgstr "替换已存在的注解"
 
-#: builtin/notes.c:454
+#: builtin/notes.c:430
 #, c-format
 msgid ""
 "Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
 "existing notes"
 msgstr "不能添加注解。发现对象 %s 已存在注解。使用 '-f' 覆盖现存注解"
 
-#: builtin/notes.c:459 builtin/notes.c:536
+#: builtin/notes.c:445 builtin/notes.c:524
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr "覆盖对象 %s 现存注解\n"
 
-#: builtin/notes.c:489
+#: builtin/notes.c:456 builtin/notes.c:617 builtin/notes.c:859
+#, c-format
+msgid "Removing note for object %s\n"
+msgstr "删除对象 %s 的注解\n"
+
+#: builtin/notes.c:477
 msgid "read objects from stdin"
 msgstr "从标准输入读取对象"
 
-#: builtin/notes.c:491
+#: builtin/notes.c:479
 msgid "load rewriting config for <command> (implies --stdin)"
 msgstr "重新加载 <命令> 的配置(隐含 --stdin)"
 
-#: builtin/notes.c:509
+#: builtin/notes.c:497
 msgid "too few parameters"
 msgstr "参数太少"
 
-#: builtin/notes.c:530
+#: builtin/notes.c:518
 #, c-format
 msgid ""
 "Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
 "existing notes"
 msgstr "不能拷贝注解。发现对象 %s 已存在注解。使用 '-f' 覆盖现存注解"
 
-#: builtin/notes.c:542
+#: builtin/notes.c:530
 #, c-format
 msgid "Missing notes on source object %s. Cannot copy."
 msgstr "源对象 %s 缺少注解。不能拷贝。"
 
-#: builtin/notes.c:591
+#: builtin/notes.c:582
 #, c-format
 msgid ""
 "The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
@@ -7647,58 +7686,58 @@ msgstr ""
 "子命令 'edit' 的选项 -m/-F/-c/-C 已弃用。\n"
 "请换用 'git notes add -f -m/-F/-c/-C'。\n"
 
-#: builtin/notes.c:738
+#: builtin/notes.c:750
 msgid "General options"
 msgstr "通用选项"
 
-#: builtin/notes.c:740
+#: builtin/notes.c:752
 msgid "Merge options"
 msgstr "合并选项"
 
-#: builtin/notes.c:742
+#: builtin/notes.c:754
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
 msgstr "使用指定的策略解决注解冲突 (manual/ours/theirs/union/cat_sort_uniq)"
 
-#: builtin/notes.c:744
+#: builtin/notes.c:756
 msgid "Committing unmerged notes"
 msgstr "提交未合并的注解"
 
-#: builtin/notes.c:746
+#: builtin/notes.c:758
 msgid "finalize notes merge by committing unmerged notes"
 msgstr "通过提交未合并的注解来完成注解合并"
 
-#: builtin/notes.c:748
+#: builtin/notes.c:760
 msgid "Aborting notes merge resolution"
 msgstr "中止注解合并的方案"
 
-#: builtin/notes.c:750
+#: builtin/notes.c:762
 msgid "abort notes merge"
 msgstr "中止注解合并"
 
-#: builtin/notes.c:845
+#: builtin/notes.c:857
 #, c-format
 msgid "Object %s has no note\n"
 msgstr "对象 %s 没有注解\n"
 
-#: builtin/notes.c:857
+#: builtin/notes.c:869
 msgid "attempt to remove non-existent note is not an error"
 msgstr "尝试删除不存在的注解不是一个错误"
 
-#: builtin/notes.c:860
+#: builtin/notes.c:872
 msgid "read object names from the standard input"
 msgstr "从标准输入读取对象名称"
 
-#: builtin/notes.c:941
+#: builtin/notes.c:953
 msgid "notes-ref"
 msgstr "注解引用"
 
-#: builtin/notes.c:942
-msgid "use notes from <notes_ref>"
+#: builtin/notes.c:954
+msgid "use notes from <notes-ref>"
 msgstr "从 <注解引用> 使用注解"
 
-#: builtin/notes.c:977 builtin/remote.c:1624
+#: builtin/notes.c:989 builtin/remote.c:1621
 #, c-format
 msgid "Unknown subcommand: %s"
 msgstr "未知子命令:%s"
@@ -7711,182 +7750,186 @@ msgstr "git pack-objects --stdout [选项...] [< 引用列表 | < 对象列表]"
 msgid "git pack-objects [options...] base-name [< ref-list | < object-list]"
 msgstr "git pack-objects [选项...] base-name [< 引用列表 | < 对象列表]"
 
-#: builtin/pack-objects.c:177 builtin/pack-objects.c:180
+#: builtin/pack-objects.c:175 builtin/pack-objects.c:178
 #, c-format
 msgid "deflate error (%d)"
 msgstr "压缩错误 (%d)"
 
-#: builtin/pack-objects.c:773
+#: builtin/pack-objects.c:771
 msgid "Writing objects"
 msgstr "写入对象中"
 
-#: builtin/pack-objects.c:1015
+#: builtin/pack-objects.c:1013
 msgid "disabling bitmap writing, as some objects are not being packed"
 msgstr "禁用 bitmap 写入,因为一些对象将不会被打包"
 
-#: builtin/pack-objects.c:2175
+#: builtin/pack-objects.c:2173
 msgid "Compressing objects"
 msgstr "压缩对象中"
 
-#: builtin/pack-objects.c:2572
+#: builtin/pack-objects.c:2570
 #, c-format
 msgid "unsupported index version %s"
 msgstr "不支持的索引版本 %s"
 
-#: builtin/pack-objects.c:2576
+#: builtin/pack-objects.c:2574
 #, c-format
 msgid "bad index version '%s'"
 msgstr "坏的索引版本 '%s'"
 
-#: builtin/pack-objects.c:2599
+#: builtin/pack-objects.c:2597
 #, c-format
 msgid "option %s does not accept negative form"
 msgstr "选项 %s 不接受否定格式"
 
-#: builtin/pack-objects.c:2603
+#: builtin/pack-objects.c:2601
 #, c-format
 msgid "unable to parse value '%s' for option %s"
 msgstr "不能解析选项 %1$s 的值 '%2$s'"
 
-#: builtin/pack-objects.c:2622
+#: builtin/pack-objects.c:2621
 msgid "do not show progress meter"
 msgstr "不显示进度表"
 
-#: builtin/pack-objects.c:2624
+#: builtin/pack-objects.c:2623
 msgid "show progress meter"
 msgstr "显示进度表"
 
-#: builtin/pack-objects.c:2626
+#: builtin/pack-objects.c:2625
 msgid "show progress meter during object writing phase"
 msgstr "在对象写入阶段显示进度表"
 
-#: builtin/pack-objects.c:2629
+#: builtin/pack-objects.c:2628
 msgid "similar to --all-progress when progress meter is shown"
 msgstr "当进度表显示时类似于 --all-progress"
 
-#: builtin/pack-objects.c:2630
+#: builtin/pack-objects.c:2629
 msgid "version[,offset]"
 msgstr "版本[,偏移]"
 
-#: builtin/pack-objects.c:2631
+#: builtin/pack-objects.c:2630
 msgid "write the pack index file in the specified idx format version"
 msgstr "用指定的 idx 格式版本来写包索引文件"
 
-#: builtin/pack-objects.c:2634
+#: builtin/pack-objects.c:2633
 msgid "maximum size of each output pack file"
 msgstr "每个输出包的最大尺寸"
 
-#: builtin/pack-objects.c:2636
+#: builtin/pack-objects.c:2635
 msgid "ignore borrowed objects from alternate object store"
 msgstr "忽略从替代对象存储里借用对象"
 
-#: builtin/pack-objects.c:2638
+#: builtin/pack-objects.c:2637
 msgid "ignore packed objects"
 msgstr "忽略包对象"
 
-#: builtin/pack-objects.c:2640
+#: builtin/pack-objects.c:2639
 msgid "limit pack window by objects"
 msgstr "限制打包窗口的对象数"
 
-#: builtin/pack-objects.c:2642
+#: builtin/pack-objects.c:2641
 msgid "limit pack window by memory in addition to object limit"
 msgstr "除对象数量限制外设置打包窗口的内存限制"
 
-#: builtin/pack-objects.c:2644
+#: builtin/pack-objects.c:2643
 msgid "maximum length of delta chain allowed in the resulting pack"
 msgstr "打包允许的 delta 链的最大长度"
 
-#: builtin/pack-objects.c:2646
+#: builtin/pack-objects.c:2645
 msgid "reuse existing deltas"
 msgstr "重用已存在的 deltas"
 
-#: builtin/pack-objects.c:2648
+#: builtin/pack-objects.c:2647
 msgid "reuse existing objects"
 msgstr "重用已存在的对象"
 
-#: builtin/pack-objects.c:2650
+#: builtin/pack-objects.c:2649
 msgid "use OFS_DELTA objects"
 msgstr "使用 OFS_DELTA 对象"
 
-#: builtin/pack-objects.c:2652
+#: builtin/pack-objects.c:2651
 msgid "use threads when searching for best delta matches"
 msgstr "使用线程查询最佳 delta 匹配"
 
-#: builtin/pack-objects.c:2654
+#: builtin/pack-objects.c:2653
 msgid "do not create an empty pack output"
 msgstr "不创建空的包输出"
 
-#: builtin/pack-objects.c:2656
+#: builtin/pack-objects.c:2655
 msgid "read revision arguments from standard input"
-msgstr "从标准输入读取修订号参数"
+msgstr "从标准输入读取版本号参数"
 
-#: builtin/pack-objects.c:2658
+#: builtin/pack-objects.c:2657
 msgid "limit the objects to those that are not yet packed"
 msgstr "限制那些尚未打包的对象"
 
-#: builtin/pack-objects.c:2661
+#: builtin/pack-objects.c:2660
 msgid "include objects reachable from any reference"
 msgstr "包括可以从任何引用访问到的对象"
 
-#: builtin/pack-objects.c:2664
+#: builtin/pack-objects.c:2663
 msgid "include objects referred by reflog entries"
 msgstr "包括被引用日志引用到的对象"
 
-#: builtin/pack-objects.c:2667
+#: builtin/pack-objects.c:2666
 msgid "include objects referred to by the index"
 msgstr "包括被索引引用到的对象"
 
-#: builtin/pack-objects.c:2670
+#: builtin/pack-objects.c:2669
 msgid "output pack to stdout"
 msgstr "输出包到标准输出"
 
-#: builtin/pack-objects.c:2672
+#: builtin/pack-objects.c:2671
 msgid "include tag objects that refer to objects to be packed"
 msgstr "包括引用了打包对象的 tag"
 
-#: builtin/pack-objects.c:2674
+#: builtin/pack-objects.c:2673
 msgid "keep unreachable objects"
 msgstr "维持不可达的对象"
 
-#: builtin/pack-objects.c:2675 parse-options.h:140
+#: builtin/pack-objects.c:2674 parse-options.h:140
 msgid "time"
 msgstr "时间"
 
-#: builtin/pack-objects.c:2676
+#: builtin/pack-objects.c:2675
 msgid "unpack unreachable objects newer than <time>"
 msgstr "将比给定 <时间> 新的无法访问的对象解包"
 
-#: builtin/pack-objects.c:2679
+#: builtin/pack-objects.c:2678
 msgid "create thin packs"
 msgstr "创建精简包"
 
-#: builtin/pack-objects.c:2681
+#: builtin/pack-objects.c:2680
+msgid "create packs suitable for shallow fetches"
+msgstr "创建适合浅克隆版本库获取的包"
+
+#: builtin/pack-objects.c:2682
 msgid "ignore packs that have companion .keep file"
 msgstr "忽略配有 .keep 文件的包"
 
-#: builtin/pack-objects.c:2683
+#: builtin/pack-objects.c:2684
 msgid "pack compression level"
 msgstr "打包压缩级别"
 
-#: builtin/pack-objects.c:2685
+#: builtin/pack-objects.c:2686
 msgid "do not hide commits by grafts"
 msgstr "显示被嫁接隐藏的提交"
 
-#: builtin/pack-objects.c:2687
+#: builtin/pack-objects.c:2688
 msgid "use a bitmap index if available to speed up counting objects"
 msgstr "使用 bitmap 索引(如果有的话)以提高对象计数时的速度"
 
-#: builtin/pack-objects.c:2689
+#: builtin/pack-objects.c:2690
 msgid "write a bitmap index together with the pack index"
 msgstr "在建立包索引的同时创建 bitmap 索引"
 
-#: builtin/pack-objects.c:2778
+#: builtin/pack-objects.c:2781
 msgid "Counting objects"
 msgstr "对象计数中"
 
 #: builtin/pack-refs.c:6
-msgid "git pack-refs [options]"
-msgstr "git pack-refs [选项]"
+msgid "git pack-refs [<options>]"
+msgstr "git pack-refs [<选项>]"
 
 #: builtin/pack-refs.c:14
 msgid "pack everything"
@@ -7897,8 +7940,8 @@ msgid "prune loose refs (default)"
 msgstr "清除松散的引用(默认)"
 
 #: builtin/prune-packed.c:7
-msgid "git prune-packed [-n|--dry-run] [-q|--quiet]"
-msgstr "git prune-packed [-n|--dry-run] [-q|--quiet]"
+msgid "git prune-packed [-n | --dry-run] [-q | --quiet]"
+msgstr "git prune-packed [-n | --dry-run] [-q | --quiet]"
 
 #: builtin/prune-packed.c:40
 msgid "Removing duplicate objects"
@@ -7926,7 +7969,7 @@ msgstr "git push [<选项>] [<版本库> [<引用规则>...]]"
 
 #: builtin/push.c:85
 msgid "tag shorthand without <tag>"
-msgstr "tag 简写没有跟 <tag> 参数"
+msgstr "tag 后面未提供 <标签> 参数"
 
 #: builtin/push.c:95
 msgid "--delete only accepts plain target ref names"
@@ -7976,7 +8019,7 @@ msgstr ""
 "您当前不在一个分支上。\n"
 "现在为推送当前(分离头指针)的历史,使用\n"
 "\n"
-"    git push %s HEAD:<name-of-remote-branch>\n"
+"    git push %s HEAD:<远程分支名字>\n"
 
 #: builtin/push.c:171
 #, c-format
@@ -8133,11 +8176,11 @@ msgstr ""
 "没有配置推送目标。\n"
 "或通过命令行指定URL,或用下面命令配置一个远程版本库\n"
 "\n"
-"    git remote add <name> <url>\n"
+"    git remote add <名称> <地址>\n"
 "\n"
 "然后使用该远程版本库名执行推送\n"
 "\n"
-"    git push <name>\n"
+"    git push <名称>\n"
 
 #: builtin/push.c:410
 msgid "--all and --tags are incompatible"
@@ -8159,75 +8202,79 @@ msgstr "--mirror 不能和引用规则同时使用"
 msgid "--all and --mirror are incompatible"
 msgstr "--all 和 --mirror 不兼容"
 
-#: builtin/push.c:493
+#: builtin/push.c:502
 msgid "repository"
 msgstr "版本库"
 
-#: builtin/push.c:494
+#: builtin/push.c:503
 msgid "push all refs"
 msgstr "推送所有引用"
 
-#: builtin/push.c:495
+#: builtin/push.c:504
 msgid "mirror all refs"
 msgstr "镜像所有引用"
 
-#: builtin/push.c:497
+#: builtin/push.c:506
 msgid "delete refs"
 msgstr "删除引用"
 
-#: builtin/push.c:498
+#: builtin/push.c:507
 msgid "push tags (can't be used with --all or --mirror)"
 msgstr "推送 tags(不能使用 --all or --mirror)"
 
-#: builtin/push.c:501
+#: builtin/push.c:510
 msgid "force updates"
 msgstr "强制更新"
 
-#: builtin/push.c:503
+#: builtin/push.c:512
 msgid "refname>:<expect"
 msgstr "引用名>:<期望值"
 
-#: builtin/push.c:504
+#: builtin/push.c:513
 msgid "require old value of ref to be at this value"
 msgstr "要求引用旧的取值为设定值"
 
-#: builtin/push.c:507
+#: builtin/push.c:516
 msgid "control recursive pushing of submodules"
 msgstr "控制子模组的递归推送"
 
-#: builtin/push.c:509
+#: builtin/push.c:518
 msgid "use thin pack"
 msgstr "使用精简打包"
 
-#: builtin/push.c:510 builtin/push.c:511
+#: builtin/push.c:519 builtin/push.c:520
 msgid "receive pack program"
 msgstr "接收包程序"
 
-#: builtin/push.c:512
+#: builtin/push.c:521
 msgid "set upstream for git pull/status"
 msgstr "设置 git pull/status 的上游"
 
-#: builtin/push.c:515
+#: builtin/push.c:524
 msgid "prune locally removed refs"
 msgstr "清除本地删除的引用"
 
-#: builtin/push.c:517
+#: builtin/push.c:526
 msgid "bypass pre-push hook"
 msgstr "绕过 pre-push 钩子"
 
-#: builtin/push.c:518
+#: builtin/push.c:527
 msgid "push missing but relevant tags"
 msgstr "推送缺失的有关的 tags"
 
-#: builtin/push.c:520
+#: builtin/push.c:529
 msgid "GPG sign the push"
 msgstr "用 GPG 为推送签名"
 
-#: builtin/push.c:529
+#: builtin/push.c:530
+msgid "request atomic transaction on remote side"
+msgstr "需要远端支持原子事务"
+
+#: builtin/push.c:539
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr "--delete 与 --all、--mirror 及 --tags 不兼容"
 
-#: builtin/push.c:531
+#: builtin/push.c:541
 msgid "--delete doesn't make sense without any refs"
 msgstr "--delete 未接任何引用没有意义"
 
@@ -8243,7 +8290,7 @@ msgstr ""
 
 #: builtin/read-tree.c:110
 msgid "write resulting index to <file>"
-msgstr "将索引结果写入 <file>"
+msgstr "将索引结果写入 <文件>"
 
 #: builtin/read-tree.c:113
 msgid "only empty the index"
@@ -8305,12 +8352,12 @@ msgstr "跳过应用稀疏检出过滤器"
 msgid "debug unpack-trees"
 msgstr "调试 unpack-trees"
 
-#: builtin/reflog.c:499
+#: builtin/reflog.c:429
 #, c-format
 msgid "%s' for '%s' is not a valid timestamp"
 msgstr "'%2$s' 的值 '%1$s' 不是一个有效的时间戳"
 
-#: builtin/reflog.c:615 builtin/reflog.c:620
+#: builtin/reflog.c:546 builtin/reflog.c:551
 #, c-format
 msgid "'%s' is not a valid timestamp"
 msgstr "'%s' 不是一个有效的时间戳"
@@ -8321,11 +8368,11 @@ msgstr "git remote [-v | --verbose]"
 
 #: builtin/remote.c:13
 msgid ""
-"git remote add [-t <branch>] [-m <master>] [-f] [--tags|--no-tags] [--"
+"git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <name> <url>"
 msgstr ""
-"git remote add [-t <分支>] [-m <master>] [-f] [--tags|--no-tags] [--"
-"mirror=<fetch|push>] <名称> <url>"
+"git remote add [-t <分支>] [-m <master>] [-f] [--tags | --no-tags] [--"
+"mirror=<fetch|push>] <名称> <地址>"
 
 #: builtin/remote.c:14 builtin/remote.c:33
 msgid "git remote rename <old> <new>"
@@ -8335,9 +8382,9 @@ msgstr "git remote rename <旧名称> <新名称>"
 msgid "git remote remove <name>"
 msgstr "git remote remove <名称>"
 
-#: builtin/remote.c:16
-msgid "git remote set-head <name> (-a | --auto | -d | --delete |<branch>)"
-msgstr "git remote set-head <名称> (-a | --auto | -d | --delete |<分支>)"
+#: builtin/remote.c:16 builtin/remote.c:43
+msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
+msgstr "git remote set-head <名称> (-a | --auto | -d | --delete | <分支>)"
 
 #: builtin/remote.c:17
 msgid "git remote [-v | --verbose] show [-n] <name>"
@@ -8372,10 +8419,6 @@ msgstr "git remote set-url --delete <名称> <地址>"
 msgid "git remote add [<options>] <name> <url>"
 msgstr "git remote add [<选项>] <名称> <地址>"
 
-#: builtin/remote.c:43
-msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
-msgstr "git remote set-head <名称> (-a | --auto | -d | --delete | <分支>)"
-
 #: builtin/remote.c:48
 msgid "git remote set-branches <name> <branch>..."
 msgstr "git remote set-branches <名称> <分支>..."
@@ -8450,55 +8493,55 @@ msgstr "指定一个 master 分支并使用 --mirror 选项没有意义"
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr "指定要跟踪的分支只在与获取镜像同时使用才有意义"
 
-#: builtin/remote.c:185 builtin/remote.c:641
+#: builtin/remote.c:187 builtin/remote.c:643
 #, c-format
 msgid "remote %s already exists."
 msgstr "远程 %s 已经存在。"
 
-#: builtin/remote.c:189 builtin/remote.c:645
+#: builtin/remote.c:191 builtin/remote.c:647
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "'%s' 不是一个有效的远程名称"
 
-#: builtin/remote.c:233
+#: builtin/remote.c:235
 #, c-format
 msgid "Could not setup master '%s'"
 msgstr "无法设置 master '%s'"
 
-#: builtin/remote.c:333
+#: builtin/remote.c:335
 #, c-format
 msgid "Could not get fetch map for refspec %s"
 msgstr "无法得到引用规则 %s 的获取列表"
 
-#: builtin/remote.c:434 builtin/remote.c:442
+#: builtin/remote.c:436 builtin/remote.c:444
 msgid "(matching)"
 msgstr "(匹配)"
 
-#: builtin/remote.c:446
+#: builtin/remote.c:448
 msgid "(delete)"
 msgstr "(删除)"
 
-#: builtin/remote.c:590 builtin/remote.c:596 builtin/remote.c:602
+#: builtin/remote.c:592 builtin/remote.c:598 builtin/remote.c:604
 #, c-format
 msgid "Could not append '%s' to '%s'"
 msgstr "不能添加 '%s' 至 '%s'"
 
-#: builtin/remote.c:634 builtin/remote.c:798 builtin/remote.c:898
+#: builtin/remote.c:636 builtin/remote.c:795 builtin/remote.c:895
 #, c-format
 msgid "No such remote: %s"
 msgstr "没有这样的远程:%s"
 
-#: builtin/remote.c:651
+#: builtin/remote.c:653
 #, c-format
 msgid "Could not rename config section '%s' to '%s'"
 msgstr "不能重命名配置小节 '%s' 到 '%s'"
 
-#: builtin/remote.c:657 builtin/remote.c:850
+#: builtin/remote.c:659 builtin/remote.c:847
 #, c-format
 msgid "Could not remove config section '%s'"
 msgstr "不能移除配置小节 '%s'"
 
-#: builtin/remote.c:672
+#: builtin/remote.c:674
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -8509,32 +8552,32 @@ msgstr ""
 "\t%s\n"
 "\t如果必要请手动更新配置。"
 
-#: builtin/remote.c:678
+#: builtin/remote.c:680
 #, c-format
 msgid "Could not append '%s'"
 msgstr "不能追加 '%s'"
 
-#: builtin/remote.c:689
+#: builtin/remote.c:691
 #, c-format
 msgid "Could not set '%s'"
 msgstr "不能设置 '%s'"
 
-#: builtin/remote.c:711
+#: builtin/remote.c:713
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "删除 '%s' 失败"
 
-#: builtin/remote.c:745
+#: builtin/remote.c:747
 #, c-format
 msgid "creating '%s' failed"
 msgstr "创建 '%s' 失败"
 
-#: builtin/remote.c:769
+#: builtin/remote.c:766
 #, c-format
 msgid "Could not remove branch %s"
 msgstr "无法移除分支 %s"
 
-#: builtin/remote.c:836
+#: builtin/remote.c:833
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -8544,126 +8587,126 @@ msgid_plural ""
 msgstr[0] "注意:ref/remotes 层级之外的一个分支未被移除。要删除它,使用:"
 msgstr[1] "注意:ref/remotes 层级之外的一些分支未被移除。要删除它们,使用:"
 
-#: builtin/remote.c:951
+#: builtin/remote.c:948
 #, c-format
 msgid " new (next fetch will store in remotes/%s)"
 msgstr " 新的(下一次获取将存储于 remotes/%s)"
 
-#: builtin/remote.c:954
+#: builtin/remote.c:951
 msgid " tracked"
 msgstr " 已跟踪"
 
-#: builtin/remote.c:956
+#: builtin/remote.c:953
 msgid " stale (use 'git remote prune' to remove)"
 msgstr " 过时(使用 'git remote prune' 来移除)"
 
-#: builtin/remote.c:958
+#: builtin/remote.c:955
 msgid " ???"
 msgstr " ???"
 
-#: builtin/remote.c:999
+#: builtin/remote.c:996
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr "无效的 branch.%s.merge,不能变基到一个以上的分支"
 
-#: builtin/remote.c:1006
+#: builtin/remote.c:1003
 #, c-format
 msgid "rebases onto remote %s"
 msgstr "变基到远程 %s"
 
-#: builtin/remote.c:1009
+#: builtin/remote.c:1006
 #, c-format
 msgid " merges with remote %s"
 msgstr " 与远程 %s 合并"
 
-#: builtin/remote.c:1010
+#: builtin/remote.c:1007
 msgid "    and with remote"
 msgstr "    且有远程"
 
-#: builtin/remote.c:1012
+#: builtin/remote.c:1009
 #, c-format
 msgid "merges with remote %s"
 msgstr "与远程 %s 合并"
 
-#: builtin/remote.c:1013
+#: builtin/remote.c:1010
 msgid "   and with remote"
 msgstr "   且有远程"
 
-#: builtin/remote.c:1059
+#: builtin/remote.c:1056
 msgid "create"
 msgstr "创建"
 
-#: builtin/remote.c:1062
+#: builtin/remote.c:1059
 msgid "delete"
 msgstr "删除"
 
-#: builtin/remote.c:1066
+#: builtin/remote.c:1063
 msgid "up to date"
 msgstr "最新"
 
-#: builtin/remote.c:1069
+#: builtin/remote.c:1066
 msgid "fast-forwardable"
 msgstr "可快进"
 
-#: builtin/remote.c:1072
+#: builtin/remote.c:1069
 msgid "local out of date"
 msgstr "本地已过时"
 
-#: builtin/remote.c:1079
+#: builtin/remote.c:1076
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr "    %-*s 强制推送至 %-*s (%s)"
 
-#: builtin/remote.c:1082
+#: builtin/remote.c:1079
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr "    %-*s 推送至 %-*s (%s)"
 
-#: builtin/remote.c:1086
+#: builtin/remote.c:1083
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr "    %-*s 强制推送至 %s"
 
-#: builtin/remote.c:1089
+#: builtin/remote.c:1086
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s 推送至 %s"
 
-#: builtin/remote.c:1157
+#: builtin/remote.c:1154
 msgid "do not query remotes"
 msgstr "不查询远程"
 
-#: builtin/remote.c:1184
+#: builtin/remote.c:1181
 #, c-format
 msgid "* remote %s"
 msgstr "* 远程 %s"
 
-#: builtin/remote.c:1185
+#: builtin/remote.c:1182
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr "  获取地址:%s"
 
-#: builtin/remote.c:1186 builtin/remote.c:1333
+#: builtin/remote.c:1183 builtin/remote.c:1334
 msgid "(no URL)"
 msgstr "(无 URL)"
 
-#: builtin/remote.c:1195 builtin/remote.c:1197
+#: builtin/remote.c:1192 builtin/remote.c:1194
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  推送地址:%s"
 
-#: builtin/remote.c:1199 builtin/remote.c:1201 builtin/remote.c:1203
+#: builtin/remote.c:1196 builtin/remote.c:1198 builtin/remote.c:1200
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  HEAD分支:%s"
 
-#: builtin/remote.c:1205
+#: builtin/remote.c:1202
 #, c-format
 msgid ""
 "  HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
 msgstr "  HEAD 分支(远程 HEAD 模糊,可能是下列中的一个):\n"
 
-#: builtin/remote.c:1217
+#: builtin/remote.c:1214
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
@@ -8671,210 +8714,210 @@ msgstr[0] "  远程分支:%s"
 msgstr[1] "  远程分支:%s"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: builtin/remote.c:1220 builtin/remote.c:1247
+#: builtin/remote.c:1217 builtin/remote.c:1244
 msgid " (status not queried)"
 msgstr "(状态未查询)"
 
-#: builtin/remote.c:1229
+#: builtin/remote.c:1226
 msgid "  Local branch configured for 'git pull':"
 msgid_plural "  Local branches configured for 'git pull':"
 msgstr[0] "  为 'git pull' 配置的本地分支:"
 msgstr[1] "  为 'git pull' 配置的本地分支:"
 
-#: builtin/remote.c:1237
+#: builtin/remote.c:1234
 msgid "  Local refs will be mirrored by 'git push'"
 msgstr "  本地引用将在 'git push' 时被镜像"
 
-#: builtin/remote.c:1244
+#: builtin/remote.c:1241
 #, c-format
 msgid "  Local ref configured for 'git push'%s:"
 msgid_plural "  Local refs configured for 'git push'%s:"
 msgstr[0] "  为 'git push' 配置的本地引用%s:"
 msgstr[1] "  为 'git push' 配置的本地引用%s:"
 
-#: builtin/remote.c:1265
+#: builtin/remote.c:1262
 msgid "set refs/remotes/<name>/HEAD according to remote"
 msgstr "根据远程设置 refs/remotes/<名称>/HEAD"
 
-#: builtin/remote.c:1267
+#: builtin/remote.c:1264
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr "删除 refs/remotes/<名称>/HEAD"
 
-#: builtin/remote.c:1282
+#: builtin/remote.c:1279
 msgid "Cannot determine remote HEAD"
 msgstr "无法确定远程 HEAD"
 
-#: builtin/remote.c:1284
+#: builtin/remote.c:1281
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
 msgstr "多个远程 HEAD 分支。请明确地选择一个用命令:"
 
-#: builtin/remote.c:1294
+#: builtin/remote.c:1291
 #, c-format
 msgid "Could not delete %s"
 msgstr "无法删除 %s"
 
-#: builtin/remote.c:1302
+#: builtin/remote.c:1299
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "不是一个有效引用:%s"
 
-#: builtin/remote.c:1304
+#: builtin/remote.c:1301
 #, c-format
 msgid "Could not setup %s"
 msgstr "不能设置 %s"
 
 #  译者:注意保持前导空格
-#: builtin/remote.c:1322
+#: builtin/remote.c:1319
 #, c-format
 msgid " %s will become dangling!"
 msgstr " %s 将成为摇摆状态!"
 
 #  译者:注意保持前导空格
-#: builtin/remote.c:1323
+#: builtin/remote.c:1320
 #, c-format
 msgid " %s has become dangling!"
 msgstr " %s 已成为摇摆状态!"
 
-#: builtin/remote.c:1329
+#: builtin/remote.c:1330
 #, c-format
 msgid "Pruning %s"
 msgstr "修剪 %s"
 
-#: builtin/remote.c:1330
+#: builtin/remote.c:1331
 #, c-format
 msgid "URL: %s"
 msgstr "URL:%s"
 
-#: builtin/remote.c:1357
+#: builtin/remote.c:1354
 #, c-format
 msgid " * [would prune] %s"
 msgstr " * [将删除] %s"
 
-#: builtin/remote.c:1360
+#: builtin/remote.c:1357
 #, c-format
 msgid " * [pruned] %s"
 msgstr " * [已删除] %s"
 
-#: builtin/remote.c:1405
+#: builtin/remote.c:1402
 msgid "prune remotes after fetching"
 msgstr "抓取后清除远程"
 
-#: builtin/remote.c:1471 builtin/remote.c:1545
+#: builtin/remote.c:1468 builtin/remote.c:1542
 #, c-format
 msgid "No such remote '%s'"
 msgstr "没有此远程 '%s'"
 
-#: builtin/remote.c:1491
+#: builtin/remote.c:1488
 msgid "add branch"
 msgstr "添加分支"
 
-#: builtin/remote.c:1498
+#: builtin/remote.c:1495
 msgid "no remote specified"
 msgstr "未指定远程"
 
-#: builtin/remote.c:1520
+#: builtin/remote.c:1517
 msgid "manipulate push URLs"
 msgstr "操作推送 URLS"
 
-#: builtin/remote.c:1522
+#: builtin/remote.c:1519
 msgid "add URL"
 msgstr "添加 URL"
 
-#: builtin/remote.c:1524
+#: builtin/remote.c:1521
 msgid "delete URLs"
 msgstr "删除 URLS"
 
-#: builtin/remote.c:1531
+#: builtin/remote.c:1528
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete 无意义"
 
-#: builtin/remote.c:1571
+#: builtin/remote.c:1568
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr "无效的旧URL匹配模版:%s"
 
-#: builtin/remote.c:1579
+#: builtin/remote.c:1576
 #, c-format
 msgid "No such URL found: %s"
 msgstr "未找到此URL:%s"
 
-#: builtin/remote.c:1581
+#: builtin/remote.c:1578
 msgid "Will not delete all non-push URLs"
 msgstr "将不会删除所有非推送URL地址"
 
-#: builtin/remote.c:1595
+#: builtin/remote.c:1592
 msgid "be verbose; must be placed before a subcommand"
 msgstr "冗长输出;必须置于子命令之前"
 
 #: builtin/repack.c:17
-msgid "git repack [options]"
-msgstr "git repack [选项]"
+msgid "git repack [<options>]"
+msgstr "git repack [<选项>]"
 
-#: builtin/repack.c:160
+#: builtin/repack.c:159
 msgid "pack everything in a single pack"
 msgstr "所有内容打包到一个包文件中"
 
-#: builtin/repack.c:162
+#: builtin/repack.c:161
 msgid "same as -a, and turn unreachable objects loose"
 msgstr "和 -a 相同,并将不可达的对象设为松散对象"
 
-#: builtin/repack.c:165
+#: builtin/repack.c:164
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr "删除多余的包,运行 git-prune-packed"
 
-#: builtin/repack.c:167
+#: builtin/repack.c:166
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr "向 git-pack-objects 传递参数 --no-reuse-delta"
 
-#: builtin/repack.c:169
+#: builtin/repack.c:168
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr "向 git-pack-objects 传递参数 --no-reuse-object"
 
-#: builtin/repack.c:171
+#: builtin/repack.c:170
 msgid "do not run git-update-server-info"
 msgstr "不运行 git-update-server-info"
 
-#: builtin/repack.c:174
+#: builtin/repack.c:173
 msgid "pass --local to git-pack-objects"
 msgstr "向 git-pack-objects 传递参数 --local"
 
-#: builtin/repack.c:176
+#: builtin/repack.c:175
 msgid "write bitmap index"
 msgstr "写 bitmap 索引"
 
-#: builtin/repack.c:177
+#: builtin/repack.c:176
 msgid "approxidate"
 msgstr "近似日期"
 
-#: builtin/repack.c:178
+#: builtin/repack.c:177
 msgid "with -A, do not loosen objects older than this"
 msgstr "使用 -A,不要将早于给定时间的对象过期"
 
-#: builtin/repack.c:180
+#: builtin/repack.c:179
 msgid "size of the window used for delta compression"
 msgstr "用于增量压缩的窗口值"
 
-#: builtin/repack.c:181 builtin/repack.c:185
+#: builtin/repack.c:180 builtin/repack.c:184
 msgid "bytes"
 msgstr "字节"
 
-#: builtin/repack.c:182
+#: builtin/repack.c:181
 msgid "same as the above, but limit memory size instead of entries count"
 msgstr "和上面的相似,但限制内存大小而非条目数"
 
-#: builtin/repack.c:184
+#: builtin/repack.c:183
 msgid "limits the maximum delta depth"
 msgstr "限制最大增量深度"
 
-#: builtin/repack.c:186
+#: builtin/repack.c:185
 msgid "maximum size of each packfile"
 msgstr "每个包的最大尺寸"
 
-#: builtin/repack.c:188
+#: builtin/repack.c:187
 msgid "repack objects in packs marked with .keep"
 msgstr "对标记为 .keep 的包中的对象重新打包"
 
-#: builtin/repack.c:374
+#: builtin/repack.c:375
 #, c-format
 msgid "removing '%s' failed"
 msgstr "删除 '%s' 失败"
@@ -8964,8 +9007,8 @@ msgid "use this format"
 msgstr "使用此格式"
 
 #: builtin/rerere.c:12
-msgid "git rerere [clear | forget path... | status | remaining | diff | gc]"
-msgstr "git rerere [clear | forget path... | status | remaining | diff | gc]"
+msgid "git rerere [clear | forget <path>... | status | remaining | diff | gc]"
+msgstr "git rerere [clear | forget <路径>... | status | remaining | diff | gc]"
 
 #: builtin/rerere.c:57
 msgid "register clean resolutions in index"
@@ -9073,7 +9116,7 @@ msgstr "--patch 与 --{hard、mixed、soft} 选项不兼容"
 
 #: builtin/reset.c:331
 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
-msgstr "--mixed 带路径已弃用,而是用 'git reset -- <paths>'。"
+msgstr "--mixed 带路径已弃用,而是用 'git reset -- <路径>'。"
 
 #  译者:汉字之间无空格,故删除%s前后空格
 #: builtin/reset.c:333
@@ -9105,8 +9148,8 @@ msgid "Could not write new index file."
 msgstr "不能写入新的索引文件。"
 
 #: builtin/rev-parse.c:361
-msgid "git rev-parse --parseopt [options] -- [<args>...]"
-msgstr "git rev-parse --parseopt [选项] -- [<参数>...]"
+msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
+msgstr "git rev-parse --parseopt [<选项>] -- [<参数>...]"
 
 #: builtin/rev-parse.c:366
 msgid "keep the `--` passed as an arg"
@@ -9122,29 +9165,29 @@ msgstr "以固定长格式输出"
 
 #: builtin/rev-parse.c:499
 msgid ""
-"git rev-parse --parseopt [options] -- [<args>...]\n"
+"git rev-parse --parseopt [<options>] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
-"   or: git rev-parse [options] [<arg>...]\n"
+"   or: git rev-parse [<options>] [<arg>...]\n"
 "\n"
 "Run \"git rev-parse --parseopt -h\" for more information on the first usage."
 msgstr ""
-"git rev-parse --parseopt [选项] -- [<参数>...]\n"
+"git rev-parse --parseopt [<选项>] -- [<参数>...]\n"
 "   或者:git rev-parse --sq-quote [<参数>...]\n"
-"   或者:git rev-parse [选项] [<参数>...]\n"
+"   或者:git rev-parse [<选项>] [<参数>...]\n"
 "\n"
 "初次使用时执行 \"git rev-parse --parseopt -h\" 来获得更多信息。"
 
 #: builtin/revert.c:22
-msgid "git revert [options] <commit-ish>..."
-msgstr "git revert [选项] <提交号>..."
+msgid "git revert [<options>] <commit-ish>..."
+msgstr "git revert [<选项>] <提交号>..."
 
 #: builtin/revert.c:23
 msgid "git revert <subcommand>"
 msgstr "git revert <子命令>"
 
 #: builtin/revert.c:28
-msgid "git cherry-pick [options] <commit-ish>..."
-msgstr "git cherry-pick [选项] <提交号>..."
+msgid "git cherry-pick [<options>] <commit-ish>..."
+msgstr "git cherry-pick [<选项>] <提交号>..."
 
 #: builtin/revert.c:29
 msgid "git cherry-pick <subcommand>"
@@ -9224,8 +9267,8 @@ msgid "cherry-pick failed"
 msgstr "拣选失败"
 
 #: builtin/rm.c:17
-msgid "git rm [options] [--] <file>..."
-msgstr "git rm [选项] [--] <文件>..."
+msgid "git rm [<options>] [--] <file>..."
+msgstr "git rm [<选项>] [--] <文件>..."
 
 #: builtin/rm.c:65
 msgid ""
@@ -9318,7 +9361,7 @@ msgid "git rm: unable to remove %s"
 msgstr "git rm:不能删除 %s"
 
 #: builtin/shortlog.c:13
-msgid "git shortlog [<options>] [<revision range>] [[--] [<path>...]]"
+msgid "git shortlog [<options>] [<revision-range>] [[--] [<path>...]]"
 msgstr "git shortlog [<选项>] [<版本范围>] [[--] [<路径>...]]"
 
 #: builtin/shortlog.c:131
@@ -9348,91 +9391,91 @@ msgstr "折行输出"
 
 #: builtin/show-branch.c:9
 msgid ""
-"git show-branch [-a|--all] [-r|--remotes] [--topo-order | --date-order] [--"
-"current] [--color[=<when>] | --no-color] [--sparse] [--more=<n> | --list | --"
-"independent | --merge-base] [--no-name | --sha1-name] [--topics] [(<rev> | "
-"<glob>)...]"
+"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
+"\t\t[--current] [--color[=<when>] | --no-color] [--sparse]\n"
+"\t\t[--more=<n> | --list | --independent | --merge-base]\n"
+"\t\t[--no-name | --sha1-name] [--topics] [(<rev> | <glob>)...]"
 msgstr ""
-"git show-branch [-a|--all] [-r|--remotes] [--topo-order | --date-order] [--"
-"current] [--color[=<when>] | --no-color] [--sparse] [--more=<n> | --list | --"
-"independent | --merge-base] [--no-name | --sha1-name] [--topics] [(<rev> | "
-"<glob>)...]"
+"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
+"\t\t[--current] [--color[=<何时>] | --no-color] [--sparse]\n"
+"\t\t[--more=<n> | --list | --independent | --merge-base]\n"
+"\t\t[--no-name | --sha1-name] [--topics] [(<版本> | <通配符>)...]"
 
-#: builtin/show-branch.c:10
-msgid "git show-branch (-g|--reflog)[=<n>[,<base>]] [--list] [<ref>]"
-msgstr "git show-branch (-g|--reflog)[=<n>[,<base>]] [--list] [<ref>]"
+#: builtin/show-branch.c:13
+msgid "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<ref>]"
+msgstr "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<引用>]"
 
-#: builtin/show-branch.c:649
+#: builtin/show-branch.c:652
 msgid "show remote-tracking and local branches"
 msgstr "显示远程跟踪的和本地的分支"
 
-#: builtin/show-branch.c:651
+#: builtin/show-branch.c:654
 msgid "show remote-tracking branches"
 msgstr "显示远程跟踪的分支"
 
-#: builtin/show-branch.c:653
+#: builtin/show-branch.c:656
 msgid "color '*!+-' corresponding to the branch"
 msgstr "着色 '*!+-' 到相应的分支"
 
-#: builtin/show-branch.c:655
+#: builtin/show-branch.c:658
 msgid "show <n> more commits after the common ancestor"
 msgstr "显示共同祖先后的 <n> 个提交"
 
-#: builtin/show-branch.c:657
+#: builtin/show-branch.c:660
 msgid "synonym to more=-1"
 msgstr "和 more=-1 同义"
 
-#: builtin/show-branch.c:658
+#: builtin/show-branch.c:661
 msgid "suppress naming strings"
 msgstr "不显示字符串命名"
 
-#: builtin/show-branch.c:660
+#: builtin/show-branch.c:663
 msgid "include the current branch"
 msgstr "包括当前分支"
 
-#: builtin/show-branch.c:662
+#: builtin/show-branch.c:665
 msgid "name commits with their object names"
 msgstr "以对象名字命名提交"
 
-#: builtin/show-branch.c:664
+#: builtin/show-branch.c:667
 msgid "show possible merge bases"
 msgstr "显示可能合并的基线"
 
-#: builtin/show-branch.c:666
+#: builtin/show-branch.c:669
 msgid "show refs unreachable from any other ref"
 msgstr "显示没有任何引用的的引用"
 
-#: builtin/show-branch.c:668
+#: builtin/show-branch.c:671
 msgid "show commits in topological order"
 msgstr "以拓扑顺序显示提交"
 
-#: builtin/show-branch.c:671
+#: builtin/show-branch.c:674
 msgid "show only commits not on the first branch"
 msgstr "只显示不在第一个分支上的提交"
 
-#: builtin/show-branch.c:673
+#: builtin/show-branch.c:676
 msgid "show merges reachable from only one tip"
 msgstr "显示仅一个分支可访问的合并提交"
 
-#: builtin/show-branch.c:675
+#: builtin/show-branch.c:678
 msgid "topologically sort, maintaining date order where possible"
 msgstr "拓扑方式排序,并尽可能地保持日期顺序"
 
-#: builtin/show-branch.c:678
+#: builtin/show-branch.c:681
 msgid "<n>[,<base>]"
 msgstr "<n>[,<base>]"
 
-#: builtin/show-branch.c:679
+#: builtin/show-branch.c:682
 msgid "show <n> most recent ref-log entries starting at base"
 msgstr "显示从 base 开始的 <n> 条最近的引用日志记录"
 
 #: builtin/show-ref.c:10
 msgid ""
-"git show-ref [-q|--quiet] [--verify] [--head] [-d|--dereference] [-s|--"
-"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [pattern*] "
+"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
+"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
 msgstr ""
-"git show-ref [-q|--quiet] [--verify] [--head] [-d|--dereference] [-s|--"
-"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [pattern*] "
+"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
+"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<模式>...]"
 
 #: builtin/show-ref.c:11
 msgid "git show-ref --exclude-existing[=pattern] < ref-list"
@@ -9471,12 +9514,12 @@ msgid "show refs from stdin that aren't in local repository"
 msgstr "显示从标准输入中读入的不在本地版本库中的引用"
 
 #: builtin/symbolic-ref.c:7
-msgid "git symbolic-ref [options] name [ref]"
-msgstr "git symbolic-ref [选项] 名称 [引用]"
+msgid "git symbolic-ref [<options>] <name> [<ref>]"
+msgstr "git symbolic-ref [<选项>] <名称> [<引用>]"
 
 #: builtin/symbolic-ref.c:8
-msgid "git symbolic-ref -d [-q] name"
-msgstr "git symbolic-ref -d [-q] 名称"
+msgid "git symbolic-ref -d [-q] <name>"
+msgstr "git symbolic-ref -d [-q] <名称>"
 
 #: builtin/symbolic-ref.c:40
 msgid "suppress error message for non-symbolic (detached) refs"
@@ -9490,18 +9533,20 @@ msgstr "删除符号引用"
 msgid "shorten ref output"
 msgstr "简短的引用输出"
 
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:362
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:358
 msgid "reason"
 msgstr "原因"
 
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:362
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:358
 msgid "reason of the update"
 msgstr "更新的原因"
 
 #: builtin/tag.c:22
 msgid ""
-"git tag [-a|-s|-u <key-id>] [-f] [-m <msg>|-F <file>] <tagname> [<head>]"
-msgstr "git tag [-a|-s|-u <key-id>] [-f] [-m <说明>|-F <文件>] <标签名> [<头>]"
+"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>] <tagname> "
+"[<head>]"
+msgstr ""
+"git tag [-a | -s | -u <key-id>] [-f] [-m <说明> | -F <文件>] <标签名> [<头>]"
 
 #: builtin/tag.c:23
 msgid "git tag -d <tagname>..."
@@ -9509,11 +9554,10 @@ msgstr "git tag -d <标签名>..."
 
 #: builtin/tag.c:24
 msgid ""
-"git tag -l [-n[<num>]] [--contains <commit>] [--points-at <object>] \n"
+"git tag -l [-n[<num>]] [--contains <commit>] [--points-at <object>]\n"
 "\t\t[<pattern>...]"
 msgstr ""
-"git tag -l [-n[<num>]] [--contains <提交>] [--points-at <对象>] \n"
-"\t\t[<模式>...]"
+"git tag -l [-n[<数字>]] [--contains <提交>] [--points-at <对象>] [<模式>...]"
 
 #: builtin/tag.c:26
 msgid "git tag -v <tagname>..."
@@ -9655,18 +9699,18 @@ msgstr "使用另外的私钥签名 tag"
 msgid "replace the tag if exists"
 msgstr "如果存在,替换现有的 tag"
 
-#: builtin/tag.c:608
+#: builtin/tag.c:609
+msgid "Tag listing options"
+msgstr "Tag 列表选项"
+
+#: builtin/tag.c:610
 msgid "show tag list in columns"
 msgstr "以列的方式显示 tag"
 
-#: builtin/tag.c:610
+#: builtin/tag.c:612
 msgid "sort tags"
 msgstr "排序 tags"
 
-#: builtin/tag.c:614
-msgid "Tag listing options"
-msgstr "Tag 列表选项"
-
 #: builtin/tag.c:617 builtin/tag.c:623
 msgid "print only tags that contain the commit"
 msgstr "只打印包含提交的tags"
@@ -9723,146 +9767,146 @@ msgid "Unpacking objects"
 msgstr "展开对象中"
 
 #: builtin/update-index.c:403
-msgid "git update-index [options] [--] [<file>...]"
-msgstr "git update-index [选项] [--] [<文件>...]"
+msgid "git update-index [<options>] [--] [<file>...]"
+msgstr "git update-index [<选项>] [--] [<文件>...]"
 
-#: builtin/update-index.c:756
+#: builtin/update-index.c:757
 msgid "continue refresh even when index needs update"
 msgstr "当索引需要更新时继续刷新"
 
-#: builtin/update-index.c:759
+#: builtin/update-index.c:760
 msgid "refresh: ignore submodules"
 msgstr "刷新:忽略子模组"
 
-#: builtin/update-index.c:762
+#: builtin/update-index.c:763
 msgid "do not ignore new files"
 msgstr "不忽略新的文件"
 
-#: builtin/update-index.c:764
+#: builtin/update-index.c:765
 msgid "let files replace directories and vice-versa"
 msgstr "让文件替换目录(反之亦然)"
 
-#: builtin/update-index.c:766
+#: builtin/update-index.c:767
 msgid "notice files missing from worktree"
 msgstr "通知文件从工作区丢失"
 
-#: builtin/update-index.c:768
+#: builtin/update-index.c:769
 msgid "refresh even if index contains unmerged entries"
 msgstr "即使索引区包含未合并的条目也执行刷新"
 
-#: builtin/update-index.c:771
+#: builtin/update-index.c:772
 msgid "refresh stat information"
 msgstr "刷新统计信息"
 
-#: builtin/update-index.c:775
+#: builtin/update-index.c:776
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr "类似于 --refresh,但是忽略 assume-unchanged 设置"
 
-#: builtin/update-index.c:779
+#: builtin/update-index.c:780
 msgid "<mode>,<object>,<path>"
-msgstr "<mode>,<object>,<path>"
+msgstr "<存取模式>,<对象>,<路径>"
 
-#: builtin/update-index.c:780
+#: builtin/update-index.c:781
 msgid "add the specified entry to the index"
 msgstr "添加指定的条目到索引区"
 
-#: builtin/update-index.c:784
+#: builtin/update-index.c:785
 msgid "(+/-)x"
 msgstr "(+/-)x"
 
-#: builtin/update-index.c:785
+#: builtin/update-index.c:786
 msgid "override the executable bit of the listed files"
 msgstr "覆盖列表里文件的可执行位"
 
-#: builtin/update-index.c:789
+#: builtin/update-index.c:790
 msgid "mark files as \"not changing\""
 msgstr "把文件标记为 \"没有变更\""
 
-#: builtin/update-index.c:792
+#: builtin/update-index.c:793
 msgid "clear assumed-unchanged bit"
 msgstr "清除 assumed-unchanged 位"
 
-#: builtin/update-index.c:795
+#: builtin/update-index.c:796
 msgid "mark files as \"index-only\""
 msgstr "把文件标记为 \"仅索引\""
 
-#: builtin/update-index.c:798
+#: builtin/update-index.c:799
 msgid "clear skip-worktree bit"
 msgstr "清除 skip-worktree 位"
 
-#: builtin/update-index.c:801
+#: builtin/update-index.c:802
 msgid "add to index only; do not add content to object database"
 msgstr "只添加到索引区;不添加对象到对象库"
 
-#: builtin/update-index.c:803
+#: builtin/update-index.c:804
 msgid "remove named paths even if present in worktree"
 msgstr "即使存在工作区里,也删除路径"
 
-#: builtin/update-index.c:805
+#: builtin/update-index.c:806
 msgid "with --stdin: input lines are terminated by null bytes"
 msgstr "携带 --stdin:输入的行以 null 字符终止"
 
-#: builtin/update-index.c:807
+#: builtin/update-index.c:808
 msgid "read list of paths to be updated from standard input"
 msgstr "从标准输入中读取需要更新的路径列表"
 
-#: builtin/update-index.c:811
+#: builtin/update-index.c:812
 msgid "add entries from standard input to the index"
 msgstr "从标准输入添加条目到索引区"
 
-#: builtin/update-index.c:815
+#: builtin/update-index.c:816
 msgid "repopulate stages #2 and #3 for the listed paths"
 msgstr "为指定文件重新生成第2和第3暂存区"
 
-#: builtin/update-index.c:819
+#: builtin/update-index.c:820
 msgid "only update entries that differ from HEAD"
 msgstr "只更新与 HEAD 不同的条目"
 
-#: builtin/update-index.c:823
+#: builtin/update-index.c:824
 msgid "ignore files missing from worktree"
 msgstr "忽略工作区丢失的文件"
 
-#: builtin/update-index.c:826
+#: builtin/update-index.c:827
 msgid "report actions to standard output"
 msgstr "在标准输出显示操作"
 
-#: builtin/update-index.c:828
+#: builtin/update-index.c:829
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr "(for porcelains) 忘记保存的未解决的冲突"
 
-#: builtin/update-index.c:832
+#: builtin/update-index.c:833
 msgid "write index in this format"
 msgstr "以这种格式写入索引区"
 
-#: builtin/update-index.c:834
+#: builtin/update-index.c:835
 msgid "enable or disable split index"
 msgstr "启用或禁用索引拆分"
 
 #: builtin/update-ref.c:9
-msgid "git update-ref [options] -d <refname> [<oldval>]"
-msgstr "git update-ref [选项] -d <引用名> [<旧值>]"
+msgid "git update-ref [<options>] -d <refname> [<old-val>]"
+msgstr "git update-ref [<选项>] -d <引用名> [<旧值>]"
 
 #: builtin/update-ref.c:10
-msgid "git update-ref [options]    <refname> <newval> [<oldval>]"
-msgstr "git update-ref [选项]    <引用名> <新值> [<旧值>]"
+msgid "git update-ref [<options>]    <refname> <new-val> [<old-val>]"
+msgstr "git update-ref [<选项>]    <引用名> <新值> [<旧值>]"
 
 #: builtin/update-ref.c:11
-msgid "git update-ref [options] --stdin [-z]"
-msgstr "git update-ref [选项] --stdin [-z]"
+msgid "git update-ref [<options>] --stdin [-z]"
+msgstr "git update-ref [<选项>] --stdin [-z]"
 
-#: builtin/update-ref.c:363
+#: builtin/update-ref.c:359
 msgid "delete the reference"
 msgstr "删除引用"
 
-#: builtin/update-ref.c:365
+#: builtin/update-ref.c:361
 msgid "update <refname> not the one it points to"
 msgstr "更新 <引用名> 本身而不是它指向的引用"
 
-#: builtin/update-ref.c:366
+#: builtin/update-ref.c:362
 msgid "stdin has NUL-terminated arguments"
 msgstr "标准输入有以 NUL 字符终止的参数"
 
-#: builtin/update-ref.c:367
+#: builtin/update-ref.c:363
 msgid "read updates from stdin"
 msgstr "从标准输入读取更新"
 
@@ -9875,16 +9919,16 @@ msgid "update the info files from scratch"
 msgstr "从头开始更新文件信息"
 
 #: builtin/verify-commit.c:17
-msgid "git verify-commit [-v|--verbose] <commit>..."
-msgstr "git verify-commit [-v|--verbose] <提交>..."
+msgid "git verify-commit [-v | --verbose] <commit>..."
+msgstr "git verify-commit [-v | --verbose] <提交>..."
 
 #: builtin/verify-commit.c:75
 msgid "print commit contents"
 msgstr "打印提交内容"
 
 #: builtin/verify-pack.c:54
-msgid "git verify-pack [-v|--verbose] [-s|--stat-only] <pack>..."
-msgstr "git verify-pack [-v|--verbose] [-s|--stat-only] <pack>..."
+msgid "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
+msgstr "git verify-pack [-v | --verbose] [-s | --stat-only] <包>..."
 
 #: builtin/verify-pack.c:64
 msgid "verbose"
@@ -9895,8 +9939,8 @@ msgid "show statistics only"
 msgstr "只显示统计"
 
 #: builtin/verify-tag.c:17
-msgid "git verify-tag [-v|--verbose] <tag>..."
-msgstr "git verify-tag [-v|--verbose] <tag>..."
+msgid "git verify-tag [-v | --verbose] <tag>..."
+msgstr "git verify-tag [-v | --verbose] <标签>..."
 
 #: builtin/verify-tag.c:73
 msgid "print tag contents"
@@ -9922,7 +9966,7 @@ msgstr "只对调试有用"
 msgid "print debugging messages to stderr"
 msgstr "调试信息输出到标准错误"
 
-#: git.c:17
+#: git.c:14
 msgid ""
 "'git help -a' and 'git help -g' list available subcommands and some\n"
 "concept guides. See 'git help <command>' or 'git help <concept>'\n"
@@ -10040,17 +10084,17 @@ msgstr "用 <n> 位数字显示 SHA-1 哈希值"
 msgid "update the index with reused conflict resolution if possible"
 msgstr "如果可能,重用冲突解决更新索引"
 
-#: git-am.sh:52
+#: git-am.sh:53
 msgid "You need to set your committer info first"
 msgstr "您需要先设置你的提交者信息"
 
-#: git-am.sh:97
+#: git-am.sh:98
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
 msgstr "您好像在上一次 'am' 失败后移动了 HEAD。未回退至 ORIG_HEAD"
 
-#: git-am.sh:107
+#: git-am.sh:108
 #, sh-format
 msgid ""
 "When you have resolved this problem, run \"$cmdline --continue\".\n"
@@ -10061,19 +10105,19 @@ msgstr ""
 "如果您想跳过此补丁,则执行 \"$cmdline --skip\"。\n"
 "要恢复原分支并停止打补丁,执行 \"$cmdline --abort\"。"
 
-#: git-am.sh:123
+#: git-am.sh:124
 msgid "Cannot fall back to three-way merge."
 msgstr "无法求助于三路合并。"
 
-#: git-am.sh:139
+#: git-am.sh:140
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
 msgstr "版本库缺乏必要的数据(blob)对象以进行三路合并。"
 
-#: git-am.sh:141
+#: git-am.sh:142
 msgid "Using index info to reconstruct a base tree..."
 msgstr "使用索引来重建一个(三路合并的)基础目录树..."
 
-#: git-am.sh:156
+#: git-am.sh:157
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -10081,28 +10125,28 @@ msgstr ""
 "您是否曾手动编辑过您的补丁?\n"
 "无法应用补丁到索引中的数据(blob)对象上。"
 
-#: git-am.sh:165
+#: git-am.sh:166
 msgid "Falling back to patching base and 3-way merge..."
 msgstr "转而在基础版本上打补丁及进行三路合并..."
 
-#: git-am.sh:181
+#: git-am.sh:182
 msgid "Failed to merge in the changes."
 msgstr "无法合并变更。"
 
-#: git-am.sh:276
+#: git-am.sh:277
 msgid "Only one StGIT patch series can be applied at once"
 msgstr "一次只能有一个 StGIT 补丁队列被应用"
 
-#: git-am.sh:363
+#: git-am.sh:364
 #, sh-format
 msgid "Patch format $patch_format is not supported."
 msgstr "不支持 $patch_format 补丁格式。"
 
-#: git-am.sh:365
+#: git-am.sh:366
 msgid "Patch format detection failed."
 msgstr "补丁格式检测失败。"
 
-#: git-am.sh:392
+#: git-am.sh:398
 msgid ""
 "The -b/--binary option has been a no-op for long time, and\n"
 "it will be removed. Please do not use it anymore."
@@ -10110,16 +10154,16 @@ msgstr ""
 "参数 -b/--binary 已经很长时间不做任何实质操作了,并且将被删除。\n"
 "请不要再使用它了。"
 
-#: git-am.sh:486
+#: git-am.sh:496
 #, sh-format
 msgid "previous rebase directory $dotest still exists but mbox given."
 msgstr "之前的变基目录 $dotest 仍然存在,但却提供了 mbox。"
 
-#: git-am.sh:491
+#: git-am.sh:501
 msgid "Please make up your mind. --skip or --abort?"
 msgstr "请下决心。--skip 或是 --abort ?"
 
-#: git-am.sh:527
+#: git-am.sh:537
 #, sh-format
 msgid ""
 "Stray $dotest directory found.\n"
@@ -10128,16 +10172,16 @@ msgstr ""
 "发现了错误的 $dotest 目录。\n"
 "使用 \"git am --abort\" 删除它。"
 
-#: git-am.sh:535
+#: git-am.sh:545
 msgid "Resolve operation not in progress, we are not resuming."
 msgstr "解决操作未进行,我们不会继续。"
 
-#: git-am.sh:601
+#: git-am.sh:612
 #, sh-format
 msgid "Dirty index: cannot apply patches (dirty: $files)"
 msgstr "脏的索引:不能应用补丁(脏文件:$files)"
 
-#: git-am.sh:705
+#: git-am.sh:722
 #, sh-format
 msgid ""
 "Patch is empty.  Was it split wrong?\n"
@@ -10148,15 +10192,15 @@ msgstr ""
 "如果您想要跳过这个补丁,执行 \"$cmdline --skip\"。\n"
 "要恢复原分支并停止打补丁,执行 \"$cmdline --abort\"。"
 
-#: git-am.sh:732
+#: git-am.sh:749
 msgid "Patch does not have a valid e-mail address."
 msgstr "补丁中没有一个有效的邮件地址。"
 
-#: git-am.sh:779
+#: git-am.sh:796
 msgid "cannot be interactive without stdin connected to a terminal."
 msgstr "标准输入没有和终端关联,不能进行交互式操作。"
 
-#: git-am.sh:783
+#: git-am.sh:800
 msgid "Commit Body is:"
 msgstr "提交内容为:"
 
@@ -10164,16 +10208,16 @@ msgstr "提交内容为:"
 #. TRANSLATORS: Make sure to include [y], [n], [e], [v] and [a]
 #. in your translation. The program will only accept English
 #. input at this point.
-#: git-am.sh:790
+#: git-am.sh:807
 msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all "
 msgstr "应用?[y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all "
 
-#: git-am.sh:826
+#: git-am.sh:843
 #, sh-format
 msgid "Applying: $FIRSTLINE"
 msgstr "正应用:$FIRSTLINE"
 
-#: git-am.sh:847
+#: git-am.sh:864
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -10183,22 +10227,22 @@ msgstr ""
 "如果没有什么要添加到暂存区的,则很可能是其它提交已经引入了相同的变更。\n"
 "您也许想要跳过这个补丁。"
 
-#: git-am.sh:855
+#: git-am.sh:872
 msgid ""
 "You still have unmerged paths in your index\n"
 "did you forget to use 'git add'?"
 msgstr "您的索引中仍有未合并的路径。您是否忘了执行 'git add'?"
 
-#: git-am.sh:871
+#: git-am.sh:888
 msgid "No changes -- Patch already applied."
 msgstr "没有变更 —— 补丁已经应用过。"
 
-#: git-am.sh:881
+#: git-am.sh:898
 #, sh-format
 msgid "Patch failed at $msgnum $FIRSTLINE"
 msgstr "补丁失败于 $msgnum $FIRSTLINE"
 
-#: git-am.sh:884
+#: git-am.sh:901
 #, sh-format
 msgid ""
 "The copy of the patch that failed is found in:\n"
@@ -10207,7 +10251,7 @@ msgstr ""
 "失败的补丁文件副本位于:\n"
 "   $dotest/patch"
 
-#: git-am.sh:902
+#: git-am.sh:919
 msgid "applying to an empty history"
 msgstr "正应用到一个空历史上"
 
@@ -10240,8 +10284,8 @@ msgstr "坏的 HEAD - 我需要一个 HEAD"
 #: git-bisect.sh:130
 #, sh-format
 msgid ""
-"Checking out '$start_head' failed. Try 'git bisect reset <validbranch>'."
-msgstr "检出 '$start_head' 失败。尝试 'git bisect reset <validbranch>'。"
+"Checking out '$start_head' failed. Try 'git bisect reset <valid-branch>'."
+msgstr "检出 '$start_head' 失败。尝试 'git bisect reset <有效分支>'。"
 
 #: git-bisect.sh:140
 msgid "won't bisect on cg-seek'ed tree"
@@ -10270,11 +10314,11 @@ msgstr "请在调用 'bisect_state' 时跟至少一个参数。"
 msgid "Bad rev input: $rev"
 msgstr "输入坏的版本:$rev"
 
-#: git-bisect.sh:250
+#: git-bisect.sh:253
 msgid "'git bisect bad' can take only one argument."
 msgstr "'git bisect bad' 只能带一个参数。"
 
-#: git-bisect.sh:273
+#: git-bisect.sh:276
 msgid "Warning: bisecting only with a bad commit."
 msgstr "警告:在仅有一个坏提交下进行二分查找。"
 
@@ -10282,11 +10326,11 @@ msgstr "警告:在仅有一个坏提交下进行二分查找。"
 #. TRANSLATORS: Make sure to include [Y] and [n] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-bisect.sh:279
+#: git-bisect.sh:282
 msgid "Are you sure [Y/n]? "
 msgstr "您确认么[Y/n]? "
 
-#: git-bisect.sh:289
+#: git-bisect.sh:292
 msgid ""
 "You need to give me at least one good and one bad revision.\n"
 "(You can use \"git bisect bad\" and \"git bisect good\" for that.)"
@@ -10294,7 +10338,7 @@ msgstr ""
 "您需要给我至少一个好版本和一个坏版本。\n"
 "(为此您可以用 \"git bisect bad\" 和 \"git bisect good\" 命令。)"
 
-#: git-bisect.sh:292
+#: git-bisect.sh:295
 msgid ""
 "You need to start by \"git bisect start\".\n"
 "You then need to give me at least one good and one bad revision.\n"
@@ -10304,16 +10348,16 @@ msgstr ""
 "然后需要提供我至少一个好版本和一个坏版本。\n"
 "(为此您可以用 \"git bisect bad\" 和 \"git bisect good\" 命令。)"
 
-#: git-bisect.sh:363 git-bisect.sh:490
+#: git-bisect.sh:366 git-bisect.sh:493
 msgid "We are not bisecting."
 msgstr "我们没有在二分查找。"
 
-#: git-bisect.sh:370
+#: git-bisect.sh:373
 #, sh-format
 msgid "'$invalid' is not a valid commit"
 msgstr "'$invalid' 不是一个有效的提交"
 
-#: git-bisect.sh:379
+#: git-bisect.sh:382
 #, sh-format
 msgid ""
 "Could not check out original HEAD '$branch'.\n"
@@ -10322,25 +10366,25 @@ msgstr ""
 "不能检出原始 HEAD '$branch'。\n"
 "尝试 'git bisect reset <提交>'。"
 
-#: git-bisect.sh:406
+#: git-bisect.sh:409
 msgid "No logfile given"
 msgstr "未提供日志文件"
 
-#: git-bisect.sh:407
+#: git-bisect.sh:410
 #, sh-format
 msgid "cannot read $file for replaying"
 msgstr "不能读取 $file 来重放"
 
-#: git-bisect.sh:424
+#: git-bisect.sh:427
 msgid "?? what are you talking about?"
 msgstr "?? 您在说什么?"
 
-#: git-bisect.sh:436
+#: git-bisect.sh:439
 #, sh-format
 msgid "running $command"
 msgstr "运行 $command"
 
-#: git-bisect.sh:443
+#: git-bisect.sh:446
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -10349,11 +10393,11 @@ msgstr ""
 "二分查找运行失败:\n"
 "命令 '$command' 的退出码 $res 小于 0 或大于等于 128"
 
-#: git-bisect.sh:469
+#: git-bisect.sh:472
 msgid "bisect run cannot continue any more"
 msgstr "二分查找不能继续运行"
 
-#: git-bisect.sh:475
+#: git-bisect.sh:478
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -10362,7 +10406,7 @@ msgstr ""
 "二分查找运行失败:\n"
 "'bisect_state $state' 退出码为 $res"
 
-#: git-bisect.sh:482
+#: git-bisect.sh:485
 msgid "bisect run success"
 msgstr "二分查找运行成功"
 
@@ -10373,7 +10417,7 @@ msgid ""
 "as appropriate to mark resolution and make a commit."
 msgstr ""
 "Pull 不可用,因为您尚有未合并的文件。请先在工作区改正文件,\n"
-"然后酌情使用 'git add/rm <file>' 标记解决方案,再做提交。"
+"然后酌情使用 'git add/rm <文件>' 标记解决方案,再做提交。"
 
 #: git-pull.sh:25
 msgid "Pull is not possible because you have unmerged files."
@@ -10973,373 +11017,3 @@ msgstr "无法递归进子模组路径 '$sm_path'"
 #, sh-format
 msgid "Synchronizing submodule url for '$displaypath'"
 msgstr "为 '$displaypath' 同步子模组 url"
-
-#~ msgid "Failed to lock ref for update"
-#~ msgstr "无法为更新锁定引用"
-
-#~ msgid "Failed to write ref"
-#~ msgstr "不能写引用"
-
-#~ msgid "Failed to lock HEAD during fast_forward_to"
-#~ msgstr "在快进时无法为 HEAD 加锁"
-
-#~ msgid "invalid commit: %s"
-#~ msgstr "无效的提交:%s"
-
-#~ msgid "cannot lock HEAD ref"
-#~ msgstr "无法锁定 HEAD 引用"
-
-#~ msgid "cannot update HEAD ref"
-#~ msgstr "无法更新 HEAD 引用"
-
-#~ msgid "Invalid %s: '%s'"
-#~ msgstr "无效的 %s:'%s'"
-
-#~ msgid "cannot tell cwd"
-#~ msgstr "无法获知当前路径"
-
-#~ msgid "%s: cannot lock the ref"
-#~ msgstr "%s:不能锁定引用"
-
-#~ msgid "%s: cannot update the ref"
-#~ msgstr "%s:不能更新引用"
-
-#~ msgid "commit has empty message"
-#~ msgstr "提交说明为空"
-
-#~ msgid "Failed to chdir: %s"
-#~ msgstr "无法切换目录:%s"
-
-#~ msgid "key id"
-#~ msgstr "key id"
-
-#~ msgid "Tracking not set up: name too long: %s"
-#~ msgstr "跟踪未设置:名字太长:%s"
-
-#~ msgid "bug"
-#~ msgstr "bug"
-
-#  译者:注意保持句尾空格
-#~ msgid "ahead "
-#~ msgstr "领先 "
-
-#  译者:注意保持句尾空格
-#~ msgid ", behind "
-#~ msgstr ",落后 "
-
-#~ msgid "could not find .gitmodules in index"
-#~ msgstr "无法在索引中找到 .gitmodules"
-
-#~ msgid "reading updated .gitmodules failed"
-#~ msgstr "读取更新后的 .gitmodules 失败"
-
-#~ msgid "unable to stat updated .gitmodules"
-#~ msgstr "不能枚举更新后的 .gitmodules"
-
-#~ msgid "unable to remove .gitmodules from index"
-#~ msgstr "不能从索引中移除 .gitmodules"
-
-#~ msgid "adding updated .gitmodules failed"
-#~ msgstr "添加更新后的 .gitmodules 失败"
-
-#  译者:字符串首行行首要添加“warning: ”字串,故此首行要较其余行短
-#~ msgid ""
-#~ "The behavior of 'git add %s (or %s)' with no path argument from a\n"
-#~ "subdirectory of the tree will change in Git 2.0 and should not be used "
-#~ "anymore.\n"
-#~ "To add content for the whole tree, run:\n"
-#~ "\n"
-#~ "  git add %s :/\n"
-#~ "  (or git add %s :/)\n"
-#~ "\n"
-#~ "To restrict the command to the current directory, run:\n"
-#~ "\n"
-#~ "  git add %s .\n"
-#~ "  (or git add %s .)\n"
-#~ "\n"
-#~ "With the current Git version, the command is restricted to the current "
-#~ "directory.\n"
-#~ msgstr ""
-#~ "在 Git 2.0 版本,位于一个子目录下不带任何路径参数地执行命令\n"
-#~ "'git add %s (或 %s)' 的行为将被改变,不要再继续使用了。\n"
-#~ "如果要添加整个目录树的内容,执行:\n"
-#~ "\n"
-#~ "  git add %s :/\n"
-#~ "  (或 git add %s :/)\n"
-#~ "\n"
-#~ "如果要限制该命令只作用于当前目录,执行:\n"
-#~ "\n"
-#~ "  git add %s .\n"
-#~ "  (或 git add %s .)\n"
-#~ "\n"
-#~ "对于当前版本的 Git,这条命令只作用于当前目录。\n"
-
-#~ msgid ""
-#~ "You ran 'git add' with neither '-A (--all)' or '--ignore-removal',\n"
-#~ "whose behaviour will change in Git 2.0 with respect to paths you "
-#~ "removed.\n"
-#~ "Paths like '%s' that are\n"
-#~ "removed from your working tree are ignored with this version of Git.\n"
-#~ "\n"
-#~ "* 'git add --ignore-removal <pathspec>', which is the current default,\n"
-#~ "  ignores paths you removed from your working tree.\n"
-#~ "\n"
-#~ "* 'git add --all <pathspec>' will let you also record the removals.\n"
-#~ "\n"
-#~ "Run 'git status' to check the paths you removed from your working tree.\n"
-#~ msgstr ""
-#~ "您在运行 'git add' 时没有指定 '-A (--all)' 或 '--ignore-removal',\n"
-#~ "针对其中本地移除路径的行为将在 Git 2.0 版本库发生变化。\n"
-#~ "像本地工作区移除的路径 '%s'\n"
-#~ "在此版本的 Git 中被忽略。\n"
-#~ "\n"
-#~ "* 'git add --ignore-removal <路径规则>',是当前版本的默认操作,\n"
-#~ "  忽略您本地工作区中移除的文件。\n"
-#~ "\n"
-#~ "* 'git add --all <路径规则>' 将让您同时对删除操作进行记录。\n"
-#~ "\n"
-#~ "运行 'git status' 来检查您本地工作区中移除的路径。\n"
-
-#~ msgid ""
-#~ "Auto packing the repository for optimum performance. You may also\n"
-#~ "run \"git gc\" manually. See \"git help gc\" for more information.\n"
-#~ msgstr ""
-#~ "自动打包版本库以求最佳性能。您还可以手动运行 \"git gc\"。\n"
-#~ "参见 \"git help gc\" 以获取更多信息。\n"
-
-#~ msgid ""
-#~ "Updates were rejected because a pushed branch tip is behind its remote\n"
-#~ "counterpart. If you did not intend to push that branch, you may want to\n"
-#~ "specify branches to push or set the 'push.default' configuration "
-#~ "variable\n"
-#~ "to 'simple', 'current' or 'upstream' to push only the current branch."
-#~ msgstr ""
-#~ "更新被拒绝,因为推送的一个分支的最新提交落后于其对应的远程分支。\n"
-#~ "如果您并非有意推送该分支,您可以在推送时指定要推送的分支,或者将\n"
-#~ "配置变量 'push.default' 设置为 'simple'、'current' 或 'upstream'\n"
-#~ "以便只推送当前分支。"
-
-#  译者:为保证在输出中对齐,注意调整句中空格!
-#~ msgid "copied:     %s -> %s"
-#~ msgstr "拷贝:      %s -> %s"
-
-#  译者:为保证在输出中对齐,注意调整句中空格!
-#~ msgid "deleted:    %s"
-#~ msgstr "删除:      %s"
-
-#  译者:为保证在输出中对齐,注意调整句中空格!
-#~ msgid "modified:   %s"
-#~ msgstr "修改:      %s"
-
-#  译者:为保证在输出中对齐,注意调整句中空格!
-#~ msgid "renamed:    %s -> %s"
-#~ msgstr "重命名:    %s -> %s"
-
-#  译者:为保证在输出中对齐,注意调整句中空格!
-#~ msgid "unmerged:   %s"
-#~ msgstr "未合并:    %s"
-
-#  译者:字符串首行行首要添加“warning: ”字串,故此首行要较其余行短
-#~ msgid ""
-#~ "push.default is unset; its implicit value is changing in\n"
-#~ "Git 2.0 from 'matching' to 'simple'. To squelch this message\n"
-#~ "and maintain the current behavior after the default changes, use:\n"
-#~ "\n"
-#~ "  git config --global push.default matching\n"
-#~ "\n"
-#~ "To squelch this message and adopt the new behavior now, use:\n"
-#~ "\n"
-#~ "  git config --global push.default simple\n"
-#~ "\n"
-#~ "See 'git help config' and search for 'push.default' for further "
-#~ "information.\n"
-#~ "(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode\n"
-#~ "'current' instead of 'simple' if you sometimes use older versions of Git)"
-#~ msgstr ""
-#~ "push.default 未设置,它的默认值将在 Git 2.0 由 'matching'\n"
-#~ "改变为 'simple'。若要不再显示本信息并保持传统习惯,进行如下设置:\n"
-#~ "\n"
-#~ "  git config --global push.default matching\n"
-#~ "\n"
-#~ "若要不再显示本信息并从现在开始采用新的使用习惯,设置:\n"
-#~ "\n"
-#~ "  git config --global push.default simple\n"
-#~ "\n"
-#~ "参见 'git help config' 并查找 'push.default' 以获取更多信息。\n"
-#~ "('simple' 模式由 Git 1.7.11 版本引入。如果您有时要使用老版本的 Git,\n"
-#~ "为保持兼容,请用 'current' 代替 'simple')"
-
-#~ msgid "input paths are terminated by a null character"
-#~ msgstr "输入路径以null字符终止"
-
-#~ msgid ""
-#~ "The following untracked files would NOT be saved but need to be removed "
-#~ "by stash save:"
-#~ msgstr "如下未跟踪文件将不会被保存但是将会因为进度保存而需要被删除:"
-
-#~ msgid ""
-#~ "Aborting. Consider using either the --force or --include-untracked option."
-#~ msgstr "终止。考虑使用 --force 或者 --include-untracked 选项。"
-
-#~ msgid ""
-#~ "the following submodule (or one of its nested submodule)\n"
-#~ "uses a .git directory:"
-#~ msgid_plural ""
-#~ "the following submodules (or one of its nested submodule)\n"
-#~ "use a .git directory:"
-#~ msgstr[0] "如下子模组(或一个其嵌套的子模组)使用了一个 .git 目录:"
-#~ msgstr[1] "如下子模组(或一个其嵌套的子模组)使用了一个 .git 目录:"
-
-#  译者:注意保持前导空格
-#~ msgid "  (fix conflicts and then run \"git am --resolved\")"
-#~ msgstr "  (解决冲突,然后运行 \"git am --resolved\")"
-
-#  译者:注意保持前导空格
-#~ msgid "  (all conflicts fixed: run \"git commit\")"
-#~ msgstr "  (解决所有冲突后,执行 \"git commit\")"
-
-#~ msgid "more than %d trees given: '%s'"
-#~ msgstr "提供了超过 %d 个树对象:'%s'"
-
-#~ msgid "You cannot combine --no-ff with --ff-only."
-#~ msgstr "您不能将 --no-ff 与 --ff-only 同时使用。"
-
-#~ msgid ""
-#~ "submodule '%s' (or one of its nested submodules) uses a .git directory\n"
-#~ "(use 'rm -rf' if you really want to remove it including all of its "
-#~ "history)"
-#~ msgstr ""
-#~ "子模组 '%s'(或者它的一个嵌套子模组)使用一个 .git 目录\n"
-#~ "(使用 'rm -rf' 命令如果您真的想删除它及其全部历史)"
-
-#~ msgid ""
-#~ "'%s' has changes staged in the index\n"
-#~ "(use --cached to keep the file, or -f to force removal)"
-#~ msgstr ""
-#~ "'%s' 有变更已暂存至索引中\n"
-#~ "(使用 --cached 保存文件,或用 -f 强制删除)"
-
-#~ msgid "show commits where no parent comes before its children"
-#~ msgstr "显示提交时以时间为序且父提交不能领先子提交"
-
-#~ msgid "show the HEAD reference"
-#~ msgstr "显示 HEAD 引用"
-
-#~ msgid "Submodule '$name' ($url) registered for path '$sm_path'"
-#~ msgstr "子模组 '$name' ($url) 已为路径 '$sm_path' 注册"
-
-#~ msgid "Change flags"
-#~ msgstr "修改参数"
-
-#~ msgid ""
-#~ "NOTE: no more files to clean; press \"t\" to toggle flags of git-clean."
-#~ msgstr "注意:没有要清理的文件;尝试按 \"t\" 切换 git-clean 的选项。"
-
-#~ msgid "Failed to recurse into submodule path '$prefix$sm_path'"
-#~ msgstr "无法递归进子模组路径 '$prefix$sm_path'"
-
-#~ msgid "git shortlog [-n] [-s] [-e] [-w] [rev-opts] [--] [<commit-id>... ]"
-#~ msgstr "git shortlog [-n] [-s] [-e] [-w] [版本选项] [--] [<提交号>... ]"
-
-#~ msgid "See 'git help <command>' for more information on a specific command."
-#~ msgstr "参见 'git help <command>' 以获得该特定命令的详细信息。"
-
-#~ msgid "BUG: impossible combination of %d and %p"
-#~ msgstr "BUG: 无法组合 %d 和 %p"
-
-#  译者:以下三条实际为一个段落
-#~ msgid "It took %.2f seconds to enumerate untracked files.  'status -uno'"
-#~ msgstr "耗费了 %.2f 秒以枚举未跟踪的文件。'status -uno'"
-
-#  译者:为对齐,下面两句内容有调整
-#~ msgid "may speed it up, but you have to be careful not to forget to add"
-#~ msgstr "也许能提高速度,但您需要小心不要忘了添加新文件"
-
-#~ msgid "new files yourself (see 'git help status')."
-#~ msgstr "(参见 'git help status')。"
-
-#~ msgid "use any ref in .git/refs"
-#~ msgstr "使用 .git/refs 里的任意引用"
-
-#~ msgid "use any tag in .git/refs/tags"
-#~ msgstr "使用 .git/refs/tags 里的任意 tag"
-
-#~ msgid "bad object %s"
-#~ msgstr "坏对象 %s"
-
-#~ msgid "bogus committer info %s"
-#~ msgstr "虚假的提交者信息 %s"
-
-#~ msgid "can't fdopen 'show' output fd"
-#~ msgstr "不能打开 'show' 输出文件句柄"
-
-#~ msgid "failed to close pipe to 'show' for object '%s'"
-#~ msgstr "无法为对象 '%s' 的 'show' 关闭管道"
-
-#~ msgid " 0 files changed"
-#~ msgstr " 0 个文件被修改"
-
-#~ msgid " %d file changed"
-#~ msgid_plural " %d files changed"
-#~ msgstr[0] " %d 个文件被修改"
-#~ msgstr[1] " %d 个文件被修改"
-
-#~ msgid ", %d insertion(+)"
-#~ msgid_plural ", %d insertions(+)"
-#~ msgstr[0] ",插入 %d 行(+)"
-#~ msgstr[1] ",插入 %d 行(+)"
-
-#~ msgid ", %d deletion(-)"
-#~ msgid_plural ", %d deletions(-)"
-#~ msgstr[0] ",删除 %d 行(-)"
-#~ msgstr[1] ",删除 %d 行(-)"
-
-#~ msgid "You do not have a valid HEAD"
-#~ msgstr "您没有一个有效的 HEAD"
-
-#~ msgid "oops"
-#~ msgstr "哎哟"
-
-#~ msgid "Would not remove %s\n"
-#~ msgstr "不会删除 %s\n"
-
-#~ msgid "Not removing %s\n"
-#~ msgstr "未删除 %s\n"
-
-#~ msgid "git remote set-head <name> (-a | -d | <branch>])"
-#~ msgstr "git remote set-head <名称> (-a | -d | <分支>])"
-
-#~ msgid "Could not read index"
-#~ msgstr "不能读取索引"
-
-#  译者:中文字符串拼接,可删除前导空格
-#~ msgid " (use \"git add\" to track)"
-#~ msgstr "(使用 \"git add\" 建立跟踪)"
-
-#~ msgid "--detach cannot be used with -b/-B/--orphan"
-#~ msgstr "--detach 不能和 -b/-B/--orphan 同时使用"
-
-#~ msgid "--detach cannot be used with -t"
-#~ msgstr "--detach 不能和 -t 同时使用"
-
-#~ msgid "--orphan and -b|-B are mutually exclusive"
-#~ msgstr "--orphan 和 -b|-B 互斥"
-
-#~ msgid "--orphan cannot be used with -t"
-#~ msgstr "--orphan 不能和 -t 同时使用"
-
-#~ msgid "git checkout: -f and -m are incompatible"
-#~ msgstr "git checkout:-f 和 -m 不兼容"
-
-#~ msgid ""
-#~ "git checkout: updating paths is incompatible with switching branches."
-#~ msgstr "git checkout:更新路径和切换分支不兼容。"
-
-#~ msgid "diff setup failed"
-#~ msgstr "diff 设置失败"
-
-#~ msgid "merge-recursive: disk full?"
-#~ msgstr "merge-recursive:磁盘已满?"
-
-#~ msgid "diff_setup_done failed"
-#~ msgstr "diff_setup_done 失败"