]> git.ipfire.org Git - thirdparty/git.git/commitdiff
l10n: zh_TW: update translation for Git 2.54
authorYi-Jyun Pan <pan93412@gmail.com>
Sun, 19 Apr 2026 13:52:38 +0000 (21:52 +0800)
committerYi-Jyun Pan <pan93412@gmail.com>
Sun, 19 Apr 2026 13:54:13 +0000 (21:54 +0800)
Signed-off-by: Yi-Jyun Pan <pan93412@gmail.com>
po/zh_TW.po

index f6fb4b759c9260189d60f35546537660d45ce6fd..fe31e18096a17b91df550bf5bc9efa1ab085d64a 100644 (file)
@@ -30,8 +30,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Git\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2026-01-28 22:23+0800\n"
-"PO-Revision-Date: 2026-01-28 22:42+0800\n"
+"POT-Creation-Date: 2026-04-19 19:19+0800\n"
+"PO-Revision-Date: 2026-04-19 13:40+0000\n"
 "Last-Translator: Yi-Jyun Pan <pan93412@gmail.com>\n"
 "Language-Team: Chinese (Traditional Han script) <https://weblate.slat.org/"
 "projects/git-po/git-cli/zh_Hant/>\n"
@@ -40,21 +40,18 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: Poedit 3.8\n"
+"X-Generator: Weblate 5.16.2\n"
 "X-ZhConverter: 繁化姬 dict-f4bc617e-r910 @ 2019/11/16 20:23:12 | https://"
 "zhconvert.org\n"
 
-#: add-interactive.c
-#, c-format
-msgid "%s cannot be negative"
-msgstr "%s 不能是負數"
-
 #: add-interactive.c
 #, c-format
 msgid "Huh (%s)?"
 msgstr "嗯(%s)?"
 
-#: add-interactive.c builtin/merge.c builtin/rebase.c reset.c sequencer.c
+#: add-interactive.c add-interactive.c builtin/merge.c
+#: builtin/rebase.c builtin/rebase.c reset.c sequencer.c
+#: sequencer.c sequencer.c
 msgid "could not read index"
 msgstr "無法讀取索引"
 
@@ -74,12 +71,14 @@ msgstr "未變更"
 msgid "Update"
 msgstr "更新"
 
-#: add-interactive.c
+#: add-interactive.c add-interactive.c add-interactive.c
 #, c-format
 msgid "could not stage '%s'"
 msgstr "無法暫存「%s」"
 
-#: add-interactive.c builtin/stash.c reset.c sequencer.c
+#: add-interactive.c add-interactive.c builtin/stash.c
+#: builtin/stash.c builtin/stash.c builtin/stash.c
+#: builtin/stash.c reset.c sequencer.c
 msgid "could not write index"
 msgstr "無法寫入索引"
 
@@ -94,7 +93,8 @@ msgstr[0] "已更新 %d 個路徑\n"
 msgid "note: %s is untracked now.\n"
 msgstr "註:現已不再追蹤 %s。\n"
 
-#: add-interactive.c apply.c builtin/checkout.c builtin/reset.c
+#: add-interactive.c apply.c builtin/checkout.c
+#: builtin/reset.c
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "對「%s」路徑執行 make_cache_entry 失敗"
@@ -175,7 +175,7 @@ msgstr "檢視 HEAD 及索引之間的差異"
 msgid "add contents of untracked files to the staged set of changes"
 msgstr "將未追蹤檔案的內容加入至變更暫存集"
 
-#: add-interactive.c
+#: add-interactive.c add-interactive.c
 msgid "Prompt help:"
 msgstr "提示說明:"
 
@@ -191,7 +191,7 @@ msgstr "選取範圍中項目"
 msgid "select multiple ranges"
 msgstr "選取多個範圍"
 
-#: add-interactive.c
+#: add-interactive.c add-interactive.c
 msgid "select item based on unique prefix"
 msgstr "根據獨特前綴選取項目"
 
@@ -231,9 +231,11 @@ msgstr "已暫存"
 msgid "unstaged"
 msgstr "未暫存"
 
-#: add-interactive.c apply.c builtin/am.c builtin/bugreport.c builtin/clone.c
-#: builtin/diagnose.c builtin/fetch.c builtin/hook.c builtin/merge.c
-#: builtin/pull.c builtin/submodule--helper.c
+#: add-interactive.c apply.c apply.c builtin/am.c
+#: builtin/am.c builtin/bugreport.c builtin/clone.c
+#: builtin/diagnose.c builtin/fetch.c builtin/hook.c
+#: builtin/merge.c builtin/pull.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c
 msgid "path"
 msgstr "路徑"
 
@@ -248,31 +250,31 @@ msgstr "再見。\n"
 
 #: add-patch.c
 #, c-format
-msgid "Stage mode change [y,n,q,a,d%s,?]? "
-msgstr "暫存模式變更 [y,n,q,a,d%s,?]? "
+msgid "Stage mode change%s [y,n,q,a,d%s,?]? "
+msgstr "暫存模式變更%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Stage deletion [y,n,q,a,d%s,?]? "
-msgstr "暫存刪除動作 [y,n,q,a,d%s,?]? "
+msgid "Stage deletion%s [y,n,q,a,d%s,?]? "
+msgstr "暫存刪除動作%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Stage addition [y,n,q,a,d%s,?]? "
-msgstr "暫存加入動作 [y,n,q,a,d%s,?]? "
+msgid "Stage addition%s [y,n,q,a,d%s,?]? "
+msgstr "暫存加入動作%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Stage this hunk [y,n,q,a,d%s,?]? "
-msgstr "暫存此區塊 [y,n,q,a,d%s,?]? "
+msgid "Stage this hunk%s [y,n,q,a,d%s,?]? "
+msgstr "暫存此區塊%s [y,n,q,a,d%s,?]? "
 
-#: add-patch.c
+#: add-patch.c add-patch.c
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be marked for "
 "staging."
 msgstr "如果修補檔能完全套用,編輯區塊將立即標記為暫存。"
 
-#: add-patch.c
+#: add-patch.c add-patch.c
 msgid ""
 "y - stage this hunk\n"
 "n - do not stage this hunk\n"
@@ -288,23 +290,23 @@ msgstr ""
 
 #: add-patch.c
 #, c-format
-msgid "Stash mode change [y,n,q,a,d%s,?]? "
-msgstr "貯存模式變更 [y,n,q,a,d%s,?]? "
+msgid "Stash mode change%s [y,n,q,a,d%s,?]? "
+msgstr "貯存模式變更%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Stash deletion [y,n,q,a,d%s,?]? "
-msgstr "貯存刪除動作 [y,n,q,a,d%s,?]? "
+msgid "Stash deletion%s [y,n,q,a,d%s,?]? "
+msgstr "貯存刪除動作%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Stash addition [y,n,q,a,d%s,?]? "
-msgstr "貯存加入動作 [y,n,q,a,d%s,?]? "
+msgid "Stash addition%s [y,n,q,a,d%s,?]? "
+msgstr "貯存加入動作%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Stash this hunk [y,n,q,a,d%s,?]? "
-msgstr "貯存此區塊 [y,n,q,a,d%s,?]? "
+msgid "Stash this hunk%s [y,n,q,a,d%s,?]? "
+msgstr "貯存此區塊%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 msgid ""
@@ -328,23 +330,23 @@ msgstr ""
 
 #: add-patch.c
 #, c-format
-msgid "Unstage mode change [y,n,q,a,d%s,?]? "
-msgstr "取消暫存模式變更 [y,n,q,a,d%s,?]? "
+msgid "Unstage mode change%s [y,n,q,a,d%s,?]? "
+msgstr "取消暫存模式變更%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Unstage deletion [y,n,q,a,d%s,?]? "
-msgstr "取消暫存刪除動作 [y,n,q,a,d%s,?]? "
+msgid "Unstage deletion%s [y,n,q,a,d%s,?]? "
+msgstr "取消暫存刪除動作%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Unstage addition [y,n,q,a,d%s,?]? "
-msgstr "取消暫存加入動作 [y,n,q,a,d%s,?]? "
+msgid "Unstage addition%s [y,n,q,a,d%s,?]? "
+msgstr "取消暫存加入動作%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Unstage this hunk [y,n,q,a,d%s,?]? "
-msgstr "取消暫存此區塊 [y,n,q,a,d%s,?]? "
+msgid "Unstage this hunk%s [y,n,q,a,d%s,?]? "
+msgstr "取消暫存此區塊%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 msgid ""
@@ -368,25 +370,25 @@ msgstr ""
 
 #: add-patch.c
 #, c-format
-msgid "Apply mode change to index [y,n,q,a,d%s,?]? "
-msgstr "將模式變更套用至索引區 [y,n,q,a,d%s,?]? "
+msgid "Apply mode change to index%s [y,n,q,a,d%s,?]? "
+msgstr "將模式變更套用至索引區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply deletion to index [y,n,q,a,d%s,?]? "
-msgstr "將刪除動作套用至索引 [y,n,q,a,d%s,?]? "
+msgid "Apply deletion to index%s [y,n,q,a,d%s,?]? "
+msgstr "將刪除動作套用至索引%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply addition to index [y,n,q,a,d%s,?]? "
-msgstr "將加入動作套用至索引 [y,n,q,a,d%s,?]? "
+msgid "Apply addition to index%s [y,n,q,a,d%s,?]? "
+msgstr "將加入動作套用至索引%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply this hunk to index [y,n,q,a,d%s,?]? "
-msgstr "將此區塊套用到索引 [y,n,q,a,d%s,?]? "
+msgid "Apply this hunk to index%s [y,n,q,a,d%s,?]? "
+msgstr "將此區塊套用到索引%s [y,n,q,a,d%s,?]? "
 
-#: add-patch.c
+#: add-patch.c add-patch.c add-patch.c
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be marked for "
 "applying."
@@ -406,33 +408,33 @@ msgstr ""
 "a - 套用此區塊和本檔案中後面的全部區塊\n"
 "d - 不要套用此區塊和本檔案中後面的全部區塊\n"
 
-#: add-patch.c
+#: add-patch.c add-patch.c
 #, c-format
-msgid "Discard mode change from worktree [y,n,q,a,d%s,?]? "
-msgstr "從工作區捨棄模式變更 [y,n,q,a,d%s,?]? "
+msgid "Discard mode change from worktree%s [y,n,q,a,d%s,?]? "
+msgstr "從工作區捨棄模式變更%s [y,n,q,a,d%s,?]? "
 
-#: add-patch.c
+#: add-patch.c add-patch.c
 #, c-format
-msgid "Discard deletion from worktree [y,n,q,a,d%s,?]? "
-msgstr "從工作區捨棄刪除動作 [y,n,q,a,d%s,?]? "
+msgid "Discard deletion from worktree%s [y,n,q,a,d%s,?]? "
+msgstr "從工作區捨棄刪除動作%s [y,n,q,a,d%s,?]? "
 
-#: add-patch.c
+#: add-patch.c add-patch.c
 #, c-format
-msgid "Discard addition from worktree [y,n,q,a,d%s,?]? "
-msgstr "從工作區捨棄加入動作 [y,n,q,a,d%s,?]? "
+msgid "Discard addition from worktree%s [y,n,q,a,d%s,?]? "
+msgstr "從工作區捨棄加入動作%s [y,n,q,a,d%s,?]? "
 
-#: add-patch.c
+#: add-patch.c add-patch.c
 #, c-format
-msgid "Discard this hunk from worktree [y,n,q,a,d%s,?]? "
-msgstr "從工作區捨棄此區塊 [y,n,q,a,d%s,?]? "
+msgid "Discard this hunk from worktree%s [y,n,q,a,d%s,?]? "
+msgstr "從工作區捨棄此區塊%s [y,n,q,a,d%s,?]? "
 
-#: add-patch.c
+#: add-patch.c add-patch.c add-patch.c
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be marked for "
 "discarding."
 msgstr "如果修補檔能完全套用,編輯區塊將立即標記為捨棄。"
 
-#: add-patch.c
+#: add-patch.c add-patch.c
 msgid ""
 "y - discard this hunk from worktree\n"
 "n - do not discard this hunk from worktree\n"
@@ -448,23 +450,23 @@ msgstr ""
 
 #: add-patch.c
 #, c-format
-msgid "Discard mode change from index and worktree [y,n,q,a,d%s,?]? "
-msgstr "從索引區和工作區捨棄模式變更 [y,n,q,a,d%s,?]? "
+msgid "Discard mode change from index and worktree%s [y,n,q,a,d%s,?]? "
+msgstr "從索引區和工作區捨棄模式變更%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Discard deletion from index and worktree [y,n,q,a,d%s,?]? "
-msgstr "從索引和工作區捨棄刪除 [y,n,q,a,d%s,?]? "
+msgid "Discard deletion from index and worktree%s [y,n,q,a,d%s,?]? "
+msgstr "從索引和工作區捨棄刪除動作%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Discard addition from index and worktree [y,n,q,a,d%s,?]? "
-msgstr "從索引和工作區捨棄加入動作 [y,n,q,a,d%s,?]? "
+msgid "Discard addition from index and worktree%s [y,n,q,a,d%s,?]? "
+msgstr "從索引和工作區捨棄加入動作%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Discard this hunk from index and worktree [y,n,q,a,d%s,?]? "
-msgstr "從索引和工作區捨棄此區塊 [y,n,q,a,d%s,?]? "
+msgid "Discard this hunk from index and worktree%s [y,n,q,a,d%s,?]? "
+msgstr "從索引和工作區捨棄此區塊%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 msgid ""
@@ -482,23 +484,23 @@ msgstr ""
 
 #: add-patch.c
 #, c-format
-msgid "Apply mode change to index and worktree [y,n,q,a,d%s,?]? "
-msgstr "將模式變更套用至索引區和工作區 [y,n,q,a,d%s,?]? "
+msgid "Apply mode change to index and worktree%s [y,n,q,a,d%s,?]? "
+msgstr "將模式變更套用至索引區和工作區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply deletion to index and worktree [y,n,q,a,d%s,?]? "
-msgstr "將刪除動作套用到索引和工作區 [y,n,q,a,d%s,?]? "
+msgid "Apply deletion to index and worktree%s [y,n,q,a,d%s,?]? "
+msgstr "將刪除動作套用到索引和工作區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply addition to index and worktree [y,n,q,a,d%s,?]? "
-msgstr "將加入動作套用到索引和工作區 [y,n,q,a,d%s,?]? "
+msgid "Apply addition to index and worktree%s [y,n,q,a,d%s,?]? "
+msgstr "將加入動作套用到索引和工作區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply this hunk to index and worktree [y,n,q,a,d%s,?]? "
-msgstr "將此區塊套用到索引和工作區 [y,n,q,a,d%s,?]? "
+msgid "Apply this hunk to index and worktree%s [y,n,q,a,d%s,?]? "
+msgstr "將此區塊套用到索引和工作區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 msgid ""
@@ -516,23 +518,23 @@ msgstr ""
 
 #: add-patch.c
 #, c-format
-msgid "Apply mode change to worktree [y,n,q,a,d%s,?]? "
-msgstr "將模式變更套用至工作區 [y,n,q,a,d%s,?]? "
+msgid "Apply mode change to worktree%s [y,n,q,a,d%s,?]? "
+msgstr "將模式變更套用至工作區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply deletion to worktree [y,n,q,a,d%s,?]? "
-msgstr "將刪除動作套用到工作區 [y,n,q,a,d%s,?]? "
+msgid "Apply deletion to worktree%s [y,n,q,a,d%s,?]? "
+msgstr "將刪除動作套用到工作區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply addition to worktree [y,n,q,a,d%s,?]? "
-msgstr "將加入動作套用到工作區 [y,n,q,a,d%s,?]? "
+msgid "Apply addition to worktree%s [y,n,q,a,d%s,?]? "
+msgstr "將加入動作套用到工作區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 #, c-format
-msgid "Apply this hunk to worktree [y,n,q,a,d%s,?]? "
-msgstr "將此區塊套用到工作區 [y,n,q,a,d%s,?]? "
+msgid "Apply this hunk to worktree%s [y,n,q,a,d%s,?]? "
+msgstr "將此區塊套用到工作區%s [y,n,q,a,d%s,?]? "
 
 #: add-patch.c
 msgid ""
@@ -548,6 +550,11 @@ msgstr ""
 "a - 套用此區塊和本檔案中後面的全部區塊\n"
 "d - 不要套用此區塊和本檔案中後面的全部區塊\n"
 
+#: add-patch.c add-patch.c add-patch.c add-patch.c
+#, c-format
+msgid "%s cannot be negative"
+msgstr "%s 不能是負數"
+
 #: add-patch.c
 #, c-format
 msgid "could not parse hunk header '%.*s'"
@@ -659,6 +666,7 @@ msgid "Nothing was applied.\n"
 msgstr "未套用。\n"
 
 #: add-patch.c
+#, c-format
 msgid ""
 "j - go to the next undecided hunk, roll over at the bottom\n"
 "J - go to the next hunk, roll over at the bottom\n"
@@ -670,19 +678,37 @@ msgid ""
 "e - manually edit the current hunk\n"
 "p - print the current hunk\n"
 "P - print the current hunk using the pager\n"
+"> - go to the next file, roll over at the bottom\n"
+"< - go to the previous file, roll over at the top\n"
 "? - print help\n"
+"HUNKS SUMMARY - Hunks: %d, USE: %d, SKIP: %d\n"
 msgstr ""
-"j - 前往下一個未決區塊,在結尾時回到開頭\n"
-"J - 前往下一個區塊,在結尾時回到開頭\n"
-"k - 前往上一個未決區塊,在開頭時回到結尾\n"
-"K - 前往上一個區塊,在開頭時回到結尾\n"
+"j - 前往下一個未決區塊,在最後一個時回到第一個未決區塊\n"
+"J - 前往下一個區塊,在最後一個時回到第一個區塊\n"
+"k - 前往上一個未決區塊,在第一個時回到最後一個未決區塊\n"
+"K - 前往上一個區塊,在第一個時回到最後一個區塊\n"
 "g - 選擇要跳轉至的區塊\n"
 "/ - 尋找符合提供之常規表示式的區塊\n"
 "s - 分割目前區塊為更小的區塊\n"
 "e - 手動編輯目前區塊\n"
 "p - 輸出目前區塊\n"
 "P - 分頁輸出目前區塊\n"
+"> - 前往下一個檔案,在最後一個時回到第一個檔案\n"
+"< - 前往上一個檔案,在第一個時回到最後一個檔案\n"
 "? - 顯示說明\n"
+"區塊摘要 - 區塊數:%d,選取數:%d,略過數:%d\n"
+
+#: add-patch.c
+msgid "'git apply' failed"
+msgstr "「git apply」失敗"
+
+#: add-patch.c
+msgid " (was: y)"
+msgstr " (原本是:y)"
+
+#: add-patch.c
+msgid " (was: n)"
+msgstr " (原本是:n)"
 
 #: add-patch.c
 #, c-format
@@ -690,10 +716,18 @@ msgid "Only one letter is expected, got '%s'"
 msgstr "預期收到一個字母,卻收到「%s」"
 
 #: add-patch.c
+msgid "No next file"
+msgstr "沒有下一個檔案"
+
+#: add-patch.c
+msgid "No previous file"
+msgstr "沒有上一個檔案"
+
+#: add-patch.c add-patch.c
 msgid "No other hunk"
 msgstr "沒有其他區塊"
 
-#: add-patch.c
+#: add-patch.c add-patch.c
 msgid "No other undecided hunk"
 msgstr "沒有其他未決區塊"
 
@@ -755,10 +789,6 @@ msgstr "對不起,無法編輯這個區塊"
 msgid "Unknown command '%s' (use '?' for help)"
 msgstr "未知命令「%s」(使用「?」獲取幫助)"
 
-#: add-patch.c
-msgid "'git apply' failed"
-msgstr "「git apply」失敗"
-
 #: add-patch.c
 msgid "No changes."
 msgstr "沒有變更。"
@@ -767,6 +797,30 @@ msgstr "沒有變更。"
 msgid "Only binary files changed."
 msgstr "只有二進位檔案變更了。"
 
+#: add-patch.c
+#, c-format
+msgid "Stage mode change [y,n,q,a,d%s,?]? "
+msgstr "暫存模式變更 [y,n,q,a,d%s,?]? "
+
+#: add-patch.c
+#, c-format
+msgid "Stage deletion [y,n,q,a,d%s,?]? "
+msgstr "暫存刪除動作 [y,n,q,a,d%s,?]? "
+
+#: add-patch.c
+#, c-format
+msgid "Stage addition [y,n,q,a,d%s,?]? "
+msgstr "暫存加入動作 [y,n,q,a,d%s,?]? "
+
+#: add-patch.c
+#, c-format
+msgid "Stage this hunk [y,n,q,a,d%s,?]? "
+msgstr "暫存此區塊 [y,n,q,a,d%s,?]? "
+
+#: add-patch.c
+msgid "Revision does not refer to a commit"
+msgstr "修訂版指向的不是提交"
+
 #: advice.c
 #, c-format
 msgid ""
@@ -940,8 +994,11 @@ msgstr "命令列以 \\ 結尾"
 msgid "unclosed quote"
 msgstr "未閉合的引號"
 
-#: alias.c builtin/cat-file.c builtin/notes.c builtin/prune-packed.c
-#: builtin/receive-pack.c builtin/refs.c builtin/repo.c builtin/tag.c
+#: alias.c builtin/cat-file.c builtin/notes.c builtin/notes.c
+#: builtin/notes.c builtin/notes.c builtin/notes.c
+#: builtin/notes.c builtin/notes.c builtin/notes.c
+#: builtin/notes.c builtin/prune-packed.c builtin/receive-pack.c
+#: builtin/refs.c builtin/repo.c builtin/tag.c
 #: t/helper/test-pkt-line.c
 msgid "too many arguments"
 msgstr "引數過多"
@@ -956,20 +1013,37 @@ msgstr "無法識別空白字元選項「%s」"
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "無法辨識空白字元忽略選項「%s」"
 
-#: apply.c archive.c builtin/add.c builtin/branch.c builtin/checkout-index.c
-#: builtin/checkout.c builtin/clean.c builtin/clone.c builtin/commit.c
-#: builtin/describe.c builtin/diff-tree.c builtin/difftool.c
-#: builtin/fast-export.c builtin/fetch.c builtin/help.c builtin/index-pack.c
-#: builtin/init-db.c builtin/log.c builtin/ls-files.c builtin/merge-base.c
-#: builtin/merge-tree.c builtin/merge.c builtin/rebase.c builtin/repack.c
-#: builtin/reset.c builtin/rev-parse.c builtin/show-branch.c builtin/stash.c
-#: builtin/submodule--helper.c builtin/tag.c builtin/worktree.c parse-options.c
-#: range-diff.c revision.c
+#: apply.c archive.c builtin/add.c builtin/add.c
+#: builtin/add.c builtin/add.c builtin/branch.c
+#: builtin/checkout-index.c builtin/checkout.c builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c builtin/checkout.c
+#: builtin/clean.c builtin/clone.c builtin/clone.c
+#: builtin/commit.c builtin/commit.c builtin/commit.c
+#: builtin/commit.c builtin/commit.c builtin/describe.c
+#: builtin/diff-tree.c builtin/difftool.c builtin/fast-export.c
+#: builtin/fetch.c builtin/fetch.c builtin/fetch.c
+#: builtin/fetch.c builtin/help.c builtin/index-pack.c
+#: builtin/init-db.c builtin/log.c builtin/log.c
+#: builtin/ls-files.c builtin/merge-base.c builtin/merge-base.c
+#: builtin/merge-tree.c builtin/merge.c builtin/merge.c
+#: builtin/rebase.c builtin/rebase.c builtin/rebase.c
+#: builtin/repack.c builtin/reset.c builtin/reset.c
+#: builtin/rev-parse.c builtin/rev-parse.c builtin/rev-parse.c
+#: builtin/show-branch.c builtin/show-branch.c builtin/stash.c
+#: builtin/stash.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/tag.c builtin/tag.c
+#: builtin/worktree.c builtin/worktree.c builtin/worktree.c
+#: builtin/worktree.c builtin/worktree.c builtin/worktree.c
+#: parse-options.c parse-options.c range-diff.c revision.c
+#: revision.c revision.c revision.c revision.c
+#: revision.c revision.c revision.c revision.c
+#: revision.c revision.c revision.c revision.c
+#: revision.c
 #, c-format
 msgid "options '%s' and '%s' cannot be used together"
 msgstr "無法同時使用「%s」和「%s」選項"
 
-#: apply.c
+#: apply.c apply.c apply.c
 #, c-format
 msgid "'%s' outside a repository"
 msgstr "「%s」在版本庫之外"
@@ -994,14 +1068,30 @@ msgstr "regexec 回傳 %d,輸入為:%s"
 
 #: apply.c
 #, c-format
-msgid "unable to find filename in patch at line %d"
-msgstr "無法在修補檔的第 %d 列找到檔案名稱"
+msgid "unable to find filename in patch at %s:%d"
+msgstr "無法在修補檔的 %s:%d 處找到檔案名稱"
+
+#: apply.c
+#, c-format
+msgid "git apply: bad git-diff - expected /dev/null, got %s at %s:%d"
+msgstr ""
+"git apply:無效的 git-diff — 應為 /dev/null,但在 %2$s:%3$d 處得到 %1$s"
 
 #: apply.c
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr "git apply:無效的 git-diff — 應為 /dev/null,但在第 %2$d 列得到 %1$s"
 
+#: apply.c
+#, c-format
+msgid "git apply: bad git-diff - inconsistent new filename at %s:%d"
+msgstr "git apply:無效的 git-diff — %s:%d 處的新檔案名稱不一致"
+
+#: apply.c
+#, c-format
+msgid "git apply: bad git-diff - inconsistent old filename at %s:%d"
+msgstr "git apply:無效的 git-diff — %s:%d 處的舊檔案名稱不一致"
+
 #: apply.c
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
@@ -1012,11 +1102,21 @@ msgstr "git apply:無效的 git-diff — 第 %d 列的新檔案名稱不一致
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr "git apply:無效的 git-diff — 第 %d 列上舊檔案名稱不一致"
 
+#: apply.c
+#, c-format
+msgid "git apply: bad git-diff - expected /dev/null at %s:%d"
+msgstr "git apply:無效的 git-diff — %s:%d 處預期是 /dev/null"
+
 #: apply.c
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr "git apply:無效的 git-diff — 第 %d 列處預期是 /dev/null"
 
+#: apply.c
+#, c-format
+msgid "invalid mode at %s:%d: %s"
+msgstr "%s:%d 處包含無效檔案模式:%s"
+
 #: apply.c
 #, c-format
 msgid "invalid mode on line %d: %s"
@@ -1027,6 +1127,17 @@ msgstr "第 %d 列包含無效檔案模式:%s"
 msgid "inconsistent header lines %d and %d"
 msgstr "不一致的檔案標頭(%d 列和 %d 列)"
 
+#: apply.c
+#, c-format
+msgid ""
+"git diff header lacks filename information when removing %d leading pathname "
+"component at %s:%d"
+msgid_plural ""
+"git diff header lacks filename information when removing %d leading pathname "
+"components at %s:%d"
+msgstr[0] ""
+"移除 %d 個前導路徑部分後,git diff 標頭缺少檔案名稱資訊(位置:%s:%d)"
+
 #: apply.c
 #, c-format
 msgid ""
@@ -1037,6 +1148,11 @@ msgid_plural ""
 "components (line %d)"
 msgstr[0] "移除 %d 個前導路徑部分後,git diff 標頭缺少檔案名稱資訊(第 %d 列)"
 
+#: apply.c
+#, c-format
+msgid "git diff header lacks filename information at %s:%d"
+msgstr "git diff 標頭缺少檔案名稱資訊(位置:%s:%d)"
+
 #: apply.c
 #, c-format
 msgid "git diff header lacks filename information (line %d)"
@@ -1049,8 +1165,8 @@ msgstr "recount:遇到非預期的列:%.*s"
 
 #: apply.c
 #, c-format
-msgid "patch fragment without header at line %d: %.*s"
-msgstr "第 %d 列的修補檔區段沒有標頭:%.*s"
+msgid "patch fragment without header at %s:%d: %.*s"
+msgstr "%s:%d 處的修補檔區段沒有標頭:%.*s"
 
 #: apply.c
 msgid "new file depends on old contents"
@@ -1062,8 +1178,8 @@ msgstr "刪除的檔案仍有內容"
 
 #: apply.c
 #, c-format
-msgid "corrupt patch at line %d"
-msgstr "修補檔在第 %d 列發現損壞"
+msgid "corrupt patch at %s:%d"
+msgstr "修補檔在 %s:%d 處發現損壞"
 
 #: apply.c
 #, c-format
@@ -1082,18 +1198,18 @@ msgstr "** 警告:檔案 %s 成為空檔案但並未刪除"
 
 #: apply.c
 #, c-format
-msgid "corrupt binary patch at line %d: %.*s"
-msgstr "二進位修補檔在第 %d 列損壞:%.*s"
+msgid "corrupt binary patch at %s:%d: %.*s"
+msgstr "二進位修補檔在 %s:%d 處有損壞:%.*s"
 
 #: apply.c
 #, c-format
-msgid "unrecognized binary patch at line %d"
-msgstr "無法辨識第 %d 列的二進位修補檔"
+msgid "unrecognized binary patch at %s:%d"
+msgstr "無法辨識 %s:%d 處的二進位修補檔"
 
 #: apply.c
 #, c-format
-msgid "patch with only garbage at line %d"
-msgstr "修補檔案的第 %d 列只有垃圾資料"
+msgid "patch with only garbage at %s:%d"
+msgstr "修補檔案的 %s:%d 處只有垃圾資料"
 
 #: apply.c
 #, c-format
@@ -1181,7 +1297,8 @@ msgstr "修補失敗:%s:%ld"
 msgid "cannot checkout %s"
 msgstr "無法簽出 %s"
 
-#: apply.c midx.c pack-mtimes.c pack-revindex.c setup.c
+#: apply.c apply.c apply.c midx.c pack-mtimes.c
+#: pack-revindex.c setup.c
 #, c-format
 msgid "failed to read %s"
 msgstr "無法讀取 %s"
@@ -1191,17 +1308,17 @@ msgstr "無法讀取 %s"
 msgid "reading from '%s' beyond a symbolic link"
 msgstr "讀取符號連結背後的「%s」"
 
-#: apply.c
+#: apply.c apply.c
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "路徑 %s 已被重新命名或刪除"
 
-#: apply.c
+#: apply.c apply.c
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s:不在索引中"
 
-#: apply.c
+#: apply.c apply.c apply.c
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s:與索引不符"
@@ -1215,7 +1332,7 @@ msgstr "版本庫缺少用來進行三方合併,所需要的資料物件。"
 msgid "Performing three-way merge...\n"
 msgstr "正在進行三方合併……\n"
 
-#: apply.c
+#: apply.c apply.c
 #, c-format
 msgid "cannot read the current contents of '%s'"
 msgstr "無法讀取「%s」目前的內容"
@@ -1254,7 +1371,9 @@ msgstr "%s:錯誤類型"
 msgid "%s has type %o, expected %o"
 msgstr "%s 的類型是 %o,預期是 %o"
 
-#: apply.c builtin/fast-import.c read-cache.c
+#: apply.c apply.c builtin/fast-import.c
+#: builtin/fast-import.c read-cache.c read-cache.c
+#: read-cache.c
 #, c-format
 msgid "invalid path '%s'"
 msgstr "路徑「%s」無效"
@@ -1279,7 +1398,7 @@ msgstr "%2$s 的新模式(%1$o)和舊模式(%3$o)不符"
 msgid "new mode (%o) of %s does not match old mode (%o) of %s"
 msgstr "%2$s 的新模式(%1$o)和 %4$s 的舊模式(%3$o)不符"
 
-#: apply.c
+#: apply.c apply.c
 #, c-format
 msgid "affected file '%s' is beyond a symbolic link"
 msgstr "受影響的檔案「%s」在符號連結後"
@@ -1339,12 +1458,12 @@ msgstr "無法對剛建立的檔案「%s」執行 stat"
 msgid "unable to create backing store for newly created file %s"
 msgstr "無法對剛建立的檔案 %s 建立後端儲存"
 
-#: apply.c
+#: apply.c apply.c
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "無法為 %s 加入快取項目"
 
-#: apply.c builtin/bisect.c builtin/gc.c
+#: apply.c builtin/bisect.c builtin/gc.c builtin/gc.c
 #, c-format
 msgid "failed to write to '%s'"
 msgstr "無法寫入「%s」"
@@ -1374,7 +1493,7 @@ msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] "套用修補檔 %%s,其中 %d 個被拒絕……"
 
-#: apply.c
+#: apply.c apply.c apply.c
 #, c-format
 msgid "cannot open %s"
 msgstr "無法開啟 %s"
@@ -1407,6 +1526,16 @@ msgstr "輸入沒有有效的修補檔內容(傳入「--allow-empty」允許
 msgid "unable to read index file"
 msgstr "無法讀取索引檔案"
 
+#: apply.c
+#, c-format
+msgid "option -p expects a non-negative integer, got '%s'"
+msgstr "選項 -p 預期是一個非負數整數,但卻得到「%s」"
+
+#: apply.c
+#, c-format
+msgid "unable to normalize directory: '%s'"
+msgstr "無法標準化目錄:「%s」"
+
 #: apply.c
 #, c-format
 msgid "can't open patch '%s': %s"
@@ -1418,7 +1547,7 @@ msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "抑制下仍有 %d 個空白字元誤用"
 
-#: apply.c
+#: apply.c apply.c
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
@@ -1518,8 +1647,9 @@ msgstr "路徑以 NUL 字元分隔"
 msgid "ensure at least <n> lines of context match"
 msgstr "確保至少符合 <n> 列上下文"
 
-#: apply.c builtin/am.c builtin/interpret-trailers.c builtin/pack-objects.c
-#: builtin/rebase.c
+#: apply.c builtin/am.c builtin/am.c
+#: builtin/interpret-trailers.c builtin/interpret-trailers.c
+#: builtin/pack-objects.c builtin/rebase.c
 msgid "action"
 msgstr "動作"
 
@@ -1527,7 +1657,7 @@ msgstr "動作"
 msgid "detect new or modified lines that have whitespace errors"
 msgstr "檢查新增和修改的列中間,是否有空白字元誤用"
 
-#: apply.c
+#: apply.c apply.c
 msgid "ignore changes in whitespace when finding context"
 msgstr "尋找上下文時忽略空白字元變更"
 
@@ -1582,6 +1712,7 @@ msgid "unsupported file mode: 0%o (SHA1: %s)"
 msgstr "不支援的檔案模式:0%o (SHA1:%s)"
 
 #: archive-tar.c archive-zip.c builtin/pack-objects.c
+#: builtin/pack-objects.c
 #, c-format
 msgid "deflate error (%d)"
 msgstr "壓縮錯誤 (%d)"
@@ -1629,7 +1760,9 @@ msgstr ""
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <repo> [--exec <cmd>] --list"
 
-#: archive.c builtin/fast-import.c builtin/gc.c builtin/notes.c builtin/tag.c
+#: archive.c archive.c builtin/fast-import.c
+#: builtin/fast-import.c builtin/gc.c builtin/notes.c
+#: builtin/tag.c
 #, c-format
 msgid "cannot read '%s'"
 msgstr "無法讀取「%s」"
@@ -1639,7 +1772,7 @@ msgstr "無法讀取「%s」"
 msgid "pathspec '%s' matches files outside the current directory"
 msgstr "符合路徑規格「%s」的檔案在目前目錄之外"
 
-#: archive.c builtin/add.c builtin/rm.c
+#: archive.c builtin/add.c builtin/add.c builtin/rm.c
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "路徑規格「%s」未符合任何檔案"
@@ -1705,13 +1838,17 @@ msgstr "前綴"
 msgid "prepend prefix to each pathname in the archive"
 msgstr "為封存中的每個路徑名稱加上前綴"
 
-#: archive.c builtin/blame.c builtin/commit-tree.c builtin/config.c
-#: builtin/fast-export.c builtin/gc.c builtin/grep.c builtin/hash-object.c
-#: builtin/ls-files.c builtin/notes.c builtin/read-tree.c parse-options.h
+#: archive.c archive.c builtin/blame.c builtin/blame.c
+#: builtin/blame.c builtin/commit-tree.c builtin/config.c
+#: builtin/fast-export.c builtin/fast-export.c
+#: builtin/fast-export.c builtin/gc.c builtin/gc.c
+#: builtin/grep.c builtin/hash-object.c builtin/ls-files.c
+#: builtin/ls-files.c builtin/notes.c builtin/notes.c
+#: builtin/read-tree.c parse-options.h
 msgid "file"
 msgstr "file"
 
-#: archive.c
+#: archive.c archive.c
 msgid "add untracked file to archive"
 msgstr "將未追蹤檔案加進封存"
 
@@ -1731,8 +1868,8 @@ msgstr "讀取工作目錄中的 .gitattributes"
 msgid "report archived files on stderr"
 msgstr "在 stderr 上回報封存的檔案"
 
-#: archive.c builtin/clone.c builtin/fetch.c builtin/pack-objects.c
-#: builtin/pull.c
+#: archive.c builtin/clone.c builtin/fetch.c
+#: builtin/pack-objects.c builtin/pack-objects.c builtin/pull.c
 msgid "time"
 msgstr "time"
 
@@ -1748,7 +1885,8 @@ msgstr "設定壓縮級別"
 msgid "list supported archive formats"
 msgstr "列出支援的封存格式"
 
-#: archive.c builtin/archive.c builtin/clone.c builtin/submodule--helper.c
+#: archive.c builtin/archive.c builtin/clone.c builtin/clone.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 msgid "repo"
 msgstr "repo"
 
@@ -1756,7 +1894,8 @@ msgstr "repo"
 msgid "retrieve the archive from remote repository <repo>"
 msgstr "從遠端版本庫 <repo> 擷取封存檔案"
 
-#: archive.c builtin/archive.c builtin/difftool.c builtin/notes.c
+#: archive.c builtin/archive.c builtin/difftool.c
+#: builtin/notes.c
 msgid "command"
 msgstr "command"
 
@@ -1768,10 +1907,18 @@ msgstr "遠端 git-upload-archive 命令的路徑"
 msgid "Unexpected option --remote"
 msgstr "非預期選項 --remote"
 
-#: archive.c builtin/add.c builtin/checkout.c builtin/clone.c builtin/commit.c
-#: builtin/fast-export.c builtin/index-pack.c builtin/log.c builtin/reset.c
-#: builtin/rm.c builtin/stash.c builtin/worktree.c fetch-pack.c http-fetch.c
-#: revision.c
+#: archive.c builtin/add.c builtin/add.c builtin/add.c
+#: builtin/add.c builtin/add.c builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c builtin/checkout.c
+#: builtin/clone.c builtin/clone.c builtin/commit.c
+#: builtin/commit.c builtin/commit.c builtin/fast-export.c
+#: builtin/index-pack.c builtin/log.c builtin/reset.c
+#: builtin/reset.c builtin/reset.c builtin/reset.c
+#: builtin/reset.c builtin/rm.c builtin/stash.c
+#: builtin/stash.c builtin/stash.c builtin/stash.c
+#: builtin/stash.c builtin/stash.c builtin/stash.c
+#: builtin/worktree.c builtin/worktree.c fetch-pack.c
+#: http-fetch.c http-fetch.c revision.c
 #, c-format
 msgid "the option '%s' requires '%s'"
 msgstr "「%s」選項需要「%s」"
@@ -1850,8 +1997,10 @@ msgstr "無效的 --attr-source 或 GIT_ATTR_SOURCE"
 msgid "unable to stat '%s'"
 msgstr "無法 stat「%s」"
 
-#: bisect.c builtin/cat-file.c builtin/index-pack.c builtin/notes.c
-#: builtin/pack-objects.c combine-diff.c object-file.c rerere.c
+#: bisect.c builtin/cat-file.c builtin/cat-file.c
+#: builtin/index-pack.c builtin/notes.c builtin/pack-objects.c
+#: builtin/pack-objects.c builtin/pack-objects.c combine-diff.c
+#: object-file.c object-file.c rerere.c
 #, c-format
 msgid "unable to read %s"
 msgstr "無法讀取 %s"
@@ -1986,9 +2135,14 @@ msgstr "--contents 和 --reverse 不能混用。"
 msgid "--reverse and --first-parent together require specified latest commit"
 msgstr "--reverse 和 --first-parent 共用,需要指定最新的提交"
 
-#: blame.c builtin/bisect.c builtin/commit.c builtin/fast-export.c
-#: builtin/log.c builtin/merge.c builtin/pack-objects.c builtin/shortlog.c
-#: midx-write.c pack-bitmap.c remote.c sequencer.c submodule.c
+#: blame.c builtin/bisect.c builtin/bisect.c
+#: builtin/commit.c builtin/fast-export.c builtin/log.c
+#: builtin/log.c builtin/log.c builtin/log.c builtin/log.c
+#: builtin/merge.c builtin/pack-objects.c builtin/pack-objects.c
+#: builtin/pack-objects.c builtin/pack-objects.c
+#: builtin/shortlog.c midx-write.c pack-bitmap.c
+#: pack-bitmap.c remote.c sequencer.c sequencer.c
+#: submodule.c
 msgid "revision walk setup failed"
 msgstr "修訂版遍歷設定失敗"
 
@@ -2063,10 +2217,12 @@ msgid "not tracking: ambiguous information for ref '%s'"
 msgstr "未追蹤:「%s」引用有歧義"
 
 #  譯者:為保證在輸出中對齊,注意調整句中空格!
+#. #-#-#-#-#  branch.c.po  #-#-#-#-#
 #. TRANSLATORS: This is a line listing a remote with duplicate
 #. refspecs in the advice message below. For RTL languages you'll
 #. probably want to swap the "%s" and leading "  " space around.
 #.
+#. #-#-#-#-#  object-name.c.po  #-#-#-#-#
 #. TRANSLATORS: This is line item of ambiguous object output
 #. from describe_ambiguous_object() above. For RTL languages
 #. you'll probably want to swap the "%s" and leading " " space
@@ -2148,7 +2304,8 @@ msgstr ""
 "並建立兩個分支間的追蹤關係,您可能需要使用 `git push -u`\n"
 "推送分支並設定和上游的關聯。"
 
-#: branch.c builtin/replace.c
+#: branch.c builtin/replace.c builtin/replace.c
+#: builtin/replace.c builtin/replace.c
 #, c-format
 msgid "not a valid object name: '%s'"
 msgstr "物件名稱無效:「%s」"
@@ -2177,7 +2334,7 @@ msgstr ""
 "您可以使用「git checkout --no-recurse-submodules %s && git submodule update "
 "--init」命令嘗試更新子模組"
 
-#: branch.c
+#: branch.c branch.c
 #, c-format
 msgid "submodule '%s': cannot create branch '%s'"
 msgstr "「%s」子模組:無法建立「%s」分支"
@@ -2227,14 +2384,15 @@ msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr "下列路徑根據其中一個 .gitignore 檔案而被忽略:\n"
 
 #: builtin/add.c builtin/clean.c builtin/fetch.c builtin/mv.c
-#: builtin/prune-packed.c builtin/pull.c builtin/push.c builtin/remote.c
-#: builtin/rm.c builtin/send-pack.c builtin/sparse-checkout.c
+#: builtin/prune-packed.c builtin/pull.c builtin/push.c
+#: builtin/remote.c builtin/rm.c builtin/send-pack.c
+#: builtin/sparse-checkout.c
 msgid "dry run"
 msgstr "測試執行"
 
 #: builtin/add.c builtin/check-ignore.c builtin/commit.c
-#: builtin/count-objects.c builtin/fsck.c builtin/log.c builtin/mv.c
-#: builtin/read-tree.c builtin/refs.c
+#: builtin/count-objects.c builtin/fsck.c builtin/log.c
+#: builtin/mv.c builtin/read-tree.c builtin/refs.c
 msgid "be verbose"
 msgstr "詳細輸出"
 
@@ -2246,6 +2404,11 @@ msgstr "互動式挑選"
 msgid "select hunks interactively"
 msgstr "互動式選取區塊"
 
+#: builtin/add.c builtin/checkout.c builtin/reset.c
+#: builtin/stash.c builtin/stash.c
+msgid "auto advance to the next file when selecting hunks interactively"
+msgstr "在互動式選取區塊時自動前往下一個檔案"
+
 #: builtin/add.c
 msgid "edit current diff and apply"
 msgstr "編輯目前差異並套用"
@@ -2342,8 +2505,10 @@ msgstr "如果您確定想要加入它們,請使用 -f。"
 msgid "adding files failed"
 msgstr "加入檔案失敗"
 
-#: builtin/add.c builtin/checkout.c builtin/commit.c builtin/reset.c
-#: builtin/stash.c
+#: builtin/add.c builtin/add.c builtin/checkout.c
+#: builtin/checkout.c builtin/commit.c builtin/commit.c
+#: builtin/reset.c builtin/reset.c builtin/stash.c
+#: builtin/stash.c builtin/stash.c builtin/stash.c
 #, c-format
 msgid "'%s' cannot be negative"
 msgstr "「%s」不能是負數"
@@ -2353,8 +2518,8 @@ msgstr "「%s」不能是負數"
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr "--chmod 的參數「%s」必須是 -x 或 +x"
 
-#: builtin/add.c builtin/checkout.c builtin/commit.c builtin/reset.c
-#: builtin/rm.c builtin/stash.c
+#: builtin/add.c builtin/checkout.c builtin/commit.c
+#: builtin/reset.c builtin/rm.c builtin/stash.c
 #, c-format
 msgid "'%s' and pathspec arguments cannot be used together"
 msgstr "「%s」和路徑規格引數不得同時使用"
@@ -2368,15 +2533,19 @@ msgstr "沒有指定,亦未加入檔案。\n"
 msgid "Maybe you wanted to say 'git add .'?"
 msgstr "也許您想要執行的是「git add .」?"
 
-#: builtin/add.c builtin/check-ignore.c builtin/checkout.c builtin/clean.c
-#: builtin/commit.c builtin/diff-tree.c builtin/grep.c builtin/mv.c
-#: builtin/reset.c builtin/rm.c builtin/submodule--helper.c read-cache.c
-#: rerere.c submodule.c
+#: builtin/add.c builtin/check-ignore.c builtin/checkout.c
+#: builtin/checkout.c builtin/clean.c builtin/commit.c
+#: builtin/diff-tree.c builtin/grep.c builtin/mv.c
+#: builtin/reset.c builtin/rm.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c read-cache.c read-cache.c
+#: rerere.c rerere.c rerere.c submodule.c
 msgid "index file corrupt"
 msgstr "索引檔案損壞"
 
-#: builtin/add.c builtin/am.c builtin/checkout.c builtin/clone.c
-#: builtin/commit.c builtin/stash.c merge.c rerere.c
+#: builtin/add.c builtin/am.c builtin/am.c builtin/checkout.c
+#: builtin/checkout.c builtin/clone.c builtin/commit.c
+#: builtin/commit.c builtin/commit.c builtin/history.c
+#: builtin/stash.c merge.c rerere.c
 msgid "unable to write new index file"
 msgstr "無法寫入新的索引檔案"
 
@@ -2385,14 +2554,18 @@ msgstr "無法寫入新的索引檔案"
 msgid "bad action '%s' for '%s'"
 msgstr "「%s」動作對「%s」無效"
 
-#: builtin/am.c builtin/blame.c builtin/fetch.c builtin/pack-objects.c
-#: builtin/pull.c builtin/revert.c diff-merges.c diff.c environment.c
-#: gpg-interface.c ls-refs.c parallel-checkout.c sequencer.c setup.c
+#: builtin/am.c builtin/am.c builtin/am.c builtin/blame.c
+#: builtin/blame.c builtin/fetch.c builtin/pack-objects.c
+#: builtin/pack-objects.c builtin/pull.c builtin/pull.c
+#: builtin/pull.c builtin/revert.c diff-merges.c diff.c
+#: environment.c gpg-interface.c gpg-interface.c ls-refs.c
+#: parallel-checkout.c sequencer.c setup.c setup.c setup.c
 #, c-format
 msgid "invalid value for '%s': '%s'"
 msgstr "「%s」的值無效:「%s」"
 
 #: builtin/am.c builtin/commit.c builtin/merge.c sequencer.c
+#: sequencer.c sequencer.c sequencer.c trailer.c
 #, c-format
 msgid "could not read '%s'"
 msgstr "無法讀取「%s」"
@@ -2401,6 +2574,7 @@ msgstr "無法讀取「%s」"
 msgid "could not parse author script"
 msgstr "無法解析作者文稿"
 
+#: builtin/am.c builtin/am.c builtin/am.c builtin/am.c
 #: builtin/am.c builtin/replace.c commit.c sequencer.c
 #, c-format
 msgid "could not parse %s"
@@ -2425,12 +2599,14 @@ msgstr "從「%s」複製註解到「%s」失敗"
 msgid "fseek failed"
 msgstr "fseek 失敗"
 
-#: builtin/am.c builtin/rebase.c sequencer.c wrapper.c
+#: builtin/am.c builtin/am.c builtin/rebase.c sequencer.c
+#: wrapper.c wrapper.c
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "無法開啟「%s」進行讀取"
 
-#: builtin/am.c builtin/rebase.c editor.c sequencer.c wrapper.c
+#: builtin/am.c builtin/rebase.c editor.c sequencer.c
+#: wrapper.c wrapper.c
 #, c-format
 msgid "could not open '%s' for writing"
 msgstr "無法開啟「%s」進行寫入"
@@ -2448,7 +2624,7 @@ msgstr "一次只能套用一個 StGIT 修補檔序列"
 msgid "invalid timestamp"
 msgstr "無效的時間戳"
 
-#: builtin/am.c
+#: builtin/am.c builtin/am.c
 msgid "invalid Date line"
 msgstr "無效的 Date 列"
 
@@ -2504,7 +2680,8 @@ msgstr "在提交 %s 中缺少作者列"
 msgid "invalid ident line: %.*s"
 msgstr "ident 列無效:%.*s"
 
-#: builtin/am.c builtin/checkout.c builtin/clone.c commit-graph.c
+#: builtin/am.c builtin/checkout.c builtin/clone.c
+#: commit-graph.c
 #, c-format
 msgid "unable to parse commit %s"
 msgstr "無法解析 %s 提交"
@@ -2541,11 +2718,12 @@ msgstr "git write-tree 無法寫入樹狀物件"
 msgid "applying to an empty history"
 msgstr "正在套用至空白歷史記錄上"
 
-#: builtin/am.c builtin/commit.c builtin/merge.c builtin/replay.c sequencer.c
+#: builtin/am.c builtin/commit.c builtin/merge.c
+#: builtin/merge.c replay.c sequencer.c
 msgid "failed to write commit object"
 msgstr "無法寫入提交物件"
 
-#: builtin/am.c
+#: builtin/am.c builtin/am.c
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr "無法繼續:%s 不存在。"
@@ -2587,7 +2765,7 @@ msgstr "建立空白提交:%.*s"
 msgid "Patch is empty."
 msgstr "修補檔空白。"
 
-#: builtin/am.c
+#: builtin/am.c builtin/am.c
 #, c-format
 msgid "Applying: %.*s"
 msgstr "套用:%.*s"
@@ -2630,12 +2808,13 @@ msgstr ""
 "您應該對已經解決衝突的每一個檔案執行 `git add`,標記為已經完成。\n"
 "你可以對「由他們刪除」的檔案,執行 `git rm` 指令。"
 
-#: builtin/am.c builtin/reset.c
+#: builtin/am.c builtin/am.c builtin/am.c builtin/reset.c
+#: builtin/reset.c
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "無法解析物件「%s」。"
 
-#: builtin/am.c
+#: builtin/am.c builtin/am.c
 msgid "failed to clean index"
 msgstr "無法清除索引"
 
@@ -2676,8 +2855,8 @@ msgstr "歷史遺留選項——無作用"
 msgid "allow fall back on 3way merging if needed"
 msgstr "必要時允許回復至三方合併"
 
-#: builtin/am.c builtin/init-db.c builtin/prune-packed.c builtin/repack.c
-#: builtin/stash.c
+#: builtin/am.c builtin/init-db.c builtin/prune-packed.c
+#: builtin/repack.c builtin/stash.c
 msgid "be quiet"
 msgstr "靜默模式"
 
@@ -2713,21 +2892,30 @@ msgstr "截掉裁切線前的所有內容"
 msgid "pass it through git-mailinfo"
 msgstr "透過 git-mailinfo 傳入"
 
+#: builtin/am.c builtin/am.c builtin/am.c builtin/am.c
+#: builtin/am.c builtin/am.c builtin/am.c builtin/am.c
 #: builtin/am.c
 msgid "pass it through git-apply"
 msgstr "透過 git-apply 傳入"
 
-#: builtin/am.c builtin/commit.c builtin/fmt-merge-msg.c builtin/grep.c
-#: builtin/merge.c builtin/pull.c builtin/rebase.c builtin/repack.c
-#: builtin/show-branch.c builtin/show-ref.c builtin/tag.c parse-options.h
+#: builtin/am.c builtin/commit.c builtin/fmt-merge-msg.c
+#: builtin/fmt-merge-msg.c builtin/grep.c builtin/merge.c
+#: builtin/pull.c builtin/pull.c builtin/pull.c
+#: builtin/rebase.c builtin/repack.c builtin/repack.c
+#: builtin/repack.c builtin/show-branch.c builtin/show-ref.c
+#: builtin/tag.c parse-options.h parse-options.h
+#: parse-options.h
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c builtin/branch.c builtin/bugreport.c builtin/cat-file.c
-#: builtin/clone.c builtin/diagnose.c builtin/for-each-ref.c builtin/init-db.c
-#: builtin/ls-files.c builtin/ls-tree.c builtin/refs.c builtin/replace.c
-#: builtin/repo.c builtin/submodule--helper.c builtin/tag.c
-#: builtin/verify-tag.c
+#: builtin/am.c builtin/branch.c builtin/bugreport.c
+#: builtin/cat-file.c builtin/cat-file.c builtin/cat-file.c
+#: builtin/clone.c builtin/diagnose.c builtin/for-each-ref.c
+#: builtin/init-db.c builtin/ls-files.c builtin/ls-tree.c
+#: builtin/refs.c builtin/replace.c builtin/repo.c
+#: builtin/repo.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
+#: builtin/tag.c builtin/verify-tag.c
 msgid "format"
 msgstr "format"
 
@@ -2779,8 +2967,9 @@ msgstr "將作者日期當作提交日期"
 msgid "use current timestamp for author date"
 msgstr "把目前時間戳當作是作者日期"
 
-#: builtin/am.c builtin/commit-tree.c builtin/commit.c builtin/merge.c
-#: builtin/pull.c builtin/rebase.c builtin/revert.c builtin/tag.c
+#: builtin/am.c builtin/commit-tree.c builtin/commit.c
+#: builtin/merge.c builtin/pull.c builtin/rebase.c
+#: builtin/revert.c builtin/tag.c
 msgid "key-id"
 msgstr "key-id"
 
@@ -2871,6 +3060,12 @@ msgstr "一次請求的最小物件數量"
 msgid "Restrict the missing objects to the current sparse-checkout"
 msgstr "將缺少的物件限制於目前的稀疏簽出"
 
+#: builtin/backfill.c builtin/diff-pairs.c builtin/log.c
+#: builtin/log.c builtin/replay.c builtin/shortlog.c bundle.c
+#, c-format
+msgid "unrecognized argument: %s"
+msgstr "不認識的引數:%s"
+
 #: builtin/bisect.c
 msgid ""
 "git bisect start [--term-(bad|new)=<term-new> --term-(good|old)=<term-old>]\n"
@@ -3050,7 +3245,7 @@ msgstr ""
 msgid "could not open '%s' for appending"
 msgstr "無法開啟「%s」進行附加"
 
-#: builtin/bisect.c
+#: builtin/bisect.c builtin/bisect.c
 msgid "'' is not a valid term"
 msgstr "「 」不是有效術語"
 
@@ -3104,7 +3299,7 @@ msgstr "要呼叫 `--bisect-state`,請傳入一個以上的引數"
 msgid "'git bisect %s' can take only one argument."
 msgstr "「git bisect %s」只取一個引數。"
 
-#: builtin/bisect.c
+#: builtin/bisect.c builtin/bisect.c
 #, c-format
 msgid "Bad rev input: %s"
 msgstr "rev 輸入格式錯誤:%s"
@@ -3215,7 +3410,7 @@ msgstr "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
 msgid "git annotate [<options>] [<rev-opts>] [<rev>] [--] <file>"
 msgstr "git annotate [<options>] [<rev-opts>] [<rev>] [--] <file>"
 
-#: builtin/blame.c
+#: builtin/blame.c builtin/blame.c
 msgid "<rev-opts> are documented in git-rev-list(1)"
 msgstr "<rev-opts> 的文件在 git-rev-list(1)"
 
@@ -3228,7 +3423,7 @@ msgstr "預期是個顏色:%s"
 msgid "must end with a color"
 msgstr "結尾必須是一個顏色"
 
-#: builtin/blame.c diff.c merge-ort.c transport.c
+#: builtin/blame.c diff.c diff.c merge-ort.c transport.c
 #, c-format
 msgid "unknown value for config '%s': %s"
 msgstr "設定 '%s' 的取值未知:%s"
@@ -3261,8 +3456,9 @@ msgstr "不把根提交當作邊界(預設值:off)"
 msgid "show work cost statistics"
 msgstr "顯示工作量統計"
 
-#: builtin/blame.c builtin/checkout.c builtin/clone.c builtin/commit-graph.c
-#: builtin/fetch.c builtin/merge.c builtin/multi-pack-index.c builtin/pull.c
+#: builtin/blame.c builtin/checkout.c builtin/clone.c
+#: builtin/commit-graph.c builtin/commit-graph.c builtin/fetch.c
+#: builtin/merge.c builtin/multi-pack-index.c builtin/pull.c
 #: builtin/push.c builtin/remote.c builtin/send-pack.c
 msgid "force progress reporting"
 msgstr "強制顯示進度報告"
@@ -3351,7 +3547,7 @@ msgstr "使用來自 <file> 的修訂集而不是呼叫 git-rev-list"
 msgid "use <file>'s contents as the final image"
 msgstr "將 <file> 的內容當成是最終印象"
 
-#: builtin/blame.c
+#: builtin/blame.c builtin/blame.c
 msgid "score"
 msgstr "score"
 
@@ -3543,12 +3739,12 @@ msgstr "%s 工作區的 HEAD 指標未被更新"
 msgid "invalid branch name: '%s'"
 msgstr "分支名稱無效:「%s」"
 
-#: builtin/branch.c
+#: builtin/branch.c builtin/branch.c builtin/branch.c
 #, c-format
 msgid "no commit on branch '%s' yet"
 msgstr "分支「%s」尚無提交"
 
-#: builtin/branch.c
+#: builtin/branch.c builtin/branch.c
 #, c-format
 msgid "no branch named '%s'"
 msgstr "沒有名為「%s」的分支"
@@ -3607,7 +3803,8 @@ msgstr "顯示雜湊值和主旨,若傳入兩次則顯示上游分支"
 msgid "suppress informational messages"
 msgstr "不顯示資訊訊息"
 
-#: builtin/branch.c builtin/checkout.c builtin/submodule--helper.c
+#: builtin/branch.c builtin/checkout.c
+#: builtin/submodule--helper.c
 msgid "set branch tracking configuration"
 msgstr "設定分支追蹤組態"
 
@@ -3635,11 +3832,11 @@ msgstr "使用彩色輸出"
 msgid "act on remote-tracking branches"
 msgstr "作用於遠端追蹤分支"
 
-#: builtin/branch.c
+#: builtin/branch.c builtin/branch.c
 msgid "print only branches that contain the commit"
 msgstr "只輸出包含此提交的分支"
 
-#: builtin/branch.c
+#: builtin/branch.c builtin/branch.c
 msgid "print only branches that don't contain the commit"
 msgstr "只輸出不包含此提交的分支"
 
@@ -3711,7 +3908,9 @@ msgstr "只輸出尚未合併的分支"
 msgid "list branches in columns"
 msgstr "以行的形式列出分支"
 
-#: builtin/branch.c builtin/for-each-ref.c builtin/notes.c builtin/tag.c
+#: builtin/branch.c builtin/for-each-ref.c builtin/notes.c
+#: builtin/notes.c builtin/notes.c builtin/notes.c
+#: builtin/tag.c
 msgid "object"
 msgstr "object"
 
@@ -3727,8 +3926,8 @@ msgstr "排序和過濾不區分大小寫"
 msgid "recurse through submodules"
 msgstr "在子模組中遞迴"
 
-#: builtin/branch.c builtin/for-each-ref.c builtin/ls-files.c builtin/ls-tree.c
-#: builtin/tag.c builtin/verify-tag.c
+#: builtin/branch.c builtin/for-each-ref.c builtin/ls-files.c
+#: builtin/ls-tree.c builtin/tag.c builtin/verify-tag.c
 msgid "format to use for the output"
 msgstr "輸出格式"
 
@@ -3751,7 +3950,7 @@ msgstr ""
 msgid "--recurse-submodules can only be used to create branches"
 msgstr "--recurse-submodules 只能用來建立分支"
 
-#: builtin/branch.c
+#: builtin/branch.c builtin/branch.c
 msgid "branch name required"
 msgstr "必須提供分支名稱"
 
@@ -3789,7 +3988,7 @@ msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch"
 msgstr "HEAD 不指向任何分支時無法將其上游設為 %s"
 
-#: builtin/branch.c
+#: builtin/branch.c builtin/branch.c
 #, c-format
 msgid "no such branch '%s'"
 msgstr "無「%s」分支"
@@ -3887,8 +4086,11 @@ msgstr ""
 "請檢閱臭蟲報告下方的剩餘部分。\n"
 "您可刪除任何您不想分享的地方。\n"
 
-#: builtin/bugreport.c builtin/commit.c builtin/fast-export.c
-#: builtin/pack-objects.c builtin/rebase.c builtin/replay.c parse-options.h
+#: builtin/bugreport.c builtin/commit.c builtin/commit.c
+#: builtin/commit.c builtin/fast-export.c builtin/fast-export.c
+#: builtin/fast-export.c builtin/fast-export.c
+#: builtin/pack-objects.c builtin/rebase.c builtin/replay.c
+#: parse-options.h
 msgid "mode"
 msgstr "mode"
 
@@ -3966,7 +4168,7 @@ msgstr "需要提供 <file> 引數"
 msgid "do not show progress meter"
 msgstr "不顯示進度列"
 
-#: builtin/bundle.c builtin/pack-objects.c
+#: builtin/bundle.c builtin/bundle.c builtin/pack-objects.c
 msgid "show progress meter"
 msgstr "顯示進度列"
 
@@ -4180,7 +4382,8 @@ msgstr "「%s=<%s>」需要「%s」或「%s」"
 msgid "path|tree-ish"
 msgstr "path|tree-ish"
 
-#: builtin/cat-file.c
+#: builtin/cat-file.c builtin/cat-file.c builtin/cat-file.c
+#: builtin/cat-file.c builtin/cat-file.c
 #, c-format
 msgid "'%s' requires a batch mode"
 msgstr "「%s」需要批次處理模式"
@@ -4194,7 +4397,7 @@ msgstr "「-%c」與批次處理模式不相容"
 msgid "batch modes take no arguments"
 msgstr "批次處理模式不取引數"
 
-#: builtin/cat-file.c
+#: builtin/cat-file.c builtin/cat-file.c
 #, c-format
 msgid "<rev> required with '%s'"
 msgstr "「%s」需要 <rev>"
@@ -4247,7 +4450,8 @@ msgstr "<tree-ish>"
 msgid "which tree-ish to check attributes at"
 msgstr "要檢查屬性的樹狀物件指示元"
 
-#: builtin/check-ignore.c builtin/checkout.c builtin/gc.c builtin/worktree.c
+#: builtin/check-ignore.c builtin/checkout.c builtin/gc.c
+#: builtin/worktree.c
 msgid "suppress progress reporting"
 msgstr "不顯示進度報告"
 
@@ -4311,8 +4515,10 @@ msgstr "未指定聯絡地址"
 msgid "git checkout--worker [<options>]"
 msgstr "git checkout--worker [<options>]"
 
-#: builtin/checkout--worker.c builtin/checkout-index.c builtin/column.c
+#: builtin/checkout--worker.c builtin/checkout-index.c
+#: builtin/column.c builtin/column.c builtin/submodule--helper.c
 #: builtin/submodule--helper.c builtin/worktree.c
+#: builtin/worktree.c
 msgid "string"
 msgstr "string"
 
@@ -4364,28 +4570,12 @@ msgstr "將內容寫入暫存檔"
 msgid "copy out the files from named stage"
 msgstr "從指定暫存區中拷出檔案"
 
-#: builtin/checkout.c
-msgid "git checkout [<options>] <branch>"
-msgstr "git checkout [<options>] <branch>"
-
-#: builtin/checkout.c
-msgid "git checkout [<options>] [<branch>] -- <file>..."
-msgstr "git checkout [<options>] [<branch>] -- <file>..."
-
-#: builtin/checkout.c
-msgid "git switch [<options>] [<branch>]"
-msgstr "git switch [<options>] [<branch>]"
-
-#: builtin/checkout.c
-msgid "git restore [<options>] [--source=<branch>] <file>..."
-msgstr "git restore [<options>] [--source=<branch>] <file>..."
-
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "path '%s' does not have our version"
 msgstr "「%s」路徑沒有我們的版本"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "path '%s' does not have their version"
 msgstr "「%s」路徑沒有他們的版本"
@@ -4428,6 +4618,7 @@ msgid "Updated %d path from the index"
 msgid_plural "Updated %d paths from the index"
 msgstr[0] "已從索引區更新 %d 個路徑"
 
+#: builtin/checkout.c builtin/checkout.c builtin/checkout.c
 #: builtin/checkout.c
 #, c-format
 msgid "'%s' cannot be used with updating paths"
@@ -4448,7 +4639,7 @@ msgstr "「%s」或「%s」皆未指定"
 msgid "'%s' must be used when '%s' is not specified"
 msgstr "未指定「%2$s」時,必須使用「%1$s」"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "'%s' or '%s' cannot be used with %s"
 msgstr "「%s」或「%s」不能與 %s 同時使用"
@@ -4458,13 +4649,16 @@ msgstr "「%s」或「%s」不能與 %s 同時使用"
 msgid "'%s', '%s', or '%s' cannot be used when checking out of a tree"
 msgstr "「%s」、「%s」或「%s」不能在簽出樹狀物件時使用"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "路徑「%s」未合併"
 
-#: builtin/checkout.c builtin/grep.c builtin/merge-tree.c builtin/reset.c
-#: merge-ort.c reset.c sequencer.c tree-walk.c
+#: builtin/checkout.c builtin/checkout.c builtin/checkout.c
+#: builtin/grep.c builtin/grep.c builtin/grep.c
+#: builtin/merge-tree.c builtin/merge-tree.c builtin/merge-tree.c
+#: builtin/reset.c merge-ort.c reset.c sequencer.c
+#: sequencer.c tree-walk.c
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "無法讀取樹狀物件(%s)"
@@ -4491,7 +4685,7 @@ msgstr "無法對「%s」執行 reflog 動作:%s\n"
 msgid "HEAD is now at"
 msgstr "HEAD 目前位於"
 
-#: builtin/checkout.c builtin/clone.c
+#: builtin/checkout.c builtin/clone.c builtin/clone.c
 msgid "unable to update HEAD"
 msgstr "無法更新 HEAD"
 
@@ -4510,7 +4704,7 @@ msgstr "已經位於「%s」\n"
 msgid "Switched to and reset branch '%s'\n"
 msgstr "已切換並重設分支「%s」\n"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "已切換至新分支「%s」\n"
@@ -4573,7 +4767,7 @@ msgstr "在修訂版遍歷時遇到內部錯誤"
 msgid "Previous HEAD position was"
 msgstr "之前的 HEAD 指標位置在"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 msgid "You are on a branch yet to be born"
 msgstr "您正位於一個尚未初始化的分支"
 
@@ -4587,11 +4781,12 @@ msgstr ""
 "請使用 --(和可選的 --no-guess)來消除歧義"
 
 #: builtin/checkout.c
+#, c-format
 msgid ""
 "If you meant to check out a remote tracking branch on, e.g. 'origin',\n"
 "you can do so by fully qualifying the name with the --track option:\n"
 "\n"
-"    git checkout --track origin/<name>\n"
+"    git %s --track origin/<name>\n"
 "\n"
 "If you'd like to always have checkouts of an ambiguous <name> prefer\n"
 "one remote, e.g. the 'origin' remote, consider setting\n"
@@ -4600,7 +4795,7 @@ msgstr ""
 "如果您想要簽出遠端追蹤分支,例如「origin」,\n"
 "您可以使用 --track 選項寫出全名:\n"
 "\n"
-"    git checkout --track origin/<name>\n"
+"    git %s --track origin/<name>\n"
 "\n"
 "如果您平時比較想要使用模糊的簡短分支名稱 <name>,\n"
 "而不太想寫如「origin」的遠端版本庫名稱,\n"
@@ -4620,12 +4815,12 @@ msgstr "預期只有一個引用"
 msgid "only one reference expected, %d given."
 msgstr "預期只有一個引用,卻提供了 %d 個。"
 
-#: builtin/checkout.c builtin/worktree.c
+#: builtin/checkout.c builtin/worktree.c builtin/worktree.c
 #, c-format
 msgid "invalid reference: %s"
 msgstr "無效引用:%s"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "引用不是樹狀物件:%s"
@@ -4640,7 +4835,7 @@ msgstr "預期收到分支,卻收到標籤「%s」"
 msgid "a branch is expected, got remote branch '%s'"
 msgstr "預期收到分支,卻收到遠端分支「%s」"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "a branch is expected, got '%s'"
 msgstr "預期收到分支,卻收到「%s」"
@@ -4703,7 +4898,7 @@ msgstr "在進行二分搜尋時切換分支"
 msgid "paths cannot be used with switching branches"
 msgstr "切換分支時不能指定路徑"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr "切換分支時不能指定「%s」"
@@ -4713,7 +4908,8 @@ msgstr "切換分支時不能指定「%s」"
 msgid "'%s' needs the paths to check out"
 msgstr "「%s」需要指定要簽出的路徑"
 
-#: builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c builtin/checkout.c
+#: builtin/checkout.c builtin/checkout.c
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "「%s」不能與「%s」同時使用"
@@ -4741,7 +4937,8 @@ msgstr "未知的衝突輸出風格「%s」"
 msgid "perform a 3-way merge with the new branch"
 msgstr "和新分支進行三方合併"
 
-#: builtin/checkout.c builtin/log.c builtin/range-diff.c parse-options.h
+#: builtin/checkout.c builtin/log.c builtin/range-diff.c
+#: parse-options.h
 msgid "style"
 msgstr "style"
 
@@ -4785,6 +4982,22 @@ msgstr "簽出未合併檔案的他方版本"
 msgid "do not limit pathspecs to sparse entries only"
 msgstr "不將路徑規格限制為僅稀疏項目"
 
+#: builtin/checkout.c
+msgid "git checkout [<options>] <branch>"
+msgstr "git checkout [<options>] <branch>"
+
+#: builtin/checkout.c
+msgid "git checkout [<options>] [<branch>] -- <file>..."
+msgstr "git checkout [<options>] [<branch>] -- <file>..."
+
+#: builtin/checkout.c
+msgid "git switch [<options>] [<branch>]"
+msgstr "git switch [<options>] [<branch>]"
+
+#: builtin/checkout.c
+msgid "git restore [<options>] [--source=<branch>] <file>..."
+msgstr "git restore [<options>] [--source=<branch>] <file>..."
+
 #: builtin/checkout.c
 #, c-format
 msgid "options '-%c', '-%c', and '%s' cannot be used together"
@@ -4829,8 +5042,12 @@ msgstr ""
 msgid "you must specify path(s) to restore"
 msgstr "您必須指定要還原的路徑"
 
-#: builtin/checkout.c builtin/clone.c builtin/remote.c builtin/replay.c
+#: builtin/checkout.c builtin/checkout.c builtin/checkout.c
+#: builtin/checkout.c builtin/clone.c builtin/remote.c
+#: builtin/remote.c builtin/replay.c builtin/replay.c
+#: builtin/replay.c builtin/submodule--helper.c
 #: builtin/submodule--helper.c builtin/worktree.c
+#: builtin/worktree.c
 msgid "branch"
 msgstr "branch"
 
@@ -5038,9 +5255,11 @@ msgstr "互動式清除"
 msgid "remove whole directories"
 msgstr "移除整個目錄"
 
-#: builtin/clean.c builtin/config.c builtin/describe.c builtin/grep.c
-#: builtin/log.c builtin/ls-files.c builtin/name-rev.c builtin/show-ref.c
-#: pack-refs.c ref-filter.h
+#: builtin/clean.c builtin/config.c builtin/config.c
+#: builtin/config.c builtin/describe.c builtin/describe.c
+#: builtin/grep.c builtin/log.c builtin/log.c
+#: builtin/ls-files.c builtin/name-rev.c builtin/name-rev.c
+#: builtin/show-ref.c pack-refs.c pack-refs.c ref-filter.h
 msgid "pattern"
 msgstr "pattern"
 
@@ -5065,7 +5284,8 @@ msgstr "clean.requireForce 是 true 且未給定 -f 選項:拒絕清理"
 msgid "info: Could not add alternate for '%s': %s\n"
 msgstr "info: 不能為「%s」新增一個備用:%s\n"
 
-#: builtin/clone.c builtin/diff.c builtin/rm.c grep.c setup.c
+#: builtin/clone.c builtin/diff.c builtin/rm.c grep.c
+#: setup.c
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "對「%s」呼叫 stat 失敗"
@@ -5176,7 +5396,7 @@ msgstr "不要拓製淺層版本庫"
 msgid "don't create a checkout"
 msgstr "不要建立簽出"
 
-#: builtin/clone.c builtin/init-db.c
+#: builtin/clone.c builtin/clone.c builtin/init-db.c
 msgid "create a bare repository"
 msgstr "建立裸版本庫"
 
@@ -5216,17 +5436,21 @@ msgstr "模板目錄"
 msgid "directory from which templates will be used"
 msgstr "將被使用的模板目錄"
 
-#: builtin/clone.c builtin/submodule--helper.c
+#: builtin/clone.c builtin/clone.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 msgid "reference repository"
 msgstr "引用版本庫"
 
 #: builtin/clone.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c
 msgid "use --reference only while cloning"
 msgstr "僅在拓製時使用 --reference"
 
-#: builtin/clone.c builtin/column.c builtin/fmt-merge-msg.c builtin/init-db.c
-#: builtin/merge-file.c builtin/merge.c builtin/pack-objects.c builtin/repack.c
+#: builtin/clone.c builtin/column.c builtin/fmt-merge-msg.c
+#: builtin/init-db.c builtin/merge-file.c builtin/merge.c
+#: builtin/pack-objects.c builtin/repack.c
 #: builtin/submodule--helper.c t/helper/test-simple-ipc.c
+#: t/helper/test-simple-ipc.c
 msgid "name"
 msgstr "name"
 
@@ -5267,6 +5491,7 @@ msgid "deepen history of shallow clone, excluding ref"
 msgstr "取得更多淺層拓製的過往歷史記錄,除了特定修訂版"
 
 #: builtin/clone.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c
 msgid "clone only one branch, HEAD or --branch"
 msgstr "只拓製一個分支、HEAD 或 --branch"
 
@@ -5287,6 +5512,7 @@ msgid "separate git dir from working tree"
 msgstr "git 目錄和工作區分離"
 
 #: builtin/clone.c builtin/init-db.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 msgid "specify the reference format to use"
 msgstr "指定要使用的引用格式"
 
@@ -5298,13 +5524,13 @@ msgstr "key=value"
 msgid "set config inside the new repository"
 msgstr "在新版本庫中設定設定訊息"
 
-#: builtin/clone.c builtin/fetch.c builtin/ls-remote.c builtin/pull.c
-#: builtin/push.c builtin/send-pack.c
+#: builtin/clone.c builtin/fetch.c builtin/ls-remote.c
+#: builtin/pull.c builtin/push.c builtin/send-pack.c
 msgid "server-specific"
 msgstr "server-specific"
 
-#: builtin/clone.c builtin/fetch.c builtin/ls-remote.c builtin/pull.c
-#: builtin/push.c builtin/send-pack.c
+#: builtin/clone.c builtin/fetch.c builtin/ls-remote.c
+#: builtin/pull.c builtin/push.c builtin/send-pack.c
 msgid "option to transmit"
 msgstr "傳輸選項"
 
@@ -5340,8 +5566,9 @@ msgstr "太多參數。"
 msgid "You must specify a repository to clone."
 msgstr "您必須指定要拓製的版本庫。"
 
-#: builtin/clone.c builtin/init-db.c builtin/refs.c builtin/submodule--helper.c
-#: setup.c
+#: builtin/clone.c builtin/init-db.c builtin/refs.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c setup.c setup.c
 #, c-format
 msgid "unknown ref storage format '%s'"
 msgstr "未知的引用儲存格式「%s」"
@@ -5371,7 +5598,8 @@ msgstr "版本庫路徑 '%s' 已經存在,並且不是一個空目錄。"
 msgid "working tree '%s' already exists."
 msgstr "工作區 '%s' 已經存在。"
 
-#: builtin/clone.c builtin/difftool.c builtin/log.c builtin/worktree.c
+#: builtin/clone.c builtin/clone.c builtin/difftool.c
+#: builtin/log.c builtin/worktree.c builtin/worktree.c
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "無法為「%s」建立前導目錄"
@@ -5397,7 +5625,7 @@ msgid ""
 "able"
 msgstr "clone --recursive 與 --reference 和 --reference-if-able 不相容"
 
-#: builtin/clone.c builtin/remote.c
+#: builtin/clone.c builtin/remote.c builtin/remote.c
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "'%s' 不是一個有效的遠端名稱"
@@ -5418,7 +5646,7 @@ msgstr "本機拓製會忽略 --shallow-exclude。請改用 file:// 協定。"
 msgid "--filter is ignored in local clones; use file:// instead."
 msgstr "本機拓製會忽略 --filter。請改用 file:// 協定。"
 
-#: builtin/clone.c fetch-pack.c
+#: builtin/clone.c fetch-pack.c fetch-pack.c
 msgid "source repository is shallow, reject to clone."
 msgstr "來源版本庫是淺版本庫 (shallow)。拒絕拓製。"
 
@@ -5434,7 +5662,7 @@ msgstr "--local 被忽略"
 msgid "cannot clone from filtered bundle"
 msgstr "無法從過濾後的套件包拓製"
 
-#: builtin/clone.c
+#: builtin/clone.c builtin/clone.c
 msgid "failed to initialize the repo, skipping bundle URI"
 msgstr "無法初始化版本庫,略過套件包 URI"
 
@@ -5447,7 +5675,7 @@ msgstr "無法從套件包 URL「%s」抓取物件"
 msgid "failed to fetch advertised bundles"
 msgstr "無法抓取公佈的套件包"
 
-#: builtin/clone.c
+#: builtin/clone.c builtin/clone.c
 msgid "remote transport reported error"
 msgstr "遠端傳輸回報錯誤"
 
@@ -5473,7 +5701,7 @@ msgstr "git column [<選項>]"
 msgid "lookup config vars"
 msgstr "尋找設定變數"
 
-#: builtin/column.c
+#: builtin/column.c builtin/column.c
 msgid "layout to use"
 msgstr "要使用的配置"
 
@@ -5524,8 +5752,8 @@ msgstr ""
 "[no-]progress]\n"
 "                       <split-options>"
 
-#: builtin/commit-graph.c builtin/fetch.c builtin/gc.c builtin/log.c
-#: builtin/repack.c
+#: builtin/commit-graph.c builtin/fetch.c builtin/gc.c
+#: builtin/log.c builtin/repack.c builtin/repack.c
 msgid "dir"
 msgstr "目錄"
 
@@ -5562,7 +5790,7 @@ msgstr "非期望的非十六進位物件 ID:%s"
 msgid "invalid object: %s"
 msgstr "物件無效:%s"
 
-#: builtin/commit-graph.c parse-options-cb.c
+#: builtin/commit-graph.c parse-options-cb.c parse-options-cb.c
 #, c-format
 msgid "option `%s' expects a numerical value"
 msgstr "選項 `%s' 期望一個數字值"
@@ -5632,7 +5860,7 @@ msgstr ""
 msgid "duplicate parent %s ignored"
 msgstr "忽略重複的父提交 %s"
 
-#: builtin/commit-tree.c builtin/log.c
+#: builtin/commit-tree.c builtin/commit-tree.c builtin/log.c
 #, c-format
 msgid "not a valid object name %s"
 msgstr "不是一個有效的物件名 %s"
@@ -5655,8 +5883,9 @@ msgstr "父提交"
 msgid "id of a parent commit object"
 msgstr "父提交物件 ID"
 
-#: builtin/commit-tree.c builtin/commit.c builtin/merge.c builtin/notes.c
-#: builtin/stash.c builtin/tag.c
+#: builtin/commit-tree.c builtin/commit.c builtin/merge.c
+#: builtin/notes.c builtin/notes.c builtin/stash.c
+#: builtin/tag.c
 msgid "message"
 msgstr "訊息"
 
@@ -5668,8 +5897,8 @@ msgstr "提交說明"
 msgid "read commit log message from file"
 msgstr "從檔案中讀取提交說明"
 
-#: builtin/commit-tree.c builtin/commit.c builtin/merge.c builtin/pull.c
-#: builtin/revert.c
+#: builtin/commit-tree.c builtin/commit.c builtin/merge.c
+#: builtin/pull.c builtin/revert.c
 msgid "GPG sign commit"
 msgstr "GPG 提交簽名"
 
@@ -5832,7 +6061,7 @@ msgid ""
 "in the current commit message"
 msgstr "無法選擇一個未被目前提交說明使用的備註字元"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c builtin/commit.c
 #, c-format
 msgid "could not lookup commit '%s'"
 msgstr "無法查詢提交「%s」"
@@ -5856,7 +6085,7 @@ msgstr "無法讀取日誌檔案「%s」"
 msgid "options '%s' and '%s:%s' cannot be used together"
 msgstr "「%s」和「%s:%s」選項不得同時使用"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c
 msgid "could not read SQUASH_MSG"
 msgstr "無法讀取 SQUASH_MSG"
 
@@ -5864,7 +6093,8 @@ msgstr "無法讀取 SQUASH_MSG"
 msgid "could not read MERGE_MSG"
 msgstr "無法讀取 MERGE_MSG"
 
-#: builtin/commit.c bundle.c rerere.c sequencer.c
+#: builtin/commit.c builtin/history.c builtin/submodule--helper.c
+#: bundle.c rerere.c rerere.c sequencer.c sequencer.c
 #, c-format
 msgid "could not open '%s'"
 msgstr "無法開啟「%s」"
@@ -5963,7 +6193,7 @@ msgstr "無法讀取索引"
 
 #: builtin/commit.c builtin/tag.c
 msgid "unable to pass trailers to --trailers"
-msgstr "無法將尾部署名傳遞至 --trailers"
+msgstr "無法將結尾資訊傳遞至 --trailers"
 
 #: builtin/commit.c
 msgid "Error building trees"
@@ -5984,28 +6214,28 @@ msgstr "--author '%s' 不是 '姓名 <信箱>' 格式,且未能在現有作者
 msgid "Invalid ignored mode '%s'"
 msgstr "無效的忽略模式 '%s'"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr "無效的未追蹤檔案參數 '%s'"
 
 #: builtin/commit.c
 msgid "You are in the middle of a merge -- cannot reword."
-msgstr "正在合併中——不能重新輸入。"
+msgstr "正在合併中——不能改寫說明。"
 
 #: builtin/commit.c
 msgid "You are in the middle of a cherry-pick -- cannot reword."
-msgstr "正在揀選中——不能重新輸入。"
+msgstr "正在揀選中——不能改寫說明。"
 
 #: builtin/commit.c
 #, c-format
 msgid "reword option of '%s' and path '%s' cannot be used together"
-msgstr "「%s」的改寫選項和「%s」路徑不得同時使用"
+msgstr "「%s」的改寫說明選項和「%s」路徑不得同時使用"
 
 #: builtin/commit.c
 #, c-format
 msgid "reword option of '%s' and '%s' cannot be used together"
-msgstr "「%s」的改寫選項和「%s」不得同時使用"
+msgstr "「%s」的改寫說明選項和「%s」不得同時使用"
 
 #: builtin/commit.c
 msgid "You have nothing to amend."
@@ -6037,11 +6267,11 @@ msgstr "未知選項:--fixup=%s:%s"
 msgid "paths '%s ...' with -a does not make sense"
 msgstr "路徑 '%s ...' 和 -a 選項同時使用沒有意義"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c
 msgid "show status concisely"
 msgstr "以簡潔的格式顯示狀態"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c
 msgid "show branch information"
 msgstr "顯示分支訊息"
 
@@ -6049,7 +6279,7 @@ msgstr "顯示分支訊息"
 msgid "show stash information"
 msgstr "顯示貯存區訊息"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c
 msgid "compute full ahead/behind values"
 msgstr "計算完整的領先/落後值"
 
@@ -6057,19 +6287,20 @@ msgstr "計算完整的領先/落後值"
 msgid "version"
 msgstr "版本"
 
-#: builtin/commit.c builtin/fetch.c builtin/push.c builtin/worktree.c
+#: builtin/commit.c builtin/commit.c builtin/fetch.c
+#: builtin/push.c builtin/worktree.c
 msgid "machine-readable output"
 msgstr "機器可讀的輸出"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c
 msgid "show status in long format (default)"
 msgstr "以長格式顯示狀態(預設值)"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c
 msgid "terminate entries with NUL"
 msgstr "條目以 NUL 字元結尾"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/commit.c
 msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
 msgstr "顯示未追蹤的檔案,「模式」的可選參數:all、normal、no。(預設值:all)"
 
@@ -6140,7 +6371,8 @@ msgstr "日期"
 msgid "override date for commit"
 msgstr "提交時覆蓋日期"
 
-#: builtin/commit.c parse-options.h ref-filter.h
+#: builtin/commit.c builtin/commit.c builtin/commit.c
+#: parse-options.h ref-filter.h
 msgid "commit"
 msgstr "提交"
 
@@ -6172,16 +6404,17 @@ msgstr "使用 autosquash 格式的提交說明用以壓縮至指定的提交"
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr "現在將該提交的作者改為我(和 -C/-c/--amend 參數共用)"
 
-#: builtin/commit.c builtin/interpret-trailers.c builtin/tag.c
+#: builtin/commit.c builtin/interpret-trailers.c builtin/rebase.c
+#: builtin/tag.c
 msgid "trailer"
-msgstr "尾部署名"
+msgstr "結尾資訊"
 
-#: builtin/commit.c builtin/tag.c
+#: builtin/commit.c builtin/rebase.c builtin/tag.c
 msgid "add custom trailer(s)"
-msgstr "加入自訂尾部署名"
+msgstr "加入自訂結尾資訊"
 
-#: builtin/commit.c builtin/log.c builtin/merge.c builtin/pull.c
-#: builtin/revert.c
+#: builtin/commit.c builtin/log.c builtin/merge.c
+#: builtin/pull.c builtin/revert.c
 msgid "add a Signed-off-by trailer"
 msgstr "在結尾加入 Signed-off-by"
 
@@ -6245,7 +6478,7 @@ msgstr "允許一個空提交"
 msgid "ok to record a change with an empty message"
 msgstr "允許空的提交說明"
 
-#: builtin/commit.c sequencer.c
+#: builtin/commit.c sequencer.c sequencer.c
 msgid "could not parse HEAD commit"
 msgstr "無法解析 HEAD 提交"
 
@@ -6263,7 +6496,7 @@ msgstr "無法讀取 MERGE_MODE"
 msgid "could not read commit message: %s"
 msgstr "無法讀取提交說明:%s"
 
-#: builtin/commit.c
+#: builtin/commit.c builtin/history.c
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr "終止提交因為提交說明為空。\n"
@@ -6287,7 +6520,7 @@ msgstr ""
 "版本庫已更新,但無法寫入新的索引檔案。請檢查磁碟是否\n"
 "已滿或磁碟配額已耗盡,然後執行「git restore --staged :/」復原。"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "git config list [<file-option>] [<display-option>] [--includes]"
 msgstr "git config list [<檔案選項>] [<顯示選項>] [--includes]"
 
@@ -6309,7 +6542,7 @@ msgstr ""
 "git config set [<file-option>] [--type=<type>] [--all] [--value=<pattern>] "
 "[--fixed-value] <name> <value>"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid ""
 "git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] "
 "<name>"
@@ -6317,15 +6550,15 @@ msgstr ""
 "git config unset [<file-option>] [--all] [--value=<pattern>] [--fixed-value] "
 "<name>"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "git config rename-section [<file-option>] <old-name> <new-name>"
 msgstr "git config rename-section [<檔案選項>] <舊名稱> <新名稱>"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "git config remove-section [<file-option>] <name>"
 msgstr "git config remove-section [<檔案選項>] <名稱>"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "git config edit [<file-option>]"
 msgstr "git config edit [<檔案選項>]"
 
@@ -6371,7 +6604,7 @@ msgstr "使用版本庫級設定檔案"
 msgid "use per-worktree config file"
 msgstr "使用工作區級別的設定檔案"
 
-#: builtin/config.c builtin/gc.c
+#: builtin/config.c builtin/gc.c builtin/gc.c
 msgid "use given config file"
 msgstr "使用指定的設定檔案"
 
@@ -6488,7 +6721,7 @@ msgstr "無法解析顏色 '%s'"
 msgid "unable to parse default color value"
 msgstr "無法解析預設顏色值"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "not in a git directory"
 msgstr "不在 git 版本庫中"
 
@@ -6531,7 +6764,7 @@ msgstr "--blob 只能在一個版本庫內使用"
 msgid "--worktree can only be used inside a git repository"
 msgstr "--worktree 只能在 git 版本庫中使用"
 
-#: builtin/config.c builtin/gc.c
+#: builtin/config.c builtin/gc.c builtin/gc.c
 msgid "$HOME not set"
 msgstr "$HOME 未設定"
 
@@ -6544,20 +6777,21 @@ msgstr ""
 "不能和多個工作區一起使用 --worktree,除非啟用 worktreeConfig 設定擴充部分。\n"
 "詳情請閱讀「git help worktree」的「CONFIGURATION FILE」小節"
 
+#: builtin/config.c builtin/config.c builtin/config.c
 #: builtin/config.c
 msgid "Other"
 msgstr "其他"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c builtin/config.c
 msgid "respect include directives on lookup"
 msgstr "查詢時引用 include 指令遞迴尋找"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 #, c-format
 msgid "unable to read config file '%s'"
 msgstr "無法讀取設定檔案 '%s'"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "error processing config file(s)"
 msgstr "處理設定檔案發生錯誤"
 
@@ -6573,10 +6807,11 @@ msgstr "回傳有多項值之組態選項的所有值"
 msgid "interpret the name as a regular expression"
 msgstr "將名稱當作常規表示式解讀"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "show config with values matching the pattern"
 msgstr "顯示值符合模式的組態"
 
+#: builtin/config.c builtin/config.c builtin/config.c
 #: builtin/config.c
 msgid "use string equality when comparing values to value pattern"
 msgstr "使用字串相等比較值和模式"
@@ -6589,6 +6824,7 @@ msgstr "URL"
 msgid "show config matching the given URL"
 msgstr "顯示符合提供 URL 的組態"
 
+#: builtin/config.c builtin/config.c builtin/config.c
 #: builtin/config.c
 msgid "value"
 msgstr "取值"
@@ -6597,7 +6833,7 @@ msgstr "取值"
 msgid "use default value when missing entry"
 msgstr "未指定參數時所使用的預設值"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c builtin/config.c
 msgid "--fixed-value only applies with 'value-pattern'"
 msgstr "--fixed-value 僅套用至 'value-pattern'"
 
@@ -6609,7 +6845,7 @@ msgstr "--default= 無法和 --all 或 --url= 一起使用"
 msgid "--url= cannot be used with --all, --regexp or --value"
 msgstr "--url= 無法和 --all、--regexp、--value 一起使用"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "Filter"
 msgstr "過濾器"
 
@@ -6617,7 +6853,7 @@ msgstr "過濾器"
 msgid "replace multi-valued config option with new value"
 msgstr "以新值取代有多項值的組態選項"
 
-#: builtin/config.c
+#: builtin/config.c builtin/config.c
 msgid "human-readable comment string (# will be prepended as needed)"
 msgstr "人類可讀的備註字串(將按需插入 # 至前方)"
 
@@ -6650,6 +6886,7 @@ msgstr "取消設定所有多值組態選項"
 msgid "unset multi-valued config options with matching values"
 msgstr "取消設定其值相符的多值組態選項"
 
+#: builtin/config.c builtin/config.c builtin/config.c
 #: builtin/config.c
 #, c-format
 msgid "no such section: %s"
@@ -6788,11 +7025,12 @@ msgstr ""
 msgid "print debugging messages to stderr"
 msgstr "除錯訊息輸出到標準錯誤"
 
+#: builtin/credential-cache--daemon.c
 #: builtin/credential-cache--daemon.c
 msgid "credential-cache--daemon unavailable; no unix socket support"
 msgstr "credential-cache--daemon 無法使用;缺少 unix socket 支援"
 
-#: builtin/credential-cache.c
+#: builtin/credential-cache.c builtin/credential-cache.c
 msgid "credential-cache unavailable; no unix socket support"
 msgstr "credential-cache 無法使用;缺少 unix socket 支援"
 
@@ -6951,7 +7189,7 @@ msgstr "不考慮符合 <模式> 的標籤"
 msgid "show abbreviated commit object as fallback"
 msgstr "顯示簡寫的提交號作為後備"
 
-#: builtin/describe.c
+#: builtin/describe.c builtin/describe.c
 msgid "mark"
 msgstr "標記"
 
@@ -6967,10 +7205,10 @@ msgstr "對於損壞的工作區,追加 <標記>(預設值:」-broken\")
 msgid "No names found, cannot describe anything."
 msgstr "沒有發現名稱,無法描述任何東西。"
 
-#: builtin/describe.c
+#: builtin/describe.c builtin/describe.c
 #, c-format
 msgid "option '%s' and commit-ishes cannot be used together"
-msgstr "「%s」選項和提交不得同時使用"
+msgstr "「%s」選項和提交指示元不得同時使用"
 
 #: builtin/diagnose.c
 msgid ""
@@ -7006,12 +7244,6 @@ msgstr "無法解析物件 ID:%s"
 msgid "git diff-pairs -z [<diff-options>]"
 msgstr "git diff-pairs -z [<diff-options>]"
 
-#: builtin/diff-pairs.c builtin/log.c builtin/replay.c builtin/shortlog.c
-#: bundle.c
-#, c-format
-msgid "unrecognized argument: %s"
-msgstr "不認識的引數:%s"
-
 #: builtin/diff-pairs.c
 msgid "working without -z is not supported"
 msgstr "不支援在無 -z 的情況下運作"
@@ -7073,7 +7305,8 @@ msgstr "無效選項:%s"
 msgid "%s...%s: no merge base"
 msgstr "%s...%s: 無合併基底"
 
-#: builtin/diff.c setup.c
+#: builtin/diff.c setup.c setup.c setup.c setup.c
+#: setup.c
 msgid "cannot come back to cwd"
 msgstr "無法返回目前工作目錄"
 
@@ -7137,7 +7370,7 @@ msgstr "兩個檔案都被修改:'%s' 和 '%s'。"
 msgid "working tree file has been left."
 msgstr "工作區檔案被留了下來。"
 
-#: builtin/difftool.c sequencer.c
+#: builtin/difftool.c sequencer.c sequencer.c sequencer.c
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "無法將「%s」複製至「%s」"
@@ -7229,7 +7462,7 @@ msgstr "標籤之物件濾除者的模式未知:%s"
 msgid "unknown reencoding mode: %s"
 msgstr "重新編碼的模式未知:%s"
 
-#: builtin/fast-export.c
+#: builtin/fast-export.c builtin/fast-export.c
 #, c-format
 msgid "could not read blob %s"
 msgstr "無法讀取資料物件 %s"
@@ -7249,7 +7482,7 @@ msgstr "無法寫入資料物件「%s」"
 msgid "unexpected comparison status '%c' for %s, %s"
 msgstr "%2$s、%3$s 有非預期的比較狀態「%1$c」"
 
-#: builtin/fast-export.c
+#: builtin/fast-export.c builtin/fast-export.c
 msgid "none"
 msgstr "無"
 
@@ -7286,14 +7519,6 @@ msgstr "去除提交 %s 的簽章"
 msgid "encountered signed commit %s; use --signed-commits=<mode> to handle it"
 msgstr "發現已簽署的提交 %s;使用 --signed-commits=<mode> 來處理"
 
-#: builtin/fast-export.c
-msgid ""
-"'strip-if-invalid' is not a valid mode for git fast-export with --signed-"
-"commits=<mode>"
-msgstr ""
-"「strip-if-invalid」不是搭配 --signed-commits=<mode> 使用 git fast-export 的"
-"有效模式"
-
 #: builtin/fast-export.c
 #, c-format
 msgid ""
@@ -7323,14 +7548,6 @@ msgstr "去除標籤 %s 的簽章"
 msgid "encountered signed tag %s; use --signed-tags=<mode> to handle it"
 msgstr "發現已簽署的標籤 %s;使用 --signed-tags=<mode> 來處理"
 
-#: builtin/fast-export.c
-msgid ""
-"'strip-if-invalid' is not a valid mode for git fast-export with --signed-"
-"tags=<mode>"
-msgstr ""
-"「strip-if-invalid」不是搭配 --signed-tags=<mode> 使用 git fast-export 的有效"
-"模式"
-
 #: builtin/fast-export.c
 #, c-format
 msgid ""
@@ -7367,12 +7584,14 @@ msgstr "無法為寫入開啟標記檔案 %s。"
 msgid "unable to write marks file %s."
 msgstr "無法寫入標記檔案 %s。"
 
-#: builtin/fast-export.c builtin/fast-import.c
+#: builtin/fast-export.c builtin/fast-export.c
+#: builtin/fast-import.c builtin/fast-import.c
 #, c-format
 msgid "corrupt mark line: %s"
 msgstr "損壞的標記列:%s"
 
-#: builtin/fast-export.c builtin/fast-import.c fetch-pack.c
+#: builtin/fast-export.c builtin/fast-import.c
+#: builtin/fast-import.c fetch-pack.c fetch-pack.c
 #, c-format
 msgid "object not found: %s"
 msgstr "物件未找到:%s"
@@ -7545,7 +7764,7 @@ msgstr "非預期的壓縮失敗:%d"
 msgid "not a tree: %s"
 msgstr "非樹狀物件:%s"
 
-#: builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
 #, c-format
 msgid "can't load tree %s"
 msgstr "無法載入樹狀物件 %s"
@@ -7559,7 +7778,7 @@ msgstr "%s 中有損壞的模式"
 msgid "root cannot be a non-directory"
 msgstr "根不能不是目錄"
 
-#: builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
 msgid "empty path component found in input"
 msgstr "輸入中有空的路徑部分"
 
@@ -7582,8 +7801,8 @@ msgstr "分支 %s 缺少提交。"
 msgid "not updating %s (new tip %s does not contain %s)"
 msgstr "沒有更新 %s(提示:%s 不包含 %s)"
 
-#: builtin/fast-import.c builtin/sparse-checkout.c commit-graph.c midx-write.c
-#: sequencer.c
+#: builtin/fast-import.c builtin/sparse-checkout.c commit-graph.c
+#: midx-write.c sequencer.c
 #, c-format
 msgid "unable to create leading directories of %s"
 msgstr "不能為 %s 建立先導目錄"
@@ -7642,7 +7861,7 @@ msgstr "身分字串中缺少 >:%s"
 msgid "missing space after > in ident string: %s"
 msgstr "身分字串的 > 後面缺少空格:%s"
 
-#: builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
 #, c-format
 msgid "invalid raw date \"%s\" in ident: %s"
 msgstr "身分中有無效的原始日期「%s」:%s"
@@ -7702,17 +7921,18 @@ msgstr "%s 後有垃圾:%s"
 msgid "missing space after %s: %s"
 msgstr "%s 後缺少空格:%s"
 
-#: builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
 #, c-format
 msgid "corrupt mode: %s"
 msgstr "損壞的模式:%s"
 
-#: builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
 #, c-format
 msgid "invalid dataref: %s"
 msgstr "無效的資料引用:%s"
 
-#: builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
 #, c-format
 msgid "missing space after SHA1: %s"
 msgstr "SHA1 值後缺少空格:%s"
@@ -7755,22 +7975,25 @@ msgstr "分支中沒有路徑 %s"
 msgid "can't add a note on empty branch."
 msgstr "不能在空分支上附加註記。"
 
+#: builtin/fast-import.c builtin/fast-import.c
 #: builtin/fast-import.c
 #, c-format
 msgid "mark :%<PRIuMAX> not a commit"
 msgstr "標記 :%<PRIuMAX> 不是提交"
 
+#: builtin/fast-import.c builtin/fast-import.c
 #: builtin/fast-import.c
 #, c-format
 msgid "not a valid commit: %s"
 msgstr "不是有效的提交:%s"
 
-#: builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
 #, c-format
 msgid "invalid ref name or SHA1 expression: %s"
 msgstr "無效的引用名稱或 SHA1 表示式:%s"
 
-#: builtin/fast-import.c
+#: builtin/fast-import.c builtin/fast-import.c
 #, c-format
 msgid "not a blob (actually a %s): %s"
 msgstr "不是資料物件(而是 %s):%s"
@@ -7822,7 +8045,8 @@ msgstr "找到多個 %s 簽章,忽略多餘的簽章"
 msgid "parse_one_signature() returned unknown hash algo"
 msgstr "parse_one_signature() 回傳了未知的雜湊演算法"
 
-#: builtin/fast-import.c builtin/fsck.c
+#: builtin/fast-import.c builtin/fsck.c builtin/fsck.c
+#: builtin/fsck.c
 msgid "unknown"
 msgstr "未知"
 
@@ -7853,6 +8077,45 @@ msgstr ""
 "正在去除提交的無效簽章\n"
 "  據稱由 %s 所簽"
 
+#: builtin/fast-import.c
+#, c-format
+msgid ""
+"replacing invalid signature for commit '%.100s...'\n"
+"  allegedly by %s"
+msgstr ""
+"正在取代提交「%.100s...」的無效簽章\n"
+"  據稱由 %s 所簽"
+
+#: builtin/fast-import.c
+#, c-format
+msgid ""
+"replacing invalid signature for commit '%.*s'\n"
+"  allegedly by %s"
+msgstr ""
+"正在取代提交「%.*s」的無效簽章\n"
+"  據稱由 %s 所簽"
+
+#: builtin/fast-import.c
+#, c-format
+msgid ""
+"replacing invalid signature for commit\n"
+"  allegedly by %s"
+msgstr ""
+"正在取代提交的無效簽章\n"
+"  據稱由 %s 所簽"
+
+#: builtin/fast-import.c builtin/fast-import.c
+msgid "aborting due to invalid signature"
+msgstr "因為簽章無效而中止"
+
+#: builtin/fast-import.c
+msgid "signing commits in interoperability mode is unsupported"
+msgstr "不支援在互通模式下簽署提交"
+
+#: builtin/fast-import.c
+msgid "failed to sign commit object"
+msgstr "無法簽署提交物件"
+
 #: builtin/fast-import.c
 msgid "expected committer but didn't get one"
 msgstr "預期有提交者,卻沒收到"
@@ -7869,6 +8132,10 @@ msgstr "去除提交簽章"
 msgid "importing a commit signature verbatim"
 msgstr "按原樣匯入提交簽章"
 
+#: builtin/fast-import.c
+msgid "failed to sign tag object"
+msgstr "無法簽署標籤物件"
+
 #: builtin/fast-import.c
 #, c-format
 msgid "importing a tag signature verbatim for tag '%s'"
@@ -7883,14 +8150,6 @@ msgstr "去除標籤「%s」的簽章"
 msgid "encountered signed tag; use --signed-tags=<mode> to handle it"
 msgstr "發現已簽署的標籤;使用 --signed-tags=<mode> 來處理"
 
-#: builtin/fast-import.c
-msgid ""
-"'strip-if-invalid' is not a valid mode for git fast-import with --signed-"
-"tags=<mode>"
-msgstr ""
-"「strip-if-invalid」不是搭配 --signed-tags=<mode> 使用 git fast-import 的有效"
-"模式"
-
 #: builtin/fast-import.c
 #, c-format
 msgid "expected 'from' command, got '%s'"
@@ -7924,6 +8183,7 @@ msgstr "物件 %s 是 %s,但預期是資料物件。"
 msgid "not a mark: %s"
 msgstr "不是標記:%s"
 
+#: builtin/fast-import.c builtin/fast-import.c
 #: builtin/fast-import.c
 #, c-format
 msgid "unknown mark: %s"
@@ -8118,7 +8378,7 @@ msgstr "找不到物件 %s"
 msgid "[up to date]"
 msgstr "[最新]"
 
-#: builtin/fetch.c
+#: builtin/fetch.c builtin/fetch.c builtin/fetch.c
 msgid "[rejected]"
 msgstr "[已拒絕]"
 
@@ -8130,6 +8390,7 @@ msgstr "無法抓取至已簽出分支"
 msgid "[tag update]"
 msgstr "[標籤更新]"
 
+#: builtin/fetch.c builtin/fetch.c builtin/fetch.c
 #: builtin/fetch.c
 msgid "unable to update local ref"
 msgstr "不能更新本機引用"
@@ -8158,7 +8419,8 @@ msgstr "強制更新"
 msgid "non-fast-forward"
 msgstr "非快轉"
 
-#: builtin/fetch.c builtin/grep.c sequencer.c
+#: builtin/fetch.c builtin/fetch.c builtin/grep.c
+#: sequencer.c
 #, c-format
 msgid "cannot open '%s'"
 msgstr "不能開啟 '%s'"
@@ -8314,12 +8576,12 @@ msgstr ""
 "找不到來源分支。\n"
 "您得使用 --set-upstream 選項明確指定一個分支"
 
-#: builtin/fetch.c
+#: builtin/fetch.c builtin/fetch.c
 #, c-format
 msgid "Fetching %s\n"
 msgstr "正在取得 %s\n"
 
-#: builtin/fetch.c
+#: builtin/fetch.c builtin/fetch.c
 #, c-format
 msgid "could not fetch %s"
 msgstr "無法取得 %s"
@@ -8394,7 +8656,7 @@ msgid "prune local tags no longer on remote and clobber changed tags"
 msgstr "清除遠端不存在的本機標籤,並且取代變更標籤"
 
 #  譯者:可選值,不能翻譯
-#: builtin/fetch.c builtin/pull.c
+#: builtin/fetch.c builtin/fetch.c builtin/pull.c
 msgid "on-demand"
 msgstr "on-demand"
 
@@ -8414,7 +8676,8 @@ msgstr "保持下載包"
 msgid "allow updating of HEAD ref"
 msgstr "允許更新 HEAD 引用"
 
-#: builtin/fetch.c builtin/pull.c
+#: builtin/fetch.c builtin/fetch.c builtin/pull.c
+#: builtin/pull.c
 msgid "deepen history of shallow clone"
 msgstr "取得淺拓製的更多過去歷史記錄"
 
@@ -8452,7 +8715,8 @@ msgstr "引用映射"
 msgid "specify fetch refmap"
 msgstr "指定取得動作的引用映射"
 
-#: builtin/fetch.c builtin/pull.c builtin/rebase.c builtin/replay.c
+#: builtin/fetch.c builtin/pull.c builtin/rebase.c
+#: builtin/replay.c
 msgid "revision"
 msgstr "revision"
 
@@ -8464,7 +8728,7 @@ msgstr "報告我們只擁有從該物件開始可以取得的物件"
 msgid "do not fetch a packfile; instead, print ancestors of negotiation tips"
 msgstr "不取得 packfile,而是輸出協商的祖先提交"
 
-#: builtin/fetch.c
+#: builtin/fetch.c builtin/fetch.c
 msgid "run 'maintenance --auto' after fetching"
 msgstr "取得 (fetch) 後執行 'maintenance --auto'"
 
@@ -8667,7 +8931,7 @@ msgid "got bad config --config=%s"
 msgstr "收到無效的組態 --config=%s"
 
 #. TRANSLATORS: e.g. error in tree 01bfda: <more explanation>
-#: builtin/fsck.c
+#: builtin/fsck.c builtin/fsck.c
 #, c-format
 msgid "error in %s %s: %s"
 msgstr "%s %s 錯誤:%s"
@@ -8678,7 +8942,7 @@ msgstr "%s %s 錯誤:%s"
 msgid "warning in %s %s: %s"
 msgstr "%s %s 警告:%s"
 
-#: builtin/fsck.c
+#: builtin/fsck.c builtin/fsck.c
 #, c-format
 msgid "broken link from %7s %s"
 msgstr "來自 %7s %s 的損壞的連結"
@@ -8719,7 +8983,8 @@ msgstr "懸空 %s %s"
 msgid "could not create lost-found"
 msgstr "無法建立 lost-found"
 
-#: builtin/fsck.c builtin/gc.c builtin/rebase.c rebase-interactive.c rerere.c
+#: builtin/fsck.c builtin/gc.c builtin/rebase.c
+#: rebase-interactive.c rerere.c rerere.c sequencer.c
 #: sequencer.c
 #, c-format
 msgid "could not write '%s'"
@@ -8850,7 +9115,7 @@ msgstr "無法讀取「%s」封裝的修訂版索引 (rev-index)"
 msgid "invalid rev-index for pack '%s'"
 msgstr "「%s」封裝的修訂版索引 (rev-index) 無效"
 
-#: builtin/fsck.c
+#: builtin/fsck.c builtin/fsck.c
 msgid "Checking ref database"
 msgstr "正在檢查引用資料庫"
 
@@ -8930,7 +9195,7 @@ msgstr "git fsmonitor--daemon start [<options>]"
 msgid "git fsmonitor--daemon run [<options>]"
 msgstr "git fsmonitor--daemon run [<options>]"
 
-#: builtin/fsmonitor--daemon.c
+#: builtin/fsmonitor--daemon.c builtin/fsmonitor--daemon.c
 #, c-format
 msgid "value of '%s' out of range: %d"
 msgstr "「%s」的數值超出範圍:%d"
@@ -8986,7 +9251,7 @@ msgstr "無法初始化健康檢查執行緒"
 msgid "could not cd home '%s'"
 msgstr "無法 cd home '%s'"
 
-#: builtin/fsmonitor--daemon.c
+#: builtin/fsmonitor--daemon.c builtin/fsmonitor--daemon.c
 #, c-format
 msgid "fsmonitor--daemon is already running '%s'"
 msgstr "fsmonitor--daemon 已在執行「%s」"
@@ -9225,7 +9490,7 @@ msgstr "'%s' 非有效作業"
 msgid "task '%s' cannot be selected multiple times"
 msgstr "不能多次選取 '%s' 作業"
 
-#: builtin/gc.c
+#: builtin/gc.c builtin/gc.c
 msgid "run tasks based on the state of the repository"
 msgstr "基於版本庫狀態執行作業"
 
@@ -9245,7 +9510,7 @@ msgstr "依據頻率執行工作"
 msgid "do not report progress or other information over stderr"
 msgstr "不要在 stderr 輸出進度或其他資訊"
 
-#: builtin/gc.c
+#: builtin/gc.c builtin/gc.c
 msgid "task"
 msgstr "作業"
 
@@ -9277,11 +9542,11 @@ msgstr "版本庫「%s」未註冊"
 msgid "failed to expand path '%s'"
 msgstr "無法展開「%s」路徑"
 
-#: builtin/gc.c
+#: builtin/gc.c builtin/gc.c
 msgid "failed to start launchctl"
 msgstr "無法啟動 launchctl"
 
-#: builtin/gc.c
+#: builtin/gc.c builtin/gc.c builtin/gc.c
 #, c-format
 msgid "failed to create directories for '%s'"
 msgstr "無法建立「%s」的目錄"
@@ -9319,12 +9584,13 @@ msgstr "無法執行「crontab」;您的系統可能不支援「cron」"
 msgid "'crontab' died"
 msgstr "「crontab」結束運作"
 
-#: builtin/gc.c builtin/worktree.c
+#: builtin/gc.c builtin/gc.c builtin/gc.c builtin/worktree.c
+#: builtin/worktree.c
 #, c-format
 msgid "failed to delete '%s'"
 msgstr "刪除 '%s' 失敗"
 
-#: builtin/gc.c rerere.c
+#: builtin/gc.c builtin/gc.c rerere.c
 #, c-format
 msgid "failed to flush '%s'"
 msgstr "排清 '%s' 失敗"
@@ -9415,11 +9681,13 @@ msgstr "grep:無法建立執行緒:%s"
 msgid "invalid number of threads specified (%d) for %s"
 msgstr "為 %2$s 設定的執行緒數 (%1$d) 無效"
 
+#. #-#-#-#-#  grep.c.po  #-#-#-#-#
 #. TRANSLATORS: %s is the configuration
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c builtin/index-pack.c builtin/pack-objects.c
+#: builtin/grep.c builtin/index-pack.c builtin/index-pack.c
+#: builtin/pack-objects.c
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "沒有執行緒支援,忽略 %s"
@@ -9777,7 +10045,7 @@ msgstr "無法解析 emacsclient 版本。"
 msgid "emacsclient version '%d' too old (< 22)."
 msgstr "emacsclient 版本 '%d' 太老(< 22)。"
 
-#: builtin/help.c
+#: builtin/help.c builtin/help.c builtin/help.c builtin/help.c
 #, c-format
 msgid "failed to exec '%s'"
 msgstr "執行 '%s' 失敗"
@@ -9813,7 +10081,7 @@ msgstr "沒有 man 檢視器處理此請求"
 msgid "no info viewer handled the request"
 msgstr "沒有 info 檢視器處理此請求"
 
-#: builtin/help.c git.c
+#: builtin/help.c builtin/help.c git.c
 #, c-format
 msgid "'%s' is aliased to '%s'"
 msgstr "'%s' 是 '%s' 的別名"
@@ -9833,7 +10101,7 @@ msgid ""
 "the '--no-[external-commands|aliases]' options can only be used with '--all'"
 msgstr "「--no-[external-commands|aliases]」選項只能與「--all」一起使用"
 
-#: builtin/help.c
+#: builtin/help.c builtin/help.c
 #, c-format
 msgid "usage: %s%s"
 msgstr "用法:%s%s"
@@ -9842,13 +10110,195 @@ msgstr "用法:%s%s"
 msgid "'git help config' for more information"
 msgstr "'git help config' 取得更多訊息"
 
+#: builtin/history.c
+msgid "git history reword <commit> [--dry-run] [--update-refs=(branches|head)]"
+msgstr ""
+"git history reword <commit> [--dry-run] [--update-refs=(branches|head)]"
+
+#: builtin/history.c
+msgid ""
+"git history split <commit> [--dry-run] [--update-refs=(branches|head)] [--] "
+"[<pathspec>...]"
+msgstr ""
+"git history split <commit> [--dry-run] [--update-refs=(branches|head)] [--] "
+"[<pathspec>...]"
+
+#: builtin/history.c
+#, c-format
+msgid ""
+"Please enter the commit message for the %s changes. Lines starting\n"
+"with '%s' will be ignored, and an empty message aborts the commit.\n"
+msgstr ""
+"請輸入描述 %s 變更的提交訊息。開頭是「%s」的列\n"
+"皆會忽略。提交訊息空白則取消本次提交作業。\n"
+
+#: builtin/history.c
+#, c-format
+msgid "Aborting commit as launching the editor failed.\n"
+msgstr "中止提交,因為無法開啟編輯器。\n"
+
+#: builtin/history.c builtin/history.c
+#, c-format
+msgid "unable to parse parent commit %s"
+msgstr "無法解析上級提交 %s"
+
+#: builtin/history.c
+#, c-format
+msgid "%s expects one of 'branches' or 'head'"
+msgstr "%s 預期是「branches」或「head」之一"
+
+#: builtin/history.c replay.c
+msgid "error preparing revisions"
+msgstr "無法準備修訂集"
+
+#: builtin/history.c replay.c
+msgid "replaying merge commits is not supported yet!"
+msgstr "尚不支援重放合併提交!"
+
+#: builtin/history.c
+msgid "cannot look up HEAD"
+msgstr "無法查詢 HEAD"
+
+#: builtin/history.c
+msgid "cannot determine descendance"
+msgstr "無法判定繼承關係"
+
+#: builtin/history.c
+msgid ""
+"rewritten commit must be an ancestor of HEAD when using --update-refs=head"
+msgstr "使用 --update-refs=head 時,重寫後的提交必須是 HEAD 的祖先"
+
+#: builtin/history.c builtin/replay.c
+#, c-format
+msgid "failed to begin ref transaction: %s"
+msgstr "無法開始引用事務:%s"
+
+#: builtin/history.c builtin/history.c builtin/replay.c
+#, c-format
+msgid "failed to update ref '%s': %s"
+msgstr "無法更新「%s」引用:%s"
+
+#: builtin/history.c builtin/replay.c
+#, c-format
+msgid "failed to commit ref transaction: %s"
+msgstr "無法提交引用事務:%s"
+
+#: builtin/history.c
+msgid "control which refs should be updated"
+msgstr "控制要更新的引用"
+
+#: builtin/history.c builtin/history.c
+msgid "perform a dry-run without updating any refs"
+msgstr "進行測試執行,不更新任何引用"
+
+#: builtin/history.c
+msgid "command expects a single revision"
+msgstr "命令預期只有一個修訂版"
+
+#: builtin/history.c builtin/history.c
+#, c-format
+msgid "commit cannot be found: %s"
+msgstr "找不到提交:%s"
+
+#: builtin/history.c
+msgid "failed writing reworded commit"
+msgstr "無法寫入改寫說明後的提交"
+
+#: builtin/history.c builtin/history.c
+msgid "failed replaying descendants"
+msgstr "重放後代失敗"
+
+#: builtin/history.c
+msgid "unable to populate index with tree"
+msgstr "無法以樹狀物件填入索引"
+
+#: builtin/history.c
+msgid "unable to acquire index lock"
+msgstr "無法取得索引鎖"
+
+#: builtin/history.c
+msgid "failed reading temporary index"
+msgstr "無法讀取暫存索引"
+
+#: builtin/history.c
+msgid "failed split tree"
+msgstr "無法拆分樹狀物件"
+
+#: builtin/history.c
+msgid "split commit is empty"
+msgstr "拆出的提交是空白的"
+
+#: builtin/history.c
+msgid "split commit tree matches original commit"
+msgstr "拆分提交的樹狀物件和原始提交相同"
+
+#: builtin/history.c
+msgid "failed writing first commit"
+msgstr "無法寫入第一個提交"
+
+#: builtin/history.c
+msgid "failed writing second commit"
+msgstr "無法寫入第二個提交"
+
+#: builtin/history.c
+msgid "control ref update behavior"
+msgstr "控制引用的更新行為"
+
+#: builtin/history.c
+msgid "command expects a committish"
+msgstr "命令預期有一個提交指示元"
+
+#: builtin/history.c
+msgid "cannot split up merge commit"
+msgstr "無法拆分合併提交"
+
+#: builtin/hook.c
+msgid ""
+"git hook run [--allow-unknown-hook-name] [--ignore-missing] [--to-"
+"stdin=<path>] <hook-name> [-- <hook-args>]"
+msgstr ""
+"git hook run [--allow-unknown-hook-name] [--ignore-missing] [--to-"
+"stdin=<path>] <hook-name> [-- <hook-args>]"
+
+#: builtin/hook.c
+msgid ""
+"git hook list [--allow-unknown-hook-name] [-z] [--show-scope] <hook-name>"
+msgstr ""
+"git hook list [--allow-unknown-hook-name] [-z] [--show-scope] <hook-name>"
+
+#: builtin/hook.c
+msgid "use NUL as line terminator"
+msgstr "使用 NUL 作為列終止符"
+
 #: builtin/hook.c
+msgid "show the config scope that defined each hook"
+msgstr "顯示定義每個掛鉤的組態範圍"
+
+#: builtin/hook.c builtin/hook.c
+msgid "allow running a hook with a non-native hook name"
+msgstr "允許執行非原生名稱的掛鉤"
+
+#: builtin/hook.c
+msgid "you must specify a hook event name to list"
+msgstr "您必須指定要列出的掛鉤事件名稱"
+
+#: builtin/hook.c builtin/hook.c
+#, c-format
 msgid ""
-"git hook run [--ignore-missing] [--to-stdin=<path>] <hook-name> [-- <hook-"
-"args>]"
+"unknown hook event '%s';\n"
+"use --allow-unknown-hook-name to allow non-native hook names"
 msgstr ""
-"git hook run [--ignore-missing] [--to-stdin=<path>] <hook-name> [-- <hook-"
-"args>]"
+"未知的掛鉤事件「%s」,\n"
+"請使用 --allow-unknown-hook-name 以允許指定非原生的掛鉤名稱"
+
+#: builtin/hook.c
+#, c-format
+msgid "no hooks found for event '%s'"
+msgstr "找不到事件「%s」的掛鉤"
+
+#: builtin/hook.c
+msgid "hook from hookdir"
+msgstr "來自 hookdir 的掛鉤"
 
 #: builtin/hook.c
 msgid "silently ignore missing requested <hook-name>"
@@ -9946,7 +10396,8 @@ msgstr[0] "包檔案過早結束,缺少 %<PRIuMAX> 位元組"
 msgid "serious inflate inconsistency"
 msgstr "解壓縮嚴重的不一致"
 
-#: builtin/index-pack.c
+#: builtin/index-pack.c builtin/index-pack.c builtin/index-pack.c
+#: builtin/index-pack.c builtin/index-pack.c
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "發現 %s 出現 SHA1 衝突!"
@@ -9966,7 +10417,7 @@ msgstr "不能讀取現存物件 %s"
 msgid "invalid blob object %s"
 msgstr "無效的資料物件 %s"
 
-#: builtin/index-pack.c
+#: builtin/index-pack.c builtin/index-pack.c
 msgid "fsck error in packed object"
 msgstr "對打包物件 fsck 檢查發生錯誤"
 
@@ -9980,7 +10431,7 @@ msgstr "無效的 %s"
 msgid "Not all child objects of %s are reachable"
 msgstr "%s 的所有子物件並非都可以取得"
 
-#: builtin/index-pack.c
+#: builtin/index-pack.c builtin/index-pack.c
 msgid "failed to apply delta"
 msgstr "套用 delta 失敗"
 
@@ -10013,6 +10464,7 @@ msgid "Resolving deltas"
 msgstr "處理 delta 中"
 
 #: builtin/index-pack.c builtin/pack-objects.c
+#: builtin/pack-objects.c
 #, c-format
 msgid "unable to create thread: %s"
 msgstr "不能建立執行緒:%s"
@@ -10030,7 +10482,7 @@ msgstr[0] "完成 %d 個本機物件"
 #: builtin/index-pack.c
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
-msgstr "對 %s 的尾部總和檢查出現意外(磁碟損壞?)"
+msgstr "%s 的尾部總和檢查碼與預期不符(磁碟損壞?)"
 
 #: builtin/index-pack.c
 #, c-format
@@ -10124,12 +10576,12 @@ msgstr "無法返回目前工作目錄"
 msgid "bad --pack_header: %s"
 msgstr "無效的 --pack_header:%s"
 
-#: builtin/index-pack.c
+#: builtin/index-pack.c builtin/index-pack.c
 #, c-format
 msgid "bad %s"
 msgstr "錯誤選項 %s"
 
-#: builtin/index-pack.c builtin/init-db.c setup.c
+#: builtin/index-pack.c builtin/init-db.c setup.c setup.c
 #, c-format
 msgid "unknown hash algorithm '%s'"
 msgstr "未知的「%s」雜湊算法"
@@ -10188,12 +10640,12 @@ msgstr "雜湊"
 msgid "specify the hash algorithm to use"
 msgstr "指定要使用的雜湊算法"
 
-#: builtin/init-db.c
+#: builtin/init-db.c builtin/init-db.c
 #, c-format
 msgid "cannot mkdir %s"
 msgstr "不能建立目錄 %s"
 
-#: builtin/init-db.c
+#: builtin/init-db.c builtin/init-db.c
 #, c-format
 msgid "cannot chdir to %s"
 msgstr "不能切換目錄到 %s"
@@ -10224,25 +10676,6 @@ msgstr ""
 "                       [(--trailer (<key>|<key-alias>)[(=|:)<value>])...]\n"
 "                       [--parse] [<file>...]"
 
-#: builtin/interpret-trailers.c wrapper.c
-#, c-format
-msgid "could not stat %s"
-msgstr "無法 stat %s"
-
-#: builtin/interpret-trailers.c
-#, c-format
-msgid "file %s is not a regular file"
-msgstr "檔案 %s 不是一個正規檔案"
-
-#: builtin/interpret-trailers.c
-#, c-format
-msgid "file %s is not writable by user"
-msgstr "檔案 %s 使用者不可寫"
-
-#: builtin/interpret-trailers.c
-msgid "could not open temporary file"
-msgstr "無法開啟暫存檔"
-
 #: builtin/interpret-trailers.c
 #, c-format
 msgid "could not read input file '%s'"
@@ -10254,6 +10687,11 @@ msgstr "無法從標準輸入讀取"
 
 #: builtin/interpret-trailers.c
 #, c-format
+msgid "could not write to temporary file '%s'"
+msgstr "無法寫入暫存檔案「%s」"
+
+#: builtin/interpret-trailers.c trailer.c
+#, c-format
 msgid "could not rename temporary file to %s"
 msgstr "無法將暫存檔重新命名為 %s"
 
@@ -10263,7 +10701,7 @@ msgstr "在原位編輯檔案"
 
 #: builtin/interpret-trailers.c
 msgid "trim empty trailers"
-msgstr "刪除空的尾部署名"
+msgstr "刪除空的結尾資訊"
 
 #: builtin/interpret-trailers.c
 msgid "placement"
@@ -10271,27 +10709,27 @@ msgstr "placement"
 
 #: builtin/interpret-trailers.c
 msgid "where to place the new trailer"
-msgstr "在哪裡放置新的尾部署名"
+msgstr "放置新結尾資訊的位置"
 
 #: builtin/interpret-trailers.c
 msgid "action if trailer already exists"
-msgstr "當尾部署名已經存在時所採取的動作"
+msgstr "當結尾資訊已經存在時應採取的動作"
 
 #: builtin/interpret-trailers.c
 msgid "action if trailer is missing"
-msgstr "當尾部署名缺少時所採取的動作"
+msgstr "當結尾資訊缺少時應採取的動作"
 
 #: builtin/interpret-trailers.c
 msgid "output only the trailers"
-msgstr "只輸出尾部署名"
+msgstr "只輸出結尾資訊"
 
 #: builtin/interpret-trailers.c
-msgid "do not apply trailer.* configuration variables"
-msgstr "不套用 trailer.* 組態變數"
+msgid "do not apply trailer.<key-alias> configuration variables"
+msgstr "不要套用 trailer.<key-alias> 組態變數"
 
 #: builtin/interpret-trailers.c
 msgid "reformat multiline trailer values as single-line values"
-msgstr "將多列尾注值 (trailer values) 重新格式化為單列值"
+msgstr "將多列結尾資訊值重新格式化為單列值"
 
 #: builtin/interpret-trailers.c
 msgid "alias for --only-trailers --only-input --unfold"
@@ -10303,7 +10741,7 @@ msgstr "不要把「---」當作輸入結尾"
 
 #: builtin/interpret-trailers.c
 msgid "trailer(s) to add"
-msgstr "要新增的尾部署名"
+msgstr "要加入的結尾資訊"
 
 #: builtin/interpret-trailers.c
 msgid "--trailer with --only-input does not make sense"
@@ -10314,25 +10752,26 @@ msgid "no input file given for in-place editing"
 msgstr "沒有給出要原位編輯的檔案"
 
 #: builtin/last-modified.c
-msgid "last-modified can only operate on one tree at a time"
-msgstr "last-modified ä¸\80次å\8fªè\83½æ\93\8dä½\9cä¸\80å\80\8b樹ç\8b\80ç\89©ä»¶"
+msgid "last-modified can only operate on one commit at a time"
+msgstr "last-modified ä¸\80次å\8fªè\83½æ\93\8dä½\9cä¸\80å\80\8bæ\8f\90交"
 
 #: builtin/last-modified.c
 #, c-format
-msgid "unknown last-modified argument: %s"
-msgstr "未知的 last-modified 引數:%s"
+msgid "revision argument '%s' is a %s, not a commit-ish"
+msgstr "修訂版本引數「%s」是 %s,而非提交指示元"
 
 #: builtin/last-modified.c
-msgid "unable to setup last-modified"
-msgstr "無法設定 last-modified"
+#, c-format
+msgid "unknown last-modified argument: %s"
+msgstr "未知的 last-modified 引數:%s"
 
 #: builtin/last-modified.c
 msgid ""
-"git last-modified [--recursive] [--show-trees] [<revision-range>] [[--] "
-"<path>...]"
+"git last-modified [--recursive] [--show-trees] [--max-depth=<depth>] [-z]\n"
+"                  [<revision-range>] [[--] <pathspec>...]"
 msgstr ""
-"git last-modified [--recursive] [--show-trees] [<revision-range>] [[--] "
-"<path>...]"
+"git last-modified [--recursive] [--show-trees] [--max-depth=<depth>] [-z]\n"
+"                  [<revision-range>] [[--] <pathspec>...]"
 
 #: builtin/last-modified.c builtin/ls-tree.c
 msgid "recurse into subtrees"
@@ -10342,6 +10781,14 @@ msgstr "遞迴到子樹"
 msgid "show tree entries when recursing into subtrees"
 msgstr "遞迴子樹時顯示樹狀物件項目"
 
+#: builtin/last-modified.c diff.c
+msgid "maximum tree depth to recurse"
+msgstr "樹狀物件的遞迴最大深度"
+
+#: builtin/last-modified.c
+msgid "lines are separated with NUL character"
+msgstr "列以 NUL 字元分隔"
+
 #: builtin/log.c
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<選項>] [<版本範圍>] [[--] <路徑>...]"
@@ -10410,7 +10857,7 @@ msgstr ""
 msgid "git show %s: bad file"
 msgstr "git show %s: 損壞的檔案"
 
-#: builtin/log.c
+#: builtin/log.c builtin/log.c
 #, c-format
 msgid "could not read object %s"
 msgstr "無法讀取物件 %s"
@@ -10429,6 +10876,20 @@ msgstr "%s:從描述產生附函的模式無效"
 msgid "format.headers without value"
 msgstr "format.headers 沒有值"
 
+#: builtin/log.c config.c
+#, c-format
+msgid "bad boolean config value '%s' for '%s'"
+msgstr "「%2$s」的「%1$s」布林設定值無效"
+
+#: builtin/log.c
+#, c-format
+msgid ""
+"'%s' used to accept any value and treat that as 'true'.\n"
+"Now it only accepts boolean values, like what '%s' does.\n"
+msgstr ""
+"「%s」過去接受任何值,並將其視為「true」。\n"
+"現在它只接受布林值,符合「%s」的行為。\n"
+
 #: builtin/log.c
 #, c-format
 msgid "cannot open patch file %s"
@@ -10455,6 +10916,11 @@ msgstr "附函需要信件位址格式"
 msgid "failed to create cover-letter file"
 msgstr "無法建立附函檔案"
 
+#: builtin/log.c
+#, c-format
+msgid "'%s' is not a valid format string"
+msgstr "「%s」不是有效的格式字串"
+
 #: builtin/log.c
 #, c-format
 msgid "insane in-reply-to: %s"
@@ -10468,12 +10934,13 @@ msgstr "git format-patch [<選項>] [<從> | <版本範圍>]"
 msgid "two output directories?"
 msgstr "兩個輸出目錄?"
 
-#: builtin/log.c
+#: builtin/log.c builtin/log.c builtin/log.c builtin/log.c
 #, c-format
 msgid "unknown commit %s"
 msgstr "未知提交 %s"
 
-#: builtin/log.c builtin/replace.c
+#: builtin/log.c builtin/replace.c builtin/replace.c
+#: builtin/replace.c
 #, c-format
 msgid "failed to resolve '%s' as a valid ref"
 msgstr "無法將 '%s' 解析為一個有效引用"
@@ -10533,6 +11000,14 @@ msgstr "列印修補檔到標準輸出"
 msgid "generate a cover letter"
 msgstr "生成一封附函"
 
+#: builtin/log.c
+msgid "format-spec"
+msgstr "format-spec"
+
+#: builtin/log.c
+msgid "format spec used for the commit list in the cover letter"
+msgstr "用於附函中提交列表的格式規格"
+
 #: builtin/log.c
 msgid "use simple number sequence for output file names"
 msgstr "使用簡單的數字序列作為輸出檔案名"
@@ -10621,7 +11096,7 @@ msgstr "header"
 msgid "add email header"
 msgstr "新增信件頭"
 
-#: builtin/log.c
+#: builtin/log.c builtin/log.c
 msgid "email"
 msgstr "信箱"
 
@@ -10649,7 +11124,7 @@ msgstr "信件標記"
 msgid "make first mail a reply to <message-id>"
 msgstr "使第一封信件作為對 <信件標記> 的回覆"
 
-#: builtin/log.c
+#: builtin/log.c builtin/log.c
 msgid "boundary"
 msgstr "邊界"
 
@@ -10730,7 +11205,8 @@ msgstr "--check 無意義"
 msgid "--remerge-diff does not make sense"
 msgstr "--remerge-diff 無意義"
 
-#: builtin/log.c builtin/submodule--helper.c rerere.c submodule.c
+#: builtin/log.c builtin/submodule--helper.c
+#: builtin/submodule--helper.c rerere.c submodule.c
 #, c-format
 msgid "could not create directory '%s'"
 msgstr "無法建立「%s」目錄"
@@ -10922,11 +11398,11 @@ msgstr ""
 msgid "do not print remote URL"
 msgstr "不列印遠端 URL"
 
-#: builtin/ls-remote.c builtin/rebase.c
+#: builtin/ls-remote.c builtin/ls-remote.c builtin/rebase.c
 msgid "exec"
 msgstr "exec"
 
-#: builtin/ls-remote.c
+#: builtin/ls-remote.c builtin/ls-remote.c
 msgid "path of git-upload-pack on the remote host"
 msgstr "遠端主機上的 git-upload-pack 路徑"
 
@@ -10978,7 +11454,7 @@ msgstr "條目以 NUL 字元終止"
 msgid "include object size"
 msgstr "包括物件大小"
 
-#: builtin/ls-tree.c
+#: builtin/ls-tree.c builtin/ls-tree.c
 msgid "list only filenames"
 msgstr "只列出檔案名"
 
@@ -11156,7 +11632,7 @@ msgstr[0] "無法處理 %d 條以上的基礎。忽略 %s。"
 msgid "not handling anything other than two heads merge."
 msgstr "不能處理兩個頭合併之外的任何動作。"
 
-#: builtin/merge-recursive.c
+#: builtin/merge-recursive.c builtin/merge-recursive.c
 #, c-format
 msgid "could not resolve ref '%s'"
 msgstr "無法解析引用「%s」"
@@ -11166,12 +11642,12 @@ msgstr "無法解析引用「%s」"
 msgid "Merging %s with %s\n"
 msgstr "合併 %s 和 %s\n"
 
-#: builtin/merge-tree.c
+#: builtin/merge-tree.c builtin/merge-tree.c builtin/merge-tree.c
 #, c-format
 msgid "could not parse as tree '%s'"
 msgstr "無法解析為樹狀物件「%s」"
 
-#: builtin/merge-tree.c builtin/merge.c
+#: builtin/merge-tree.c builtin/merge-tree.c builtin/merge.c
 msgid "not something we can merge"
 msgstr "不能合併"
 
@@ -11231,7 +11707,7 @@ msgstr "option=value"
 msgid "option for selected merge strategy"
 msgstr "所選的合併策略的選項"
 
-#: builtin/merge-tree.c
+#: builtin/merge-tree.c builtin/merge-tree.c builtin/merge-tree.c
 msgid "--trivial-merge is incompatible with all other options"
 msgstr "--trivial-merge 和其他所有選項都不相容"
 
@@ -11240,7 +11716,7 @@ msgstr "--trivial-merge 和其他所有選項都不相容"
 msgid "unknown strategy option: -X%s"
 msgstr "未知的策略選項:-X%s"
 
-#: builtin/merge-tree.c builtin/notes.c
+#: builtin/merge-tree.c builtin/merge-tree.c builtin/notes.c
 #, c-format
 msgid "malformed input line: '%s'."
 msgstr "格式錯誤的輸入行:'%s'。"
@@ -11317,8 +11793,8 @@ msgstr "如果不能快轉就放棄合併"
 msgid "verify that the named commit has a valid GPG signature"
 msgstr "驗證指定的提交是否包含一個有效的 GPG 簽名"
 
-#: builtin/merge.c builtin/notes.c builtin/pull.c builtin/rebase.c
-#: builtin/revert.c
+#: builtin/merge.c builtin/notes.c builtin/pull.c
+#: builtin/rebase.c builtin/revert.c
 msgid "strategy"
 msgstr "策略"
 
@@ -11359,7 +11835,7 @@ msgstr "無法執行貯存。"
 msgid "stash failed"
 msgstr "貯存失敗"
 
-#: builtin/merge.c
+#: builtin/merge.c builtin/merge.c
 msgid "read-tree failed"
 msgstr "讀取樹失敗"
 
@@ -11392,7 +11868,7 @@ msgstr "'%s' 沒有指向一個提交"
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "壞的 branch.%s.mergeoptions 字串:%s"
 
-#: builtin/merge.c merge-ort-wrappers.c
+#: builtin/merge.c builtin/merge.c merge-ort-wrappers.c
 msgid "Unable to write index."
 msgstr "不能寫入索引。"
 
@@ -11567,7 +12043,7 @@ msgstr "嘗試非常小的索引內合併...\n"
 msgid "Nope.\n"
 msgstr "無。\n"
 
-#: builtin/merge.c
+#: builtin/merge.c builtin/merge.c
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "將樹回滾至原始狀態...\n"
@@ -11648,11 +12124,21 @@ msgstr "允許建立一個以上的樹"
 
 #: builtin/multi-pack-index.c
 msgid ""
-"git multi-pack-index [<options>] write [--preferred-pack=<pack>][--refs-"
-"snapshot=<path>]"
+"git multi-pack-index [<options>] write [--preferred-pack=<pack>]\n"
+"  [--[no-]bitmap] [--[no-]incremental] [--[no-]stdin-packs]\n"
+"  [--refs-snapshot=<path>]"
+msgstr ""
+"git multi-pack-index [<options>] write [--preferred-pack=<pack>]\n"
+"  [--[no-]bitmap] [--[no-]incremental] [--[no-]stdin-packs]\n"
+"  [--refs-snapshot=<path>]"
+
+#: builtin/multi-pack-index.c
+msgid ""
+"git multi-pack-index [<options>] compact [--[no-]incremental]\n"
+"  [--[no-]bitmap] <from> <to>"
 msgstr ""
-"git multi-pack-index [<選項>] write [--preferred-pack=<包>] [--refs-"
-"snapshot=<路徑>]"
+"git multi-pack-index [<options>] compact [--[no-]incremental]\n"
+"  [--[no-]bitmap] <from> <to>"
 
 #: builtin/multi-pack-index.c
 msgid "git multi-pack-index [<options>] verify"
@@ -11682,11 +12168,11 @@ msgstr "偏好包"
 msgid "pack for reuse when computing a multi-pack bitmap"
 msgstr "計算多包位圖時要重複使用的包"
 
-#: builtin/multi-pack-index.c
+#: builtin/multi-pack-index.c builtin/multi-pack-index.c
 msgid "write multi-pack bitmap"
 msgstr "寫入多包位圖"
 
-#: builtin/multi-pack-index.c
+#: builtin/multi-pack-index.c builtin/multi-pack-index.c
 msgid "write a new incremental MIDX"
 msgstr "寫入新的增量 MIDX"
 
@@ -11698,6 +12184,20 @@ msgstr "寫入只包含指定索引的多包索引"
 msgid "refs snapshot for selecting bitmap commits"
 msgstr "用來選取位圖提交的引用快照"
 
+#: builtin/multi-pack-index.c builtin/multi-pack-index.c
+#, c-format
+msgid "could not find MIDX: %s"
+msgstr "找不到 MIDX:%s"
+
+#: builtin/multi-pack-index.c
+msgid "MIDX compaction endpoints must be unique"
+msgstr "MIDX 壓縮端點必須唯一"
+
+#: builtin/multi-pack-index.c
+#, c-format
+msgid "MIDX %s must be an ancestor of %s"
+msgstr "MIDX %s 必須是 %s 的祖先"
+
 #: builtin/multi-pack-index.c
 msgid ""
 "during repack, collect pack-files of smaller size into a batch that is "
@@ -11744,11 +12244,11 @@ msgstr "目的地「%s」不是目錄"
 msgid "Checking rename of '%s' to '%s'\n"
 msgstr "檢查 '%s' 到 '%s' 的重新命名\n"
 
-#: builtin/mv.c
+#: builtin/mv.c builtin/mv.c
 msgid "bad source"
 msgstr "來源損壞"
 
-#: builtin/mv.c
+#: builtin/mv.c builtin/mv.c
 msgid "destination exists"
 msgstr "目的地已存在"
 
@@ -11772,7 +12272,7 @@ msgstr "不在版本控制之下"
 msgid "conflicted"
 msgstr "衝突"
 
-#: builtin/mv.c
+#: builtin/mv.c builtin/mv.c
 #, c-format
 msgid "overwriting '%s'"
 msgstr "覆蓋 '%s'"
@@ -11993,7 +12493,9 @@ msgstr "註解內容被留在 %s 中"
 msgid "could not open or read '%s'"
 msgstr "無法開啟或讀取「%s」"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c builtin/notes.c
+#: builtin/notes.c builtin/notes.c builtin/notes.c
+#: builtin/notes.c builtin/notes.c builtin/notes.c
 #, c-format
 msgid "failed to resolve '%s' as a valid ref."
 msgstr "無法解析 '%s' 為一個有效引用。"
@@ -12021,48 +12523,48 @@ msgstr "將註解從「%s」複製至「%s」失敗"
 msgid "refusing to %s notes in %s (outside of refs/notes/)"
 msgstr "拒絕向 %2$s(在 refs/notes/ 之外)%1$s註解"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 #, c-format
 msgid "no note found for object %s."
 msgstr "未發現物件 %s 的註解。"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "note contents as a string"
 msgstr "註解內容作為一個字串"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "note contents in a file"
 msgstr "註解內容到一個檔案中"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "reuse and edit specified note object"
 msgstr "重用和編輯指定的註解物件"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "edit note message in editor"
 msgstr "在編輯器中編輯備註訊息"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "reuse specified note object"
 msgstr "重用指定的註解物件"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "allow storing empty note"
 msgstr "允許儲存空白備註"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "replace existing notes"
 msgstr "取代已存在的註解"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "<paragraph-break>"
 msgstr "<paragraph-break>"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "insert <paragraph-break> between paragraphs"
 msgstr "在段落間插入 <paragraph-break>"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 msgid "remove unnecessary whitespace"
 msgstr "移除不必要的空白字元"
 
@@ -12073,12 +12575,12 @@ msgid ""
 "existing notes"
 msgstr "不能新增註解。發現物件 %s 已存在註解。使用 '-f' 覆蓋現存註解"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr "覆蓋物件 %s 現存註解\n"
 
-#: builtin/notes.c
+#: builtin/notes.c builtin/notes.c builtin/notes.c
 #, c-format
 msgid "Removing note for object %s\n"
 msgstr "刪除物件 %s 的註解\n"
@@ -12364,7 +12866,7 @@ msgstr "%s 的 delta 基準位移越界"
 msgid "Counting objects"
 msgstr "正在計算物件數量"
 
-#: builtin/pack-objects.c pack-bitmap.c
+#: builtin/pack-objects.c pack-bitmap.c pack-bitmap.c
 #, c-format
 msgid "unable to get size of %s"
 msgstr "不能得到 %s 的大小"
@@ -12374,12 +12876,13 @@ msgstr "不能得到 %s 的大小"
 msgid "unable to parse object header of %s"
 msgstr "無法解析物件 %s 標頭訊息"
 
+#: builtin/pack-objects.c builtin/pack-objects.c
 #: builtin/pack-objects.c
 #, c-format
 msgid "object %s cannot be read"
 msgstr "物件 %s 無法讀取"
 
-#: builtin/pack-objects.c
+#: builtin/pack-objects.c builtin/pack-objects.c
 #, c-format
 msgid "object %s inconsistent object length (%<PRIuMAX> vs %<PRIuMAX>)"
 msgstr "物件 %s 不一致的物件長度(%<PRIuMAX> vs %<PRIuMAX>)"
@@ -12403,7 +12906,7 @@ msgstr "無法為標籤 %s 壓縮物件"
 msgid "unable to get type of object %s"
 msgstr "無法獲得物件 %s 類型"
 
-#: builtin/pack-objects.c
+#: builtin/pack-objects.c builtin/pack-objects.c
 msgid "Compressing objects by path"
 msgstr "正在根據路徑壓縮物件"
 
@@ -12446,22 +12949,22 @@ msgstr "物件已經在其他 uploadpack.blobpackfileuri 設定過 (收到 '%s')
 msgid "could not get type of object %s in pack %s"
 msgstr "無法取得 %2$s 包中 %1$s 物件的類型"
 
-#: builtin/pack-objects.c
+#: builtin/pack-objects.c builtin/pack-objects.c
 #, c-format
-msgid "packfile %s is a promisor but --exclude-promisor-objects was given"
-msgstr "封包檔案 %s 是承諾者,但是指定了 --exclude-promisor-objects"
+msgid "could not find pack '%s'"
+msgstr "找不到「%s」包"
 
 #: builtin/pack-objects.c
 #, c-format
-msgid "could not find pack '%s'"
-msgstr "找不到「%s」包"
+msgid "packfile %s is a promisor but --exclude-promisor-objects was given"
+msgstr "封包檔案 %s 是承諾者,但是指定了 --exclude-promisor-objects"
 
 #: builtin/pack-objects.c
 #, c-format
 msgid "packfile %s cannot be accessed"
 msgstr "無法存取封包檔案 %s"
 
-#: builtin/pack-objects.c
+#: builtin/pack-objects.c builtin/pack-objects.c
 msgid "Enumerating cruft objects"
 msgstr "正在枚舉無用物件"
 
@@ -12491,11 +12994,7 @@ msgstr ""
 "預期物件 ID,卻得到垃圾資料:\n"
 " %s"
 
-#: builtin/pack-objects.c reachable.c
-msgid "could not load cruft pack .mtimes"
-msgstr "無法載入無用包 .mtimes"
-
-#: builtin/pack-objects.c
+#: builtin/pack-objects.c builtin/pack-objects.c
 msgid "cannot open pack index"
 msgstr "無法開啟包檔案索引"
 
@@ -12848,23 +13347,24 @@ msgstr ""
 msgid "You are not currently on a branch."
 msgstr "您目前不在一個分支上。"
 
-#: builtin/pull.c
+#: builtin/pull.c builtin/pull.c
 msgid "Please specify which branch you want to rebase against."
 msgstr "請指定您要重定基底到哪一個分支。"
 
-#: builtin/pull.c
+#: builtin/pull.c builtin/pull.c
 msgid "Please specify which branch you want to merge with."
 msgstr "請指定您要合併哪一個分支。"
 
-#: builtin/pull.c
+#: builtin/pull.c builtin/pull.c
 msgid "See git-pull(1) for details."
 msgstr "詳見 git-pull(1)。"
 
-#: builtin/pull.c builtin/rebase.c
+#: builtin/pull.c builtin/pull.c builtin/pull.c
+#: builtin/rebase.c
 msgid "<remote>"
 msgstr "<遠端>"
 
-#: builtin/pull.c scalar.c
+#: builtin/pull.c builtin/pull.c builtin/pull.c scalar.c
 msgid "<branch>"
 msgstr "<分支>"
 
@@ -13271,7 +13771,8 @@ msgstr "控制子模組的遞迴推送"
 msgid "use thin pack"
 msgstr "使用精簡打包"
 
-#: builtin/push.c builtin/send-pack.c
+#: builtin/push.c builtin/push.c builtin/send-pack.c
+#: builtin/send-pack.c
 msgid "receive pack program"
 msgstr "接收包程式"
 
@@ -13366,7 +13867,7 @@ msgstr "使用簡單差異顏色"
 msgid "notes"
 msgstr "註解"
 
-#: builtin/range-diff.c
+#: builtin/range-diff.c builtin/range-diff.c builtin/range-diff.c
 msgid "passed to 'git log'"
 msgstr "傳遞給 'git log'"
 
@@ -13386,12 +13887,12 @@ msgstr "只發出跟第一個範圍相關的輸出"
 msgid "only emit output related to the second range"
 msgstr "只發出跟第二個範圍相關的輸出"
 
-#: builtin/range-diff.c
+#: builtin/range-diff.c builtin/range-diff.c builtin/range-diff.c
 #, c-format
 msgid "not a revision: '%s'"
 msgstr "非修訂版:「%s」"
 
-#: builtin/range-diff.c
+#: builtin/range-diff.c builtin/range-diff.c
 #, c-format
 msgid "not a commit range: '%s'"
 msgstr "不是提交範圍:「%s」"
@@ -13545,7 +14046,8 @@ msgstr "無效的原始 head:'%s'"
 msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
 msgstr "忽略無效的 allow_rerere_autoupdate:'%s'"
 
-#: builtin/rebase.c builtin/rm.c sequencer.c
+#: builtin/rebase.c builtin/rebase.c builtin/rebase.c
+#: builtin/rm.c sequencer.c sequencer.c
 #, c-format
 msgid "could not remove '%s'"
 msgstr "無法刪除「%s」"
@@ -13578,6 +14080,7 @@ msgstr "未知的 rebase-merges 模式:%s"
 msgid "could not switch to %s"
 msgstr "無法切換到 %s"
 
+#: builtin/rebase.c builtin/rebase.c builtin/rebase.c
 #: builtin/rebase.c
 msgid "apply options and merge options cannot be used together"
 msgstr "套用選項與合併選項不得同時使用"
@@ -13680,7 +14183,7 @@ msgstr "忽略製作日期而使用日前日期"
 msgid "synonym of --reset-author-date"
 msgstr "和 --reset-author-date 同義"
 
-#: builtin/rebase.c
+#: builtin/rebase.c builtin/rebase.c
 msgid "passed to 'git apply'"
 msgstr "傳遞給 'git apply'"
 
@@ -13688,7 +14191,7 @@ msgstr "傳遞給 'git apply'"
 msgid "ignore changes in whitespace"
 msgstr "忽略空白字元中的變更"
 
-#: builtin/rebase.c
+#: builtin/rebase.c builtin/rebase.c
 msgid "cherry-pick all commits, even if unchanged"
 msgstr "揀選所有提交,即使未修改"
 
@@ -14067,7 +14570,7 @@ msgstr ""
 "                  [--dry-run | -n] [--verbose] [--all [--single-worktree] | "
 "<refs>...]"
 
-#: builtin/reflog.c
+#: builtin/reflog.c builtin/reflog.c
 #, c-format
 msgid "invalid timestamp '%s' given to '--%s'"
 msgstr "傳入「--%s」的時間戳「%s」無效"
@@ -14077,24 +14580,24 @@ msgstr "傳入「--%s」的時間戳「%s」無效"
 msgid "%s does not accept arguments: '%s'"
 msgstr "%s 不接受參數:'%s'"
 
-#: builtin/reflog.c
+#: builtin/reflog.c builtin/reflog.c
 msgid "do not actually prune any entries"
 msgstr "不實際剪除任何項目"
 
-#: builtin/reflog.c
+#: builtin/reflog.c builtin/reflog.c
 msgid ""
 "rewrite the old SHA1 with the new SHA1 of the entry that now precedes it"
 msgstr "將舊的 SHA1 重寫為現在比它早的新 SHA1"
 
-#: builtin/reflog.c
+#: builtin/reflog.c builtin/reflog.c
 msgid "update the reference to the value of the top reflog entry"
 msgstr "更新引用至首個引用日誌項目的值"
 
-#: builtin/reflog.c
+#: builtin/reflog.c builtin/reflog.c
 msgid "print extra information on screen"
 msgstr "在螢幕上輸出額外資訊"
 
-#: builtin/reflog.c
+#: builtin/reflog.c builtin/reflog.c
 msgid "timestamp"
 msgstr "時間戳"
 
@@ -14125,7 +14628,7 @@ msgstr "限制只處理目前工作區的引用日誌"
 msgid "Marking reachable objects..."
 msgstr "正在標記可以取得物件..."
 
-#: builtin/reflog.c
+#: builtin/reflog.c builtin/reflog.c
 #, c-format
 msgid "reflog could not be found: '%s'"
 msgstr "找不到引用日誌:「%s」"
@@ -14260,15 +14763,15 @@ msgstr ""
 "git remote add [-t <分支>] [-m <master>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <名稱> <位址>"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid "git remote rename [--[no-]progress] <old> <new>"
 msgstr "git remote rename [--[no-]progress] <old> <new>"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid "git remote remove <name>"
 msgstr "git remote remove <名稱>"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
 msgstr "git remote set-head <名稱> (-a | --auto | -d | --delete | <分支>)"
 
@@ -14289,19 +14792,19 @@ msgstr "git remote [-v | --verbose] update [-p | --prune] [(<組> | <遠端>)...
 msgid "git remote set-branches [--add] <name> <branch>..."
 msgstr "git remote set-branches [--add] <名稱> <分支>..."
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid "git remote get-url [--push] [--all] <name>"
 msgstr "git remote get-url [--push] [--all] <名稱>"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
 msgstr "git remote set-url [--push] <名稱> <新的位址> [<舊的位址>]"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid "git remote set-url --add <name> <newurl>"
 msgstr "git remote set-url --add <名稱> <新的位址>"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid "git remote set-url --delete <name> <url>"
 msgstr "git remote set-url --delete <名稱> <位址>"
 
@@ -14394,7 +14897,7 @@ msgstr "指定一個 master 分支並使用 --mirror 選項沒有意義"
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr "指定要追蹤的分支只在與取得鏡像同時使用才有意義"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 #, c-format
 msgid "remote %s already exists."
 msgstr "遠端 %s 已經存在。"
@@ -14404,7 +14907,8 @@ msgstr "遠端 %s 已經存在。"
 msgid "Could not setup master '%s'"
 msgstr "無法配置 master「%s」"
 
-#: builtin/remote.c trailer.c
+#: builtin/remote.c builtin/remote.c trailer.c trailer.c
+#: trailer.c
 #, c-format
 msgid "more than one %s"
 msgstr "多於一個 %s"
@@ -14419,7 +14923,7 @@ msgstr "branch.%s.rebase=%s 未處理。假設成 'true'"
 msgid "Could not get fetch map for refspec %s"
 msgstr "無法取得引用規格 %s 的 fetch 映射"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid "(matching)"
 msgstr "(符合)"
 
@@ -14432,7 +14936,8 @@ msgstr "(刪除)"
 msgid "could not set '%s'"
 msgstr "無法設定「%s」"
 
-#: builtin/remote.c config.c
+#: builtin/remote.c builtin/remote.c builtin/remote.c
+#: config.c
 #, c-format
 msgid "could not unset '%s'"
 msgstr "無法取消設定「%s」"
@@ -14464,7 +14969,7 @@ msgstr ""
 "\n"
 "若是這種情況,你可以先將遠端改為不同的名稱來解決這個問題。\n"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c builtin/remote.c
 #, c-format
 msgid "No such remote: '%s'"
 msgstr "沒有此遠端版本庫:'%s'"
@@ -14627,7 +15132,7 @@ msgstr "  取得位址:%s"
 #. with the one in " Fetch URL: %s"
 #. translation.
 #.
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  推送位址:%s"
@@ -14636,7 +15141,7 @@ msgstr "  推送位址:%s"
 msgid "(no URL)"
 msgstr "(無 URL)"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c builtin/remote.c
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  HEAD 分支:%s"
@@ -14663,7 +15168,7 @@ msgid_plural "  Remote branches:%s"
 msgstr[0] "  遠端分支:%s"
 
 #  譯者:中文字串拼接,可刪除前導空格
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c
 msgid " (status not queried)"
 msgstr " (狀態未查詢)"
 
@@ -14764,7 +15269,7 @@ msgstr " * [已剪除] %s"
 msgid "prune remotes after fetching"
 msgstr "抓取後剪除遠端"
 
-#: builtin/remote.c
+#: builtin/remote.c builtin/remote.c builtin/remote.c
 #, c-format
 msgid "No such remote '%s'"
 msgstr "沒有此遠端 '%s'"
@@ -14849,7 +15354,7 @@ msgstr "和 -a 相同,並將無法取得的物件設為鬆散物件"
 msgid "same as -a, pack unreachable cruft objects separately"
 msgstr "和 -a 相同,會獨立封裝無法存取的無用物件"
 
-#: builtin/repack.c
+#: builtin/repack.c builtin/repack.c
 msgid "approxidate"
 msgstr "近似日期"
 
@@ -15201,60 +15706,48 @@ msgstr "只能為 -l 提供一個模式"
 
 #: builtin/replay.c
 #, c-format
-msgid "'%s' is not a valid commit-ish for %s"
-msgstr "「%s」不是 %s 有效的提交指示元"
-
-#: builtin/replay.c
-msgid "need some commits to replay"
-msgstr "需要一些提交才能重放"
-
-#: builtin/replay.c
-msgid "all positive revisions given must be references"
-msgstr "提供的所有正向修訂集必須為引用"
-
-#: builtin/replay.c
-msgid "argument to --advance must be a reference"
-msgstr "傳入 --advance 的引數必須為引用"
+msgid "invalid %s value: '%s'"
+msgstr "無效的 %s 值:「%s」"
 
 #: builtin/replay.c
 msgid ""
-"cannot advance target with multiple sources because ordering would be ill-"
-"defined"
-msgstr "無法用多個來源演進目的地,以免無法確定排序"
+"(EXPERIMENTAL!) git replay ([--contained] --onto=<newbase> | --"
+"advance=<branch> | --revert=<branch>)\n"
+"[--ref=<ref>] [--ref-action=<mode>] <revision-range>"
+msgstr ""
+"(實驗功能!)git replay ([--contained] --onto=<newbase> | --"
+"advance=<branch> | --revert=<branch>)\n"
+"[--ref=<ref>] [--ref-action=<mode>] <revision-range>"
 
 #: builtin/replay.c
-#, c-format
-msgid "invalid %s value: '%s'"
-msgstr "無效的 %s 值:「%s」"
+msgid "update all branches that point at commits in <revision-range>"
+msgstr "更新所有指向 <revision-range> 範圍中提交的分支"
 
 #: builtin/replay.c
-msgid ""
-"(EXPERIMENTAL!) git replay ([--contained] --onto <newbase> | --advance "
-"<branch>) [--ref-action[=<mode>]] <revision-range>"
-msgstr ""
-"(實驗性功能!) git replay ([--contained] --onto <newbase> | --advance "
-"<branch>) [--ref-action[=<mode>]] <revision-range>"
+msgid "replay onto given commit"
+msgstr "重放到指定提交"
 
 #: builtin/replay.c
 msgid "make replay advance given branch"
 msgstr "在指定分支上進行重放演進"
 
 #: builtin/replay.c
-msgid "replay onto given commit"
-msgstr "重放到指定提交"
+msgid "revert commits onto given branch"
+msgstr "將提交還原至指定的分支"
 
 #: builtin/replay.c
-msgid "update all branches that point at commits in <revision-range>"
-msgstr "更新所有指向 <revision-range> 範圍中提交的分支"
+msgid "reference to update with result"
+msgstr "要以結果更新的引用"
 
 #: builtin/replay.c
 msgid "control ref update behavior (update|print)"
 msgstr "控制引用的更新行為(update|print)"
 
 #: builtin/replay.c
-msgid "option --onto or --advance is mandatory"
-msgstr "必須傳入 --onto 或 --advance 選項"
+msgid "exactly one of --onto, --advance, or --revert is required"
+msgstr "--onto、--advance 或 --revert 必須三選一"
 
+#: builtin/replay.c builtin/replay.c builtin/replay.c
 #: builtin/replay.c
 #, c-format
 msgid ""
@@ -15262,48 +15755,25 @@ msgid ""
 "will be forced"
 msgstr "將覆寫部分修訂版遍歷選項,強制使用「struct rev_info」的「%s」位元"
 
-#: builtin/replay.c
-#, c-format
-msgid "failed to begin ref transaction: %s"
-msgstr "無法開始引用事務:%s"
-
-#: builtin/replay.c
-msgid "error preparing revisions"
-msgstr "無法準備修訂集"
-
-#: builtin/replay.c
-msgid "replaying down from root commit is not supported yet!"
-msgstr "尚不支援從根提交重放!"
-
-#: builtin/replay.c
-msgid "replaying merge commits is not supported yet!"
-msgstr "尚不支援重放合併提交!"
-
-#: builtin/replay.c
-#, c-format
-msgid "failed to update ref '%s': %s"
-msgstr "無法更新「%s」引用:%s"
-
-#: builtin/replay.c
-#, c-format
-msgid "failed to commit ref transaction: %s"
-msgstr "無法提交引用事務:%s"
-
 #: builtin/repo.c
 #, c-format
 msgid "key '%s' not found"
 msgstr "找不到「%s」鍵"
 
+#: builtin/repo.c
+msgid "--keys can only be used with --format=lines or --format=nul"
+msgstr "--keys 只能與 --format=lines 或 --format=nul 一起使用"
+
 #: builtin/repo.c
 #, c-format
 msgid "invalid format '%s'"
 msgstr "「%s」格式無效"
 
-#: builtin/repo.c
+#: builtin/repo.c builtin/repo.c
 msgid "output format"
 msgstr "輸出格式"
 
-#: builtin/repo.c
+#: builtin/repo.c builtin/repo.c
 msgid "synonym for --format=nul"
 msgstr "和 --format=nul 同義"
 
@@ -15311,6 +15781,14 @@ msgstr "和 --format=nul 同義"
 msgid "print all keys/values"
 msgstr "輸出所有鍵值對"
 
+#: builtin/repo.c
+msgid "show keys"
+msgstr "顯示設定鍵"
+
+#: builtin/repo.c
+msgid "--keys cannot be used with a <key> or --all"
+msgstr "--keys 不能與 <key> 或 --all 一起使用"
+
 #: builtin/repo.c
 msgid "unsupported output format"
 msgstr "不支援的輸出格式"
@@ -15323,7 +15801,7 @@ msgstr "--all 和 <key> 不能同時使用"
 msgid "References"
 msgstr "引用"
 
-#: builtin/repo.c
+#: builtin/repo.c builtin/repo.c
 msgid "Count"
 msgstr "總數"
 
@@ -15331,6 +15809,7 @@ msgstr "總數"
 msgid "Branches"
 msgstr "分支"
 
+#: builtin/repo.c builtin/repo.c builtin/repo.c builtin/repo.c
 #: builtin/repo.c
 msgid "Tags"
 msgstr "標籤"
@@ -15347,15 +15826,15 @@ msgstr "其他"
 msgid "Reachable objects"
 msgstr "可到達物件"
 
-#: builtin/repo.c
+#: builtin/repo.c builtin/repo.c builtin/repo.c builtin/repo.c
 msgid "Commits"
 msgstr "提交"
 
-#: builtin/repo.c
+#: builtin/repo.c builtin/repo.c builtin/repo.c builtin/repo.c
 msgid "Trees"
 msgstr "樹狀物件"
 
-#: builtin/repo.c
+#: builtin/repo.c builtin/repo.c builtin/repo.c builtin/repo.c
 msgid "Blobs"
 msgstr "資料物件"
 
@@ -15367,6 +15846,22 @@ msgstr "未壓縮大小"
 msgid "Disk size"
 msgstr "磁碟大小"
 
+#: builtin/repo.c
+msgid "Largest objects"
+msgstr "最大的物件"
+
+#: builtin/repo.c builtin/repo.c builtin/repo.c builtin/repo.c
+msgid "Maximum size"
+msgstr "最大大小"
+
+#: builtin/repo.c
+msgid "Maximum parents"
+msgstr "最大父提交數"
+
+#: builtin/repo.c
+msgid "Maximum entries"
+msgstr "最大項目數"
+
 #: builtin/repo.c
 msgid "Repository structure"
 msgstr "版本庫結構"
@@ -15461,7 +15956,8 @@ msgstr "HEAD 現在位於 %s"
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr "在合併過程中不能做%s重設動作。"
 
-#: builtin/reset.c builtin/stash.c
+#: builtin/reset.c builtin/stash.c builtin/stash.c
+#: builtin/stash.c
 msgid "be quiet, only report errors"
 msgstr "安靜模式,只報告錯誤"
 
@@ -15477,7 +15973,7 @@ msgstr "重設 HEAD 和索引"
 msgid "reset only HEAD"
 msgstr "只重設 HEAD"
 
-#: builtin/reset.c
+#: builtin/reset.c builtin/reset.c
 msgid "reset HEAD, index and working tree"
 msgstr "重設 HEAD、索引和工作區"
 
@@ -15801,7 +16297,7 @@ msgid "the following file has changes staged in the index:"
 msgid_plural "the following files have changes staged in the index:"
 msgstr[0] "下列檔案有暫存在索引的變更:"
 
-#: builtin/rm.c
+#: builtin/rm.c builtin/rm.c
 msgid ""
 "\n"
 "(use --cached to keep the file, or -f to force removal)"
@@ -15898,7 +16394,7 @@ msgstr "git log --pretty=short | git shortlog [<選項>]"
 msgid "using multiple --group options with stdin is not supported"
 msgstr "不支援在標準輸入使用多個 --group 選項"
 
-#: builtin/shortlog.c
+#: builtin/shortlog.c builtin/shortlog.c
 #, c-format
 msgid "using %s with stdin is not supported"
 msgstr "不支援對 %s 使用 stdin"
@@ -16080,6 +16576,55 @@ msgstr "雜湊算法"
 msgid "Unknown hash algorithm"
 msgstr "未知的雜湊算法"
 
+#: builtin/show-index.c
+msgid "assuming SHA-1; use --object-format to override"
+msgstr "假設使用 SHA-1,使用 --object-format 可以覆寫"
+
+#: builtin/show-index.c
+msgid "unable to read header"
+msgstr "無法讀取標頭"
+
+#: builtin/show-index.c
+msgid "unknown index version"
+msgstr "未知的索引版本"
+
+#: builtin/show-index.c builtin/show-index.c
+msgid "unable to read index"
+msgstr "無法讀取索引"
+
+#: builtin/show-index.c
+msgid "corrupt index file"
+msgstr "索引檔案損壞"
+
+#: builtin/show-index.c
+#, c-format
+msgid "unable to read entry %u/%u"
+msgstr "無法讀取項目 %u/%u"
+
+#: builtin/show-index.c
+#, c-format
+msgid "unable to read sha1 %u/%u"
+msgstr "無法讀取 sha1 %u/%u"
+
+#: builtin/show-index.c
+#, c-format
+msgid "unable to read crc %u/%u"
+msgstr "無法讀取 crc %u/%u"
+
+#: builtin/show-index.c
+#, c-format
+msgid "unable to read 32b offset %u/%u"
+msgstr "無法讀取 32 位元偏移 %u/%u"
+
+#: builtin/show-index.c
+msgid "inconsistent 64b offset index"
+msgstr "64 位元偏移索引不一致"
+
+#: builtin/show-index.c
+#, c-format
+msgid "unable to read 64b offset %u"
+msgstr "無法讀取 64 位元偏移 %u"
+
 #: builtin/show-ref.c
 msgid ""
 "git show-ref [--head] [-d | --dereference]\n"
@@ -16124,7 +16669,7 @@ msgstr "檢查引用是否存在但不解析"
 msgid "stricter reference checking, requires exact ref path"
 msgstr "更嚴格的引用檢測,需要精確的引用路徑"
 
-#: builtin/show-ref.c
+#: builtin/show-ref.c builtin/show-ref.c
 msgid "show the HEAD reference, even if it would be filtered out"
 msgstr "顯示 HEAD 引用,即使被過濾掉"
 
@@ -16189,10 +16734,12 @@ msgstr "無法初始化工作區組態"
 msgid "failed to modify sparse-index config"
 msgstr "無法修改稀疏索引設定"
 
+#: builtin/sparse-checkout.c builtin/sparse-checkout.c
 #: builtin/sparse-checkout.c
 msgid "initialize the sparse-checkout in cone mode"
 msgstr "以 cone 模式初始化稀疏簽出"
 
+#: builtin/sparse-checkout.c builtin/sparse-checkout.c
 #: builtin/sparse-checkout.c
 msgid "toggle the use of a sparse index"
 msgstr "切換是否使用稀疏索引"
@@ -16207,11 +16754,12 @@ msgstr "無法開啟「%s」"
 msgid "could not normalize path %s"
 msgstr "無法標準化路徑 %s"
 
-#: builtin/sparse-checkout.c
+#: builtin/sparse-checkout.c builtin/sparse-checkout.c
 #, c-format
 msgid "unable to unquote C-style string '%s'"
 msgstr "無法去掉 '%s' C 樣式字串的引號"
 
+#: builtin/sparse-checkout.c builtin/sparse-checkout.c
 #: builtin/sparse-checkout.c
 msgid "unable to load existing sparse-checkout patterns"
 msgstr "無法載入現存的稀疏簽出樣式"
@@ -16262,12 +16810,12 @@ msgstr ""
 msgid "git sparse-checkout add [--skip-checks] (--stdin | <patterns>)"
 msgstr "git sparse-checkout add [--skip-checks] (--stdin | <patterns>)"
 
-#: builtin/sparse-checkout.c
+#: builtin/sparse-checkout.c builtin/sparse-checkout.c
 msgid ""
 "skip some sanity checks on the given paths that might give false positives"
 msgstr "在可能給出誤判結果的指定目錄,略過某些完整性檢查"
 
-#: builtin/sparse-checkout.c
+#: builtin/sparse-checkout.c builtin/sparse-checkout.c
 msgid "read patterns from standard in"
 msgstr "從標準輸入讀取樣式"
 
@@ -16377,19 +16925,19 @@ msgstr "git stash store [(-m | --message) <message>] [-q | --quiet] <commit>"
 
 #: builtin/stash.c
 msgid ""
-"git stash [push [-p | --patch] [-S | --staged] [-k | --[no-]keep-index] [-q "
+"git stash [push] [-p | --patch] [-S | --staged] [-k | --[no-]keep-index] [-q "
 "| --quiet]\n"
 "          [-u | --include-untracked] [-a | --all] [(-m | --message) "
 "<message>]\n"
 "          [--pathspec-from-file=<file> [--pathspec-file-nul]]\n"
-"          [--] [<pathspec>...]]"
+"          [--] [<pathspec>...]"
 msgstr ""
-"git stash [push [-p | --patch] [-S | --staged] [-k | --[no-]keep-index] [-q "
+"git stash [push] [-p | --patch] [-S | --staged] [-k | --[no-]keep-index] [-q "
 "| --quiet]\n"
 "          [-u | --include-untracked] [-a | --all] [(-m | --message) "
 "<message>]\n"
 "          [--pathspec-from-file=<file> [--pathspec-file-nul]]\n"
-"          [--] [<pathspec>...]]"
+"          [--] [<pathspec>...]"
 
 #: builtin/stash.c
 msgid ""
@@ -16477,7 +17025,7 @@ msgstr "索引未從貯存中復原。"
 msgid "could not restore untracked files from stash"
 msgstr "無法從貯存條目中復原未追蹤檔案"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 msgid "attempt to recreate the index"
 msgstr "嘗試重建索引"
 
@@ -16520,12 +17068,12 @@ msgstr "在貯存區包含未追蹤檔案"
 msgid "only show untracked files in the stash"
 msgstr "只在貯存區顯示未追蹤檔案"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 #, c-format
 msgid "Cannot update %s with %s"
 msgstr "無法用 %2$s 更新 %1$s"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c builtin/stash.c
 msgid "stash message"
 msgstr "貯存說明"
 
@@ -16553,7 +17101,7 @@ msgstr "無法儲存目前索引狀態"
 msgid "Cannot save the untracked files"
 msgstr "無法儲存未追蹤檔案"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 msgid "Cannot save the current worktree state"
 msgstr "無法儲存目前工作區狀態"
 
@@ -16598,30 +17146,31 @@ msgstr "儲存工作目錄和索引狀態 %s"
 msgid "Cannot remove worktree changes"
 msgstr "無法刪除工作區變更"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 msgid "keep index"
 msgstr "保持索引"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 msgid "stash staged changes only"
 msgstr "只貯存暫存變更"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 msgid "stash in patch mode"
 msgstr "以修補檔模式貯存"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 msgid "quiet mode"
 msgstr "靜默模式"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 msgid "include untracked files in stash"
 msgstr "貯存中包含未追蹤檔案"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c
 msgid "include ignore files"
 msgstr "包含忽略的檔案"
 
+#: builtin/stash.c builtin/stash.c builtin/stash.c
 #: builtin/stash.c
 #, c-format
 msgid "cannot parse commit %s"
@@ -16666,7 +17215,7 @@ msgstr "找到 %s 貯存提交,裡面缺少預期的前綴"
 msgid "cannot parse parents of commit: %s"
 msgstr "無法解析提交的父物件:%s"
 
-#: builtin/stash.c
+#: builtin/stash.c builtin/stash.c builtin/stash.c
 #, c-format
 msgid "%s does not look like a stash commit"
 msgstr "%s 似乎不是貯存提交"
@@ -16717,11 +17266,16 @@ msgid ""
 "authoritative upstream."
 msgstr "找不到「%s」組態設定。假定這個版本庫是其自身的官方上游。"
 
-#: builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #, c-format
 msgid "could not get a repository handle for submodule '%s'"
 msgstr "無法取得子模組「%s」的版本庫控制代碼"
 
+#: builtin/submodule--helper.c
+msgid "git submodule--helper get-default-remote <path>"
+msgstr "git submodule--helper get-default-remote <path>"
+
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #: builtin/submodule--helper.c
 #, c-format
 msgid "No url found for submodule path '%s' in .gitmodules"
@@ -16755,6 +17309,7 @@ msgstr ""
 msgid "suppress output of entering each submodule command"
 msgstr "隱藏每個子模組進入命令的輸出"
 
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #: builtin/submodule--helper.c
 msgid "recurse into nested submodules"
 msgstr "遞迴進入嵌套子模組中"
@@ -16763,6 +17318,17 @@ msgstr "遞迴進入嵌套子模組中"
 msgid "git submodule foreach [--quiet] [--recursive] [--] <command>"
 msgstr "git submodule foreach [--quiet] [--recursive] [--] <command>"
 
+#: builtin/submodule--helper.c
+#, c-format
+msgid ""
+"failed to set a valid default config for 'submodule.%s.gitdir'. Please "
+"ensure it is set, for example by running something like: 'git config "
+"submodule.%s.gitdir .git/modules/%s'"
+msgstr ""
+"無法為「submodule.%s.gitdir」設定有效的預設組態。請確定是否設定完成,舉例來"
+"說,可以執行類似這樣的命令進行設定:「git config submodule.%s.gitdir .git/"
+"modules/%s」"
+
 #: builtin/submodule--helper.c
 #, c-format
 msgid "Failed to register url for submodule path '%s'"
@@ -16791,6 +17357,7 @@ msgstr "隱藏初始化子模組的輸出"
 msgid "git submodule init [<options>] [<path>]"
 msgstr "git submodule init [<options>] [<path>]"
 
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #: builtin/submodule--helper.c
 #, c-format
 msgid "no submodule mapping found in .gitmodules for path '%s'"
@@ -16801,12 +17368,12 @@ msgstr "在 .gitmodules 中沒有發現路徑 '%s' 的子模組映射"
 msgid "could not resolve HEAD ref inside the submodule '%s'"
 msgstr "無法解析子模組「%s」的 HEAD 引用"
 
-#: builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #, c-format
 msgid "failed to recurse into submodule '%s'"
 msgstr "遞迴子模組 '%s' 失敗"
 
-#: builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 msgid "suppress submodule status output"
 msgstr "隱藏子模組的狀態輸出"
 
@@ -16869,6 +17436,30 @@ msgstr "git submodule summary [<options>] [<commit>] [--] [<path>]"
 msgid "could not fetch a revision for HEAD"
 msgstr "無法取得 HEAD 的修訂版"
 
+#: builtin/submodule--helper.c
+msgid "git submodule--helper gitdir <name>"
+msgstr "git submodule--helper gitdir <name>"
+
+#: builtin/submodule--helper.c
+msgid ""
+"could not set core.repositoryformatversion to 1.\n"
+"Please set it for migration to work, for example:\n"
+"git config core.repositoryformatversion 1"
+msgstr ""
+"無法將 core.repositoryformatversion 設定為 1。\n"
+"請設定以便進行遷移,例如:\n"
+"git config core.repositoryformatversion 1"
+
+#: builtin/submodule--helper.c
+msgid ""
+"could not enable submodulePathConfig extension. It is required\n"
+"for migration to work. Please enable it in the root repo:\n"
+"git config extensions.submodulePathConfig true"
+msgstr ""
+"無法啟用 submodulePathConfig 擴充功能。\n"
+"遷移需要這個功能才能運作,請在根版本庫中啟用:\n"
+"git config extensions.submodulePathConfig true"
+
 #: builtin/submodule--helper.c
 #, c-format
 msgid "Synchronizing submodule url for '%s'\n"
@@ -16962,7 +17553,7 @@ msgstr ""
 msgid "could not get a repository handle for gitdir '%s'"
 msgstr "無法取得 gitdir「%s」的版本庫控制代碼"
 
-#: builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #, c-format
 msgid "submodule '%s' cannot add alternate: %s"
 msgstr "子模組 '%s' 不能新增版本庫備選:%s"
@@ -16977,11 +17568,7 @@ msgstr "不能識別 submodule.alternateErrorStrategy 的取值 '%s'"
 msgid "Value '%s' for submodule.alternateLocation is not recognized"
 msgstr "不能識別 submodule.alternateLocation 的取值 '%s'"
 
-#: builtin/submodule--helper.c submodule.c
-#, c-format
-msgid "refusing to create/use '%s' in another submodule's git dir"
-msgstr "拒絕在其他子模組的 git 目錄中建立/使用「%s」"
-
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #: builtin/submodule--helper.c
 #, c-format
 msgid "directory not empty: '%s'"
@@ -16992,6 +17579,15 @@ msgstr "目錄不是空的:「%s」"
 msgid "clone of '%s' into submodule path '%s' failed"
 msgstr "無法拓製「%s」到子模組路徑「%s」"
 
+#: builtin/submodule--helper.c submodule.c
+#, c-format
+msgid ""
+"refusing to create/use '%s' in another submodule's git dir. Enabling "
+"extensions.submodulePathConfig should fix this."
+msgstr ""
+"拒絕在另一個子模組的 git 目錄中建立或使用「%s」。啟用 "
+"extensions.submodulePathConfig 應當可以修正此問題。"
+
 #: builtin/submodule--helper.c
 #, c-format
 msgid "could not get submodule directory for '%s'"
@@ -17013,10 +17609,11 @@ msgstr "新子模組的名稱"
 msgid "url where to clone the submodule from"
 msgstr "拓製子模組的 url 位址"
 
-#: builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 msgid "depth for shallow clones"
 msgstr "淺拓製的深度"
 
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #: builtin/submodule--helper.c
 msgid "force cloning progress"
 msgstr "強制顯示拓製進度"
@@ -17263,7 +17860,7 @@ msgstr "git submodule set-branch [-q|--quiet] (-b|--branch) <branch> <path>"
 msgid "--branch or --default required"
 msgstr "需要 --branch 或 --default"
 
-#: builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 msgid "print only error messages"
 msgstr "只輸出錯誤訊息"
 
@@ -17328,7 +17925,7 @@ msgstr "正在重新啟用「%s」子模組的本機 Git 目錄\n"
 msgid "unable to checkout submodule '%s'"
 msgstr "無法簽出「%s」子模組"
 
-#: builtin/submodule--helper.c
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 msgid "please make sure that the .gitmodules file is in the working tree"
 msgstr "請確認 .gitmodules 檔案在工作區裡"
 
@@ -17337,6 +17934,7 @@ msgstr "請確認 .gitmodules 檔案在工作區裡"
 msgid "Failed to add submodule '%s'"
 msgstr "無法加入子模組「%s」"
 
+#: builtin/submodule--helper.c builtin/submodule--helper.c
 #: builtin/submodule--helper.c
 #, c-format
 msgid "Failed to register submodule '%s'"
@@ -17530,7 +18128,7 @@ msgstr "壞的物件類型。"
 msgid "no tag message?"
 msgstr "無標籤說明?"
 
-#: builtin/tag.c
+#: builtin/tag.c builtin/tag.c
 #, c-format
 msgid "The tag message has been left in %s\n"
 msgstr "標籤說明被保留在 %s\n"
@@ -17591,11 +18189,11 @@ msgstr "標籤列表選項"
 msgid "show tag list in columns"
 msgstr "以列的方式顯示標籤列表"
 
-#: builtin/tag.c
+#: builtin/tag.c builtin/tag.c
 msgid "print only tags that contain the commit"
 msgstr "只列印包含該提交的標籤"
 
-#: builtin/tag.c
+#: builtin/tag.c builtin/tag.c
 msgid "print only tags that don't contain the commit"
 msgstr "只列印不包含該提交的標籤"
 
@@ -17671,7 +18269,7 @@ msgstr "建立目錄 %s 失敗"
 msgid "failed to delete file %s"
 msgstr "刪除檔案 %s 失敗"
 
-#: builtin/update-index.c
+#: builtin/update-index.c builtin/update-index.c
 #, c-format
 msgid "failed to delete directory %s"
 msgstr "刪除目錄 %s 失敗"
@@ -18089,8 +18687,8 @@ msgid "report pruned working trees"
 msgstr "報告剪除的工作區"
 
 #: builtin/worktree.c
-msgid "expire working trees older than <time>"
-msgstr "將早於 <時間> 的工作區過期"
+msgid "prune missing working trees older than <time>"
+msgstr "清除早於 <time> 的遺失工作區"
 
 #: builtin/worktree.c
 #, c-format
@@ -18130,7 +18728,7 @@ msgstr "將「%s」複製至「%s」失敗;稀疏簽出可能無法正常運
 msgid "failed to copy worktree config from '%s' to '%s'"
 msgstr "將工作區組態從「%s」複製至「%s」失敗"
 
-#: builtin/worktree.c
+#: builtin/worktree.c builtin/worktree.c
 #, c-format
 msgid "failed to unset '%s' in '%s'"
 msgstr "無法取消「%2$s」中「%1$s」的設定"
@@ -18149,7 +18747,7 @@ msgstr "正在初始化"
 msgid "could not find created worktree '%s'"
 msgstr "找不到建立的工作區「%s」"
 
-#: builtin/worktree.c
+#: builtin/worktree.c builtin/worktree.c
 #, c-format
 msgid "Preparing worktree (new branch '%s')"
 msgstr "準備工作區(新分支 '%s')"
@@ -18170,15 +18768,8 @@ msgid "Preparing worktree (detached HEAD %s)"
 msgstr "準備工作區(分離開頭指標 %s)"
 
 #: builtin/worktree.c
-#, c-format
-msgid ""
-"HEAD points to an invalid (or orphaned) reference.\n"
-"HEAD path: '%s'\n"
-"HEAD contents: '%s'"
-msgstr ""
-"HEAD 指向無效(或孤立)引用。\n"
-"HEAD 路徑:「%s」\n"
-"HEAD 內容:「%s」"
+msgid "HEAD points to an invalid (or orphaned) reference.\n"
+msgstr "HEAD 指向無效(或孤立)引用。\n"
 
 #: builtin/worktree.c
 msgid ""
@@ -18212,7 +18803,7 @@ msgstr "生成新的工作區"
 msgid "keep the new working tree locked"
 msgstr "鎖定新工作區"
 
-#: builtin/worktree.c
+#: builtin/worktree.c builtin/worktree.c
 msgid "reason for locking"
 msgstr "鎖定原因"
 
@@ -18224,7 +18815,7 @@ msgstr "設定追蹤模式(參見 git-branch(1))"
 msgid "try to match the new branch name with a remote-tracking branch"
 msgstr "嘗試為新分支名符合一個遠端追蹤分支"
 
-#: builtin/worktree.c
+#: builtin/worktree.c builtin/worktree.c builtin/worktree.c
 msgid "use relative paths for worktrees"
 msgstr "對工作區使用相對路徑"
 
@@ -18236,7 +18827,7 @@ msgstr "「%s」、「%s」和「%s」選項不得同時使用"
 #: builtin/worktree.c
 #, c-format
 msgid "option '%s' and commit-ish cannot be used together"
-msgstr "「%s」選項和提交編號不得同時使用"
+msgstr "「%s」選項和提交指示元不得同時使用"
 
 #: builtin/worktree.c
 msgid "added with --lock"
@@ -18251,19 +18842,20 @@ msgid "show extended annotations and reasons, if available"
 msgstr "如果有則顯示延伸的註釋和原因"
 
 #: builtin/worktree.c
-msgid "add 'prunable' annotation to worktrees older than <time>"
-msgstr "對舊於 <時間> 的工作區加上 ‘prunable’ 標示"
+msgid "add 'prunable' annotation to missing worktrees older than <time>"
+msgstr "對舊於 <time> 的遺失工作區加上「prunable」標示"
 
 #: builtin/worktree.c
 msgid "terminate records with a NUL character"
 msgstr "以一個 NUL 字元終止記錄"
 
+#: builtin/worktree.c builtin/worktree.c builtin/worktree.c
 #: builtin/worktree.c
 #, c-format
 msgid "'%s' is not a working tree"
 msgstr "'%s' 不是一個工作區"
 
-#: builtin/worktree.c
+#: builtin/worktree.c builtin/worktree.c
 msgid "The main working tree cannot be locked or unlocked"
 msgstr "主工作區無法被加鎖或解鎖"
 
@@ -18290,7 +18882,7 @@ msgstr "不能移動或刪除包含子模組的工作區"
 msgid "force move even if worktree is dirty or locked"
 msgstr "強制移動,即使工作區是髒的或已鎖定"
 
-#: builtin/worktree.c
+#: builtin/worktree.c builtin/worktree.c
 #, c-format
 msgid "'%s' is a main working tree"
 msgstr "'%s' 是一個主工作區"
@@ -18869,6 +19461,10 @@ msgstr "從一個檔案計算物件 ID,也能順帶建立一個物件"
 msgid "Display help information about Git"
 msgstr "顯示 Git 的說明訊息"
 
+#: command-list.h
+msgid "EXPERIMENTAL: Rewrite history"
+msgstr "實驗性:重寫歷史記錄"
+
 #: command-list.h
 msgid "Run git hooks"
 msgstr "執行 git 掛鉤"
@@ -19007,8 +19603,8 @@ msgid "Pack heads and tags for efficient repository access"
 msgstr "打包頭和標籤以實現高效的版本庫存取"
 
 #: command-list.h
-msgid "Compute unique ID for a patch"
-msgstr "è¨\88ç®\97ä¸\80å\80\8bä¿®è£\9cæª\94的唯一 ID"
+msgid "Compute unique IDs for patches"
+msgstr "è¨\88ç®\97ä¿®è£\9cæª\94æ¡\88的唯一 ID"
 
 #: command-list.h
 msgid "Prune all unreachable objects from the object database"
@@ -19491,7 +20087,7 @@ msgstr "無效的提交圖鏈:「%s」列不是雜湊值"
 msgid "unable to find all commit-graph files"
 msgstr "無法找到所有提交圖檔案"
 
-#: commit-graph.c
+#: commit-graph.c commit-graph.c
 msgid "invalid commit position. commit-graph is likely corrupt"
 msgstr "無效的提交位置。提交圖可能已損壞"
 
@@ -19637,7 +20233,7 @@ msgstr "提交圖檔案的總和檢查碼錯誤,可能已經損壞"
 msgid "commit-graph has incorrect OID order: %s then %s"
 msgstr "提交圖的物件 ID 順序不正確:%s 然後 %s"
 
-#: commit-graph.c
+#: commit-graph.c commit-graph.c
 #, c-format
 msgid "commit-graph has incorrect fanout value: fanout[%d] = %u != %u"
 msgstr "提交圖有不正確的扇出值:fanout[%d] = %u != %u"
@@ -19693,11 +20289,17 @@ msgstr "提交圖中包含 0 和非 0 兩個世代數(例如提交「%s」和
 msgid "Verifying commits in commit graph"
 msgstr "正在驗證提交圖中的提交"
 
-#: commit-reach.c sequencer.c
+#: commit-reach.c commit-reach.c commit-reach.c sequencer.c
+#: sequencer.c
 #, c-format
 msgid "could not parse commit %s"
 msgstr "無法解析提交 %s"
 
+#: commit.c object.c
+#, c-format
+msgid "object %s is a %s, not a %s"
+msgstr "物件 %s 是一個 %s,不是一個 %s"
+
 #: commit.c
 #, c-format
 msgid "%s %s is not a commit!"
@@ -19766,7 +20368,7 @@ msgstr "沒有可用的編譯器資訊\n"
 msgid "no libc information available\n"
 msgstr "沒有可用的 libc 資訊\n"
 
-#: compat/disk.h
+#: compat/disk.h compat/disk.h
 #, c-format
 msgid "could not determine free disk size for '%s'"
 msgstr "無法判斷「%s」的剩餘磁碟大小"
@@ -19786,7 +20388,8 @@ msgstr "[GLE %ld] 健康監聽執行緒無法開啟「%ls」"
 msgid "[GLE %ld] health thread getting BHFI for '%ls'"
 msgstr "[GLE %ld] 健康監聽執行緒取得「%ls」的 BHFI"
 
-#: compat/fsmonitor/fsm-health-win32.c compat/fsmonitor/fsm-listen-win32.c
+#: compat/fsmonitor/fsm-health-win32.c
+#: compat/fsmonitor/fsm-listen-win32.c
 #, c-format
 msgid "could not convert to wide characters: '%s'"
 msgstr "無法轉換至較寬字元:「%s」"
@@ -19889,7 +20492,7 @@ msgstr "複製 SID 失敗(%ld)"
 msgid "failed to get owner for '%s' (%ld)"
 msgstr "無法取得「%s」的所有者 (%ld)"
 
-#: compat/obstack.c
+#: compat/obstack.c compat/obstack.c
 msgid "memory exhausted"
 msgstr "記憶體耗盡"
 
@@ -20086,12 +20689,12 @@ msgstr "無效鍵名(有換行符號):%s"
 msgid "empty config key"
 msgstr "空白設定鍵"
 
-#: config.c
+#: config.c config.c
 #, c-format
 msgid "bogus config parameter: %s"
 msgstr "偽設定參數:%s"
 
-#: config.c
+#: config.c config.c config.c config.c
 #, c-format
 msgid "bogus format in %s"
 msgstr "%s 中格式錯誤"
@@ -20189,11 +20792,6 @@ msgstr "命令列 %3$s 中設定變數 '%2$s' 錯誤的取值 '%1$s':%4$s"
 msgid "bad numeric config value '%s' for '%s' in %s: %s"
 msgstr "在 %3$s 中設定變數 '%2$s' 錯誤的取值 '%1$s':%4$s"
 
-#: config.c
-#, c-format
-msgid "bad boolean config value '%s' for '%s'"
-msgstr "「%2$s」的「%1$s」布林設定值無效"
-
 #: config.c
 #, c-format
 msgid "failed to expand user dir in: '%s'"
@@ -20309,7 +20907,7 @@ msgstr "寫入新的設定檔案 %s 失敗"
 msgid "no multi-line comment allowed: '%s'"
 msgstr "不允許多列備註:「%s」"
 
-#: config.c
+#: config.c config.c
 #, c-format
 msgid "could not lock config file %s"
 msgstr "無法鎖定組態檔案 %s"
@@ -20324,7 +20922,7 @@ msgstr "開啟 %s"
 msgid "invalid config file %s"
 msgstr "無效的設定檔案 %s"
 
-#: config.c
+#: config.c config.c
 #, c-format
 msgid "fstat on %s failed"
 msgstr "對 %s 呼叫 fstat 失敗"
@@ -20334,12 +20932,12 @@ msgstr "對 %s 呼叫 fstat 失敗"
 msgid "unable to mmap '%s'%s"
 msgstr "無法 mmap '%s'%s"
 
-#: config.c
+#: config.c config.c
 #, c-format
 msgid "chmod on %s failed"
 msgstr "對 %s 呼叫 chmod 失敗"
 
-#: config.c
+#: config.c config.c
 #, c-format
 msgid "could not write config file %s"
 msgstr "無法寫入組態檔案 %s"
@@ -20434,7 +21032,7 @@ msgstr "在 bundle-uri 回應的第 %d 列發現錯誤:%s"
 msgid "expected flush after bundle-uri listing"
 msgstr "在 bundle-uri 清單後應該有一個 flush 包"
 
-#: connect.c
+#: connect.c connect.c
 msgid "expected response end packet after ref listing"
 msgstr "在引用列表後預期要有回應結束封包"
 
@@ -20456,7 +21054,7 @@ msgstr "不支援 '%s' 協定"
 msgid "unable to set SO_KEEPALIVE on socket"
 msgstr "無法為 socket 設定 SO_KEEPALIVE"
 
-#: connect.c
+#: connect.c connect.c
 #, c-format
 msgid "Looking up %s ... "
 msgstr "尋找 %s ... "
@@ -20467,7 +21065,7 @@ msgid "unable to look up %s (port %s) (%s)"
 msgstr "無法尋找 %s(埠 %s)(%s)"
 
 #. TRANSLATORS: this is the end of "Looking up %s ... "
-#: connect.c
+#: connect.c connect.c
 #, c-format
 msgid ""
 "done.\n"
@@ -20476,7 +21074,7 @@ msgstr ""
 "完成。\n"
 "連線到 %s(埠 %s)... "
 
-#: connect.c
+#: connect.c connect.c
 #, c-format
 msgid ""
 "unable to connect to %s:\n"
@@ -20486,7 +21084,7 @@ msgstr ""
 "%s"
 
 #. TRANSLATORS: this is the end of "Connecting to %s (port %s) ... "
-#: connect.c
+#: connect.c connect.c
 msgid "done."
 msgstr "完成。"
 
@@ -20500,7 +21098,7 @@ msgstr "無法尋找 %s(%s)"
 msgid "unknown port %s"
 msgstr "未知埠 %s"
 
-#: connect.c
+#: connect.c connect.c
 #, c-format
 msgid "strange hostname '%s' blocked"
 msgstr "已阻止奇怪的主機名稱 '%s'"
@@ -20611,7 +21209,7 @@ msgstr ""
 "檔案 '%s' 缺少一個位元組順序標記(BOM)。請使用 UTF-%sBE or UTF-%sLE(取決於"
 "字節序)作為工作區編碼。"
 
-#: convert.c
+#: convert.c convert.c
 #, c-format
 msgid "failed to encode '%s' from %s to %s"
 msgstr "無法對 '%s' 進行從 %s 到 %s 的編碼"
@@ -20636,12 +21234,12 @@ msgstr "不能將輸入傳遞給外部過濾器 '%s'"
 msgid "external filter '%s' failed %d"
 msgstr "外部過濾器 '%s' 失敗碼 %d"
 
-#: convert.c
+#: convert.c convert.c
 #, c-format
 msgid "read from external filter '%s' failed"
 msgstr "從外部過濾器 '%s' 讀取失敗"
 
-#: convert.c
+#: convert.c convert.c
 #, c-format
 msgid "external filter '%s' failed"
 msgstr "外部過濾器 '%s' 失敗"
@@ -20665,7 +21263,7 @@ msgstr "外部過濾器 '%s' 不再可用,但並非所有路徑都已過濾"
 msgid "true/false are no valid working-tree-encodings"
 msgstr "true/false 不是有效的工作區編碼"
 
-#: convert.c
+#: convert.c convert.c
 #, c-format
 msgid "%s: clean filter '%s' failed"
 msgstr "%s:clean 過濾器 '%s' 失敗"
@@ -20771,7 +21369,7 @@ msgid "%s, %<PRIuMAX> month ago"
 msgid_plural "%s, %<PRIuMAX> months ago"
 msgstr[0] "%s %<PRIuMAX> 個月前"
 
-#: date.c
+#: date.c date.c
 #, c-format
 msgid "%<PRIuMAX> year ago"
 msgid_plural "%<PRIuMAX> years ago"
@@ -20966,7 +21564,8 @@ msgstr "「%s」和「%s」選項不得同時使用,請使用「%s」搭配「
 msgid "invalid --stat value: %s"
 msgstr "無效的 --stat 值:%s"
 
-#: diff.c parse-options.c
+#: diff.c diff.c diff.c diff.c diff.c
+#: parse-options.c parse-options.c
 #, c-format
 msgid "%s expects a numerical value"
 msgstr "%s 期望一個數字值"
@@ -20990,12 +21589,16 @@ msgstr "--diff-filter=%2$s 中未知的變更類 '%1$c'"
 msgid "unknown value after ws-error-highlight=%.*s"
 msgstr "ws-error-highlight=%.*s 之後未知的值"
 
+#: diff.c
+msgid "--find-object requires a git repository"
+msgstr "--find-object 需要一個 git 版本庫"
+
 #: diff.c
 #, c-format
 msgid "unable to resolve '%s'"
 msgstr "不能解析 '%s'"
 
-#: diff.c
+#: diff.c diff.c
 #, c-format
 msgid "%s expects <n>/<m> form"
 msgstr "%s 期望 <n>/<m> 格式"
@@ -21015,7 +21618,7 @@ msgstr "壞的 --color-moved 參數:%s"
 msgid "invalid mode '%s' in --color-moved-ws"
 msgstr "--color-moved-ws 中的無效模式 '%s'"
 
-#: diff.c
+#: diff.c diff.c
 #, c-format
 msgid "invalid argument to %s"
 msgstr "%s 的參數無效"
@@ -21047,15 +21650,15 @@ msgstr "壞的 --word-diff 參數:%s"
 msgid "Diff output format options"
 msgstr "差異輸出格式化選項"
 
-#: diff.c
+#: diff.c diff.c
 msgid "generate patch"
 msgstr "生成修補檔"
 
-#: diff.c
+#: diff.c diff.c diff.c
 msgid "<n>"
 msgstr "<n>"
 
-#: diff.c parse-options.h
+#: diff.c diff.c parse-options.h
 msgid "generate diffs with <n> lines context"
 msgstr "生成含 <n> 行上下文的差異"
 
@@ -21079,7 +21682,7 @@ msgstr "機器友好的 --stat"
 msgid "output only the last line of --stat"
 msgstr "只輸出 --stat 的最後一行"
 
-#: diff.c
+#: diff.c diff.c
 msgid "<param1>,<param2>..."
 msgstr "<param1>,<param2>..."
 
@@ -21120,7 +21723,7 @@ msgstr "<寬度>[,<檔案名寬度>[,<次數>]]"
 msgid "generate diffstat"
 msgstr "生成差異統計(diffstat)"
 
-#: diff.c
+#: diff.c diff.c diff.c
 msgid "<width>"
 msgstr "<寬度>"
 
@@ -21178,7 +21781,7 @@ msgstr ""
 "在 --raw 或者 --numstat 中,不對路徑字元轉檔並使用 NUL 字元做為輸出欄位的分隔"
 "符"
 
-#: diff.c
+#: diff.c diff.c diff.c diff.c
 msgid "<prefix>"
 msgstr "<前綴>"
 
@@ -21206,7 +21809,7 @@ msgstr "使用預設的前置名稱 a/ 和 b/"
 msgid "show context between diff hunks up to the specified number of lines"
 msgstr "顯示指定行數的差異區塊間的上下文"
 
-#: diff.c
+#: diff.c diff.c diff.c
 msgid "<char>"
 msgstr "<字元>"
 
@@ -21296,7 +21899,7 @@ msgstr "忽略行尾的Enter符(CR)"
 msgid "ignore changes whose lines are all blank"
 msgstr "忽略整行都是空白的變更"
 
-#: diff.c
+#: diff.c diff.c diff.c diff.c
 msgid "<regex>"
 msgstr "<正則>"
 
@@ -21324,7 +21927,7 @@ msgstr "<文字>"
 msgid "generate diff using the \"anchored diff\" algorithm"
 msgstr "使用 \"anchored diff\" 演算法生成差異"
 
-#: diff.c
+#: diff.c diff.c diff.c
 msgid "<mode>"
 msgstr "<模式>"
 
@@ -21432,7 +22035,7 @@ msgstr "將 -S 的 <string> 當做延伸 POSIX 常規表示式"
 msgid "control the order in which files appear in the output"
 msgstr "控制輸出中的檔案顯示順序"
 
-#: diff.c
+#: diff.c diff.c
 msgid "<path>"
 msgstr "<路徑>"
 
@@ -21466,10 +22069,6 @@ msgstr "透過差異類型選擇檔案"
 msgid "<depth>"
 msgstr "<depth>"
 
-#: diff.c
-msgid "maximum tree depth to recurse"
-msgstr "樹狀物件的遞迴最大深度"
-
 #: diff.c
 msgid "<file>"
 msgstr "<檔案>"
@@ -21511,12 +22110,12 @@ msgstr "diff 中沒有「%s」路徑"
 msgid "pathspec '%s' did not match any file(s) known to git"
 msgstr "路徑規格 '%s' 未符合任何 git 已知檔案"
 
-#: dir.c
+#: dir.c dir.c dir.c dir.c
 #, c-format
 msgid "unrecognized pattern: '%s'"
 msgstr "不認識樣式:「%s」"
 
-#: dir.c
+#: dir.c dir.c
 #, c-format
 msgid "unrecognized negative pattern: '%s'"
 msgstr "不認識反向模式:「%s」"
@@ -21543,7 +22142,7 @@ msgstr "無法獲得核心名稱和訊息"
 msgid "untracked cache is disabled on this system or location"
 msgstr "快取未追蹤檔案在本系統或位置中被停用"
 
-#: dir.c
+#: dir.c dir.c
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -21556,7 +22155,7 @@ msgstr ""
 msgid "index file corrupt in repo %s"
 msgstr "版本庫 %s 中的索引檔案損壞"
 
-#: dir.c
+#: dir.c dir.c
 #, c-format
 msgid "could not create directories for %s"
 msgstr "無法建立 %s 的目錄"
@@ -21571,7 +22170,8 @@ msgstr "無法從「%s」遷移 git 目錄到「%s」"
 msgid "hint: Waiting for your editor to close the file...%c"
 msgstr "提示:等待您的編輯器關閉檔案...%c"
 
-#: editor.c sequencer.c wrapper.c
+#: editor.c sequencer.c sequencer.c sequencer.c
+#: sequencer.c sequencer.c wrapper.c
 #, c-format
 msgid "could not write to '%s'"
 msgstr "無法寫入「%s」"
@@ -21610,7 +22210,7 @@ msgstr "忽略未知的 core.fsync 元件「%s」"
 msgid "abbrev length out of range: %d"
 msgstr "縮寫長度超出範圍:%d"
 
-#: environment.c
+#: environment.c environment.c
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr "錯誤的 zlib 壓縮級別 %d"
@@ -21700,27 +22300,27 @@ msgstr "無法寫到遠端"
 msgid "Server supports filter"
 msgstr "伺服器支援 filter"
 
-#: fetch-pack.c
+#: fetch-pack.c fetch-pack.c
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "無效的 shallow 訊息:%s"
 
-#: fetch-pack.c
+#: fetch-pack.c fetch-pack.c
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "無效的 unshallow 訊息:%s"
 
-#: fetch-pack.c
+#: fetch-pack.c fetch-pack.c
 #, c-format
 msgid "error in object: %s"
 msgstr "物件中發生錯誤:%s"
 
-#: fetch-pack.c
+#: fetch-pack.c fetch-pack.c
 #, c-format
 msgid "no shallow found: %s"
 msgstr "未發現 shallow:%s"
 
-#: fetch-pack.c
+#: fetch-pack.c fetch-pack.c
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "應為 shallow/unshallow,卻得到 %s"
@@ -21789,7 +22389,10 @@ msgstr "sideband 多路輸出發生錯誤"
 msgid "Server version is %.*s"
 msgstr "伺服器版本 %.*s"
 
-#: fetch-pack.c
+#: fetch-pack.c fetch-pack.c fetch-pack.c fetch-pack.c
+#: fetch-pack.c fetch-pack.c fetch-pack.c fetch-pack.c
+#: fetch-pack.c fetch-pack.c fetch-pack.c fetch-pack.c
+#: fetch-pack.c fetch-pack.c fetch-pack.c fetch-pack.c
 #, c-format
 msgid "Server supports %s"
 msgstr "伺服器支援 %s"
@@ -21818,7 +22421,7 @@ msgstr "伺服器不支援此版本庫的物件格式"
 msgid "no common commits"
 msgstr "沒有共同的提交"
 
-#: fetch-pack.c
+#: fetch-pack.c fetch-pack.c
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack:取得失敗。"
 
@@ -21836,7 +22439,7 @@ msgstr "伺服器不支援「%s」算法"
 msgid "Server does not support shallow requests"
 msgstr "伺服器不支援 shallow 請求"
 
-#: fetch-pack.c
+#: fetch-pack.c fetch-pack.c
 msgid "unable to write request to remote"
 msgstr "無法將請求寫到遠端"
 
@@ -21900,6 +22503,11 @@ msgstr "處理要取得的引用發生錯誤:%d"
 msgid "git fetch-pack: expected response end packet"
 msgstr "git fetch-pack: 預期要有回應結束封包"
 
+#: fetch-pack.c
+#, c-format
+msgid "couldn't resolve 'auto' filter '%s': %s"
+msgstr "無法解析「auto」過濾器「%s」:%s"
+
 #: fetch-pack.c
 msgid "no matching remote head"
 msgstr "沒有符合的遠端分支"
@@ -22001,7 +22609,7 @@ msgstr ""
 msgid "unsupported command listing type '%s'"
 msgstr "不支援的命令列表類型 '%s'"
 
-#: git.c
+#: git.c git.c git.c
 #, c-format
 msgid "no directory given for '%s' option\n"
 msgstr "未傳入目錄至「%s」選項\n"
@@ -22096,11 +22704,12 @@ msgstr "展開別名指令 '%s' 失敗,'%s' 不是一個 git 指令\n"
 msgid "failed to run command '%s': %s\n"
 msgstr "執行指令 '%s' 失敗:%s\n"
 
+#: gpg-interface.c gpg-interface.c gpg-interface.c
 #: gpg-interface.c
 msgid "could not create temporary file"
 msgstr "無法建立暫存檔"
 
-#: gpg-interface.c
+#: gpg-interface.c gpg-interface.c
 #, c-format
 msgid "failed writing detached signature to '%s'"
 msgstr "無法將分離式簽名寫入 '%s'"
@@ -22134,7 +22743,7 @@ msgstr "簽名「%s」損壞或者不相容"
 msgid "failed to get the ssh fingerprint for key '%s'"
 msgstr "無法取得「%s」金鑰的 SSH 指紋"
 
-#: gpg-interface.c
+#: gpg-interface.c gpg-interface.c
 #, c-format
 msgid "failed to get the ssh fingerprint for key %s"
 msgstr "無法取得 %s 金鑰的 SSH 指紋"
@@ -22319,10 +22928,10 @@ msgid ""
 "'%s' appears to be a git command, but we were not\n"
 "able to execute it. Maybe git-%s is broken?"
 msgstr ""
-"'%s' 像是一個 git 指令,但卻無法執行。\n"
+"「%s」似乎是 git 命令,但卻無法執行。\n"
 "可能是 git-%s 受損?"
 
-#: help.c
+#: help.c help.c
 #, c-format
 msgid "git: '%s' is not a git command. See 'git --help'."
 msgstr "git:'%s' 不是一個 git 指令。參見 'git --help'。"
@@ -22391,7 +23000,19 @@ msgstr ""
 "因為沒有將掛鉤「%s」設定為可執行,因此忽略這個掛鉤。\n"
 "您可以透過設定「git config set advice.ignoredHook false」來關閉這則警告。"
 
-#: http-fetch.c
+#: hook.c
+#, c-format
+msgid "disabled hook '%s' has no command configured"
+msgstr "停用的掛鉤「%s」沒有設定命令"
+
+#: hook.c
+#, c-format
+msgid ""
+"'hook.%s.command' must be configured or 'hook.%s.event' must be removed; "
+"aborting."
+msgstr "必須設定「hook.%s.command」或移除「hook.%s.event」,中止。"
+
+#: http-fetch.c http-fetch.c
 msgid "not a git repository"
 msgstr "不是一個 git 版本庫"
 
@@ -22413,7 +23034,7 @@ msgstr "不支援委託控制,因為 cURL < 7.22.0"
 msgid "Unknown value for http.proactiveauth"
 msgstr "http.proactiveauth 的值未知"
 
-#: http.c parse.c
+#: http.c http.c parse.c
 #, c-format
 msgid "failed to parse %s"
 msgstr "解析 %s 失敗"
@@ -22452,6 +23073,23 @@ msgstr ""
 "     請求:%s\n"
 "   重定向:%s"
 
+#: http.c
+#, c-format
+msgid ""
+"response requested a delay greater than http.maxRetryTime (%ld > %ld seconds)"
+msgstr "回應要求延遲的時間大於 http.maxRetryTime(%ld > %ld 秒)"
+
+#: http.c
+#, c-format
+msgid ""
+"configured http.retryAfter exceeds http.maxRetryTime (%ld > %ld seconds)"
+msgstr "已設定的 http.retryAfter 超過 http.maxRetryTime(%ld > %ld 秒)"
+
+#: http.c
+#, c-format
+msgid "rate limited, waiting %ld seconds before retry"
+msgstr "受到速率限制,等待 %ld 秒後重試"
+
 #: http.h
 #, c-format
 msgid ""
@@ -22549,6 +23187,10 @@ msgstr ""
 "使用「git config imap.folder <資料夾>」指定目的地資料夾。\n"
 "(比如「git config imap.folder Drafts」)"
 
+#: list-objects-filter-options.c
+msgid "'auto' filter not supported by this command"
+msgstr "此命令不支援「auto」過濾器"
+
 #: list-objects-filter-options.c
 msgid "expected 'tree:<depth>'"
 msgstr "期望 'tree:<深度>'"
@@ -22572,6 +23214,10 @@ msgstr "無效的過濾器規格 '%s'"
 msgid "must escape char in sub-filter-spec: '%c'"
 msgstr "必須對 sub-filter-spec 中的字元進行轉義:'%c'"
 
+#: list-objects-filter-options.c
+msgid "an 'auto' filter cannot be combined"
+msgstr "「auto」過濾器無法與其他過濾器結合使用"
+
 #: list-objects-filter-options.c
 msgid "expected something after combine:"
 msgstr "期望在組合後有一些東西:"
@@ -22580,6 +23226,10 @@ msgstr "期望在組合後有一些東西:"
 msgid "multiple filter-specs cannot be combined"
 msgstr "不能混用多種過濾規格"
 
+#: list-objects-filter-options.c list-objects-filter-options.c
+msgid "an 'auto' filter is incompatible with any other filter"
+msgstr "「auto」過濾器與其他過濾器均不相容"
+
 #: list-objects-filter-options.c
 msgid "unable to upgrade repository format to support partial clone"
 msgstr "無法升級版本庫格式,以支援部分拓製"
@@ -22617,24 +23267,48 @@ msgstr "樹 %2$s 中的條目 '%1$s' 具有資料物件的屬性,但不是一
 msgid "unable to load root tree for commit %s"
 msgstr "無法為提交 %s 載入根樹"
 
+#: lockfile.c
+#, c-format
+msgid "could not write lock pid file '%s'"
+msgstr "無法寫入鎖定 PID 檔案「%s」"
+
+#: lockfile.c
+#, c-format
+msgid "malformed lock pid file '%s'"
+msgstr "鎖定 PID 檔案「%s」有格式錯誤"
+
 #: lockfile.c
 #, c-format
 msgid ""
-"Unable to create '%s.lock': %s.\n"
+"Unable to create '%s': %s.\n"
 "\n"
-"Another git process seems to be running in this repository, e.g.\n"
-"an editor opened by 'git commit'. Please make sure all processes\n"
-"are terminated then try again. If it still fails, a git process\n"
-"may have crashed in this repository earlier:\n"
-"remove the file manually to continue."
 msgstr ""
-"無法建立 '%s.lock':%s。\n"
+"無法建立「%s」:%s。\n"
 "\n"
-"這個版本庫似乎有另一個 git 處理程序在執行,\n"
-"例如「git commit」命令開啟的編輯器。\n"
-"請確認所有處理程序都已經終止後再重試一次。如果錯誤沒有消失,\n"
-"有可能是之前在這個版本庫執行的 git 處理程序當掉了。\n"
-"如果是這樣,請自行刪除這個檔案再繼續。"
+
+#: lockfile.c
+#, c-format
+msgid ""
+"Lock may be held by process %<PRIuMAX>; if no git process is running, the "
+"lock file may be stale (PIDs can be reused)"
+msgstr ""
+"鎖可能被處理程序 %<PRIuMAX> 持有;若沒有 git 處理程序在執行,這個鎖定檔可能已"
+"經過期(PID 可能會被重複使用)"
+
+#: lockfile.c
+#, c-format
+msgid ""
+"Lock was held by process %<PRIuMAX>, which is no longer running; the lock "
+"file appears to be stale"
+msgstr ""
+"鎖先前由處理程序 %<PRIuMAX> 持有,但這個處理程序已不再執行;鎖定檔似乎已經過"
+"期"
+
+#: lockfile.c
+msgid ""
+"Another git process seems to be running in this repository, or the lock file "
+"may be stale"
+msgstr "似乎有另一個 git 處理程序正在此版本庫中執行,或者鎖定檔案可能已經過期"
 
 #: lockfile.c
 #, c-format
@@ -22650,7 +23324,7 @@ msgstr "無法建立暫存物件目錄"
 msgid "could not write loose object index %s"
 msgstr "無法寫入鬆散物件索引 %s"
 
-#: loose.c
+#: loose.c loose.c
 #, c-format
 msgid "failed to write loose object index %s"
 msgstr "寫入鬆散物件索引 %s 失敗"
@@ -22668,12 +23342,12 @@ msgstr "在 ls-refs 引數之後應該有一個 flush 包"
 msgid "quoted CRLF detected"
 msgstr "偵測到由可列印字元 (quoted) 所組成的 CRLF"
 
-#: mem-pool.c strbuf.c wrapper.c
+#: mem-pool.c strbuf.c strbuf.c wrapper.c
 #, c-format
 msgid "unable to format message: %s"
 msgstr "無法格式化訊息:%s"
 
-#: merge-ll.c
+#: merge-ll.c merge-ll.c
 #, c-format
 msgid "invalid marker-size '%s', expecting an integer"
 msgstr "無效的 marker-size「%s」,應為整數"
@@ -22698,6 +23372,7 @@ msgstr "無法合併 %s 子模組(沒有合併基底)"
 msgid "Failed to merge submodule %s (commits not present)"
 msgstr "無法合併子模組 %s(提交不存在)"
 
+#: merge-ort.c merge-ort.c merge-ort.c merge-ort.c
 #: merge-ort.c
 #, c-format
 msgid "error: failed to merge submodule %s (repository corrupt)"
@@ -22708,7 +23383,7 @@ msgstr "錯誤:無法合併子模組 %s (版本庫損壞)"
 msgid "Failed to merge submodule %s (commits don't follow merge-base)"
 msgstr "無法合併子模組 %s (提交未跟隨合併基礎)"
 
-#: merge-ort.c
+#: merge-ort.c merge-ort.c
 #, c-format
 msgid "Note: Fast-forwarding submodule %s to %s"
 msgstr "注意:正在將 %s 子模組快轉到 %s"
@@ -22835,7 +23510,7 @@ msgstr ""
 "衝突(重新命名陷入相撞):%s -> %s 這個重新命名有內容衝突並與其他路徑相撞,可"
 "能會因此出現巢狀衝突標記。"
 
-#: merge-ort.c
+#: merge-ort.c merge-ort.c
 #, c-format
 msgid "CONFLICT (rename/delete): %s renamed to %s in %s, but deleted in %s."
 msgstr ""
@@ -22984,8 +23659,17 @@ msgid "malformed line: %s"
 msgstr "橫列格式錯誤:%s"
 
 #: midx-write.c
-msgid "could not load pack"
-msgstr "無法載入包"
+#, c-format
+msgid "could not load pack %d"
+msgstr "無法載入封裝 %d"
+
+#: midx-write.c
+msgid "too many packs, unable to compact"
+msgstr "過多封裝,無法壓縮"
+
+#: midx-write.c pack-revindex.c
+msgid "could not determine preferred pack"
+msgstr "無法確定偏好封裝"
 
 #: midx-write.c
 #, c-format
@@ -22997,6 +23681,15 @@ msgstr "無法將「%s」link 至「%s」"
 msgid "failed to clear multi-pack-index at %s"
 msgstr "清理位於 %s 的多包索引失敗"
 
+#: midx-write.c
+#, c-format
+msgid "unknown MIDX version: %d"
+msgstr "未知的 MIDX 版本:%d"
+
+#: midx-write.c
+msgid "cannot perform MIDX compaction with v1 format"
+msgstr "無法在 v1 格式下執行 MIDX 壓縮"
+
 #: midx-write.c
 msgid "ignoring existing multi-pack-index; checksum mismatch"
 msgstr "忽略現有的多包索引:總和檢查碼不符"
@@ -23314,12 +24007,14 @@ msgstr "無法解碼樹狀物件項目"
 msgid "failed to map tree entry for %s"
 msgstr "無法為 %s 映射樹狀物件項目"
 
+#: object-file-convert.c object-file-convert.c
+#: object-file-convert.c object-file-convert.c
 #: object-file-convert.c
 #, c-format
 msgid "bad %s in commit"
 msgstr "提交中有無效的 %s"
 
-#: object-file-convert.c
+#: object-file-convert.c object-file-convert.c
 #, c-format
 msgid "unable to map %s %s in commit object"
 msgstr "無法在提交物件中映射 %s %s"
@@ -23329,17 +24024,17 @@ msgstr "無法在提交物件中映射 %s %s"
 msgid "Failed to convert object from %s to %s"
 msgstr "無法將物件從 %s 轉換為 %s"
 
-#: object-file.c
+#: object-file.c object-file.c
 #, c-format
 msgid "object file %s is empty"
 msgstr "物件檔案 %s 為空"
 
-#: object-file.c
+#: object-file.c object-file.c
 #, c-format
 msgid "corrupt loose object '%s'"
 msgstr "損壞的鬆散物件 '%s'"
 
-#: object-file.c
+#: object-file.c object-file.c
 #, c-format
 msgid "garbage at end of loose object '%s'"
 msgstr "鬆散物件 '%s' 後面有垃圾資料"
@@ -23373,7 +24068,7 @@ msgstr "%s 的標頭過長,超出 %d 位元組"
 msgid "loose object %s (stored in %s) is corrupt"
 msgstr "鬆散物件 %s(儲存在 %s)已損壞"
 
-#: object-file.c
+#: object-file.c object-file.c object-file.c
 #, c-format
 msgid "unable to open %s"
 msgstr "不能開啟 %s"
@@ -23478,7 +24173,7 @@ msgstr "索引 %s 時讀取錯誤"
 msgid "short read while indexing %s"
 msgstr "索引 %s 時讀入不完整"
 
-#: object-file.c
+#: object-file.c object-file.c
 #, c-format
 msgid "%s: failed to insert into database"
 msgstr "%s:插入資料庫失敗"
@@ -23700,11 +24395,6 @@ msgstr "'%.*s' 物件名稱無效。"
 msgid "invalid object type \"%s\""
 msgstr "無效的物件類型 \"%s\""
 
-#: object.c
-#, c-format
-msgid "object %s is a %s, not a %s"
-msgstr "物件 %s 是一個 %s,不是一個 %s"
-
 #: object.c
 #, c-format
 msgid "object %s has unknown type id %d"
@@ -23717,6 +24407,11 @@ msgstr "不能解析物件:%s"
 
 #: object.c
 #, c-format
+msgid "unable to open object stream for %s"
+msgstr "無法開啟 %s 的物件串流"
+
+#: object.c object.c
+#, c-format
 msgid "hash mismatch %s"
 msgstr "雜湊值與 %s 不符合"
 
@@ -23726,26 +24421,14 @@ msgid "object directory %s does not exist; check .git/objects/info/alternates"
 msgstr "物件目錄 %s 不存在,檢查 .git/objects/info/alternates"
 
 #: odb.c
-#, c-format
-msgid "unable to normalize alternate object path: %s"
-msgstr "無法規範化備用物件路徑:%s"
-
-#: odb.c
-#, c-format
-msgid "%s: ignoring alternate object stores, nesting too deep"
-msgstr "%s:忽略備用物件庫,嵌套太深"
-
-#: odb.c
-msgid "unable to fdopen alternates lockfile"
-msgstr "無法 fdopen 取代鎖檔案"
-
-#: odb.c
-msgid "unable to read alternates file"
-msgstr "無法讀取替代檔案"
+#, c-format
+msgid "unable to normalize alternate object path: %s"
+msgstr "無法規範化備用物件路徑:%s"
 
 #: odb.c
-msgid "unable to move new alternates file into place"
-msgstr "無法將新的替代檔案移動到位"
+#, c-format
+msgid "%s: ignoring alternate object stores, nesting too deep"
+msgstr "%s:忽略備用物件庫,嵌套太深"
 
 #: odb.c
 #, c-format
@@ -23792,7 +24475,7 @@ msgstr "找不到 %2$s 的替代 %1$s"
 msgid "packed object %s (stored in %s) is corrupt"
 msgstr "打包物件 %s(儲存在 %s)已損壞"
 
-#: odb.c
+#: odb.c odb.c
 #, c-format
 msgid "missing mapping of %s to %s"
 msgstr "缺少 %s 到 %s 的映射"
@@ -23802,6 +24485,18 @@ msgstr "缺少 %s 到 %s 的映射"
 msgid "%s is not a valid '%s' object"
 msgstr "%s 不是一個有效的 '%s' 物件"
 
+#: odb/source-files.c
+msgid "unable to fdopen alternates lockfile"
+msgstr "無法 fdopen 取代鎖檔案"
+
+#: odb/source-files.c
+msgid "unable to read alternates file"
+msgstr "無法讀取替代檔案"
+
+#: odb/source-files.c
+msgid "unable to move new alternates file into place"
+msgstr "無法將新的替代檔案移動到位"
+
 #: pack-bitmap-write.c
 #, c-format
 msgid "duplicate entry when writing bitmap index: %s"
@@ -23877,7 +24572,7 @@ msgstr "位圖包索引損壞"
 msgid "invalid XOR offset in bitmap pack index"
 msgstr "位圖包索引的 XOR 偏移無效"
 
-#: pack-bitmap.c
+#: pack-bitmap.c pack-bitmap.c
 msgid "cannot fstat bitmap file"
 msgstr "無法 fstat 位圖檔案"
 
@@ -23907,7 +24602,7 @@ msgstr "位圖查詢表損壞:XOR 鏈超出項目數"
 msgid "corrupt bitmap lookup table: commit index %u out of range"
 msgstr "位圖查詢表損壞:提交索引 %u 超出範圍"
 
-#: pack-bitmap.c
+#: pack-bitmap.c pack-bitmap.c
 #, c-format
 msgid "corrupt ewah bitmap: truncated header for bitmap of commit \"%s\""
 msgstr "ewah 位圖損壞:提交「%s」之位圖的標頭遭截斷"
@@ -23936,11 +24631,12 @@ msgstr "「%s」物件的類型不唯一"
 msgid "object '%s': real type '%s', expected: '%s'"
 msgstr "「%s」物件:實際類型是「%s」,但預期是「%s」"
 
-#: pack-bitmap.c
+#: pack-bitmap.c pack-bitmap.c
 #, c-format
 msgid "object not in bitmap: '%s'"
 msgstr "物件不在位圖中:「%s」"
 
+#: pack-bitmap.c pack-bitmap.c pack-bitmap.c pack-bitmap.c
 #: pack-bitmap.c
 msgid "failed to load bitmap indexes"
 msgstr "無法載入位圖索引"
@@ -23958,7 +24654,7 @@ msgstr "提交「%s」無索引過的位圖"
 msgid "mismatch in bitmap results"
 msgstr "位圖結果中有不符項目"
 
-#: pack-bitmap.c
+#: pack-bitmap.c pack-bitmap.c
 #, c-format
 msgid "pseudo-merge index out of range (%<PRIu32> >= %<PRIuMAX>)"
 msgstr "偽合併索引超出範圍(%<PRIu32> >= %<PRIuMAX>)"
@@ -24061,10 +24757,6 @@ msgstr "%<PRIu64> 位置的修訂版索引 (rev-index) 無效:%<PRIu32> != %<P
 msgid "multi-pack-index reverse-index chunk is the wrong size"
 msgstr "多包索引的反向索引區塊大小有誤"
 
-#: pack-revindex.c
-msgid "could not determine preferred pack"
-msgstr "無法確定偏好封裝"
-
 #: pack-write.c
 msgid "cannot both write and verify reverse index"
 msgstr "無法同時寫入和驗證倒排索引"
@@ -24074,7 +24766,7 @@ msgstr "無法同時寫入和驗證倒排索引"
 msgid "could not stat: %s"
 msgstr "無法 stat:%s"
 
-#: pack-write.c
+#: pack-write.c pack-write.c
 #, c-format
 msgid "failed to make %s readable"
 msgstr "無法讓 %s 能夠寫入"
@@ -24093,6 +24785,11 @@ msgstr "位移量在 packfile 結束之前(損壞的 .idx?)"
 msgid "packfile %s cannot be mapped%s"
 msgstr "packfile %s 無法映射%s"
 
+#: packfile.c
+#, c-format
+msgid "could not load .mtimes for cruft pack '%s'"
+msgstr "無法載入廢棄封裝「%s」的 .mtimes"
+
 #: packfile.c
 #, c-format
 msgid "offset before start of pack index for %s (corrupt index?)"
@@ -24113,7 +24810,7 @@ msgstr "格式錯誤的到期時間:'%s'"
 msgid "option `%s' expects \"always\", \"auto\", or \"never\""
 msgstr "選項 `%s' 期望 \"always\"、\"auto\" 或 \"never\""
 
-#: parse-options-cb.c
+#: parse-options-cb.c parse-options-cb.c
 #, c-format
 msgid "malformed object name '%s'"
 msgstr "格式錯誤的物件名 '%s'"
@@ -24128,7 +24825,7 @@ msgstr "選項「%s」期望「%s」或「%s」"
 msgid "%s requires a value"
 msgstr "%s 需要一個值"
 
-#: parse-options.c
+#: parse-options.c parse-options.c
 #, c-format
 msgid "%s takes no value"
 msgstr "%s 不取值"
@@ -24143,7 +24840,7 @@ msgstr "%s 不可用"
 msgid "value for %s exceeds %<PRIdMAX>"
 msgstr "%s 的值超過 %<PRIdMAX>"
 
-#: parse-options.c
+#: parse-options.c parse-options.c parse-options.c
 #, c-format
 msgid "value %s for %s not in range [%<PRIdMAX>,%<PRIdMAX>]"
 msgstr "%2$s 的數值 %1$s 不在 [%3$<PRIdMAX>,%4$<PRIdMAX>] 範圍內"
@@ -24163,12 +24860,12 @@ msgstr "%s 期望一個非負整數和一個可選的 k/m/g 後綴"
 msgid "ambiguous option: %s (could be --%s%s or --%s%s)"
 msgstr "有歧義的選項:%s(可以是 --%s%s 或 --%s%s)"
 
-#: parse-options.c
+#: parse-options.c parse-options.c
 #, c-format
 msgid "did you mean `--%s` (with two dashes)?"
 msgstr "你的意思是 `--%s`(有兩個短線)嗎?"
 
-#: parse-options.c
+#: parse-options.c parse-options.c
 #, c-format
 msgid "alias of --%s"
 msgstr "--%s 的別名"
@@ -24301,7 +24998,7 @@ msgstr "--no-%s 的相反行為"
 msgid "expiry-date"
 msgstr "到期時間"
 
-#: parse-options.h
+#: parse-options.h parse-options.h
 msgid "no-op (backward compatibility)"
 msgstr "空動作(向後相容)"
 
@@ -24464,11 +25161,11 @@ msgstr "flush 包寫錯誤"
 msgid "protocol error: impossibly long line"
 msgstr "協定錯誤:不可能的長行"
 
-#: pkt-line.c
+#: pkt-line.c pkt-line.c
 msgid "packet write with format failed"
 msgstr "格式化包寫入錯誤"
 
-#: pkt-line.c
+#: pkt-line.c pkt-line.c
 msgid "packet write failed - data exceeds max packet size"
 msgstr "寫封包失敗:資料超過了包的最大長度"
 
@@ -24477,20 +25174,20 @@ msgstr "寫封包失敗:資料超過了包的最大長度"
 msgid "packet write failed: %s"
 msgstr "封包寫入失敗:%s"
 
-#: pkt-line.c
+#: pkt-line.c pkt-line.c
 msgid "read error"
 msgstr "讀取錯誤"
 
-#: pkt-line.c
+#: pkt-line.c pkt-line.c
 msgid "the remote end hung up unexpectedly"
 msgstr "遠端意外掛斷了"
 
-#: pkt-line.c
+#: pkt-line.c pkt-line.c
 #, c-format
 msgid "protocol error: bad line length character: %.4s"
 msgstr "協定錯誤:錯誤的行長度字串:%.4s"
 
-#: pkt-line.c
+#: pkt-line.c pkt-line.c pkt-line.c pkt-line.c
 #, c-format
 msgid "protocol error: bad line length %d"
 msgstr "協定錯誤:錯誤的行長度 %d"
@@ -24513,6 +25210,11 @@ msgstr "無法建立執行緒 lstat:%s"
 msgid "unable to parse --pretty format"
 msgstr "不能解析 --pretty 格式"
 
+#: pretty.c pretty.c
+#, c-format
+msgid "%s is not supported by this command"
+msgstr "此命令不支援 %s"
+
 #: promisor-remote.c
 msgid "lazy fetching disabled; some objects may not be available"
 msgstr "延後抓取已被停用;某些物件可能無法使用"
@@ -24521,7 +25223,7 @@ msgstr "延後抓取已被停用;某些物件可能無法使用"
 msgid "promisor-remote: unable to fork off fetch subprocess"
 msgstr "promisor-remote: 無法 fork fetch 子處理程序"
 
-#: promisor-remote.c
+#: promisor-remote.c promisor-remote.c
 msgid "promisor-remote: could not write to fetch subprocess"
 msgstr "promisor-remote: 無法寫入 fetch 子處理程序"
 
@@ -24564,6 +25266,25 @@ msgstr "遠端資訊的元素「%s」無效"
 msgid "server advertised a promisor remote without a name or URL: %s"
 msgstr "伺服器公告了一個沒有名稱或 URL 的承諾者遠端:%s"
 
+#: promisor-remote.c
+#, c-format
+msgid ""
+"Storing new %s from server for remote '%s'.\n"
+"    '%s' -> '%s'\n"
+msgstr ""
+"正在為遠端「%2$s」從伺服器儲存新的 %1$s。\n"
+"    '%3$s' -> '%4$s'\n"
+
+#: promisor-remote.c
+#, c-format
+msgid "invalid filter '%s' for remote '%s' will not be stored: %s"
+msgstr "遠端「%2$s」的無效篩選器「%1$s」將不儲存:%3$s"
+
+#: promisor-remote.c
+#, c-format
+msgid "invalid token '%s' for remote '%s' will not be stored"
+msgstr "遠端「%2$s」的無效權杖「%1$s」將不儲存"
+
 #: promisor-remote.c
 #, c-format
 msgid "unknown '%s' value for '%s' config option"
@@ -24574,6 +25295,11 @@ msgstr "「%2$s」組態選項的值「%1$s」未知"
 msgid "accepted promisor remote '%s' not found"
 msgstr "找不到接受的承諾者遠端「%s」"
 
+#: promisor-remote.c
+#, c-format
+msgid "promisor remote '%s' advertised invalid filter '%s': %s"
+msgstr "承諾者遠端「%s」宣告了無效的篩選器「%s」:%s"
+
 #: protocol-caps.c
 msgid "object-info: expected flush after arguments"
 msgstr "object-info:引數後預期要有 flush"
@@ -24587,7 +25313,7 @@ msgstr "正在刪除重複物件"
 msgid "failed to load pseudo-merge regex for %s: '%s'"
 msgstr "未能載入 %s 的偽合併常規表示式:%s"
 
-#: pseudo-merge.c
+#: pseudo-merge.c pseudo-merge.c
 #, c-format
 msgid "%s must be non-negative, using default"
 msgstr "%s 須為非負數,將採用預設值"
@@ -24687,7 +25413,7 @@ msgstr ""
 "range-diff:無法計算範圍差異,因為它超過了成本矩陣的最大記憶體限制:%s(需要 "
 "%<PRIuMAX> 位元組),限制為 %s(%<PRIuMAX> 位元組)"
 
-#: range-diff.c
+#: range-diff.c range-diff.c
 #, c-format
 msgid "could not parse log for '%s'"
 msgstr "無法解析「%s」的日誌"
@@ -24728,7 +25454,7 @@ msgstr "無法在索引中新增 '%s'"
 #: read-cache.c
 #, c-format
 msgid "'%s' appears as both a file and as a directory"
-msgstr "'%s' 看起來既是檔案又是目錄"
+msgstr "「%s」看起來既是檔案又是目錄"
 
 #: read-cache.c
 msgid "Refresh index"
@@ -24879,6 +25605,15 @@ msgstr "不能修復 '%s' 的權限位"
 msgid "%s: cannot drop to stage #0"
 msgstr "%s:不能落到暫存區 #0"
 
+#: read-cache.c
+#, c-format
+msgid ""
+"Skipping submodule due to ignore=all: %s\n"
+"Use --force if you really want to add the submodule."
+msgstr ""
+"因 ignore=all 而跳過子模組:%s\n"
+"如果您確實想要加入該子模組,請使用 --force。"
+
 #: read-cache.c
 #, c-format
 msgid "unexpected diff status %c"
@@ -24934,7 +25669,7 @@ msgstr ""
 "\n"
 "命令:\n"
 "p, pick <提交> = 使用提交\n"
-"r, reword <提交> = 使用提交,但編輯提交說明\n"
+"r, reword <提交> = 使用提交,但改寫提交說明\n"
 "e, edit <提交> = 使用提交,但不直接修補 (amend) \n"
 "s, squash <提交> = 使用提交,但融合至上個提交\n"
 "f, fixup [-C | -c] <提交> = 跟「squash」相似,但除非傳入 -C,\n"
@@ -25093,7 +25828,7 @@ msgstr "預期是 %%(trailers:key=<value>)"
 #: ref-filter.c
 #, c-format
 msgid "unknown %%(trailers) argument: %s"
-msgstr "æ\9cªç\9f¥ç\9a\84 %%(trailers) å\8f\83數:%s"
+msgstr "æ\9cªç\9f¥ç\9a\84 %%(trailers) å¼\95數:%s"
 
 #: ref-filter.c
 #, c-format
@@ -25115,7 +25850,7 @@ msgstr "期望一個正數 %s=%s"
 msgid "cannot fully parse %s=%s"
 msgstr "無法完全解析 %s=%s"
 
-#: ref-filter.c
+#: ref-filter.c ref-filter.c
 #, c-format
 msgid "value expected %s="
 msgstr "數值預期 %s="
@@ -25176,7 +25911,7 @@ msgid ""
 "not a git repository, but the field '%.*s' requires access to object data"
 msgstr "不是一個 git 版本庫,但是欄位 '%.*s' 需要存取物件資料"
 
-#: ref-filter.c
+#: ref-filter.c ref-filter.c ref-filter.c ref-filter.c
 #, c-format
 msgid "format: %%(%s) atom used without a %%(%s) atom"
 msgstr "format:使用 %%(%s) 元素卻缺少 %%(%s) 元素"
@@ -25254,7 +25989,7 @@ msgstr "(開頭指標分離自 %s)"
 msgid "(no branch)"
 msgstr "(無分支)"
 
-#: ref-filter.c
+#: ref-filter.c ref-filter.c
 #, c-format
 msgid "missing object %s for %s"
 msgstr "缺少 %2$s 的物件 %1$s"
@@ -25311,6 +26046,11 @@ msgstr "不是引用日誌:%s"
 msgid "no reflog for '%s'"
 msgstr "沒有 '%s' 的引用日誌"
 
+#: refs.c
+#, c-format
+msgid "in '%s' phase, update aborted by the reference-transaction hook"
+msgstr "在「%s」階段中,reference-transaction 掛鉤中止了更新"
+
 #: refs.c
 msgid "Checking references consistency"
 msgstr "正在檢查引用一致性"
@@ -25441,21 +26181,17 @@ msgstr "不允許對引用 '%s' 多次更新"
 msgid "ref updates forbidden inside quarantine environment"
 msgstr "在隔離環境中禁止更新引用"
 
-#: refs.c
-msgid "ref updates aborted by hook"
-msgstr "引用更新被掛鉤拒絕"
-
-#: refs.c
+#: refs.c refs.c
 #, c-format
 msgid "'%s' exists; cannot create '%s'"
 msgstr "'%s' 已存在,無法建立 '%s'"
 
-#: refs.c
+#: refs.c refs.c
 #, c-format
 msgid "cannot process '%s' and '%s' at the same time"
 msgstr "無法同時處理 '%s' 和 '%s'"
 
-#: refs.c
+#: refs.c refs.c
 #, c-format
 msgid "could not delete reference %s: %s"
 msgstr "無法刪除引用 %s:%s"
@@ -25674,6 +26410,16 @@ msgstr "'%s' 身份驗證失敗"
 msgid "unable to access '%s' with http.pinnedPubkey configuration: %s"
 msgstr "無法依 http.pinnedPubkey 之設定存取「%s」:%s"
 
+#: remote-curl.c
+#, c-format
+msgid "rate limited by '%s', please try again in %ld seconds"
+msgstr "受到「%s」的速率限制,請在 %ld 秒後再試"
+
+#: remote-curl.c
+#, c-format
+msgid "rate limited by '%s', please try again later"
+msgstr "受到「%s」的速率限制,請稍後再試"
+
 #: remote-curl.c
 #, c-format
 msgid "unable to access '%s': %s"
@@ -25742,12 +26488,12 @@ msgstr "取得失敗。"
 msgid "cannot fetch by sha1 over smart http"
 msgstr "無法透過智慧 HTTP 取得 sha1"
 
-#: remote-curl.c
+#: remote-curl.c remote-curl.c
 #, c-format
 msgid "protocol error: expected sha/ref, got '%s'"
 msgstr "協定錯誤:期望 sha/ref,卻得到 '%s'"
 
-#: remote-curl.c
+#: remote-curl.c remote-curl.c
 #, c-format
 msgid "http transport does not support %s"
 msgstr "http 傳輸協定不支援 %s"
@@ -25827,7 +26573,7 @@ msgstr "已經忽略不認識的「%s」數值"
 msgid "unrecognized value transfer.credentialsInUrl: '%s'"
 msgstr "數值 transfer.credentialsInUrl 不認識:「%s」"
 
-#: remote.c
+#: remote.c remote.c
 #, c-format
 msgid "URL '%s' uses plaintext credentials"
 msgstr "URL「%s」使用明文憑證"
@@ -25953,7 +26699,7 @@ msgstr "目的地引用規格 %s 符合超過一個"
 msgid "dst ref %s receives from more than one src"
 msgstr "目的地引用 %s 接收超過一個來源"
 
-#: remote.c
+#: remote.c remote.c
 msgid "HEAD does not point to a branch"
 msgstr "HEAD 沒有指向一個分支"
 
@@ -26007,12 +26753,10 @@ msgstr "* 在本機忽略可笑的引用 '%s'"
 
 #: remote.c
 #, c-format
-msgid "Your branch is based on '%s', but the upstream is gone.\n"
-msgstr "您的分支基於 '%s',但此上游分支已經不存在。\n"
-
-#: remote.c
-msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
-msgstr "  (使用 \"git branch --unset-upstream\" 來修復)\n"
+msgid ""
+"ignoring value '%s' for status.compareBranches, only @{upstream} and @{push} "
+"are supported"
+msgstr "忽略 status.compareBranches 的值「%s」,僅支援 @{upstream} 和 @{push}"
 
 #: remote.c
 #, c-format
@@ -26069,6 +26813,15 @@ msgid ""
 "  (use \"git pull\" if you want to integrate the remote branch with yours)\n"
 msgstr "  (使用「git pull」來將遠端分支整合進您的分支)\n"
 
+#: remote.c
+#, c-format
+msgid "Your branch is based on '%s', but the upstream is gone.\n"
+msgstr "您的分支基於 '%s',但此上游分支已經不存在。\n"
+
+#: remote.c
+msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
+msgstr "  (使用 \"git branch --unset-upstream\" 來修復)\n"
+
 #: remote.c
 #, c-format
 msgid "cannot parse expected object name '%s'"
@@ -26089,7 +26842,7 @@ msgstr "無法開啟 %s 的索引"
 msgid "pack %s too large to consider in geometric progression"
 msgstr "%s 包太大,以致不能在等比數列中考慮"
 
-#: repack-geometry.c
+#: repack-geometry.c repack-geometry.c repack-geometry.c
 #, c-format
 msgid "pack %s too large to roll up"
 msgstr "%s 包太大,以致不能縮合"
@@ -26163,11 +26916,49 @@ msgstr "重複的取代引用:%s"
 msgid "replace depth too high for object %s"
 msgstr "物件 %s 的取代層級太深"
 
-#: rerere.c
+#: replay.c
+#, c-format
+msgid "'%s' is not a valid commit-ish for %s"
+msgstr "「%s」不是 %s 有效的提交指示元"
+
+#: replay.c
+#, c-format
+msgid "argument to %s must be a reference"
+msgstr "傳入 %s 的引數必須是引用"
+
+#: replay.c
+#, c-format
+msgid ""
+"'%s' cannot be used with multiple revision ranges because the ordering would "
+"be ill-defined"
+msgstr "「%s」不能與多個修訂版範圍一起使用,因為順序無法明確定義"
+
+#: replay.c
+msgid "need some commits to replay"
+msgstr "需要一些提交才能重放"
+
+#: replay.c
+msgid "all positive revisions given must be references"
+msgstr "提供的所有正向修訂集必須為引用"
+
+#: replay.c
+msgid "'--ref' cannot be used with multiple revision ranges"
+msgstr "「--ref」不能與多個修訂版本範圍一起使用"
+
+#: replay.c sequencer.c
+#, c-format
+msgid "'%s' is not a valid refname"
+msgstr "「%s」不是有效的引用名稱"
+
+#: repository.c
+msgid "compatibility hash algorithm support requires Rust"
+msgstr "相容性雜湊演算法支援需要 Rust"
+
+#: rerere.c rerere.c rerere.c
 msgid "corrupt MERGE_RR"
 msgstr "損壞的 MERGE_RR"
 
-#: rerere.c
+#: rerere.c rerere.c
 msgid "unable to write rerere record"
 msgstr "無法寫入 rerere 記錄"
 
@@ -26176,7 +26967,7 @@ msgstr "無法寫入 rerere 記錄"
 msgid "there were errors while writing '%s' (%s)"
 msgstr "寫入 '%s' (%s) 時發生錯誤"
 
-#: rerere.c
+#: rerere.c rerere.c
 #, c-format
 msgid "could not parse conflict hunks in '%s'"
 msgstr "無法解析「%s」中的衝突區塊"
@@ -26221,7 +27012,7 @@ msgstr "為 '%s' 記錄 preimage"
 msgid "failed to update conflicted state in '%s'"
 msgstr "更新 '%s' 中的衝突狀態失敗"
 
-#: rerere.c
+#: rerere.c rerere.c
 #, c-format
 msgid "no remembered resolution for '%s'"
 msgstr "沒有為 '%s' 記憶的解決方案"
@@ -26248,7 +27039,7 @@ msgstr "如果可能,重用衝突解決更新索引"
 msgid "could not determine HEAD revision"
 msgstr "無法確定 HEAD 修訂版"
 
-#: reset.c sequencer.c
+#: reset.c reset.c sequencer.c
 #, c-format
 msgid "failed to find tree of %s"
 msgstr "無法找到 %s 指向的樹"
@@ -26296,7 +27087,7 @@ msgstr "在 --stdin 模式下,「%s」選項無效"
 
 #: revision.c
 msgid "your current branch appears to be broken"
-msgstr "您的目前分支好像被損壞"
+msgstr "您的目前分支似乎損壞了"
 
 #: revision.c
 #, c-format
@@ -26321,7 +27112,7 @@ msgstr "不能建立 async 執行緒:%s"
 msgid "'%s' does not exist"
 msgstr "'%s' 不存在"
 
-#: scalar.c
+#: scalar.c scalar.c scalar.c scalar.c scalar.c
 #, c-format
 msgid "could not switch to '%s'"
 msgstr "無法切換至「%s」"
@@ -26330,11 +27121,11 @@ msgstr "無法切換至「%s」"
 msgid "need a working directory"
 msgstr "需要工作目錄"
 
-#: scalar.c
+#: scalar.c scalar.c
 msgid "Scalar enlistments require a worktree"
 msgstr "純量編列名單需要工作目錄"
 
-#: scalar.c
+#: scalar.c scalar.c
 #, c-format
 msgid "could not configure %s=%s"
 msgstr "無法設定 %s=%s"
@@ -26412,7 +27203,7 @@ msgstr "在「src」目錄建立版本庫"
 msgid "specify if tags should be fetched during clone"
 msgstr "指定是否要在拓製階段抓取標籤"
 
-#: scalar.c
+#: scalar.c scalar.c
 msgid "specify if background maintenance should be enabled"
 msgstr "指定是否要啟用背景維護模式"
 
@@ -26725,7 +27516,7 @@ msgstr ""
 "若要取消並返回 \"git revert\" 前的狀態,\n"
 "請執行 \"git revert --abort\"。"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "could not lock '%s'"
 msgstr "無法鎖定「%s」"
@@ -26735,7 +27526,7 @@ msgstr "無法鎖定「%s」"
 msgid "could not write eol to '%s'"
 msgstr "無法將換行符號寫入「%s」"
 
-#: sequencer.c
+#: sequencer.c sequencer.c sequencer.c sequencer.c
 #, c-format
 msgid "failed to finalize '%s'"
 msgstr "無法完成 '%s'"
@@ -26905,7 +27696,7 @@ msgstr "分離 HEAD 指標"
 msgid " (root-commit)"
 msgstr " (根提交)"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "could not parse HEAD"
 msgstr "無法解析 HEAD"
 
@@ -26914,16 +27705,16 @@ msgstr "無法解析 HEAD"
 msgid "HEAD %s is not a commit!"
 msgstr "HEAD %s 不是一個提交!"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "unable to parse commit author"
 msgstr "不能解析提交作者"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "unable to read commit message from '%s'"
 msgstr "不能從 '%s' 讀取提交說明"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "invalid author identity '%s'"
 msgstr "無效的作者身分 '%s'"
@@ -26932,7 +27723,7 @@ msgstr "無效的作者身分 '%s'"
 msgid "corrupt author: missing date information"
 msgstr "作者資訊損壞:缺少日期資訊"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "could not update %s"
 msgstr "無法更新 %s"
@@ -26970,7 +27761,7 @@ msgstr "略過第 %d 個提交說明:"
 msgid "This is a combination of %d commits."
 msgstr "這是整合 %d 個提交的集合提交。"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "cannot write '%s'"
 msgstr "不能寫 '%s'"
@@ -26979,7 +27770,7 @@ msgstr "不能寫 '%s'"
 msgid "need a HEAD to fixup"
 msgstr "需要一個 HEAD 來修復"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "could not read HEAD"
 msgstr "無法讀取 HEAD"
 
@@ -27005,7 +27796,7 @@ msgstr "不能修復根提交"
 msgid "commit %s is a merge but no -m option was given."
 msgstr "提交 %s 是一個合併提交但未提供 -m 選項。"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "提交 %s 沒有第 %d 個父提交"
@@ -27052,17 +27843,12 @@ msgstr "git %s:無法重新整理索引"
 msgid "'%s' is not a valid label"
 msgstr "「%s」不是有效的標籤"
 
-#: sequencer.c
-#, c-format
-msgid "'%s' is not a valid refname"
-msgstr "「%s」不是有效的引用名稱"
-
 #: sequencer.c
 #, c-format
 msgid "update-ref requires a fully qualified refname e.g. refs/heads/%s"
 msgstr "update-ref 需要完全限定的引用名稱,比如:refs/heads/%s"
 
-#: sequencer.c
+#: sequencer.c sequencer.c sequencer.c
 #, c-format
 msgid "'%s' does not accept merge commits"
 msgstr "「%s」不接受合併提交"
@@ -27087,9 +27873,9 @@ msgid ""
 "replay the merge and reword the commit message, use\n"
 "'merge -c' on the commit"
 msgstr ""
-"ã\80\8crewordã\80\8d並ç\84¡æ³\95使ç\94¨å\90\88ä½µæ\8f\90交ä½\9cç\82ºå\8f\83æ\95¸ã\80\82\n"
-"å¦\82æ\9e\9cä½ å¸\8cæ\9c\9bå\90\88併並æ\94¹å¯«æ\8f\90交è¨\8aæ\81¯ï¼\8c\n"
-"請對這個提交使用「merge -c」"
+"ã\80\8crewordã\80\8dä¸\8dæ\8e¥å\8f\97å\90\88ä½µæ\8f\90交ã\80\82å¦\82æ\9e\9cä½ å¸\8cæ\9c\9bé\87\8dæ\94¾\n"
+"å\90\88ä½µå\8b\95ä½\9cï¼\8c並æ\94¹å¯«æ\8f\90交è¨\8aæ\81¯ï¼\8cè«\8bå°\8dé\80\99å\80\8bæ\8f\90交使ç\94¨\n"
+"「merge -c」"
 
 #. TRANSLATORS: 'edit', 'merge -C' and 'break' should
 #. not be translated.
@@ -27164,6 +27950,18 @@ msgstr "不能在還原提交中執行揀選。"
 msgid "cannot revert during a cherry-pick."
 msgstr "不能在揀選中執行還原提交。"
 
+#: sequencer.c
+msgid "trailers file contains empty line"
+msgstr "結尾資訊檔案包含空白列"
+
+#: sequencer.c
+msgid "trailers file is empty"
+msgstr "結尾資訊檔案為空"
+
+#: sequencer.c
+msgid "cannot read trailers files"
+msgstr "無法讀取結尾資訊檔案"
+
 #: sequencer.c
 msgid "unusable squash-onto"
 msgstr "不可用的 squash-onto"
@@ -27173,7 +27971,7 @@ msgstr "不可用的 squash-onto"
 msgid "malformed options sheet: '%s'"
 msgstr "格式錯誤的選項清單:'%s'"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "empty commit set passed"
 msgstr "提供了空的提交集"
 
@@ -27200,15 +27998,15 @@ msgstr "嘗試 \"git cherry-pick (--continue | %s--abort | --quit)\""
 msgid "could not create sequencer directory '%s'"
 msgstr "無法建立序列目錄「%s」"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "no cherry-pick or revert in progress"
 msgstr "揀選或還原動作並未進行"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "cannot resolve HEAD"
 msgstr "不能解析 HEAD"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "cannot abort from a branch yet to be born"
 msgstr "不能從尚未建立的分支終止"
 
@@ -27255,7 +28053,7 @@ msgstr ""
 "您已經提交了嗎?\n"
 "試試 \"git %s --continue\""
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "cannot read HEAD"
 msgstr "不能讀取 HEAD"
 
@@ -27553,7 +28351,7 @@ msgstr ""
 "\n"
 "您的工作區中有未提交的變更。請先提交然後再次執行 'git rebase --continue'。"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "could not write file: '%s'"
 msgstr "無法寫入檔案:「%s」"
@@ -27580,12 +28378,12 @@ msgstr "%s:錯誤的版本"
 msgid "can't revert as initial commit"
 msgstr "不能作為初始提交還原提交"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "skipped previously applied commit %s"
 msgstr "已略過先前套用的 %s 提交"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "use --reapply-cherry-picks to include skipped commits"
 msgstr "使用 --reapply-cherry-picks 以包含略過提交"
 
@@ -27597,7 +28395,7 @@ msgstr "make_script:有未能處理的選項"
 msgid "make_script: error preparing revisions"
 msgstr "make_script:準備版本時錯誤"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 msgid "nothing to do"
 msgstr "無事可做"
 
@@ -27609,7 +28407,7 @@ msgstr "無法略過不必要的揀選"
 msgid "the script was already rearranged."
 msgstr "腳本已經重新編排。"
 
-#: sequencer.c
+#: sequencer.c sequencer.c
 #, c-format
 msgid "update-refs file at '%s' is invalid"
 msgstr "位於「%s」的 update-refs 檔案無效"
@@ -27719,7 +28517,7 @@ msgstr "'$%s' 太大"
 msgid "not a git repository: '%s'"
 msgstr "不是一個 git 版本庫:'%s'"
 
-#: setup.c
+#: setup.c setup.c setup.c
 #, c-format
 msgid "cannot chdir to '%s'"
 msgstr "不能切換目錄到 '%s'"
@@ -27734,7 +28532,7 @@ msgstr "取得 '%*s%s%s' 狀態(stat)失敗"
 msgid "safe.directory '%s' not absolute"
 msgstr "safe.directory「%s」不是絕對路徑"
 
-#: setup.c
+#: setup.c setup.c
 #, c-format
 msgid ""
 "detected dubious ownership in repository at '%s'\n"
@@ -27747,11 +28545,21 @@ msgstr ""
 "\n"
 "\tgit config --global --add safe.directory %s"
 
+#: setup.c
+#, c-format
+msgid "error reading '%s'"
+msgstr "讀取「%s」時發生錯誤"
+
+#: setup.c
+#, c-format
+msgid "not a regular file: '%s'"
+msgstr "不是一般檔案:「%s」"
+
 #: setup.c
 msgid "Unable to read current working directory"
 msgstr "不能讀取目前工作目錄"
 
-#: setup.c
+#: setup.c setup.c
 #, c-format
 msgid "cannot change to '%s'"
 msgstr "不能切換到 '%s'"
@@ -27775,6 +28583,11 @@ msgstr ""
 msgid "cannot use bare repository '%s' (safe.bareRepository is '%s')"
 msgstr "無法使用「%s」純版本庫(safe.bareRepository 是「%s」)"
 
+#: setup.c setup.c
+#, c-format
+msgid "unknown ref storage format: '%s'"
+msgstr "未知的引用儲存格式:「%s」"
+
 #: setup.c
 #, c-format
 msgid ""
@@ -27861,7 +28674,7 @@ msgid ""
 "attempt to reinitialize repository with different reference storage format"
 msgstr "嘗試以不同的引用儲存格式重新初始化版本庫"
 
-#: setup.c
+#: setup.c setup.c
 #, c-format
 msgid "%s already exists"
 msgstr "%s 已經存在"
@@ -27913,6 +28726,7 @@ msgstr "無效的 %s 格式:「%s」元素的結尾不是「)」"
 msgid "bad %s format: %%%.*s"
 msgstr "無效的 %s 格式:%%%.*s"
 
+#: strbuf.c strbuf.c strbuf.c strbuf.c strbuf.c
 #: strbuf.c
 #, c-format
 msgid "%u.%2.2u"
@@ -28008,11 +28822,11 @@ msgstr "忽略可能被解析為命令列選項的 '%s':%s"
 msgid "Could not update .gitmodules entry %s"
 msgstr "無法更新 .gitmodules 條目 %s"
 
-#: submodule.c
+#: submodule.c submodule.c
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr "無法修改未合併的 .gitmodules,先解決合併衝突"
 
-#: submodule.c
+#: submodule.c submodule.c
 #, c-format
 msgid "Could not find section in .gitmodules where path=%s"
 msgstr "無法在 .gitmodules 中找到 path=%s 的小節"
@@ -28134,7 +28948,7 @@ msgstr "無法在子模組「%s」中執行「git status」"
 msgid "Could not unset core.worktree setting in submodule '%s'"
 msgstr "無法在子模組「%s」中取消 core.worktree 的設定"
 
-#: submodule.c
+#: submodule.c submodule.c
 #, c-format
 msgid "could not recurse into submodule '%s'"
 msgstr "無法遞迴子模組路徑 '%s'"
@@ -28174,16 +28988,11 @@ msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
 msgstr "不支援對有多個工作區的子模組 '%s' 執行 relocate_gitdir"
 
-#: submodule.c
+#: submodule.c submodule.c
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr "無法查詢子模組「%s」的名稱"
 
-#: submodule.c
-#, c-format
-msgid "refusing to move '%s' into an existing git dir"
-msgstr "拒絕移動「%s」至現存 git 目錄"
-
 #: submodule.c
 #, c-format
 msgid ""
@@ -28204,6 +29013,30 @@ msgstr "無法在 .. 中啟動 ls-files"
 msgid "ls-tree returned unexpected return code %d"
 msgstr "ls-tree 返回未知返回值 %d"
 
+#: submodule.c
+#, c-format
+msgid ""
+"the 'submodule.%s.gitdir' config does not exist for module '%s'. Please "
+"ensure it is set, for example by running something like: 'git config "
+"submodule.%s.gitdir .git/modules/%s'. For details see the "
+"extensions.submodulePathConfig documentation."
+msgstr ""
+"模組「%2$s」沒有「submodule.%1$s.gitdir」組態。請確定是否設定完成,舉例來說,"
+"可以執行類似這樣的命令進行設定:「git config submodule.%3$s.gitdir .git/"
+"modules/%4$s」。詳細資訊請參閱 extensions.submodulePathConfig 的說明文件。"
+
+#: submodule.c
+msgid ""
+"enabling extensions.submodulePathConfig might fix the following error, if "
+"it's not already enabled."
+msgstr ""
+"如果尚未啟用 extensions.submodulePathConfig,啟用這個選項可能會修復以下錯誤。"
+
+#: submodule.c
+#, c-format
+msgid "refusing to create/use '%s' in another submodule's  git dir."
+msgstr "拒絕在另一個子模組的 git 目錄中建立或使用「%s」。"
+
 #: symlinks.c
 #, c-format
 msgid "failed to lstat '%s'"
@@ -28274,6 +29107,11 @@ msgstr "提交 %s 沒有標記為可以取得"
 msgid "too many commits marked reachable"
 msgstr "太多提交標記為可以取得"
 
+#: t/helper/test-read-midx.c
+#, c-format
+msgid "could not find MIDX with checksum %s"
+msgstr "找不到總和檢查碼為 %s 的 MIDX"
+
 #: t/helper/test-read-midx.c
 msgid "could not determine MIDX preferred pack"
 msgstr "無法確定 MIDX 偏好的封裝"
@@ -28383,6 +29221,7 @@ msgstr "排除測試套件 <suite>"
 msgid "running trailer command '%s' failed"
 msgstr "執行 trailer 指令 '%s' 失敗"
 
+#: trailer.c trailer.c trailer.c trailer.c trailer.c
 #: trailer.c
 #, c-format
 msgid "unknown value '%s' for key '%s'"
@@ -28393,7 +29232,35 @@ msgstr "鍵 '%2$s' 的未知取值 '%1$s'"
 msgid "empty trailer token in trailer '%.*s'"
 msgstr "簽名 '%.*s' 的鍵為空"
 
-#: transport-helper.c
+#: trailer.c trailer.c
+msgid "empty --trailer argument"
+msgstr "--trailer 引數為空"
+
+#: trailer.c
+#, c-format
+msgid "invalid trailer '%s': missing key before separator"
+msgstr "無效的結尾資訊「%s」:分隔符號前缺少鍵"
+
+#: trailer.c wrapper.c wrapper.c
+#, c-format
+msgid "could not stat %s"
+msgstr "無法 stat %s"
+
+#: trailer.c
+#, c-format
+msgid "file %s is not a regular file"
+msgstr "檔案 %s 不是一個正規檔案"
+
+#: trailer.c
+#, c-format
+msgid "file %s is not writable by user"
+msgstr "檔案 %s 使用者不可寫"
+
+#: trailer.c
+msgid "could not write to temporary file"
+msgstr "無法寫入暫存檔案"
+
+#: transport-helper.c transport-helper.c
 msgid "full write to remote helper failed"
 msgstr "完整寫入遠端協助工具失敗"
 
@@ -28402,7 +29269,7 @@ msgstr "完整寫入遠端協助工具失敗"
 msgid "unable to find remote helper for '%s'"
 msgstr "無法為 '%s' 找到遠端協助工具"
 
-#: transport-helper.c
+#: transport-helper.c transport-helper.c
 msgid "can't dup helper output fd"
 msgstr "無法再製協助工具輸出檔案句柄"
 
@@ -28417,7 +29284,7 @@ msgstr "未知的強制能力 %s,該遠端協助工具可能需要新版本的
 msgid "this remote helper should implement refspec capability"
 msgstr "遠端協助工具需要實現 refspec 引用規格能力"
 
-#: transport-helper.c
+#: transport-helper.c transport-helper.c
 #, c-format
 msgid "%s unexpectedly said: '%s'"
 msgstr "%s 意外地說:'%s'"
@@ -28435,7 +29302,7 @@ msgstr "無法執行 fast-import"
 msgid "error while running fast-import"
 msgstr "執行 fast-import 發生錯誤"
 
-#: transport-helper.c
+#: transport-helper.c transport-helper.c
 #, c-format
 msgid "could not read ref %s"
 msgstr "無法讀取引用 %s"
@@ -28562,7 +29429,7 @@ msgstr "%s 執行緒失敗"
 msgid "%s thread failed to join: %s"
 msgstr "%s 執行緒等待失敗:%s"
 
-#: transport-helper.c
+#: transport-helper.c transport-helper.c
 #, c-format
 msgid "can't start thread for copying data: %s"
 msgstr "無法啟動執行緒來複製資料: %s"
@@ -28577,7 +29444,7 @@ msgstr "%s 進程等待失敗"
 msgid "%s process failed"
 msgstr "%s 進程失敗"
 
-#: transport-helper.c
+#: transport-helper.c transport-helper.c
 msgid "can't start thread for copying data"
 msgstr "無法啟動執行緒來複製資料"
 
@@ -28962,7 +29829,7 @@ msgstr "在 fetch 引數應為一個 flush 包"
 msgid "invalid URL scheme name or missing '://' suffix"
 msgstr "無效的 URL 方案名稱或遺失 '://' 後綴"
 
-#: urlmatch.c
+#: urlmatch.c urlmatch.c urlmatch.c
 #, c-format
 msgid "invalid %XX escape sequence"
 msgstr "無效的 %XX 轉義序列"
@@ -28979,7 +29846,7 @@ msgstr "一個 'file:' URL 不應該包含埠號"
 msgid "invalid characters in host name"
 msgstr "主機名稱中包含無效的字元"
 
-#: urlmatch.c
+#: urlmatch.c urlmatch.c
 msgid "invalid port number"
 msgstr "無效的埠號"
 
@@ -28992,7 +29859,7 @@ msgstr "無效的 '..' 路徑區塊"
 msgid "error: unable to format message: %s\n"
 msgstr "錯誤:無法格式化訊息:%s\n"
 
-#: usage.c
+#: usage.c usage.c
 msgid "usage: "
 msgstr "用法: "
 
@@ -29126,7 +29993,7 @@ msgstr "非有效目錄"
 msgid "gitdir file does not exist"
 msgstr "找不到 gitdir 檔案"
 
-#: worktree.c
+#: worktree.c worktree.c
 #, c-format
 msgid "unable to read gitdir file (%s)"
 msgstr "無法讀取 gitdir 檔案 (%s)"
@@ -29176,12 +30043,12 @@ msgstr "無法 setenv「%s」"
 msgid "unable to create '%s'"
 msgstr "不能建立 '%s'"
 
-#: wrapper.c
+#: wrapper.c wrapper.c
 #, c-format
 msgid "could not open '%s' for reading and writing"
 msgstr "無法開啟「%s」進行讀寫"
 
-#: wrapper.c
+#: wrapper.c wrapper.c
 #, c-format
 msgid "unable to access '%s'"
 msgstr "不能存取 '%s'"
@@ -29209,18 +30076,18 @@ msgid "Unmerged paths:"
 msgstr "未合併的路徑:"
 
 #  譯者:請維持前導空格
-#: wt-status.c
+#: wt-status.c wt-status.c
 msgid "  (use \"git restore --staged <file>...\" to unstage)"
 msgstr "  (使用 \"git restore --staged <檔案>...\" 以取消暫存)"
 
 #  譯者:請維持前導空格
-#: wt-status.c
+#: wt-status.c wt-status.c
 #, c-format
 msgid "  (use \"git restore --source=%s --staged <file>...\" to unstage)"
 msgstr "  (使用 \"git restore --source=%s --staged <檔案>...\" 以取消暫存)"
 
 #  譯者:請維持前導空格
-#: wt-status.c
+#: wt-status.c wt-status.c
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
 msgstr "  (使用 \"git rm --cached <檔案>...\" 以取消暫存)"
 
@@ -29230,7 +30097,7 @@ msgid "  (use \"git add <file>...\" to mark resolution)"
 msgstr "  (使用 \"git add <檔案>...\" 標記解決方案)"
 
 #  譯者:請維持前導空格
-#: wt-status.c
+#: wt-status.c wt-status.c
 msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
 msgstr "  (酌情使用 \"git add/rm <檔案>...\" 標記解決方案)"
 
@@ -29239,11 +30106,11 @@ msgstr "  (酌情使用 \"git add/rm <檔案>...\" 標記解決方案)"
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr "  (使用 \"git rm <檔案>...\" 標記解決方案)"
 
-#: wt-status.c
+#: wt-status.c wt-status.c
 msgid "Changes to be committed:"
 msgstr "要提交的變更:"
 
-#: wt-status.c
+#: wt-status.c wt-status.c
 msgid "Changes not staged for commit:"
 msgstr "尚未暫存以備提交的變更:"
 
@@ -29723,7 +30590,7 @@ msgstr "提交為空,但是存在尚未追蹤的檔案\n"
 msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
 msgstr "沒有東西提交(建立/複製檔案並使用「git add」追蹤之)\n"
 
-#: wt-status.c
+#: wt-status.c wt-status.c
 #, c-format
 msgid "nothing to commit\n"
 msgstr "無檔案要提交\n"
@@ -29753,11 +30620,11 @@ msgid "different"
 msgstr "不同"
 
 #  譯者:請維持句尾空格
-#: wt-status.c
+#: wt-status.c wt-status.c
 msgid "behind "
 msgstr "落後 "
 
-#: wt-status.c
+#: wt-status.c wt-status.c
 msgid "ahead "
 msgstr "領先 "
 
@@ -29819,7 +30686,7 @@ msgstr "嘗試和 $pretty_name 的簡單合併"
 msgid "Simple merge did not work, trying automatic merge."
 msgstr "簡單合併未生效,嘗試自動合併。"
 
-#: git-sh-setup.sh
+#: git-sh-setup.sh git-sh-setup.sh
 #, sh-format
 msgid "usage: $dashless $USAGE"
 msgstr "用法:$dashless $USAGE"
@@ -29829,7 +30696,7 @@ msgstr "用法:$dashless $USAGE"
 msgid "Cannot chdir to $cdup, the toplevel of the working tree"
 msgstr "不能切換目錄到 $cdup,工作區的頂級目錄"
 
-#: git-sh-setup.sh
+#: git-sh-setup.sh git-sh-setup.sh
 #, sh-format
 msgid "fatal: $program_name cannot be used without a working tree."
 msgstr "致命錯誤:$program_name 不能在沒有工作區的情況下使用。"
@@ -29864,7 +30731,7 @@ msgstr "不能確定 git 目錄的絕對路徑"
 msgid "local zone differs from GMT by a non-minute interval\n"
 msgstr "本機時間和 GMT 有不到一分鐘間隔\n"
 
-#: git-send-email.perl
+#: git-send-email.perl git-send-email.perl
 msgid "local time offset greater than or equal to 24 hours\n"
 msgstr "本機時間位移量大於等於 24 小時\n"
 
@@ -29906,7 +30773,7 @@ msgstr ""
 "git-send-email 已經以 sendemail.* 選項設定 - 注意裡面的 'e'。\n"
 "請將 sendemail.forbidSendmailVariables 設為 false 停用此檢查。\n"
 
-#: git-send-email.perl
+#: git-send-email.perl git-send-email.perl
 msgid "Cannot run git format-patch from outside a repository\n"
 msgstr "不能在版本庫之外執行 git format-patch\n"
 
@@ -30026,8 +30893,13 @@ msgid ""
 msgstr "如下檔案含 8bit 內容,但沒有聲明一個 Content-Transfer-Encoding。\n"
 
 #: git-send-email.perl
-msgid "Which 8bit encoding should I declare [UTF-8]? "
-msgstr "要宣告 8bit 為什麼樣的編碼格式 [UTF-8]? "
+msgid "Declare which 8bit encoding to use [default: UTF-8]? "
+msgstr "宣告要使用的 8 位元編碼 [預設值: UTF-8]? "
+
+#: git-send-email.perl
+#, perl-format
+msgid "'%s' does not appear to be a valid charset name. Use it anyway [y/N]? "
+msgstr "「%s」似乎不是有效的字元集名稱。仍要使用它嗎 [y/N]? "
 
 #: git-send-email.perl
 #, perl-format
@@ -30054,7 +30926,7 @@ msgstr "致命錯誤:別名 '%s' 展開後還是自己\n"
 msgid "Message-ID to be used as In-Reply-To for the first email (if any)? "
 msgstr "(如果有)Message-ID 是否要被用作第一封信件的 In-Reply-To ? "
 
-#: git-send-email.perl
+#: git-send-email.perl git-send-email.perl
 #, perl-format
 msgid "error: unable to extract a valid address from: %s\n"
 msgstr "錯誤:不能從 %s 中擷取一個有效的信件位址\n"
@@ -30071,6 +30943,11 @@ msgstr "如何處理這個位址?([q]uit|[d]rop|[e]dit): "
 msgid "CA path \"%s\" does not exist"
 msgstr "CA 路徑 \"%s\" 不存在"
 
+#: git-send-email.perl
+#, perl-format
+msgid "Only client key \"%s\" specified"
+msgstr "只有指定用戶端金鑰「%s」"
+
 #: git-send-email.perl
 msgid ""
 "    The Cc list above has been expanded by additional\n"
@@ -30117,7 +30994,7 @@ msgstr "要求的 SMTP 伺服器未被正確定義。"
 msgid "Server does not support STARTTLS! %s"
 msgstr "伺服器不支援 STARTTLS!%s"
 
-#: git-send-email.perl
+#: git-send-email.perl git-send-email.perl
 #, perl-format
 msgid "STARTTLS failed! %s"
 msgstr "STARTTLS 失敗!%s"
@@ -30171,7 +31048,7 @@ msgstr "結果:OK"
 msgid "can't open file %s"
 msgstr "無法開啟檔案 %s"
 
-#: git-send-email.perl
+#: git-send-email.perl git-send-email.perl
 #, perl-format
 msgid "(mbox) Adding cc: %s from line '%s'\n"
 msgstr "(mbox) 新增 cc:%s 自行 '%s'\n"
@@ -30235,7 +31112,7 @@ msgstr ""
 "%s\n"
 "警告:修補檔未能傳送\n"
 
-#: git-send-email.perl
+#: git-send-email.perl git-send-email.perl git-send-email.perl
 #, perl-format
 msgid "unable to open %s: %s\n"
 msgstr "無法開啟 %s: %s\n"