msvc: Fix build by adding missing symbol defines
[gitweb.git] / po / zh_CN.po
index 46d158ffd1ef5d819c5411d0d9906724fa57c215..583ed3385df3d5d5fe4bba063d35c733a52558f6 100644 (file)
@@ -1,6 +1,6 @@
 # Chinese translations for Git package
 # Git 软件包的简体中文翻译.
-# Copyright (C) 2012 Jiang Xin <worldhello.net AT gmail.com>
+# Copyright (C) 2012,2013 Jiang Xin <worldhello.net AT gmail.com>
 # This file is distributed under the same license as the Git package.
 # Contributers:
 #   - Jiang Xin <worldhello.net AT gmail.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: 2012-09-15 10:21+0800\n"
-"PO-Revision-Date: 2012-09-07 17:56+0800\n"
+"POT-Creation-Date: 2013-02-19 13:32+0800\n"
+"PO-Revision-Date: 2013-02-19 14:44+0800\n"
 "Last-Translator: Jiang Xin <worldhello.net@gmail.com>\n"
 "Language-Team: GitHub <https://github.com/gotgit/git/>\n"
 "Language: zh_CN\n"
@@ -22,7 +22,7 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: advice.c:40
+#: advice.c:49
 #, c-format
 msgid "hint: %.*s\n"
 msgstr "提示:%.*s\n"
@@ -31,7 +31,7 @@ msgstr "提示:%.*s\n"
 #. * Message used both when 'git commit' fails and when
 #. * other commands doing a merge do.
 #.
-#: advice.c:70
+#: advice.c:79
 msgid ""
 "Fix them up in the work tree,\n"
 "and then use 'git add/rm <file>' as\n"
@@ -43,93 +43,98 @@ msgstr ""
 "或使用 'git commit -a'。"
 
 #: archive.c:10
-#, fuzzy
 msgid "git archive [options] <tree-ish> [<path>...]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git archive [选项] <树或提交> [<路径>...]"
 
 #: archive.c:11
-#, fuzzy
 msgid "git archive --list"
-msgstr "git archive:NACK %s"
+msgstr "git archive --list"
 
 #: archive.c:12
 msgid ""
 "git archive --remote <repo> [--exec <cmd>] [options] <tree-ish> [<path>...]"
 msgstr ""
+"git archive --remote <版本库> [--exec <命令>] [选项] <树或提交> [<路径>...]"
 
 #: archive.c:13
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
-msgstr ""
+msgstr "git archive --remote <版本库> [--exec <命令>] --list"
 
-#: archive.c:322
+#: archive.c:323
 msgid "fmt"
-msgstr ""
+msgstr "格式"
 
-#: archive.c:322
+#: archive.c:323
 msgid "archive format"
-msgstr ""
+msgstr "归档格式"
 
-#: archive.c:323 builtin/log.c:1079
+#: archive.c:324 builtin/log.c:1115
 msgid "prefix"
-msgstr ""
+msgstr "前缀"
 
-#: archive.c:324
+#: archive.c:325
 msgid "prepend prefix to each pathname in the archive"
-msgstr ""
+msgstr "为归档中每个路径名加上前缀"
 
-#: archive.c:325 builtin/archive.c:91 builtin/blame.c:2332
-#: builtin/blame.c:2333 builtin/config.c:56 builtin/fast-export.c:642
-#: builtin/fast-export.c:644 builtin/grep.c:800 builtin/hash-object.c:77
-#: builtin/ls-files.c:494 builtin/ls-files.c:497 builtin/notes.c:537
-#: builtin/notes.c:694 builtin/read-tree.c:107 parse-options.h:149
+#: archive.c:326 builtin/archive.c:91 builtin/blame.c:2366
+#: builtin/blame.c:2367 builtin/config.c:55 builtin/fast-export.c:653
+#: builtin/fast-export.c:655 builtin/grep.c:715 builtin/hash-object.c:77
+#: builtin/ls-files.c:497 builtin/ls-files.c:500 builtin/notes.c:536
+#: builtin/notes.c:693 builtin/read-tree.c:107 parse-options.h:149
 msgid "file"
 msgstr "文件"
 
-#: archive.c:326 builtin/archive.c:92
+#: archive.c:327 builtin/archive.c:92
 msgid "write the archive to this file"
-msgstr ""
+msgstr "归档写入此文件"
 
-#: archive.c:328
-#, fuzzy
+#: archive.c:329
 msgid "read .gitattributes in working directory"
-msgstr "%s:已经存在于工作区中"
+msgstr "读取工作区中的 .gitattributes"
 
-#: archive.c:329
+#: archive.c:330
 msgid "report archived files on stderr"
-msgstr ""
+msgstr "在标准错误上报告归档文件"
 
-#: archive.c:330
+#: archive.c:331
 msgid "store only"
-msgstr ""
+msgstr "只存储"
 
-#: archive.c:331
+#: archive.c:332
 msgid "compress faster"
-msgstr ""
+msgstr "压缩速度更快"
 
-#: archive.c:339
+#: archive.c:340
 msgid "compress better"
-msgstr ""
+msgstr "压缩效果更好"
 
-#: archive.c:342
+#: archive.c:343
 msgid "list supported archive formats"
-msgstr ""
+msgstr "列出支持的归档格式"
 
-#: archive.c:344 builtin/archive.c:93 builtin/clone.c:85
+#: archive.c:345 builtin/archive.c:93 builtin/clone.c:85
 msgid "repo"
-msgstr ""
+msgstr "版本库"
 
-#: archive.c:345 builtin/archive.c:94
+#: archive.c:346 builtin/archive.c:94
 msgid "retrieve the archive from remote repository <repo>"
-msgstr ""
+msgstr "从远程版本库(<版本库>)提取归档文件"
 
-#: archive.c:346 builtin/archive.c:95 builtin/notes.c:616
-#, fuzzy
+#: archive.c:347 builtin/archive.c:95 builtin/notes.c:615
 msgid "command"
-msgstr "运行 $command"
+msgstr "命令"
 
-#: archive.c:347 builtin/archive.c:96
+#: archive.c:348 builtin/archive.c:96
 msgid "path to the remote git-upload-archive command"
+msgstr "远程 git-upload-archive 命令的路径"
+
+#: attr.c:259
+msgid ""
+"Negative patterns are forbidden in git attributes\n"
+"Use '\\!' for literal leading exclamation."
 msgstr ""
+"在 git attributes 中不允许使用负值模版\n"
+"当字符串确实要以感叹号开始时,使用 '\\!'。"
 
 #: bundle.c:36
 #, c-format
@@ -141,7 +146,7 @@ msgstr "'%s' 不像是一个 v2 版本的包文件"
 msgid "unrecognized header: %s%s (%d)"
 msgstr "未能识别的包头:%s%s (%d)"
 
-#: bundle.c:89 builtin/commit.c:714
+#: bundle.c:89 builtin/commit.c:674
 #, c-format
 msgid "could not open '%s'"
 msgstr "不能打开 '%s'"
@@ -150,9 +155,9 @@ msgstr "不能打开 '%s'"
 msgid "Repository lacks these prerequisite commits:"
 msgstr "版本库缺少这些必备的提交:"
 
-#: bundle.c:164 sequencer.c:557 sequencer.c:989 builtin/log.c:290
-#: builtin/log.c:727 builtin/log.c:1313 builtin/log.c:1529 builtin/merge.c:347
-#: builtin/shortlog.c:181
+#: bundle.c:164 sequencer.c:566 sequencer.c:998 builtin/log.c:299
+#: builtin/log.c:751 builtin/log.c:1358 builtin/log.c:1574 builtin/merge.c:347
+#: builtin/shortlog.c:157
 msgid "revision walk setup failed"
 msgstr "版本遍历设置失败"
 
@@ -178,7 +183,7 @@ msgstr[1] "这个包需要 %d 个这些引用"
 msgid "rev-list died"
 msgstr "rev-list 终止"
 
-#: bundle.c:300 builtin/log.c:1209 builtin/shortlog.c:284
+#: bundle.c:300 builtin/log.c:1254 builtin/shortlog.c:260
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "未能识别的参数:%s"
@@ -209,12 +214,12 @@ msgstr "不能创建 '%s'"
 msgid "index-pack died"
 msgstr "index-pack 终止"
 
-#: commit.c:48
+#: commit.c:50
 #, c-format
 msgid "could not parse %s"
 msgstr "不能解析 %s"
 
-#: commit.c:50
+#: commit.c:52
 #, c-format
 msgid "%s %s is not a commit!"
 msgstr "%s %s 不是一个提交!"
@@ -305,19 +310,24 @@ msgstr[0] "%lu 年前"
 msgstr[1] "%lu 年前"
 
 #  译者:注意保持前导空格
-#: diff.c:105
+#: diff.c:112
 #, c-format
-msgid "  Failed to parse dirstat cut-off percentage '%.*s'\n"
-msgstr "  无法解析 dirstat 阈值 '%.*s'\n"
+msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
+msgstr "  无法解析 dirstat 截止(cut-off)百分比 '%s'\n"
 
 #  译者:注意保持前导空格
-#: diff.c:110
+#: diff.c:117
 #, c-format
-msgid "  Unknown dirstat parameter '%.*s'\n"
-msgstr "  未知 dirstat 参数 '%.*s'\n"
+msgid "  Unknown dirstat parameter '%s'\n"
+msgstr "  未知的 dirstat 参数 '%s'\n"
 
 #: diff.c:210
 #, c-format
+msgid "Unknown value for 'diff.submodule' config variable: '%s'"
+msgstr "配置变量 'diff.submodule' 未知的取值:'%s'"
+
+#: diff.c:260
+#, c-format
 msgid ""
 "Found errors in 'diff.dirstat' config variable:\n"
 "%s"
@@ -325,32 +335,7 @@ msgstr ""
 "发现配置变量 'diff.dirstat' 中的错误:\n"
 "%s"
 
-#: diff.c:1401
-msgid " 0 files changed"
-msgstr " 0 个文件被修改"
-
-#: diff.c:1405
-#, c-format
-msgid " %d file changed"
-msgid_plural " %d files changed"
-msgstr[0] " %d 个文件被修改"
-msgstr[1] " %d 个文件被修改"
-
-#: diff.c:1422
-#, c-format
-msgid ", %d insertion(+)"
-msgid_plural ", %d insertions(+)"
-msgstr[0] ",插入 %d 行(+)"
-msgstr[1] ",插入 %d 行(+)"
-
-#: diff.c:1433
-#, c-format
-msgid ", %d deletion(-)"
-msgid_plural ", %d deletions(-)"
-msgstr[0] ",删除 %d 行(-)"
-msgstr[1] ",删除 %d 行(-)"
-
-#: diff.c:3460
+#: diff.c:3468
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -359,7 +344,12 @@ msgstr ""
 "无法解析 --dirstat/-X 选项的参数:\n"
 "%s"
 
-#: gpg-interface.c:59
+#: diff.c:3482
+#, c-format
+msgid "Failed to parse --submodule option parameter: '%s'"
+msgstr "无法解析 --submodule 选项的参数:'%s'"
+
+#: gpg-interface.c:59 gpg-interface.c:127
 msgid "could not run gpg."
 msgstr "不能执行 gpg。"
 
@@ -371,17 +361,27 @@ msgstr "gpg 没有接受数据"
 msgid "gpg failed to sign the data"
 msgstr "gpg 无法为数据签名"
 
-#: grep.c:1320
+#: gpg-interface.c:112
+#, c-format
+msgid "could not create temporary file '%s': %s"
+msgstr "不能创建临时文件 '%s':%s"
+
+#: gpg-interface.c:115
+#, c-format
+msgid "failed writing detached signature to '%s': %s"
+msgstr "无法将分离式签名写入 '%s':%s"
+
+#: grep.c:1622
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr "'%s':无法读取 %s"
 
-#: grep.c:1337
+#: grep.c:1639
 #, c-format
 msgid "'%s': %s"
 msgstr "'%s':%s"
 
-#: grep.c:1348
+#: grep.c:1650
 #, c-format
 msgid "'%s': short read %s"
 msgstr "'%s':读取不完整 %s"
@@ -395,7 +395,11 @@ msgstr "在 '%s' 下可用的 git 命令"
 msgid "git commands available from elsewhere on your $PATH"
 msgstr "在 $PATH 路径中的其他地方可用的 git 命令"
 
-#: help.c:275
+#: help.c:235
+msgid "The most commonly used git commands are:"
+msgstr "最常用的 git 命令有:"
+
+#: help.c:292
 #, c-format
 msgid ""
 "'%s' appears to be a git command, but we were not\n"
@@ -404,11 +408,11 @@ msgstr ""
 "'%s' 像是一个 git 命令,但却无法运行。\n"
 "可能是 git-%s 受损?"
 
-#: help.c:332
+#: help.c:349
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr "唉呀,您的系统中未发现 Git 命令。"
 
-#: help.c:354
+#: help.c:371
 #, c-format
 msgid ""
 "WARNING: You called a Git command named '%s', which does not exist.\n"
@@ -417,17 +421,17 @@ msgstr ""
 "警告:您运行一个不存在的 Git 命令 '%s'。继续执行假定您要要运行的\n"
 "是 '%s'"
 
-#: help.c:359
+#: help.c:376
 #, c-format
 msgid "in %0.1f seconds automatically..."
 msgstr "在 %0.1f 秒钟后自动运行..."
 
-#: help.c:366
+#: help.c:383
 #, c-format
 msgid "git: '%s' is not a git command. See 'git --help'."
 msgstr "git:'%s' 不是一个 git 命令。参见 'git --help'。"
 
-#: help.c:370
+#: help.c:387
 msgid ""
 "\n"
 "Did you mean this?"
@@ -441,6 +445,15 @@ msgstr[1] ""
 "\n"
 "您指的是这其中的某一个么?"
 
+#: merge.c:56
+msgid "failed to read the cache"
+msgstr "无法读取缓存"
+
+#: merge.c:110 builtin/checkout.c:333 builtin/checkout.c:534
+#: builtin/clone.c:586
+msgid "unable to write new index file"
+msgstr "无法写新的索引文件"
+
 #: merge-recursive.c:190
 #, c-format
 msgid "(bad commit)\n"
@@ -484,7 +497,7 @@ msgstr "不能读取对象 %s '%s'"
 #: merge-recursive.c:750
 #, c-format
 msgid "blob expected for %s '%s'"
-msgstr "%s '%s' 应为二进制对象(blob)"
+msgstr "%s '%s' 应为数据(blob)对象"
 
 #: merge-recursive.c:773 builtin/clone.c:302
 #, c-format
@@ -568,7 +581,7 @@ msgstr ""
 #: merge-recursive.c:1248
 #, c-format
 msgid "Renaming %s to %s and %s to %s instead"
-msgstr "而是重命名 %s 至 %s 以及 %s 至 %s"
+msgstr "而是重命名 %s 至 %s以及 %s 至 %s"
 
 #: merge-recursive.c:1447
 #, c-format
@@ -593,7 +606,7 @@ msgstr "不能读取对象 %s"
 #: merge-recursive.c:1516
 #, c-format
 msgid "object %s is not a blob"
-msgstr "对象 %s 不是一个二进制对象(blob)"
+msgstr "对象 %s 不是一个数据(blob)对象"
 
 #: merge-recursive.c:1564
 msgid "modify"
@@ -621,7 +634,7 @@ msgstr "略过 %s(已经做过相同合并)"
 msgid "Auto-merging %s"
 msgstr "自动合并 %s"
 
-#: merge-recursive.c:1633 git-submodule.sh:869
+#: merge-recursive.c:1633 git-submodule.sh:942
 msgid "submodule"
 msgstr "子模组"
 
@@ -691,40 +704,58 @@ msgstr "合并未返回提交"
 msgid "Could not parse object '%s'"
 msgstr "不能解析对象 '%s'"
 
-#: merge-recursive.c:2009 builtin/merge.c:696
+#: merge-recursive.c:2009 builtin/merge.c:643
 msgid "Unable to write index."
 msgstr "不能写入索引。"
 
-#: parse-options.c:494
+#: parse-options.c:489
 msgid "..."
 msgstr "..."
 
-#: parse-options.c:512
+#: parse-options.c:507
 #, c-format
 msgid "usage: %s"
 msgstr "用法:%s"
 
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation
-#: parse-options.c:516
+#: parse-options.c:511
 #, c-format
 msgid "   or: %s"
 msgstr "  或:%s"
 
 #  译者:为保证在输出中对齐,注意调整句中空格!
-#: parse-options.c:519
+#: parse-options.c:514
 #, c-format
 msgid "    %s"
 msgstr "    %s"
 
-#: remote.c:1632
+#: parse-options.c:548
+msgid "-NUM"
+msgstr "-数字"
+
+#: pathspec.c:83
+#, c-format
+msgid "Path '%s' is in submodule '%.*s'"
+msgstr "路径 '%s' 属于模组 '%.*s'"
+
+#: pathspec.c:99
+#, c-format
+msgid "'%s' is beyond a symbolic link"
+msgstr "'%s' 位于符号链接中"
+
+#: remote.c:1653
 #, 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:1638
+#: remote.c:1659
+msgid "  (use \"git push\" to publish your local commits)\n"
+msgstr "  (使用 \"git push\" 来发布您的本地提交)\n"
+
+#: remote.c:1662
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -732,7 +763,12 @@ msgid_plural ""
 msgstr[0] "您的分支落后 '%s' 共 %d 个提交,并且可以快进。\n"
 msgstr[1] "您的分支落后 '%s' 共 %d 个提交,并且可以快进。\n"
 
-#: remote.c:1646
+#  译者:注意保持前导空格
+#: remote.c:1670
+msgid "  (use \"git pull\" to update your local branch)\n"
+msgstr "  (使用 \"git pull\" 来更新您的本地分支)\n"
+
+#: remote.c:1673
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -747,19 +783,24 @@ msgstr[1] ""
 "您的分支和 '%s' 出现了偏离,\n"
 "并且分别有 %d 和 %d 处不同的提交。\n"
 
-#: sequencer.c:121 builtin/merge.c:864 builtin/merge.c:977
-#: builtin/merge.c:1087 builtin/merge.c:1097
+#  译者:注意保持前导空格
+#: remote.c:1683
+msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
+msgstr "  (使用 \"git pull\" 来合并远程分支)\n"
+
+#: sequencer.c:123 builtin/merge.c:761 builtin/merge.c:874 builtin/merge.c:984
+#: builtin/merge.c:994
 #, c-format
 msgid "Could not open '%s' for writing"
 msgstr "不能为写入打开 '%s'"
 
-#: sequencer.c:123 builtin/merge.c:333 builtin/merge.c:867
-#: builtin/merge.c:1089 builtin/merge.c:1102
+#: sequencer.c:125 builtin/merge.c:333 builtin/merge.c:764 builtin/merge.c:986
+#: builtin/merge.c:999
 #, c-format
 msgid "Could not write to '%s'"
 msgstr "不能写入 '%s'"
 
-#: sequencer.c:144
+#: sequencer.c:146
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -767,7 +808,7 @@ msgstr ""
 "冲突解决完毕后,用 'git add <paths>' 或 'git rm <paths>'\n"
 "命令标记修正后的文件"
 
-#: sequencer.c:147
+#: sequencer.c:149
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -776,214 +817,210 @@ msgstr ""
 "冲突解决完毕后,用 'git add <paths>' 或 'git rm <paths>'\n"
 "对修正后的文件做标记,然后用 'git commit' 提交"
 
-#: sequencer.c:160 sequencer.c:765 sequencer.c:848
+#: sequencer.c:162 sequencer.c:774 sequencer.c:857
 #, c-format
 msgid "Could not write to %s"
 msgstr "不能写入 %s"
 
-#: sequencer.c:163
+#: sequencer.c:165
 #, c-format
 msgid "Error wrapping up %s"
 msgstr "错误收尾 %s"
 
-#: sequencer.c:178
+#: sequencer.c:180
 msgid "Your local changes would be overwritten by cherry-pick."
 msgstr "您的本地修改将被拣选操作覆盖。"
 
-#: sequencer.c:180
+#: sequencer.c:182
 msgid "Your local changes would be overwritten by revert."
 msgstr "您的本地修改将被还原操作覆盖。"
 
-#: sequencer.c:183
+#: sequencer.c:185
 msgid "Commit your changes or stash them to proceed."
 msgstr "提交您的修改或保存进度后再继续。"
 
 #. TRANSLATORS: %s will be "revert" or "cherry-pick"
-#: sequencer.c:233
+#: sequencer.c:236
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s:无法写入新索引文件"
 
-#: sequencer.c:261
+#: sequencer.c:267
 msgid "Could not resolve HEAD commit\n"
 msgstr "不能解析 HEAD 提交\n"
 
-#: sequencer.c:282
+#: sequencer.c:288
 msgid "Unable to update cache tree\n"
 msgstr "不能更新缓存\n"
 
-#: sequencer.c:327
+#: sequencer.c:333
 #, c-format
 msgid "Could not parse commit %s\n"
 msgstr "不能解析提交 %s\n"
 
-#: sequencer.c:332
+#: sequencer.c:338
 #, c-format
 msgid "Could not parse parent commit %s\n"
 msgstr "不能解析父提交 %s\n"
 
-#: sequencer.c:398
+#: sequencer.c:404
 msgid "Your index file is unmerged."
 msgstr "您的索引文件未完成合并。"
 
-#: sequencer.c:401
-msgid "You do not have a valid HEAD"
-msgstr "您没有一个有效的 HEAD"
-
-#: sequencer.c:416
+#: sequencer.c:423
 #, c-format
 msgid "Commit %s is a merge but no -m option was given."
 msgstr "提交 %s 是一个合并提交但未提供 -m 选项。"
 
-#: sequencer.c:424
+#: sequencer.c:431
 #, c-format
 msgid "Commit %s does not have parent %d"
 msgstr "提交 %s 没有父提交 %d"
 
-#: sequencer.c:428
+#: sequencer.c:435
 #, 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:439
+#: sequencer.c:448
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s:不能解析父提交 %s"
 
-#: sequencer.c:443
+#: sequencer.c:452
 #, c-format
 msgid "Cannot get commit message for %s"
 msgstr "不能得到 %s 的提交说明"
 
-#: sequencer.c:527
+#: sequencer.c:536
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "不能还原 %s... %s"
 
-#: sequencer.c:528
+#: sequencer.c:537
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "不能应用 %s... %s"
 
-#: sequencer.c:560
+#: sequencer.c:569
 msgid "empty commit set passed"
 msgstr "提供了空的提交集"
 
-#: sequencer.c:568
+#: sequencer.c:577
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s:无法读取索引"
 
-#: sequencer.c:573
+#: sequencer.c:582
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s:无法刷新索引"
 
-#: sequencer.c:631
+#: sequencer.c:640
 #, c-format
 msgid "Cannot %s during a %s"
 msgstr "无法 %s 在一个 %s 过程中"
 
-#: sequencer.c:653
+#: sequencer.c:662
 #, c-format
 msgid "Could not parse line %d."
 msgstr "不能解析第 %d 行。"
 
-#: sequencer.c:658
+#: sequencer.c:667
 msgid "No commits parsed."
 msgstr "没有提交被解析。"
 
-#: sequencer.c:671
+#: sequencer.c:680
 #, c-format
 msgid "Could not open %s"
 msgstr "不能打开 %s"
 
-#: sequencer.c:675
+#: sequencer.c:684
 #, c-format
 msgid "Could not read %s."
 msgstr "不能读取 %s。"
 
-#: sequencer.c:682
+#: sequencer.c:691
 #, c-format
 msgid "Unusable instruction sheet: %s"
 msgstr "无用的指令表单:%s"
 
-#: sequencer.c:710
+#: sequencer.c:719
 #, c-format
 msgid "Invalid key: %s"
 msgstr "无效键名:%s"
 
-#: sequencer.c:713
+#: sequencer.c:722
 #, c-format
 msgid "Invalid value for %s: %s"
 msgstr "%s 的值无效:%s"
 
-#: sequencer.c:725
+#: sequencer.c:734
 #, c-format
 msgid "Malformed options sheet: %s"
 msgstr "非法的选项表单:%s"
 
-#: sequencer.c:746
+#: sequencer.c:755
 msgid "a cherry-pick or revert is already in progress"
 msgstr "一个拣选或还原操作已在进行"
 
-#: sequencer.c:747
+#: sequencer.c:756
 msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
 msgstr "尝试 \"git cherry-pick (--continue | --quit | --abort)\""
 
-#: sequencer.c:751
+#: sequencer.c:760
 #, c-format
 msgid "Could not create sequencer directory %s"
 msgstr "不能创建序列目录 %s"
 
-#: sequencer.c:767 sequencer.c:852
+#: sequencer.c:776 sequencer.c:861
 #, c-format
 msgid "Error wrapping up %s."
 msgstr "错误收尾 %s。"
 
-#: sequencer.c:786 sequencer.c:920
+#: sequencer.c:795 sequencer.c:929
 msgid "no cherry-pick or revert in progress"
 msgstr "拣选或还原操作并未进行"
 
-#: sequencer.c:788
+#: sequencer.c:797
 msgid "cannot resolve HEAD"
 msgstr "不能解析 HEAD"
 
-#: sequencer.c:790
+#: sequencer.c:799
 msgid "cannot abort from a branch yet to be born"
 msgstr "不能从尚未建立的分支终止"
 
-#: sequencer.c:812 builtin/apply.c:4005
+#: sequencer.c:821 builtin/apply.c:4056
 #, c-format
 msgid "cannot open %s: %s"
 msgstr "不能打开 %s:%s"
 
-#: sequencer.c:815
+#: sequencer.c:824
 #, c-format
 msgid "cannot read %s: %s"
 msgstr "不能读取 %s:%s"
 
-#: sequencer.c:816
+#: sequencer.c:825
 msgid "unexpected end of file"
 msgstr "意外的文件结束"
 
-#: sequencer.c:822
+#: sequencer.c:831
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr "保存拣选提交前的 HEAD 文件 '%s' 损坏"
 
-#: sequencer.c:845
+#: sequencer.c:854
 #, c-format
 msgid "Could not format %s."
 msgstr "不能格式化 %s。"
 
-#: sequencer.c:1007
+#: sequencer.c:1016
 msgid "Can't revert as initial commit"
 msgstr "不能作为初始提交还原"
 
-#: sequencer.c:1008
+#: sequencer.c:1017
 msgid "Can't cherry-pick into empty head"
 msgstr "不能拣选到空分支"
 
@@ -1007,16 +1044,21 @@ msgid "Upstream branch '%s' not stored as a remote-tracking branch"
 msgstr "上游分支 '%s' 没有存储为一个远程跟踪分支"
 
 #: wrapper.c:408
-#, fuzzy, c-format
+#, c-format
 msgid "unable to access '%s': %s"
-msgstr "不能创建 '%s'"
+msgstr "不能访问 '%s':%s"
+
+#: wrapper.c:423
+#, c-format
+msgid "unable to access '%s'"
+msgstr "不能访问 '%s'"
 
-#: wrapper.c:426
+#: wrapper.c:434
 #, c-format
 msgid "unable to look up current user in the passwd file: %s"
-msgstr "无法在 passwd 文件中查询到该用户:%s"
+msgstr "无法在口令文件中查询到当前用户:%s"
 
-#: wrapper.c:427
+#: wrapper.c:435
 msgid "no such user"
 msgstr "无此用户"
 
@@ -1185,216 +1227,235 @@ msgstr "未合并:    %s"
 msgid "bug: unhandled diff status %c"
 msgstr "bug:未处理的差异状态 %c"
 
-#: wt-status.c:785
+#: wt-status.c:789
 msgid "You have unmerged paths."
 msgstr "您有尚未合并的路径。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:788 wt-status.c:912
+#: wt-status.c:792 wt-status.c:944
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (解决冲突并运行 \"git commit\")"
 
-#: wt-status.c:791
+#: wt-status.c:795
 msgid "All conflicts fixed but you are still merging."
 msgstr "所有冲突已解决但您仍处于合并中。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:794
+#: wt-status.c:798
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (使用 \"git commit\" 结束合并)"
 
-#: wt-status.c:804
+#: wt-status.c:808
 msgid "You are in the middle of an am session."
 msgstr "您正处于一个 am 过程中。"
 
-#: wt-status.c:807
+#: wt-status.c:811
 msgid "The current patch is empty."
 msgstr "当前的补丁为空。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:811
+#: wt-status.c:815
 msgid "  (fix conflicts and then run \"git am --resolved\")"
 msgstr "  (解决冲突,然后运行 \"git am --resolved\")"
 
 #  译者:注意保持前导空格
-#: wt-status.c:813
+#: wt-status.c:817
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (使用 \"git am --skip\" 跳过此补丁)"
 
 #  译者:注意保持前导空格
-#: wt-status.c:815
+#: wt-status.c:819
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (使用 \"git am --abort\" 恢复原有分支)"
 
-#: wt-status.c:873 wt-status.c:883
+#: wt-status.c:879 wt-status.c:896
+#, c-format
+msgid "You are currently rebasing branch '%s' on '%s'."
+msgstr "您正在将分支 '%s' 变基到 '%s'。"
+
+#: wt-status.c:884 wt-status.c:901
 msgid "You are currently rebasing."
 msgstr "您正在变基。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:876
+#: wt-status.c:887
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr "  (解决冲突,然后运行 \"git rebase --continue\")"
 
 #  译者:注意保持前导空格
-#: wt-status.c:878
+#: wt-status.c:889
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr "  (使用 \"git rebase --skip\" 跳过此补丁)"
 
 #  译者:注意保持前导空格
-#: wt-status.c:880
+#: wt-status.c:891
 msgid "  (use \"git rebase --abort\" to check out the original branch)"
 msgstr "  (使用 \"git rebase --abort\" 以检出原有分支)"
 
 #  译者:注意保持前导空格
-#: wt-status.c:886
+#: wt-status.c:904
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr "  (所有冲突已解决:运行 \"git rebase --continue\")"
 
-#: wt-status.c:888
+#: wt-status.c:908
+#, c-format
+msgid ""
+"You are currently splitting a commit while rebasing branch '%s' on '%s'."
+msgstr "您正在将分支 '%s' 变基到 '%s' 过程中拆分一个提交。"
+
+#: wt-status.c:913
 msgid "You are currently splitting a commit during a rebase."
 msgstr "您正在变基过程中拆分一个提交。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:891
+#: wt-status.c:916
 msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
 msgstr "  (一旦您工作目录提交干净后,运行 \"git rebase --continue\")"
 
-#: wt-status.c:893
+#: wt-status.c:920
+#, c-format
+msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
+msgstr "您正在将分支 '%s' 变基到 '%s' 过程中编辑一个提交。"
+
+#: wt-status.c:925
 msgid "You are currently editing a commit during a rebase."
 msgstr "您正在变基过程中编辑一个提交。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:896
+#: wt-status.c:928
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr "  (使用 \"git commit --amend\" 修补当前提交)"
 
 #  译者:注意保持前导空格
-#: wt-status.c:898
+#: wt-status.c:930
 msgid ""
 "  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr "  (当您对您的修改满意后执行 \"git rebase --continue\")"
 
-#: wt-status.c:908
+#: wt-status.c:940
 msgid "You are currently cherry-picking."
 msgstr "您正在做拣选操作。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:915
+#: wt-status.c:947
 msgid "  (all conflicts fixed: run \"git commit\")"
 msgstr "  (解决所有冲突后,执行 \"git commit\")"
 
-#: wt-status.c:924
+#: wt-status.c:958
+#, c-format
+msgid "You are currently bisecting branch '%s'."
+msgstr "您正在分支 '%s' 中做二分查找。"
+
+#: wt-status.c:962
 msgid "You are currently bisecting."
 msgstr "您正在做二分查找。"
 
 #  译者:注意保持前导空格
-#: wt-status.c:927
+#: wt-status.c:965
 msgid "  (use \"git bisect reset\" to get back to the original branch)"
 msgstr "  (使用 \"git bisect reset\" 以回到原有分支)"
 
-#: wt-status.c:978
+#: wt-status.c:1064
 msgid "On branch "
 msgstr "位于分支 "
 
-#: wt-status.c:985
+#: wt-status.c:1071
 msgid "Not currently on any branch."
 msgstr "当前不在任何分支上。"
 
-#: wt-status.c:997
+#: wt-status.c:1083
 msgid "Initial commit"
 msgstr "初始提交"
 
-#: wt-status.c:1011
-#, fuzzy
+#: wt-status.c:1097
 msgid "Untracked files"
-msgstr "未跟踪的"
+msgstr "未跟踪的文件"
 
-#: wt-status.c:1013
-#, fuzzy
+#: wt-status.c:1099
 msgid "Ignored files"
-msgstr "忽略的"
+msgstr "忽略的文件"
 
-#: wt-status.c:1015
+#: wt-status.c:1101
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr "未跟踪的文件没有列出%s"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1017
+#: wt-status.c:1103
 msgid " (use -u option to show untracked files)"
 msgstr "(使用 -u 参数显示未跟踪的文件)"
 
-#: wt-status.c:1023
+#: wt-status.c:1109
 msgid "No changes"
 msgstr "没有修改"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1028
-#, fuzzy, c-format
+#: wt-status.c:1114
+#, c-format
 msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
-msgstr "(使用 \"git add\" 和/或 \"git commit -a\")"
+msgstr "修改尚未加入提交(使用 \"git add\" 和/或 \"git commit -a\")\n"
 
-#: wt-status.c:1031
-#, fuzzy, c-format
+#: wt-status.c:1117
+#, c-format
 msgid "no changes added to commit\n"
-msgstr "修改尚未加入提交%s\n"
+msgstr "修改尚未加入提交\n"
 
-#: wt-status.c:1034
-#, fuzzy, c-format
+#: wt-status.c:1120
+#, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
 "track)\n"
-msgstr "空提交但存在未跟踪文件%s\n"
+msgstr "提交为空,但是存在尚未跟踪的文件(使用 \"git add\" 建立跟踪)\n"
 
-#: wt-status.c:1037
-#, fuzzy, c-format
+#: wt-status.c:1123
+#, c-format
 msgid "nothing added to commit but untracked files present\n"
-msgstr "空提交但存在未跟踪文件%s\n"
+msgstr "提交为空,但是存在尚未跟踪的文件\n"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1040
-#, fuzzy, c-format
+#: wt-status.c:1126
+#, c-format
 msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
-msgstr "(新建/拷贝的文件使用 \"git add\" 建立跟踪)"
+msgstr "无文件要提交(创建/拷贝文件并使用 \"git add\" 建立跟踪)\n"
 
-#: wt-status.c:1043 wt-status.c:1048
-#, fuzzy, c-format
+#: wt-status.c:1129 wt-status.c:1134
+#, c-format
 msgid "nothing to commit\n"
-msgstr "无须提交%s\n"
+msgstr "无文件要提交\n"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1046
-#, fuzzy, c-format
+#: wt-status.c:1132
+#, c-format
 msgid "nothing to commit (use -u to show untracked files)\n"
-msgstr "(使用 -u 显示未跟踪文件)"
+msgstr "无文件要提交(使用 -u 显示未跟踪的文件)\n"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: wt-status.c:1050
-#, fuzzy, c-format
+#: wt-status.c:1136
+#, c-format
 msgid "nothing to commit, working directory clean\n"
-msgstr "(干净的工作区)"
+msgstr "无文件要提交,干净的工作区\n"
 
-#: wt-status.c:1158
+#: wt-status.c:1244
 msgid "HEAD (no branch)"
 msgstr "HEAD(非分支)"
 
 #  译者:注意保持句尾空格
-#: wt-status.c:1164
+#: wt-status.c:1250
 msgid "Initial commit on "
 msgstr "初始提交于 "
 
 #  译者:注意保持句尾空格
-#: wt-status.c:1179
+#: wt-status.c:1265
 msgid "behind "
 msgstr "落后 "
 
 #  译者:注意保持句尾空格
-#: wt-status.c:1182 wt-status.c:1185
+#: wt-status.c:1268 wt-status.c:1271
 msgid "ahead "
 msgstr "领先 "
 
 #  译者:注意保持句尾空格
-#: wt-status.c:1187
+#: wt-status.c:1273
 msgid ", behind "
 msgstr ",落后 "
 
@@ -1403,148 +1464,178 @@ msgstr ",落后 "
 msgid "failed to unlink '%s'"
 msgstr "无法删除 '%s'"
 
-#: builtin/add.c:19
-#, fuzzy
-msgid "git add [options] [--] <filepattern>..."
-msgstr "git apply [选项] [<补丁>...]"
+#: builtin/add.c:20
+msgid "git add [options] [--] <pathspec>..."
+msgstr "git add [选项] [--] <路径匹配>..."
 
-#: builtin/add.c:62
+#: builtin/add.c:63
 #, c-format
 msgid "unexpected diff status %c"
 msgstr "意外的差异状态 %c"
 
-#: builtin/add.c:67 builtin/commit.c:229
+#: builtin/add.c:68 builtin/commit.c:231
 msgid "updating files failed"
 msgstr "更新文件失败"
 
-#: builtin/add.c:77
+#: builtin/add.c:78
 #, c-format
 msgid "remove '%s'\n"
 msgstr "删除 '%s'\n"
 
-#: builtin/add.c:176
-#, c-format
-msgid "Path '%s' is in submodule '%.*s'"
-msgstr "路径 '%s' 属于模组 '%.*s'"
-
-#: builtin/add.c:192
+#: builtin/add.c:148
 msgid "Unstaged changes after refreshing the index:"
 msgstr "刷新索引之后尚未被暂存的变更:"
 
-#: builtin/add.c:195 builtin/add.c:460 builtin/rm.c:186
+#: builtin/add.c:151 builtin/add.c:460 builtin/rm.c:275
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "路径 '%s' 未匹配任何文件"
 
-#: builtin/add.c:209
-#, c-format
-msgid "'%s' is beyond a symbolic link"
-msgstr "'%s' 位于符号链接中"
-
-#: builtin/add.c:276
+#: builtin/add.c:234
 msgid "Could not read the index"
 msgstr "不能读取索引"
 
-#: builtin/add.c:286
+#: builtin/add.c:244
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "不能打开 '%s' 以写入。"
 
-#: builtin/add.c:290
+#: builtin/add.c:248
 msgid "Could not write patch"
 msgstr "不能生成补丁"
 
-#: builtin/add.c:295
+#: builtin/add.c:253
 #, c-format
 msgid "Could not stat '%s'"
 msgstr "不能查看文件状态 '%s'"
 
-#: builtin/add.c:297
+#: builtin/add.c:255
 msgid "Empty patch. Aborted."
 msgstr "空补丁。异常终止。"
 
-#: builtin/add.c:303
+#: builtin/add.c:261
 #, c-format
 msgid "Could not apply '%s'"
 msgstr "不能应用 '%s'"
 
-#: builtin/add.c:313
+#: builtin/add.c:271
 msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr "下列路径根据您的一个 .gitignore 文件而被忽略:\n"
 
-#: builtin/add.c:319 builtin/clean.c:52 builtin/fetch.c:78 builtin/mv.c:63
-#: builtin/prune-packed.c:76 builtin/push.c:388 builtin/remote.c:1253
-#: builtin/rm.c:133
+#: builtin/add.c:277 builtin/clean.c:161 builtin/fetch.c:78 builtin/mv.c:63
+#: builtin/prune-packed.c:76 builtin/push.c:425 builtin/remote.c:1253
+#: builtin/rm.c:206
 msgid "dry run"
-msgstr ""
+msgstr "演习"
 
-#: builtin/add.c:320 builtin/apply.c:4354 builtin/commit.c:1187
-#: builtin/count-objects.c:82 builtin/fsck.c:613 builtin/log.c:1477
-#: builtin/mv.c:62 builtin/read-tree.c:112
+#: builtin/add.c:278 builtin/apply.c:4405 builtin/check-ignore.c:19
+#: builtin/commit.c:1150 builtin/count-objects.c:82 builtin/fsck.c:613
+#: builtin/log.c:1522 builtin/mv.c:62 builtin/read-tree.c:112
 msgid "be verbose"
 msgstr "冗长输出"
 
-#: builtin/add.c:322
-#, fuzzy
+#: builtin/add.c:280
 msgid "interactive picking"
-msgstr "交äº\92å¼\8fæ·»å\8a å¤±è´¥"
+msgstr "交äº\92å¼\8fæ\8b£é\80\89"
 
-#: builtin/add.c:323 builtin/checkout.c:1028 builtin/reset.c:248
+#: builtin/add.c:281 builtin/checkout.c:1031 builtin/reset.c:258
 msgid "select hunks interactively"
-msgstr ""
+msgstr "交互式挑选数据块"
 
-#: builtin/add.c:324
+#: builtin/add.c:282
 msgid "edit current diff and apply"
-msgstr ""
+msgstr "编辑当前差异并应用"
 
-#: builtin/add.c:325
+#: builtin/add.c:283
 msgid "allow adding otherwise ignored files"
-msgstr ""
+msgstr "允许添加忽略的文件"
 
-#: builtin/add.c:326
-#, fuzzy
+#: builtin/add.c:284
 msgid "update tracked files"
-msgstr "æ\97 æ³\95å­\98å\82¨å\8c\85文件"
+msgstr "æ\9b´æ\96°å·²è·\9f踪ç\9a\84文件"
 
-#: builtin/add.c:327
+#: builtin/add.c:285
 msgid "record only the fact that the path will be added later"
-msgstr ""
+msgstr "只记录,该路径稍后再添加"
 
-#: builtin/add.c:328
+#: builtin/add.c:286
 msgid "add changes from all tracked and untracked files"
-msgstr ""
+msgstr "添加所有改变的已跟踪文件和未跟踪文件"
 
-#: builtin/add.c:329
-#, fuzzy
+#: builtin/add.c:287
 msgid "don't add, only refresh the index"
-msgstr "git %s:无法刷新索引"
+msgstr "不添加,只刷新索引"
 
-#: builtin/add.c:330
+#: builtin/add.c:288
 msgid "just skip files which cannot be added because of errors"
-msgstr ""
+msgstr "跳过因出错不能添加的文件"
 
-#: builtin/add.c:331
+#: builtin/add.c:289
 msgid "check if - even missing - files are ignored in dry run"
-msgstr ""
+msgstr "检查在演习模式下文件(即使不存在)是否被忽略"
 
-#: builtin/add.c:353
+#: builtin/add.c:311
 #, c-format
 msgid "Use -f if you really want to add them.\n"
 msgstr "使用 -f 参数如果您确实要添加它们。\n"
 
-#: builtin/add.c:354
+#: builtin/add.c:312
 msgid "no files added"
 msgstr "没有文件被添加"
 
-#: builtin/add.c:360
+#: builtin/add.c:318
 msgid "adding files failed"
 msgstr "添加文件失败"
 
-#: builtin/add.c:392
+#  译者:字符串首行行首要添加“warning: ”字串,故此首行要较其余行短
+#.
+#. * To be consistent with "git add -p" and most Git
+#. * commands, we should default to being tree-wide, but
+#. * this is not the original behavior and can't be
+#. * changed until users trained themselves not to type
+#. * "git add -u" or "git add -A". For now, we warn and
+#. * keep the old behavior. Later, this warning can be
+#. * turned into a die(...), and eventually we may
+#. * reallow the command with a new behavior.
+#.
+#: builtin/add.c:335
+#, c-format
+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."
+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,这条命令只作用于当前目录。"
+
+#: builtin/add.c:381
 msgid "-A and -u are mutually incompatible"
 msgstr "-A 和 -u 选项互斥"
 
-#: builtin/add.c:394
+#: builtin/add.c:383
 msgid "Option --ignore-missing can only be used together with --dry-run"
 msgstr "选项 --ignore-missing 只能和 --dry-run 同时使用"
 
@@ -1558,12 +1649,12 @@ msgstr "没有指定文件,也没有文件被添加。\n"
 msgid "Maybe you wanted to say 'git add .'?\n"
 msgstr "也许您想要执行 'git add .'?\n"
 
-#: builtin/add.c:421 builtin/clean.c:95 builtin/commit.c:289 builtin/mv.c:82
-#: builtin/rm.c:162
+#: builtin/add.c:421 builtin/check-ignore.c:67 builtin/clean.c:204
+#: builtin/commit.c:291 builtin/mv.c:82 builtin/rm.c:235
 msgid "index file corrupt"
 msgstr "索引文件损坏"
 
-#: builtin/add.c:481 builtin/apply.c:4450 builtin/mv.c:229 builtin/rm.c:260
+#: builtin/add.c:481 builtin/apply.c:4501 builtin/mv.c:229 builtin/rm.c:370
 msgid "Unable to write new index file"
 msgstr "无法写入新索引文件"
 
@@ -1616,17 +1707,17 @@ msgstr "git apply:错误的 git-diff - 第 %d 行上旧文件名不一致"
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr "git apply:错误的 git-diff - 第 %d 行处应为 /dev/null"
 
-#: builtin/apply.c:1420
+#: builtin/apply.c:1422
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr "recount:意外的行:%.*s"
 
-#: builtin/apply.c:1477
+#: builtin/apply.c:1479
 #, c-format
 msgid "patch fragment without header at line %d: %.*s"
 msgstr "第 %d 行的补丁片段没有头信息:%.*s"
 
-#: builtin/apply.c:1494
+#: builtin/apply.c:1496
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -1637,82 +1728,78 @@ msgid_plural ""
 msgstr[0] "当移除 %d 个前导路径后 git diff 头缺乏文件名信息(第 %d 行)"
 msgstr[1] "当移除 %d 个前导路径后 git diff 头缺乏文件名信息(第 %d 行)"
 
-#: builtin/apply.c:1654
+#: builtin/apply.c:1656
 msgid "new file depends on old contents"
 msgstr "新文件依赖旧内容"
 
-#: builtin/apply.c:1656
+#: builtin/apply.c:1658
 msgid "deleted file still has contents"
 msgstr "删除的文件仍有内容"
 
-#: builtin/apply.c:1682
+#: builtin/apply.c:1684
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "补丁在第 %d 行损坏"
 
-#: builtin/apply.c:1718
+#: builtin/apply.c:1720
 #, c-format
 msgid "new file %s depends on old contents"
 msgstr "新文件 %s 依赖旧内容"
 
-#: builtin/apply.c:1720
+#: builtin/apply.c:1722
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "删除的文件 %s 仍有内容"
 
-#: builtin/apply.c:1723
+#: builtin/apply.c:1725
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** 警告:文件 %s 成为空文件但并未删除"
 
-#: builtin/apply.c:1869
+#: builtin/apply.c:1871
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "二进制补丁在第 %d 行损坏:%.*s"
 
 #. there has to be one hunk (forward hunk)
-#: builtin/apply.c:1898
+#: builtin/apply.c:1900
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "未能识别的二进制补丁位于第 %d 行"
 
-#: builtin/apply.c:1984
+#: builtin/apply.c:1986
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "补丁文件的第 %d 行只有垃圾数据"
 
-#: builtin/apply.c:2074
+#: builtin/apply.c:2076
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "无法读取符号链接 %s"
 
-#: builtin/apply.c:2078
+#: builtin/apply.c:2080
 #, c-format
 msgid "unable to open or read %s"
 msgstr "不能打开或读取 %s"
 
-#: builtin/apply.c:2149
-msgid "oops"
-msgstr "哎哟"
-
-#: builtin/apply.c:2671
+#: builtin/apply.c:2684
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "无效的行首字符:'%c'"
 
-#: builtin/apply.c:2789
+#: builtin/apply.c:2802
 #, 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 行)"
+msgstr[0] "块 #%d 成功应用于 %d偏移 %d 行)"
+msgstr[1] "块 #%d 成功应用于 %d偏移 %d 行)"
 
-#: builtin/apply.c:2801
+#: builtin/apply.c:2814
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr "上下文减少到(%ld/%ld)以在第 %d 行应用补丁片段"
 
-#: builtin/apply.c:2807
+#: builtin/apply.c:2820
 #, c-format
 msgid ""
 "while searching for:\n"
@@ -1721,319 +1808,318 @@ msgstr ""
 "当查询:\n"
 "%.*s"
 
-#: builtin/apply.c:2826
+#: builtin/apply.c:2839
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "缺失 '%s' 的二进制补丁数据"
 
-#: builtin/apply.c:2929
+#: builtin/apply.c:2942
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "二进制补丁未应用到 '%s'"
 
-#: builtin/apply.c:2935
+#: builtin/apply.c:2948
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr "到 '%s' 的二进制补丁产生了不正确的结果(应为 %s,却为 %s)"
 
-#: builtin/apply.c:2956
+#: builtin/apply.c:2969
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "打补丁失败:%s:%ld"
 
-#: builtin/apply.c:3078
+#: builtin/apply.c:3091
 #, c-format
 msgid "cannot checkout %s"
 msgstr "不能检出 %s"
 
-#: builtin/apply.c:3123 builtin/apply.c:3132 builtin/apply.c:3176
+#: builtin/apply.c:3136 builtin/apply.c:3145 builtin/apply.c:3189
 #, c-format
 msgid "read of %s failed"
 msgstr "读取 %s 失败"
 
-#: builtin/apply.c:3156 builtin/apply.c:3378
+#: builtin/apply.c:3169 builtin/apply.c:3391
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "路径 %s 已经被重命名/删除"
 
-#: builtin/apply.c:3237 builtin/apply.c:3392
+#: builtin/apply.c:3250 builtin/apply.c:3405
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s:不存在于索引中"
 
-#: builtin/apply.c:3241 builtin/apply.c:3384 builtin/apply.c:3406
+#: builtin/apply.c:3254 builtin/apply.c:3397 builtin/apply.c:3419
 #, c-format
 msgid "%s: %s"
 msgstr "%s:%s"
 
-#: builtin/apply.c:3246 builtin/apply.c:3400
+#: builtin/apply.c:3259 builtin/apply.c:3413
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s:和索引不匹配"
 
-#: builtin/apply.c:3348
+#: builtin/apply.c:3361
 msgid "removal patch leaves file contents"
 msgstr "移除补丁仍留下了文件内容"
 
-#: builtin/apply.c:3417
+#: builtin/apply.c:3430
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s:错误类型"
 
-#: builtin/apply.c:3419
+#: builtin/apply.c:3432
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s 的类型是 %o,应为 %o"
 
-#: builtin/apply.c:3520
+#: builtin/apply.c:3533
 #, c-format
 msgid "%s: already exists in index"
 msgstr "%s:已经存在于索引中"
 
-#: builtin/apply.c:3523
+#: builtin/apply.c:3536
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s:已经存在于工作区中"
 
-#: builtin/apply.c:3543
+#: builtin/apply.c:3556
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o)"
 msgstr "%2$s 的新模式(%1$o)和旧模式(%3$o)不匹配"
 
-#: builtin/apply.c:3548
+#: builtin/apply.c:3561
 #, 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:3556
+#: builtin/apply.c:3569
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s:补丁未应用"
 
-#: builtin/apply.c:3569
+#: builtin/apply.c:3582
 #, c-format
 msgid "Checking patch %s..."
 msgstr "检查补丁 %s..."
 
-#: builtin/apply.c:3624 builtin/checkout.c:215 builtin/reset.c:158
+#: builtin/apply.c:3675 builtin/checkout.c:215 builtin/reset.c:124
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "对路径 '%s' 的 make_cache_entry 操作失败"
 
-#: builtin/apply.c:3767
+#: builtin/apply.c:3818
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "不能从索引中移除 %s"
 
-#: builtin/apply.c:3795
+#: builtin/apply.c:3846
 #, c-format
 msgid "corrupt patch for subproject %s"
 msgstr "子项目 %s 损坏的补丁"
 
-#: builtin/apply.c:3799
+#: builtin/apply.c:3850
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "不能枚举新建文件 '%s' 的状态"
 
-#: builtin/apply.c:3804
+#: builtin/apply.c:3855
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr "不能为新建文件 %s 创建后端存储"
 
-#: builtin/apply.c:3807 builtin/apply.c:3915
+#: builtin/apply.c:3858 builtin/apply.c:3966
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "无法为 %s 添加缓存条目"
 
-#: builtin/apply.c:3840
+#: builtin/apply.c:3891
 #, c-format
 msgid "closing file '%s'"
 msgstr "关闭文件 '%s'"
 
-#: builtin/apply.c:3889
+#: builtin/apply.c:3940
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr "不能写文件 '%s' 权限 %o"
 
-#: builtin/apply.c:3976
+#: builtin/apply.c:4027
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "成功应用补丁 %s。"
 
-#: builtin/apply.c:3984
+#: builtin/apply.c:4035
 msgid "internal error"
 msgstr "内部错误"
 
 #. Say this even without --verbose
-#: builtin/apply.c:3987
+#: builtin/apply.c:4038
 #, 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:3997
+#: builtin/apply.c:4048
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "截短 .rej 文件名为 %.*s.rej"
 
-#: builtin/apply.c:4018
+#: builtin/apply.c:4069
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "第 #%d 个片段成功应用。"
 
-#: builtin/apply.c:4021
+#: builtin/apply.c:4072
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "拒绝第 #%d 个片段。"
 
-#: builtin/apply.c:4171
+#: builtin/apply.c:4222
 msgid "unrecognized input"
 msgstr "未能识别的输入"
 
-#: builtin/apply.c:4182
+#: builtin/apply.c:4233
 msgid "unable to read index file"
 msgstr "无法读取索引文件"
 
-#: builtin/apply.c:4301 builtin/apply.c:4304 builtin/clone.c:91
+#: builtin/apply.c:4352 builtin/apply.c:4355 builtin/clone.c:91
 #: builtin/fetch.c:63
 msgid "path"
 msgstr "路径"
 
-#: builtin/apply.c:4302
+#: builtin/apply.c:4353
 msgid "don't apply changes matching the given path"
 msgstr "不要应用与给出路径向匹配的变更"
 
-#: builtin/apply.c:4305
+#: builtin/apply.c:4356
 msgid "apply changes matching the given path"
 msgstr "应用与给出路径向匹配的变更"
 
-#: builtin/apply.c:4307
+#: builtin/apply.c:4358
 msgid "num"
 msgstr "数字"
 
-#: builtin/apply.c:4308
+#: builtin/apply.c:4359
 msgid "remove <num> leading slashes from traditional diff paths"
-msgstr "从传统的 diff 路径中移除 <数字> 个前导路径"
+msgstr "从传统的 diff 路径中移除指定数量的前导斜线"
 
-#: builtin/apply.c:4311
+#: builtin/apply.c:4362
 msgid "ignore additions made by the patch"
 msgstr "忽略补丁中的添加的文件"
 
-#: builtin/apply.c:4313
+#: builtin/apply.c:4364
 msgid "instead of applying the patch, output diffstat for the input"
 msgstr "不应用补丁,而是显示输入的差异统计(diffstat)"
 
-#: builtin/apply.c:4317
-#, fuzzy
+#: builtin/apply.c:4368
 msgid "show number of added and deleted lines in decimal notation"
-msgstr "以数字方式显示添加或删除行的数量"
+msgstr "以十进制数显示添加和删除的行数"
 
-#: builtin/apply.c:4319
+#: builtin/apply.c:4370
 msgid "instead of applying the patch, output a summary for the input"
 msgstr "不应用补丁,而是显示输入的概要"
 
-#: builtin/apply.c:4321
+#: builtin/apply.c:4372
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr "不应用补丁,而是查看补丁是否可应用"
 
-#: builtin/apply.c:4323
+#: builtin/apply.c:4374
 msgid "make sure the patch is applicable to the current index"
 msgstr "确认补丁可以应用到当前索引"
 
-#: builtin/apply.c:4325
+#: builtin/apply.c:4376
 msgid "apply a patch without touching the working tree"
 msgstr "应用补丁而不修改工作区"
 
-#: builtin/apply.c:4327
+#: builtin/apply.c:4378
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr "还应用此补丁(与 --stat/--summary/--check 选项同时使用)"
 
-#: builtin/apply.c:4329
+#: builtin/apply.c:4380
 msgid "attempt three-way merge if a patch does not apply"
 msgstr "如果一个补丁不能应用则尝试三路合并"
 
-#: builtin/apply.c:4331
+#: builtin/apply.c:4382
 msgid "build a temporary index based on embedded index information"
 msgstr "创建一个临时索引基于嵌入的索引信息"
 
-#: builtin/apply.c:4333 builtin/checkout-index.c:197 builtin/ls-files.c:460
+#: builtin/apply.c:4384 builtin/checkout-index.c:197 builtin/ls-files.c:463
 msgid "paths are separated with NUL character"
 msgstr "路径以 NUL 字符分隔"
 
-#: builtin/apply.c:4336
+#: builtin/apply.c:4387
 msgid "ensure at least <n> lines of context match"
 msgstr "确保至少匹配 <n> 行上下文"
 
-#: builtin/apply.c:4337
+#: builtin/apply.c:4388
 msgid "action"
 msgstr "动作"
 
-#: builtin/apply.c:4338
+#: builtin/apply.c:4389
 msgid "detect new or modified lines that have whitespace errors"
 msgstr "检查新增和修改的行中间的空白字符滥用"
 
-#: builtin/apply.c:4341 builtin/apply.c:4344
+#: builtin/apply.c:4392 builtin/apply.c:4395
 msgid "ignore changes in whitespace when finding context"
 msgstr "查找上下文时忽略空白字符的变更"
 
-#: builtin/apply.c:4347
+#: builtin/apply.c:4398
 msgid "apply the patch in reverse"
 msgstr "反向应用补丁"
 
-#: builtin/apply.c:4349
+#: builtin/apply.c:4400
 msgid "don't expect at least one line of context"
 msgstr "无需至少一行上下文"
 
-#: builtin/apply.c:4351
+#: builtin/apply.c:4402
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "将拒绝的补丁片段保存在对应的 *.rej 文件中"
 
-#: builtin/apply.c:4353
+#: builtin/apply.c:4404
 msgid "allow overlapping hunks"
 msgstr "允许重叠的补丁片段"
 
-#: builtin/apply.c:4356
+#: builtin/apply.c:4407
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr "允许不正确的文件末尾换行符"
 
-#: builtin/apply.c:4359
+#: builtin/apply.c:4410
 msgid "do not trust the line counts in the hunk headers"
 msgstr "不信任补丁片段的头信息中的行号"
 
-#: builtin/apply.c:4361
+#: builtin/apply.c:4412
 msgid "root"
 msgstr "根目录"
 
-#: builtin/apply.c:4362
+#: builtin/apply.c:4413
 msgid "prepend <root> to all filenames"
 msgstr "为所有文件名前添加 <根目录>"
 
-#: builtin/apply.c:4384
+#: builtin/apply.c:4435
 msgid "--3way outside a repository"
 msgstr "--3way 在一个版本库之外"
 
-#: builtin/apply.c:4392
+#: builtin/apply.c:4443
 msgid "--index outside a repository"
 msgstr "--index 在一个版本库之外"
 
-#: builtin/apply.c:4395
+#: builtin/apply.c:4446
 msgid "--cached outside a repository"
 msgstr "--cached 在一个版本库之外"
 
-#: builtin/apply.c:4411
+#: builtin/apply.c:4462
 #, c-format
 msgid "can't open patch '%s'"
 msgstr "不能打开补丁 '%s'"
 
-#: builtin/apply.c:4425
+#: builtin/apply.c:4476
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "抑制下仍有 %d 个空白字符误用"
 msgstr[1] "抑制下仍有 %d 个空白字符误用"
 
-#: builtin/apply.c:4431 builtin/apply.c:4441
+#: builtin/apply.c:4482 builtin/apply.c:4492
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
@@ -2077,135 +2163,131 @@ msgstr "git archive:应为刷新"
 
 #: builtin/bisect--helper.c:7
 msgid "git bisect--helper --next-all [--no-checkout]"
-msgstr ""
+msgstr "git bisect--helper --next-all [--no-checkout]"
 
 #: builtin/bisect--helper.c:17
 msgid "perform 'git bisect next'"
-msgstr ""
+msgstr "执行 'git bisect next'"
 
 #: builtin/bisect--helper.c:19
 msgid "update BISECT_HEAD instead of checking out the current commit"
-msgstr ""
+msgstr "更新 BISECT_HEAD 而非检出当前提交"
 
 #: builtin/blame.c:25
 msgid "git blame [options] [rev-opts] [rev] [--] file"
-msgstr ""
+msgstr "git blame [选项] [版本选项] [版本] [--] 文件"
 
 #: builtin/blame.c:30 builtin/shortlog.c:15
 msgid "[rev-opts] are documented in git-rev-list(1)"
-msgstr ""
+msgstr "[版本选项] 的文档记录在 git-rev-list(1) 中"
 
-#: builtin/blame.c:2316
+#: builtin/blame.c:2350
 msgid "Show blame entries as we find them, incrementally"
-msgstr ""
+msgstr "增量式地显示发现的 blame 条目"
 
-#: builtin/blame.c:2317
+#: builtin/blame.c:2351
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
-msgstr ""
+msgstr "边界提交显示空的 SHA-1(默认:关闭)"
 
-#: builtin/blame.c:2318
+#: builtin/blame.c:2352
 msgid "Do not treat root commits as boundaries (Default: off)"
-msgstr ""
+msgstr "不把根提交作为边界(默认:关闭)"
 
-#: builtin/blame.c:2319
-#, fuzzy
+#: builtin/blame.c:2353
 msgid "Show work cost statistics"
-msgstr "æ\98¾ç¤ºå·¥ä½\9cå\8cºç\8a¶æ\80\81"
+msgstr "æ\98¾ç¤ºå\91½ä»¤æ¶\88è\80\97ç»\9f计"
 
-#: builtin/blame.c:2320
+#: builtin/blame.c:2354
 msgid "Show output score for blame entries"
-msgstr ""
+msgstr "显示判断 blame 条目位移的得分诊断信息"
 
-#: builtin/blame.c:2321
+#: builtin/blame.c:2355
 msgid "Show original filename (Default: auto)"
-msgstr ""
+msgstr "显示原始文件名(默认:自动)"
 
-#: builtin/blame.c:2322
+#: builtin/blame.c:2356
 msgid "Show original linenumber (Default: off)"
-msgstr ""
+msgstr "显示原始的行号(默认:关闭)"
 
-#: builtin/blame.c:2323
+#: builtin/blame.c:2357
 msgid "Show in a format designed for machine consumption"
-msgstr ""
+msgstr "显示为一个适合机器读取的格式"
 
-#: builtin/blame.c:2324
+#: builtin/blame.c:2358
 msgid "Show porcelain format with per-line commit information"
-msgstr ""
+msgstr "为每一行显示机器适用的提交信息"
 
-#: builtin/blame.c:2325
+#: builtin/blame.c:2359
 msgid "Use the same output mode as git-annotate (Default: off)"
-msgstr ""
+msgstr "使用和 git-annotate 相同的输出模式(默认:关闭)"
 
-#: builtin/blame.c:2326
+#: builtin/blame.c:2360
 msgid "Show raw timestamp (Default: off)"
-msgstr ""
+msgstr "显示原始时间戳(默认:关闭)"
 
-#: builtin/blame.c:2327
+#: builtin/blame.c:2361
 msgid "Show long commit SHA1 (Default: off)"
-msgstr ""
+msgstr "显示长的SHA1提交号(默认:关闭)"
 
-#: builtin/blame.c:2328
+#: builtin/blame.c:2362
 msgid "Suppress author name and timestamp (Default: off)"
-msgstr ""
+msgstr "隐藏作者名字和时间戳(默认:关闭)"
 
-#: builtin/blame.c:2329
+#: builtin/blame.c:2363
 msgid "Show author email instead of name (Default: off)"
-msgstr ""
+msgstr "显示作者的邮箱而不是名字(默认:关闭)"
 
-#: builtin/blame.c:2330
+#: builtin/blame.c:2364
 msgid "Ignore whitespace differences"
-msgstr ""
+msgstr "忽略空白差异"
 
-#: builtin/blame.c:2331
+#: builtin/blame.c:2365
 msgid "Spend extra cycles to find better match"
-msgstr ""
+msgstr "花费额外的循环来找到更好的匹配"
 
-#: builtin/blame.c:2332
+#: builtin/blame.c:2366
 msgid "Use revisions from <file> instead of calling git-rev-list"
-msgstr ""
+msgstr "使用来自 <file> 的修订集而不是调用 git-rev-list"
 
-#: builtin/blame.c:2333
-#, fuzzy
+#: builtin/blame.c:2367
 msgid "Use <file>'s contents as the final image"
-msgstr "添加文件内容至索引"
+msgstr "使用 <file> 的内容作为最终的图片"
 
-#: builtin/blame.c:2334 builtin/blame.c:2335
+#: builtin/blame.c:2368 builtin/blame.c:2369
 msgid "score"
-msgstr ""
+msgstr "得分"
 
-#: builtin/blame.c:2334
+#: builtin/blame.c:2368
 msgid "Find line copies within and across files"
-msgstr ""
+msgstr "找到文件内及跨文件的行拷贝"
 
-#: builtin/blame.c:2335
+#: builtin/blame.c:2369
 msgid "Find line movements within and across files"
-msgstr ""
+msgstr "找到文件内及跨文件的行移动"
 
-#: builtin/blame.c:2336
-#, fuzzy
+#: builtin/blame.c:2370
 msgid "n,m"
-msgstr "数字"
+msgstr "n,m"
 
-#: builtin/blame.c:2336
+#: builtin/blame.c:2370
 msgid "Process only line range n,m, counting from 1"
-msgstr ""
+msgstr "只处理行范围在 n 和 m 之间的,从 1 开始"
 
 #: builtin/branch.c:23
 msgid "git branch [options] [-r | -a] [--merged | --no-merged]"
-msgstr ""
+msgstr "git branch [选项] [-r | -a] [--merged | --no-merged]"
 
 #: builtin/branch.c:24
 msgid "git branch [options] [-l] [-f] <branchname> [<start-point>]"
-msgstr ""
+msgstr "git branch [选项] [-l] [-f] <分支名> [<起始点>]"
 
 #: builtin/branch.c:25
-#, fuzzy
 msgid "git branch [options] [-r] (-d | -D) <branchname>..."
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git branch [选项] [-r] (-d | -D) <分支名>..."
 
 #: builtin/branch.c:26
 msgid "git branch [options] (-m | -M) [<oldbranch>] <newbranch>"
-msgstr ""
+msgstr "git branch [选项] (-m | -M) [<旧分支>] <新分支>"
 
 #  译者:保持原换行格式,在输出时 %s 的替代内容会让字符串变长
 #: builtin/branch.c:145
@@ -2227,294 +2309,326 @@ msgstr ""
 "并未删除分支 '%s', 虽然它已经合并到 HEAD,\n"
 "         然而却尚未被合并到分支 '%s' 。"
 
-#: builtin/branch.c:181
+#: builtin/branch.c:163
+#, c-format
+msgid "Couldn't look up commit object for '%s'"
+msgstr "无法查询 '%s' 指向的提交对象"
+
+#: builtin/branch.c:167
+#, c-format
+msgid ""
+"The branch '%s' is not fully merged.\n"
+"If you are sure you want to delete it, run 'git branch -D %s'."
+msgstr ""
+"分支 '%s' 没有完全合并。\n"
+"如果您确认要删除它,执行 'git branch -D %s'。"
+
+#: builtin/branch.c:180
+msgid "Update of config-file failed"
+msgstr "无法更新 config 文件"
+
+#: builtin/branch.c:208
 msgid "cannot use -a with -d"
 msgstr "不能将 -a 和 -d 同时使用"
 
-#: builtin/branch.c:187
+#: builtin/branch.c:214
 msgid "Couldn't look up commit object for HEAD"
 msgstr "无法查询 HEAD 指向的提交对象"
 
-#: builtin/branch.c:192
+#: builtin/branch.c:222
 #, c-format
 msgid "Cannot delete the branch '%s' which you are currently on."
 msgstr "无法删除您当前所在的分支 '%s'。"
 
-#: builtin/branch.c:203
+#: builtin/branch.c:235
 #, c-format
 msgid "remote branch '%s' not found."
 msgstr "远程分支 '%s' 未发现。"
 
-#: builtin/branch.c:204
+#: builtin/branch.c:236
 #, c-format
 msgid "branch '%s' not found."
 msgstr "分支 '%s' 未发现。"
 
-#: builtin/branch.c:211
-#, c-format
-msgid "Couldn't look up commit object for '%s'"
-msgstr "无法查询 '%s' 指向的提交对象"
-
-#: builtin/branch.c:217
-#, c-format
-msgid ""
-"The branch '%s' is not fully merged.\n"
-"If you are sure you want to delete it, run 'git branch -D %s'."
-msgstr ""
-"分支 '%s' 没有完全合并。\n"
-"如果您确认要删除它,执行 'git branch -D %s'。"
-
-#: builtin/branch.c:226
+#: builtin/branch.c:250
 #, c-format
 msgid "Error deleting remote branch '%s'"
 msgstr "删除远程分支 '%s' 时出错"
 
-#: builtin/branch.c:227
+#: builtin/branch.c:251
 #, c-format
 msgid "Error deleting branch '%s'"
 msgstr "删除分支 '%s' 时出错"
 
-#: builtin/branch.c:234
+#: builtin/branch.c:258
 #, c-format
 msgid "Deleted remote branch %s (was %s).\n"
 msgstr "已删除远程分支 %s(曾为 %s)。\n"
 
-#: builtin/branch.c:235
+#: builtin/branch.c:259
 #, c-format
 msgid "Deleted branch %s (was %s).\n"
 msgstr "已删除分支 %s(曾为 %s)。\n"
 
-#: builtin/branch.c:240
-msgid "Update of config-file failed"
-msgstr "无法更新 config 文件"
-
-#: builtin/branch.c:338
+#: builtin/branch.c:361
 #, c-format
 msgid "branch '%s' does not point at a commit"
 msgstr "分支 '%s' 未指向一个提交"
 
-#: builtin/branch.c:410
+#: builtin/branch.c:433
 #, c-format
 msgid "[%s: behind %d]"
 msgstr "[%s:落后 %d]"
 
-#: builtin/branch.c:412
+#: builtin/branch.c:435
 #, c-format
 msgid "[behind %d]"
 msgstr "[落后 %d]"
 
-#: builtin/branch.c:416
+#: builtin/branch.c:439
 #, c-format
 msgid "[%s: ahead %d]"
 msgstr "[%s:领先 %d]"
 
-#: builtin/branch.c:418
+#: builtin/branch.c:441
 #, c-format
 msgid "[ahead %d]"
 msgstr "[领先 %d]"
 
-#: builtin/branch.c:421
+#: builtin/branch.c:444
 #, c-format
 msgid "[%s: ahead %d, behind %d]"
 msgstr "[%s:领先 %d,落后 %d]"
 
-#: builtin/branch.c:424
+#: builtin/branch.c:447
 #, c-format
 msgid "[ahead %d, behind %d]"
 msgstr "[领先 %d,落后 %d]"
 
-#: builtin/branch.c:537
+#: builtin/branch.c:469
+msgid " **** invalid ref ****"
+msgstr " **** 无效引用 ****"
+
+#: builtin/branch.c:560
 msgid "(no branch)"
 msgstr "(非分支)"
 
-#: builtin/branch.c:602
+#: builtin/branch.c:593
+#, c-format
+msgid "object '%s' does not point to a commit"
+msgstr "对象 '%s' 没有指向一个提交"
+
+#: builtin/branch.c:625
 msgid "some refs could not be read"
 msgstr "一些引用不能读取"
 
-#: builtin/branch.c:615
+#: builtin/branch.c:638
 msgid "cannot rename the current branch while not on any."
 msgstr "无法重命名当前分支因为不处于任何分支上。"
 
-#: builtin/branch.c:625
+#: builtin/branch.c:648
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "无效的分支名:'%s'"
 
-#: builtin/branch.c:640
+#: builtin/branch.c:663
 msgid "Branch rename failed"
 msgstr "分支重命名失败"
 
-#: builtin/branch.c:644
+#: builtin/branch.c:667
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "重命名掉一个错误命名的旧分支 '%s'"
 
-#: builtin/branch.c:648
+#: builtin/branch.c:671
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr "分支重命名为 %s,但 HEAD 没有更新!"
 
-#: builtin/branch.c:655
+#: builtin/branch.c:678
 msgid "Branch is renamed, but update of config-file failed"
 msgstr "分支被重命名,但更新 config 文件失败"
 
-#: builtin/branch.c:670
+#: builtin/branch.c:693
 #, c-format
 msgid "malformed object name %s"
 msgstr "非法的对象名 %s"
 
-#: builtin/branch.c:694
+#: builtin/branch.c:717
 #, c-format
 msgid "could not write branch description template: %s"
 msgstr "不能写分支描述模版:%s"
 
-#: builtin/branch.c:724
-#, fuzzy
+#: builtin/branch.c:747
 msgid "Generic options"
-msgstr "无效选项:%s"
+msgstr "通用选项"
 
-#: builtin/branch.c:726
+#: builtin/branch.c:749
 msgid "show hash and subject, give twice for upstream branch"
-msgstr ""
+msgstr "显示哈希值和主题,若参数出现两次则显示上游分支"
 
-#: builtin/branch.c:727
+#: builtin/branch.c:750
 msgid "suppress informational messages"
-msgstr ""
+msgstr "不显示信息"
 
-#: builtin/branch.c:728
+#: builtin/branch.c:751
 msgid "set up tracking mode (see git-pull(1))"
-msgstr ""
+msgstr "设置跟踪模式(参见 git-pull(1))"
 
-#: builtin/branch.c:730
+#: builtin/branch.c:753
 msgid "change upstream info"
-msgstr ""
+msgstr "改变上游信息"
 
-#: builtin/branch.c:734
-#, fuzzy
+#: builtin/branch.c:757
 msgid "use colored output"
-msgstr "ä¸\8dè\83½è¾\93å\87ºé\87\8då®\9aå\90\91"
+msgstr "使ç\94¨å½©è\89²è¾\93å\87º"
 
-#: builtin/branch.c:735
-#, fuzzy
+#: builtin/branch.c:758
 msgid "act on remote-tracking branches"
-msgstr "%s 没有来自 %s 的远程跟踪分支"
+msgstr "作用于远程跟踪分支"
 
-#: builtin/branch.c:738 builtin/branch.c:744 builtin/branch.c:765
-#: builtin/branch.c:771 builtin/commit.c:1395 builtin/commit.c:1396
-#: builtin/commit.c:1397 builtin/commit.c:1398 builtin/tag.c:470
-#, fuzzy
+#: builtin/branch.c:761 builtin/branch.c:767 builtin/branch.c:788
+#: builtin/branch.c:794 builtin/commit.c:1366 builtin/commit.c:1367
+#: builtin/commit.c:1368 builtin/commit.c:1369 builtin/tag.c:468
 msgid "commit"
-msgstr "(坏提交)\n"
+msgstr "提交"
 
-#: builtin/branch.c:739 builtin/branch.c:745
+#: builtin/branch.c:762 builtin/branch.c:768
 msgid "print only branches that contain the commit"
-msgstr ""
+msgstr "只打印包含该提交的分支"
 
-#: builtin/branch.c:751
+#: builtin/branch.c:774
 msgid "Specific git-branch actions:"
-msgstr ""
+msgstr "具体的 git-branch 动作:"
 
-#: builtin/branch.c:752
+#: builtin/branch.c:775
 msgid "list both remote-tracking and local branches"
-msgstr ""
+msgstr "列出远程跟踪及本地分支"
 
-#: builtin/branch.c:754
+#: builtin/branch.c:777
 msgid "delete fully merged branch"
-msgstr ""
+msgstr "删除完全合并的分支"
 
-#: builtin/branch.c:755
+#: builtin/branch.c:778
 msgid "delete branch (even if not merged)"
-msgstr ""
+msgstr "删除分支(即使没有合并)"
 
-#: builtin/branch.c:756
+#: builtin/branch.c:779
 msgid "move/rename a branch and its reflog"
-msgstr ""
+msgstr "移动/重命名一个分支,以及它的引用日志"
 
-#: builtin/branch.c:757
+#: builtin/branch.c:780
 msgid "move/rename a branch, even if target exists"
-msgstr ""
+msgstr "移动/重命名一个分支,即使目标已存在"
 
-#: builtin/branch.c:758
-#, fuzzy
+#: builtin/branch.c:781
 msgid "list branch names"
-msgstr "无效的分支名:'%s'"
+msgstr "列出分支名"
 
-#: builtin/branch.c:759
+#: builtin/branch.c:782
 msgid "create the branch's reflog"
-msgstr ""
+msgstr "创建分支的引用日志"
 
-#: builtin/branch.c:761
+#: builtin/branch.c:784
 msgid "edit the description for the branch"
-msgstr ""
+msgstr "标记分支的描述"
 
-#: builtin/branch.c:762
-#, fuzzy
+#: builtin/branch.c:785
 msgid "force creation (when already exists)"
-msgstr "远程 %s 已经存在。"
+msgstr "强制创建(当已经存在)"
 
-#: builtin/branch.c:765
-#, fuzzy
+#: builtin/branch.c:788
 msgid "print only not merged branches"
-msgstr "无法移除分支 %s"
+msgstr "只打印没有合并的分支"
 
-#: builtin/branch.c:771
+#: builtin/branch.c:794
 msgid "print only merged branches"
-msgstr ""
+msgstr "只打印合并的分支"
 
-#: builtin/branch.c:775
+#: builtin/branch.c:798
 msgid "list branches in columns"
-msgstr ""
+msgstr "以列的方式显示分支"
 
-#: builtin/branch.c:788
+#: builtin/branch.c:811
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "无法将 HEAD 解析为有效引用。"
 
-#: builtin/branch.c:793 builtin/clone.c:561
+#: builtin/branch.c:816 builtin/clone.c:561
 msgid "HEAD not found below refs/heads!"
 msgstr "HEAD 没有位于 /refs/heads 之下!"
 
-#: builtin/branch.c:813
+#: builtin/branch.c:839
 msgid "--column and --verbose are incompatible"
 msgstr "--column 和 --verbose 不兼容"
 
-#: builtin/branch.c:864
-#, fuzzy, c-format
-msgid "branch '%s' does not exist"
-msgstr "版本库 '%s' 不存在"
+#: builtin/branch.c:845
+msgid "branch name required"
+msgstr "必须提供分支名"
 
-#: builtin/branch.c:876
+#: builtin/branch.c:860
+msgid "Cannot give description to detached HEAD"
+msgstr "不能向分离头指针提供描述"
+
+#: builtin/branch.c:865
+msgid "cannot edit description of more than one branch"
+msgstr "不能为一个以上的分支编辑描述"
+
+#: builtin/branch.c:872
+#, c-format
+msgid "No commit on branch '%s' yet."
+msgstr "分支 '%s' 尚无提交。"
+
+#: builtin/branch.c:875
+#, c-format
+msgid "No branch named '%s'."
+msgstr "没有分支 '%s'。"
+
+#: builtin/branch.c:888
+msgid "too many branches for a rename operation"
+msgstr "为重命名操作提供了太多的分支名"
+
+#: builtin/branch.c:893
+#, c-format
+msgid "branch '%s' does not exist"
+msgstr "分支 '%s' 不存在"
+
+#: builtin/branch.c:905
 #, c-format
 msgid "Branch '%s' has no upstream information"
-msgstr ""
+msgstr "分支 '%s' 没有上游信息"
 
-#: builtin/branch.c:891
+#: builtin/branch.c:920
 msgid "-a and -r options to 'git branch' do not make sense with a branch name"
 msgstr "'git branch' 的 -a 和 -r 选项带一个分支名参数没有意义"
 
-#: builtin/branch.c:894
+#: builtin/branch.c:923
 #, c-format
 msgid ""
 "The --set-upstream flag is deprecated and will be removed. Consider using --"
 "track or --set-upstream-to\n"
 msgstr ""
+"选项 --set-upstream 已弃用并将被移除。考虑使用 --track 或 --set-upstream-to\n"
 
-#: builtin/branch.c:911
+#: builtin/branch.c:940
 #, c-format
 msgid ""
 "\n"
 "If you wanted to make '%s' track '%s', do this:\n"
 "\n"
 msgstr ""
+"\n"
+"如果你想用 '%s' 跟踪 '%s', 这么做:\n"
+"\n"
 
-#: builtin/branch.c:912
-#, fuzzy, c-format
+#: builtin/branch.c:941
+#, c-format
 msgid "    git branch -d %s\n"
-msgstr "  HEAD分支:%s"
+msgstr "    git branch -d %s\n"
 
-#: builtin/branch.c:913
+#: builtin/branch.c:942
 #, c-format
 msgid "    git branch --set-upstream-to %s\n"
-msgstr ""
+msgstr "    git branch --set-upstream-to %s\n"
 
 #: builtin/bundle.c:47
 #, c-format
@@ -2531,129 +2645,143 @@ msgstr "需要一个版本库来解包。"
 
 #: builtin/cat-file.c:247
 msgid "git cat-file (-t|-s|-e|-p|<type>|--textconv) <object>"
-msgstr ""
+msgstr "git cat-file (-t|-s|-e|-p|<类型>|--textconv) <对象>"
 
 #: builtin/cat-file.c:248
 msgid "git cat-file (--batch|--batch-check) < <list_of_objects>"
-msgstr ""
+msgstr "git cat-file (--batch|--batch-check) < <对象列表>"
 
 #: builtin/cat-file.c:266
 msgid "<type> can be one of: blob, tree, commit, tag"
-msgstr ""
+msgstr "<类型> 可以是其中之一:blob、tree、commit、tag"
 
 #: builtin/cat-file.c:267
-#, fuzzy
 msgid "show object type"
-msgstr "坏的对象类型。"
+msgstr "显示对象类型"
 
 #: builtin/cat-file.c:268
-#, fuzzy
 msgid "show object size"
-msgstr "坏对象 %s"
+msgstr "显示对象大小"
 
 #: builtin/cat-file.c:270
 msgid "exit with zero when there's no error"
-msgstr ""
+msgstr "当没有错误时退出并返回零"
 
 #: builtin/cat-file.c:271
 msgid "pretty-print object's content"
-msgstr ""
+msgstr "美观地打印对象的内容"
 
 #: builtin/cat-file.c:273
 msgid "for blob objects, run textconv on object's content"
-msgstr ""
+msgstr "对于数据(blob)对象,对其内容执行 textconv"
 
 #: builtin/cat-file.c:275
 msgid "show info and content of objects fed from the standard input"
-msgstr ""
+msgstr "显示从标准输入提供的对象的信息和内容"
 
 #: builtin/cat-file.c:278
-#, fuzzy
 msgid "show info about objects fed from the standard input"
-msgstr "不能从标准输入中读取日志信息"
+msgstr "显示从标准输入提供的对象的信息"
 
 #: builtin/check-attr.c:11
 msgid "git check-attr [-a | --all | attr...] [--] pathname..."
-msgstr ""
+msgstr "git check-attr [-a | --all | attr...] [--] 路径名..."
 
 #: builtin/check-attr.c:12
-msgid "git check-attr --stdin [-a | --all | attr...] < <list-of-paths>"
-msgstr ""
+msgid "git check-attr --stdin [-z] [-a | --all | attr...] < <list-of-paths>"
+msgstr "git check-attr --stdin [-z] [-a | --all | attr...] < <路径列表>"
 
 #: builtin/check-attr.c:19
 msgid "report all attributes set on file"
-msgstr ""
+msgstr "报告设置在文件上的所有属性"
 
 #: builtin/check-attr.c:20
 msgid "use .gitattributes only from the index"
-msgstr ""
+msgstr "只使用索引中的 .gitattributes"
 
-#: builtin/check-attr.c:21 builtin/hash-object.c:75
-#, fuzzy
+#: builtin/check-attr.c:21 builtin/check-ignore.c:22 builtin/hash-object.c:75
 msgid "read file names from stdin"
-msgstr "(正从标准输入中读取日志信息)\n"
+msgstr "从标准输入读出文件名"
 
-#: builtin/check-attr.c:23
-#, fuzzy
+#: builtin/check-attr.c:23 builtin/check-ignore.c:24
 msgid "input paths are terminated by a null character"
-msgstr "路径以 NUL 字符分隔"
+msgstr "输入路径以null字符终止"
+
+#: builtin/check-ignore.c:18 builtin/checkout.c:1012 builtin/gc.c:177
+msgid "suppress progress reporting"
+msgstr "不显示进度报告"
+
+#: builtin/check-ignore.c:151
+msgid "cannot specify pathnames with --stdin"
+msgstr "不能同时提供路径及 --stdin 参数"
+
+#: builtin/check-ignore.c:154
+msgid "-z only makes sense with --stdin"
+msgstr "-z 需要和 --stdin 参数共用才有意义"
+
+#: builtin/check-ignore.c:156
+msgid "no path specified"
+msgstr "未指定路径"
+
+#: builtin/check-ignore.c:160
+msgid "--quiet is only valid with a single pathname"
+msgstr "参数 --quiet 只在提供一个路径名时有效"
+
+#: builtin/check-ignore.c:162
+msgid "cannot have both --quiet and --verbose"
+msgstr "不能同时提供 --quiet 和 --verbose 参数"
 
 #: builtin/checkout-index.c:126
 msgid "git checkout-index [options] [--] [<file>...]"
-msgstr ""
+msgstr "git checkout-index [选项] [--] [<文件>...]"
 
 #: builtin/checkout-index.c:187
 msgid "check out all files in the index"
-msgstr ""
+msgstr "检出索引区的所有文件"
 
 #: builtin/checkout-index.c:188
 msgid "force overwrite of existing files"
-msgstr ""
+msgstr "强制覆盖现有的文件"
 
 #: builtin/checkout-index.c:190
 msgid "no warning for existing files and files not in index"
-msgstr ""
+msgstr "存在或不在索引中的文件都没有警告"
 
 #: builtin/checkout-index.c:192
-#, fuzzy
 msgid "don't checkout new files"
-msgstr "不能检出 %s"
+msgstr "不检出新文件"
 
 #: builtin/checkout-index.c:194
-#, fuzzy
 msgid "update stat information in the index file"
-msgstr "æ\97 æ³\95å\86\99æ\96°ç\9a\84ç´¢å¼\95æ\96\87件"
+msgstr "æ\9b´æ\96°ç´¢å¼\95中æ\96\87件ç\9a\84ç\8a¶æ\80\81ä¿¡æ\81¯"
 
 #: builtin/checkout-index.c:200
-#, fuzzy
 msgid "read list of paths from the standard input"
-msgstr "(正从标准输入中读取日志信息)\n"
+msgstr "从标准输入读取路径列表"
 
 #: builtin/checkout-index.c:202
 msgid "write the content to temporary files"
-msgstr ""
+msgstr "将内容写入临时文件"
 
 #: builtin/checkout-index.c:203 builtin/column.c:30
 msgid "string"
-msgstr ""
+msgstr "字符串"
 
 #: builtin/checkout-index.c:204
 msgid "when creating files, prepend <string>"
-msgstr ""
+msgstr "在创建文件时,在前面加上<字符串>"
 
 #: builtin/checkout-index.c:207
 msgid "copy out the files from named stage"
-msgstr ""
+msgstr "从指定暂存区中拷出文件"
 
 #: builtin/checkout.c:25
-#, fuzzy
 msgid "git checkout [options] <branch>"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git checkout [选项] <分支>"
 
 #: builtin/checkout.c:26
-#, fuzzy
 msgid "git checkout [options] [<branch>] -- <file>..."
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git checkout [选项] [<分支>] -- <文件>..."
 
 #: builtin/checkout.c:116 builtin/checkout.c:149
 #, c-format
@@ -2687,19 +2815,19 @@ msgstr "无法为 '%s' 添加合并结果"
 
 #: builtin/checkout.c:236 builtin/checkout.c:239 builtin/checkout.c:242
 #: builtin/checkout.c:245
-#, fuzzy, c-format
+#, c-format
 msgid "'%s' cannot be used with updating paths"
-msgstr "%s:%s 不能和 %s 同时使用"
+msgstr "'%s' 不能在更新路径时使用"
 
 #: builtin/checkout.c:248 builtin/checkout.c:251
-#, fuzzy, c-format
+#, c-format
 msgid "'%s' cannot be used with %s"
-msgstr "%s:%s 不能和 %s 同时使用"
+msgstr "'%s' 不能和 %s 同时使用"
 
 #: builtin/checkout.c:254
 #, c-format
 msgid "Cannot update paths and switch to branch '%s' at the same time."
-msgstr ""
+msgstr "不能同时更新路径并切换到分支'%s'。"
 
 #: builtin/checkout.c:265 builtin/checkout.c:426
 msgid "corrupt index file"
@@ -2710,11 +2838,6 @@ msgstr "损坏的索引文件"
 msgid "path '%s' is unmerged"
 msgstr "路径 '%s' 未合并"
 
-#: builtin/checkout.c:333 builtin/checkout.c:534 builtin/clone.c:586
-#: builtin/merge.c:811
-msgid "unable to write new index file"
-msgstr "无法写新的索引文件"
-
 #: builtin/checkout.c:448
 msgid "you need to resolve your current index first"
 msgstr "您需要先解决当前索引的冲突"
@@ -2743,7 +2866,7 @@ msgstr "已经位于 '%s'\n"
 msgid "Switched to and reset branch '%s'\n"
 msgstr "切换并重置分支 '%s'\n"
 
-#: builtin/checkout.c:618
+#: builtin/checkout.c:618 builtin/checkout.c:955
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "切换到一个新分支 '%s'\n"
@@ -2820,313 +2943,295 @@ msgstr "无效引用:%s"
 msgid "reference is not a tree: %s"
 msgstr "引用不是一个树:%s"
 
-#: builtin/checkout.c:961
-#, fuzzy
+#: builtin/checkout.c:964
 msgid "paths cannot be used with switching branches"
-msgstr "--ours/--theirs 和切换分支不兼容。"
+msgstr "路径不能和切换分支同时使用"
 
-#: builtin/checkout.c:964 builtin/checkout.c:968
-#, fuzzy, c-format
+#: builtin/checkout.c:967 builtin/checkout.c:971
+#, c-format
 msgid "'%s' cannot be used with switching branches"
-msgstr "%s:%s 不能和 %s 同时使用"
+msgstr "'%s' 不能和切换分支同时使用"
 
-#: builtin/checkout.c:972 builtin/checkout.c:975 builtin/checkout.c:980
-#: builtin/checkout.c:983
-#, fuzzy, c-format
+#: builtin/checkout.c:975 builtin/checkout.c:978 builtin/checkout.c:983
+#: builtin/checkout.c:986
+#, c-format
 msgid "'%s' cannot be used with '%s'"
-msgstr "%s:%s 不能和 %s 同时使用"
+msgstr "'%s' 不能和 '%s' 同时使用"
 
-#: builtin/checkout.c:988
-#, fuzzy, c-format
+#: builtin/checkout.c:991
+#, c-format
 msgid "Cannot switch branch to a non-commit '%s'"
-msgstr "无法切换分支到一个非提交。"
+msgstr "不能切换分支到一个非提交 '%s'"
 
-#: builtin/checkout.c:1009 builtin/gc.c:177
-msgid "suppress progress reporting"
-msgstr ""
-
-#: builtin/checkout.c:1010 builtin/checkout.c:1012 builtin/clone.c:89
+#: builtin/checkout.c:1013 builtin/checkout.c:1015 builtin/clone.c:89
 #: builtin/remote.c:169 builtin/remote.c:171
-#, fuzzy
 msgid "branch"
-msgstr "位于分支 "
+msgstr "分支"
 
-#: builtin/checkout.c:1011
+#: builtin/checkout.c:1014
 msgid "create and checkout a new branch"
-msgstr ""
+msgstr "创建并检出一个新的分支"
 
-#: builtin/checkout.c:1013
+#: builtin/checkout.c:1016
 msgid "create/reset and checkout a branch"
-msgstr ""
+msgstr "创建/重置并检出一个分支"
 
-#: builtin/checkout.c:1014
-#, fuzzy
+#: builtin/checkout.c:1017
 msgid "create reflog for new branch"
-msgstr "列出、创建或删除分支"
+msgstr "为新的分支创建引用日志"
 
-#: builtin/checkout.c:1015
+#: builtin/checkout.c:1018
 msgid "detach the HEAD at named commit"
-msgstr ""
+msgstr "成为指向该提交的分离头指针"
 
-#: builtin/checkout.c:1016
-#, fuzzy
+#: builtin/checkout.c:1019
 msgid "set upstream info for new branch"
-msgstr "尚未给分支 '%s' 设置上游"
+msgstr "为新的分支设置上游信息"
 
-#: builtin/checkout.c:1018
-#, fuzzy
+#: builtin/checkout.c:1021
 msgid "new branch"
-msgstr "[新分支]"
+msgstr "新分支"
 
-#: builtin/checkout.c:1018
-#, fuzzy
+#: builtin/checkout.c:1021
 msgid "new unparented branch"
-msgstr "没æ\9c\89å½\93å\89\8då\88\86æ\94¯ã\80\82"
+msgstr "æ\96°ç\9a\84没æ\9c\89ç\88¶æ\8f\90交ç\9a\84å\88\86æ\94¯"
 
-#: builtin/checkout.c:1019
+#: builtin/checkout.c:1022
 msgid "checkout our version for unmerged files"
-msgstr ""
+msgstr "对尚未合并的文件检出我们的版本"
 
-#: builtin/checkout.c:1021
+#: builtin/checkout.c:1024
 msgid "checkout their version for unmerged files"
-msgstr ""
+msgstr "对尚未合并的文件检出他们的版本"
 
-#: builtin/checkout.c:1023
+#: builtin/checkout.c:1026
 msgid "force checkout (throw away local modifications)"
-msgstr ""
+msgstr "强制检出(丢弃本地修改)"
 
-#: builtin/checkout.c:1024
+#: builtin/checkout.c:1027
 msgid "perform a 3-way merge with the new branch"
-msgstr ""
+msgstr "和新的分支执行三路合并"
 
-#: builtin/checkout.c:1025 builtin/merge.c:215
-#, fuzzy
+#: builtin/checkout.c:1028 builtin/merge.c:215
 msgid "update ignored files (default)"
-msgstr "更新文件失败"
+msgstr "更新忽略的文件(默认)"
 
-#: builtin/checkout.c:1026 builtin/log.c:1111 parse-options.h:241
+#: builtin/checkout.c:1029 builtin/log.c:1147 parse-options.h:245
 msgid "style"
-msgstr ""
+msgstr "风格"
 
-#: builtin/checkout.c:1027
+#: builtin/checkout.c:1030
 msgid "conflict style (merge or diff3)"
-msgstr ""
+msgstr "冲突输出风格(merge 或 diff3)"
 
-#: builtin/checkout.c:1030
+#: builtin/checkout.c:1033
 msgid "second guess 'git checkout no-such-branch'"
-msgstr ""
+msgstr "再者猜测'git checkout no-such-branch'"
 
-#: builtin/checkout.c:1054
-#, fuzzy
+#: builtin/checkout.c:1057
 msgid "-b, -B and --orphan are mutually exclusive"
-msgstr "-n 和 -k 互斥。"
+msgstr "-b、-B 和 --orphan 是互斥的"
 
-#: builtin/checkout.c:1071
+#: builtin/checkout.c:1074
 msgid "--track needs a branch name"
 msgstr "--track 需要一个分支名"
 
-#: builtin/checkout.c:1078
+#: builtin/checkout.c:1081
 msgid "Missing branch name; try -b"
 msgstr "缺少分支名;尝试 -b"
 
-#: builtin/checkout.c:1113
+#: builtin/checkout.c:1116
 msgid "invalid path specification"
 msgstr "无效的路径规格"
 
-#: builtin/checkout.c:1120
-#, fuzzy, c-format
+#: builtin/checkout.c:1123
+#, c-format
 msgid ""
 "Cannot update paths and switch to branch '%s' at the same time.\n"
 "Did you intend to checkout '%s' which can not be resolved as commit?"
 msgstr ""
-"git checkout:更新路径和切换分支不兼容。\n"
-"您是想要检出 '%s' 但未能将其解析为提交么?"
+"不能同时更新路径并切换到分支'%s'。\n"
+"您是想要检出 '%s' 但其未能解析为提交么?"
 
-#: builtin/checkout.c:1125
-#, fuzzy, c-format
+#: builtin/checkout.c:1128
+#, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
-msgstr "git checkoutï¼\9a--detach ä¸\8dè·\9fè·¯å¾\84å\8f\82æ\95°"
+msgstr "git checkoutï¼\9a--detach ä¸\8dè\83½æ\8e¥æ\94¶è·¯å¾\84å\8f\82æ\95° '%s'"
 
-#: builtin/checkout.c:1129
+#: builtin/checkout.c:1132
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
 msgstr ""
 "git checkout:在从索引检出时,--ours/--theirs、--force 和 --merge 不兼容。"
 
-#: builtin/clean.c:19
+#: builtin/clean.c:20
 msgid "git clean [-d] [-f] [-n] [-q] [-e <pattern>] [-x | -X] [--] <paths>..."
-msgstr ""
+msgstr "git clean [-d] [-f] [-n] [-q] [-e <模式>] [-x | -X] [--] <路径>..."
+
+#: builtin/clean.c:24
+#, c-format
+msgid "Removing %s\n"
+msgstr "正删除 %s\n"
 
-#: builtin/clean.c:51
+#: builtin/clean.c:25
+#, c-format
+msgid "Would remove %s\n"
+msgstr "将删除 %s\n"
+
+#: builtin/clean.c:26
+#, c-format
+msgid "Skipping repository %s\n"
+msgstr "忽略版本库 %s\n"
+
+#: builtin/clean.c:27
+#, c-format
+msgid "Would skip repository %s\n"
+msgstr "将忽略版本库 %s\n"
+
+#: builtin/clean.c:28
+#, c-format
+msgid "failed to remove %s"
+msgstr "无法删除 %s"
+
+#: builtin/clean.c:160
 msgid "do not print names of files removed"
-msgstr ""
+msgstr "不打印删除文件的名称"
 
-#: builtin/clean.c:53
+#: builtin/clean.c:162
 msgid "force"
-msgstr ""
+msgstr "强制"
 
-#: builtin/clean.c:55
-#, fuzzy
+#: builtin/clean.c:164
 msgid "remove whole directories"
-msgstr "两个输出目录?"
+msgstr "删除整个目录"
 
-#: builtin/clean.c:56 builtin/describe.c:413 builtin/grep.c:802
-#: builtin/ls-files.c:491 builtin/name-rev.c:231 builtin/show-ref.c:199
+#: builtin/clean.c:165 builtin/describe.c:413 builtin/grep.c:717
+#: builtin/ls-files.c:494 builtin/name-rev.c:231 builtin/show-ref.c:182
 msgid "pattern"
-msgstr ""
+msgstr "模式"
 
-#: builtin/clean.c:57
+#: builtin/clean.c:166
 msgid "add <pattern> to ignore rules"
-msgstr ""
+msgstr "添加<模式>到忽略规则"
 
-#: builtin/clean.c:58
+#: builtin/clean.c:167
 msgid "remove ignored files, too"
-msgstr ""
+msgstr "也删除忽略的文件"
 
-#: builtin/clean.c:60
+#: builtin/clean.c:169
 msgid "remove only ignored files"
-msgstr ""
+msgstr "只删除忽略的文件"
 
-#: builtin/clean.c:78
+#: builtin/clean.c:187
 msgid "-x and -X cannot be used together"
 msgstr "-x 和 -X 不能同时使用"
 
-#: builtin/clean.c:82
+#: builtin/clean.c:191
 msgid ""
 "clean.requireForce set to true and neither -n nor -f given; refusing to clean"
 msgstr ""
 "clean.requireForce 设置为 true 且未提供 -n 或 -f 选项,拒绝执行清理动作"
 
-#: builtin/clean.c:85
+#: builtin/clean.c:194
 msgid ""
 "clean.requireForce defaults to true and neither -n nor -f given; refusing to "
 "clean"
 msgstr ""
 "clean.requireForce 默认为 true 且未提供 -n 或 -f 选项,拒绝执行清理动作"
 
-#: builtin/clean.c:155 builtin/clean.c:176
-#, c-format
-msgid "Would remove %s\n"
-msgstr "将删除 %s\n"
-
-#: builtin/clean.c:159 builtin/clean.c:179
-#, c-format
-msgid "Removing %s\n"
-msgstr "正删除 %s\n"
-
-#: builtin/clean.c:162 builtin/clean.c:182
-#, c-format
-msgid "failed to remove %s"
-msgstr "无法删除 %s"
-
-#: builtin/clean.c:166
-#, c-format
-msgid "Would not remove %s\n"
-msgstr "不会删除 %s\n"
-
-#: builtin/clean.c:168
-#, c-format
-msgid "Not removing %s\n"
-msgstr "未删除 %s\n"
-
 #: builtin/clone.c:36
 msgid "git clone [options] [--] <repo> [<dir>]"
-msgstr ""
+msgstr "git clone [选项] [--] <版本库> [<路径>]"
 
 #: builtin/clone.c:64 builtin/fetch.c:82 builtin/merge.c:212
-#: builtin/push.c:399
+#: builtin/push.c:436
 msgid "force progress reporting"
-msgstr ""
+msgstr "强制显示进度报告"
 
 #: builtin/clone.c:66
 msgid "don't create a checkout"
-msgstr ""
+msgstr "不创建一个检出"
 
 #: builtin/clone.c:67 builtin/clone.c:69 builtin/init-db.c:488
-#, fuzzy
 msgid "create a bare repository"
-msgstr "不是一个 git 版本库"
+msgstr "创建一个裸版本库"
 
 #: builtin/clone.c:72
 msgid "create a mirror repository (implies bare)"
-msgstr ""
+msgstr "创建一个镜像版本库(也是裸版本库)"
 
 #: builtin/clone.c:74
 msgid "to clone from a local repository"
-msgstr ""
+msgstr "从本地版本库克隆"
 
 #: builtin/clone.c:76
 msgid "don't use local hardlinks, always copy"
-msgstr ""
+msgstr "不使用本地硬链接,始终复制"
 
 #: builtin/clone.c:78
-#, fuzzy
 msgid "setup as shared repository"
-msgstr "不是一个 git 版本库"
+msgstr "设置为共享版本库"
 
 #: builtin/clone.c:80 builtin/clone.c:82
 msgid "initialize submodules in the clone"
-msgstr ""
+msgstr "在克隆时初始化子模组"
 
 #: builtin/clone.c:83 builtin/init-db.c:485
-#, fuzzy
 msgid "template-directory"
-msgstr "æ\96\87件/目录"
+msgstr "模æ\9d¿目录"
 
 #: builtin/clone.c:84 builtin/init-db.c:486
 msgid "directory from which templates will be used"
-msgstr ""
+msgstr "模板目录将被使用"
 
 #: builtin/clone.c:86
 msgid "reference repository"
-msgstr ""
+msgstr "引用版本库"
 
 #: builtin/clone.c:87 builtin/column.c:26 builtin/merge-file.c:44
-#, fuzzy
 msgid "name"
-msgstr "重命名"
+msgstr "名称"
 
 #: builtin/clone.c:88
 msgid "use <name> instead of 'origin' to track upstream"
-msgstr ""
+msgstr "使用<名称>而不是 'origin' 去跟踪上游"
 
 #: builtin/clone.c:90
 msgid "checkout <branch> instead of the remote's HEAD"
-msgstr ""
+msgstr "检出<分支>而不是远程HEAD"
 
 #: builtin/clone.c:92
 msgid "path to git-upload-pack on the remote"
-msgstr ""
+msgstr "远程 git-upload-pack 路径"
 
-#: builtin/clone.c:93 builtin/fetch.c:83 builtin/grep.c:747
+#: builtin/clone.c:93 builtin/fetch.c:83 builtin/grep.c:662
 msgid "depth"
-msgstr ""
+msgstr "深度"
 
 #: builtin/clone.c:94
 msgid "create a shallow clone of that depth"
-msgstr ""
+msgstr "创建一个指定深度的浅克隆"
 
 #: builtin/clone.c:96
 msgid "clone only one branch, HEAD or --branch"
-msgstr ""
+msgstr "只克隆一个分支、HEAD 或 --branch"
 
 #: builtin/clone.c:97 builtin/init-db.c:494
 msgid "gitdir"
-msgstr ""
+msgstr "git目录"
 
 #: builtin/clone.c:98 builtin/init-db.c:495
 msgid "separate git dir from working tree"
-msgstr ""
+msgstr "git目录和工作区分离"
 
 #: builtin/clone.c:99
 msgid "key=value"
-msgstr ""
+msgstr "key=value"
 
 #: builtin/clone.c:100
-#, fuzzy
 msgid "set config inside the new repository"
-msgstr "记录变更到版本库"
+msgstr "在新版本库中设置配置信息"
 
 #: builtin/clone.c:243
 #, c-format
@@ -3177,116 +3282,117 @@ msgstr "不能发现要克隆的远程分支 %s。"
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr "远程 HEAD 指向一个不存在的引用,无法检出。\n"
 
-#: builtin/clone.c:642
+#: builtin/clone.c:690
 msgid "Too many arguments."
 msgstr "太多参数。"
 
-#: builtin/clone.c:646
+#: builtin/clone.c:694
 msgid "You must specify a repository to clone."
 msgstr "您必须指定一个版本库来克隆。"
 
-#: builtin/clone.c:657
+#: builtin/clone.c:705
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "--bare 和 --origin %s 选项不兼容。"
 
-#: builtin/clone.c:671
+#: builtin/clone.c:708
+msgid "--bare and --separate-git-dir are incompatible."
+msgstr "--bare 和 --separate-git-dir 选项不兼容。"
+
+#: builtin/clone.c:721
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "版本库 '%s' 不存在"
 
-#: builtin/clone.c:676
+#: builtin/clone.c:726
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr "--depth 在本地克隆被忽略,改为 file:// 协议试试。"
 
-#: builtin/clone.c:686
+#: builtin/clone.c:736
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr "目标路径 '%s' 已经存在,并且不是一个空目录。"
 
-#: builtin/clone.c:696
+#: builtin/clone.c:746
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "工作区 '%s' 已经存在。"
 
-#: builtin/clone.c:709 builtin/clone.c:723
+#: builtin/clone.c:759 builtin/clone.c:771
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "不能为 '%s' 创建先导目录"
 
-#: builtin/clone.c:712
+#: builtin/clone.c:762
 #, c-format
 msgid "could not create work tree dir '%s'."
 msgstr "不能为 '%s' 创建工作区目录。"
 
-#: builtin/clone.c:731
+#: builtin/clone.c:781
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "克隆到裸版本库 '%s'...\n"
 
-#: builtin/clone.c:733
+#: builtin/clone.c:783
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "正克隆到 '%s'...\n"
 
-#: builtin/clone.c:789
+#: builtin/clone.c:818
 #, c-format
 msgid "Don't know how to clone %s"
 msgstr "不知道如何克隆 %s"
 
-#: builtin/clone.c:838
+#: builtin/clone.c:867
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr "远程分支 %s 在上游 %s 未发现"
 
-#: builtin/clone.c:845
+#: builtin/clone.c:874
 msgid "You appear to have cloned an empty repository."
 msgstr "您似乎克隆了一个空版本库。"
 
 #: builtin/column.c:9
 msgid "git column [options]"
-msgstr ""
+msgstr "git column [选项]"
 
 #: builtin/column.c:26
 msgid "lookup config vars"
-msgstr ""
+msgstr "查找配置变量"
 
 #: builtin/column.c:27 builtin/column.c:28
-#, fuzzy
 msgid "layout to use"
-msgstr "本地已过时"
+msgstr "要使用的布局"
 
 #: builtin/column.c:29
 msgid "Maximum width"
-msgstr ""
+msgstr "最大宽度"
 
 #: builtin/column.c:30
 msgid "Padding space on left border"
-msgstr ""
+msgstr "左边框的填充空间"
 
 #: builtin/column.c:31
 msgid "Padding space on right border"
-msgstr ""
+msgstr "右边框的填充空间"
 
 #: builtin/column.c:32
 msgid "Padding space between columns"
-msgstr ""
+msgstr "两列之间的填充空间"
 
 #: builtin/column.c:51
 msgid "--command must be the first argument"
 msgstr "--command 必须是第一个参数"
 
-#: builtin/commit.c:33
-#, fuzzy
-msgid "git commit [options] [--] <filepattern>..."
-msgstr "git apply [选项] [<补丁>...]"
+#: builtin/commit.c:34
+msgid "git commit [options] [--] <pathspec>..."
+msgstr "git commit [选项] [--] <路径匹配>..."
 
-#: builtin/commit.c:38
-#, fuzzy
-msgid "git status [options] [--] <filepattern>..."
-msgstr "git apply [选项] [<补丁>...]"
+#: builtin/commit.c:39
+msgid "git status [options] [--] <pathspec>..."
+msgstr "git status [选项] [--] <路径匹配>..."
 
-#: builtin/commit.c:43
+#: builtin/commit.c:44
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -3309,7 +3415,7 @@ msgstr ""
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: builtin/commit.c:55
+#: builtin/commit.c:56
 msgid ""
 "You asked to amend the most recent commit, but doing so would make\n"
 "it empty. You can repeat your command with --allow-empty, or you can\n"
@@ -3318,7 +3424,7 @@ msgstr ""
 "您要修补最近的提交,但这么做会让它成为空提交。您可以重复您的命令并带上\n"
 "--allow-empty 选项,或者您可用命令 \"git reset HEAD^\" 整个删除该提交。\n"
 
-#: builtin/commit.c:60
+#: builtin/commit.c:61
 msgid ""
 "The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
 "If you wish to commit it anyway, use:\n"
@@ -3334,93 +3440,93 @@ msgstr ""
 "\n"
 "否则,请使用命令 'git reset'\n"
 
-#: builtin/commit.c:256
+#: builtin/commit.c:258
 msgid "failed to unpack HEAD tree object"
 msgstr "无法解包 HEAD 树对象"
 
-#: builtin/commit.c:298
+#: builtin/commit.c:300
 msgid "unable to create temporary index"
 msgstr "不能创建临时索引"
 
-#: builtin/commit.c:304
+#: builtin/commit.c:306
 msgid "interactive add failed"
 msgstr "交互式添加失败"
 
-#: builtin/commit.c:337 builtin/commit.c:358 builtin/commit.c:408
+#: builtin/commit.c:339 builtin/commit.c:360 builtin/commit.c:410
 msgid "unable to write new_index file"
 msgstr "无法写 new_index 文件"
 
-#: builtin/commit.c:389
+#: builtin/commit.c:391
 msgid "cannot do a partial commit during a merge."
 msgstr "在合并过程中不能做部分提交。"
 
-#: builtin/commit.c:391
+#: builtin/commit.c:393
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr "在拣选过程中不能做部分提交。"
 
-#: builtin/commit.c:401
+#: builtin/commit.c:403
 msgid "cannot read the index"
 msgstr "无法读取索引"
 
-#: builtin/commit.c:421
+#: builtin/commit.c:423
 msgid "unable to write temporary index file"
 msgstr "无法写临时索引文件"
 
-#: builtin/commit.c:510 builtin/commit.c:516
+#: builtin/commit.c:511 builtin/commit.c:517
 #, c-format
 msgid "invalid commit: %s"
 msgstr "无效的提交:%s"
 
-#: builtin/commit.c:539
+#: builtin/commit.c:540
 msgid "malformed --author parameter"
 msgstr "非法的 --author 参数"
 
-#: builtin/commit.c:600
+#: builtin/commit.c:560
 #, c-format
 msgid "Malformed ident string: '%s'"
 msgstr "非法的身份字符串:'%s'"
 
-#: builtin/commit.c:638 builtin/commit.c:671 builtin/commit.c:985
+#: builtin/commit.c:598 builtin/commit.c:631 builtin/commit.c:954
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "不能查询提交 %s"
 
-#: builtin/commit.c:650 builtin/shortlog.c:296
+#: builtin/commit.c:610 builtin/shortlog.c:272
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr "(正从标准输入中读取日志信息)\n"
 
-#: builtin/commit.c:652
+#: builtin/commit.c:612
 msgid "could not read log from standard input"
 msgstr "不能从标准输入中读取日志信息"
 
-#: builtin/commit.c:656
+#: builtin/commit.c:616
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "不能读取日志文件 '%s'"
 
-#: builtin/commit.c:662
+#: builtin/commit.c:622
 msgid "commit has empty message"
 msgstr "提交说明为空"
 
-#: builtin/commit.c:678
+#: builtin/commit.c:638
 msgid "could not read MERGE_MSG"
 msgstr "不能读取 MERGE_MSG"
 
-#: builtin/commit.c:682
+#: builtin/commit.c:642
 msgid "could not read SQUASH_MSG"
 msgstr "不能读取 SQUASH_MSG"
 
-#: builtin/commit.c:686
+#: builtin/commit.c:646
 #, c-format
 msgid "could not read '%s'"
 msgstr "不能读取 '%s'"
 
-#: builtin/commit.c:738
+#: builtin/commit.c:707
 msgid "could not write commit template"
 msgstr "不能写提交模版"
 
-#: builtin/commit.c:749
+#: builtin/commit.c:718
 #, c-format
 msgid ""
 "\n"
@@ -3434,7 +3540,7 @@ msgstr ""
 "\t%s\n"
 "然后重试。\n"
 
-#: builtin/commit.c:754
+#: builtin/commit.c:723
 #, c-format
 msgid ""
 "\n"
@@ -3448,375 +3554,375 @@ msgstr ""
 "\t%s\n"
 "然后重试。\n"
 
-#: builtin/commit.c:766
+#: builtin/commit.c:735
+#, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
-"with '#' will be ignored, and an empty message aborts the commit.\n"
+"with '%c' will be ignored, and an empty message aborts the commit.\n"
 msgstr ""
-"请为您的变更输入提交说明。以 '#' 开始的行将被忽略,而一个空的提交\n"
+"请为您的变更输入提交说明。以 '%c' 开始的行将被忽略,而一个空的提交\n"
 "说明将会终止提交。\n"
 
-#: builtin/commit.c:771
+#: builtin/commit.c:740
+#, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
-"with '#' will be kept; you may remove them yourself if you want to.\n"
+"with '%c' will be kept; you may remove them yourself if you want to.\n"
 "An empty message aborts the commit.\n"
 msgstr ""
-"请为您的变更输入提交说明。以 '#' 开始的行将被保留,您可以删除它们\n"
-"如果您想这样做的话。而一个空的提交说明将会终止提交。\n"
+"请为您的变更输入提交说明。以 '%c' 开始的行将被保留,如果您原意\n"
+"也可以删除它们。一个空的提交说明将会终止提交。\n"
 
 #  译者:为保证在输出中对齐,注意调整句中空格!
-#: builtin/commit.c:784
+#: builtin/commit.c:753
 #, c-format
 msgid "%sAuthor:    %s"
 msgstr "%s作者:     %s"
 
 #  译者:为保证在输出中对齐,注意调整句中空格!
-#: builtin/commit.c:791
+#: builtin/commit.c:760
 #, c-format
 msgid "%sCommitter: %s"
 msgstr "%s提交者:   %s"
 
-#: builtin/commit.c:811
+#: builtin/commit.c:780
 msgid "Cannot read index"
 msgstr "无法读取索引"
 
-#: builtin/commit.c:848
+#: builtin/commit.c:817
 msgid "Error building trees"
 msgstr "无法创建树对象"
 
-#: builtin/commit.c:863 builtin/tag.c:361
+#: builtin/commit.c:832 builtin/tag.c:359
 #, c-format
 msgid "Please supply the message using either -m or -F option.\n"
-msgstr "请使用 -m 或 -F 选项提供提交说明。\n"
+msgstr "请使用 -m 或 -F 选项提供提交说明。\n"
 
-#: builtin/commit.c:960
+#: builtin/commit.c:929
 #, c-format
 msgid "No existing author found with '%s'"
 msgstr "没有找到匹配 '%s' 的作者"
 
-#: builtin/commit.c:975 builtin/commit.c:1175
+#: builtin/commit.c:944 builtin/commit.c:1138
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "无效的未追踪文件参数 '%s'"
 
-#: builtin/commit.c:1015
+#: builtin/commit.c:974
 msgid "Using both --reset-author and --author does not make sense"
 msgstr "同时使用 --reset-author 和 --author 没有意义"
 
-#: builtin/commit.c:1026
+#: builtin/commit.c:985
 msgid "You have nothing to amend."
 msgstr "您没有可修补的提交。"
 
-#: builtin/commit.c:1029
+#: builtin/commit.c:988
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr "您正处于一个合并过程中 -- 无法修补提交。"
 
-#: builtin/commit.c:1031
+#: builtin/commit.c:990
 msgid "You are in the middle of a cherry-pick -- cannot amend."
 msgstr "您正处于一个拣选过程中 -- 无法修补提交。"
 
-#: builtin/commit.c:1034
+#: builtin/commit.c:993
 msgid "Options --squash and --fixup cannot be used together"
 msgstr "选项 --squash 和 --fixup 不能同时使用"
 
-#: builtin/commit.c:1044
+#: builtin/commit.c:1003
 msgid "Only one of -c/-C/-F/--fixup can be used."
 msgstr "只能用一个 -c/-C/-F/--fixup 选项。"
 
-#: builtin/commit.c:1046
+#: builtin/commit.c:1005
 msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
 msgstr "选项 -m 不能和 -c/-C/-F/--fixup 同时使用。"
 
-#: builtin/commit.c:1054
+#: builtin/commit.c:1013
 msgid "--reset-author can be used only with -C, -c or --amend."
 msgstr "--reset-author 只能和 -C、-c 或 --amend 同时使用。"
 
-#: builtin/commit.c:1071
+#: builtin/commit.c:1030
 msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
 msgstr "只能用一个 --include/--only/--all/--interactive/--patch 选项。"
 
-#: builtin/commit.c:1073
+#: builtin/commit.c:1032
 msgid "No paths with --include/--only does not make sense."
 msgstr "参数 --include/--only 不跟路径没有意义。"
 
-#: builtin/commit.c:1075
+#: builtin/commit.c:1034
 msgid "Clever... amending the last one with dirty index."
 msgstr "聪明... 在索引不干净下修补最后的提交。"
 
-#: builtin/commit.c:1077
+#: builtin/commit.c:1036
 msgid "Explicit paths specified without -i nor -o; assuming --only paths..."
 msgstr "指定了明确的路径而没有使用 -i 或 -o 选项;认为是 --only paths..."
 
-#: builtin/commit.c:1087 builtin/tag.c:577
+#: builtin/commit.c:1046 builtin/tag.c:575
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "无效的清理模式 %s"
 
-#: builtin/commit.c:1092
+#: builtin/commit.c:1051
 msgid "Paths with -a does not make sense."
 msgstr "路径和 -a 选项同时使用没有意义。"
 
-#: builtin/commit.c:1189 builtin/commit.c:1417
+#: builtin/commit.c:1057 builtin/commit.c:1192
+msgid "--long and -z are incompatible"
+msgstr "--long 和 -z 选项不兼容"
+
+#: builtin/commit.c:1152 builtin/commit.c:1388
 msgid "show status concisely"
-msgstr ""
+msgstr "以简洁的格式显示状态"
 
-#: builtin/commit.c:1191 builtin/commit.c:1419
+#: builtin/commit.c:1154 builtin/commit.c:1390
 msgid "show branch information"
-msgstr ""
+msgstr "显示分支信息"
 
-#: builtin/commit.c:1193 builtin/commit.c:1421 builtin/push.c:389
+#: builtin/commit.c:1156 builtin/commit.c:1392 builtin/push.c:426
 msgid "machine-readable output"
-msgstr ""
+msgstr "机器可读的输出"
 
-#: builtin/commit.c:1196 builtin/commit.c:1423
+#: builtin/commit.c:1159 builtin/commit.c:1394
+msgid "show status in long format (default)"
+msgstr "以长格式显示状态(默认)"
+
+#: builtin/commit.c:1162 builtin/commit.c:1397
 msgid "terminate entries with NUL"
-msgstr ""
+msgstr "条目以NUL字符结尾"
 
-#: builtin/commit.c:1198 builtin/commit.c:1426 builtin/fast-export.c:636
-#: builtin/fast-export.c:639 builtin/tag.c:461
+#: builtin/commit.c:1164 builtin/commit.c:1400 builtin/fast-export.c:647
+#: builtin/fast-export.c:650 builtin/tag.c:459
 msgid "mode"
-msgstr ""
+msgstr "模式"
 
-#: builtin/commit.c:1199 builtin/commit.c:1426
+#: builtin/commit.c:1165 builtin/commit.c:1400
 msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
-msgstr ""
+msgstr "显示未跟踪的文件,“模式”的可选参数:all、normal、no。(默认:all)"
 
-#: builtin/commit.c:1202
+#: builtin/commit.c:1168
 msgid "show ignored files"
-msgstr ""
+msgstr "显示忽略的文件"
 
-#: builtin/commit.c:1203 parse-options.h:151
+#: builtin/commit.c:1169 parse-options.h:151
 msgid "when"
 msgstr "何时"
 
-#: builtin/commit.c:1204
+#: builtin/commit.c:1170
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
 msgstr ""
+"忽略子模组的更改,“何时”的可选参数:all、dirty、untracked。(默认:all)"
 
-#: builtin/commit.c:1206
-#, fuzzy
+#: builtin/commit.c:1172
 msgid "list untracked files in columns"
-msgstr "无效的未追踪文件参数 '%s'"
+msgstr "以列的方式显示未跟踪的文件"
 
-#: builtin/commit.c:1275
+#: builtin/commit.c:1246
 msgid "couldn't look up newly created commit"
 msgstr "无法找到新创建的提交"
 
-#: builtin/commit.c:1277
+#: builtin/commit.c:1248
 msgid "could not parse newly created commit"
 msgstr "不能解析新创建的提交"
 
-#: builtin/commit.c:1318
+#: builtin/commit.c:1289
 msgid "detached HEAD"
 msgstr "分离头指针"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: builtin/commit.c:1320
+#: builtin/commit.c:1291
 msgid " (root-commit)"
 msgstr "(根提交)"
 
-#: builtin/commit.c:1387
+#: builtin/commit.c:1358
 msgid "suppress summary after successful commit"
-msgstr ""
+msgstr "提交成功后不显示概述信息"
 
-#: builtin/commit.c:1388
+#: builtin/commit.c:1359
 msgid "show diff in commit message template"
-msgstr ""
+msgstr "在提交说明模板里显示差异"
 
-#: builtin/commit.c:1390
-#, fuzzy
+#: builtin/commit.c:1361
 msgid "Commit message options"
-msgstr "不能得到 %s 的提交说明"
+msgstr "提交说明选项"
 
-#: builtin/commit.c:1391 builtin/tag.c:459
+#: builtin/commit.c:1362 builtin/tag.c:457
 msgid "read message from file"
-msgstr ""
+msgstr "从文件中读取提交说明"
 
-#: builtin/commit.c:1392
+#: builtin/commit.c:1363
 msgid "author"
-msgstr ""
+msgstr "作者"
 
-#: builtin/commit.c:1392
-#, fuzzy
+#: builtin/commit.c:1363
 msgid "override author for commit"
-msgstr "合并未返回提交"
+msgstr "提交时覆盖作者"
 
-#: builtin/commit.c:1393 builtin/gc.c:178
+#: builtin/commit.c:1364 builtin/gc.c:178
 msgid "date"
-msgstr ""
+msgstr "日期"
 
-#: builtin/commit.c:1393
-#, fuzzy
+#: builtin/commit.c:1364
 msgid "override date for commit"
-msgstr "合并未返回提交"
+msgstr "提交时覆盖日期"
 
-#: builtin/commit.c:1394 builtin/merge.c:206 builtin/notes.c:534
-#: builtin/notes.c:691 builtin/tag.c:457
-#, fuzzy
+#: builtin/commit.c:1365 builtin/merge.c:206 builtin/notes.c:533
+#: builtin/notes.c:690 builtin/tag.c:455
 msgid "message"
-msgstr "无 tag 说明?"
+msgstr "说明"
 
-#: builtin/commit.c:1394
-#, fuzzy
+#: builtin/commit.c:1365
 msgid "commit message"
-msgstr "空提交信息。"
+msgstr "提交说明"
 
-#: builtin/commit.c:1395
+#: builtin/commit.c:1366
 msgid "reuse and edit message from specified commit"
-msgstr ""
+msgstr "重用并编辑指定提交的提交说明"
 
-#: builtin/commit.c:1396
+#: builtin/commit.c:1367
 msgid "reuse message from specified commit"
-msgstr ""
+msgstr "重用指定提交的提交说明"
 
-#: builtin/commit.c:1397
+#: builtin/commit.c:1368
 msgid "use autosquash formatted message to fixup specified commit"
-msgstr ""
+msgstr "使用 autosquash 格式的提交说明用以修正指定的提交"
 
-#: builtin/commit.c:1398
+#: builtin/commit.c:1369
 msgid "use autosquash formatted message to squash specified commit"
-msgstr ""
+msgstr "使用 autosquash 格式的提交说明用以压缩至指定的提交"
 
-#: builtin/commit.c:1399
+#: builtin/commit.c:1370
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
-msgstr ""
+msgstr "现在将该提交的作者改为我(和 -C/-c/--amend 参数共用)"
 
-#: builtin/commit.c:1400 builtin/log.c:1068 builtin/revert.c:109
+#: builtin/commit.c:1371 builtin/log.c:1102 builtin/revert.c:109
 msgid "add Signed-off-by:"
-msgstr ""
+msgstr "添加 Signed-off-by: 签名"
 
-#: builtin/commit.c:1401
+#: builtin/commit.c:1372
 msgid "use specified template file"
-msgstr ""
+msgstr "使用指定的模板文件"
 
-#: builtin/commit.c:1402
-#, fuzzy
+#: builtin/commit.c:1373
 msgid "force edit of commit"
-msgstr "å\90\88并æ\9cªè¿\94å\9b\9e提交"
+msgstr "强å\88¶ç¼\96è¾\91提交"
 
-#: builtin/commit.c:1403
+#  译者:可选值,不能翻译(或是原文中笔误,应为 mode)
+#: builtin/commit.c:1374
 msgid "default"
-msgstr ""
+msgstr "default"
 
-#: builtin/commit.c:1403 builtin/tag.c:462
+#: builtin/commit.c:1374 builtin/tag.c:460
 msgid "how to strip spaces and #comments from message"
-msgstr ""
+msgstr "设置如何删除提交说明里的空格和#注释"
 
-#: builtin/commit.c:1404
-#, fuzzy
+#: builtin/commit.c:1375
 msgid "include status in commit message template"
-msgstr "不能写提交模版"
+msgstr "在提交说明模板里包含状态信息"
 
-#: builtin/commit.c:1405 builtin/merge.c:213 builtin/tag.c:463
+#: builtin/commit.c:1376 builtin/merge.c:213 builtin/tag.c:461
 msgid "key id"
-msgstr ""
+msgstr "key id"
 
-#: builtin/commit.c:1406 builtin/merge.c:214
+#: builtin/commit.c:1377 builtin/merge.c:214
 msgid "GPG sign commit"
-msgstr ""
+msgstr "GPG 提交签名"
 
 #. end commit message options
-#: builtin/commit.c:1409
+#: builtin/commit.c:1380
 msgid "Commit contents options"
-msgstr ""
+msgstr "提交内容选项"
 
-#: builtin/commit.c:1410
+#: builtin/commit.c:1381
 msgid "commit all changed files"
-msgstr ""
+msgstr "提交所有改动的文件"
 
-#: builtin/commit.c:1411
+#: builtin/commit.c:1382
 msgid "add specified files to index for commit"
-msgstr ""
+msgstr "添加指定的文件到索引区等待提交"
 
-#: builtin/commit.c:1412
-#, fuzzy
+#: builtin/commit.c:1383
 msgid "interactively add files"
-msgstr "交互式添加失败"
+msgstr "交互式添加文件"
 
-#: builtin/commit.c:1413
-#, fuzzy
+#: builtin/commit.c:1384
 msgid "interactively add changes"
-msgstr "交äº\92å¼\8fæ·»å\8a å¤±è´¥"
+msgstr "交äº\92å¼\8fæ·»å\8a å\8f\98æ\9b´"
 
-#: builtin/commit.c:1414
-#, fuzzy
+#: builtin/commit.c:1385
 msgid "commit only specified files"
-msgstr "无法还原修改的文件"
+msgstr "只提交指定的文件"
 
-#: builtin/commit.c:1415
+#: builtin/commit.c:1386
 msgid "bypass pre-commit hook"
-msgstr ""
+msgstr "绕过 pre-commit 钩子"
 
-#: builtin/commit.c:1416
-#, fuzzy
+#: builtin/commit.c:1387
 msgid "show what would be committed"
-msgstr "要提交的变更:"
+msgstr "显示将要提交的内容"
 
-#: builtin/commit.c:1424
+#: builtin/commit.c:1398
 msgid "amend previous commit"
-msgstr ""
+msgstr "修改先前的提交"
 
-#: builtin/commit.c:1425
+#: builtin/commit.c:1399
 msgid "bypass post-rewrite hook"
-msgstr ""
+msgstr "绕过 post-rewrite 钩子"
 
-#: builtin/commit.c:1430
+#: builtin/commit.c:1404
 msgid "ok to record an empty change"
-msgstr ""
+msgstr "允许一个空提交"
 
-#: builtin/commit.c:1433
+#: builtin/commit.c:1407
 msgid "ok to record a change with an empty message"
-msgstr ""
+msgstr "允许空的提交说明"
 
-#: builtin/commit.c:1464
+#: builtin/commit.c:1439
 msgid "could not parse HEAD commit"
 msgstr "不能解析 HEAD 提交"
 
-#: builtin/commit.c:1502 builtin/merge.c:508
+#: builtin/commit.c:1477 builtin/merge.c:508
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "不能为读入打开 '%s'"
 
-#: builtin/commit.c:1509
+#: builtin/commit.c:1484
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "损坏的 MERGE_HEAD 文件(%s)"
 
-#: builtin/commit.c:1516
+#: builtin/commit.c:1491
 msgid "could not read MERGE_MODE"
 msgstr "不能读取 MERGE_MODE"
 
-#: builtin/commit.c:1535
+#: builtin/commit.c:1510
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "不能读取提交说明:%s"
 
-#: builtin/commit.c:1549
+#: builtin/commit.c:1524
 #, c-format
 msgid "Aborting commit; you did not edit the message.\n"
 msgstr "终止提交;您未更改来自模版的提交说明。\n"
 
-#: builtin/commit.c:1554
+#: builtin/commit.c:1529
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr "终止提交因为提交说明为空。\n"
 
-#: builtin/commit.c:1569 builtin/merge.c:935 builtin/merge.c:960
+#: builtin/commit.c:1544 builtin/merge.c:832 builtin/merge.c:857
 msgid "failed to write commit object"
 msgstr "无法写提交对象"
 
-#: builtin/commit.c:1590
+#: builtin/commit.c:1565
 msgid "cannot lock HEAD ref"
 msgstr "无法锁定 HEAD 引用"
 
-#: builtin/commit.c:1594
+#: builtin/commit.c:1569
 msgid "cannot update HEAD ref"
 msgstr "无法更新 HEAD 引用"
 
-#: builtin/commit.c:1605
+#: builtin/commit.c:1580
 msgid ""
 "Repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full or quota is\n"
@@ -3827,135 +3933,131 @@ msgstr ""
 
 #: builtin/config.c:7
 msgid "git config [options]"
-msgstr ""
+msgstr "git config [选项]"
 
-#: builtin/config.c:52
+#: builtin/config.c:51
 msgid "Config file location"
-msgstr ""
+msgstr "配置文件位置"
 
-#: builtin/config.c:53
-#, fuzzy
+#: builtin/config.c:52
 msgid "use global config file"
-msgstr "无法更新 config 文件"
+msgstr "使用全局配置文件"
 
-#: builtin/config.c:54
+#: builtin/config.c:53
 msgid "use system config file"
-msgstr ""
+msgstr "使用系统级配置文件"
 
-#: builtin/config.c:55
-#, fuzzy
+#: builtin/config.c:54
 msgid "use repository config file"
-msgstr "需要一个版本库来解包。"
+msgstr "使用版本库级配置文件"
 
-#: builtin/config.c:56
-#, fuzzy
+#: builtin/config.c:55
 msgid "use given config file"
-msgstr "未预期的文件结束"
+msgstr "使用指定的配置文件"
 
-#: builtin/config.c:57
-#, fuzzy
+#: builtin/config.c:56
 msgid "Action"
-msgstr "作"
+msgstr "作"
 
-#: builtin/config.c:58
+#: builtin/config.c:57
 msgid "get value: name [value-regex]"
-msgstr ""
+msgstr "获取值:name [value-regex]"
 
-#: builtin/config.c:59
+#: builtin/config.c:58
 msgid "get all values: key [value-regex]"
-msgstr ""
+msgstr "获得所有的值:key [value-regex]"
 
-#: builtin/config.c:60
+#: builtin/config.c:59
 msgid "get values for regexp: name-regex [value-regex]"
-msgstr ""
+msgstr "根据正则表达式获得值:name-regex [value-regex]"
 
-#: builtin/config.c:61
+#: builtin/config.c:60
 msgid "replace all matching variables: name value [value_regex]"
-msgstr ""
+msgstr "替换所有匹配的变量:name value [value_regex]"
 
-#: builtin/config.c:62
+#: builtin/config.c:61
 msgid "add a new variable: name value"
-msgstr ""
+msgstr "添加一个新的变量:name value"
 
-#: builtin/config.c:63
+#: builtin/config.c:62
 msgid "remove a variable: name [value-regex]"
-msgstr ""
+msgstr "删除一个变量:name [value-regex]"
 
-#: builtin/config.c:64
+#: builtin/config.c:63
 msgid "remove all matches: name [value-regex]"
-msgstr ""
+msgstr "删除所有匹配项:name [value-regex]"
 
-#: builtin/config.c:65
+#: builtin/config.c:64
 msgid "rename section: old-name new-name"
-msgstr ""
+msgstr "重命名小节:old-name new-name"
 
-#: builtin/config.c:66
+#: builtin/config.c:65
 msgid "remove a section: name"
-msgstr ""
+msgstr "删除一个小节:name"
 
-#: builtin/config.c:67
+#: builtin/config.c:66
 msgid "list all"
-msgstr ""
+msgstr "列出所有"
 
-#: builtin/config.c:68
+#: builtin/config.c:67
 msgid "open an editor"
-msgstr ""
+msgstr "打开一个编辑器"
 
-#: builtin/config.c:69 builtin/config.c:70
+#: builtin/config.c:68 builtin/config.c:69
 msgid "slot"
-msgstr ""
+msgstr "slot"
 
-#: builtin/config.c:69
+#: builtin/config.c:68
 msgid "find the color configured: [default]"
-msgstr ""
+msgstr "找到配置的颜色:[默认]"
 
-#: builtin/config.c:70
+#: builtin/config.c:69
 msgid "find the color setting: [stdout-is-tty]"
-msgstr ""
+msgstr "找到颜色设置:[stdout-is-tty]"
 
-#: builtin/config.c:71
+#: builtin/config.c:70
 msgid "Type"
-msgstr ""
+msgstr "类型"
 
-#: builtin/config.c:72
+#: builtin/config.c:71
 msgid "value is \"true\" or \"false\""
-msgstr ""
+msgstr "值是 \"true\" 或 \"false\""
 
-#: builtin/config.c:73
+#: builtin/config.c:72
 msgid "value is decimal number"
-msgstr ""
+msgstr "值是十进制数"
 
-#: builtin/config.c:74
+#: builtin/config.c:73
 msgid "value is --bool or --int"
-msgstr ""
+msgstr "值是 --bool or --int"
 
-#: builtin/config.c:75
+#: builtin/config.c:74
 msgid "value is a path (file or directory name)"
-msgstr ""
+msgstr "值是一个路径(文件或目录名)"
 
-#: builtin/config.c:76
+#: builtin/config.c:75
 msgid "Other"
-msgstr ""
+msgstr "其它"
 
-#: builtin/config.c:77
+#: builtin/config.c:76
 msgid "terminate values with NUL byte"
-msgstr ""
+msgstr "终止值是NUL字节"
 
-#: builtin/config.c:78
+#: builtin/config.c:77
 msgid "respect include directives on lookup"
-msgstr ""
+msgstr "查询时参照 include 指令递归查找"
 
 #: builtin/count-objects.c:69
 msgid "git count-objects [-v]"
-msgstr ""
+msgstr "git count-objects [-v]"
 
 #: builtin/describe.c:15
 msgid "git describe [options] <committish>*"
-msgstr ""
+msgstr "git describe [选项] <提交号>*"
 
 #: builtin/describe.c:16
 msgid "git describe [options] --dirty"
-msgstr ""
+msgstr "git describe [选项] --dirty"
 
 #: builtin/describe.c:234
 #, c-format
@@ -4031,49 +4133,47 @@ msgstr ""
 
 #: builtin/describe.c:403
 msgid "find the tag that comes after the commit"
-msgstr ""
+msgstr "寻找提交之后的 tag(用于描述提交)"
 
 #: builtin/describe.c:404
 msgid "debug search strategy on stderr"
-msgstr ""
+msgstr "在标准错误上调试搜索策略"
 
 #: builtin/describe.c:405
 msgid "use any ref in .git/refs"
-msgstr ""
+msgstr "使用 .git/refs 里的任意引用"
 
 #: builtin/describe.c:406
 msgid "use any tag in .git/refs/tags"
-msgstr ""
+msgstr "使用 .git/refs/tags 里的任意 tag"
 
 #: builtin/describe.c:407
 msgid "always use long format"
-msgstr ""
+msgstr "始终使用长提交号格式"
 
 #: builtin/describe.c:410
-#, fuzzy
 msgid "only output exact matches"
-msgstr "没有 tag 准确匹配 '%s'"
+msgstr "只输出精确匹配"
 
 #: builtin/describe.c:412
 msgid "consider <n> most recent tags (default: 10)"
-msgstr ""
+msgstr "考虑最近 <n> 个 tags(默认:10)"
 
 #: builtin/describe.c:414
-#, fuzzy
 msgid "only consider tags matching <pattern>"
-msgstr "输出和模式匹配的行"
+msgstr "只考虑匹配 <模式> 的 tags"
 
 #: builtin/describe.c:416 builtin/name-rev.c:238
 msgid "show abbreviated commit object as fallback"
-msgstr ""
+msgstr "显示简写的提交号作为后备"
 
 #: builtin/describe.c:417
 msgid "mark"
-msgstr ""
+msgstr "标记"
 
 #: builtin/describe.c:418
 msgid "append <mark> on dirty working tree (default: \"-dirty\")"
-msgstr ""
+msgstr "若工作区脏(有变更)在结尾添加 <标记>(默认:\"-dirty\")"
 
 #: builtin/describe.c:436
 msgid "--long is incompatible with --abbrev=0"
@@ -4092,232 +4192,231 @@ msgstr "--dirty 不能与提交同时使用"
 msgid "'%s': not a regular file or symlink"
 msgstr "'%s':不是一个正规文件或符号链接"
 
-#: builtin/diff.c:224
+#: builtin/diff.c:228
 #, c-format
 msgid "invalid option: %s"
 msgstr "无效选项:%s"
 
-#: builtin/diff.c:301
+#: builtin/diff.c:305
 msgid "Not a git repository"
 msgstr "不是一个 git 版本库"
 
-#: builtin/diff.c:344
+#: builtin/diff.c:348
 #, c-format
 msgid "invalid object '%s' given."
 msgstr "提供了无效对象 '%s'。"
 
-#: builtin/diff.c:349
+#: builtin/diff.c:353
 #, c-format
 msgid "more than %d trees given: '%s'"
 msgstr "提供了超过 %d 个树对象:'%s'"
 
-#: builtin/diff.c:359
+#: builtin/diff.c:363
 #, c-format
 msgid "more than two blobs given: '%s'"
-msgstr "提供了超过两个二进制对象(blob):'%s'"
+msgstr "提供了超过两个数据(blob)对象:'%s'"
 
-#: builtin/diff.c:367
+#: builtin/diff.c:371
 #, c-format
 msgid "unhandled object '%s' given."
 msgstr "提供了无法处理的对象 '%s'。"
 
 #: builtin/fast-export.c:22
 msgid "git fast-export [rev-list-opts]"
-msgstr ""
+msgstr "git fast-export [rev-list-opts]"
 
-#: builtin/fast-export.c:635
-#, fuzzy
+#: builtin/fast-export.c:646
 msgid "show progress after <n> objects"
-msgstr "显示各种类型的对象"
+msgstr "在 <n> 个对象之后显示进度"
 
-#: builtin/fast-export.c:637
+#: builtin/fast-export.c:648
 msgid "select handling of signed tags"
-msgstr ""
+msgstr "选择如何处理签名 tags"
 
-#: builtin/fast-export.c:640
+#: builtin/fast-export.c:651
 msgid "select handling of tags that tag filtered objects"
-msgstr ""
+msgstr "选择当 tag 指向被过滤时 tags 的处理方式"
 
-#: builtin/fast-export.c:643
+#: builtin/fast-export.c:654
 msgid "Dump marks to this file"
-msgstr ""
+msgstr "把标记存储到这个文件"
 
-#: builtin/fast-export.c:645
+#: builtin/fast-export.c:656
 msgid "Import marks from this file"
-msgstr ""
+msgstr "从这个文件导入标记"
 
-#: builtin/fast-export.c:647
+#: builtin/fast-export.c:658
 msgid "Fake a tagger when tags lack one"
-msgstr ""
+msgstr "当 tags 缺少标记者字段时,假装提供一个"
 
-#: builtin/fast-export.c:649
+#: builtin/fast-export.c:660
 msgid "Output full tree for each commit"
-msgstr ""
+msgstr "每次提交都输出整个树"
 
-#: builtin/fast-export.c:651
+#: builtin/fast-export.c:662
 msgid "Use the done feature to terminate the stream"
-msgstr ""
+msgstr "使用 done 功能来终止流"
 
-#: builtin/fast-export.c:652
+#: builtin/fast-export.c:663
 msgid "Skip output of blob data"
-msgstr ""
+msgstr "跳过数据对象的输出"
 
 #: builtin/fetch.c:20
-#, fuzzy
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git fetch [<选项>] [<版本库> [<引用表达式>...]]"
 
 #: builtin/fetch.c:21
 msgid "git fetch [<options>] <group>"
-msgstr ""
+msgstr "git fetch [<选项>] <组>"
 
 #: builtin/fetch.c:22
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
-msgstr ""
+msgstr "git fetch --multiple [<选项>] [(<版本库> | <组>)...]"
 
 #: builtin/fetch.c:23
 msgid "git fetch --all [<options>]"
-msgstr ""
+msgstr "git fetch --all [<选项>]"
 
 #: builtin/fetch.c:60
 msgid "fetch from all remotes"
-msgstr ""
+msgstr "从所有的远程抓取"
 
 #: builtin/fetch.c:62
 msgid "append to .git/FETCH_HEAD instead of overwriting"
-msgstr ""
+msgstr "追加到 .git/FETCH_HEAD 而不是覆盖它"
 
 #: builtin/fetch.c:64
 msgid "path to upload pack on remote end"
-msgstr ""
+msgstr "上传包到远程的路径"
 
 #: builtin/fetch.c:65
 msgid "force overwrite of local branch"
-msgstr ""
+msgstr "强制覆盖本地分支"
 
 #: builtin/fetch.c:67
 msgid "fetch from multiple remotes"
-msgstr ""
+msgstr "从多个远程抓取"
 
 #: builtin/fetch.c:69
-#, fuzzy
 msgid "fetch all tags and associated objects"
-msgstr "æ\9b´æ\96°è¿\9cç¨\8bå¼\95ç\94¨å\92\8cç\9b¸å\85³ç\9a\84对象"
+msgstr "æ\8a\93å\8f\96æ\89\80æ\9c\89ç\9a\84 tags å\92\8cå\85³è\81\94对象"
 
 #: builtin/fetch.c:71
 msgid "do not fetch all tags (--no-tags)"
-msgstr ""
+msgstr "不抓取任何 tags (--no-tags)"
 
 #: builtin/fetch.c:73
-#, fuzzy
 msgid "prune remote-tracking branches no longer on remote"
-msgstr "%s 没有来自 %s 的远程跟踪分支"
+msgstr "清除远程已经不存在的分支的跟踪分支"
 
+#  译者:可选值,不能翻译
 #: builtin/fetch.c:74
 msgid "on-demand"
-msgstr ""
+msgstr "on-demand"
 
 #: builtin/fetch.c:75
 msgid "control recursive fetching of submodules"
-msgstr ""
+msgstr "控制子模组的递归抓取"
 
 #: builtin/fetch.c:79
 msgid "keep downloaded pack"
-msgstr ""
+msgstr "保持下载包"
 
 #: builtin/fetch.c:81
-#, fuzzy
 msgid "allow updating of HEAD ref"
-msgstr "无法更新 HEAD 引用"
+msgstr "允许更新 HEAD 引用"
 
 #: builtin/fetch.c:84
 msgid "deepen history of shallow clone"
-msgstr ""
+msgstr "深化浅克隆的历史"
+
+#: builtin/fetch.c:86
+msgid "convert to a complete repository"
+msgstr "转换为一个完整的版本库"
 
-#: builtin/fetch.c:85 builtin/log.c:1083
+#: builtin/fetch.c:88 builtin/log.c:1119
 msgid "dir"
-msgstr ""
+msgstr "目录"
 
-#: builtin/fetch.c:86
-#, fuzzy
+#: builtin/fetch.c:89
 msgid "prepend this to submodule path output"
-msgstr "无法递归进子模组路径 '$sm_path'"
+msgstr "在子模组路径输出的前面加上此目录"
 
-#: builtin/fetch.c:89
+#: builtin/fetch.c:92
 msgid "default mode for recursion"
-msgstr ""
+msgstr "递归的默认模式"
 
-#: builtin/fetch.c:201
+#: builtin/fetch.c:204
 msgid "Couldn't find remote ref HEAD"
 msgstr "无法发现远程 HEAD 引用"
 
-#: builtin/fetch.c:254
+#: builtin/fetch.c:257
 #, c-format
 msgid "object %s not found"
 msgstr "对象 %s 未发现"
 
-#: builtin/fetch.c:260
+#: builtin/fetch.c:262
 msgid "[up to date]"
 msgstr "[最新]"
 
-#: builtin/fetch.c:274
+#: builtin/fetch.c:276
 #, c-format
 msgid "! %-*s %-*s -> %s  (can't fetch in current branch)"
 msgstr "! %-*s %-*s -> %s  (在当前分支下不能获取)"
 
-#: builtin/fetch.c:275 builtin/fetch.c:361
+#: builtin/fetch.c:277 builtin/fetch.c:363
 msgid "[rejected]"
 msgstr "[已拒绝]"
 
-#: builtin/fetch.c:286
+#: builtin/fetch.c:288
 msgid "[tag update]"
 msgstr "[tag更新]"
 
 #  译者:注意保持前导空格
-#: builtin/fetch.c:288 builtin/fetch.c:323 builtin/fetch.c:341
+#: builtin/fetch.c:290 builtin/fetch.c:325 builtin/fetch.c:343
 msgid "  (unable to update local ref)"
 msgstr "  (不能更新本地引用)"
 
-#: builtin/fetch.c:306
+#: builtin/fetch.c:308
 msgid "[new tag]"
 msgstr "[新tag]"
 
-#: builtin/fetch.c:309
+#: builtin/fetch.c:311
 msgid "[new branch]"
 msgstr "[新分支]"
 
-#: builtin/fetch.c:312
+#: builtin/fetch.c:314
 msgid "[new ref]"
 msgstr "[新引用]"
 
-#: builtin/fetch.c:357
+#: builtin/fetch.c:359
 msgid "unable to update local ref"
 msgstr "不能更新本地引用"
 
-#: builtin/fetch.c:357
+#: builtin/fetch.c:359
 msgid "forced update"
 msgstr "强制更新"
 
-#: builtin/fetch.c:363
+#: builtin/fetch.c:365
 msgid "(non-fast-forward)"
 msgstr "(非快进式)"
 
-#: builtin/fetch.c:394 builtin/fetch.c:686
+#: builtin/fetch.c:396 builtin/fetch.c:688
 #, c-format
 msgid "cannot open %s: %s\n"
 msgstr "无法打开 %s:%s\n"
 
-#: builtin/fetch.c:403
+#: builtin/fetch.c:405
 #, c-format
 msgid "%s did not send all necessary objects\n"
 msgstr "%s 未发送所有必须的对象\n"
 
-#: builtin/fetch.c:489
+#: builtin/fetch.c:491
 #, c-format
 msgid "From %.*s\n"
 msgstr "来自 %.*s\n"
 
-#: builtin/fetch.c:500
+#: builtin/fetch.c:502
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -4327,203 +4426,208 @@ msgstr ""
 " 'git remote prune %s' 来删除旧的、有冲突的分支"
 
 #  译者:注意保持前导空格
-#: builtin/fetch.c:550
+#: builtin/fetch.c:552
 #, c-format
 msgid "   (%s will become dangling)"
-msgstr "   ï¼\88%s å°\86æ\88\90为æ\82¬ç©º状态)"
+msgstr "   ï¼\88%s å°\86æ\88\90为æ\91\87æ\91\86状态)"
 
 #  译者:注意保持前导空格
-#: builtin/fetch.c:551
+#: builtin/fetch.c:553
 #, c-format
 msgid "   (%s has become dangling)"
-msgstr "   ï¼\88%s å·²æ\88\90为æ\82¬ç©º状态)"
+msgstr "   ï¼\88%s å·²æ\88\90为æ\91\87æ\91\86状态)"
 
-#: builtin/fetch.c:558
+#: builtin/fetch.c:560
 msgid "[deleted]"
 msgstr "[已删除]"
 
-#: builtin/fetch.c:559 builtin/remote.c:1055
+#: builtin/fetch.c:561 builtin/remote.c:1055
 msgid "(none)"
 msgstr "(无)"
 
-#: builtin/fetch.c:676
+#: builtin/fetch.c:678
 #, c-format
 msgid "Refusing to fetch into current branch %s of non-bare repository"
 msgstr "拒绝获取到非裸版本库的当前分支 %s"
 
-#: builtin/fetch.c:710
+#: builtin/fetch.c:712
 #, c-format
 msgid "Don't know how to fetch from %s"
 msgstr "不知道如何从 %s 获取"
 
-#: builtin/fetch.c:787
+#: builtin/fetch.c:789
 #, c-format
 msgid "Option \"%s\" value \"%s\" is not valid for %s"
 msgstr "选项 \"%s\" 的值 \"%s\" 对于 %s 是无效的"
 
-#: builtin/fetch.c:790
+#: builtin/fetch.c:792
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "选项 \"%s\" 为 %s 所忽略\n"
 
-#: builtin/fetch.c:892
+#: builtin/fetch.c:894
 #, c-format
 msgid "Fetching %s\n"
 msgstr "正在获取 %s\n"
 
-#: builtin/fetch.c:894 builtin/remote.c:100
+#: builtin/fetch.c:896 builtin/remote.c:100
 #, c-format
 msgid "Could not fetch %s"
 msgstr "不能获取 %s"
 
-#: builtin/fetch.c:913
+#: builtin/fetch.c:915
 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:933
+#: builtin/fetch.c:935
 msgid "You need to specify a tag name."
 msgstr "您需要指定一个 tag 名称。"
 
-#: builtin/fetch.c:985
+#: builtin/fetch.c:981
+msgid "--depth and --unshallow cannot be used together"
+msgstr "--depth 和 --unshallow 不能同时使用"
+
+#: builtin/fetch.c:983
+msgid "--unshallow on a complete repository does not make sense"
+msgstr "对于一个完整的版本库,参数 --unshallow 没有意义"
+
+#: builtin/fetch.c:1002
 msgid "fetch --all does not take a repository argument"
 msgstr "fetch --all 不能带一个版本库参数"
 
-#: builtin/fetch.c:987
+#: builtin/fetch.c:1004
 msgid "fetch --all does not make sense with refspecs"
 msgstr "fetch --all 带引用表达式没有任何意义"
 
-#: builtin/fetch.c:998
+#: builtin/fetch.c:1015
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr "没有这样的远程或远程组:%s"
 
-#: builtin/fetch.c:1006
+#: builtin/fetch.c:1023
 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>]"
 
-#: builtin/fmt-merge-msg.c:653 builtin/fmt-merge-msg.c:656 builtin/grep.c:786
-#: builtin/merge.c:188 builtin/show-branch.c:656 builtin/show-ref.c:192
-#: builtin/tag.c:448 parse-options.h:133 parse-options.h:235
+#: builtin/fmt-merge-msg.c:659 builtin/fmt-merge-msg.c:662 builtin/grep.c:701
+#: builtin/merge.c:188 builtin/show-branch.c:656 builtin/show-ref.c:175
+#: builtin/tag.c:446 parse-options.h:133 parse-options.h:239
 msgid "n"
-msgstr "数字"
+msgstr "n"
 
-#: builtin/fmt-merge-msg.c:654
+#: builtin/fmt-merge-msg.c:660
 msgid "populate log with at most <n> entries from shortlog"
-msgstr ""
+msgstr "向提交说明中最多复制指定条目(合并而来的提交)的简短说明"
 
-#: builtin/fmt-merge-msg.c:657
+#: builtin/fmt-merge-msg.c:663
 msgid "alias for --log (deprecated)"
-msgstr ""
+msgstr "参数 --log 的别名(已弃用)"
 
-#: builtin/fmt-merge-msg.c:660
+#: builtin/fmt-merge-msg.c:666
 msgid "text"
-msgstr ""
+msgstr "文本"
 
-#: builtin/fmt-merge-msg.c:661
+#: builtin/fmt-merge-msg.c:667
 msgid "use <text> as start of message"
-msgstr ""
+msgstr "使用 <文本> 作为提交说明的开始"
 
-#: builtin/fmt-merge-msg.c:662
-#, fuzzy
+#: builtin/fmt-merge-msg.c:668
 msgid "file to read from"
-msgstr "ä¸\8dè\83½è¯» %s"
+msgstr "ä»\8eæ\96\87件中读å\8f\96"
 
 #: builtin/for-each-ref.c:979
-#, fuzzy
 msgid "git for-each-ref [options] [<pattern>]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git for-each-ref [选项] [<模式>]"
 
 #: builtin/for-each-ref.c:994
 msgid "quote placeholders suitably for shells"
-msgstr ""
+msgstr "引用占位符适用于 shells"
 
 #: builtin/for-each-ref.c:996
 msgid "quote placeholders suitably for perl"
-msgstr ""
+msgstr "引用占位符适用于 perl"
 
 #: builtin/for-each-ref.c:998
 msgid "quote placeholders suitably for python"
-msgstr ""
+msgstr "引用占位符适用于 python"
 
 #: builtin/for-each-ref.c:1000
 msgid "quote placeholders suitably for tcl"
-msgstr ""
+msgstr "引用占位符适用于 tcl"
 
 #: builtin/for-each-ref.c:1003
 msgid "show only <n> matched refs"
-msgstr ""
+msgstr "只显示 <n> 个匹配的引用"
 
 #: builtin/for-each-ref.c:1004
 msgid "format"
-msgstr ""
+msgstr "格式"
 
 #: builtin/for-each-ref.c:1004
 msgid "format to use for the output"
-msgstr ""
+msgstr "输出格式"
 
 #: builtin/for-each-ref.c:1005
 msgid "key"
-msgstr ""
+msgstr "key"
 
 #: builtin/for-each-ref.c:1006
 msgid "field name to sort on"
-msgstr ""
+msgstr "排序的字段名"
 
 #: builtin/fsck.c:608
-#, fuzzy
 msgid "git fsck [options] [<object>...]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git fsck [选项] [<对象>...]"
 
 #: builtin/fsck.c:614
 msgid "show unreachable objects"
-msgstr ""
+msgstr "显示不可达的对象"
 
 #: builtin/fsck.c:615
-#, fuzzy
 msgid "show dangling objects"
-msgstr "索引对象中"
+msgstr "显示摇摆的对象"
 
 #: builtin/fsck.c:616
 msgid "report tags"
-msgstr ""
+msgstr "报告 tags"
 
 #: builtin/fsck.c:617
 msgid "report root nodes"
-msgstr ""
+msgstr "报告根节点"
 
 #: builtin/fsck.c:618
 msgid "make index objects head nodes"
-msgstr ""
+msgstr "将索引亦作为检查的头节点"
 
 #: builtin/fsck.c:619
 msgid "make reflogs head nodes (default)"
-msgstr ""
+msgstr "将引用日志作为检查的头节点(默认)"
 
 #: builtin/fsck.c:620
 msgid "also consider packs and alternate objects"
-msgstr ""
+msgstr "也考虑包和备用对象"
 
 #: builtin/fsck.c:621
 msgid "enable more strict checking"
-msgstr ""
+msgstr "启用更严格的检查"
 
 #: builtin/fsck.c:623
 msgid "write dangling objects in .git/lost-found"
-msgstr ""
+msgstr "将摇摆对象写入 .git/lost-found 中"
 
 #: builtin/fsck.c:624 builtin/prune.c:134
 msgid "show progress"
-msgstr ""
+msgstr "显示进度"
 
 #: builtin/gc.c:22
 msgid "git gc [options]"
-msgstr ""
+msgstr "git gc [选项]"
 
 #: builtin/gc.c:63
 #, c-format
@@ -4537,22 +4641,17 @@ msgstr "不正常的长对象目录 %.*s"
 
 #: builtin/gc.c:179
 msgid "prune unreferenced objects"
-msgstr ""
+msgstr "清除未引用的对象"
 
 #: builtin/gc.c:181
 msgid "be more thorough (increased runtime)"
-msgstr ""
+msgstr "更彻底(增加运行时间)"
 
 #: builtin/gc.c:182
 msgid "enable auto-gc mode"
-msgstr ""
-
-#: builtin/gc.c:221
-#, c-format
-msgid "Auto packing the repository for optimum performance.\n"
-msgstr "自动打包版本库以求最佳性能。\n"
+msgstr "启用自动垃圾回收模式"
 
-#: builtin/gc.c:224
+#: builtin/gc.c:222
 #, c-format
 msgid ""
 "Auto packing the repository for optimum performance. You may also\n"
@@ -4561,239 +4660,240 @@ msgstr ""
 "自动打包版本库以求最佳性能。您还可以手动运行 \"git gc\"。\n"
 "参见 \"git help gc\" 以获取更多信息。\n"
 
-#: builtin/gc.c:251
+#: builtin/gc.c:249
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr "有太多不可达的松散对象,运行 'git prune' 删除它们。"
 
 #: builtin/grep.c:22
 msgid "git grep [options] [-e] <pattern> [<rev>...] [[--] <path>...]"
-msgstr ""
+msgstr "git grep [选项] [-e] <模式> [<修订>...] [[--] <路径>...]"
 
-#: builtin/grep.c:216
+#: builtin/grep.c:217
 #, c-format
 msgid "grep: failed to create thread: %s"
 msgstr "grep:无法创建线程:%s"
 
-#: builtin/grep.c:454
+#: builtin/grep.c:365
 #, c-format
 msgid "Failed to chdir: %s"
 msgstr "无法切换目录:%s"
 
-#: builtin/grep.c:530 builtin/grep.c:564
+#: builtin/grep.c:443 builtin/grep.c:478
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "无法读取树(%s)"
 
-#: builtin/grep.c:578
+#: builtin/grep.c:493
 #, c-format
 msgid "unable to grep from object of type %s"
 msgstr "无法抓取来自于 %s 类型的对象"
 
-#: builtin/grep.c:636
+#: builtin/grep.c:551
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "开关 `%c' 期望一个数字值"
 
-#: builtin/grep.c:653
+#: builtin/grep.c:568
 #, c-format
 msgid "cannot open '%s'"
 msgstr "不能打开 '%s'"
 
-#: builtin/grep.c:728
+#: builtin/grep.c:643
 msgid "search in index instead of in the work tree"
-msgstr ""
+msgstr "在索引区搜索而不是在工作区"
 
-#: builtin/grep.c:730
+#: builtin/grep.c:645
 msgid "find in contents not managed by git"
-msgstr ""
+msgstr "在未被 git 管理的内容中查找"
 
 #  译者:中文字符串拼接,可删除前导空格
-#: builtin/grep.c:732
-#, fuzzy
+#: builtin/grep.c:647
 msgid "search in both tracked and untracked files"
-msgstr "(使用 -u 参数显示未跟踪的文件)"
+msgstr "在跟踪和未跟踪的文件中搜索"
 
-#: builtin/grep.c:734
+#: builtin/grep.c:649
 msgid "search also in ignored files"
-msgstr ""
+msgstr "也在忽略的文件中搜索"
 
-#: builtin/grep.c:737
+#: builtin/grep.c:652
 msgid "show non-matching lines"
-msgstr ""
+msgstr "显示未匹配的行"
 
-#: builtin/grep.c:739
+#: builtin/grep.c:654
 msgid "case insensitive matching"
-msgstr ""
+msgstr "不区分大小写匹配"
 
-#: builtin/grep.c:741
+#: builtin/grep.c:656
 msgid "match patterns only at word boundaries"
-msgstr ""
+msgstr "只在单词边界匹配模式"
 
-#: builtin/grep.c:743
+#: builtin/grep.c:658
 msgid "process binary files as text"
-msgstr ""
+msgstr "把二进制文件当做文本处理"
 
-#: builtin/grep.c:745
+#: builtin/grep.c:660
 msgid "don't match patterns in binary files"
-msgstr ""
+msgstr "不在二进制文件中匹配模式"
 
-#: builtin/grep.c:748
+#: builtin/grep.c:663
 msgid "descend at most <depth> levels"
-msgstr ""
+msgstr "最多以指定的深度向下寻找"
 
-#: builtin/grep.c:752
+#: builtin/grep.c:667
 msgid "use extended POSIX regular expressions"
-msgstr ""
+msgstr "使用扩展的 POSIX 正则表达式"
 
-#: builtin/grep.c:755
+#: builtin/grep.c:670
 msgid "use basic POSIX regular expressions (default)"
-msgstr ""
+msgstr "使用基本的 POSIX 正则表达式(默认)"
 
-#: builtin/grep.c:758
+#: builtin/grep.c:673
 msgid "interpret patterns as fixed strings"
-msgstr ""
+msgstr "把模式解析为固定的字符串"
 
-#: builtin/grep.c:761
+#: builtin/grep.c:676
 msgid "use Perl-compatible regular expressions"
-msgstr ""
+msgstr "使用 Perl 兼容的正则表达式"
 
-#: builtin/grep.c:764
+#: builtin/grep.c:679
 msgid "show line numbers"
-msgstr ""
+msgstr "显示行号"
 
-#: builtin/grep.c:765
+#: builtin/grep.c:680
 msgid "don't show filenames"
-msgstr ""
+msgstr "不显示文件名"
 
-#: builtin/grep.c:766
-#, fuzzy
+#: builtin/grep.c:681
 msgid "show filenames"
-msgstr "%s文件:"
+msgstr "显示文件名"
 
-#: builtin/grep.c:768
+#: builtin/grep.c:683
 msgid "show filenames relative to top directory"
-msgstr ""
+msgstr "显示相对于顶级目录的文件名"
 
-#: builtin/grep.c:770
+#: builtin/grep.c:685
 msgid "show only filenames instead of matching lines"
-msgstr ""
+msgstr "只显示文件名而不显示匹配的行"
 
-#: builtin/grep.c:772
+#: builtin/grep.c:687
 msgid "synonym for --files-with-matches"
-msgstr ""
+msgstr "和 --files-with-matches 同义"
 
-#: builtin/grep.c:775
+#: builtin/grep.c:690
 msgid "show only the names of files without match"
-msgstr ""
+msgstr "只显示未匹配的文件名"
 
-#: builtin/grep.c:777
-#, fuzzy
+#: builtin/grep.c:692
 msgid "print NUL after filenames"
-msgstr "为所有文件名前添加 <根目录>"
+msgstr "在文件名后输出 NUL 字符"
 
-#: builtin/grep.c:779
+#: builtin/grep.c:694
 msgid "show the number of matches instead of matching lines"
-msgstr ""
+msgstr "显示总匹配行数,而不显示匹配的行"
 
-#: builtin/grep.c:780
+#: builtin/grep.c:695
 msgid "highlight matches"
-msgstr ""
+msgstr "高亮显示匹配项"
 
-#: builtin/grep.c:782
+#: builtin/grep.c:697
 msgid "print empty line between matches from different files"
-msgstr ""
+msgstr "在不同文件的匹配项之间打印空行"
 
-#: builtin/grep.c:784
+#: builtin/grep.c:699
 msgid "show filename only once above matches from same file"
-msgstr ""
+msgstr "只在同一文件的匹配项的上面显示一次文件名"
 
-#: builtin/grep.c:787
+#: builtin/grep.c:702
 msgid "show <n> context lines before and after matches"
-msgstr ""
+msgstr "显示匹配项前后的 <n> 行上下文"
 
-#: builtin/grep.c:790
+#: builtin/grep.c:705
 msgid "show <n> context lines before matches"
-msgstr ""
+msgstr "显示匹配项前 <n> 行上下文"
 
-#: builtin/grep.c:792
+#: builtin/grep.c:707
 msgid "show <n> context lines after matches"
-msgstr ""
+msgstr "显示匹配项后 <n> 行上下文"
 
-#: builtin/grep.c:793
+#: builtin/grep.c:708
 msgid "shortcut for -C NUM"
-msgstr ""
+msgstr "快捷键 -C 数字"
 
-#: builtin/grep.c:796
+#: builtin/grep.c:711
 msgid "show a line with the function name before matches"
-msgstr ""
+msgstr "在匹配的前面显示一行函数名"
 
-#: builtin/grep.c:798
+#: builtin/grep.c:713
 msgid "show the surrounding function"
-msgstr ""
+msgstr "显示所在函数的前后内容"
 
-#: builtin/grep.c:801
+#: builtin/grep.c:716
 msgid "read patterns from file"
-msgstr ""
+msgstr "从文件读取模式"
 
-#: builtin/grep.c:803
+#: builtin/grep.c:718
 msgid "match <pattern>"
-msgstr ""
+msgstr "匹配 <模式>"
 
-#: builtin/grep.c:805
+#: builtin/grep.c:720
 msgid "combine patterns specified with -e"
-msgstr ""
+msgstr "组合用 -e 参数设定的模式"
 
-#: builtin/grep.c:817
+#: builtin/grep.c:732
 msgid "indicate hit with exit status without output"
-msgstr ""
+msgstr "不输出,而用退出码标识命中状态"
 
-#: builtin/grep.c:819
+#: builtin/grep.c:734
 msgid "show only matches from files that match all patterns"
-msgstr ""
+msgstr "只显示匹配所有模式的文件中的匹配"
+
+#: builtin/grep.c:736
+msgid "show parse tree for grep expression"
+msgstr "显示 grep 表达式的解析树"
 
-#: builtin/grep.c:822
+#: builtin/grep.c:740
 msgid "pager"
-msgstr ""
+msgstr "分页"
 
-#: builtin/grep.c:822
+#: builtin/grep.c:740
 msgid "show matching files in the pager"
-msgstr ""
+msgstr "分页显示匹配的文件"
 
-#: builtin/grep.c:825
+#: builtin/grep.c:743
 msgid "allow calling of grep(1) (ignored by this build)"
-msgstr ""
+msgstr "允许调用 grep(1)(本次构建忽略)"
 
-#: builtin/grep.c:826 builtin/show-ref.c:201
+#: builtin/grep.c:744 builtin/show-ref.c:184
 msgid "show usage"
-msgstr ""
+msgstr "显示用法"
 
-#: builtin/grep.c:917
+#: builtin/grep.c:811
 msgid "no pattern given."
 msgstr "未提供模式匹配。"
 
-#: builtin/grep.c:931
+#: builtin/grep.c:825
 #, c-format
 msgid "bad object %s"
 msgstr "坏对象 %s"
 
-#: builtin/grep.c:972
+#: builtin/grep.c:868
 msgid "--open-files-in-pager only works on the worktree"
 msgstr "--open-files-in-pager 仅用于工作区"
 
-#: builtin/grep.c:995
+#: builtin/grep.c:891
 msgid "--cached or --untracked cannot be used with --no-index."
 msgstr "--cached 或 --untracked 不能与 --no-index 同时使用。"
 
-#: builtin/grep.c:1000
+#: builtin/grep.c:896
 msgid "--no-index or --untracked cannot be used with revs."
 msgstr "--no-index 或 --untracked 不能和版本同时使用。"
 
-#: builtin/grep.c:1003
+#: builtin/grep.c:899
 msgid "--[no-]exclude-standard cannot be used for tracked contents."
 msgstr "--[no-]exclude-standard 不能用于已跟踪内容。"
 
-#: builtin/grep.c:1011
+#: builtin/grep.c:907
 msgid "both --cached and trees are given."
 msgstr "同时给出了 --cached 和树对象。"
 
@@ -4802,81 +4902,81 @@ msgid ""
 "git hash-object [-t <type>] [-w] [--path=<file>|--no-filters] [--stdin] [--] "
 "<file>..."
 msgstr ""
+"git hash-object [-t <类型>] [-w] [--path=<文件>|--no-filters] [--stdin] [--] "
+"<文件>..."
 
 #: builtin/hash-object.c:61
 msgid "git hash-object  --stdin-paths < <list-of-paths>"
-msgstr ""
+msgstr "git hash-object  --stdin-paths < <路径列表>"
 
 #: builtin/hash-object.c:72
 msgid "type"
-msgstr ""
+msgstr "类型"
 
 #: builtin/hash-object.c:72
-#, fuzzy
 msgid "object type"
-msgstr "å\9d\8fç\9a\84对象类å\9e\8bã\80\82"
+msgstr "对象类å\9e\8b"
 
 #: builtin/hash-object.c:73
 msgid "write the object into the object database"
-msgstr ""
+msgstr "将对象写入对象数据库"
 
 #: builtin/hash-object.c:74
 msgid "read the object from stdin"
-msgstr ""
+msgstr "从标准输入读取对象"
 
 #: builtin/hash-object.c:76
 msgid "store file as is without filters"
-msgstr ""
+msgstr "原样存储文件不使用过滤器"
 
 #: builtin/hash-object.c:77
 msgid "process file as it were from this path"
-msgstr ""
+msgstr "处理文件并假设其来自于此路径"
 
-#: builtin/help.c:43
-#, fuzzy
+#: builtin/help.c:42
 msgid "print all available commands"
-msgstr "在 '%s' 下可用的 git 命令"
+msgstr "打印所有可用的命令"
 
-#: builtin/help.c:44
+#: builtin/help.c:43
 msgid "show man page"
-msgstr ""
+msgstr "显示 man 手册"
 
-#: builtin/help.c:45
+#: builtin/help.c:44
 msgid "show manual in web browser"
-msgstr ""
+msgstr "在 web 浏览器中显示手册"
 
-#: builtin/help.c:47
+#: builtin/help.c:46
 msgid "show info page"
-msgstr ""
+msgstr "显示 info 手册"
 
-#: builtin/help.c:53
+#: builtin/help.c:52
 msgid "git help [--all] [--man|--web|--info] [command]"
-msgstr ""
+msgstr "git help [--all] [--man|--web|--info] [命令]"
 
-#: builtin/help.c:65
+#: builtin/help.c:64
 #, c-format
 msgid "unrecognized help format '%s'"
 msgstr "未能识别的帮助格式 '%s'"
 
-#: builtin/help.c:93
+#: builtin/help.c:92
 msgid "Failed to start emacsclient."
 msgstr "无法启动 emacsclient。"
 
-#: builtin/help.c:106
+#: builtin/help.c:105
 msgid "Failed to parse emacsclient version."
 msgstr "无法解析 emacsclient 版本。"
 
-#: builtin/help.c:114
+#: builtin/help.c:113
 #, c-format
 msgid "emacsclient version '%d' too old (< 22)."
-msgstr "emacsclient 版本 '%d' 太老 (< 22)。"
+msgstr "emacsclient 版本 '%d' 太老(< 22)。"
 
-#: builtin/help.c:132 builtin/help.c:160 builtin/help.c:169 builtin/help.c:177
+#: builtin/help.c:131 builtin/help.c:159 builtin/help.c:168 builtin/help.c:176
 #, c-format
 msgid "failed to exec '%s': %s"
 msgstr "无法执行 '%s':%s"
 
-#: builtin/help.c:217
+#: builtin/help.c:216
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
@@ -4885,7 +4985,7 @@ msgstr ""
 "'%s':不支持的 man 手册查看器的路径。\n"
 "请使用 'man.<tool>.cmd'。"
 
-#: builtin/help.c:229
+#: builtin/help.c:228
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
@@ -4894,29 +4994,25 @@ msgstr ""
 "'%s': 支持的 man 手册查看器命令。\n"
 "请使用 'man.<tool>.path'。"
 
-#: builtin/help.c:299
-msgid "The most commonly used git commands are:"
-msgstr "最常用的 git 命令有:"
-
-#: builtin/help.c:367
+#: builtin/help.c:349
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr "'%s':未知的 man 查看器。"
 
-#: builtin/help.c:384
+#: builtin/help.c:366
 msgid "no man viewer handled the request"
 msgstr "没有 man 查看器处理此请求"
 
-#: builtin/help.c:392
+#: builtin/help.c:374
 msgid "no info viewer handled the request"
 msgstr "没有 info 查看器处理此请求"
 
-#: builtin/help.c:447 builtin/help.c:454
+#: builtin/help.c:429 builtin/help.c:436
 #, c-format
 msgid "usage: %s%s"
 msgstr "用法:%s%s"
 
-#: builtin/help.c:470
+#: builtin/help.c:452
 #, c-format
 msgid "`git %s' is aliased to `%s'"
 msgstr "`git %s' 是 `%s' 的别名"
@@ -4970,7 +5066,7 @@ msgstr "包签名不匹配"
 #: builtin/index-pack.c:294
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
-msgstr ""
+msgstr "不支持包版本 %<PRIu32>"
 
 #: builtin/index-pack.c:312
 #, c-format
@@ -5030,7 +5126,7 @@ msgstr "不能读取现存对象 %s"
 #: builtin/index-pack.c:732
 #, c-format
 msgid "invalid blob object %s"
-msgstr "无效的二进制对象(blob)%s"
+msgstr "无效的数据(blob)对象 %s"
 
 #: builtin/index-pack.c:747
 #, c-format
@@ -5079,9 +5175,9 @@ msgid "Resolving deltas"
 msgstr "处理 delta 中"
 
 #: builtin/index-pack.c:1064
-#, fuzzy, c-format
+#, c-format
 msgid "unable to create thread: %s"
-msgstr "grep:无法创建线程:%s"
+msgstr "不能创建线程:%s"
 
 #: builtin/index-pack.c:1106
 msgid "confusion beyond insanity"
@@ -5090,12 +5186,12 @@ msgstr "不可理喻"
 #: builtin/index-pack.c:1112
 #, c-format
 msgid "completed with %d local objects"
-msgstr ""
+msgstr "完成 %d 个本地对象"
 
 #: builtin/index-pack.c:1121
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
-msgstr ""
+msgstr "对 %s 的尾部校验出现意外(磁盘损坏?)"
 
 #: builtin/index-pack.c:1125
 #, c-format
@@ -5107,7 +5203,7 @@ msgstr[1] "包有 %d 个未解决的 delta"
 #: builtin/index-pack.c:1150
 #, c-format
 msgid "unable to deflate appended object (%d)"
-msgstr "不能缩小附加对象(%d)"
+msgstr "不能压缩附加对象(%d)"
 
 #: builtin/index-pack.c:1229
 #, c-format
@@ -5137,19 +5233,19 @@ msgid "cannot store index file"
 msgstr "无法存储索引文件"
 
 #: builtin/index-pack.c:1331
-#, fuzzy, c-format
+#, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
-msgstr "坏的索引版本 '%s'"
+msgstr "坏的 pack.indexversion=%<PRIu32>"
 
 #: builtin/index-pack.c:1337
 #, c-format
 msgid "invalid number of threads specified (%d)"
-msgstr ""
+msgstr "指定的线程数无效(%d)"
 
 #: builtin/index-pack.c:1341 builtin/index-pack.c:1514
 #, c-format
 msgid "no threads support, ignoring %s"
-msgstr ""
+msgstr "没有线程支持,忽略 %s"
 
 #: builtin/index-pack.c:1399
 #, c-format
@@ -5317,22 +5413,23 @@ msgstr "无法获知当前路径"
 
 #: builtin/init-db.c:467
 msgid ""
-"git init [-q | --quiet] [--bare] [--template=<template-directory>] [--shared"
-"[=<permissions>]] [directory]"
+"git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
+"shared[=<permissions>]] [directory]"
 msgstr ""
+"git init [-q | --quiet] [--bare] [--template=<模板目录>] [--shared[=<权限>]] "
+"[目录]"
 
 #: builtin/init-db.c:490
 msgid "permissions"
-msgstr ""
+msgstr "权限"
 
 #: builtin/init-db.c:491
 msgid "specify that the git repository is to be shared amongst several users"
-msgstr ""
+msgstr "指定 git 版本库是多个用户之间共享的"
 
 #: builtin/init-db.c:493 builtin/prune-packed.c:77
-#, fuzzy
 msgid "be quiet"
-msgstr "更加安静"
+msgstr "保持安静"
 
 #: builtin/init-db.c:522 builtin/init-db.c:529
 #, c-format
@@ -5362,403 +5459,395 @@ msgstr "不能访问当前工作目录"
 msgid "Cannot access work tree '%s'"
 msgstr "不能访问工作区 '%s'"
 
-#: builtin/log.c:37
-#, fuzzy
+#: builtin/log.c:39
 msgid "git log [<options>] [<since>..<until>] [[--] <path>...]\n"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git log [<选项>] [<从>..<到>] [[--] <路径>...]\n"
 
-#: builtin/log.c:38
-#, fuzzy
+#: builtin/log.c:40
 msgid "   or: git show [options] <object>..."
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "   或者:git show [选项] <对象>..."
 
-#: builtin/log.c:100
+#: builtin/log.c:102
 msgid "suppress diff output"
-msgstr ""
+msgstr "不显示差异输出"
 
-#: builtin/log.c:101
-#, fuzzy
+#: builtin/log.c:103
 msgid "show source"
-msgstr "坏的源"
+msgstr "显示源"
 
-#: builtin/log.c:102
+#: builtin/log.c:104
+msgid "Use mail map file"
+msgstr "使用邮件映射文件"
+
+#: builtin/log.c:105
 msgid "decorate options"
-msgstr ""
+msgstr "修饰选项"
 
-#: builtin/log.c:189
+#: builtin/log.c:198
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "最终输出:%d %s\n"
 
-#: builtin/log.c:403 builtin/log.c:494
+#: builtin/log.c:419 builtin/log.c:511
 #, c-format
 msgid "Could not read object %s"
 msgstr "不能读取对象 %s"
 
-#: builtin/log.c:518
+#: builtin/log.c:535
 #, c-format
 msgid "Unknown type: %d"
 msgstr "未知类型:%d"
 
-#: builtin/log.c:608
+#: builtin/log.c:627
 msgid "format.headers without value"
 msgstr "format.headers 没有值"
 
-#: builtin/log.c:682
+#: builtin/log.c:701
 msgid "name of output directory is too long"
 msgstr "输出目录名太长"
 
-#: builtin/log.c:693
+#: builtin/log.c:717
 #, c-format
 msgid "Cannot open patch file %s"
 msgstr "无法打开补丁文件 %s"
 
-#: builtin/log.c:707
+#: builtin/log.c:731
 msgid "Need exactly one range."
 msgstr "只需要一个范围。"
 
-#: builtin/log.c:715
+#: builtin/log.c:739
 msgid "Not a range."
 msgstr "不是一个范围。"
 
-#: builtin/log.c:789
+#: builtin/log.c:812
 msgid "Cover letter needs email format"
 msgstr "信封需要邮件地址格式"
 
-#: builtin/log.c:862
+#: builtin/log.c:885
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "不正常的 in-reply-to:%s"
 
-#: builtin/log.c:890
+#: builtin/log.c:913
 msgid "git format-patch [options] [<since> | <revision range>]"
-msgstr ""
+msgstr "git format-patch [选项] [<从> | <修订集范围>]"
 
-#: builtin/log.c:935
+#: builtin/log.c:958
 msgid "Two output directories?"
 msgstr "两个输出目录?"
 
-#: builtin/log.c:1063
+#: builtin/log.c:1097
 msgid "use [PATCH n/m] even with a single patch"
-msgstr ""
+msgstr "使用 [PATCH n/m],即使只有一个补丁"
 
-#: builtin/log.c:1066
+#: builtin/log.c:1100
 msgid "use [PATCH] even with multiple patches"
-msgstr ""
+msgstr "使用 [PATCH],即使有多个补丁"
 
-#: builtin/log.c:1070
+#: builtin/log.c:1104
 msgid "print patches to standard out"
-msgstr ""
+msgstr "打印补丁到标准输出"
 
-#: builtin/log.c:1072
+#: builtin/log.c:1106
 msgid "generate a cover letter"
-msgstr ""
+msgstr "生成一封附信"
 
-#: builtin/log.c:1074
+#: builtin/log.c:1108
 msgid "use simple number sequence for output file names"
-msgstr ""
+msgstr "使用简单的数字序列作为输出文件名"
 
-#: builtin/log.c:1075
+#: builtin/log.c:1109
 msgid "sfx"
-msgstr ""
+msgstr "后缀"
 
-#: builtin/log.c:1076
+#: builtin/log.c:1110
 msgid "use <sfx> instead of '.patch'"
-msgstr ""
+msgstr "使用 <后缀> 代替 '.patch'"
 
-#: builtin/log.c:1078
+#: builtin/log.c:1112
 msgid "start numbering patches at <n> instead of 1"
-msgstr ""
+msgstr "补丁以 <n> 开始编号,而不是1"
+
+#: builtin/log.c:1114
+msgid "mark the series as Nth re-roll"
+msgstr "标记补丁系列是第几次重制"
 
-#: builtin/log.c:1080
+#: builtin/log.c:1116
 msgid "Use [<prefix>] instead of [PATCH]"
-msgstr ""
+msgstr "使用 [<前缀>] 代替 [PATCH]"
 
-#: builtin/log.c:1083
+#: builtin/log.c:1119
 msgid "store resulting files in <dir>"
-msgstr ""
+msgstr "把结果文件存储在 <dir>"
 
-#: builtin/log.c:1086
+#: builtin/log.c:1122
 msgid "don't strip/add [PATCH]"
-msgstr ""
+msgstr "不删除/添加 [PATCH]"
 
-#: builtin/log.c:1089
+#: builtin/log.c:1125
 msgid "don't output binary diffs"
-msgstr ""
+msgstr "不输出二进制差异"
 
-#: builtin/log.c:1091
+#: builtin/log.c:1127
 msgid "don't include a patch matching a commit upstream"
-msgstr ""
+msgstr "不包含已在上游提交中的补丁"
 
-#: builtin/log.c:1093
+#: builtin/log.c:1129
 msgid "show patch format instead of default (patch + stat)"
-msgstr ""
+msgstr "显示纯补丁格式而非默认的(补丁+状态)"
 
-#: builtin/log.c:1095
-#, fuzzy
+#: builtin/log.c:1131
 msgid "Messaging"
-msgstr "合并:"
+msgstr "邮件发送"
 
-#  译者:注意保持句尾空格
-#: builtin/log.c:1096
-#, fuzzy
+#: builtin/log.c:1132
 msgid "header"
-msgstr "领先 "
+msgstr "header"
 
-#: builtin/log.c:1097
+#: builtin/log.c:1133
 msgid "add email header"
-msgstr ""
+msgstr "添加邮件头"
 
-#: builtin/log.c:1098 builtin/log.c:1100
+#: builtin/log.c:1134 builtin/log.c:1136
 msgid "email"
-msgstr ""
+msgstr "邮件地址"
 
-#: builtin/log.c:1098
+#: builtin/log.c:1134
 msgid "add To: header"
-msgstr ""
+msgstr "添加收件人"
 
-#: builtin/log.c:1100
+#: builtin/log.c:1136
 msgid "add Cc: header"
-msgstr ""
+msgstr "添加抄送"
 
-#: builtin/log.c:1102
+#: builtin/log.c:1138
 msgid "message-id"
-msgstr ""
+msgstr "message-id"
 
-#: builtin/log.c:1103
+#: builtin/log.c:1139
 msgid "make first mail a reply to <message-id>"
-msgstr ""
+msgstr "使第一封邮件作为对 <message-id> 的回复"
 
-#: builtin/log.c:1104 builtin/log.c:1107
+#: builtin/log.c:1140 builtin/log.c:1143
 msgid "boundary"
-msgstr ""
+msgstr "边界"
 
-#: builtin/log.c:1105
+#: builtin/log.c:1141
 msgid "attach the patch"
-msgstr ""
+msgstr "附件方式添加补丁"
 
-#: builtin/log.c:1108
-#, fuzzy
+#: builtin/log.c:1144
 msgid "inline the patch"
-msgstr "忽ç\95¥è¡¥ä¸\81中ç\9a\84æ·»å\8a ç\9a\84æ\96\87件"
+msgstr "å\86\85è\81\94æ\98¾ç¤ºè¡¥ä¸\81"
 
-#: builtin/log.c:1112
+#: builtin/log.c:1148
 msgid "enable message threading, styles: shallow, deep"
-msgstr ""
+msgstr "启用邮件线索,风格:浅,深"
 
-#: builtin/log.c:1114
+#: builtin/log.c:1150
 msgid "signature"
-msgstr ""
+msgstr "签名"
 
-#: builtin/log.c:1115
+#: builtin/log.c:1151
 msgid "add a signature"
-msgstr ""
+msgstr "添加一个签名"
 
-#: builtin/log.c:1117
-#, fuzzy
+#: builtin/log.c:1153
 msgid "don't print the patch filenames"
-msgstr "无法打开补丁文件 %s"
+msgstr "不要打印补丁文件名"
 
-#: builtin/log.c:1157
+#: builtin/log.c:1202
 #, c-format
 msgid "bogus committer info %s"
 msgstr "虚假的提交者信息 %s"
 
-#: builtin/log.c:1202
+#: builtin/log.c:1247
 msgid "-n and -k are mutually exclusive."
 msgstr "-n 和 -k 互斥。"
 
-#: builtin/log.c:1204
+#: builtin/log.c:1249
 msgid "--subject-prefix and -k are mutually exclusive."
 msgstr "--subject-prefix 和 -k 互斥。"
 
-#: builtin/log.c:1212
+#: builtin/log.c:1257
 msgid "--name-only does not make sense"
 msgstr "--name-only 无意义"
 
-#: builtin/log.c:1214
+#: builtin/log.c:1259
 msgid "--name-status does not make sense"
 msgstr "--name-status 无意义"
 
-#: builtin/log.c:1216
+#: builtin/log.c:1261
 msgid "--check does not make sense"
 msgstr "--check 无意义"
 
-#: builtin/log.c:1239
+#: builtin/log.c:1284
 msgid "standard output, or directory, which one?"
 msgstr "标准输出或目录,哪一个?"
 
-#: builtin/log.c:1241
+#: builtin/log.c:1286
 #, c-format
 msgid "Could not create directory '%s'"
 msgstr "不能创建目录 '%s'"
 
-#: builtin/log.c:1394
+#: builtin/log.c:1439
 msgid "Failed to create output files"
 msgstr "无法创建输出文件"
 
-#: builtin/log.c:1443
+#: builtin/log.c:1488
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
-msgstr ""
+msgstr "git cherry [-v] [<上游> [<头> [<限制>]]]"
 
-#: builtin/log.c:1498
+#: builtin/log.c:1543
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
 msgstr "不能找到跟踪的远程分支,请手工指定 <upstream>。\n"
 
-#: builtin/log.c:1511 builtin/log.c:1513 builtin/log.c:1525
+#: builtin/log.c:1556 builtin/log.c:1558 builtin/log.c:1570
 #, c-format
 msgid "Unknown commit %s"
 msgstr "未知提交 %s"
 
-#: builtin/ls-files.c:408
-#, fuzzy
+#: builtin/ls-files.c:409
 msgid "git ls-files [options] [<file>...]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git ls-files [选项] [<文件>...]"
 
-#: builtin/ls-files.c:463
+#: builtin/ls-files.c:466
 msgid "identify the file status with tags"
-msgstr ""
+msgstr "用标签标识文件的状态"
 
-#: builtin/ls-files.c:465
+#: builtin/ls-files.c:468
 msgid "use lowercase letters for 'assume unchanged' files"
-msgstr ""
+msgstr "使用小写字母表示 '假设未改变的' 文件"
 
-#: builtin/ls-files.c:467
+#: builtin/ls-files.c:470
 msgid "show cached files in the output (default)"
-msgstr ""
+msgstr "显示缓存的文件(默认)"
 
-#: builtin/ls-files.c:469
-#, fuzzy
+#: builtin/ls-files.c:472
 msgid "show deleted files in the output"
-msgstr "删除的文件 %s 仍有内容"
+msgstr "显示已删除的文件"
 
-#: builtin/ls-files.c:471
+#: builtin/ls-files.c:474
 msgid "show modified files in the output"
-msgstr ""
+msgstr "显示已修改的文件"
 
-#: builtin/ls-files.c:473
+#: builtin/ls-files.c:476
 msgid "show other files in the output"
-msgstr ""
+msgstr "显示其它文件"
 
-#: builtin/ls-files.c:475
+#: builtin/ls-files.c:478
 msgid "show ignored files in the output"
-msgstr ""
+msgstr "显示忽略的文件"
 
-#: builtin/ls-files.c:478
+#: builtin/ls-files.c:481
 msgid "show staged contents' object name in the output"
-msgstr ""
+msgstr "显示暂存区内容的对象名称"
 
-#: builtin/ls-files.c:480
+#: builtin/ls-files.c:483
 msgid "show files on the filesystem that need to be removed"
-msgstr ""
+msgstr "显示文件系统需要删除的文件"
 
-#: builtin/ls-files.c:482
+#: builtin/ls-files.c:485
 msgid "show 'other' directories' name only"
-msgstr ""
+msgstr "只显示“其他”目录的名称"
 
-#: builtin/ls-files.c:485
-#, fuzzy
+#: builtin/ls-files.c:488
 msgid "don't show empty directories"
-msgstr "两个è¾\93å\87ºç\9b®å½\95ï¼\9f"
+msgstr "ä¸\8dæ\98¾ç¤ºç©ºç\9b®å½\95"
 
-#: builtin/ls-files.c:488
+#: builtin/ls-files.c:491
 msgid "show unmerged files in the output"
-msgstr ""
+msgstr "显示未合并的文件"
 
-#: builtin/ls-files.c:490
+#: builtin/ls-files.c:493
 msgid "show resolve-undo information"
-msgstr ""
+msgstr "显示 resolve-undo 信息"
 
-#: builtin/ls-files.c:492
-#, fuzzy
+#: builtin/ls-files.c:495
 msgid "skip files matching pattern"
-msgstr "输出和模式匹配的行"
+msgstr "匹配排除文件的模式"
 
-#: builtin/ls-files.c:495
+#: builtin/ls-files.c:498
 msgid "exclude patterns are read from <file>"
-msgstr ""
+msgstr "从 <文件> 中读取排除模式"
 
-#: builtin/ls-files.c:498
+#: builtin/ls-files.c:501
 msgid "read additional per-directory exclude patterns in <file>"
-msgstr ""
+msgstr "从 <文件> 读取额外的每个目录的排除模式"
 
-#: builtin/ls-files.c:500
+#: builtin/ls-files.c:503
 msgid "add the standard git exclusions"
-msgstr ""
+msgstr "添加标准的 git 排除"
 
-#: builtin/ls-files.c:503
+#: builtin/ls-files.c:506
 msgid "make the output relative to the project top directory"
-msgstr ""
+msgstr "显示相对于顶级目录的文件名"
 
-#: builtin/ls-files.c:506
+#: builtin/ls-files.c:509
 msgid "if any <file> is not in the index, treat this as an error"
-msgstr ""
+msgstr "如果任何 <文件> 都不在索引区,视为错误"
 
-#: builtin/ls-files.c:507
+#: builtin/ls-files.c:510
 msgid "tree-ish"
-msgstr ""
+msgstr "树或提交"
 
-#: builtin/ls-files.c:508
+#: builtin/ls-files.c:511
 msgid "pretend that paths removed since <tree-ish> are still present"
-msgstr ""
+msgstr "假装自从 <树或提交> 之后删除的路径仍然存在"
 
-#: builtin/ls-files.c:510
+#: builtin/ls-files.c:513
 msgid "show debugging data"
-msgstr ""
+msgstr "显示调试数据"
 
 #: builtin/ls-tree.c:27
-#, fuzzy
 msgid "git ls-tree [<options>] <tree-ish> [<path>...]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git ls-tree [<选项>] <树或提交> [<路径>...]"
 
 #: builtin/ls-tree.c:125
 msgid "only show trees"
-msgstr ""
+msgstr "只显示树"
 
 #: builtin/ls-tree.c:127
-#, fuzzy
 msgid "recurse into subtrees"
-msgstr "变基到远程 %s"
+msgstr "递归到子树"
 
 #: builtin/ls-tree.c:129
 msgid "show trees when recursing"
-msgstr ""
+msgstr "当递归时显示树"
 
 #: builtin/ls-tree.c:132
 msgid "terminate entries with NUL byte"
-msgstr ""
+msgstr "条目以NUL字符终止"
 
 #: builtin/ls-tree.c:133
-#, fuzzy
 msgid "include object size"
-msgstr "提供了无效对象 '%s'。"
+msgstr "包括对象大小"
 
 #: builtin/ls-tree.c:135 builtin/ls-tree.c:137
 msgid "list only filenames"
-msgstr ""
+msgstr "只列出文件名"
 
 #: builtin/ls-tree.c:140
 msgid "use full path names"
-msgstr ""
+msgstr "使用文件的全路径"
 
 #: builtin/ls-tree.c:142
 msgid "list entire tree; not just current directory (implies --full-name)"
-msgstr ""
+msgstr "列出整个树;不仅仅当前目录(隐含 --full-name)"
 
 #: builtin/merge.c:43
-#, fuzzy
 msgid "git merge [options] [<commit>...]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git merge [选项] [<提交>...]"
 
 #: builtin/merge.c:44
 msgid "git merge [options] <msg> HEAD <commit>"
-msgstr ""
+msgstr "git merge [选项] <说明> HEAD <提交>"
 
 #: builtin/merge.c:45
 msgid "git merge --abort"
-msgstr ""
+msgstr "git merge --abort"
 
 #: builtin/merge.c:90
 msgid "switch `m' requires a value"
@@ -5781,68 +5870,63 @@ msgstr "可用的自定义策略有:"
 
 #: builtin/merge.c:183
 msgid "do not show a diffstat at the end of the merge"
-msgstr ""
+msgstr "在合并的最后不显示差异统计"
 
 #: builtin/merge.c:186
 msgid "show a diffstat at the end of the merge"
-msgstr ""
+msgstr "在合并的最后显示差异统计"
 
 #: builtin/merge.c:187
 msgid "(synonym to --stat)"
-msgstr ""
+msgstr "(和 --stat 同义)"
 
 #: builtin/merge.c:189
 msgid "add (at most <n>) entries from shortlog to merge commit message"
-msgstr ""
+msgstr "在合并提交信息中添加(最多 <n> 条)精简提交记录"
 
 #: builtin/merge.c:192
-#, fuzzy
 msgid "create a single commit instead of doing a merge"
-msgstr "å\9c¨å\90\88并è¿\87ç¨\8b中ä¸\8dè\83½å\81\9aé\83¨å\88\86æ\8f\90交ã\80\82"
+msgstr "å\88\9b建ä¸\80个å\8d\95ç\8b¬ç\9a\84æ\8f\90交è\80\8cä¸\8dæ\98¯å\81\9aä¸\80次å\90\88并"
 
 #: builtin/merge.c:194
 msgid "perform a commit if the merge succeeds (default)"
-msgstr ""
+msgstr "如果合并成功,执行一次提交(默认)"
 
 #: builtin/merge.c:196
-#, fuzzy
 msgid "edit message before committing"
-msgstr "å°\9aæ\9cªæ\9a\82å­\98以å¤\87æ\8f\90交ç\9a\84å\8f\98æ\9b´ï¼\9a"
+msgstr "å\9c¨æ\8f\90交å\89\8dç¼\96è¾\91æ\8f\90交说æ\98\8e"
 
 #: builtin/merge.c:198
-#, fuzzy
 msgid "allow fast-forward (default)"
-msgstr "å\8f¯å¿«è¿\9b"
+msgstr "å\85\81许快è¿\9bï¼\88é»\98认ï¼\89"
 
 #: builtin/merge.c:200
 msgid "abort if fast-forward is not possible"
-msgstr ""
+msgstr "如果不能快进就放弃合并"
 
-#: builtin/merge.c:202 builtin/notes.c:867 builtin/revert.c:112
+#: builtin/merge.c:202 builtin/notes.c:866 builtin/revert.c:112
 msgid "strategy"
-msgstr ""
+msgstr "策略"
 
 #: builtin/merge.c:203
-#, fuzzy
 msgid "merge strategy to use"
-msgstr "尝试合并策略 %s...\n"
+msgstr "要使用的合并策略"
 
 #: builtin/merge.c:204
 msgid "option=value"
-msgstr ""
+msgstr "option=value"
 
 #: builtin/merge.c:205
 msgid "option for selected merge strategy"
-msgstr ""
+msgstr "所选的合并策略的选项"
 
 #: builtin/merge.c:207
 msgid "merge commit message (for a non-fast-forward merge)"
-msgstr ""
+msgstr "合并的提交说明(针对非快进式合并)"
 
 #: builtin/merge.c:211
-#, fuzzy
 msgid "abort the current in-progress merge"
-msgstr "æ\97 æ³\95ä¿\9då­\98å½\93å\89\8dç´¢å¼\95ç\8a¶æ\80\81"
+msgstr "æ\94¾å¼\83å½\93å\89\8dæ­£å\9c¨è¿\9bè¡\8cç\9a\84å\90\88并"
 
 #: builtin/merge.c:240
 msgid "could not run stash."
@@ -5898,93 +5982,90 @@ msgstr "坏的 branch.%s.mergeoptions 字符串:%s"
 msgid "git write-tree failed to write a tree"
 msgstr "git write-tree 无法写入一树对象"
 
-#: builtin/merge.c:678
-msgid "failed to read the cache"
-msgstr "无法读取缓存"
-
-#: builtin/merge.c:709
+#: builtin/merge.c:656
 msgid "Not handling anything other than two heads merge."
 msgstr "不能处理两个头合并之外的任何操作。"
 
-#: builtin/merge.c:723
+#: builtin/merge.c:670
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "merge-recursive 的未知选项:-X%s"
 
-#: builtin/merge.c:737
+#: builtin/merge.c:684
 #, c-format
 msgid "unable to write %s"
 msgstr "不能写 %s"
 
-#: builtin/merge.c:876
+#: builtin/merge.c:773
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "不能从 '%s' 读取"
 
-#: builtin/merge.c:885
+#: builtin/merge.c:782
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr "未提交合并,使用 'git commit' 完成此次合并。\n"
 
-#: builtin/merge.c:891
+#: builtin/merge.c:788
+#, c-format
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
 "especially if it merges an updated upstream into a topic branch.\n"
 "\n"
-"Lines starting with '#' will be ignored, and an empty message aborts\n"
+"Lines starting with '%c' will be ignored, and an empty message aborts\n"
 "the commit.\n"
 msgstr ""
 "请输入一个提交信息以解释此合并的必要性,尤其是将一个更新后的上游分支\n"
 "合并到主题分支。\n"
 "\n"
-"以 '#' 开头的行将被忽略,而且空提交说明将会终止提交。\n"
+"以 '%c' 开头的行将被忽略,而且空提交说明将会终止提交。\n"
 
-#: builtin/merge.c:915
+#: builtin/merge.c:812
 msgid "Empty commit message."
 msgstr "空提交信息。"
 
-#: builtin/merge.c:927
+#: builtin/merge.c:824
 #, c-format
 msgid "Wonderful.\n"
 msgstr "太棒了。\n"
 
-#: builtin/merge.c:992
+#: builtin/merge.c:889
 #, c-format
 msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 msgstr "自动合并失败,修正冲突然后提交修正的结果。\n"
 
-#: builtin/merge.c:1008
+#: builtin/merge.c:905
 #, c-format
 msgid "'%s' is not a commit"
 msgstr "'%s' 不是一个提交"
 
-#: builtin/merge.c:1049
+#: builtin/merge.c:946
 msgid "No current branch."
 msgstr "没有当前分支。"
 
-#: builtin/merge.c:1051
+#: builtin/merge.c:948
 msgid "No remote for the current branch."
 msgstr "当前分支没有对应的远程版本库。"
 
-#: builtin/merge.c:1053
+#: builtin/merge.c:950
 msgid "No default upstream defined for the current branch."
 msgstr "当前分支没有定义默认的上游分支。"
 
-#: builtin/merge.c:1058
+#: builtin/merge.c:955
 #, c-format
 msgid "No remote tracking branch for %s from %s"
 msgstr "%s 没有来自 %s 的远程跟踪分支"
 
-#: builtin/merge.c:1145 builtin/merge.c:1302
+#: builtin/merge.c:1042 builtin/merge.c:1199
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - 不能被合并"
 
-#: builtin/merge.c:1213
+#: builtin/merge.c:1110
 msgid "There is no merge to abort (MERGE_HEAD missing)."
 msgstr "没有要终止的合并(MERGE_HEAD 丢失)。"
 
-#: builtin/merge.c:1229 git-pull.sh:31
+#: builtin/merge.c:1126 git-pull.sh:31
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you can merge."
@@ -5992,11 +6073,11 @@ msgstr ""
 "您尚未结束您的合并(存在 MERGE_HEAD)。\n"
 "请在合并前先提交您的修改。"
 
-#: builtin/merge.c:1232 git-pull.sh:34
+#: builtin/merge.c:1129 git-pull.sh:34
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "您尚未结束您的合并(存在 MERGE_HEAD)。"
 
-#: builtin/merge.c:1236
+#: builtin/merge.c:1133
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you can merge."
@@ -6004,183 +6085,181 @@ msgstr ""
 "您尚未结束您的拣选(存在 CHERRY_PICK_HEAD)。\n"
 "请在合并前先提交您的修改。"
 
-#: builtin/merge.c:1239
+#: builtin/merge.c:1136
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
 msgstr "您尚未结束您的拣选(存在 CHERRY_PICK_HEAD)。"
 
-#: builtin/merge.c:1248
+#: builtin/merge.c:1145
 msgid "You cannot combine --squash with --no-ff."
 msgstr "您不能将 --squash 与 --no-ff 同时使用。"
 
-#: builtin/merge.c:1253
+#: builtin/merge.c:1150
 msgid "You cannot combine --no-ff with --ff-only."
 msgstr "您不能将 --no-ff 与 --ff-only 同时使用。"
 
-#: builtin/merge.c:1260
+#: builtin/merge.c:1157
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr "未指定提交并且 merge.defaultToUpstream 未设置。"
 
-#: builtin/merge.c:1292
+#: builtin/merge.c:1189
 msgid "Can merge only exactly one commit into empty head"
 msgstr "只能将一个提交合并到空分支上"
 
-#: builtin/merge.c:1295
+#: builtin/merge.c:1192
 msgid "Squash commit into empty head not supported yet"
 msgstr "尚不支持到空分支的压缩提交"
 
-#: builtin/merge.c:1297
+#: builtin/merge.c:1194
 msgid "Non-fast-forward commit does not make sense into an empty head"
 msgstr "到空分支的非快进式提交没有意义"
 
-#: builtin/merge.c:1412
+#: builtin/merge.c:1310
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "更新 %s..%s\n"
 
-#: builtin/merge.c:1450
+#: builtin/merge.c:1349
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "尝试非常小的索引内合并...\n"
 
-#: builtin/merge.c:1457
+#: builtin/merge.c:1356
 #, c-format
 msgid "Nope.\n"
 msgstr "无。\n"
 
-#: builtin/merge.c:1489
+#: builtin/merge.c:1388
 msgid "Not possible to fast-forward, aborting."
 msgstr "无法快进,终止。"
 
-#: builtin/merge.c:1512 builtin/merge.c:1591
+#: builtin/merge.c:1411 builtin/merge.c:1490
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "将树回滚至原始状态...\n"
 
-#: builtin/merge.c:1516
+#: builtin/merge.c:1415
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "尝试合并策略 %s...\n"
 
-#: builtin/merge.c:1582
+#: builtin/merge.c:1481
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr "没有合并策略处理此合并。\n"
 
-#: builtin/merge.c:1584
+#: builtin/merge.c:1483
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "使用策略 %s 合并失败。\n"
 
-#: builtin/merge.c:1593
+#: builtin/merge.c:1492
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
 msgstr "使用 %s 以准备手工解决。\n"
 
-#: builtin/merge.c:1605
+#: builtin/merge.c:1504
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr "自动合并进展顺利,按要求在提交前停止\n"
 
 #: builtin/merge-base.c:26
 msgid "git merge-base [-a|--all] <commit> <commit>..."
-msgstr ""
+msgstr "git merge-base [-a|--all] <提交> <提交>..."
 
 #: builtin/merge-base.c:27
 msgid "git merge-base [-a|--all] --octopus <commit>..."
-msgstr ""
+msgstr "git merge-base [-a|--all] --octopus <提交>..."
 
 #: builtin/merge-base.c:28
 msgid "git merge-base --independent <commit>..."
-msgstr ""
+msgstr "git merge-base --independent <提交>..."
 
 #: builtin/merge-base.c:29
 msgid "git merge-base --is-ancestor <commit> <commit>"
-msgstr ""
+msgstr "git merge-base --is-ancestor <提交> <提交>"
 
 #: builtin/merge-base.c:98
-#, fuzzy
 msgid "output all common ancestors"
-msgstr "发现 %u 个共同祖先:"
+msgstr "输出所有共同的祖先"
 
 #: builtin/merge-base.c:99
 msgid "find ancestors for a single n-way merge"
-msgstr ""
+msgstr "查找一个多路合并的祖先提交"
 
 #: builtin/merge-base.c:100
 msgid "list revs not reachable from others"
-msgstr ""
+msgstr "显示不能被其他访问到的版本"
 
 #: builtin/merge-base.c:102
 msgid "is the first one ancestor of the other?"
-msgstr ""
+msgstr "第一个是其他的祖先提交么?"
 
 #: builtin/merge-file.c:8
 msgid ""
 "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"
 
 #: builtin/merge-file.c:33
 msgid "send results to standard output"
-msgstr ""
+msgstr "将结果发送到标准输出"
 
 #: builtin/merge-file.c:34
 msgid "use a diff3 based merge"
-msgstr ""
+msgstr "使用基于 diff3 的合并"
 
 #: builtin/merge-file.c:35
 msgid "for conflicts, use our version"
-msgstr ""
+msgstr "如果冲突,使用我们的版本"
 
 #: builtin/merge-file.c:37
 msgid "for conflicts, use their version"
-msgstr ""
+msgstr "如果冲突,使用他们的版本"
 
 #: builtin/merge-file.c:39
 msgid "for conflicts, use a union version"
-msgstr ""
+msgstr "如果冲突,使用联合版本"
 
 #: builtin/merge-file.c:42
 msgid "for conflicts, use this marker size"
-msgstr ""
+msgstr "如果冲突,使用指定长度的标记"
 
 #: builtin/merge-file.c:43
 msgid "do not warn about conflicts"
-msgstr ""
+msgstr "不要警告冲突"
 
 #: builtin/merge-file.c:45
 msgid "set labels for file1/orig_file/file2"
-msgstr ""
+msgstr "为 file1/orig_file/file2 设置标签"
 
 #: builtin/mktree.c:67
 msgid "git mktree [-z] [--missing] [--batch]"
-msgstr ""
+msgstr "git mktree [-z] [--missing] [--batch]"
 
 #: builtin/mktree.c:153
 msgid "input is NUL terminated"
-msgstr ""
+msgstr "输入以 NUL 字符终止"
 
 #: builtin/mktree.c:154 builtin/write-tree.c:24
-#, fuzzy
 msgid "allow missing objects"
-msgstr "接收对象中"
+msgstr "允许丢失的对象"
 
 #: builtin/mktree.c:155
 msgid "allow creation of more than one tree"
-msgstr ""
+msgstr "允许创建一个以上的树"
 
 #: builtin/mv.c:14
 msgid "git mv [options] <source>... <destination>"
-msgstr ""
+msgstr "git mv [选项] <源>... <目标>"
 
 #: builtin/mv.c:64
 msgid "force move/rename even if target exists"
-msgstr ""
+msgstr "强制移动/重命令,即使目标存在"
 
 #: builtin/mv.c:65
-#, fuzzy
 msgid "skip move/rename errors"
-msgstr "程序错误"
+msgstr "跳过移动/重命名错误"
 
 #: builtin/mv.c:108
 #, c-format
@@ -6245,326 +6324,314 @@ msgid "renaming '%s' failed"
 msgstr "重命名 '%s' 失败"
 
 #: builtin/name-rev.c:175
-#, fuzzy
 msgid "git name-rev [options] <commit>..."
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git name-rev [选项] <提交>..."
 
 #: builtin/name-rev.c:176
 msgid "git name-rev [options] --all"
-msgstr ""
+msgstr "git name-rev [选项] --all"
 
 #: builtin/name-rev.c:177
 msgid "git name-rev [options] --stdin"
-msgstr ""
+msgstr "git name-rev [选项] --stdin"
 
 #: builtin/name-rev.c:229
 msgid "print only names (no SHA-1)"
-msgstr ""
+msgstr "只打印名称(无 SHA-1)"
 
 #: builtin/name-rev.c:230
 msgid "only use tags to name the commits"
-msgstr ""
+msgstr "只使用 tags 来命名提交"
 
 #: builtin/name-rev.c:232
-#, fuzzy
 msgid "only use refs matching <pattern>"
-msgstr "输出和模式匹配的行"
+msgstr "只使用和 <模式> 相匹配的引用"
 
 #: builtin/name-rev.c:234
 msgid "list all commits reachable from all refs"
-msgstr ""
+msgstr "列出可以从所有引用访问的提交"
 
 #: builtin/name-rev.c:235
 msgid "read from stdin"
-msgstr ""
+msgstr "从标准输入读取"
 
 #: builtin/name-rev.c:236
 msgid "allow to print `undefined` names"
-msgstr ""
+msgstr "允许打印 `未定义` 的名称"
 
-#: builtin/notes.c:23
+#: builtin/notes.c:26
 msgid "git notes [--ref <notes_ref>] [list [<object>]]"
-msgstr ""
+msgstr "git notes [--ref <注解引用>] [list [<对象>]]"
 
-#: builtin/notes.c:24
+#: builtin/notes.c:27
 msgid ""
 "git notes [--ref <notes_ref>] add [-f] [-m <msg> | -F <file> | (-c | -C) "
 "<object>] [<object>]"
 msgstr ""
+"git notes [--ref <注解引用>] add [-f] [-m <说明> | -F <文件> | (-c | -C) <对"
+"象>] [<对象>]"
 
-#: builtin/notes.c:25
+#: builtin/notes.c:28
 msgid "git notes [--ref <notes_ref>] copy [-f] <from-object> <to-object>"
-msgstr ""
+msgstr "git notes [--ref <注解引用>] copy [-f] <源对象> <目标对象>"
 
-#: builtin/notes.c:26
+#: builtin/notes.c:29
 msgid ""
 "git notes [--ref <notes_ref>] append [-m <msg> | -F <file> | (-c | -C) "
 "<object>] [<object>]"
 msgstr ""
+"git notes [--ref <注解引用>] append [-m <说明> | -F <文件> | (-c | -C) <对象"
+">] [<对象>]"
 
-#: builtin/notes.c:27
+#: builtin/notes.c:30
 msgid "git notes [--ref <notes_ref>] edit [<object>]"
-msgstr ""
+msgstr "git notes [--ref <注解引用>] edit [<对象>]"
 
-#: builtin/notes.c:28
+#: builtin/notes.c:31
 msgid "git notes [--ref <notes_ref>] show [<object>]"
-msgstr ""
+msgstr "git notes [--ref <注解引用>] show [<对象>]"
 
-#: builtin/notes.c:29
+#: builtin/notes.c:32
 msgid ""
 "git notes [--ref <notes_ref>] merge [-v | -q] [-s <strategy> ] <notes_ref>"
-msgstr ""
+msgstr "git notes [--ref <注解引用>] merge [-v | -q] [-s <策略> ] <注解引用>"
 
-#: builtin/notes.c:30
+#: builtin/notes.c:33
 msgid "git notes merge --commit [-v | -q]"
-msgstr ""
+msgstr "git notes merge --commit [-v | -q]"
 
-#: builtin/notes.c:31
+#: builtin/notes.c:34
 msgid "git notes merge --abort [-v | -q]"
-msgstr ""
+msgstr "git notes merge --abort [-v | -q]"
 
-#: builtin/notes.c:32
+#: builtin/notes.c:35
 msgid "git notes [--ref <notes_ref>] remove [<object>...]"
-msgstr ""
+msgstr "git notes [--ref <注解引用>] remove [<对象>...]"
 
-#: builtin/notes.c:33
+#: builtin/notes.c:36
 msgid "git notes [--ref <notes_ref>] prune [-n | -v]"
-msgstr ""
+msgstr "git notes [--ref <注解引用>] prune [-n | -v]"
 
-#: builtin/notes.c:34
+#: builtin/notes.c:37
 msgid "git notes [--ref <notes_ref>] get-ref"
-msgstr ""
+msgstr "git notes [--ref <注解引用>] get-ref"
 
-#: builtin/notes.c:39
+#: builtin/notes.c:42
 msgid "git notes [list [<object>]]"
-msgstr ""
+msgstr "git notes [list [<对象>]]"
 
-#: builtin/notes.c:44
-#, fuzzy
+#: builtin/notes.c:47
 msgid "git notes add [<options>] [<object>]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git notes add [<选项>] [<对象>]"
 
-#: builtin/notes.c:49
+#: builtin/notes.c:52
 msgid "git notes copy [<options>] <from-object> <to-object>"
-msgstr ""
+msgstr "git notes copy [<选项>] <源对象> <目标对象>"
 
-#: builtin/notes.c:50
+#: builtin/notes.c:53
 msgid "git notes copy --stdin [<from-object> <to-object>]..."
-msgstr ""
+msgstr "git notes copy --stdin [<源对象> <目标对象>]..."
 
-#: builtin/notes.c:55
-#, fuzzy
+#: builtin/notes.c:58
 msgid "git notes append [<options>] [<object>]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git notes append [<选项>] [<对象>]"
 
-#: builtin/notes.c:60
+#: builtin/notes.c:63
 msgid "git notes edit [<object>]"
-msgstr ""
+msgstr "git notes edit [<对象>]"
 
-#: builtin/notes.c:65
+#: builtin/notes.c:68
 msgid "git notes show [<object>]"
-msgstr ""
+msgstr "git notes show [<对象>]"
 
-#: builtin/notes.c:70
+#: builtin/notes.c:73
 msgid "git notes merge [<options>] <notes_ref>"
-msgstr ""
+msgstr "git notes merge [<选项>] <注解引用>"
 
-#: builtin/notes.c:71
+#: builtin/notes.c:74
 msgid "git notes merge --commit [<options>]"
-msgstr ""
+msgstr "git notes merge --commit [<选项>]"
 
-#: builtin/notes.c:72
+#: builtin/notes.c:75
 msgid "git notes merge --abort [<options>]"
-msgstr ""
+msgstr "git notes merge --abort [<选项>]"
 
-#: builtin/notes.c:77
+#: builtin/notes.c:80
 msgid "git notes remove [<object>]"
-msgstr ""
+msgstr "git notes remove [<对象>]"
 
-#: builtin/notes.c:82
+#: builtin/notes.c:85
 msgid "git notes prune [<options>]"
-msgstr ""
+msgstr "git notes prune [<选项>]"
 
-#: builtin/notes.c:87
+#: builtin/notes.c:90
 msgid "git notes get-ref"
-msgstr ""
+msgstr "git notes get-ref"
 
 #: builtin/notes.c:139
 #, c-format
 msgid "unable to start 'show' for object '%s'"
 msgstr "不能为对象 '%s' 开始 'show'"
 
-#: builtin/notes.c:145
-msgid "can't fdopen 'show' output fd"
-msgstr "不能打开 'show' 输出文件句柄"
-
-#: builtin/notes.c:155
-#, c-format
-msgid "failed to close pipe to 'show' for object '%s'"
-msgstr "无法为对象 '%s' 的 'show' 关闭管道"
+#: builtin/notes.c:143
+msgid "could not read 'show' output"
+msgstr "不能读取 'show' 的输出"
 
-#: builtin/notes.c:158
+#: builtin/notes.c:151
 #, c-format
 msgid "failed to finish 'show' for object '%s'"
 msgstr "无法为对象 '%s' 完成 'show'"
 
-#: builtin/notes.c:175 builtin/tag.c:347
+#: builtin/notes.c:169 builtin/tag.c:341
 #, c-format
 msgid "could not create file '%s'"
 msgstr "不能创建文件 '%s'"
 
-#: builtin/notes.c:189
+#: builtin/notes.c:188
 msgid "Please supply the note contents using either -m or -F option"
 msgstr "请通过 -m 或 -F 选项为注解提供内容"
 
-#: builtin/notes.c:210 builtin/notes.c:973
+#: builtin/notes.c:209 builtin/notes.c:972
 #, c-format
 msgid "Removing note for object %s\n"
 msgstr "删除对象 %s 的注解\n"
 
-#: builtin/notes.c:215
+#: builtin/notes.c:214
 msgid "unable to write note object"
 msgstr "不能写注解对象"
 
-#: builtin/notes.c:217
+#: builtin/notes.c:216
 #, c-format
 msgid "The note contents has been left in %s"
 msgstr "注解内容被留在文件 %s 中"
 
-#: builtin/notes.c:251 builtin/tag.c:542
+#: builtin/notes.c:250 builtin/tag.c:540
 #, c-format
 msgid "cannot read '%s'"
 msgstr "不能读取 '%s'"
 
-#: builtin/notes.c:253 builtin/tag.c:545
+#: builtin/notes.c:252 builtin/tag.c:543
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "不能打开或读取 '%s'"
 
-#: builtin/notes.c:272 builtin/notes.c:445 builtin/notes.c:447
-#: builtin/notes.c:507 builtin/notes.c:561 builtin/notes.c:644
-#: builtin/notes.c:649 builtin/notes.c:724 builtin/notes.c:766
-#: builtin/notes.c:968 builtin/reset.c:293 builtin/tag.c:558
+#: builtin/notes.c:271 builtin/notes.c:444 builtin/notes.c:446
+#: builtin/notes.c:506 builtin/notes.c:560 builtin/notes.c:643
+#: builtin/notes.c:648 builtin/notes.c:723 builtin/notes.c:765
+#: builtin/notes.c:967 builtin/tag.c:556
 #, c-format
 msgid "Failed to resolve '%s' as a valid ref."
 msgstr "无法解析 '%s' 为一个有效引用。"
 
-#: builtin/notes.c:275
+#: builtin/notes.c:274
 #, c-format
 msgid "Failed to read object '%s'."
 msgstr "无法读取对象 '%s'。"
 
-#: builtin/notes.c:299
+#: builtin/notes.c:298
 msgid "Cannot commit uninitialized/unreferenced notes tree"
 msgstr "不能提交未初始化/未引用的注解树"
 
-#: builtin/notes.c:340
+#: builtin/notes.c:339
 #, c-format
 msgid "Bad notes.rewriteMode value: '%s'"
 msgstr "坏的 notes.rewriteMode 值:'%s'"
 
-#: builtin/notes.c:350
+#: builtin/notes.c:349
 #, 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
-#: builtin/notes.c:377
+#: builtin/notes.c:376
 #, c-format
 msgid "Bad %s value: '%s'"
 msgstr "坏的 %s 值:'%s'"
 
-#: builtin/notes.c:441
+#: builtin/notes.c:440
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "非法的输入行:'%s'。"
 
-#: builtin/notes.c:456
+#: builtin/notes.c:455
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "无法从 '%s' 到 '%s' 拷贝注解"
 
-#: builtin/notes.c:500 builtin/notes.c:554 builtin/notes.c:627
-#: builtin/notes.c:639 builtin/notes.c:712 builtin/notes.c:759
-#: builtin/notes.c:1033
+#: builtin/notes.c:499 builtin/notes.c:553 builtin/notes.c:626
+#: builtin/notes.c:638 builtin/notes.c:711 builtin/notes.c:758
+#: builtin/notes.c:1032
 msgid "too many parameters"
 msgstr "参数太多"
 
-#: builtin/notes.c:513 builtin/notes.c:772
+#: builtin/notes.c:512 builtin/notes.c:771
 #, c-format
 msgid "No note found for object %s."
 msgstr "未发现对象 %s 的注解。"
 
-#: builtin/notes.c:535 builtin/notes.c:692
-#, fuzzy
+#: builtin/notes.c:534 builtin/notes.c:691
 msgid "note contents as a string"
-msgstr "注解内容被留在文件 %s 中"
+msgstr "注解内容作为一个字符串"
 
-#: builtin/notes.c:538 builtin/notes.c:695
-#, fuzzy
+#: builtin/notes.c:537 builtin/notes.c:694
 msgid "note contents in a file"
-msgstr "æ\97 æ³\95å­\98å\82¨ç´¢å¼\95æ\96\87件"
+msgstr "注解å\86\85容å\88°ä¸\80个æ\96\87件中"
 
-#: builtin/notes.c:540 builtin/notes.c:543 builtin/notes.c:697
-#: builtin/notes.c:700 builtin/tag.c:476
-#, fuzzy
+#: builtin/notes.c:539 builtin/notes.c:542 builtin/notes.c:696
+#: builtin/notes.c:699 builtin/tag.c:474
 msgid "object"
-msgstr "å\9d\8f对象 %s"
+msgstr "对象"
 
-#: builtin/notes.c:541 builtin/notes.c:698
-#, fuzzy
+#: builtin/notes.c:540 builtin/notes.c:697
 msgid "reuse and edit specified note object"
-msgstr "不能写注解对象"
+msgstr "重用和编辑指定的注解对象"
 
-#: builtin/notes.c:544 builtin/notes.c:701
-#, fuzzy
+#: builtin/notes.c:543 builtin/notes.c:700
 msgid "reuse specified note object"
-msgstr "不能写注解对象"
+msgstr "重用指定的注解对象"
 
-#: builtin/notes.c:546 builtin/notes.c:614
-#, fuzzy
+#: builtin/notes.c:545 builtin/notes.c:613
 msgid "replace existing notes"
-msgstr "不能读取现存对象 %s"
+msgstr "替换已存在的注解"
 
-#: builtin/notes.c:580
+#: builtin/notes.c:579
 #, c-format
 msgid ""
 "Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
 "existing notes"
 msgstr "不能添加注解。发现对象 %s 已存在注解。使用 '-f' 覆盖现存注解"
 
-#: builtin/notes.c:585 builtin/notes.c:662
+#: builtin/notes.c:584 builtin/notes.c:661
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr "覆盖对象 %s 现存注解\n"
 
-#: builtin/notes.c:615
-#, fuzzy
+#: builtin/notes.c:614
 msgid "read objects from stdin"
-msgstr "坏对象 %s"
+msgstr "从标准输入读取对象"
 
-#: builtin/notes.c:617
+#: builtin/notes.c:616
 msgid "load rewriting config for <command> (implies --stdin)"
-msgstr ""
+msgstr "重新加载 <命令> 的配置(隐含 --stdin)"
 
-#: builtin/notes.c:635
+#: builtin/notes.c:634
 msgid "too few parameters"
 msgstr "参数太少"
 
-#: builtin/notes.c:656
+#: builtin/notes.c:655
 #, c-format
 msgid ""
 "Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
 "existing notes"
 msgstr "不能拷贝注解。发现对象 %s 已存在注解。使用 '-f' 覆盖现存注解"
 
-#: builtin/notes.c:668
+#: builtin/notes.c:667
 #, c-format
 msgid "Missing notes on source object %s. Cannot copy."
 msgstr "源对象 %s 缺少注解。不能拷贝。"
 
-#: builtin/notes.c:717
+#: builtin/notes.c:716
 #, c-format
 msgid ""
 "The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
@@ -6573,262 +6640,250 @@ msgstr ""
 "子命令 'edit' 的选项 -m/-F/-c/-C 已弃用。\n"
 "请换用 'git notes add -f -m/-F/-c/-C'。\n"
 
-#: builtin/notes.c:864
-#, fuzzy
+#: builtin/notes.c:863
 msgid "General options"
-msgstr "无效选项:%s"
+msgstr "通用选项"
 
-#: builtin/notes.c:866
+#: builtin/notes.c:865
 msgid "Merge options"
-msgstr ""
+msgstr "合并选项"
 
-#: builtin/notes.c:868
+#: builtin/notes.c:867
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
-msgstr ""
+msgstr "使用指定的策略解决注解冲突 (manual/ours/theirs/union/cat_sort_uniq)"
 
-#: builtin/notes.c:870
+#: builtin/notes.c:869
 msgid "Committing unmerged notes"
-msgstr ""
+msgstr "提交未合并的注解"
 
-#: builtin/notes.c:872
+#: builtin/notes.c:871
 msgid "finalize notes merge by committing unmerged notes"
-msgstr ""
+msgstr "通过提交未合并的注解来完成注解合并"
 
-#: builtin/notes.c:874
+#: builtin/notes.c:873
 msgid "Aborting notes merge resolution"
-msgstr ""
+msgstr "中止注解合并的方案"
 
-#: builtin/notes.c:876
-#, fuzzy
+#: builtin/notes.c:875
 msgid "abort notes merge"
-msgstr "path '%s':无法合并"
+msgstr "中止注解合并"
 
-#: builtin/notes.c:971
+#: builtin/notes.c:970
 #, c-format
 msgid "Object %s has no note\n"
 msgstr "对象 %s 没有注解\n"
 
-#: builtin/notes.c:983
+#: builtin/notes.c:982
 msgid "attempt to remove non-existent note is not an error"
-msgstr ""
+msgstr "尝试删除不存在的注解不是一个错误"
 
-#: builtin/notes.c:986
-#, fuzzy
+#: builtin/notes.c:985
 msgid "read object names from the standard input"
-msgstr "(正从标准输入中读取日志信息)\n"
+msgstr "从标准输入读取对象名称"
 
-#: builtin/notes.c:1067
+#: builtin/notes.c:1066
 msgid "notes_ref"
-msgstr ""
+msgstr "注解引用"
 
-#: builtin/notes.c:1068
+#: builtin/notes.c:1067
 msgid "use notes from <notes_ref>"
-msgstr ""
+msgstr "从 <注解引用> 使用注解"
 
-#: builtin/notes.c:1103 builtin/remote.c:1598
+#: builtin/notes.c:1102 builtin/remote.c:1598
 #, c-format
 msgid "Unknown subcommand: %s"
 msgstr "未知子命令:%s"
 
 #: builtin/pack-objects.c:23
 msgid "git pack-objects --stdout [options...] [< ref-list | < object-list]"
-msgstr ""
+msgstr "git pack-objects --stdout [选项...] [< 引用列表 | < 对象列表]"
 
 #: builtin/pack-objects.c:24
 msgid "git pack-objects [options...] base-name [< ref-list | < object-list]"
-msgstr ""
+msgstr "git pack-objects [选项...] base-name [< 引用列表 | < 对象列表]"
 
 #: builtin/pack-objects.c:183 builtin/pack-objects.c:186
 #, c-format
 msgid "deflate error (%d)"
 msgstr "压缩错误 (%d)"
 
-#: builtin/pack-objects.c:2398
+#: builtin/pack-objects.c:2397
 #, c-format
 msgid "unsupported index version %s"
 msgstr "不支持的索引版本 %s"
 
-#: builtin/pack-objects.c:2402
+#: builtin/pack-objects.c:2401
 #, c-format
 msgid "bad index version '%s'"
 msgstr "坏的索引版本 '%s'"
 
-#: builtin/pack-objects.c:2425
+#: builtin/pack-objects.c:2424
 #, c-format
 msgid "option %s does not accept negative form"
 msgstr "选项 %s 不接受否定格式"
 
-#: builtin/pack-objects.c:2429
+#: builtin/pack-objects.c:2428
 #, c-format
 msgid "unable to parse value '%s' for option %s"
 msgstr "不能解析选项 %1$s 的值 '%2$s'"
 
-#: builtin/pack-objects.c:2448
+#: builtin/pack-objects.c:2447
 msgid "do not show progress meter"
-msgstr ""
+msgstr "不显示进度表"
 
-#: builtin/pack-objects.c:2450
+#: builtin/pack-objects.c:2449
 msgid "show progress meter"
-msgstr ""
+msgstr "显示进度表"
 
-#: builtin/pack-objects.c:2452
+#: builtin/pack-objects.c:2451
 msgid "show progress meter during object writing phase"
-msgstr ""
+msgstr "在对象写入阶段显示进度表"
 
-#: builtin/pack-objects.c:2455
+#: builtin/pack-objects.c:2454
 msgid "similar to --all-progress when progress meter is shown"
-msgstr ""
+msgstr "当进度表显示时类似于 --all-progress"
 
-#: builtin/pack-objects.c:2456
+#: builtin/pack-objects.c:2455
 msgid "version[,offset]"
-msgstr ""
+msgstr "版本[,偏移]"
 
-#: builtin/pack-objects.c:2457
+#: builtin/pack-objects.c:2456
 msgid "write the pack index file in the specified idx format version"
-msgstr ""
+msgstr "用指定的 idx 格式版本来写包索引文件"
 
-#: builtin/pack-objects.c:2460
-#, fuzzy
+#: builtin/pack-objects.c:2459
 msgid "maximum size of each output pack file"
-msgstr "æ\97 æ³\95å\88\9b建è¾\93å\87ºæ\96\87件"
+msgstr "æ¯\8f个è¾\93å\87ºå\8c\85ç\9a\84æ\9c\80大尺寸"
 
-#: builtin/pack-objects.c:2462
+#: builtin/pack-objects.c:2461
 msgid "ignore borrowed objects from alternate object store"
-msgstr ""
+msgstr "忽略从替代对象存储里借用对象"
 
-#: builtin/pack-objects.c:2464
-#, fuzzy
+#: builtin/pack-objects.c:2463
 msgid "ignore packed objects"
-msgstr "不能读取对象 %s"
+msgstr "忽略包对象"
 
-#: builtin/pack-objects.c:2466
+#: builtin/pack-objects.c:2465
 msgid "limit pack window by objects"
-msgstr ""
+msgstr "限制打包窗口的对象数"
 
-#: builtin/pack-objects.c:2468
+#: builtin/pack-objects.c:2467
 msgid "limit pack window by memory in addition to object limit"
-msgstr ""
+msgstr "除对象数量限制外设置打包窗口的内存限制"
 
-#: builtin/pack-objects.c:2470
+#: builtin/pack-objects.c:2469
 msgid "maximum length of delta chain allowed in the resulting pack"
-msgstr ""
+msgstr "打包允许的 delta 链的最大长度"
 
-#: builtin/pack-objects.c:2472
-#, fuzzy
+#: builtin/pack-objects.c:2471
 msgid "reuse existing deltas"
-msgstr "处理 delta 中"
+msgstr "重用已存在的 deltas"
 
-#: builtin/pack-objects.c:2474
-#, fuzzy
+#: builtin/pack-objects.c:2473
 msgid "reuse existing objects"
-msgstr "不能读取现存对象 %s"
+msgstr "重用已存在的对象"
 
-#: builtin/pack-objects.c:2476
+#: builtin/pack-objects.c:2475
 msgid "use OFS_DELTA objects"
-msgstr ""
+msgstr "使用 OFS_DELTA 对象"
 
-#: builtin/pack-objects.c:2478
+#: builtin/pack-objects.c:2477
 msgid "use threads when searching for best delta matches"
-msgstr ""
+msgstr "使用线程查询最佳 delta 匹配"
 
-#: builtin/pack-objects.c:2480
+#: builtin/pack-objects.c:2479
 msgid "do not create an empty pack output"
-msgstr ""
+msgstr "不创建空的包输出"
 
-#: builtin/pack-objects.c:2482
-#, fuzzy
+#: builtin/pack-objects.c:2481
 msgid "read revision arguments from standard input"
-msgstr "(正从标准输入中读取日志信息)\n"
+msgstr "从标准输入读取修订号参数"
 
-#: builtin/pack-objects.c:2484
+#: builtin/pack-objects.c:2483
 msgid "limit the objects to those that are not yet packed"
-msgstr ""
+msgstr "限制那些尚未打包的对象"
 
-#: builtin/pack-objects.c:2487
+#: builtin/pack-objects.c:2486
 msgid "include objects reachable from any reference"
-msgstr ""
+msgstr "包括可以从任何引用访问到的对象"
 
-#: builtin/pack-objects.c:2490
+#: builtin/pack-objects.c:2489
 msgid "include objects referred by reflog entries"
-msgstr ""
+msgstr "包括被引用日志引用到的对象"
 
-#: builtin/pack-objects.c:2493
+#: builtin/pack-objects.c:2492
 msgid "output pack to stdout"
-msgstr ""
+msgstr "输出包到标准输出"
 
-#: builtin/pack-objects.c:2495
+#: builtin/pack-objects.c:2494
 msgid "include tag objects that refer to objects to be packed"
-msgstr ""
+msgstr "包括引用了打包对象的 tag"
 
-#: builtin/pack-objects.c:2497
+#: builtin/pack-objects.c:2496
 msgid "keep unreachable objects"
-msgstr ""
+msgstr "维持不可达的对象"
 
-#: builtin/pack-objects.c:2498 parse-options.h:141
+#: builtin/pack-objects.c:2497 parse-options.h:141
 msgid "time"
 msgstr "时间"
 
-#: builtin/pack-objects.c:2499
+#: builtin/pack-objects.c:2498
 msgid "unpack unreachable objects newer than <time>"
-msgstr ""
+msgstr "将比给定 <时间> 新的无法访问的对象解包"
 
-#: builtin/pack-objects.c:2502
+#: builtin/pack-objects.c:2501
 msgid "create thin packs"
-msgstr ""
+msgstr "创建精简包"
 
-#: builtin/pack-objects.c:2504
+#: builtin/pack-objects.c:2503
 msgid "ignore packs that have companion .keep file"
-msgstr ""
+msgstr "忽略配有 .keep 文件的包"
 
-#: builtin/pack-objects.c:2506
+#: builtin/pack-objects.c:2505
 msgid "pack compression level"
-msgstr ""
+msgstr "打包压缩级别"
 
-#: builtin/pack-objects.c:2508
-#, fuzzy
+#: builtin/pack-objects.c:2507
 msgid "do not hide commits by grafts"
-msgstr "不能写提交模版"
+msgstr "不隐藏移植覆盖的提交"
 
 #: builtin/pack-refs.c:6
 msgid "git pack-refs [options]"
-msgstr ""
+msgstr "git pack-refs [选项]"
 
 #: builtin/pack-refs.c:14
 msgid "pack everything"
-msgstr ""
+msgstr "打包一切"
 
 #: builtin/pack-refs.c:15
 msgid "prune loose refs (default)"
-msgstr ""
+msgstr "清除松散的引用(默认)"
 
 #: builtin/prune-packed.c:7
 msgid "git prune-packed [-n|--dry-run] [-q|--quiet]"
-msgstr ""
+msgstr "git prune-packed [-n|--dry-run] [-q|--quiet]"
 
 #: builtin/prune.c:12
 msgid "git prune [-n] [-v] [--expire <time>] [--] [<head>...]"
-msgstr ""
+msgstr "git prune [-n] [-v] [--expire <时间>] [--] [<头>...]"
 
 #: builtin/prune.c:132
-#, fuzzy
 msgid "do not remove, show only"
-msgstr "不会删除 %s\n"
+msgstr "不删除,只显示"
 
 #: builtin/prune.c:133
-#, fuzzy
 msgid "report pruned objects"
-msgstr "不能读取对象 %s"
+msgstr "报告清除的对象"
 
 #: builtin/prune.c:136
 msgid "expire objects older than <time>"
-msgstr ""
+msgstr "使早于给定时间的对象过期"
 
 #: builtin/push.c:14
-#, fuzzy
 msgid "git push [<options>] [<repository> [<refspec>...]]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git push [<选项>] [<版本库> [<引用表达式>...]]"
 
 #: builtin/push.c:45
 msgid "tag shorthand without <tag>"
@@ -6983,22 +7038,48 @@ msgstr ""
 "检出该分支并与远程变更合并(如 'git pull'),然后再推送。详见\n"
 "'git push --help' 中的 'Note about fast-forwards' 小节。"
 
-#: builtin/push.c:258
+#: builtin/push.c:224
+msgid ""
+"Updates were rejected because the remote contains work that you do\n"
+"not have locally. This is usually caused by another repository pushing\n"
+"to the same ref. You may want to first merge the remote changes (e.g.,\n"
+"'git pull') before pushing again.\n"
+"See the 'Note about fast-forwards' in 'git push --help' for details."
+msgstr ""
+"更新被拒绝,因为远程版本库包含您本地尚不存在的提交。这通常是因为另外\n"
+"一个版本库已推送了相同的引用。再次推送前,您可能需要先合并远程变更\n"
+"(如 'git pull')。\n"
+"详见 'git push --help' 中的 'Note about fast-forwards' 小节。"
+
+#: builtin/push.c:231
+msgid "Updates were rejected because the tag already exists in the remote."
+msgstr "更新被拒绝因为 tag 在远程已经存在。"
+
+#: builtin/push.c:234
+msgid ""
+"You cannot update a remote ref that points at a non-commit object,\n"
+"or update a remote ref to make it point at a non-commit object,\n"
+"without using the '--force' option.\n"
+msgstr ""
+"如果不使用 '--force' 参数,您不能更新一个指向非提交对象的远程引用,\n"
+"也不能更新远程引用让其指向一个非提交对象。\n"
+
+#: builtin/push.c:294
 #, c-format
 msgid "Pushing to %s\n"
 msgstr "推送到 %s\n"
 
-#: builtin/push.c:262
+#: builtin/push.c:298
 #, c-format
 msgid "failed to push some refs to '%s'"
 msgstr "无法推送一些引用到 '%s'"
 
-#: builtin/push.c:294
+#: builtin/push.c:331
 #, c-format
 msgid "bad repository '%s'"
 msgstr "坏的版本库 '%s'"
 
-#: builtin/push.c:295
+#: builtin/push.c:332
 msgid ""
 "No configured push destination.\n"
 "Either specify the URL from the command-line or configure a remote "
@@ -7011,7 +7092,7 @@ msgid ""
 "    git push <name>\n"
 msgstr ""
 "没有配置推送目标。\n"
-"或者通过命令行指定URL,或者用下面命令配置一个远程版本库\n"
+"或通过命令行指定URL,或用下面命令配置一个远程版本库\n"
 "\n"
 "    git remote add <name> <url>\n"
 "\n"
@@ -7019,82 +7100,83 @@ msgstr ""
 "\n"
 "    git push <name>\n"
 
-#: builtin/push.c:310
+#: builtin/push.c:347
 msgid "--all and --tags are incompatible"
 msgstr "--all 和 --tags 不兼容"
 
-#: builtin/push.c:311
+#: builtin/push.c:348
 msgid "--all can't be combined with refspecs"
 msgstr "--all 不能和引用表达式同时使用"
 
-#: builtin/push.c:316
+#: builtin/push.c:353
 msgid "--mirror and --tags are incompatible"
 msgstr "--mirror 和 --tags 不兼容"
 
-#: builtin/push.c:317
+#: builtin/push.c:354
 msgid "--mirror can't be combined with refspecs"
 msgstr "--mirror 不能和引用表达式同时使用"
 
-#: builtin/push.c:322
+#: builtin/push.c:359
 msgid "--all and --mirror are incompatible"
 msgstr "--all 和 --mirror 不兼容"
 
-#: builtin/push.c:382
-#, fuzzy
+#: builtin/push.c:419
 msgid "repository"
-msgstr "坏的版本库 '%s'"
+msgstr "版本库"
 
-#: builtin/push.c:383
+#: builtin/push.c:420
 msgid "push all refs"
-msgstr ""
+msgstr "推送所有引用"
 
-#: builtin/push.c:384
+#: builtin/push.c:421
 msgid "mirror all refs"
-msgstr ""
+msgstr "镜像所有引用"
 
-#: builtin/push.c:386
-#, fuzzy
+#: builtin/push.c:423
 msgid "delete refs"
-msgstr "删除"
+msgstr "删除引用"
 
-#: builtin/push.c:387
+#: builtin/push.c:424
 msgid "push tags (can't be used with --all or --mirror)"
-msgstr ""
+msgstr "推送 tags(不能使用 --all or --mirror)"
 
-#: builtin/push.c:390
-#, fuzzy
+#: builtin/push.c:427
 msgid "force updates"
 msgstr "强制更新"
 
-#: builtin/push.c:391
+#: builtin/push.c:428
 msgid "check"
-msgstr ""
+msgstr "检查"
 
-#: builtin/push.c:392
+#: builtin/push.c:429
 msgid "control recursive pushing of submodules"
-msgstr ""
+msgstr "控制子模组的递归推送"
 
-#: builtin/push.c:394
+#: builtin/push.c:431
 msgid "use thin pack"
-msgstr ""
+msgstr "使用精简打包"
 
-#: builtin/push.c:395 builtin/push.c:396
+#: builtin/push.c:432 builtin/push.c:433
 msgid "receive pack program"
-msgstr ""
+msgstr "接收包程序"
 
-#: builtin/push.c:397
+#: builtin/push.c:434
 msgid "set upstream for git pull/status"
-msgstr ""
+msgstr "设置 git pull/status 的上游"
 
-#: builtin/push.c:400
+#: builtin/push.c:437
 msgid "prune locally removed refs"
-msgstr ""
+msgstr "清除本地删除的引用"
 
-#: builtin/push.c:410
+#: builtin/push.c:439
+msgid "bypass pre-push hook"
+msgstr "绕过 pre-push 钩子"
+
+#: builtin/push.c:448
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr "--delete 与 --all、--mirror 及 --tags 不兼容"
 
-#: builtin/push.c:412
+#: builtin/push.c:450
 msgid "--delete doesn't make sense without any refs"
 msgstr "--delete 未接任何引用没有意义"
 
@@ -7104,155 +7186,150 @@ msgid ""
 "[-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--"
 "index-output=<file>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
 msgstr ""
+"git read-tree [[-m [--trivial] [--aggressive] | --reset | --prefix=<前缀>] [-"
+"u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--"
+"index-output=<文件>] (--empty | <树或提交1> [<树或提交2> [<树或提交3>]])"
 
 #: builtin/read-tree.c:108
-#, fuzzy
 msgid "write resulting index to <file>"
-msgstr "损坏的索引文件"
+msgstr "将索引结果写入 <file>"
 
 #: builtin/read-tree.c:111
-#, fuzzy
 msgid "only empty the index"
-msgstr "不能读取索引"
+msgstr "只是清空索引"
 
 #: builtin/read-tree.c:113
-#, fuzzy
 msgid "Merging"
-msgstr "合并"
+msgstr "合并"
 
 #: builtin/read-tree.c:115
 msgid "perform a merge in addition to a read"
-msgstr ""
+msgstr "读取之余再执行一个合并"
 
 #: builtin/read-tree.c:117
 msgid "3-way merge if no file level merging required"
-msgstr ""
+msgstr "如果没有文件级合并需要,执行三路合并"
 
 #: builtin/read-tree.c:119
 msgid "3-way merge in presence of adds and removes"
-msgstr ""
+msgstr "存在添加和删除时,也执行三路合并"
 
 #: builtin/read-tree.c:121
 msgid "same as -m, but discard unmerged entries"
-msgstr ""
+msgstr "类似于 -m,但丢弃未合并的条目"
 
 #: builtin/read-tree.c:122
-#, fuzzy
 msgid "<subdirectory>/"
-msgstr "目录/文件"
+msgstr "<子目录>/"
 
 #: builtin/read-tree.c:123
 msgid "read the tree into the index under <subdirectory>/"
-msgstr ""
+msgstr "读取树对象到索引的 <子目录>/ 下"
 
 #: builtin/read-tree.c:126
 msgid "update working tree with merge result"
-msgstr ""
+msgstr "用合并的结果更新工作区"
 
 #: builtin/read-tree.c:128
-#, fuzzy
 msgid "gitignore"
-msgstr "忽略的"
+msgstr "gitignore"
 
 #: builtin/read-tree.c:129
 msgid "allow explicitly ignored files to be overwritten"
-msgstr ""
+msgstr "允许忽略文件中设定的文件可以被覆盖"
 
 #: builtin/read-tree.c:132
-#, fuzzy
 msgid "don't check the working tree after merging"
-msgstr "显示工作区状态"
+msgstr "合并后不检查工作区"
 
 #: builtin/read-tree.c:133
 msgid "don't update the index or the work tree"
-msgstr ""
+msgstr "不更新索引区和工作区"
 
 #: builtin/read-tree.c:135
 msgid "skip applying sparse checkout filter"
-msgstr ""
+msgstr "跳过应用稀疏检出过滤器"
 
 #: builtin/read-tree.c:137
 msgid "debug unpack-trees"
-msgstr ""
+msgstr "调试 unpack-trees"
 
 #: builtin/remote.c:11
 msgid "git remote [-v | --verbose]"
-msgstr ""
+msgstr "git remote [-v | --verbose]"
 
 #: builtin/remote.c:12
 msgid ""
 "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>"
 
 #: builtin/remote.c:13 builtin/remote.c:32
 msgid "git remote rename <old> <new>"
-msgstr ""
+msgstr "git remote rename <旧名称> <新名称>"
 
 #: builtin/remote.c:14 builtin/remote.c:37
 msgid "git remote remove <name>"
-msgstr ""
+msgstr "git remote remove <名称>"
 
-#: builtin/remote.c:15
+#: builtin/remote.c:15 builtin/remote.c:42
 msgid "git remote set-head <name> (-a | -d | <branch>)"
-msgstr ""
+msgstr "git remote set-head <名称> (-a | -d | <分支>)"
 
 #: builtin/remote.c:16
 msgid "git remote [-v | --verbose] show [-n] <name>"
-msgstr ""
+msgstr "git remote [-v | --verbose] show [-n] <名称>"
 
 #: builtin/remote.c:17
 msgid "git remote prune [-n | --dry-run] <name>"
-msgstr ""
+msgstr "git remote prune [-n | --dry-run] <名称>"
 
 #: builtin/remote.c:18
 msgid ""
 "git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)...]"
-msgstr ""
+msgstr "git remote [-v | --verbose] update [-p | --prune] [(<组> | <远程>)...]"
 
 #: builtin/remote.c:19
 msgid "git remote set-branches [--add] <name> <branch>..."
-msgstr ""
+msgstr "git remote set-branches [--add] <名称> <分支>..."
 
 #: builtin/remote.c:20 builtin/remote.c:68
 msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
-msgstr ""
+msgstr "git remote set-url [--push] <名称> <新的地址> [<旧的地址>]"
 
 #: builtin/remote.c:21 builtin/remote.c:69
 msgid "git remote set-url --add <name> <newurl>"
-msgstr ""
+msgstr "git remote set-url --add <名称> <新的地址>"
 
 #: builtin/remote.c:22 builtin/remote.c:70
 msgid "git remote set-url --delete <name> <url>"
-msgstr ""
+msgstr "git remote set-url --delete <名称> <地址>"
 
 #: builtin/remote.c:27
 msgid "git remote add [<options>] <name> <url>"
-msgstr ""
-
-#: builtin/remote.c:42
-msgid "git remote set-head <name> (-a | -d | <branch>])"
-msgstr ""
+msgstr "git remote add [<选项>] <名称> <地址>"
 
 #: builtin/remote.c:47
 msgid "git remote set-branches <name> <branch>..."
-msgstr ""
+msgstr "git remote set-branches <名称> <分支>..."
 
 #: builtin/remote.c:48
 msgid "git remote set-branches --add <name> <branch>..."
-msgstr ""
+msgstr "git remote set-branches --add <名称> <分支>..."
 
 #: builtin/remote.c:53
 msgid "git remote show [<options>] <name>"
-msgstr ""
+msgstr "git remote show [<选项>] <名称>"
 
 #: builtin/remote.c:58
 msgid "git remote prune [<options>] <name>"
-msgstr ""
+msgstr "git remote prune [<选项>] <名称>"
 
 #: builtin/remote.c:63
 msgid "git remote update [<options>] [<group> | <remote>]..."
-msgstr ""
+msgstr "git remote update [<选项>] [<组> | <远程>]..."
 
 #: builtin/remote.c:98
 #, c-format
@@ -7273,34 +7350,32 @@ msgid "unknown mirror argument: %s"
 msgstr "未知的镜像参数:%s"
 
 #: builtin/remote.c:163
-#, fuzzy
 msgid "fetch the remote branches"
-msgstr "  远程分支:%s"
+msgstr "抓取远程的分支"
 
 #: builtin/remote.c:165
 msgid "import all tags and associated objects when fetching"
-msgstr ""
+msgstr "抓取时导入所有的 tags 和关联对象"
 
 #: builtin/remote.c:168
 msgid "or do not fetch any tag at all (--no-tags)"
-msgstr ""
+msgstr "或不抓取任何 tag(--no-tags)"
 
 #: builtin/remote.c:170
 msgid "branch(es) to track"
-msgstr ""
+msgstr "跟踪的分支"
 
 #: builtin/remote.c:171
-#, fuzzy
 msgid "master branch"
-msgstr "  远程分支:%s"
+msgstr "主线分支"
 
 #: builtin/remote.c:172
 msgid "push|fetch"
-msgstr ""
+msgstr "push|fetch"
 
 #: builtin/remote.c:173
 msgid "set up remote as a mirror to push to or fetch from"
-msgstr ""
+msgstr "把远程设置为用以推送或抓取的镜像"
 
 #: builtin/remote.c:185
 msgid "specifying a master branch makes no sense with --mirror"
@@ -7495,9 +7570,8 @@ msgid "    %-*s pushes to %s"
 msgstr "    %-*s 推送至 %s"
 
 #: builtin/remote.c:1091
-#, fuzzy
 msgid "do not query remotes"
-msgstr "不会删除 %s\n"
+msgstr "不查询远程"
 
 #: builtin/remote.c:1118
 #, c-format
@@ -7560,11 +7634,11 @@ msgstr[1] "  为 'git push' 配置的本地引用%s:"
 
 #: builtin/remote.c:1199
 msgid "set refs/remotes/<name>/HEAD according to remote"
-msgstr ""
+msgstr "根据远程设置 refs/remotes/<名称>/HEAD"
 
 #: builtin/remote.c:1201
 msgid "delete refs/remotes/<name>/HEAD"
-msgstr ""
+msgstr "删除 refs/remotes/<名称>/HEAD"
 
 #: builtin/remote.c:1216
 msgid "Cannot determine remote HEAD"
@@ -7593,13 +7667,13 @@ msgstr "不能设置 %s"
 #: builtin/remote.c:1274
 #, c-format
 msgid " %s will become dangling!"
-msgstr " %s å°\86æ\88\90为æ\82¬ç©º状态!"
+msgstr " %s å°\86æ\88\90为æ\91\87æ\91\86状态!"
 
 #  译者:注意保持前导空格
 #: builtin/remote.c:1275
 #, c-format
 msgid " %s has become dangling!"
-msgstr " %s å·²æ\88\90为æ\82¬ç©º状态!"
+msgstr " %s å·²æ\88\90为æ\91\87æ\91\86状态!"
 
 #: builtin/remote.c:1281
 #, c-format
@@ -7623,7 +7697,7 @@ msgstr " * [已删除] %s"
 
 #: builtin/remote.c:1321
 msgid "prune remotes after fetching"
-msgstr ""
+msgstr "抓取后清除远程"
 
 #: builtin/remote.c:1387 builtin/remote.c:1461
 #, c-format
@@ -7631,9 +7705,8 @@ msgid "No such remote '%s'"
 msgstr "没有此远程 '%s'"
 
 #: builtin/remote.c:1407
-#, fuzzy
 msgid "add branch"
-msgstr "位于分支 "
+msgstr "添加分支"
 
 #: builtin/remote.c:1414
 msgid "no remote specified"
@@ -7641,16 +7714,15 @@ msgstr "未指定远程"
 
 #: builtin/remote.c:1436
 msgid "manipulate push URLs"
-msgstr ""
+msgstr "操作推送 URLS"
 
 #: builtin/remote.c:1438
 msgid "add URL"
-msgstr ""
+msgstr "添加 URL"
 
 #: builtin/remote.c:1440
-#, fuzzy
 msgid "delete URLs"
-msgstr "删除"
+msgstr "删除 URLS"
 
 #: builtin/remote.c:1447
 msgid "--add --delete doesn't make sense"
@@ -7672,53 +7744,52 @@ msgstr "将不会删除所有非推送URL地址"
 
 #: builtin/remote.c:1569
 msgid "be verbose; must be placed before a subcommand"
-msgstr ""
+msgstr "冗长输出;必须置于子命令之前"
 
 #: builtin/replace.c:17
 msgid "git replace [-f] <object> <replacement>"
-msgstr ""
+msgstr "git replace [-f] <对象> <替换物>"
 
 #: builtin/replace.c:18
 msgid "git replace -d <object>..."
-msgstr ""
+msgstr "git replace -d <对象>..."
 
 #: builtin/replace.c:19
 msgid "git replace -l [<pattern>]"
-msgstr ""
+msgstr "git replace -l [<模式>]"
 
-#: builtin/replace.c:118
+#: builtin/replace.c:121
 msgid "list replace refs"
-msgstr ""
+msgstr "列出替换的引用"
 
-#: builtin/replace.c:119
+#: builtin/replace.c:122
 msgid "delete replace refs"
-msgstr ""
+msgstr "删除替换的引用"
 
-#: builtin/replace.c:120
+#: builtin/replace.c:123
 msgid "replace the ref if it exists"
-msgstr ""
+msgstr "如果存在则替换引用"
 
 #: builtin/rerere.c:11
 msgid "git rerere [clear | forget path... | status | remaining | diff | gc]"
-msgstr ""
+msgstr "git rerere [clear | forget path... | status | remaining | diff | gc]"
 
 #: builtin/rerere.c:56
-#, fuzzy
 msgid "register clean resolutions in index"
-msgstr "%s:已经存在于索引中"
+msgstr "在索引中注册干净的解决方案"
 
 #: builtin/reset.c:25
 msgid ""
 "git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
-msgstr ""
+msgstr "git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<提交>]"
 
 #: builtin/reset.c:26
-msgid "git reset [-q] <commit> [--] <paths>..."
-msgstr ""
+msgid "git reset [-q] <tree-ish> [--] <paths>..."
+msgstr "git reset [-q] <树或提交> [--] <路径>..."
 
 #: builtin/reset.c:27
-msgid "git reset --patch [<commit>] [--] [<paths>...]"
-msgstr ""
+msgid "git reset --patch [<tree-ish>] [--] [<paths>...]"
+msgstr "git reset --patch [<树或提交>] [--] [<路径>...]"
 
 #: builtin/reset.c:33
 msgid "mixed"
@@ -7740,104 +7811,109 @@ msgstr "合并"
 msgid "keep"
 msgstr "保持"
 
-#: builtin/reset.c:77
+#: builtin/reset.c:73
 msgid "You do not have a valid HEAD."
 msgstr "您没有一个有效的 HEAD。"
 
-#: builtin/reset.c:79
+#: builtin/reset.c:75
 msgid "Failed to find tree of HEAD."
 msgstr "无法找到 HEAD 指向的树。"
 
-#: builtin/reset.c:85
+#: builtin/reset.c:81
 #, c-format
 msgid "Failed to find tree of %s."
 msgstr "无法找到 %s 指向的树。"
 
-#: builtin/reset.c:96
-msgid "Could not write new index file."
-msgstr "不能写入新的索引文件。"
-
-#: builtin/reset.c:106
+#: builtin/reset.c:98
 #, c-format
 msgid "HEAD is now at %s"
 msgstr "HEAD 现在位于 %s"
 
-#: builtin/reset.c:130
-msgid "Could not read index"
-msgstr "不能读取索引"
-
-#: builtin/reset.c:133
-msgid "Unstaged changes after reset:"
-msgstr "重置后撤出暂存区的变更:"
-
 #  译者:汉字之间无空格,故删除%s前后空格
-#: builtin/reset.c:223
+#: builtin/reset.c:169
 #, c-format
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr "在合并过程中不能做%s重置操作。"
 
-#: builtin/reset.c:238
+#: builtin/reset.c:248
 msgid "be quiet, only report errors"
-msgstr ""
+msgstr "安静模式,只报告错误"
 
-#: builtin/reset.c:240
+#: builtin/reset.c:250
 msgid "reset HEAD and index"
-msgstr ""
+msgstr "重置 HEAD 和索引"
 
-#: builtin/reset.c:241
+#: builtin/reset.c:251
 msgid "reset only HEAD"
-msgstr ""
+msgstr "只重置 HEAD"
 
-#: builtin/reset.c:243 builtin/reset.c:245
+#: builtin/reset.c:253 builtin/reset.c:255
 msgid "reset HEAD, index and working tree"
-msgstr ""
+msgstr "重置 HEAD、索引和工作区"
 
-#: builtin/reset.c:247
+#: builtin/reset.c:257
 msgid "reset HEAD but keep local changes"
-msgstr ""
+msgstr "重置 HEAD 但保存本地变更"
 
-#: builtin/reset.c:303
+#: builtin/reset.c:275
+#, c-format
+msgid "Failed to resolve '%s' as a valid revision."
+msgstr "无法将 '%s' 解析为一个有效的版本。"
+
+#: builtin/reset.c:278 builtin/reset.c:286
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "不能解析对象 '%s'。"
 
-#: builtin/reset.c:308
+#: builtin/reset.c:283
+#, c-format
+msgid "Failed to resolve '%s' as a valid tree."
+msgstr "无法将 '%s' 解析为一个有效的树对象。"
+
+#: builtin/reset.c:292
 msgid "--patch is incompatible with --{hard,mixed,soft}"
-msgstr "--patch 与 --{hard,mixed,soft} 不兼容"
+msgstr "--patch 与 --{hard、mixed、soft} 选项不兼容"
 
-#: builtin/reset.c:317
+#: builtin/reset.c:301
 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
 msgstr "--mixed 带路径已弃用,而是用 'git reset -- <paths>'。"
 
 #  译者:汉字之间无空格,故删除%s前后空格
-#: builtin/reset.c:319
+#: builtin/reset.c:303
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr "不能带路径进行%s重置。"
 
 #  译者:汉字之间无空格,故删除%s前后空格
-#: builtin/reset.c:331
+#: builtin/reset.c:313
 #, c-format
 msgid "%s reset is not allowed in a bare repository"
 msgstr "不能对裸版本库进行%s重置"
 
-#: builtin/reset.c:347
+#: builtin/reset.c:333
 #, c-format
 msgid "Could not reset index file to revision '%s'."
 msgstr "不能重置索引文件至版本 '%s'。"
 
+#: builtin/reset.c:339
+msgid "Unstaged changes after reset:"
+msgstr "重置后撤出暂存区的变更:"
+
+#: builtin/reset.c:344
+msgid "Could not write new index file."
+msgstr "不能写入新的索引文件。"
+
 #: builtin/rev-parse.c:339
-#, fuzzy
 msgid "git rev-parse --parseopt [options] -- [<args>...]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git rev-parse --parseopt [选项] -- [<参数>...]"
 
 #: builtin/rev-parse.c:344
 msgid "keep the `--` passed as an arg"
-msgstr ""
+msgstr "保持 `--` 作为一个参数传递"
 
 #: builtin/rev-parse.c:346
 msgid "stop parsing after the first non-option argument"
-msgstr ""
+msgstr "遇到第一个非选项参数后停止解析"
 
 #: builtin/rev-parse.c:464
 msgid ""
@@ -7847,23 +7923,27 @@ msgid ""
 "\n"
 "Run \"git rev-parse --parseopt -h\" for more information on the first usage."
 msgstr ""
+"git rev-parse --parseopt [选项] -- [<参数>...]\n"
+"   或者:git rev-parse --sq-quote [<选项>...]\n"
+"   或者:git rev-parse [options] [<选项>...]\n"
+"\n"
+"初次使用时执行 \"git rev-parse --parseopt -h\" 来获得更多信息。"
 
 #: builtin/revert.c:22
 msgid "git revert [options] <commit-ish>"
-msgstr ""
+msgstr "git revert [选项] <提交号>"
 
 #: builtin/revert.c:23
 msgid "git revert <subcommand>"
-msgstr ""
+msgstr "git revert <子命令>"
 
 #: builtin/revert.c:28
 msgid "git cherry-pick [options] <commit-ish>"
-msgstr ""
+msgstr "git cherry-pick [选项] <提交号>"
 
 #: builtin/revert.c:29
-#, fuzzy
 msgid "git cherry-pick <subcommand>"
-msgstr "拣选失败"
+msgstr "git cherry-pick <子命令>"
 
 #: builtin/revert.c:70 builtin/revert.c:92
 #, c-format
@@ -7872,68 +7952,59 @@ msgstr "%s:%s 不能和 %s 同时使用"
 
 #: builtin/revert.c:103
 msgid "end revert or cherry-pick sequence"
-msgstr ""
+msgstr "终止反转或拣选操作"
 
 #: builtin/revert.c:104
 msgid "resume revert or cherry-pick sequence"
-msgstr ""
+msgstr "继续反转或拣选操作"
 
 #: builtin/revert.c:105
 msgid "cancel revert or cherry-pick sequence"
-msgstr ""
+msgstr "取消反转或拣选操作"
 
 #: builtin/revert.c:106
-#, fuzzy
 msgid "don't automatically commit"
-msgstr "ä¸\8dè\83½ä½\9c为å\88\9då§\8bæ\8f\90交è¿\98å\8e\9f"
+msgstr "ä¸\8dè¦\81è\87ªå\8a¨æ\8f\90交"
 
 #: builtin/revert.c:107
-#, fuzzy
 msgid "edit the commit message"
-msgstr "空æ\8f\90交信æ\81¯ã\80\82"
+msgstr "ç¼\96è¾\91æ\8f\90交说æ\98\8e"
 
 #: builtin/revert.c:110
 msgid "parent number"
-msgstr ""
+msgstr "父编号"
 
 #: builtin/revert.c:112
-#, fuzzy
 msgid "merge strategy"
-msgstr "å°\9dè¯\95å\90\88并ç­\96ç\95¥ %s...\n"
+msgstr "å\90\88并ç­\96ç\95¥"
 
 #: builtin/revert.c:113
-#, fuzzy
 msgid "option"
-msgstr "动作"
+msgstr "选项"
 
 #: builtin/revert.c:114
-#, fuzzy
 msgid "option for merge strategy"
-msgstr "å°\9dè¯\95å\90\88并ç­\96ç\95¥ %s...\n"
+msgstr "å\90\88并ç­\96ç\95¥ç\9a\84é\80\89项"
 
 #: builtin/revert.c:125
 msgid "append commit name"
-msgstr ""
+msgstr "追加提交名称"
 
 #: builtin/revert.c:126
-#, fuzzy
 msgid "allow fast-forward"
-msgstr "(非快进式)"
+msgstr "允许快进式"
 
 #: builtin/revert.c:127
-#, fuzzy
 msgid "preserve initially empty commits"
-msgstr "ä¸\8dè\83½ä½\9c为å\88\9då§\8bæ\8f\90交è¿\98å\8e\9f"
+msgstr "ä¿\9dç\95\99å\88\9då§\8bå\8c\96ç\9a\84空æ\8f\90交"
 
 #: builtin/revert.c:128
-#, fuzzy
 msgid "allow commits with empty messages"
-msgstr "提交说明为空"
+msgstr "允许提交说明为空"
 
 #: builtin/revert.c:129
-#, fuzzy
 msgid "keep redundant, empty commits"
-msgstr "合并未返回提交"
+msgstr "保持多余的、空的提交"
 
 #: builtin/revert.c:133
 msgid "program error"
@@ -7947,12 +8018,20 @@ msgstr "还原失败"
 msgid "cherry-pick failed"
 msgstr "拣选失败"
 
-#: builtin/rm.c:14
-#, fuzzy
+#: builtin/rm.c:15
 msgid "git rm [options] [--] <file>..."
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git rm [选项] [--] <文件>..."
+
+#: builtin/rm.c:64 builtin/rm.c:186
+#, c-format
+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' 命令如果您真的想删除它及其全部历史)"
 
-#: builtin/rm.c:109
+#: builtin/rm.c:174
 #, c-format
 msgid ""
 "'%s' has staged content different from both the file and the HEAD\n"
@@ -7961,7 +8040,7 @@ msgstr ""
 "'%s' 暂存的内容和工作区及 HEAD 中的都不一样\n"
 "(使用 -f 强制删除)"
 
-#: builtin/rm.c:115
+#: builtin/rm.c:180
 #, c-format
 msgid ""
 "'%s' has changes staged in the index\n"
@@ -7970,7 +8049,7 @@ msgstr ""
 "'%s' 有变更已暂存至索引中\n"
 "(使用 --cached 保存文件,或用 -f 强制删除)"
 
-#: builtin/rm.c:119
+#: builtin/rm.c:191
 #, c-format
 msgid ""
 "'%s' has local modifications\n"
@@ -7979,66 +8058,64 @@ msgstr ""
 "'%s' 有本地修改\n"
 "(使用 --cached 保存文件,或用 -f 强制删除)"
 
-#: builtin/rm.c:134
-#, fuzzy
+#: builtin/rm.c:207
 msgid "do not list removed files"
-msgstr "无法还原修改的文件"
+msgstr "不列出删除的文件"
 
-#: builtin/rm.c:135
-#, fuzzy
+#: builtin/rm.c:208
 msgid "only remove from the index"
-msgstr "不能从索引中移除 %s"
+msgstr "只从索引区删除"
 
-#: builtin/rm.c:136
+#: builtin/rm.c:209
 msgid "override the up-to-date check"
-msgstr ""
+msgstr "忽略文件更新状态检查"
 
-#: builtin/rm.c:137
+#: builtin/rm.c:210
 msgid "allow recursive removal"
-msgstr ""
+msgstr "允许递归删除"
 
-#: builtin/rm.c:139
+#: builtin/rm.c:212
 msgid "exit with a zero status even if nothing matched"
-msgstr ""
+msgstr "即使没有匹配,也以零状态退出"
 
-#: builtin/rm.c:194
+#: builtin/rm.c:283
 #, c-format
 msgid "not removing '%s' recursively without -r"
 msgstr "未提供 -r 选项不会递归删除 '%s'"
 
-#: builtin/rm.c:230
+#: builtin/rm.c:322
 #, c-format
 msgid "git rm: unable to remove %s"
 msgstr "git rm:不能删除 %s"
 
 #: builtin/shortlog.c:13
 msgid "git shortlog [-n] [-s] [-e] [-w] [rev-opts] [--] [<commit-id>... ]"
-msgstr ""
+msgstr "git shortlog [-n] [-s] [-e] [-w] [版本选项] [--] [<提交号>... ]"
 
-#: builtin/shortlog.c:157
+#: builtin/shortlog.c:133
 #, c-format
 msgid "Missing author: %s"
 msgstr "缺少作者:%s"
 
-#: builtin/shortlog.c:253
+#: builtin/shortlog.c:229
 msgid "sort output according to the number of commits per author"
-msgstr ""
+msgstr "根据每个作者的提交数量排序"
 
-#: builtin/shortlog.c:255
+#: builtin/shortlog.c:231
 msgid "Suppress commit descriptions, only provides commit count"
-msgstr ""
+msgstr "隐藏提交说明,只提供提交数量"
 
-#: builtin/shortlog.c:257
+#: builtin/shortlog.c:233
 msgid "Show the email address of each author"
-msgstr ""
+msgstr "显示每个作者的电子邮件地址"
 
-#: builtin/shortlog.c:258
+#: builtin/shortlog.c:234
 msgid "w[,i1[,i2]]"
-msgstr ""
+msgstr "w[,i1[,i2]]"
 
-#: builtin/shortlog.c:259
+#: builtin/shortlog.c:235
 msgid "Linewrap output"
-msgstr ""
+msgstr "折行输出"
 
 #: builtin/show-branch.c:9
 msgid ""
@@ -8047,162 +8124,171 @@ msgid ""
 "independent | --merge-base] [--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>)...]"
 
 #: builtin/show-branch.c:10
 msgid "git show-branch (-g|--reflog)[=<n>[,<base>]] [--list] [<ref>]"
-msgstr ""
+msgstr "git show-branch (-g|--reflog)[=<n>[,<base>]] [--list] [<ref>]"
 
 #: builtin/show-branch.c:651
-#, fuzzy
 msgid "show remote-tracking and local branches"
-msgstr "%s 没有来自 %s 的远程跟踪分支"
+msgstr "显示远程跟踪的和本地的分支"
 
 #: builtin/show-branch.c:653
-#, fuzzy
 msgid "show remote-tracking branches"
-msgstr "%s 没有来自 %s 的远程跟踪分支"
+msgstr "显示远程跟踪的分支"
 
 #: builtin/show-branch.c:655
 msgid "color '*!+-' corresponding to the branch"
-msgstr ""
+msgstr "着色 '*!+-' 到相应的分支"
 
 #: builtin/show-branch.c:657
 msgid "show <n> more commits after the common ancestor"
-msgstr ""
+msgstr "显示共同祖先后的 <n> 个提交"
 
 #: builtin/show-branch.c:659
 msgid "synonym to more=-1"
-msgstr ""
+msgstr "和 more=-1 同义"
 
 #: builtin/show-branch.c:660
 msgid "suppress naming strings"
-msgstr ""
+msgstr "不显示字符串命名"
 
 #: builtin/show-branch.c:662
-#, fuzzy
 msgid "include the current branch"
-msgstr "没有当前分支。"
+msgstr "包括当前分支"
 
 #: builtin/show-branch.c:664
-#, fuzzy
 msgid "name commits with their object names"
-msgstr "ä¸\8dè\83½å\86\99注解对象"
+msgstr "以对象å\90\8då­\97å\91½å\90\8dæ\8f\90交"
 
 #: builtin/show-branch.c:666
 msgid "show possible merge bases"
-msgstr ""
+msgstr "显示可能合并的基线"
 
 #: builtin/show-branch.c:668
 msgid "show refs unreachable from any other ref"
-msgstr ""
+msgstr "显示没有任何引用的的引用"
 
 #: builtin/show-branch.c:670
 msgid "show commits in topological order"
-msgstr ""
+msgstr "以拓扑顺序显示提交"
 
 #: builtin/show-branch.c:672
 msgid "show only commits not on the first branch"
-msgstr ""
+msgstr "只显示不在第一个分支上的提交"
 
 #: builtin/show-branch.c:674
 msgid "show merges reachable from only one tip"
-msgstr ""
+msgstr "显示仅一个分支可访问的合并提交"
 
 #: builtin/show-branch.c:676
 msgid "show commits where no parent comes before its children"
-msgstr ""
+msgstr "显示提交时以时间为序且父提交不能领先子提交"
 
 #: builtin/show-branch.c:678
 msgid "<n>[,<base>]"
-msgstr ""
+msgstr "<n>[,<base>]"
 
 #: builtin/show-branch.c:679
 msgid "show <n> most recent ref-log entries starting at base"
-msgstr ""
+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*] "
 
 #: builtin/show-ref.c:11
 msgid "git show-ref --exclude-existing[=pattern] < ref-list"
-msgstr ""
+msgstr "git show-ref --exclude-existing[=模式] < 引用列表"
 
-#: builtin/show-ref.c:182
-#, fuzzy
+#: builtin/show-ref.c:165
 msgid "only show tags (can be combined with heads)"
-msgstr "--all 不能和引用表达式同时使用"
+msgstr "只显示 tags(可以和头共用)"
 
-#: builtin/show-ref.c:183
-#, fuzzy
+#: builtin/show-ref.c:166
 msgid "only show heads (can be combined with tags)"
-msgstr "--all 不能和引用表达式同时使用"
+msgstr "只显示头(可以和 tags 共用)"
 
-#: builtin/show-ref.c:184
+#: builtin/show-ref.c:167
 msgid "stricter reference checking, requires exact ref path"
-msgstr ""
+msgstr "更严格的引用检测,需要精确的引用路径"
 
-#: builtin/show-ref.c:187 builtin/show-ref.c:189
+#: builtin/show-ref.c:170 builtin/show-ref.c:172
 msgid "show the HEAD reference"
-msgstr ""
+msgstr "显示 HEAD 引用"
 
-#: builtin/show-ref.c:191
-#, fuzzy
+#: builtin/show-ref.c:174
 msgid "dereference tags into object IDs"
-msgstr "引用不是一个树:%s"
+msgstr "转换 tags 到对象ID"
 
-#: builtin/show-ref.c:193
+#: builtin/show-ref.c:176
 msgid "only show SHA1 hash using <n> digits"
-msgstr ""
+msgstr "只显示使用 <n> 个数字的 SHA1 哈希"
 
-#: builtin/show-ref.c:197
+#: builtin/show-ref.c:180
 msgid "do not print results to stdout (useful with --verify)"
-msgstr ""
+msgstr "不打印结果到标准输出(例如与 --verify 参数共用)"
 
-#: builtin/show-ref.c:199
+#: builtin/show-ref.c:182
 msgid "show refs from stdin that aren't in local repository"
-msgstr ""
+msgstr "显示从标准输入中读入的不在本地版本库中的引用"
 
 #: builtin/symbolic-ref.c:7
 msgid "git symbolic-ref [options] name [ref]"
-msgstr ""
+msgstr "git symbolic-ref [选项] 名称 [引用]"
+
+#: builtin/symbolic-ref.c:8
+msgid "git symbolic-ref -d [-q] name"
+msgstr "git symbolic-ref -d [-q] 名称"
 
-#: builtin/symbolic-ref.c:38
+#: builtin/symbolic-ref.c:40
 msgid "suppress error message for non-symbolic (detached) refs"
-msgstr ""
+msgstr "不显示非符号(分离的)引用的错误信息"
+
+#: builtin/symbolic-ref.c:41
+msgid "delete symbolic ref"
+msgstr "删除符号引用"
 
-#: builtin/symbolic-ref.c:39
+#: builtin/symbolic-ref.c:42
 msgid "shorten ref output"
-msgstr ""
+msgstr "简短的引用输出"
 
-#: builtin/symbolic-ref.c:40 builtin/update-ref.c:18
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:18
 msgid "reason"
-msgstr ""
+msgstr "原因"
 
-#: builtin/symbolic-ref.c:40 builtin/update-ref.c:18
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:18
 msgid "reason of the update"
-msgstr ""
+msgstr "更新的原因"
 
 #: builtin/tag.c:22
 msgid ""
 "git tag [-a|-s|-u <key-id>] [-f] [-m <msg>|-F <file>] <tagname> [<head>]"
-msgstr ""
+msgstr "git tag [-a|-s|-u <key-id>] [-f] [-m <说明>|-F <文件>] <标签名> [<头>]"
 
 #: builtin/tag.c:23
 msgid "git tag -d <tagname>..."
-msgstr ""
+msgstr "git tag -d <标签名>..."
 
 #: builtin/tag.c:24
 msgid ""
 "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[<模式>...]"
 
 #: builtin/tag.c:26
 msgid "git tag -v <tagname>..."
-msgstr ""
+msgstr "git tag -v <标签名>..."
 
 #: builtin/tag.c:60
 #, c-format
@@ -8230,354 +8316,338 @@ msgid "could not verify the tag '%s'"
 msgstr "不能校验 tag '%s'"
 
 #: builtin/tag.c:249
+#, c-format
 msgid ""
 "\n"
-"#\n"
-"# Write a tag message\n"
-"# Lines starting with '#' will be ignored.\n"
-"#\n"
+"Write a tag message\n"
+"Lines starting with '%c' will be ignored.\n"
 msgstr ""
 "\n"
-"#\n"
-"# 输入一个 tag 说明\n"
-"# 以 '#' 开头的行将被忽略。\n"
-"#\n"
+"输入一个 tag 说明\n"
+"以 '%c' 开头的行将被忽略。\n"
 
-#: builtin/tag.c:256
+#: builtin/tag.c:253
+#, c-format
 msgid ""
 "\n"
-"#\n"
-"# Write a tag message\n"
-"# Lines starting with '#' will be kept; you may remove them yourself if you "
+"Write a tag message\n"
+"Lines starting with '%c' will be kept; you may remove them yourself if you "
 "want to.\n"
-"#\n"
 msgstr ""
 "\n"
-"#\n"
-"# 输入一个 tag 说明\n"
-"# 以 '#' 开头的行将被忽略,您可以删除它们如果您想这样做。\n"
-"#\n"
+"输入一个 tag 说明\n"
+"以 '%c' 开头的行将被保留,如果您愿意也可以删除它们。\n"
 
-#: builtin/tag.c:298
+#: builtin/tag.c:292
 msgid "unable to sign the tag"
 msgstr "无法签署 tag"
 
-#: builtin/tag.c:300
+#: builtin/tag.c:294
 msgid "unable to write tag file"
 msgstr "无法写 tag 文件"
 
-#: builtin/tag.c:325
+#: builtin/tag.c:319
 msgid "bad object type."
 msgstr "坏的对象类型。"
 
-#: builtin/tag.c:338
+#: builtin/tag.c:332
 msgid "tag header too big."
 msgstr "tag 头信息太大。"
 
-#: builtin/tag.c:370
+#: builtin/tag.c:368
 msgid "no tag message?"
 msgstr "无 tag 说明?"
 
-#: builtin/tag.c:376
+#: builtin/tag.c:374
 #, c-format
 msgid "The tag message has been left in %s\n"
 msgstr "tag 说明被保留在 %s\n"
 
-#: builtin/tag.c:425
+#: builtin/tag.c:423
 msgid "switch 'points-at' requires an object"
 msgstr "开关 'points-at' 需要一个对象"
 
-#: builtin/tag.c:427
+#: builtin/tag.c:425
 #, c-format
 msgid "malformed object name '%s'"
 msgstr "非法的对象名 '%s'"
 
-#: builtin/tag.c:447
+#: builtin/tag.c:445
 msgid "list tag names"
-msgstr ""
+msgstr "列出tag名称"
 
-#: builtin/tag.c:449
+#: builtin/tag.c:447
 msgid "print <n> lines of each tag message"
-msgstr ""
+msgstr "每个 tag 信息打印 <n> 行"
 
-#: builtin/tag.c:451
-#, fuzzy
+#: builtin/tag.c:449
 msgid "delete tags"
-msgstr "删除"
+msgstr "删除 tags"
 
-#: builtin/tag.c:452
+#: builtin/tag.c:450
 msgid "verify tags"
-msgstr ""
+msgstr "验证 tags"
 
-#: builtin/tag.c:454
+#: builtin/tag.c:452
 msgid "Tag creation options"
-msgstr ""
+msgstr "Tag 创建选项"
 
-#: builtin/tag.c:456
-#, fuzzy
+#: builtin/tag.c:454
 msgid "annotated tag, needs a message"
-msgstr "注释 tag %s 没有嵌入名称"
+msgstr "注解 tag,需要一个说明"
 
-#: builtin/tag.c:458
-#, fuzzy
+#: builtin/tag.c:456
 msgid "tag message"
-msgstr "无 tag 说明?"
+msgstr "tag 说明"
 
-#: builtin/tag.c:460
+#: builtin/tag.c:458
 msgid "annotated and GPG-signed tag"
-msgstr ""
+msgstr "注解并 GPG 签名的 tag"
 
-#: builtin/tag.c:464
-#, fuzzy
+#: builtin/tag.c:462
 msgid "use another key to sign the tag"
-msgstr "无法签署 tag"
+msgstr "使用另外的私钥签名 tag"
 
-#: builtin/tag.c:465
+#: builtin/tag.c:463
 msgid "replace the tag if exists"
-msgstr ""
+msgstr "如果存在,替换现有的 tag"
 
-#: builtin/tag.c:466
+#: builtin/tag.c:464
 msgid "show tag list in columns"
-msgstr ""
+msgstr "以列的方式显示 tag"
 
-#: builtin/tag.c:468
+#: builtin/tag.c:466
 msgid "Tag listing options"
-msgstr ""
+msgstr "Tag 列表选项"
 
-#: builtin/tag.c:471
+#: builtin/tag.c:469
 msgid "print only tags that contain the commit"
-msgstr ""
+msgstr "只打印包含提交的tags"
 
-#: builtin/tag.c:477
+#: builtin/tag.c:475
 msgid "print only tags of the object"
-msgstr ""
+msgstr "只打印tags对象"
 
-#: builtin/tag.c:506
+#: builtin/tag.c:504
 msgid "--column and -n are incompatible"
 msgstr "--column 和 -n 不兼容"
 
-#: builtin/tag.c:523
+#: builtin/tag.c:521
 msgid "-n option is only allowed with -l."
 msgstr "-n 选项只允许和 -l 同时使用。"
 
-#: builtin/tag.c:525
+#: builtin/tag.c:523
 msgid "--contains option is only allowed with -l."
 msgstr "--contains 选项只允许和 -l 同时使用。"
 
-#: builtin/tag.c:527
+#: builtin/tag.c:525
 msgid "--points-at option is only allowed with -l."
 msgstr "--points-at 选项只允许和 -l 同时使用。"
 
-#: builtin/tag.c:535
+#: builtin/tag.c:533
 msgid "only one -F or -m option is allowed."
 msgstr "只允许一个 -F 或 -m 选项。"
 
-#: builtin/tag.c:555
+#: builtin/tag.c:553
 msgid "too many params"
 msgstr "太多参数"
 
-#: builtin/tag.c:561
+#: builtin/tag.c:559
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr "'%s' 不是一个有效的tag名称。"
 
-#: builtin/tag.c:566
+#: builtin/tag.c:564
 #, c-format
 msgid "tag '%s' already exists"
 msgstr "tag '%s' 已存在"
 
-#: builtin/tag.c:584
+#: builtin/tag.c:582
 #, c-format
 msgid "%s: cannot lock the ref"
 msgstr "%s:不能锁定引用"
 
-#: builtin/tag.c:586
+#: builtin/tag.c:584
 #, c-format
 msgid "%s: cannot update the ref"
 msgstr "%s:不能更新引用"
 
-#: builtin/tag.c:588
+#: builtin/tag.c:586
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "已更新tag '%s'(曾为 %s)\n"
 
 #: builtin/update-index.c:401
-#, fuzzy
 msgid "git update-index [options] [--] [<file>...]"
-msgstr "git apply [选项] [<补丁>...]"
+msgstr "git update-index [选项] [--] [<文件>...]"
 
-#: builtin/update-index.c:717
+#: builtin/update-index.c:718
 msgid "continue refresh even when index needs update"
-msgstr ""
+msgstr "当索引需要更新时继续刷新"
 
-#: builtin/update-index.c:720
+#: builtin/update-index.c:721
 msgid "refresh: ignore submodules"
-msgstr ""
+msgstr "刷新:忽略子模组"
 
-#: builtin/update-index.c:723
-#, fuzzy
+#: builtin/update-index.c:724
 msgid "do not ignore new files"
-msgstr "无法存储索引文件"
+msgstr "不忽略新的文件"
 
-#: builtin/update-index.c:725
+#: builtin/update-index.c:726
 msgid "let files replace directories and vice-versa"
-msgstr ""
+msgstr "让文件替换目录(反之亦然)"
 
-#: builtin/update-index.c:727
+#: builtin/update-index.c:728
 msgid "notice files missing from worktree"
-msgstr ""
+msgstr "通知文件从工作区丢失"
 
-#: builtin/update-index.c:729
+#: builtin/update-index.c:730
 msgid "refresh even if index contains unmerged entries"
-msgstr ""
+msgstr "即使索引区包含未合并的条目也执行刷新"
 
-#: builtin/update-index.c:732
+#: builtin/update-index.c:733
 msgid "refresh stat information"
-msgstr ""
+msgstr "刷新统计信息"
 
-#: builtin/update-index.c:736
+#: builtin/update-index.c:737
 msgid "like --refresh, but ignore assume-unchanged setting"
-msgstr ""
+msgstr "类似于 --refresh,但是忽略 assume-unchanged 设置"
 
-#: builtin/update-index.c:740
+#: builtin/update-index.c:741
 msgid "<mode> <object> <path>"
-msgstr ""
+msgstr "<mode> <object> <path>"
 
-#: builtin/update-index.c:741
-#, fuzzy
+#: builtin/update-index.c:742
 msgid "add the specified entry to the index"
-msgstr "æ·»å\8a æ\96\87件å\86\85容è\87³ç´¢å¼\95"
+msgstr "æ·»å\8a æ\8c\87å®\9aç\9a\84æ\9d¡ç\9b®å\88°ç´¢å¼\95å\8cº"
 
-#: builtin/update-index.c:745
+#: builtin/update-index.c:746
 msgid "(+/-)x"
-msgstr ""
+msgstr "(+/-)x"
 
-#: builtin/update-index.c:746
+#: builtin/update-index.c:747
 msgid "override the executable bit of the listed files"
-msgstr ""
+msgstr "覆盖列表里文件的可执行位"
 
-#: builtin/update-index.c:750
+#: builtin/update-index.c:751
 msgid "mark files as \"not changing\""
-msgstr ""
+msgstr "把文件标记为 \"没有变更\""
 
-#: builtin/update-index.c:753
+#: builtin/update-index.c:754
 msgid "clear assumed-unchanged bit"
-msgstr ""
+msgstr "清除 assumed-unchanged 位"
 
-#: builtin/update-index.c:756
+#: builtin/update-index.c:757
 msgid "mark files as \"index-only\""
-msgstr ""
+msgstr "把文件标记为 \"仅索引\""
 
-#: builtin/update-index.c:759
+#: builtin/update-index.c:760
 msgid "clear skip-worktree bit"
-msgstr ""
+msgstr "清除 skip-worktree 位"
 
-#: builtin/update-index.c:762
+#: builtin/update-index.c:763
 msgid "add to index only; do not add content to object database"
-msgstr ""
+msgstr "只添加到索引区;不添加对象到对象库"
 
-#: builtin/update-index.c:764
+#: builtin/update-index.c:765
 msgid "remove named paths even if present in worktree"
-msgstr ""
+msgstr "即使存在工作区里,也删除路径"
 
-#: builtin/update-index.c:766
+#: builtin/update-index.c:767
 msgid "with --stdin: input lines are terminated by null bytes"
-msgstr ""
+msgstr "携带 --stdin:输入的行以 null 字符终止"
 
-#: builtin/update-index.c:768
-#, fuzzy
+#: builtin/update-index.c:769
 msgid "read list of paths to be updated from standard input"
-msgstr "(正从标准输入中读取日志信息)\n"
+msgstr "从标准输入中读取需要更新的路径列表"
 
-#: builtin/update-index.c:772
-#, fuzzy
+#: builtin/update-index.c:773
 msgid "add entries from standard input to the index"
-msgstr "ä¸\8dè\83½ä»\8eæ \87å\87\86è¾\93å\85¥ä¸­è¯»å\8f\96æ\97¥å¿\97ä¿¡æ\81¯"
+msgstr "ä»\8eæ \87å\87\86è¾\93å\85¥æ·»å\8a æ\9d¡ç\9b®å\88°ç´¢å¼\95å\8cº"
 
-#: builtin/update-index.c:776
+#: builtin/update-index.c:777
 msgid "repopulate stages #2 and #3 for the listed paths"
-msgstr ""
+msgstr "为指定文件重新生成第2和第3暂存区"
 
-#: builtin/update-index.c:780
+#: builtin/update-index.c:781
 msgid "only update entries that differ from HEAD"
-msgstr ""
+msgstr "只更新与 HEAD 不同的条目"
 
-#: builtin/update-index.c:784
+#: builtin/update-index.c:785
 msgid "ignore files missing from worktree"
-msgstr ""
+msgstr "忽略工作区丢失的文件"
 
-#: builtin/update-index.c:787
+#: builtin/update-index.c:788
 msgid "report actions to standard output"
-msgstr ""
+msgstr "在标准输出显示操作"
 
-#: builtin/update-index.c:789
+#: builtin/update-index.c:790
 msgid "(for porcelains) forget saved unresolved conflicts"
-msgstr ""
+msgstr "(for porcelains) 忘记保存的未解决的冲突"
 
-#: builtin/update-index.c:793
+#: builtin/update-index.c:794
 msgid "write index in this format"
-msgstr ""
+msgstr "以这种格式写入索引区"
 
 #: builtin/update-ref.c:7
 msgid "git update-ref [options] -d <refname> [<oldval>]"
-msgstr ""
+msgstr "git update-ref [options] -d <引用名> [<旧值>]"
 
 #: builtin/update-ref.c:8
 msgid "git update-ref [options]    <refname> <newval> [<oldval>]"
-msgstr ""
+msgstr "git update-ref [options]    <引用名> <新值> [<旧值>]"
 
 #: builtin/update-ref.c:19
 msgid "delete the reference"
-msgstr ""
+msgstr "删除引用"
 
 #: builtin/update-ref.c:21
 msgid "update <refname> not the one it points to"
-msgstr ""
+msgstr "更新 <引用名> 本身而不是它指向的引用"
 
 #: builtin/update-server-info.c:6
 msgid "git update-server-info [--force]"
-msgstr ""
+msgstr "git update-server-info [--force]"
 
 #: builtin/update-server-info.c:14
 msgid "update the info files from scratch"
-msgstr ""
+msgstr "从头开始更新文件信息"
 
 #: builtin/verify-pack.c:56
 msgid "git verify-pack [-v|--verbose] [-s|--stat-only] <pack>..."
-msgstr ""
+msgstr "git verify-pack [-v|--verbose] [-s|--stat-only] <pack>..."
 
 #: builtin/verify-pack.c:66
-#, fuzzy
 msgid "verbose"
 msgstr "冗长输出"
 
 #: builtin/verify-pack.c:68
 msgid "show statistics only"
-msgstr ""
+msgstr "只显示统计"
 
 #: builtin/verify-tag.c:17
 msgid "git verify-tag [-v|--verbose] <tag>..."
-msgstr ""
+msgstr "git verify-tag [-v|--verbose] <tag>..."
 
 #: builtin/verify-tag.c:73
 msgid "print tag contents"
-msgstr ""
+msgstr "打印 tag 内容"
 
 #: builtin/write-tree.c:13
 msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
-msgstr ""
+msgstr "git write-tree [--missing-ok] [--prefix=<前缀>/]"
 
 #: builtin/write-tree.c:26
 msgid "<prefix>/"
-msgstr ""
+msgstr "<前缀>/"
 
 #: builtin/write-tree.c:27
 msgid "write tree object for a subdirectory <prefix>"
-msgstr ""
+msgstr "将 <前缀> 子目录内容写到一个树对象"
 
 #: builtin/write-tree.c:30
 msgid "only useful for debugging"
-msgstr ""
+msgstr "只对调试有用"
 
 #: git.c:16
 msgid "See 'git help <command>' for more information on a specific command."
@@ -8587,15 +8657,15 @@ msgstr "参见 'git help <command>' 以获得该特定命令的详细信息。"
 msgid "no-op (backward compatibility)"
 msgstr "空操作(向后兼容)"
 
-#: parse-options.h:228
+#: parse-options.h:232
 msgid "be more verbose"
 msgstr "更加详细"
 
-#: parse-options.h:230
+#: parse-options.h:234
 msgid "be more quiet"
 msgstr "更加安静"
 
-#: parse-options.h:236
+#: parse-options.h:240
 msgid "use <n> digits to display SHA-1s"
 msgstr "用 <n> 位数字显示 SHA-1 哈希值"
 
@@ -8636,8 +8706,8 @@ msgid "Print lines matching a pattern"
 msgstr "输出和模式匹配的行"
 
 #: common-cmds.h:17
-msgid "Create an empty git repository or reinitialize an existing one"
-msgstr "创建一个空的 git 版本库或者重新初始化一个"
+msgid "Create an empty Git repository or reinitialize an existing one"
+msgstr "创建一个空的 Git 版本库或重新初始化一个已存在的版本库"
 
 #: common-cmds.h:18
 msgid "Show commit logs"
@@ -8710,11 +8780,11 @@ msgstr "无法求助于三路合并。"
 
 #: git-am.sh:137
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
-msgstr "版本库缺乏必要的二进制对象(blob)以进行三路合并。"
+msgstr "版本库缺乏必要的数据(blob)对象以进行三路合并。"
 
 #: git-am.sh:139
 msgid "Using index info to reconstruct a base tree..."
-msgstr "更新索引信息以重建基树..."
+msgstr "使用索引来重建一个(三路合并的)基础目录树..."
 
 #: git-am.sh:154
 msgid ""
@@ -8722,7 +8792,7 @@ msgid ""
 "It does not apply to blobs recorded in its index."
 msgstr ""
 "您是否曾手动编辑过您的补丁?\n"
-"无法应用补丁到索引中的二进制对象(blob)上。"
+"无法应用补丁到索引中的数据(blob)对象上。"
 
 #: git-am.sh:163
 msgid "Falling back to patching base and 3-way merge..."
@@ -8825,7 +8895,7 @@ msgstr "您的索引中仍有未合并的路径。您是否忘了执行 'git add
 
 #: git-am.sh:845
 msgid "No changes -- Patch already applied."
-msgstr "没有变更 -- 补丁已经应用过。"
+msgstr "没有变更 —— 补丁已经应用过。"
 
 #: git-am.sh:855
 #, sh-format
@@ -8838,6 +8908,8 @@ msgid ""
 "The copy of the patch that failed is found in:\n"
 "   $dotest/patch"
 msgstr ""
+"失败的补丁文件副本位于:\n"
+"   $dotest/patch"
 
 #: git-am.sh:876
 msgid "applying to an empty history"
@@ -8954,7 +9026,7 @@ msgid ""
 "Try 'git bisect reset <commit>'."
 msgstr ""
 "不能检出原始 HEAD '$branch'。\n"
-"尝试 'git bisect reset <commit>'。"
+"尝试 'git bisect reset <提交>'。"
 
 #: git-bisect.sh:390
 msgid "No logfile given"
@@ -8981,7 +9053,7 @@ msgid ""
 "exit code $res from '$command' is < 0 or >= 128"
 msgstr ""
 "二分查找运行失败:\n"
-"命令 '$command' 的退出码 $res 或者小于 0 或者大于等于 128"
+"命令 '$command' 的退出码 $res 小于 0 或大于等于 128"
 
 #: git-bisect.sh:453
 msgid "bisect run cannot continue any more"
@@ -9022,7 +9094,7 @@ msgstr "更新尚未诞生的分支,变更添加至索引"
 #. The working tree and the index file is still based on the
 #. $orig_head commit, but we are merging into $curr_head.
 #. First update the working tree to match $curr_head.
-#: git-pull.sh:228
+#: git-pull.sh:229
 #, sh-format
 msgid ""
 "Warning: fetch updated the current branch head.\n"
@@ -9032,15 +9104,15 @@ msgstr ""
 "警告:fetch 更新了当前的分支。您的工作区\n"
 "警告:从原提交 $orig_head 快进。"
 
-#: git-pull.sh:253
+#: git-pull.sh:254
 msgid "Cannot merge multiple branches into empty head"
 msgstr "无法将多个分支合并到空分支"
 
-#: git-pull.sh:257
+#: git-pull.sh:258
 msgid "Cannot rebase onto multiple branches"
 msgstr "无法变基到多个分支"
 
-#: git-rebase.sh:52
+#: git-rebase.sh:53
 msgid ""
 "When you have resolved this problem, run \"git rebase --continue\".\n"
 "If you prefer to skip this patch, run \"git rebase --skip\" instead.\n"
@@ -9051,27 +9123,31 @@ msgstr ""
 "如果您想跳过此补丁,则执行 \"git rebase --skip\"。\n"
 "要恢复原分支并停止变基,执行 \"git rebase --abort\"。"
 
-#: git-rebase.sh:159
+#: git-rebase.sh:160
 msgid "The pre-rebase hook refused to rebase."
 msgstr "钩子 pre-rebase 拒绝变基。"
 
-#: git-rebase.sh:164
+#: git-rebase.sh:165
 msgid "It looks like git-am is in progress. Cannot rebase."
 msgstr "似乎正处于在 git-am 的执行过程中。无法变基。"
 
-#: git-rebase.sh:295
+#: git-rebase.sh:296
 msgid "The --exec option must be used with the --interactive option"
 msgstr "选项 --exec 必须和选项 --interactive 同时使用"
 
-#: git-rebase.sh:300
+#: git-rebase.sh:301
 msgid "No rebase in progress?"
 msgstr "没有正在进行的变基?"
 
-#: git-rebase.sh:313
+#: git-rebase.sh:312
+msgid "The --edit-todo action can only be used during interactive rebase."
+msgstr "动作 --edit-todo 只能用在交互式变基过程中。"
+
+#: git-rebase.sh:319
 msgid "Cannot read HEAD"
 msgstr "不能读取 HEAD"
 
-#: git-rebase.sh:316
+#: git-rebase.sh:322
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -9079,12 +9155,12 @@ msgstr ""
 "您必须编辑所有的合并冲突,然后通过 git add\n"
 "命令将它们标记为已解决"
 
-#: git-rebase.sh:334
+#: git-rebase.sh:340
 #, sh-format
 msgid "Could not move back to $head_name"
 msgstr "无法移回 $head_name"
 
-#: git-rebase.sh:350
+#: git-rebase.sh:359
 #, sh-format
 msgid ""
 "It seems that there is already a $state_dir_base directory, and\n"
@@ -9103,56 +9179,56 @@ msgstr ""
 "\t$cmd_clear_stale_rebase\n"
 "然后再重新执行变基。为避免您丢失重要数据,我已经停止当前操作。"
 
-#: git-rebase.sh:395
+#: git-rebase.sh:404
 #, sh-format
 msgid "invalid upstream $upstream_name"
 msgstr "无效的上游 $upstream_name"
 
-#: git-rebase.sh:419
+#: git-rebase.sh:428
 #, sh-format
 msgid "$onto_name: there are more than one merge bases"
 msgstr "$onto_name: 有一个以上的合并基准"
 
-#: git-rebase.sh:422 git-rebase.sh:426
+#: git-rebase.sh:431 git-rebase.sh:435
 #, sh-format
 msgid "$onto_name: there is no merge base"
 msgstr "$onto_name: 没有合并基准"
 
-#: git-rebase.sh:431
+#: git-rebase.sh:440
 #, sh-format
 msgid "Does not point to a valid commit: $onto_name"
 msgstr "没有指向一个有效的提交:$onto_name"
 
-#: git-rebase.sh:454
+#: git-rebase.sh:463
 #, sh-format
 msgid "fatal: no such branch: $branch_name"
 msgstr "严重错误:无此分支:$branch_name"
 
-#: git-rebase.sh:474
+#: git-rebase.sh:483
 msgid "Please commit or stash them."
 msgstr "请提交或为它们保存进度。"
 
-#: git-rebase.sh:492
+#: git-rebase.sh:501
 #, sh-format
 msgid "Current branch $branch_name is up to date."
 msgstr "当前分支 $branch_name 是最新的。"
 
-#: git-rebase.sh:495
+#: git-rebase.sh:504
 #, sh-format
 msgid "Current branch $branch_name is up to date, rebase forced."
 msgstr "当前分支 $branch_name 是最新的,强制变基。"
 
-#: git-rebase.sh:506
+#: git-rebase.sh:515
 #, sh-format
 msgid "Changes from $mb to $onto:"
 msgstr "变更从 $mb 到 $onto:"
 
 #. Detach HEAD and reset the tree
-#: git-rebase.sh:515
+#: git-rebase.sh:524
 msgid "First, rewinding head to replay your work on top of it..."
 msgstr "首先,重置头指针以便在上面重放您的工作..."
 
-#: git-rebase.sh:523
+#: git-rebase.sh:532
 #, sh-format
 msgid "Fast-forwarded $branch_name to $onto_name."
 msgstr "快进 $branch_name 至 $onto_name。"
@@ -9286,37 +9362,37 @@ msgstr "未指定分支名"
 msgid "(To restore them type \"git stash apply\")"
 msgstr "(为恢复数据输入 \"git stash apply\")"
 
-#: git-submodule.sh:88
+#: git-submodule.sh:90
 #, sh-format
 msgid "cannot strip one component off url '$remoteurl'"
 msgstr "无法从 url '$remoteurl' 剥离一个组件"
 
-#: git-submodule.sh:167
+#: git-submodule.sh:195
 #, sh-format
 msgid "No submodule mapping found in .gitmodules for path '$sm_path'"
 msgstr "未在 .gitmodules 中发现路径 '$sm_path' 的子模组映射"
 
-#: git-submodule.sh:211
+#: git-submodule.sh:238
 #, sh-format
 msgid "Clone of '$url' into submodule path '$sm_path' failed"
 msgstr "无法克隆 '$url' 到子模组路径 '$sm_path'"
 
-#: git-submodule.sh:223
+#: git-submodule.sh:250
 #, sh-format
 msgid "Gitdir '$a' is part of the submodule path '$b' or vice versa"
-msgstr "Gitdir '$a' 在子模组路径 '$b' 之下或相反"
+msgstr "Gitdir '$a' 在子模组路径 '$b' 之下或相反"
 
-#: git-submodule.sh:312
+#: git-submodule.sh:343
 #, sh-format
 msgid "repo URL: '$repo' must be absolute or begin with ./|../"
 msgstr "版本库URL:'$repo' 必须是绝对路径或以 ./|../ 起始"
 
-#: git-submodule.sh:329
+#: git-submodule.sh:360
 #, sh-format
 msgid "'$sm_path' already exists in the index"
 msgstr "'$sm_path' 已经存在于索引中"
 
-#: git-submodule.sh:333
+#: git-submodule.sh:364
 #, sh-format
 msgid ""
 "The following path is ignored by one of your .gitignore files:\n"
@@ -9327,62 +9403,91 @@ msgstr ""
 "$sm_path\n"
 "如果您确实想添加它,使用 -f 参数。"
 
-#: git-submodule.sh:344
+#: git-submodule.sh:382
 #, sh-format
 msgid "Adding existing repo at '$sm_path' to the index"
 msgstr "添加位于 '$sm_path' 的现存版本库到索引"
 
-#: git-submodule.sh:346
+#: git-submodule.sh:384
 #, sh-format
 msgid "'$sm_path' already exists and is not a valid git repo"
 msgstr "'$sm_path' 已存在且不是一个有效的 git 版本库"
 
-#: git-submodule.sh:360
+#: git-submodule.sh:392
+#, sh-format
+msgid "A git directory for '$sm_name' is found locally with remote(s):"
+msgstr "本地发现 '$sm_name' 的一个 git 目录,与其对应的远程版本库:"
+
+#: git-submodule.sh:394
+#, sh-format
+msgid ""
+"If you want to reuse this local git directory instead of cloning again from"
+msgstr "如果您想重用此本地 git 目录而不是重新克隆自"
+
+#: git-submodule.sh:396
+#, sh-format
+msgid ""
+"use the '--force' option. If the local git directory is not the correct repo"
+msgstr "使用 '--force' 参数。如果本地 git 目录不是正确的版本库"
+
+#: git-submodule.sh:397
+#, sh-format
+msgid ""
+"or you are unsure what this means choose another name with the '--name' "
+"option."
+msgstr "或者您不确定其中含义使用 '--name' 参数选择另外一个名称。"
+
+#: git-submodule.sh:399
+#, sh-format
+msgid "Reactivating local git directory for submodule '$sm_name'."
+msgstr "激活本地 git 目录到子模组 '$sm_name'。"
+
+#: git-submodule.sh:411
 #, sh-format
 msgid "Unable to checkout submodule '$sm_path'"
 msgstr "不能检出子模组 '$sm_path'"
 
-#: git-submodule.sh:365
+#: git-submodule.sh:416
 #, sh-format
 msgid "Failed to add submodule '$sm_path'"
 msgstr "无法添加子模组 '$sm_path'"
 
-#: git-submodule.sh:370
+#: git-submodule.sh:425
 #, sh-format
 msgid "Failed to register submodule '$sm_path'"
 msgstr "无法注册子模组 '$sm_path'"
 
-#: git-submodule.sh:413
+#: git-submodule.sh:468
 #, sh-format
 msgid "Entering '$prefix$sm_path'"
 msgstr "正在进入 '$prefix$sm_path'"
 
-#: git-submodule.sh:427
+#: git-submodule.sh:482
 #, sh-format
 msgid "Stopping at '$sm_path'; script returned non-zero status."
 msgstr "停止于 '$sm_path',脚本返回非零值。"
 
-#: git-submodule.sh:471
+#: git-submodule.sh:526
 #, sh-format
 msgid "No url found for submodule path '$sm_path' in .gitmodules"
 msgstr "在 .gitmodules 中未找到子模组路径 '$sm_path' 的 url"
 
-#: git-submodule.sh:480
+#: git-submodule.sh:535
 #, sh-format
 msgid "Failed to register url for submodule path '$sm_path'"
 msgstr "无法为子模组路径 '$sm_path' 注册 url"
 
-#: git-submodule.sh:482
+#: git-submodule.sh:537
 #, sh-format
 msgid "Submodule '$name' ($url) registered for path '$sm_path'"
 msgstr "子模组 '$name' ($url) 已为路径 '$sm_path' 注册"
 
-#: git-submodule.sh:490
+#: git-submodule.sh:545
 #, sh-format
 msgid "Failed to register update mode for submodule path '$sm_path'"
 msgstr "无法为子模组路径 '$sm_path' 注册更新模式"
 
-#: git-submodule.sh:590
+#: git-submodule.sh:649
 #, sh-format
 msgid ""
 "Submodule path '$sm_path' not initialized\n"
@@ -9391,95 +9496,140 @@ msgstr ""
 "子模组路径 '$sm_path' 没有初始化\n"
 "也许您想用 'update --init'?"
 
-#: git-submodule.sh:603
+#: git-submodule.sh:662
 #, sh-format
 msgid "Unable to find current revision in submodule path '$sm_path'"
 msgstr "无法在子模组路径 '$sm_path' 中找到当前版本"
 
-#: git-submodule.sh:622
+#: git-submodule.sh:671 git-submodule.sh:695
 #, sh-format
 msgid "Unable to fetch in submodule path '$sm_path'"
 msgstr "无法在子模组路径 '$sm_path' 中获取"
 
-#: git-submodule.sh:636
+#: git-submodule.sh:709
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$sm_path'"
 msgstr "无法在子模组路径 '$sm_path' 中变基 '$sha1'"
 
-#: git-submodule.sh:637
+#: git-submodule.sh:710
 #, sh-format
 msgid "Submodule path '$sm_path': rebased into '$sha1'"
 msgstr "子模组路径 '$sm_path':变基至 '$sha1'"
 
-#: git-submodule.sh:642
+#: git-submodule.sh:715
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$sm_path'"
 msgstr "无法合并 '$sha1' 到子模组路径 '$sm_path' 中"
 
-#: git-submodule.sh:643
+#: git-submodule.sh:716
 #, sh-format
 msgid "Submodule path '$sm_path': merged in '$sha1'"
 msgstr "子模组路径 '$sm_path':已合并入 '$sha1'"
 
-#: git-submodule.sh:648
+#: git-submodule.sh:721
 #, sh-format
 msgid "Unable to checkout '$sha1' in submodule path '$sm_path'"
 msgstr "无法在子模组路径 '$sm_path' 中检出 '$sha1'"
 
-#: git-submodule.sh:649
+#: git-submodule.sh:722
 #, sh-format
 msgid "Submodule path '$sm_path': checked out '$sha1'"
 msgstr "子模组路径 '$sm_path':检出 '$sha1'"
 
-#: git-submodule.sh:671 git-submodule.sh:995
+#: git-submodule.sh:744 git-submodule.sh:1066
 #, sh-format
 msgid "Failed to recurse into submodule path '$sm_path'"
 msgstr "无法递归进子模组路径 '$sm_path'"
 
-#: git-submodule.sh:779
+#: git-submodule.sh:852
 msgid "The --cached option cannot be used with the --files option"
 msgstr "选项 --cached 不能和选项 --files 同时使用"
 
 #. unexpected type
-#: git-submodule.sh:819
+#: git-submodule.sh:892
 #, sh-format
 msgid "unexpected mode $mod_dst"
 msgstr "意外的模式 $mod_dst"
 
 #  译者:注意保持前导空格
-#: git-submodule.sh:837
+#: git-submodule.sh:910
 #, sh-format
 msgid "  Warn: $name doesn't contain commit $sha1_src"
 msgstr "  警告:$name 未包含提交 $sha1_src"
 
 #  译者:注意保持前导空格
-#: git-submodule.sh:840
+#: git-submodule.sh:913
 #, sh-format
 msgid "  Warn: $name doesn't contain commit $sha1_dst"
 msgstr "  警告:$name 未包含提交 $sha1_dst"
 
 #  译者:注意保持前导空格
-#: git-submodule.sh:843
+#: git-submodule.sh:916
 #, sh-format
 msgid "  Warn: $name doesn't contain commits $sha1_src and $sha1_dst"
 msgstr "  警告:$name 未包含提交 $sha1_src 和 $sha1_dst"
 
-#: git-submodule.sh:868
+#: git-submodule.sh:941
 msgid "blob"
-msgstr "二进制对象"
+msgstr "数据对象"
 
-#: git-submodule.sh:906
-msgid "Submodules changed but not updated:"
-msgstr "子模组已修改但尚未更新:"
+#: git-submodule.sh:979
+msgid "Submodules changed but not updated:"
+msgstr "子模组已修改但尚未更新:"
 
-#: git-submodule.sh:908
-msgid "Submodule changes to be committed:"
+#: git-submodule.sh:981
+msgid "Submodule changes to be committed:"
 msgstr "要提交的子模组变更:"
 
-#: git-submodule.sh:1054
+#: git-submodule.sh:1129
 #, sh-format
-msgid "Synchronizing submodule url for '$name'"
-msgstr "为 '$name' 同步子模组 url"
+msgid "Synchronizing submodule url for '$prefix$sm_path'"
+msgstr "为 '$prefix$sm_path' 同步子模组 url"
+
+#~ 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 "Auto packing the repository for optimum performance.\n"
+#~ msgstr "自动打包版本库以求最佳性能。\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)"