]> git.ipfire.org Git - thirdparty/git.git/commitdiff
l10n: vi.po(5037t): v2.30.0 rnd 2
authorTran Ngoc Quan <vnwildman@gmail.com>
Mon, 21 Dec 2020 01:45:38 +0000 (08:45 +0700)
committerTran Ngoc Quan <vnwildman@gmail.com>
Mon, 21 Dec 2020 01:45:38 +0000 (08:45 +0700)
Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
po/vi.po

index 7b76379d04ff8892bccadc9ff5f7d02d55023a04..65df3d0c4ecb35c167e27e8c2affd1e6d7e642ff 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
@@ -7,10 +7,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: git  v2.29.0 rd2\n"
+"Project-Id-Version: git v2.30.0 rd2\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2020-10-10 09:32+0800\n"
-"PO-Revision-Date: 2020-10-13 08:36+0700\n"
+"POT-Creation-Date: 2020-12-21 07:10+0800\n"
+"PO-Revision-Date: 2020-12-21 08:42+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
 "Language: vi\n"
@@ -21,205 +21,205 @@ msgstr ""
 "X-Language-Team-Website: <http://translationproject.org/team/vi.html>\n"
 "X-Poedit-SourceCharset: UTF-8\n"
 "X-Poedit-Basepath: ..\n"
-"X-Generator: Poedit 2.4.1\n"
+"X-Generator: Poedit 2.4.2\n"
 
-#: add-interactive.c:368
+#: add-interactive.c:376
 #, c-format
 msgid "Huh (%s)?"
 msgstr "Hả (%s)?"
 
-#: add-interactive.c:521 add-interactive.c:822 reset.c:65 sequencer.c:3250
-#: sequencer.c:3698 sequencer.c:3840 builtin/rebase.c:1526
-#: builtin/rebase.c:1944
+#: add-interactive.c:529 add-interactive.c:830 reset.c:65 sequencer.c:3284
+#: sequencer.c:3735 sequencer.c:3890 builtin/rebase.c:1532
+#: builtin/rebase.c:1955
 msgid "could not read index"
 msgstr "không thể đọc bảng mục lục"
 
-#: add-interactive.c:576 git-add--interactive.perl:269
+#: add-interactive.c:584 git-add--interactive.perl:269
 #: git-add--interactive.perl:294
 msgid "binary"
 msgstr "nhị phân"
 
-#: add-interactive.c:634 git-add--interactive.perl:278
+#: add-interactive.c:642 git-add--interactive.perl:278
 #: git-add--interactive.perl:332
 msgid "nothing"
 msgstr "không có gì"
 
-#: add-interactive.c:635 git-add--interactive.perl:314
+#: add-interactive.c:643 git-add--interactive.perl:314
 #: git-add--interactive.perl:329
 msgid "unchanged"
 msgstr "không thay đổi"
 
-#: add-interactive.c:672 git-add--interactive.perl:643
+#: add-interactive.c:680 git-add--interactive.perl:641
 msgid "Update"
 msgstr "Cập nhật"
 
-#: add-interactive.c:689 add-interactive.c:877
+#: add-interactive.c:697 add-interactive.c:885
 #, c-format
 msgid "could not stage '%s'"
 msgstr "không thể đưa “%s” lên bệ phóng"
 
-#: add-interactive.c:695 add-interactive.c:884 reset.c:89 sequencer.c:3444
+#: add-interactive.c:703 add-interactive.c:892 reset.c:89 sequencer.c:3478
 msgid "could not write index"
 msgstr "không thể ghi bảng mục lục"
 
-#: add-interactive.c:698 git-add--interactive.perl:628
+#: add-interactive.c:706 git-add--interactive.perl:626
 #, c-format, perl-format
 msgid "updated %d path\n"
 msgid_plural "updated %d paths\n"
 msgstr[0] "đã cập nhật %d đường dẫn\n"
 
-#: add-interactive.c:716 git-add--interactive.perl:678
+#: add-interactive.c:724 git-add--interactive.perl:676
 #, c-format, perl-format
 msgid "note: %s is untracked now.\n"
 msgstr "chú ý: %s giờ đã bỏ theo dõi.\n"
 
-#: add-interactive.c:721 apply.c:4127 builtin/checkout.c:295
+#: add-interactive.c:729 apply.c:4125 builtin/checkout.c:295
 #: builtin/reset.c:145
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr "make_cache_entry gặp lỗi đối với đường dẫn “%s”"
 
-#: add-interactive.c:751 git-add--interactive.perl:655
+#: add-interactive.c:759 git-add--interactive.perl:653
 msgid "Revert"
 msgstr "Hoàn nguyên"
 
-#: add-interactive.c:767
+#: add-interactive.c:775
 msgid "Could not parse HEAD^{tree}"
 msgstr "Không thể phân tích cú pháp HEAD^{tree}"
 
-#: add-interactive.c:805 git-add--interactive.perl:631
+#: add-interactive.c:813 git-add--interactive.perl:629
 #, c-format, perl-format
 msgid "reverted %d path\n"
 msgid_plural "reverted %d paths\n"
 msgstr[0] "đã hoàn nguyên %d đường dẫn\n"
 
-#: add-interactive.c:856 git-add--interactive.perl:695
+#: add-interactive.c:864 git-add--interactive.perl:693
 #, c-format
 msgid "No untracked files.\n"
 msgstr "Không có tập tin nào chưa được theo dõi.\n"
 
-#: add-interactive.c:860 git-add--interactive.perl:689
+#: add-interactive.c:868 git-add--interactive.perl:687
 msgid "Add untracked"
 msgstr "Thêm các cái chưa được theo dõi"
 
-#: add-interactive.c:887 git-add--interactive.perl:625
+#: add-interactive.c:895 git-add--interactive.perl:623
 #, c-format, perl-format
 msgid "added %d path\n"
 msgid_plural "added %d paths\n"
 msgstr[0] "đã thêm %d đường dẫn\n"
 
-#: add-interactive.c:917
+#: add-interactive.c:925
 #, c-format
 msgid "ignoring unmerged: %s"
 msgstr "bỏ qua những thứ chưa hòa trộn: %s"
 
-#: add-interactive.c:929 add-patch.c:1738 git-add--interactive.perl:1371
+#: add-interactive.c:937 add-patch.c:1751 git-add--interactive.perl:1369
 #, c-format
 msgid "Only binary files changed.\n"
 msgstr "Chỉ có các tập tin nhị phân là thay đổi.\n"
 
-#: add-interactive.c:931 add-patch.c:1736 git-add--interactive.perl:1373
+#: add-interactive.c:939 add-patch.c:1749 git-add--interactive.perl:1371
 #, c-format
 msgid "No changes.\n"
 msgstr "Không có thay đổi nào.\n"
 
-#: add-interactive.c:935 git-add--interactive.perl:1381
+#: add-interactive.c:943 git-add--interactive.perl:1379
 msgid "Patch update"
 msgstr "Cập nhật miếng vá"
 
-#: add-interactive.c:974 git-add--interactive.perl:1794
+#: add-interactive.c:982 git-add--interactive.perl:1792
 msgid "Review diff"
 msgstr "Xem xét lại diff"
 
-#: add-interactive.c:1002
+#: add-interactive.c:1010
 msgid "show paths with changes"
 msgstr "hiển thị đường dẫn với các thay đổi"
 
-#: add-interactive.c:1004
+#: add-interactive.c:1012
 msgid "add working tree state to the staged set of changes"
 msgstr ""
 "thêm trạng thái cây làm việc vào tập hợp các thay đổi đã được đưa lên bệ "
 "phóng"
 
-#: add-interactive.c:1006
+#: add-interactive.c:1014
 msgid "revert staged set of changes back to the HEAD version"
 msgstr ""
 "hoàn nguyên lại tập hợp các thay đổi đã được đưa lên bệ phóng trở lại phiên "
 "bản HEAD"
 
-#: add-interactive.c:1008
+#: add-interactive.c:1016
 msgid "pick hunks and update selectively"
 msgstr "chọn các “khúc” và cập nhật có tuyển chọn"
 
-#: add-interactive.c:1010
+#: add-interactive.c:1018
 msgid "view diff between HEAD and index"
 msgstr "xem khác biệt giữa HEAD và mục lục"
 
-#: add-interactive.c:1012
+#: add-interactive.c:1020
 msgid "add contents of untracked files to the staged set of changes"
 msgstr ""
 "thêm nội dung của các tập tin chưa được theo dõi vào tập hợp các thay đổi đã "
 "được đưa lên bệ phóng"
 
-#: add-interactive.c:1020 add-interactive.c:1069
+#: add-interactive.c:1028 add-interactive.c:1077
 msgid "Prompt help:"
 msgstr "Trợ giúp về nhắc:"
 
-#: add-interactive.c:1022
+#: add-interactive.c:1030
 msgid "select a single item"
 msgstr "chọn một mục đơn"
 
-#: add-interactive.c:1024
+#: add-interactive.c:1032
 msgid "select a range of items"
 msgstr "chọn một vùng các mục"
 
-#: add-interactive.c:1026
+#: add-interactive.c:1034
 msgid "select multiple ranges"
 msgstr "chọn nhiều vùng"
 
-#: add-interactive.c:1028 add-interactive.c:1073
+#: add-interactive.c:1036 add-interactive.c:1081
 msgid "select item based on unique prefix"
 msgstr "chọn mục dựa trên tiền tố duy nhất"
 
-#: add-interactive.c:1030
+#: add-interactive.c:1038
 msgid "unselect specified items"
 msgstr "bỏ chọn các mục đã cho"
 
-#: add-interactive.c:1032
+#: add-interactive.c:1040
 msgid "choose all items"
 msgstr "chọn tất cả các mục"
 
-#: add-interactive.c:1034
+#: add-interactive.c:1042
 msgid "(empty) finish selecting"
 msgstr "(để trống) hoàn tất chọn lựa"
 
-#: add-interactive.c:1071
+#: add-interactive.c:1079
 msgid "select a numbered item"
 msgstr "tùy chọn mục bằng số"
 
-#: add-interactive.c:1075
+#: add-interactive.c:1083
 msgid "(empty) select nothing"
 msgstr "(để trống) không chọn gì"
 
-#: add-interactive.c:1083 builtin/clean.c:816 git-add--interactive.perl:1891
+#: add-interactive.c:1091 builtin/clean.c:816 git-add--interactive.perl:1896
 msgid "*** Commands ***"
 msgstr "*** Lệnh ***"
 
-#: add-interactive.c:1084 builtin/clean.c:817 git-add--interactive.perl:1888
+#: add-interactive.c:1092 builtin/clean.c:817 git-add--interactive.perl:1893
 msgid "What now"
 msgstr "Giờ thì sao"
 
-#: add-interactive.c:1136 git-add--interactive.perl:213
+#: add-interactive.c:1144 git-add--interactive.perl:213
 msgid "staged"
 msgstr "đã đưa lên bệ phóng"
 
-#: add-interactive.c:1136 git-add--interactive.perl:213
+#: add-interactive.c:1144 git-add--interactive.perl:213
 msgid "unstaged"
 msgstr "chưa đưa lên bệ phóng"
 
-#: add-interactive.c:1136 apply.c:4984 apply.c:4987 builtin/am.c:2270
-#: builtin/am.c:2273 builtin/bugreport.c:133 builtin/clone.c:123
-#: builtin/fetch.c:147 builtin/merge.c:275 builtin/pull.c:190
+#: add-interactive.c:1144 apply.c:4987 apply.c:4990 builtin/am.c:2257
+#: builtin/am.c:2260 builtin/bugreport.c:134 builtin/clone.c:124
+#: builtin/fetch.c:147 builtin/merge.c:284 builtin/pull.c:190
 #: builtin/submodule--helper.c:409 builtin/submodule--helper.c:1818
 #: builtin/submodule--helper.c:1821 builtin/submodule--helper.c:2326
 #: builtin/submodule--helper.c:2329 builtin/submodule--helper.c:2572
@@ -227,31 +227,31 @@ msgstr "chưa đưa lên bệ phóng"
 msgid "path"
 msgstr "đường-dẫn"
 
-#: add-interactive.c:1143
+#: add-interactive.c:1151
 msgid "could not refresh index"
 msgstr "không thể đọc lại bảng mục lục"
 
-#: add-interactive.c:1157 builtin/clean.c:781 git-add--interactive.perl:1805
+#: add-interactive.c:1165 builtin/clean.c:781 git-add--interactive.perl:1803
 #, c-format
 msgid "Bye.\n"
 msgstr "Tạm biệt.\n"
 
-#: add-patch.c:34 git-add--interactive.perl:1433
+#: add-patch.c:34 git-add--interactive.perl:1431
 #, c-format, perl-format
 msgid "Stage mode change [y,n,q,a,d%s,?]? "
 msgstr "Thay đổi chế độ bệ phóng [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:35 git-add--interactive.perl:1434
+#: add-patch.c:35 git-add--interactive.perl:1432
 #, c-format, perl-format
 msgid "Stage deletion [y,n,q,a,d%s,?]? "
 msgstr "Xóa khỏi bệ phóng [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:36 git-add--interactive.perl:1435
+#: add-patch.c:36 git-add--interactive.perl:1433
 #, c-format, perl-format
 msgid "Stage addition [y,n,q,a,d%s,?]? "
 msgstr "Thêm vào bệ phóng [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:37 git-add--interactive.perl:1436
+#: add-patch.c:37 git-add--interactive.perl:1434
 #, c-format, perl-format
 msgid "Stage this hunk [y,n,q,a,d%s,?]? "
 msgstr "Đưa lên bệ phóng khúc này [y,n,q,a,d%s,?]? "
@@ -279,22 +279,22 @@ msgstr ""
 "d - đừng đưa lên bệ phóng khúc này cũng như bất kỳ cái nào còn lại trong tập "
 "tin\n"
 
-#: add-patch.c:56 git-add--interactive.perl:1439
+#: add-patch.c:56 git-add--interactive.perl:1437
 #, c-format, perl-format
 msgid "Stash mode change [y,n,q,a,d%s,?]? "
 msgstr "Thay đổi chế độ tạm cất đi [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:57 git-add--interactive.perl:1440
+#: add-patch.c:57 git-add--interactive.perl:1438
 #, c-format, perl-format
 msgid "Stash deletion [y,n,q,a,d%s,?]? "
 msgstr "Xóa tạm cất [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:58 git-add--interactive.perl:1441
+#: add-patch.c:58 git-add--interactive.perl:1439
 #, c-format, perl-format
 msgid "Stash addition [y,n,q,a,d%s,?]? "
 msgstr "Thêm vào tạm cất [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:59 git-add--interactive.perl:1442
+#: add-patch.c:59 git-add--interactive.perl:1440
 #, c-format, perl-format
 msgid "Stash this hunk [y,n,q,a,d%s,?]? "
 msgstr "Tạm cất khúc này [y,n,q,a,d%s,?]? "
@@ -321,22 +321,22 @@ msgstr ""
 "a - tạm cất khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng tạm cất khúc này cũng như bất kỳ cái nào còn lại trong tập tin\n"
 
-#: add-patch.c:80 git-add--interactive.perl:1445
+#: add-patch.c:80 git-add--interactive.perl:1443
 #, c-format, perl-format
 msgid "Unstage mode change [y,n,q,a,d%s,?]? "
 msgstr "Thay đổi chế độ bỏ ra khỏi bệ phóng [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:81 git-add--interactive.perl:1446
+#: add-patch.c:81 git-add--interactive.perl:1444
 #, c-format, perl-format
 msgid "Unstage deletion [y,n,q,a,d%s,?]? "
 msgstr "Xóa bỏ việc bỏ ra khỏi bệ phóng [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:82 git-add--interactive.perl:1447
+#: add-patch.c:82 git-add--interactive.perl:1445
 #, c-format, perl-format
 msgid "Unstage addition [y,n,q,a,d%s,?]? "
 msgstr "Thêm vào việc bỏ ra khỏi bệ phóng [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:83 git-add--interactive.perl:1448
+#: add-patch.c:83 git-add--interactive.perl:1446
 #, c-format, perl-format
 msgid "Unstage this hunk [y,n,q,a,d%s,?]? "
 msgstr "Bỏ ra khỏi bệ phóng khúc này [y,n,q,a,d%s,?]? "
@@ -365,22 +365,22 @@ msgstr ""
 "d - đừng đưa ra khỏi bệ phóng khúc này cũng như bất kỳ cái nào còn lại trong "
 "tập tin\n"
 
-#: add-patch.c:103 git-add--interactive.perl:1451
+#: add-patch.c:103 git-add--interactive.perl:1449
 #, c-format, perl-format
 msgid "Apply mode change to index [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng thay đổi chế độ cho mục lục [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:104 git-add--interactive.perl:1452
+#: add-patch.c:104 git-add--interactive.perl:1450
 #, c-format, perl-format
 msgid "Apply deletion to index [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng việc xóa vào mục lục [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:105 git-add--interactive.perl:1453
+#: add-patch.c:105 git-add--interactive.perl:1451
 #, c-format, perl-format
 msgid "Apply addition to index [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng các thêm vào mục lục [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:106 git-add--interactive.perl:1454
+#: add-patch.c:106 git-add--interactive.perl:1452
 #, c-format, perl-format
 msgid "Apply this hunk to index [y,n,q,a,d%s,?]? "
 msgstr "Áo dụng khúc này vào mục lục [y,n,q,a,d%s,?]? "
@@ -407,26 +407,26 @@ msgstr ""
 "a - áp dụng khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng áp dụng khúc này cũng như bất kỳ cái nào sau này trong tập tin\n"
 
-#: add-patch.c:126 git-add--interactive.perl:1457
-#: git-add--interactive.perl:1475
+#: add-patch.c:126 git-add--interactive.perl:1455
+#: git-add--interactive.perl:1473
 #, c-format, perl-format
 msgid "Discard mode change from worktree [y,n,q,a,d%s,?]? "
 msgstr "Loại bỏ các thay đổi chế độ từ cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:127 git-add--interactive.perl:1458
-#: git-add--interactive.perl:1476
+#: add-patch.c:127 git-add--interactive.perl:1456
+#: git-add--interactive.perl:1474
 #, c-format, perl-format
 msgid "Discard deletion from worktree [y,n,q,a,d%s,?]? "
 msgstr "Loại bỏ việc xóa khỏi cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:128 git-add--interactive.perl:1459
-#: git-add--interactive.perl:1477
+#: add-patch.c:128 git-add--interactive.perl:1457
+#: git-add--interactive.perl:1475
 #, c-format, perl-format
 msgid "Discard addition from worktree [y,n,q,a,d%s,?]? "
 msgstr "Thêm các loại bỏ khỏi cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:129 git-add--interactive.perl:1460
-#: git-add--interactive.perl:1478
+#: add-patch.c:129 git-add--interactive.perl:1458
+#: git-add--interactive.perl:1476
 #, c-format, perl-format
 msgid "Discard this hunk from worktree [y,n,q,a,d%s,?]? "
 msgstr "Loại bỏ khúc này khỏi cây làm việc [y,n,q,a,d%s,?]? "
@@ -453,22 +453,22 @@ msgstr ""
 "a - loại bỏ khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng loại bỏ khúc này cũng như bất kỳ cái nào sau này trong tập tin\n"
 
-#: add-patch.c:149 add-patch.c:194 git-add--interactive.perl:1463
+#: add-patch.c:149 add-patch.c:194 git-add--interactive.perl:1461
 #, c-format, perl-format
 msgid "Discard mode change from index and worktree [y,n,q,a,d%s,?]? "
 msgstr "Loại bỏ thay đổi chế độ từ mục lục và cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:150 add-patch.c:195 git-add--interactive.perl:1464
+#: add-patch.c:150 add-patch.c:195 git-add--interactive.perl:1462
 #, c-format, perl-format
 msgid "Discard deletion from index and worktree [y,n,q,a,d%s,?]? "
 msgstr "Loại bỏ việc xóa khỏi mục lục và cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:151 add-patch.c:196 git-add--interactive.perl:1465
+#: add-patch.c:151 add-patch.c:196 git-add--interactive.perl:1463
 #, c-format, perl-format
 msgid "Discard addition from index and worktree [y,n,q,a,d%s,?]? "
 msgstr "Thêm các loại bỏ từ mục lục và cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:152 add-patch.c:197 git-add--interactive.perl:1466
+#: add-patch.c:152 add-patch.c:197 git-add--interactive.perl:1464
 #, c-format, perl-format
 msgid "Discard this hunk from index and worktree [y,n,q,a,d%s,?]? "
 msgstr "Loại bỏ khúc này khỏi mục lục và cây làm việc [y,n,q,a,d%s,?]? "
@@ -487,22 +487,22 @@ msgstr ""
 "a - loại bỏ khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng loại bỏ khúc này cũng như bất kỳ cái nào sau này trong tập tin\n"
 
-#: add-patch.c:171 add-patch.c:216 git-add--interactive.perl:1469
+#: add-patch.c:171 add-patch.c:216 git-add--interactive.perl:1467
 #, c-format, perl-format
 msgid "Apply mode change to index and worktree [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng thay đổi chế độ cho mục lục và cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:172 add-patch.c:217 git-add--interactive.perl:1470
+#: add-patch.c:172 add-patch.c:217 git-add--interactive.perl:1468
 #, c-format, perl-format
 msgid "Apply deletion to index and worktree [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng việc xóa vào mục lục và cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:173 add-patch.c:218 git-add--interactive.perl:1471
+#: add-patch.c:173 add-patch.c:218 git-add--interactive.perl:1469
 #, c-format, perl-format
 msgid "Apply addition to index and worktree [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng thêm vào mục lục và cây làm việc [y,n,q,a,d%s,?]? "
 
-#: add-patch.c:174 add-patch.c:219 git-add--interactive.perl:1472
+#: add-patch.c:174 add-patch.c:219 git-add--interactive.perl:1470
 #, c-format, perl-format
 msgid "Apply this hunk to index and worktree [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng khúc này vào mục lục và cây làm việc [y,n,q,a,d%s,?]? "
@@ -570,7 +570,7 @@ msgstr ""
 "Bộ lọc của bạn phải duy trì một quan hệ một-đến-một\n"
 "giữa các dòng đầu vào và đầu ra của nó."
 
-#: add-patch.c:785
+#: add-patch.c:790
 #, c-format
 msgid ""
 "expected context line #%d in\n"
@@ -579,7 +579,7 @@ msgstr ""
 "cần dòng ngữ cảnh #%d trong\n"
 "%.*s"
 
-#: add-patch.c:800
+#: add-patch.c:805
 #, c-format
 msgid ""
 "hunks do not overlap:\n"
@@ -592,11 +592,11 @@ msgstr ""
 "\tkhông được kết thúc bằng:\n"
 "%.*s"
 
-#: add-patch.c:1076 git-add--interactive.perl:1117
+#: add-patch.c:1081 git-add--interactive.perl:1115
 msgid "Manual hunk edit mode -- see bottom for a quick guide.\n"
 msgstr "Chế độ sửa khúc bằng tay -- xem ở đáy để có hướng dẫn sử dụng nhanh.\n"
 
-#: add-patch.c:1080
+#: add-patch.c:1085
 #, c-format
 msgid ""
 "---\n"
@@ -610,7 +610,7 @@ msgstr ""
 "Những dòng bắt đầu bằng %c sẽ bị loại bỏ.\n"
 
 #. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
-#: add-patch.c:1094 git-add--interactive.perl:1131
+#: add-patch.c:1099 git-add--interactive.perl:1129
 msgid ""
 "If it does not apply cleanly, you will be given an opportunity to\n"
 "edit again.  If all lines of the hunk are removed, then the edit is\n"
@@ -620,13 +620,13 @@ msgstr ""
 "để sửa lần nữa. Nếu mọi dòng của khúc bị xóa bỏ, thế thì những\n"
 "sửa dổi sẽ bị loại bỏ, và khúc vẫn giữ nguyên.\n"
 
-#: add-patch.c:1127
+#: add-patch.c:1132
 msgid "could not parse hunk header"
 msgstr "không thể phân tích cú pháp phần đầu khúc"
 
-#: add-patch.c:1172
+#: add-patch.c:1177
 msgid "'git apply --cached' failed"
-msgstr "'git apply --cached' gặp lỗi"
+msgstr "“git apply --cached” gặp lỗi"
 
 #. TRANSLATORS: do not translate [y/n]
 #. The program will only accept that input at this point.
@@ -640,26 +640,26 @@ msgstr "'git apply --cached' gặp lỗi"
 #. Consider translating (saying "no" discards!) as
 #. (saying "n" for "no" discards!) if the translation
 #. of the word "no" does not start with n.
-#: add-patch.c:1241 git-add--interactive.perl:1244
+#: add-patch.c:1246 git-add--interactive.perl:1242
 msgid ""
 "Your edited hunk does not apply. Edit again (saying \"no\" discards!) [y/n]? "
 msgstr ""
 "Hunk đã sửa của bạn không được áp dụng. Sửa lại lần nữa (nói \"n\" để loại "
 "bỏ!) [y/n]? "
 
-#: add-patch.c:1284
+#: add-patch.c:1289
 msgid "The selected hunks do not apply to the index!"
 msgstr "Các khúc đã chọn không được áp dụng vào bảng mục lục!"
 
-#: add-patch.c:1285 git-add--interactive.perl:1348
+#: add-patch.c:1290 git-add--interactive.perl:1346
 msgid "Apply them to the worktree anyway? "
 msgstr "Vẫn áp dụng chúng cho cây làm việc? "
 
-#: add-patch.c:1292 git-add--interactive.perl:1351
+#: add-patch.c:1297 git-add--interactive.perl:1349
 msgid "Nothing was applied.\n"
 msgstr "Đã không áp dụng gì cả.\n"
 
-#: add-patch.c:1349
+#: add-patch.c:1354
 msgid ""
 "j - leave this hunk undecided, see next undecided hunk\n"
 "J - leave this hunk undecided, see next hunk\n"
@@ -681,72 +681,72 @@ msgstr ""
 "e - sửa bằng tay khúc hiện hành\n"
 "? - hiển thị trợ giúp\n"
 
-#: add-patch.c:1511 add-patch.c:1521
+#: add-patch.c:1516 add-patch.c:1526
 msgid "No previous hunk"
 msgstr "Không có khúc kế trước"
 
-#: add-patch.c:1516 add-patch.c:1526
+#: add-patch.c:1521 add-patch.c:1531
 msgid "No next hunk"
 msgstr "Không có khúc kế tiếp"
 
-#: add-patch.c:1532
+#: add-patch.c:1537
 msgid "No other hunks to goto"
 msgstr "Không còn khúc nào để mà nhảy đến"
 
-#: add-patch.c:1543 git-add--interactive.perl:1608
+#: add-patch.c:1548 git-add--interactive.perl:1606
 msgid "go to which hunk (<ret> to see more)? "
 msgstr "nhảy đến khúc nào (<ret> để xem thêm)? "
 
-#: add-patch.c:1544 git-add--interactive.perl:1610
+#: add-patch.c:1549 git-add--interactive.perl:1608
 msgid "go to which hunk? "
 msgstr "nhảy đến khúc nào? "
 
-#: add-patch.c:1555
+#: add-patch.c:1560
 #, c-format
 msgid "Invalid number: '%s'"
 msgstr "Số không hợp lệ: “%s”"
 
-#: add-patch.c:1560
+#: add-patch.c:1565
 #, c-format
 msgid "Sorry, only %d hunk available."
 msgid_plural "Sorry, only %d hunks available."
 msgstr[0] "Rất tiếc, chỉ có sẵn %d khúc."
 
-#: add-patch.c:1569
+#: add-patch.c:1574
 msgid "No other hunks to search"
 msgstr "Không còn khúc nào để mà tìm kiếm"
 
-#: add-patch.c:1575 git-add--interactive.perl:1663
+#: add-patch.c:1580 git-add--interactive.perl:1661
 msgid "search for regex? "
 msgstr "tìm kiếm cho biểu thức chính quy? "
 
-#: add-patch.c:1590
+#: add-patch.c:1595
 #, c-format
 msgid "Malformed search regexp %s: %s"
 msgstr "Định dạng tìm kiếm của biểu thức chính quy không đúng %s: %s"
 
-#: add-patch.c:1607
+#: add-patch.c:1612
 msgid "No hunk matches the given pattern"
 msgstr "Không thấy khúc nào khớp mẫu đã cho"
 
-#: add-patch.c:1614
+#: add-patch.c:1619
 msgid "Sorry, cannot split this hunk"
 msgstr "Rất tiếc, không thể chia nhỏ khúc này"
 
-#: add-patch.c:1618
+#: add-patch.c:1623
 #, c-format
 msgid "Split into %d hunks."
 msgstr "Chi nhỏ thành %d khúc."
 
-#: add-patch.c:1622
+#: add-patch.c:1627
 msgid "Sorry, cannot edit this hunk"
 msgstr "Rất tiếc, không thể sửa khúc này"
 
-#: add-patch.c:1674
+#: add-patch.c:1679
 msgid "'git apply' failed"
-msgstr "'git apply' gặp lỗi"
+msgstr "“git apply” gặp lỗi"
 
-#: advice.c:140
+#: advice.c:143
 #, c-format
 msgid ""
 "\n"
@@ -755,45 +755,45 @@ msgstr ""
 "\n"
 "Tắt lời nhắn này bằng \"git config advice.%s false\""
 
-#: advice.c:156
+#: advice.c:159
 #, c-format
 msgid "%shint: %.*s%s\n"
 msgstr "%sgợi ý: %.*s%s\n"
 
-#: advice.c:247
+#: advice.c:250
 msgid "Cherry-picking is not possible because you have unmerged files."
 msgstr ""
 "Cherry-picking là không thể thực hiện bởi vì bạn có những tập tin chưa được "
 "hòa trộn."
 
-#: advice.c:249
+#: advice.c:252
 msgid "Committing is not possible because you have unmerged files."
 msgstr ""
 "Commit là không thể thực hiện bởi vì bạn có những tập tin chưa được hòa trộn."
 
-#: advice.c:251
+#: advice.c:254
 msgid "Merging is not possible because you have unmerged files."
 msgstr ""
 "Merge là không thể thực hiện bởi vì bạn có những tập tin chưa được hòa trộn."
 
-#: advice.c:253
+#: advice.c:256
 msgid "Pulling is not possible because you have unmerged files."
 msgstr ""
 "Pull là không thể thực hiện bởi vì bạn có những tập tin chưa được hòa trộn."
 
-#: advice.c:255
+#: advice.c:258
 msgid "Reverting is not possible because you have unmerged files."
 msgstr ""
 "Revert là không thể thực hiện bởi vì bạn có những tập tin chưa được hòa trộn."
 
-#: advice.c:257
+#: advice.c:260
 #, c-format
 msgid "It is not possible to %s because you have unmerged files."
 msgstr ""
 "Việc này không thể thực hiện với %s bởi vì bạn có những tập tin chưa được "
 "hòa trộn."
 
-#: advice.c:265
+#: advice.c:268
 msgid ""
 "Fix them up in the work tree, and then use 'git add/rm <file>'\n"
 "as appropriate to mark resolution and make a commit."
@@ -801,23 +801,23 @@ msgstr ""
 "Sửa chúng trong cây làm việc, và sau đó dùng lệnh “git add/rm <tập-tin>”\n"
 "dành riêng cho việc đánh dấu cần giải quyết và tạo lần chuyển giao."
 
-#: advice.c:273
+#: advice.c:276
 msgid "Exiting because of an unresolved conflict."
 msgstr "Thoát ra bởi vì xung đột không thể giải quyết."
 
-#: advice.c:278 builtin/merge.c:1349
+#: advice.c:281 builtin/merge.c:1369
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr "Bạn chưa kết thúc việc hòa trộn (MERGE_HEAD vẫn tồn tại)."
 
-#: advice.c:280
+#: advice.c:283
 msgid "Please, commit your changes before merging."
 msgstr "Vui lòng chuyển giao các thay đổi trước khi hòa trộn."
 
-#: advice.c:281
+#: advice.c:284
 msgid "Exiting because of unfinished merge."
 msgstr "Thoát ra bởi vì việc hòa trộn không hoàn tất."
 
-#: advice.c:287
+#: advice.c:290
 #, c-format
 msgid ""
 "Note: switching to '%s'.\n"
@@ -1108,7 +1108,7 @@ msgstr "gặp lỗi khi vá: %s:%ld"
 msgid "cannot checkout %s"
 msgstr "không thể lấy ra %s"
 
-#: apply.c:3405 apply.c:3416 apply.c:3462 midx.c:72 setup.c:308
+#: apply.c:3405 apply.c:3416 apply.c:3462 midx.c:73 setup.c:308
 #, c-format
 msgid "failed to read %s"
 msgstr "gặp lỗi khi đọc %s"
@@ -1128,7 +1128,7 @@ msgstr "đường dẫn %s đã bị xóa hoặc đổi tên"
 msgid "%s: does not exist in index"
 msgstr "%s: không tồn tại trong bảng mục lục"
 
-#: apply.c:3537 apply.c:3708 apply.c:3953
+#: apply.c:3537 apply.c:3708 apply.c:3952
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s: không khớp trong mục lục"
@@ -1187,302 +1187,302 @@ msgstr "đường dẫn không hợp lệ “%s”"
 msgid "%s: already exists in index"
 msgstr "%s: đã có từ trước trong bảng mục lục"
 
-#: apply.c:3956
+#: apply.c:3954
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s: đã sẵn có trong thư mục đang làm việc"
 
-#: apply.c:3976
+#: apply.c:3974
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o)"
 msgstr "chế độ mới (%o) của %s không khớp với chế độ cũ (%o)"
 
-#: apply.c:3981
+#: apply.c:3979
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o) of %s"
 msgstr "chế độ mới (%o) của %s không khớp với chế độ cũ (%o) của %s"
 
-#: apply.c:4001
+#: apply.c:3999
 #, c-format
 msgid "affected file '%s' is beyond a symbolic link"
 msgstr "tập tin chịu tác động “%s” vượt ra ngoài liên kết mềm"
 
-#: apply.c:4005
+#: apply.c:4003
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s: miếng vá không được áp dụng"
 
-#: apply.c:4020
+#: apply.c:4018
 #, c-format
 msgid "Checking patch %s..."
 msgstr "Đang kiểm tra miếng vá %s…"
 
-#: apply.c:4112
+#: apply.c:4110
 #, c-format
 msgid "sha1 information is lacking or useless for submodule %s"
 msgstr "thông tin sha1 thiếu hoặc không dùng được cho mô-đun %s"
 
-#: apply.c:4119
+#: apply.c:4117
 #, c-format
 msgid "mode change for %s, which is not in current HEAD"
 msgstr "thay đổi chế độ cho %s, cái mà không phải là HEAD hiện tại"
 
-#: apply.c:4122
+#: apply.c:4120
 #, c-format
 msgid "sha1 information is lacking or useless (%s)."
 msgstr "thông tin sha1 còn thiếu hay không dùng được(%s)."
 
-#: apply.c:4131
+#: apply.c:4129
 #, c-format
 msgid "could not add %s to temporary index"
 msgstr "không thể thêm %s vào chỉ mục tạm thời"
 
-#: apply.c:4141
+#: apply.c:4139
 #, c-format
 msgid "could not write temporary index to %s"
 msgstr "không thể ghi mục lục tạm vào %s"
 
-#: apply.c:4279
+#: apply.c:4277
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "không thể gỡ bỏ %s từ mục lục"
 
-#: apply.c:4313
+#: apply.c:4311
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "miếng vá sai hỏng cho mô-đun-con %s"
 
-#: apply.c:4319
+#: apply.c:4317
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "không thể lấy thống kê về tập tin %s mới hơn đã được tạo"
 
-#: apply.c:4327
+#: apply.c:4325
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr "không thể tạo “kho lưu đằng sau” cho tập tin được tạo mới hơn %s"
 
-#: apply.c:4333 apply.c:4478
+#: apply.c:4331 apply.c:4476
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "không thể thêm mục nhớ đệm cho %s"
 
-#: apply.c:4376 builtin/bisect--helper.c:537
+#: apply.c:4374 builtin/bisect--helper.c:524
 #, c-format
 msgid "failed to write to '%s'"
 msgstr "gặp lỗi khi ghi vào “%s”"
 
-#: apply.c:4380
+#: apply.c:4378
 #, c-format
 msgid "closing file '%s'"
 msgstr "đang đóng tập tin “%s”"
 
-#: apply.c:4450
+#: apply.c:4448
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr "không thể ghi vào tập tin “%s” chế độ %o"
 
-#: apply.c:4548
+#: apply.c:4546
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Đã áp dụng miếng vá %s một cách sạch sẽ."
 
-#: apply.c:4556
+#: apply.c:4554
 msgid "internal error"
 msgstr "lỗi nội bộ"
 
-#: apply.c:4559
+#: apply.c:4557
 #, c-format
 msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] "Đang áp dụng miếng vá %%s với %d lần từ chối…"
 
-#: apply.c:4570
+#: apply.c:4568
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "đang cắt ngắn tên tập tin .rej thành %.*s.rej"
 
-#: apply.c:4578 builtin/fetch.c:927 builtin/fetch.c:1228
+#: apply.c:4576 builtin/fetch.c:927 builtin/fetch.c:1228
 #, c-format
 msgid "cannot open %s"
 msgstr "không mở được “%s”"
 
-#: apply.c:4592
+#: apply.c:4590
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Khối nhớ #%d được áp dụng gọn gàng."
 
-#: apply.c:4596
+#: apply.c:4594
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "Đoạn dữ liệu #%d bị từ chối."
 
-#: apply.c:4715
+#: apply.c:4718
 #, c-format
 msgid "Skipped patch '%s'."
 msgstr "Bỏ qua đường dẫn “%s”."
 
-#: apply.c:4723
+#: apply.c:4726
 msgid "unrecognized input"
 msgstr "không thừa nhận đầu vào"
 
-#: apply.c:4743
+#: apply.c:4746
 msgid "unable to read index file"
 msgstr "không thể đọc tập tin lưu bảng mục lục"
 
-#: apply.c:4900
+#: apply.c:4903
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr "không thể mở miếng vá “%s”: %s"
 
-#: apply.c:4927
+#: apply.c:4930
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "đã chấm dứt %d lỗi khoảng trắng"
 
-#: apply.c:4933 apply.c:4948
+#: apply.c:4936 apply.c:4951
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
 msgstr[0] "%d dòng thêm khoảng trắng lỗi."
 
-#: apply.c:4941
+#: apply.c:4944
 #, c-format
 msgid "%d line applied after fixing whitespace errors."
 msgid_plural "%d lines applied after fixing whitespace errors."
 msgstr[0] "%d dòng được áp dụng sau khi sửa các lỗi khoảng trắng."
 
-#: apply.c:4957 builtin/add.c:618 builtin/mv.c:304 builtin/rm.c:406
+#: apply.c:4960 builtin/add.c:618 builtin/mv.c:304 builtin/rm.c:406
 msgid "Unable to write new index file"
 msgstr "Không thể ghi tập tin lưu bảng mục lục mới"
 
-#: apply.c:4985
+#: apply.c:4988
 msgid "don't apply changes matching the given path"
 msgstr "không áp dụng các thay đổi khớp với đường dẫn đã cho"
 
-#: apply.c:4988
+#: apply.c:4991
 msgid "apply changes matching the given path"
 msgstr "áp dụng các thay đổi khớp với đường dẫn đã cho"
 
-#: apply.c:4990 builtin/am.c:2279
+#: apply.c:4993 builtin/am.c:2266
 msgid "num"
 msgstr "số"
 
-#: apply.c:4991
+#: apply.c:4994
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "gỡ bỏ <số> dấu gạch chéo dẫn đầu từ đường dẫn diff cổ điển"
 
-#: apply.c:4994
+#: apply.c:4997
 msgid "ignore additions made by the patch"
 msgstr "lờ đi phần bổ xung được tạo ra bởi miếng vá"
 
-#: apply.c:4996
+#: apply.c:4999
 msgid "instead of applying the patch, output diffstat for the input"
 msgstr ""
 "thay vì áp dụng một miếng vá, kết xuất kết quả từ lệnh diffstat cho đầu ra"
 
-#: apply.c:5000
+#: apply.c:5003
 msgid "show number of added and deleted lines in decimal notation"
 msgstr ""
 "hiển thị số lượng các dòng được thêm vào và xóa đi theo ký hiệu thập phân"
 
-#: apply.c:5002
+#: apply.c:5005
 msgid "instead of applying the patch, output a summary for the input"
 msgstr "thay vì áp dụng một miếng vá, kết xuất kết quả cho đầu vào"
 
-#: apply.c:5004
+#: apply.c:5007
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr "thay vì áp dụng miếng vá, hãy xem xem miếng vá có thích hợp không"
 
-#: apply.c:5006
+#: apply.c:5009
 msgid "make sure the patch is applicable to the current index"
 msgstr "hãy chắc chắn là miếng vá thích hợp với bảng mục lục hiện hành"
 
-#: apply.c:5008
+#: apply.c:5011
 msgid "mark new files with `git add --intent-to-add`"
 msgstr "đánh dấu các tập tin mới với “git add --intent-to-add”"
 
-#: apply.c:5010
+#: apply.c:5013
 msgid "apply a patch without touching the working tree"
 msgstr "áp dụng một miếng vá mà không động chạm đến cây làm việc"
 
-#: apply.c:5012
+#: apply.c:5015
 msgid "accept a patch that touches outside the working area"
 msgstr "chấp nhận một miếng vá mà không động chạm đến cây làm việc"
 
-#: apply.c:5015
+#: apply.c:5018
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr ""
 "đồng thời áp dụng miếng vá (dùng với tùy chọn --stat/--summary/--check)"
 
-#: apply.c:5017
+#: apply.c:5020
 msgid "attempt three-way merge if a patch does not apply"
 msgstr "thử hòa trộn kiểu three-way nếu việc vá không thể thực hiện được"
 
-#: apply.c:5019
+#: apply.c:5022
 msgid "build a temporary index based on embedded index information"
 msgstr ""
 "xây dựng bảng mục lục tạm thời trên cơ sở thông tin bảng mục lục được nhúng"
 
-#: apply.c:5022 builtin/checkout-index.c:173 builtin/ls-files.c:525
+#: apply.c:5025 builtin/checkout-index.c:182 builtin/ls-files.c:525
 msgid "paths are separated with NUL character"
 msgstr "các đường dẫn bị ngăn cách bởi ký tự NULL"
 
-#: apply.c:5024
+#: apply.c:5027
 msgid "ensure at least <n> lines of context match"
 msgstr "đảm bảo rằng có ít nhất <n> dòng ngữ cảnh khớp"
 
-#: apply.c:5025 builtin/am.c:2258 builtin/interpret-trailers.c:98
+#: apply.c:5028 builtin/am.c:2245 builtin/interpret-trailers.c:98
 #: builtin/interpret-trailers.c:100 builtin/interpret-trailers.c:102
-#: builtin/pack-objects.c:3562 builtin/rebase.c:1340
+#: builtin/pack-objects.c:3562 builtin/rebase.c:1346
 msgid "action"
 msgstr "hành động"
 
-#: apply.c:5026
+#: apply.c:5029
 msgid "detect new or modified lines that have whitespace errors"
 msgstr "tìm thấy một dòng mới hoặc bị sửa đổi mà nó có lỗi do khoảng trắng"
 
-#: apply.c:5029 apply.c:5032
+#: apply.c:5032 apply.c:5035
 msgid "ignore changes in whitespace when finding context"
 msgstr "lờ đi sự thay đổi do khoảng trắng gây ra khi tìm ngữ cảnh"
 
-#: apply.c:5035
+#: apply.c:5038
 msgid "apply the patch in reverse"
 msgstr "áp dụng miếng vá theo chiều ngược"
 
-#: apply.c:5037
+#: apply.c:5040
 msgid "don't expect at least one line of context"
 msgstr "đừng hy vọng có ít nhất một dòng ngữ cảnh"
 
-#: apply.c:5039
+#: apply.c:5042
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "để lại khối dữ liệu bị từ chối trong các tập tin *.rej tương ứng"
 
-#: apply.c:5041
+#: apply.c:5044
 msgid "allow overlapping hunks"
 msgstr "cho phép chồng khối nhớ"
 
-#: apply.c:5042 builtin/add.c:329 builtin/check-ignore.c:22
+#: apply.c:5045 builtin/add.c:329 builtin/check-ignore.c:22
 #: builtin/commit.c:1364 builtin/count-objects.c:98 builtin/fsck.c:775
-#: builtin/log.c:2270 builtin/mv.c:123 builtin/read-tree.c:128
+#: builtin/log.c:2287 builtin/mv.c:123 builtin/read-tree.c:128
 msgid "be verbose"
 msgstr "chi tiết"
 
-#: apply.c:5044
+#: apply.c:5047
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr ""
 "đã dò tìm thấy dung sai không chính xác thiếu dòng mới tại cuối tập tin"
 
-#: apply.c:5047
+#: apply.c:5050
 msgid "do not trust the line counts in the hunk headers"
 msgstr "không tin số lượng dòng trong phần đầu khối dữ liệu"
 
-#: apply.c:5049 builtin/am.c:2267
+#: apply.c:5052 builtin/am.c:2254
 msgid "root"
 msgstr "gốc"
 
-#: apply.c:5050
+#: apply.c:5053
 msgid "prepend <root> to all filenames"
 msgstr "treo thêm <root> vào tất cả các tên tập tin"
 
@@ -1496,16 +1496,16 @@ msgstr "không thể stream blob “%s”"
 msgid "unsupported file mode: 0%o (SHA1: %s)"
 msgstr "chế độ tập tin lục không được hỗ trợ: 0%o (SHA1: %s)"
 
-#: archive-tar.c:449
+#: archive-tar.c:450
 #, c-format
 msgid "unable to start '%s' filter"
 msgstr "không thể bắt đầu bộ lọc “%s”"
 
-#: archive-tar.c:452
+#: archive-tar.c:453
 msgid "unable to redirect descriptor"
 msgstr "không thể chuyển hướng mô tả"
 
-#: archive-tar.c:459
+#: archive-tar.c:460
 #, c-format
 msgid "'%s' filter reported error"
 msgstr "bộ lọc “%s” đã báo cáo lỗi"
@@ -1554,9 +1554,9 @@ msgstr "git archive --remote <kho> [--exec <lệnh>] --list"
 msgid "cannot read %s"
 msgstr "không thể đọc %s"
 
-#: archive.c:345 sequencer.c:445 sequencer.c:1706 sequencer.c:2852
-#: sequencer.c:3293 sequencer.c:3402 builtin/am.c:263 builtin/commit.c:786
-#: builtin/merge.c:1124
+#: archive.c:345 sequencer.c:459 sequencer.c:1736 sequencer.c:2886
+#: sequencer.c:3327 sequencer.c:3436 builtin/am.c:249 builtin/commit.c:786
+#: builtin/merge.c:1138
 #, c-format
 msgid "could not read '%s'"
 msgstr "không thể đọc “%s”"
@@ -1595,118 +1595,110 @@ msgstr "Không tìm thấy tập tin: %s"
 msgid "Not a regular file: %s"
 msgstr "Không phải một tập tin thường: %s"
 
-#: archive.c:553
+#: archive.c:555
 msgid "fmt"
 msgstr "định_dạng"
 
-#: archive.c:553
+#: archive.c:555
 msgid "archive format"
 msgstr "định dạng lưu trữ"
 
-#: archive.c:554 builtin/log.c:1760
+#: archive.c:556 builtin/log.c:1765
 msgid "prefix"
 msgstr "tiền_tố"
 
-#: archive.c:555
+#: archive.c:557
 msgid "prepend prefix to each pathname in the archive"
 msgstr "nối thêm tiền tố vào từng đường dẫn tập tin trong kho lưu"
 
-#: archive.c:556 archive.c:559 builtin/blame.c:884 builtin/blame.c:888
-#: builtin/blame.c:889 builtin/commit-tree.c:117 builtin/config.c:133
-#: builtin/fast-export.c:1208 builtin/fast-export.c:1210
-#: builtin/fast-export.c:1214 builtin/grep.c:908 builtin/hash-object.c:105
+#: archive.c:558 archive.c:561 builtin/blame.c:886 builtin/blame.c:890
+#: builtin/blame.c:891 builtin/commit-tree.c:117 builtin/config.c:135
+#: builtin/fast-export.c:1207 builtin/fast-export.c:1209
+#: builtin/fast-export.c:1213 builtin/grep.c:919 builtin/hash-object.c:105
 #: builtin/ls-files.c:561 builtin/ls-files.c:564 builtin/notes.c:412
 #: builtin/notes.c:578 builtin/read-tree.c:123 parse-options.h:190
 msgid "file"
 msgstr "tập_tin"
 
-#: archive.c:557
+#: archive.c:559
 msgid "add untracked file to archive"
 msgstr "thêm các tập tin không được theo dõi vào kho lưu"
 
-#: archive.c:560 builtin/archive.c:90
+#: archive.c:562 builtin/archive.c:90
 msgid "write the archive to this file"
 msgstr "ghi kho lưu vào tập tin này"
 
-#: archive.c:562
+#: archive.c:564
 msgid "read .gitattributes in working directory"
 msgstr "đọc .gitattributes trong thư mục làm việc"
 
-#: archive.c:563
+#: archive.c:565
 msgid "report archived files on stderr"
 msgstr "liệt kê các tập tin được lưu trữ vào stderr (đầu ra lỗi tiêu chuẩn)"
 
-#: archive.c:564
-msgid "store only"
-msgstr "chỉ lưu (không nén)"
-
-#: archive.c:565
-msgid "compress faster"
-msgstr "nén nhanh hơn"
-
-#: archive.c:573
-msgid "compress better"
-msgstr "nén nhỏ hơn"
+#: archive.c:567
+msgid "set compression level"
+msgstr "đặt mức nén"
 
-#: archive.c:576
+#: archive.c:570
 msgid "list supported archive formats"
 msgstr "liệt kê các kiểu nén được hỗ trợ"
 
-#: archive.c:578 builtin/archive.c:91 builtin/clone.c:113 builtin/clone.c:116
+#: archive.c:572 builtin/archive.c:91 builtin/clone.c:114 builtin/clone.c:117
 #: builtin/submodule--helper.c:1830 builtin/submodule--helper.c:2335
 msgid "repo"
 msgstr "kho"
 
-#: archive.c:579 builtin/archive.c:92
+#: archive.c:573 builtin/archive.c:92
 msgid "retrieve the archive from remote repository <repo>"
 msgstr "nhận kho nén từ kho chứa <kho> trên máy chủ"
 
-#: archive.c:580 builtin/archive.c:93 builtin/difftool.c:715
+#: archive.c:574 builtin/archive.c:93 builtin/difftool.c:714
 #: builtin/notes.c:498
 msgid "command"
 msgstr "lệnh"
 
-#: archive.c:581 builtin/archive.c:94
+#: archive.c:575 builtin/archive.c:94
 msgid "path to the remote git-upload-archive command"
 msgstr "đường dẫn đến lệnh git-upload-pack trên máy chủ"
 
-#: archive.c:588
+#: archive.c:582
 msgid "Unexpected option --remote"
 msgstr "Gặp tùy chọn không cần --remote"
 
-#: archive.c:590
+#: archive.c:584
 msgid "Option --exec can only be used together with --remote"
 msgstr "Tùy chọn --exec chỉ có thể được dùng cùng với --remote"
 
-#: archive.c:592
+#: archive.c:586
 msgid "Unexpected option --output"
 msgstr "Gặp tùy chọn không cần --output"
 
-#: archive.c:594
+#: archive.c:588
 msgid "Options --add-file and --remote cannot be used together"
 msgstr "Các tùy chọn --add-file và --remote không thể sử dụng cùng với nhau"
 
-#: archive.c:616
+#: archive.c:610
 #, c-format
 msgid "Unknown archive format '%s'"
 msgstr "Không hiểu định dạng “%s”"
 
-#: archive.c:623
+#: archive.c:619
 #, c-format
 msgid "Argument not supported for format '%s': -%d"
 msgstr "Tham số không được hỗ trợ cho định dạng “%s”: -%d"
 
-#: attr.c:212
+#: attr.c:202
 #, c-format
 msgid "%.*s is not a valid attribute name"
 msgstr "%.*s không phải tên thuộc tính hợp lệ"
 
-#: attr.c:369
+#: attr.c:359
 #, c-format
 msgid "%s not allowed: %s:%d"
 msgstr "%s không được phép: %s:%d"
 
-#: attr.c:409
+#: attr.c:399
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
@@ -1714,22 +1706,22 @@ msgstr ""
 "Các mẫu dạng phủ định bị cấm dùng cho các thuộc tính của git\n"
 "Dùng “\\!” cho các chuỗi văn bản có dấu chấm than dẫn đầu."
 
-#: bisect.c:476
+#: bisect.c:489
 #, c-format
 msgid "Badly quoted content in file '%s': %s"
 msgstr "Nội dung được trích dẫn sai trong tập tin “%s”: %s"
 
-#: bisect.c:686
+#: bisect.c:699
 #, c-format
 msgid "We cannot bisect more!\n"
 msgstr "Chúng tôi không bisect thêm nữa!\n"
 
-#: bisect.c:753
+#: bisect.c:766
 #, c-format
 msgid "Not a valid commit name %s"
 msgstr "Không phải tên đối tượng commit %s hợp lệ"
 
-#: bisect.c:778
+#: bisect.c:791
 #, c-format
 msgid ""
 "The merge base %s is bad.\n"
@@ -1738,7 +1730,7 @@ msgstr ""
 "Hòa trộn trên %s là sai.\n"
 "Điều đó có nghĩa là lỗi đã được sửa chữa giữa %s và [%s].\n"
 
-#: bisect.c:783
+#: bisect.c:796
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
@@ -1747,7 +1739,7 @@ msgstr ""
 "Hòa trộn trên %s là mới.\n"
 "Gần như chắc chắn là có thay đổi giữa %s và [%s].\n"
 
-#: bisect.c:788
+#: bisect.c:801
 #, c-format
 msgid ""
 "The merge base %s is %s.\n"
@@ -1756,7 +1748,7 @@ msgstr ""
 "Hòa trộn trên %s là %s.\n"
 "Điều đó có nghĩa là lần chuyển giao “%s” đầu tiên là giữa %s và [%s].\n"
 
-#: bisect.c:796
+#: bisect.c:809
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -1767,7 +1759,7 @@ msgstr ""
 "git bisect không thể làm việc đúng đắn trong trường hợp này.\n"
 "Liệu có phải bạn nhầm lẫn các điểm %s và %s không?\n"
 
-#: bisect.c:809
+#: bisect.c:822
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -1779,36 +1771,36 @@ msgstr ""
 "%s.\n"
 "Chúng tôi vẫn cứ tiếp tục."
 
-#: bisect.c:848
+#: bisect.c:861
 #, c-format
 msgid "Bisecting: a merge base must be tested\n"
 msgstr "Bisecting: nền hòa trộn cần phải được kiểm tra\n"
 
-#: bisect.c:898
+#: bisect.c:911
 #, c-format
 msgid "a %s revision is needed"
 msgstr "cần một điểm xét duyệt %s"
 
-#: bisect.c:928 builtin/notes.c:177 builtin/tag.c:255
+#: bisect.c:941 builtin/notes.c:177 builtin/tag.c:255
 #, c-format
 msgid "could not create file '%s'"
 msgstr "không thể tạo tập tin “%s”"
 
-#: bisect.c:974 builtin/merge.c:150
+#: bisect.c:987 builtin/merge.c:152
 #, c-format
 msgid "could not read file '%s'"
 msgstr "không thể đọc tập tin “%s”"
 
-#: bisect.c:1014
+#: bisect.c:1027
 msgid "reading bisect refs failed"
 msgstr "việc đọc tham chiếu bisect gặp lỗi"
 
-#: bisect.c:1044
+#: bisect.c:1057
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr "%s là cả %s và %s\n"
 
-#: bisect.c:1053
+#: bisect.c:1066
 #, c-format
 msgid ""
 "No testable commit found.\n"
@@ -1817,7 +1809,7 @@ msgstr ""
 "Không tìm thấy lần chuyển giao kiểm tra được nào.\n"
 "Có lẽ bạn bắt đầu với các tham số đường dẫn sai?\n"
 
-#: bisect.c:1082
+#: bisect.c:1095
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
@@ -1826,46 +1818,46 @@ msgstr[0] "(ước chừng %d bước)"
 #. TRANSLATORS: the last %s will be replaced with "(roughly %d
 #. steps)" translation.
 #.
-#: bisect.c:1088
+#: bisect.c:1101
 #, c-format
 msgid "Bisecting: %d revision left to test after this %s\n"
 msgid_plural "Bisecting: %d revisions left to test after this %s\n"
 msgstr[0] "Bisecting: còn %d điểm xét duyệt để kiểm sau %s này\n"
 
-#: blame.c:2778
+#: blame.c:2777
 msgid "--contents and --reverse do not blend well."
 msgstr "tùy chọn--contents và --reverse không được trộn vào nhau."
 
-#: blame.c:2792
+#: blame.c:2791
 msgid "cannot use --contents with final commit object name"
 msgstr "không thể dùng --contents với tên đối tượng chuyển giao cuối cùng"
 
-#: blame.c:2813
+#: blame.c:2812
 msgid "--reverse and --first-parent together require specified latest commit"
 msgstr ""
 "cùng sử dụng --reverse và --first-parent cần chỉ định lần chuyển giao cuối"
 
-#: blame.c:2822 bundle.c:213 ref-filter.c:2264 remote.c:2020 sequencer.c:2105
-#: sequencer.c:4606 submodule.c:855 builtin/commit.c:1045 builtin/log.c:404
-#: builtin/log.c:1020 builtin/log.c:1622 builtin/log.c:2029 builtin/log.c:2319
-#: builtin/merge.c:414 builtin/pack-objects.c:3380 builtin/pack-objects.c:3395
-#: builtin/shortlog.c:320
+#: blame.c:2821 bundle.c:213 ref-filter.c:2272 remote.c:2031 sequencer.c:2138
+#: sequencer.c:4633 submodule.c:855 builtin/commit.c:1045 builtin/log.c:409
+#: builtin/log.c:1023 builtin/log.c:1625 builtin/log.c:2046 builtin/log.c:2336
+#: builtin/merge.c:423 builtin/pack-objects.c:3380 builtin/pack-objects.c:3395
+#: builtin/shortlog.c:267
 msgid "revision walk setup failed"
 msgstr "cài đặt việc di chuyển qua các điểm xét duyệt gặp lỗi"
 
-#: blame.c:2840
+#: blame.c:2839
 msgid ""
 "--reverse --first-parent together require range along first-parent chain"
 msgstr ""
 "cùng sử dụng --reverse --first-parent yêu cầu vùng cùng với chuỗi cha-mẹ-đầu-"
 "tiên"
 
-#: blame.c:2851
+#: blame.c:2850
 #, c-format
 msgid "no such path %s in %s"
 msgstr "không có đường dẫn %s trong “%s”"
 
-#: blame.c:2862
+#: blame.c:2861
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr "không thể đọc blob %s cho đường dẫn “%s”"
@@ -2031,7 +2023,7 @@ msgstr "“%s” không giống như tập tin v2 hay v3 bundle (định dạng
 msgid "unrecognized header: %s%s (%d)"
 msgstr "phần đầu không được thừa nhận: %s%s (%d)"
 
-#: bundle.c:136 rerere.c:480 rerere.c:690 sequencer.c:2357 sequencer.c:3142
+#: bundle.c:136 rerere.c:480 rerere.c:690 sequencer.c:2390 sequencer.c:3176
 #: builtin/commit.c:814
 #, c-format
 msgid "could not open '%s'"
@@ -2092,7 +2084,7 @@ msgstr "phiên bản bundle %d không được hỗ trợ"
 msgid "cannot write bundle version %d with algorithm %s"
 msgstr "không thể ghi phiên bản bundle %d với thuật toán %s"
 
-#: bundle.c:522 builtin/log.c:207 builtin/log.c:1918 builtin/shortlog.c:461
+#: bundle.c:522 builtin/log.c:209 builtin/log.c:1927 builtin/shortlog.c:408
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "đối số không được thừa nhận: %s"
@@ -2115,7 +2107,7 @@ msgstr "mục lục gói đã chết"
 msgid "invalid color value: %.*s"
 msgstr "giá trị màu không hợp lệ: %.*s"
 
-#: commit-graph.c:188 midx.c:46
+#: commit-graph.c:188 midx.c:47
 msgid "invalid hash version"
 msgstr "phiên bản băm không hợp lệ"
 
@@ -2165,7 +2157,7 @@ msgstr "móc xích đồ-thị-các-lần-chuyển-giao không khớp"
 #, c-format
 msgid "invalid commit-graph chain: line '%s' not a hash"
 msgstr ""
-"móc xích đồ-thị-các-lần-chuyển-giao không hợp lệ: dòng '%s' không phải là "
+"móc xích đồ-thị-các-lần-chuyển-giao không hợp lệ: dòng “%s” không phải là "
 "một mã băm"
 
 #: commit-graph.c:581
@@ -2183,191 +2175,183 @@ msgstr ""
 msgid "could not find commit %s"
 msgstr "không thể tìm thấy lần chuyển giao %s"
 
-#: commit-graph.c:1042 builtin/am.c:1306
+#: commit-graph.c:1036 builtin/am.c:1292
 #, c-format
 msgid "unable to parse commit %s"
 msgstr "không thể phân tích lần chuyển giao “%s”"
 
-#: commit-graph.c:1265 builtin/pack-objects.c:2864
+#: commit-graph.c:1252 builtin/pack-objects.c:2864
 #, c-format
 msgid "unable to get type of object %s"
 msgstr "không thể lấy kiểu của đối tượng “%s”"
 
-#: commit-graph.c:1301
+#: commit-graph.c:1283
 msgid "Loading known commits in commit graph"
 msgstr "Đang tải các lần chuyển giao chưa biết trong đồ thị lần chuyển giao"
 
-#: commit-graph.c:1318
+#: commit-graph.c:1300
 msgid "Expanding reachable commits in commit graph"
 msgstr ""
 "Mở rộng các lần chuyển giao có thể tiếp cận được trong trong đồ thị lần "
 "chuyển giao"
 
-#: commit-graph.c:1338
+#: commit-graph.c:1320
 msgid "Clearing commit marks in commit graph"
 msgstr "Đang dọn dẹp các đánh dấu lần chuyển giao trong đồ thị lần chuyển giao"
 
-#: commit-graph.c:1357
+#: commit-graph.c:1339
 msgid "Computing commit graph generation numbers"
 msgstr "Đang tính toán số tạo đồ thị các lần chuyển giao"
 
-#: commit-graph.c:1424
+#: commit-graph.c:1406
 msgid "Computing commit changed paths Bloom filters"
 msgstr "Đang tính toán chuyển giao các bộ lọc Bloom đường dẫn bị thay đổi"
 
-#: commit-graph.c:1501
+#: commit-graph.c:1483
 msgid "Collecting referenced commits"
 msgstr "Đang sưu tập các lần chuyển giao được tham chiếu"
 
-#: commit-graph.c:1526
+#: commit-graph.c:1508
 #, c-format
 msgid "Finding commits for commit graph in %d pack"
 msgid_plural "Finding commits for commit graph in %d packs"
 msgstr[0] ""
 "Đang tìm các lần chuyển giao cho đồ thị lần chuyển giao trong %d gói"
 
-#: commit-graph.c:1539
+#: commit-graph.c:1521
 #, c-format
 msgid "error adding pack %s"
 msgstr "gặp lỗi thêm gói %s"
 
-#: commit-graph.c:1543
+#: commit-graph.c:1525
 #, c-format
 msgid "error opening index for %s"
 msgstr "gặp lỗi khi mở mục lục cho “%s”"
 
-#: commit-graph.c:1582
+#: commit-graph.c:1562
 msgid "Finding commits for commit graph among packed objects"
 msgstr ""
 "Đang tìm các lần chuyển giao cho đồ thị lần chuyển giao trong số các đối "
 "tượng đã đóng gói"
 
-#: commit-graph.c:1597
-msgid "Counting distinct commits in commit graph"
-msgstr "Đang đếm các lần chuyển giao khác nhau trong đồ thị lần chuyển giao"
-
-#: commit-graph.c:1629
+#: commit-graph.c:1580
 msgid "Finding extra edges in commit graph"
 msgstr "Đang tìm các cạnh mở tộng trong đồ thị lần chuyển giao"
 
-#: commit-graph.c:1678
+#: commit-graph.c:1628
 msgid "failed to write correct number of base graph ids"
 msgstr "gặp lỗi khi ghi số đúng của mã đồ họa cơ sở"
 
-#: commit-graph.c:1720 midx.c:826
+#: commit-graph.c:1670 midx.c:819
 #, c-format
 msgid "unable to create leading directories of %s"
 msgstr "không thể tạo các thư mục dẫn đầu của “%s”"
 
-#: commit-graph.c:1733
+#: commit-graph.c:1683
 msgid "unable to create temporary graph layer"
 msgstr "không thể tạo lớp sơ đồ tạm thời"
 
-#: commit-graph.c:1738
+#: commit-graph.c:1688
 #, c-format
 msgid "unable to adjust shared permissions for '%s'"
 msgstr "không thể chỉnh sửa quyền chia sẻ thành “%s”"
 
-#: commit-graph.c:1808
+#: commit-graph.c:1758
 #, c-format
 msgid "Writing out commit graph in %d pass"
 msgid_plural "Writing out commit graph in %d passes"
 msgstr[0] "Đang ghi ra đồ thị các lần chuyển giao trong lần %d"
 
-#: commit-graph.c:1853
+#: commit-graph.c:1803
 msgid "unable to open commit-graph chain file"
 msgstr "không thể mở tập tin mắt xích đồ thị chuyển giao"
 
-#: commit-graph.c:1869
+#: commit-graph.c:1819
 msgid "failed to rename base commit-graph file"
 msgstr "gặp lỗi khi đổi tên tập tin đồ-thị-các-lần-chuyển-giao"
 
-#: commit-graph.c:1889
+#: commit-graph.c:1839
 msgid "failed to rename temporary commit-graph file"
 msgstr "gặp lỗi khi đổi tên tập tin đồ-thị-các-lần-chuyển-giao tạm thời"
 
-#: commit-graph.c:2015
+#: commit-graph.c:1965
 msgid "Scanning merged commits"
 msgstr "Đang quét các lần chuyển giao đã hòa trộn"
 
-#: commit-graph.c:2026
-#, c-format
-msgid "unexpected duplicate commit id %s"
-msgstr "gặp mã số tích lần chuyển giao bị trùng lặp “%s”"
-
-#: commit-graph.c:2049
+#: commit-graph.c:2009
 msgid "Merging commit-graph"
 msgstr "Đang hòa trộn đồ-thị-các-lần-chuyển-giao"
 
-#: commit-graph.c:2259
-#, c-format
-msgid "the commit graph format cannot write %d commits"
-msgstr "định dạng đồ họa các lần chuyển giao không thể ghi %d lần chuyển giao"
+#: commit-graph.c:2115
+msgid "attempting to write a commit-graph, but 'core.commitGraph' is disabled"
+msgstr ""
+"cố gắng để ghi một đồ thị các lần chuyển giao, nhưng “core.commitGraph” bị "
+"vô hiệu hóa"
 
-#: commit-graph.c:2270
+#: commit-graph.c:2214
 msgid "too many commits to write graph"
 msgstr "có quá nhiều lần chuyển giao để ghi đồ thị"
 
-#: commit-graph.c:2363
+#: commit-graph.c:2307
 msgid "the commit-graph file has incorrect checksum and is likely corrupt"
 msgstr ""
 "tập tin đồ-thị-các-lần-chuyển-giao có tổng kiểm không đúng và có vẻ như là "
 "đã hỏng"
 
-#: commit-graph.c:2373
+#: commit-graph.c:2317
 #, c-format
 msgid "commit-graph has incorrect OID order: %s then %s"
 msgstr "đồ-thị-các-lần-chuyển-giao có thứ tự OID không đúng: %s sau %s"
 
-#: commit-graph.c:2383 commit-graph.c:2398
+#: commit-graph.c:2327 commit-graph.c:2342
 #, c-format
 msgid "commit-graph has incorrect fanout value: fanout[%d] = %u != %u"
 msgstr ""
 "đồ-thị-các-lần-chuyển-giao có giá trị fanout không đúng: fanout[%d] = %u != "
 "%u"
 
-#: commit-graph.c:2390
+#: commit-graph.c:2334
 #, c-format
 msgid "failed to parse commit %s from commit-graph"
 msgstr "gặp lỗi khi phân tích lần chuyển giao từ %s đồ-thị-các-lần-chuyển-giao"
 
-#: commit-graph.c:2408
+#: commit-graph.c:2352
 msgid "Verifying commits in commit graph"
 msgstr "Đang thẩm tra các lần chuyển giao trong đồ thị lần chuyển giao"
 
-#: commit-graph.c:2423
+#: commit-graph.c:2367
 #, c-format
 msgid "failed to parse commit %s from object database for commit-graph"
 msgstr ""
 "gặp lỗi khi phân tích lần chuyển giao %s từ cơ sở dữ liệu đối tượng cho đồ "
 "thị lần chuyển giao"
 
-#: commit-graph.c:2430
+#: commit-graph.c:2374
 #, c-format
 msgid "root tree OID for commit %s in commit-graph is %s != %s"
 msgstr ""
 "OID cây gốc cho lần chuyển giao %s trong đồ-thị-các-lần-chuyển-giao là %s != "
 "%s"
 
-#: commit-graph.c:2440
+#: commit-graph.c:2384
 #, c-format
 msgid "commit-graph parent list for commit %s is too long"
 msgstr ""
 "danh sách cha mẹ đồ-thị-các-lần-chuyển-giao cho lần chuyển giao %s là quá dài"
 
-#: commit-graph.c:2449
+#: commit-graph.c:2393
 #, c-format
 msgid "commit-graph parent for %s is %s != %s"
 msgstr "cha mẹ đồ-thị-các-lần-chuyển-giao cho %s là %s != %s"
 
-#: commit-graph.c:2463
+#: commit-graph.c:2407
 #, c-format
 msgid "commit-graph parent list for commit %s terminates early"
 msgstr ""
 "danh sách cha mẹ đồ-thị-các-lần-chuyển-giao cho lần chuyển giao %s bị chấm "
 "dứt quá sớm"
 
-#: commit-graph.c:2468
+#: commit-graph.c:2412
 #, c-format
 msgid ""
 "commit-graph has generation number zero for commit %s, but non-zero elsewhere"
@@ -2375,7 +2359,7 @@ msgstr ""
 "đồ-thị-các-lần-chuyển-giao có con số không lần tạo cho lần chuyển giao %s, "
 "nhưng không phải số không ở chỗ khác"
 
-#: commit-graph.c:2472
+#: commit-graph.c:2416
 #, c-format
 msgid ""
 "commit-graph has non-zero generation number for commit %s, but zero elsewhere"
@@ -2383,20 +2367,20 @@ msgstr ""
 "đồ-thị-các-lần-chuyển-giao có con số không phải không lần tạo cho lần chuyển "
 "giao %s, nhưng số không ở chỗ khác"
 
-#: commit-graph.c:2488
+#: commit-graph.c:2432
 #, c-format
 msgid "commit-graph generation for commit %s is %u != %u"
 msgstr "tạo đồ-thị-các-lần-chuyển-giao cho lần chuyển giao %s là %u != %u"
 
-#: commit-graph.c:2494
+#: commit-graph.c:2438
 #, c-format
 msgid "commit date for commit %s in commit-graph is %<PRIuMAX> != %<PRIuMAX>"
 msgstr ""
 "ngày chuyển giao cho lần chuyển giao %s trong đồ-thị-các-lần-chuyển-giao là "
 "%<PRIuMAX> != %<PRIuMAX>"
 
-#: commit.c:52 sequencer.c:2845 builtin/am.c:373 builtin/am.c:417
-#: builtin/am.c:1385 builtin/am.c:2031 builtin/replace.c:457
+#: commit.c:52 sequencer.c:2879 builtin/am.c:359 builtin/am.c:403
+#: builtin/am.c:1371 builtin/am.c:2018 builtin/replace.c:457
 #, c-format
 msgid "could not parse %s"
 msgstr "không thể phân tích cú pháp %s"
@@ -2499,7 +2483,7 @@ msgstr "khóa không chứa một phần: %s"
 msgid "key does not contain variable name: %s"
 msgstr "khóa không chứa bất kỳ một tên biến nào: %s"
 
-#: config.c:408 sequencer.c:2547
+#: config.c:408 sequencer.c:2580
 #, c-format
 msgid "invalid key: %s"
 msgstr "khóa không đúng: %s"
@@ -2690,77 +2674,77 @@ msgstr "không thể phân tích “%s” từ cấu hình dòng lệnh"
 msgid "bad config variable '%s' in file '%s' at line %d"
 msgstr "sai biến cấu hình “%s” trong tập tin “%s” tại dòng %d"
 
-#: config.c:2470
+#: config.c:2473
 #, c-format
 msgid "invalid section name '%s'"
 msgstr "tên của phần không hợp lệ “%s”"
 
-#: config.c:2502
+#: config.c:2505
 #, c-format
 msgid "%s has multiple values"
 msgstr "%s có đa giá trị"
 
-#: config.c:2531
+#: config.c:2534
 #, c-format
 msgid "failed to write new configuration file %s"
 msgstr "gặp lỗi khi ghi tập tin cấu hình “%s”"
 
-#: config.c:2783 config.c:3107
+#: config.c:2786 config.c:3112
 #, c-format
 msgid "could not lock config file %s"
 msgstr "không thể khóa tập tin cấu hình %s"
 
-#: config.c:2794
+#: config.c:2797
 #, c-format
 msgid "opening %s"
 msgstr "đang mở “%s”"
 
-#: config.c:2829 builtin/config.c:354
+#: config.c:2834 builtin/config.c:361
 #, c-format
 msgid "invalid pattern: %s"
 msgstr "mẫu không hợp lệ: %s"
 
-#: config.c:2854
+#: config.c:2859
 #, c-format
 msgid "invalid config file %s"
 msgstr "tập tin cấu hình “%s” không hợp lệ"
 
-#: config.c:2867 config.c:3120
+#: config.c:2872 config.c:3125
 #, c-format
 msgid "fstat on %s failed"
 msgstr "fstat trên %s gặp lỗi"
 
-#: config.c:2878
+#: config.c:2883
 #, c-format
 msgid "unable to mmap '%s'"
 msgstr "không thể mmap “%s”"
 
-#: config.c:2887 config.c:3125
+#: config.c:2892 config.c:3130
 #, c-format
 msgid "chmod on %s failed"
 msgstr "chmod trên %s gặp lỗi"
 
-#: config.c:2972 config.c:3222
+#: config.c:2977 config.c:3227
 #, c-format
 msgid "could not write config file %s"
 msgstr "không thể ghi tập tin cấu hình “%s”"
 
-#: config.c:3006
+#: config.c:3011
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr "không thể đặt “%s” thành “%s”"
 
-#: config.c:3008 builtin/remote.c:656 builtin/remote.c:850 builtin/remote.c:858
+#: config.c:3013 builtin/remote.c:657 builtin/remote.c:855 builtin/remote.c:863
 #, c-format
 msgid "could not unset '%s'"
 msgstr "không thể thôi đặt “%s”"
 
-#: config.c:3098
+#: config.c:3103
 #, c-format
 msgid "invalid section name: %s"
 msgstr "tên của phần không hợp lệ: %s"
 
-#: config.c:3265
+#: config.c:3270
 #, c-format
 msgid "missing value for '%s'"
 msgstr "thiếu giá trị cho cho “%s”"
@@ -2825,7 +2809,7 @@ msgstr "lỗi giao thức: không cần “%s”"
 #: connect.c:473
 #, c-format
 msgid "unknown object format '%s' specified by server"
-msgstr "không hiểu định dạng đối tượng '%s' được chỉ định bởi máy phục vụ"
+msgstr "không hiểu định dạng đối tượng “%s” được chỉ định bởi máy phục vụ"
 
 #: connect.c:500
 #, c-format
@@ -3188,6 +3172,26 @@ msgstr ""
 msgid "Marked %d islands, done.\n"
 msgstr "Đã đánh dấu %d island, xong.\n"
 
+#: diff-lib.c:534
+msgid "--merge-base does not work with ranges"
+msgstr "--merge-base không hoạt động với phạm vi"
+
+#: diff-lib.c:536
+msgid "--merge-base only works with commits"
+msgstr "--merge-base chỉ hoạt động với các lần chuyển giao"
+
+#: diff-lib.c:553
+msgid "unable to get HEAD"
+msgstr "không thể lấy HEAD"
+
+#: diff-lib.c:560
+msgid "no merge base found"
+msgstr "không tìm thấy cơ sở để hòa trộn"
+
+#: diff-lib.c:562
+msgid "multiple merge bases found"
+msgstr "có nhiều cơ sở để hòa trộn"
+
 #: diff-no-index.c:238
 msgid "git diff --no-index [<options>] <path> <path>"
 msgstr "git diff --no-index [<các tùy chọn>] </đường/dẫn> </đường/dẫn>"
@@ -3250,35 +3254,35 @@ msgstr ""
 "Tìm thấy các lỗi trong biến cấu hình “diff.dirstat”:\n"
 "%s"
 
-#: diff.c:4269
+#: diff.c:4276
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr "phần mềm diff ở bên ngoài đã chết, dừng tại %s"
 
-#: diff.c:4618
+#: diff.c:4625
 msgid "--name-only, --name-status, --check and -s are mutually exclusive"
 msgstr "--name-only, --name-status, --check và -s loại từ lẫn nhau"
 
-#: diff.c:4621
+#: diff.c:4628
 msgid "-G, -S and --find-object are mutually exclusive"
 msgstr "Các tùy chọn -G, -S, và --find-object loại từ lẫn nhau"
 
-#: diff.c:4699
+#: diff.c:4707
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow cần chính xác một đặc tả đường dẫn"
 
-#: diff.c:4747
+#: diff.c:4755
 #, c-format
 msgid "invalid --stat value: %s"
 msgstr "giá trị --stat không hợp lệ: “%s”"
 
-#: diff.c:4752 diff.c:4757 diff.c:4762 diff.c:4767 diff.c:5279
+#: diff.c:4760 diff.c:4765 diff.c:4770 diff.c:4775 diff.c:5303
 #: parse-options.c:197 parse-options.c:201 builtin/commit-graph.c:180
 #, c-format
 msgid "%s expects a numerical value"
 msgstr "tùy chọn “%s” cần một giá trị bằng số"
 
-#: diff.c:4784
+#: diff.c:4792
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -3287,42 +3291,42 @@ msgstr ""
 "Gặp lỗi khi phân tích đối số tùy chọn --dirstat/-X:\n"
 "%s"
 
-#: diff.c:4869
+#: diff.c:4877
 #, c-format
 msgid "unknown change class '%c' in --diff-filter=%s"
 msgstr "không hiểu lớp thay đổi “%c” trong --diff-filter=%s"
 
-#: diff.c:4893
+#: diff.c:4901
 #, c-format
 msgid "unknown value after ws-error-highlight=%.*s"
 msgstr "không hiểu giá trị sau ws-error-highlight=%.*s"
 
-#: diff.c:4907
+#: diff.c:4915
 #, c-format
 msgid "unable to resolve '%s'"
 msgstr "không thể phân giải “%s”"
 
-#: diff.c:4957 diff.c:4963
+#: diff.c:4965 diff.c:4971
 #, c-format
 msgid "%s expects <n>/<m> form"
 msgstr "%s cần dạng <n>/<m>"
 
-#: diff.c:4975
+#: diff.c:4983
 #, c-format
 msgid "%s expects a character, got '%s'"
 msgstr "%s cần một ký tự, nhưng lại nhận được “%s”"
 
-#: diff.c:4996
+#: diff.c:5004
 #, c-format
 msgid "bad --color-moved argument: %s"
 msgstr "đối số --color-moved sai: %s"
 
-#: diff.c:5015
+#: diff.c:5023
 #, c-format
 msgid "invalid mode '%s' in --color-moved-ws"
 msgstr "chế độ “%s” không hợp lệ trong --color-moved-ws"
 
-#: diff.c:5055
+#: diff.c:5063
 msgid ""
 "option diff-algorithm accepts \"myers\", \"minimal\", \"patience\" and "
 "\"histogram\""
@@ -3330,150 +3334,155 @@ msgstr ""
 "tùy chọn  diff-algorithm chấp nhận \"myers\", \"minimal\", \"patience\" và "
 "\"histogram\""
 
-#: diff.c:5091 diff.c:5111
+#: diff.c:5099 diff.c:5119
 #, c-format
 msgid "invalid argument to %s"
 msgstr "tham số cho %s không hợp lệ"
 
-#: diff.c:5248
+#: diff.c:5223
+#, c-format
+msgid "invalid regex given to -I: '%s'"
+msgstr "đưa cho -I biểu thức chính quy không hợp lệ: “%s”"
+
+#: diff.c:5272
 #, c-format
 msgid "failed to parse --submodule option parameter: '%s'"
 msgstr "gặp lỗi khi phân tích đối số tùy chọn --submodule: “%s”"
 
-#: diff.c:5304
+#: diff.c:5328
 #, c-format
 msgid "bad --word-diff argument: %s"
 msgstr "đối số --word-diff sai: %s"
 
-#: diff.c:5327
+#: diff.c:5351
 msgid "Diff output format options"
 msgstr "Các tùy chọn định dạng khi xuất các khác biệt"
 
-#: diff.c:5329 diff.c:5335
+#: diff.c:5353 diff.c:5359
 msgid "generate patch"
 msgstr "tạo miếng vá"
 
-#: diff.c:5332 builtin/log.c:176
+#: diff.c:5356 builtin/log.c:178
 msgid "suppress diff output"
 msgstr "chặn mọi kết xuất từ diff"
 
-#: diff.c:5337 diff.c:5451 diff.c:5458
+#: diff.c:5361 diff.c:5475 diff.c:5482
 msgid "<n>"
 msgstr "<n>"
 
-#: diff.c:5338 diff.c:5341
+#: diff.c:5362 diff.c:5365
 msgid "generate diffs with <n> lines context"
 msgstr "tạo khác biệt với <n> dòng ngữ cảnh"
 
-#: diff.c:5343
+#: diff.c:5367
 msgid "generate the diff in raw format"
 msgstr "tạo khác biệt ở định dạng thô"
 
-#: diff.c:5346
+#: diff.c:5370
 msgid "synonym for '-p --raw'"
 msgstr "đồng nghĩa với “-p --raw”"
 
-#: diff.c:5350
+#: diff.c:5374
 msgid "synonym for '-p --stat'"
 msgstr "đồng nghĩa với “-p --stat”"
 
-#: diff.c:5354
+#: diff.c:5378
 msgid "machine friendly --stat"
 msgstr "--stat thuận tiện cho máy đọc"
 
-#: diff.c:5357
+#: diff.c:5381
 msgid "output only the last line of --stat"
 msgstr "chỉ xuất những dòng cuối của --stat"
 
-#: diff.c:5359 diff.c:5367
+#: diff.c:5383 diff.c:5391
 msgid "<param1,param2>..."
 msgstr "<tham_số_1,tham_số_2>…"
 
-#: diff.c:5360
+#: diff.c:5384
 msgid ""
 "output the distribution of relative amount of changes for each sub-directory"
 msgstr "đầu ra phân phối của số lượng thay đổi tương đối cho mỗi thư mục con"
 
-#: diff.c:5364
+#: diff.c:5388
 msgid "synonym for --dirstat=cumulative"
 msgstr "đồng nghĩa với --dirstat=cumulative"
 
-#: diff.c:5368
+#: diff.c:5392
 msgid "synonym for --dirstat=files,param1,param2..."
 msgstr "đồng nghĩa với --dirstat=files,param1,param2…"
 
-#: diff.c:5372
+#: diff.c:5396
 msgid "warn if changes introduce conflict markers or whitespace errors"
 msgstr ""
 "cảnh báo nếu các thay đổi đưa ra các bộ tạo xung đột hay lỗi khoảng trắng"
 
-#: diff.c:5375
+#: diff.c:5399
 msgid "condensed summary such as creations, renames and mode changes"
 msgstr "tổng hợp dạng xúc tích như là tạo, đổi tên và các thay đổi chế độ"
 
-#: diff.c:5378
+#: diff.c:5402
 msgid "show only names of changed files"
 msgstr "chỉ hiển thị tên của các tập tin đổi"
 
-#: diff.c:5381
+#: diff.c:5405
 msgid "show only names and status of changed files"
 msgstr "chỉ hiển thị tên tập tin và tình trạng của các tập tin bị thay đổi"
 
-#: diff.c:5383
+#: diff.c:5407
 msgid "<width>[,<name-width>[,<count>]]"
 msgstr "<rộng>[,<name-width>[,<số-lượng>]]"
 
-#: diff.c:5384
+#: diff.c:5408
 msgid "generate diffstat"
 msgstr "tạo diffstat"
 
-#: diff.c:5386 diff.c:5389 diff.c:5392
+#: diff.c:5410 diff.c:5413 diff.c:5416
 msgid "<width>"
 msgstr "<rộng>"
 
-#: diff.c:5387
+#: diff.c:5411
 msgid "generate diffstat with a given width"
 msgstr "tạo diffstat với độ rộng đã cho"
 
-#: diff.c:5390
+#: diff.c:5414
 msgid "generate diffstat with a given name width"
 msgstr "tạo diffstat với tên độ rộng đã cho"
 
-#: diff.c:5393
+#: diff.c:5417
 msgid "generate diffstat with a given graph width"
 msgstr "tạo diffstat với độ rộng đồ thị đã cho"
 
-#: diff.c:5395
+#: diff.c:5419
 msgid "<count>"
 msgstr "<số_lượng>"
 
-#: diff.c:5396
+#: diff.c:5420
 msgid "generate diffstat with limited lines"
 msgstr "tạo diffstat với các dòng bị giới hạn"
 
-#: diff.c:5399
+#: diff.c:5423
 msgid "generate compact summary in diffstat"
 msgstr "tạo tổng hợp xúc tích trong diffstat"
 
-#: diff.c:5402
+#: diff.c:5426
 msgid "output a binary diff that can be applied"
 msgstr "xuất ra một khác biệt dạng nhị phân cái mà có thể được áp dụng"
 
-#: diff.c:5405
+#: diff.c:5429
 msgid "show full pre- and post-image object names on the \"index\" lines"
 msgstr ""
 "hiển thị đầy đủ các tên đối tượng pre- và post-image trên các dòng \"mục lục"
 "\""
 
-#: diff.c:5407
+#: diff.c:5431
 msgid "show colored diff"
 msgstr "hiển thị thay đổi được tô màu"
 
-#: diff.c:5408
+#: diff.c:5432
 msgid "<kind>"
 msgstr "<kiểu>"
 
-#: diff.c:5409
+#: diff.c:5433
 msgid ""
 "highlight whitespace errors in the 'context', 'old' or 'new' lines in the "
 "diff"
@@ -3481,7 +3490,7 @@ msgstr ""
 "tô sáng các lỗi về khoảng trắng trong các dòng “context”, “old” và “new” "
 "trong khác biệt"
 
-#: diff.c:5412
+#: diff.c:5436
 msgid ""
 "do not munge pathnames and use NULs as output field terminators in --raw or "
 "--numstat"
@@ -3489,89 +3498,89 @@ msgstr ""
 "không munge tên đường dẫn và sử dụng NUL làm bộ phân tách trường đầu ra "
 "trong --raw hay --numstat"
 
-#: diff.c:5415 diff.c:5418 diff.c:5421 diff.c:5527
+#: diff.c:5439 diff.c:5442 diff.c:5445 diff.c:5554
 msgid "<prefix>"
 msgstr "<tiền_tố>"
 
-#: diff.c:5416
+#: diff.c:5440
 msgid "show the given source prefix instead of \"a/\""
 msgstr "hiển thị tiền tố nguồn đã cho thay cho \"a/\""
 
-#: diff.c:5419
+#: diff.c:5443
 msgid "show the given destination prefix instead of \"b/\""
 msgstr "hiển thị tiền tố đích đã cho thay cho \"b/\""
 
-#: diff.c:5422
+#: diff.c:5446
 msgid "prepend an additional prefix to every line of output"
 msgstr "treo vào trước một tiền tố bổ sung cho mỗi dòng kết xuất"
 
-#: diff.c:5425
+#: diff.c:5449
 msgid "do not show any source or destination prefix"
 msgstr "đừng hiển thị bất kỳ tiền tố nguồn hay đích"
 
-#: diff.c:5428
+#: diff.c:5452
 msgid "show context between diff hunks up to the specified number of lines"
 msgstr ""
 "hiển thị ngữ cảnh giữa các khúc khác biệt khi đạt đến số lượng dòng đã chỉ "
 "định"
 
-#: diff.c:5432 diff.c:5437 diff.c:5442
+#: diff.c:5456 diff.c:5461 diff.c:5466
 msgid "<char>"
 msgstr "<ký_tự>"
 
-#: diff.c:5433
+#: diff.c:5457
 msgid "specify the character to indicate a new line instead of '+'"
 msgstr "chỉ định một ký tự để biểu thị một dòng được thêm mới thay cho “+”"
 
-#: diff.c:5438
+#: diff.c:5462
 msgid "specify the character to indicate an old line instead of '-'"
 msgstr "chỉ định một ký tự để biểu thị một dòng đã cũ thay cho “-”"
 
-#: diff.c:5443
+#: diff.c:5467
 msgid "specify the character to indicate a context instead of ' '"
 msgstr "chỉ định một ký tự để biểu thị một ngữ cảnh thay cho “”"
 
-#: diff.c:5446
+#: diff.c:5470
 msgid "Diff rename options"
 msgstr "Tùy chọn khác biệt đổi tên"
 
-#: diff.c:5447
+#: diff.c:5471
 msgid "<n>[/<m>]"
 msgstr "<n>[/<m>]"
 
-#: diff.c:5448
+#: diff.c:5472
 msgid "break complete rewrite changes into pairs of delete and create"
 msgstr "ngắt các thay đổi ghi lại hoàn thiện thành cặp của xóa và tạo"
 
-#: diff.c:5452
+#: diff.c:5476
 msgid "detect renames"
 msgstr "dò tìm các tên thay đổi"
 
-#: diff.c:5456
+#: diff.c:5480
 msgid "omit the preimage for deletes"
 msgstr "bỏ qua preimage (tiền ảnh??) cho các việc xóa"
 
-#: diff.c:5459
+#: diff.c:5483
 msgid "detect copies"
 msgstr "dò bản sao"
 
-#: diff.c:5463
+#: diff.c:5487
 msgid "use unmodified files as source to find copies"
 msgstr "dùng các tập tin không bị chỉnh sửa như là nguồn để tìm các bản sao"
 
-#: diff.c:5465
+#: diff.c:5489
 msgid "disable rename detection"
 msgstr "tắt dò tìm đổi tên"
 
-#: diff.c:5468
+#: diff.c:5492
 msgid "use empty blobs as rename source"
 msgstr "dùng các blob trống rống như là nguồn đổi tên"
 
-#: diff.c:5470
+#: diff.c:5494
 msgid "continue listing the history of a file beyond renames"
 msgstr "tiếp tục liệt kê lịch sử của một tập tin ngoài đổi tên"
 
-#: diff.c:5473
+#: diff.c:5497
 msgid ""
 "prevent rename/copy detection if the number of rename/copy targets exceeds "
 "given limit"
@@ -3579,156 +3588,160 @@ msgstr ""
 "ngăn cản dò tìm đổi tên/bản sao nếu số lượng của đích đổi tên/bản sao vượt "
 "quá giới hạn đưa ra"
 
-#: diff.c:5475
+#: diff.c:5499
 msgid "Diff algorithm options"
 msgstr "Tùy chọn thuật toán khác biệt"
 
-#: diff.c:5477
+#: diff.c:5501
 msgid "produce the smallest possible diff"
 msgstr "sản sinh khác biệt ít nhất có thể"
 
-#: diff.c:5480
+#: diff.c:5504
 msgid "ignore whitespace when comparing lines"
 msgstr "lờ đi sự thay đổi do khoảng trắng gây ra khi so sánh các dòng"
 
-#: diff.c:5483
+#: diff.c:5507
 msgid "ignore changes in amount of whitespace"
 msgstr "lờ đi sự thay đổi do số lượng khoảng trắng gây ra"
 
-#: diff.c:5486
+#: diff.c:5510
 msgid "ignore changes in whitespace at EOL"
 msgstr "lờ đi sự thay đổi do khoảng trắng gây ra khi ở cuối dòng EOL"
 
-#: diff.c:5489
+#: diff.c:5513
 msgid "ignore carrier-return at the end of line"
 msgstr "bỏ qua ký tự về đầu dòng tại cuối dòng"
 
-#: diff.c:5492
+#: diff.c:5516
 msgid "ignore changes whose lines are all blank"
 msgstr "bỏ qua các thay đổi cho toàn bộ các dòng là trống"
 
-#: diff.c:5495
+#: diff.c:5518 diff.c:5540 diff.c:5543 diff.c:5588
+msgid "<regex>"
+msgstr "<regex>"
+
+#: diff.c:5519
+msgid "ignore changes whose all lines match <regex>"
+msgstr "bỏ qua các thay đổi có tất cả các dòng khớp <regex>"
+
+#: diff.c:5522
 msgid "heuristic to shift diff hunk boundaries for easy reading"
 msgstr "heuristic để dịch hạn biên của khối khác biệt cho dễ đọc"
 
-#: diff.c:5498
+#: diff.c:5525
 msgid "generate diff using the \"patience diff\" algorithm"
 msgstr "tạo khác biệt sử dung thuật toán \"patience diff\""
 
-#: diff.c:5502
+#: diff.c:5529
 msgid "generate diff using the \"histogram diff\" algorithm"
 msgstr "tạo khác biệt sử dung thuật toán \"histogram diff\""
 
-#: diff.c:5504
+#: diff.c:5531
 msgid "<algorithm>"
 msgstr "<thuật toán>"
 
-#: diff.c:5505
+#: diff.c:5532
 msgid "choose a diff algorithm"
 msgstr "chọn một thuật toán khác biệt"
 
-#: diff.c:5507
+#: diff.c:5534
 msgid "<text>"
 msgstr "<văn bản>"
 
-#: diff.c:5508
+#: diff.c:5535
 msgid "generate diff using the \"anchored diff\" algorithm"
 msgstr "tạo khác biệt sử dung thuật toán \"anchored diff\""
 
-#: diff.c:5510 diff.c:5519 diff.c:5522
+#: diff.c:5537 diff.c:5546 diff.c:5549
 msgid "<mode>"
 msgstr "<chế độ>"
 
-#: diff.c:5511
+#: diff.c:5538
 msgid "show word diff, using <mode> to delimit changed words"
 msgstr ""
 "hiển thị khác biệt từ, sử dụng <chế độ> để bỏ giới hạn các từ bị thay đổi"
 
-#: diff.c:5513 diff.c:5516 diff.c:5561
-msgid "<regex>"
-msgstr "<regex>"
-
-#: diff.c:5514
+#: diff.c:5541
 msgid "use <regex> to decide what a word is"
 msgstr "dùng <regex> để quyết định từ là cái gì"
 
-#: diff.c:5517
+#: diff.c:5544
 msgid "equivalent to --word-diff=color --word-diff-regex=<regex>"
 msgstr "tương đương với --word-diff=color --word-diff-regex=<regex>"
 
-#: diff.c:5520
+#: diff.c:5547
 msgid "moved lines of code are colored differently"
 msgstr "các dòng di chuyển của mã mà được tô màu khác nhau"
 
-#: diff.c:5523
+#: diff.c:5550
 msgid "how white spaces are ignored in --color-moved"
 msgstr "cách bỏ qua khoảng trắng trong --color-moved"
 
-#: diff.c:5526
+#: diff.c:5553
 msgid "Other diff options"
 msgstr "Các tùy chọn khác biệt khác"
 
-#: diff.c:5528
+#: diff.c:5555
 msgid "when run from subdir, exclude changes outside and show relative paths"
 msgstr ""
 "khi chạy từ thư mục con, thực thi các thay đổi bên ngoài và hiển thị các "
 "đường dẫn liên quan"
 
-#: diff.c:5532
+#: diff.c:5559
 msgid "treat all files as text"
 msgstr "coi mọi tập tin là dạng văn bản thường"
 
-#: diff.c:5534
+#: diff.c:5561
 msgid "swap two inputs, reverse the diff"
 msgstr "tráo đổi hai đầu vào, đảo ngược khác biệt"
 
-#: diff.c:5536
+#: diff.c:5563
 msgid "exit with 1 if there were differences, 0 otherwise"
 msgstr "thoát với mã 1 nếu không có khác biệt gì, 0 nếu ngược lại"
 
-#: diff.c:5538
+#: diff.c:5565
 msgid "disable all output of the program"
 msgstr "tắt mọi kết xuất của chương trình"
 
-#: diff.c:5540
+#: diff.c:5567
 msgid "allow an external diff helper to be executed"
 msgstr "cho phép mộ bộ hỗ trợ xuất khác biệt ở bên ngoài được phép thực thi"
 
-#: diff.c:5542
+#: diff.c:5569
 msgid "run external text conversion filters when comparing binary files"
 msgstr ""
 "chạy các bộ lọc văn bản thông thường bên ngoài khi so sánh các tập tin nhị "
 "phân"
 
-#: diff.c:5544
+#: diff.c:5571
 msgid "<when>"
 msgstr "<khi>"
 
-#: diff.c:5545
+#: diff.c:5572
 msgid "ignore changes to submodules in the diff generation"
 msgstr "bỏ qua các thay đổi trong mô-đun-con trong khi tạo khác biệt"
 
-#: diff.c:5548
+#: diff.c:5575
 msgid "<format>"
 msgstr "<định dạng>"
 
-#: diff.c:5549
+#: diff.c:5576
 msgid "specify how differences in submodules are shown"
 msgstr "chi định khác biệt bao nhiêu trong các mô đun con được hiển thị"
 
-#: diff.c:5553
+#: diff.c:5580
 msgid "hide 'git add -N' entries from the index"
 msgstr "ẩn các mục “git add -N” từ bảng mục lục"
 
-#: diff.c:5556
+#: diff.c:5583
 msgid "treat 'git add -N' entries as real in the index"
 msgstr "coi các mục “git add -N” như là có thật trong bảng mục lục"
 
-#: diff.c:5558
+#: diff.c:5585
 msgid "<string>"
 msgstr "<chuỗi>"
 
-#: diff.c:5559
+#: diff.c:5586
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "string"
@@ -3736,7 +3749,7 @@ msgstr ""
 "tìm các khác biệt cái mà thay đổi số lượng xảy ra của các phát sinh của "
 "chuỗi được chỉ ra"
 
-#: diff.c:5562
+#: diff.c:5589
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "regex"
@@ -3744,23 +3757,23 @@ msgstr ""
 "tìm các khác biệt cái mà thay đổi số lượng xảy ra của các phát sinh của biểu "
 "thức chính quy được chỉ ra"
 
-#: diff.c:5565
+#: diff.c:5592
 msgid "show all changes in the changeset with -S or -G"
 msgstr "hiển thị tất cả các thay đổi trong một bộ các thay đổi với -S hay -G"
 
-#: diff.c:5568
+#: diff.c:5595
 msgid "treat <string> in -S as extended POSIX regular expression"
 msgstr "coi <chuỗi> trong -S như là biểu thức chính qui POSIX có mở rộng"
 
-#: diff.c:5571
+#: diff.c:5598
 msgid "control the order in which files appear in the output"
 msgstr "điều khiển thứ tự xuát hiện các tập tin trong kết xuất"
 
-#: diff.c:5572
+#: diff.c:5599
 msgid "<object-id>"
 msgstr "<mã-số-đối-tượng>"
 
-#: diff.c:5573
+#: diff.c:5600
 msgid ""
 "look for differences that change the number of occurrences of the specified "
 "object"
@@ -3768,33 +3781,33 @@ msgstr ""
 "tìm các khác biệt cái mà thay đổi số lượng xảy ra của các phát sinh của đối "
 "tượng được chỉ ra"
 
-#: diff.c:5575
+#: diff.c:5602
 msgid "[(A|C|D|M|R|T|U|X|B)...[*]]"
 msgstr "[(A|C|D|M|R|T|U|X|B)…[*]]"
 
-#: diff.c:5576
+#: diff.c:5603
 msgid "select files by diff type"
 msgstr "chọn các tập tin theo kiểu khác biệt"
 
-#: diff.c:5578
+#: diff.c:5605
 msgid "<file>"
 msgstr "<tập_tin>"
 
-#: diff.c:5579
+#: diff.c:5606
 msgid "Output to a specific file"
 msgstr "Xuất ra một tập tin cụ thể"
 
-#: diff.c:6236
+#: diff.c:6263
 msgid "inexact rename detection was skipped due to too many files."
 msgstr ""
 "nhận thấy đổi tên không chính xác đã bị bỏ qua bởi có quá nhiều tập tin."
 
-#: diff.c:6239
+#: diff.c:6266
 msgid "only found copies from modified paths due to too many files."
 msgstr ""
 "chỉ tìm thấy các bản sao từ đường dẫn đã sửa đổi bởi vì có quá nhiều tập tin."
 
-#: diff.c:6242
+#: diff.c:6269
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
@@ -3829,7 +3842,7 @@ msgstr "mẫu âm không được thừa nhận: “%s”"
 #: dir.c:809
 #, c-format
 msgid "your sparse-checkout file may have issues: pattern '%s' is repeated"
-msgstr "tập tin sparse-checkout của bạn có lẽ gặp lỗi: mẫu '%s' đã bị lặp lại"
+msgstr "tập tin sparse-checkout của bạn có lẽ gặp lỗi: mẫu “%s” đã bị lặp lại"
 
 #: dir.c:819
 msgid "disabling cone pattern matching"
@@ -3897,245 +3910,245 @@ msgstr "không thể đặt GIT_DIR thành “%s”"
 msgid "too many args to run %s"
 msgstr "quá nhiều tham số để chạy %s"
 
-#: fetch-pack.c:176
+#: fetch-pack.c:177
 msgid "git fetch-pack: expected shallow list"
 msgstr "git fetch-pack: cần danh sách shallow"
 
-#: fetch-pack.c:179
+#: fetch-pack.c:180
 msgid "git fetch-pack: expected a flush packet after shallow list"
 msgstr "git fetch-pack: cần một gói đẩy sau danh sách shallow"
 
-#: fetch-pack.c:190
+#: fetch-pack.c:191
 msgid "git fetch-pack: expected ACK/NAK, got a flush packet"
 msgstr "git fetch-pack: cần ACK/NAK, nhưng lại nhận được một gói flush"
 
-#: fetch-pack.c:210
+#: fetch-pack.c:211
 #, c-format
 msgid "git fetch-pack: expected ACK/NAK, got '%s'"
 msgstr "git fetch-pack: cần ACK/NAK, nhưng lại nhận được “%s”"
 
-#: fetch-pack.c:221
+#: fetch-pack.c:222
 msgid "unable to write to remote"
 msgstr "không thể ghi lên máy phục vụ"
 
-#: fetch-pack.c:282
+#: fetch-pack.c:283
 msgid "--stateless-rpc requires multi_ack_detailed"
 msgstr "--stateless-rpc cần multi_ack_detailed"
 
-#: fetch-pack.c:375 fetch-pack.c:1397
+#: fetch-pack.c:378 fetch-pack.c:1406
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "dòng shallow không hợp lệ: %s"
 
-#: fetch-pack.c:381 fetch-pack.c:1403
+#: fetch-pack.c:384 fetch-pack.c:1412
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "dòng unshallow không hợp lệ: %s"
 
-#: fetch-pack.c:383 fetch-pack.c:1405
+#: fetch-pack.c:386 fetch-pack.c:1414
 #, c-format
 msgid "object not found: %s"
 msgstr "không tìm thấy đối tượng: %s"
 
-#: fetch-pack.c:386 fetch-pack.c:1408
+#: fetch-pack.c:389 fetch-pack.c:1417
 #, c-format
 msgid "error in object: %s"
 msgstr "lỗi trong đối tượng: %s"
 
-#: fetch-pack.c:388 fetch-pack.c:1410
+#: fetch-pack.c:391 fetch-pack.c:1419
 #, c-format
 msgid "no shallow found: %s"
 msgstr "không tìm shallow nào: %s"
 
-#: fetch-pack.c:391 fetch-pack.c:1414
+#: fetch-pack.c:394 fetch-pack.c:1423
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "cần shallow/unshallow, nhưng lại nhận được %s"
 
-#: fetch-pack.c:431
+#: fetch-pack.c:434
 #, c-format
 msgid "got %s %d %s"
 msgstr "nhận %s %d - %s"
 
-#: fetch-pack.c:448
+#: fetch-pack.c:451
 #, c-format
 msgid "invalid commit %s"
 msgstr "lần chuyển giao %s không hợp lệ"
 
-#: fetch-pack.c:479
+#: fetch-pack.c:482
 msgid "giving up"
 msgstr "chịu thua"
 
-#: fetch-pack.c:492 progress.c:339
+#: fetch-pack.c:495 progress.c:339
 msgid "done"
 msgstr "xong"
 
-#: fetch-pack.c:504
+#: fetch-pack.c:507
 #, c-format
 msgid "got %s (%d) %s"
 msgstr "nhận %s (%d) %s"
 
-#: fetch-pack.c:540
+#: fetch-pack.c:543
 #, c-format
 msgid "Marking %s as complete"
 msgstr "Đánh dấu %s là đã hoàn thành"
 
-#: fetch-pack.c:755
+#: fetch-pack.c:758
 #, c-format
 msgid "already have %s (%s)"
 msgstr "đã sẵn có %s (%s)"
 
-#: fetch-pack.c:824
+#: fetch-pack.c:827
 msgid "fetch-pack: unable to fork off sideband demultiplexer"
 msgstr "fetch-pack: không thể rẽ nhánh sideband demultiplexer"
 
-#: fetch-pack.c:832
+#: fetch-pack.c:835
 msgid "protocol error: bad pack header"
 msgstr "lỗi giao thức: phần đầu gói bị sai"
 
-#: fetch-pack.c:916
+#: fetch-pack.c:919
 #, c-format
 msgid "fetch-pack: unable to fork off %s"
 msgstr "fetch-pack: không thể rẽ nhánh %s"
 
-#: fetch-pack.c:933
+#: fetch-pack.c:937
 #, c-format
 msgid "%s failed"
 msgstr "%s gặp lỗi"
 
-#: fetch-pack.c:935
+#: fetch-pack.c:939
 msgid "error in sideband demultiplexer"
 msgstr "có lỗi trong sideband demultiplexer"
 
-#: fetch-pack.c:978
+#: fetch-pack.c:982
 #, c-format
 msgid "Server version is %.*s"
 msgstr "Phiên bản máy chủ là %.*s"
 
-#: fetch-pack.c:983 fetch-pack.c:989 fetch-pack.c:992 fetch-pack.c:998
-#: fetch-pack.c:1002 fetch-pack.c:1006 fetch-pack.c:1010 fetch-pack.c:1014
-#: fetch-pack.c:1018 fetch-pack.c:1022 fetch-pack.c:1026 fetch-pack.c:1030
-#: fetch-pack.c:1036 fetch-pack.c:1042 fetch-pack.c:1047 fetch-pack.c:1052
+#: fetch-pack.c:990 fetch-pack.c:996 fetch-pack.c:999 fetch-pack.c:1005
+#: fetch-pack.c:1009 fetch-pack.c:1013 fetch-pack.c:1017 fetch-pack.c:1021
+#: fetch-pack.c:1025 fetch-pack.c:1029 fetch-pack.c:1033 fetch-pack.c:1037
+#: fetch-pack.c:1043 fetch-pack.c:1049 fetch-pack.c:1054 fetch-pack.c:1059
 #, c-format
 msgid "Server supports %s"
 msgstr "Máy chủ hỗ trợ %s"
 
-#: fetch-pack.c:985
+#: fetch-pack.c:992
 msgid "Server does not support shallow clients"
 msgstr "Máy chủ không hỗ trợ máy khách shallow"
 
-#: fetch-pack.c:1045
+#: fetch-pack.c:1052
 msgid "Server does not support --shallow-since"
 msgstr "Máy chủ không hỗ trợ --shallow-since"
 
-#: fetch-pack.c:1050
+#: fetch-pack.c:1057
 msgid "Server does not support --shallow-exclude"
 msgstr "Máy chủ không hỗ trợ --shallow-exclude"
 
-#: fetch-pack.c:1054
+#: fetch-pack.c:1061
 msgid "Server does not support --deepen"
 msgstr "Máy chủ không hỗ trợ --deepen"
 
-#: fetch-pack.c:1056
+#: fetch-pack.c:1063
 msgid "Server does not support this repository's object format"
 msgstr "Máy chủ không hỗ trợ định dạng đối tượng của kho này"
 
-#: fetch-pack.c:1069
+#: fetch-pack.c:1076
 msgid "no common commits"
 msgstr "không có lần chuyển giao chung nào"
 
-#: fetch-pack.c:1081 fetch-pack.c:1619
+#: fetch-pack.c:1088 fetch-pack.c:1628
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack: fetch gặp lỗi."
 
-#: fetch-pack.c:1205
+#: fetch-pack.c:1214
 #, c-format
 msgid "mismatched algorithms: client %s; server %s"
 msgstr "các thuật toán không khớp nhau: máy khách %s; máy chủ %s"
 
-#: fetch-pack.c:1209
+#: fetch-pack.c:1218
 #, c-format
 msgid "the server does not support algorithm '%s'"
 msgstr "máy chủ không hỗ trợ thuật toán “%s”"
 
-#: fetch-pack.c:1229
+#: fetch-pack.c:1238
 msgid "Server does not support shallow requests"
 msgstr "Máy chủ không hỗ trợ yêu cầu shallow"
 
-#: fetch-pack.c:1236
+#: fetch-pack.c:1245
 msgid "Server supports filter"
 msgstr "Máy chủ hỗ trợ bộ lọc"
 
-#: fetch-pack.c:1275
+#: fetch-pack.c:1284
 msgid "unable to write request to remote"
 msgstr "không thể ghi các yêu cầu lên máy phục vụ"
 
-#: fetch-pack.c:1293
+#: fetch-pack.c:1302
 #, c-format
 msgid "error reading section header '%s'"
 msgstr "gặp lỗi khi đọc phần đầu của đoạn %s"
 
-#: fetch-pack.c:1299
+#: fetch-pack.c:1308
 #, c-format
 msgid "expected '%s', received '%s'"
 msgstr "cần “%s”, nhưng lại nhận “%s”"
 
-#: fetch-pack.c:1360
+#: fetch-pack.c:1369
 #, c-format
 msgid "unexpected acknowledgment line: '%s'"
 msgstr "gặp dòng không được thừa nhận: “%s”"
 
-#: fetch-pack.c:1365
+#: fetch-pack.c:1374
 #, c-format
 msgid "error processing acks: %d"
 msgstr "gặp lỗi khi xử lý tín hiệu trả lời: %d"
 
-#: fetch-pack.c:1375
+#: fetch-pack.c:1384
 msgid "expected packfile to be sent after 'ready'"
 msgstr "cần tập tin gói để gửi sau “ready”"
 
-#: fetch-pack.c:1377
+#: fetch-pack.c:1386
 msgid "expected no other sections to be sent after no 'ready'"
 msgstr "không cần thêm phần nào để gửi sau “ready”"
 
-#: fetch-pack.c:1419
+#: fetch-pack.c:1428
 #, c-format
 msgid "error processing shallow info: %d"
 msgstr "lỗi xử lý thông tin shallow: %d"
 
-#: fetch-pack.c:1466
+#: fetch-pack.c:1475
 #, c-format
 msgid "expected wanted-ref, got '%s'"
 msgstr "cần wanted-ref, nhưng lại nhận được “%s”"
 
-#: fetch-pack.c:1471
+#: fetch-pack.c:1480
 #, c-format
 msgid "unexpected wanted-ref: '%s'"
 msgstr "wanted-ref không được mong đợi: “%s”"
 
-#: fetch-pack.c:1476
+#: fetch-pack.c:1485
 #, c-format
 msgid "error processing wanted refs: %d"
 msgstr "lỗi khi xử lý wanted refs: %d"
 
-#: fetch-pack.c:1506
+#: fetch-pack.c:1515
 msgid "git fetch-pack: expected response end packet"
 msgstr "git fetch-pack: cần nhận được trả lời là kết thúc gói"
 
-#: fetch-pack.c:1887
+#: fetch-pack.c:1897
 msgid "no matching remote head"
 msgstr "không khớp phần đầu máy chủ"
 
-#: fetch-pack.c:1910 builtin/clone.c:692
+#: fetch-pack.c:1920 builtin/clone.c:693
 msgid "remote did not send all necessary objects"
 msgstr "máy chủ đã không gửi tất cả các đối tượng cần thiết"
 
-#: fetch-pack.c:1937
+#: fetch-pack.c:1947
 #, c-format
 msgid "no such remote ref %s"
 msgstr "không có máy chủ tham chiếu nào như %s"
 
-#: fetch-pack.c:1940
+#: fetch-pack.c:1950
 #, c-format
 msgid "Server does not allow request for unadvertised object %s"
 msgstr ""
@@ -4159,7 +4172,7 @@ msgstr "gpg gặp lỗi khi ký dữ liệu"
 msgid "ignore invalid color '%.*s' in log.graphColors"
 msgstr "bỏ qua màu không hợp lệ “%.*s” trong log.graphColors"
 
-#: grep.c:668
+#: grep.c:640
 msgid ""
 "given pattern contains NULL byte (via -f <file>). This is only supported "
 "with -P under PCRE v2"
@@ -4167,18 +4180,18 @@ msgstr ""
 "mẫu đã cho có chứa NULL byte (qua -f <file>). Điều này chỉ được hỗ trợ với -"
 "P dưới PCRE v2"
 
-#: grep.c:2128
+#: grep.c:2100
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr "“%s”: không thể đọc %s"
 
-#: grep.c:2145 setup.c:176 builtin/clone.c:411 builtin/diff.c:89
+#: grep.c:2117 setup.c:176 builtin/clone.c:412 builtin/diff.c:89
 #: builtin/rm.c:135
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "gặp lỗi khi lấy thống kê về “%s”"
 
-#: grep.c:2156
+#: grep.c:2128
 #, c-format
 msgid "'%s': short read"
 msgstr "“%s”: đọc ngắn"
@@ -4269,7 +4282,7 @@ msgstr "Các lệnh bên ngoài"
 msgid "Command aliases"
 msgstr "Các bí danh lệnh"
 
-#: help.c:513
+#: help.c:527
 #, c-format
 msgid ""
 "'%s' appears to be a git command, but we were not\n"
@@ -4278,31 +4291,31 @@ msgstr ""
 "“%s” trông như là một lệnh git, nhưng chúng tôi không\n"
 "thể thực thi nó. Có lẽ là lệnh git-%s đã bị hỏng?"
 
-#: help.c:572
+#: help.c:543 help.c:631
+#, c-format
+msgid "git: '%s' is not a git command. See 'git --help'."
+msgstr "git: “%s” không phải là một lệnh của git. Xem “git --help”."
+
+#: help.c:591
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr "Ối chà. Hệ thống của bạn báo rằng chẳng có lệnh Git nào cả."
 
-#: help.c:594
+#: help.c:613
 #, c-format
 msgid "WARNING: You called a Git command named '%s', which does not exist."
 msgstr "CẢNH BÁO: Bạn đã gọi lệnh Git có tên “%s”, mà nó lại không có sẵn."
 
-#: help.c:599
+#: help.c:618
 #, c-format
 msgid "Continuing under the assumption that you meant '%s'."
 msgstr "Tiếp tục và coi rằng ý bạn là “%s”."
 
-#: help.c:604
+#: help.c:623
 #, c-format
 msgid "Continuing in %0.1f seconds, assuming that you meant '%s'."
 msgstr "Tiếp tục trong %0.1f giây,và coi rằng ý bạn là “%s”."
 
-#: help.c:612
-#, c-format
-msgid "git: '%s' is not a git command. See 'git --help'."
-msgstr "git: “%s” không phải là một lệnh của git. Xem “git --help”."
-
-#: help.c:616
+#: help.c:635
 msgid ""
 "\n"
 "The most similar command is"
@@ -4313,16 +4326,16 @@ msgstr[0] ""
 "\n"
 "Những lệnh giống nhất là"
 
-#: help.c:656
+#: help.c:675
 msgid "git version [<options>]"
 msgstr "git version [<các tùy chọn>]"
 
-#: help.c:711
+#: help.c:730
 #, c-format
 msgid "%s: %s - %s"
 msgstr "%s: %s - %s"
 
-#: help.c:715
+#: help.c:734
 msgid ""
 "\n"
 "Did you mean this?"
@@ -4416,7 +4429,7 @@ msgstr "đặc tả bộ lọc không hợp lệ “%s”"
 #: list-objects-filter-options.c:125
 #, c-format
 msgid "must escape char in sub-filter-spec: '%c'"
-msgstr "phải thoát char trong sub-filter-spec: '%c'"
+msgstr "phải thoát char trong sub-filter-spec: “%c”"
 
 #: list-objects-filter-options.c:167
 msgid "expected something after combine:"
@@ -4433,7 +4446,7 @@ msgstr "không thể nâng cấp định định dạng kho chứa để hỗ tr
 #: list-objects-filter.c:492
 #, c-format
 msgid "unable to access sparse blob in '%s'"
-msgstr "không thể truy cập các blob rải rác trong '%s'"
+msgstr "không thể truy cập các blob rải rác trong “%s”"
 
 #: list-objects-filter.c:495
 #, c-format
@@ -4483,6 +4496,21 @@ msgstr "Không thể tạo “%s.lock”: %s"
 msgid "expected flush after ls-refs arguments"
 msgstr "cần đẩy dữ liệu lên đĩa sau tham số ls-refs (liệt kê tham chiếu)"
 
+#: merge-ort-wrappers.c:13 merge-recursive.c:3672
+#, c-format
+msgid ""
+"Your local changes to the following files would be overwritten by merge:\n"
+"  %s"
+msgstr ""
+"Các thay đổi nội bộ của bạn với các tập tin sau đây sẽ bị ghi đè bởi lệnh "
+"hòa trộn:\n"
+"  %s"
+
+#: merge-ort-wrappers.c:33 merge-recursive.c:3436
+#, c-format
+msgid "Already up to date!"
+msgstr "Đã cập nhật rồi!"
+
 #: merge-recursive.c:356
 msgid "(bad commit)\n"
 msgstr "(commit sai)\n"
@@ -4880,10 +4908,6 @@ msgstr "Thêm \"%s\""
 msgid "CONFLICT (add/add): Merge conflict in %s"
 msgstr "XUNG ĐỘT (thêm/thêm): Xung đột hòa trộn trong %s"
 
-#: merge-recursive.c:3436
-msgid "Already up to date!"
-msgstr "Đã cập nhật rồi!"
-
 #: merge-recursive.c:3445
 #, c-format
 msgid "merging of trees %s and %s failed"
@@ -4903,22 +4927,12 @@ msgstr[0] "tìm thấy %u tổ tiên chung:"
 msgid "merge returned no commit"
 msgstr "hòa trộn không trả về lần chuyển giao nào"
 
-#: merge-recursive.c:3672
-#, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by merge:\n"
-"  %s"
-msgstr ""
-"Các thay đổi nội bộ của bạn với các tập tin sau đây sẽ bị ghi đè bởi lệnh "
-"hòa trộn:\n"
-"  %s"
-
 #: merge-recursive.c:3769
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Không thể phân tích đối tượng “%s”"
 
-#: merge-recursive.c:3787 builtin/merge.c:702 builtin/merge.c:881
+#: merge-recursive.c:3787 builtin/merge.c:711 builtin/merge.c:895
 msgid "Unable to write index."
 msgstr "Không thể ghi bảng mục lục."
 
@@ -4926,175 +4940,171 @@ msgstr "Không thể ghi bảng mục lục."
 msgid "failed to read the cache"
 msgstr "gặp lỗi khi đọc bộ nhớ đệm"
 
-#: merge.c:109 rerere.c:720 builtin/am.c:1896 builtin/am.c:1930
-#: builtin/checkout.c:560 builtin/checkout.c:816 builtin/clone.c:816
+#: merge.c:109 rerere.c:720 builtin/am.c:1883 builtin/am.c:1917
+#: builtin/checkout.c:573 builtin/checkout.c:829 builtin/clone.c:817
 #: builtin/stash.c:265
 msgid "unable to write new index file"
 msgstr "không thể ghi tập tin lưu bảng mục lục mới"
 
-#: midx.c:79
+#: midx.c:80
 #, c-format
 msgid "multi-pack-index file %s is too small"
 msgstr "tập tin đồ thị multi-pack-index %s quá nhỏ"
 
-#: midx.c:95
+#: midx.c:96
 #, c-format
 msgid "multi-pack-index signature 0x%08x does not match signature 0x%08x"
 msgstr "chữ ký multi-pack-index 0x%08x không khớp chữ ký 0x%08x"
 
-#: midx.c:100
+#: midx.c:101
 #, c-format
 msgid "multi-pack-index version %d not recognized"
 msgstr "không nhận ra phiên bản %d của multi-pack-index"
 
-#: midx.c:105
+#: midx.c:106
 #, c-format
 msgid "multi-pack-index hash version %u does not match version %u"
 msgstr "phiên bản băm multi-pack-index %u không khớp phiên bản %u"
 
-#: midx.c:122
+#: midx.c:123
 msgid "invalid chunk offset (too large)"
 msgstr "khoảng bù đoạn không hợp lệ (quá lớn)"
 
-#: midx.c:146
+#: midx.c:147
 msgid "terminating multi-pack-index chunk id appears earlier than expected"
 msgstr "mã mảnh kết thúc multi-pack-index xuất hiện sớm hơn bình thường"
 
-#: midx.c:159
+#: midx.c:160
 msgid "multi-pack-index missing required pack-name chunk"
 msgstr "multi-pack-index thiếu mảnh pack-name cần thiết"
 
-#: midx.c:161
+#: midx.c:162
 msgid "multi-pack-index missing required OID fanout chunk"
 msgstr "multi-pack-index thiếu mảnh OID fanout cần thiết"
 
-#: midx.c:163
+#: midx.c:164
 msgid "multi-pack-index missing required OID lookup chunk"
 msgstr "multi-pack-index thiếu mảnh OID lookup cần thiết"
 
-#: midx.c:165
+#: midx.c:166
 msgid "multi-pack-index missing required object offsets chunk"
 msgstr "multi-pack-index thiếu mảnh các khoảng bù đối tượng cần thiết"
 
-#: midx.c:179
+#: midx.c:180
 #, c-format
 msgid "multi-pack-index pack names out of order: '%s' before '%s'"
 msgstr "các tên gói multi-pack-index không đúng thứ tự: “%s” trước “%s”"
 
-#: midx.c:222
+#: midx.c:223
 #, c-format
 msgid "bad pack-int-id: %u (%u total packs)"
 msgstr "pack-int-id sai: %u (%u các gói tổng)"
 
-#: midx.c:272
+#: midx.c:273
 msgid "multi-pack-index stores a 64-bit offset, but off_t is too small"
 msgstr "multi-pack-index lưu trữ một khoảng bù 64-bít, nhưng off_t là quá nhỏ"
 
-#: midx.c:300
-msgid "error preparing packfile from multi-pack-index"
-msgstr "lỗi chuẩn bị tập tin gói từ multi-pack-index"
-
-#: midx.c:485
+#: midx.c:480
 #, c-format
 msgid "failed to add packfile '%s'"
 msgstr "gặp lỗi khi thêm tập tin gói “%s”"
 
-#: midx.c:491
+#: midx.c:486
 #, c-format
 msgid "failed to open pack-index '%s'"
 msgstr "gặp lỗi khi mở pack-index “%s”"
 
-#: midx.c:551
+#: midx.c:546
 #, c-format
 msgid "failed to locate object %d in packfile"
 msgstr "gặp lỗi khi phân bổ đối tượng “%d” trong tập tin gói"
 
-#: midx.c:853
+#: midx.c:846
 msgid "Adding packfiles to multi-pack-index"
 msgstr "Đang thêm tập tin gói từ multi-pack-index"
 
-#: midx.c:886
+#: midx.c:879
 #, c-format
 msgid "did not see pack-file %s to drop"
 msgstr "đã không thấy tập tin gói %s để mà xóa"
 
-#: midx.c:938
+#: midx.c:931
 msgid "no pack files to index."
 msgstr "không có tập tin gói để đánh mục lục."
 
-#: midx.c:990
+#: midx.c:982
 msgid "Writing chunks to multi-pack-index"
 msgstr "Đang ghi các khúc vào multi-pack-index"
 
-#: midx.c:1068
+#: midx.c:1060
 #, c-format
 msgid "failed to clear multi-pack-index at %s"
 msgstr "gặp lỗi khi xóa multi-pack-index tại %s"
 
-#: midx.c:1124
+#: midx.c:1116
 msgid "multi-pack-index file exists, but failed to parse"
 msgstr "đã có tập tin multi-pack-index, nhưng gặp lỗi khi phân tích cú pháp"
 
-#: midx.c:1132
+#: midx.c:1124
 msgid "Looking for referenced packfiles"
 msgstr "Đang khóa cho các gói bị tham chiếu"
 
-#: midx.c:1147
+#: midx.c:1139
 #, c-format
 msgid ""
 "oid fanout out of order: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
 msgstr "fanout cũ sai thứ tự: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
 
-#: midx.c:1152
+#: midx.c:1144
 msgid "the midx contains no oid"
 msgstr "midx chẳng chứa oid nào"
 
-#: midx.c:1161
+#: midx.c:1153
 msgid "Verifying OID order in multi-pack-index"
 msgstr "Thẩm tra thứ tự OID trong multi-pack-index"
 
-#: midx.c:1170
+#: midx.c:1162
 #, c-format
 msgid "oid lookup out of order: oid[%d] = %s >= %s = oid[%d]"
 msgstr "lookup cũ sai thứ tự: oid[%d] = %s >= %s = oid[%d]"
 
-#: midx.c:1190
+#: midx.c:1182
 msgid "Sorting objects by packfile"
 msgstr "Đang sắp xếp các đối tượng theo tập tin gói"
 
-#: midx.c:1197
+#: midx.c:1189
 msgid "Verifying object offsets"
 msgstr "Đang thẩm tra các khoảng bù đối tượng"
 
-#: midx.c:1213
+#: midx.c:1205
 #, c-format
 msgid "failed to load pack entry for oid[%d] = %s"
 msgstr "gặp lỗi khi tải mục gói cho oid[%d] = %s"
 
-#: midx.c:1219
+#: midx.c:1211
 #, c-format
 msgid "failed to load pack-index for packfile %s"
 msgstr "gặp lỗi khi tải pack-index cho tập tin gói %s"
 
-#: midx.c:1228
+#: midx.c:1220
 #, c-format
 msgid "incorrect object offset for oid[%d] = %s: %<PRIx64> != %<PRIx64>"
 msgstr ""
 "khoảng bù đối tượng không đúng cho oid[%d] = %s: %<PRIx64> != %<PRIx64>"
 
-#: midx.c:1253
+#: midx.c:1245
 msgid "Counting referenced objects"
 msgstr "Đang đếm các đối tượng được tham chiếu"
 
-#: midx.c:1263
+#: midx.c:1255
 msgid "Finding and deleting unreferenced packfiles"
 msgstr "Đang tìm và xóa các gói không được tham chiếu"
 
-#: midx.c:1454
+#: midx.c:1446
 msgid "could not start pack-objects"
 msgstr "không thể lấy thông tin thống kê về các đối tượng gói"
 
-#: midx.c:1474
+#: midx.c:1466
 msgid "could not finish pack-objects"
 msgstr "không thể hoàn thiện các đối tượng gói"
 
@@ -5185,16 +5195,16 @@ msgstr "mã băm không khớp %s"
 msgid "unable to get size of %s"
 msgstr "không thể lấy kích cỡ của %s"
 
-#: packfile.c:630
+#: packfile.c:615
 msgid "offset before end of packfile (broken .idx?)"
 msgstr "vị trí tương đối trước điểm kết thúc của tập tin gói (.idx hỏng à?)"
 
-#: packfile.c:1922
+#: packfile.c:1907
 #, c-format
 msgid "offset before start of pack index for %s (corrupt index?)"
 msgstr "vị trí tương đối nằm trước chỉ mục gói cho %s (mục lục bị hỏng à?)"
 
-#: packfile.c:1926
+#: packfile.c:1911
 #, c-format
 msgid "offset beyond end of pack index for %s (truncated index?)"
 msgstr ""
@@ -5369,7 +5379,7 @@ msgstr "%s: “literal” và “glob” xung khắc nhau"
 #: pathspec.c:445
 #, c-format
 msgid "%s: '%s' is outside repository at '%s'"
-msgstr "%s: “%s” ngoài một kho chứa tại '%s'"
+msgstr "%s: “%s” ngoài một kho chứa tại “%s”"
 
 #: pathspec.c:521
 #, c-format
@@ -5441,7 +5451,7 @@ msgstr "lỗi giao thức: ký tự chiều dài dòng bị sai: %.4s"
 msgid "protocol error: bad line length %d"
 msgstr "lỗi giao thức: chiều dài dòng bị sai %d"
 
-#: pkt-line.c:373 sideband.c:150
+#: pkt-line.c:373 sideband.c:165
 #, c-format
 msgid "remote error: %s"
 msgstr "lỗi máy chủ: %s"
@@ -5475,7 +5485,7 @@ msgstr ""
 #: promisor-remote.c:53
 #, c-format
 msgid "promisor remote name cannot begin with '/': %s"
-msgstr "tên máy chủ hứa hẹn không thể bắt đầu bằng '/': %s"
+msgstr "tên máy chủ hứa hẹn không thể bắt đầu bằng “/”: %s"
 
 #: prune-packed.c:35
 msgid "Removing duplicate objects"
@@ -5489,7 +5499,7 @@ msgstr "không thể lấy thông tin thống kê về “log“"
 msgid "could not read `log` output"
 msgstr "không thể đọc kết xuất “log”"
 
-#: range-diff.c:98 sequencer.c:5283
+#: range-diff.c:98 sequencer.c:5310
 #, c-format
 msgid "could not parse commit '%s'"
 msgstr "không thể phân tích lần chuyển giao “%s”"
@@ -5500,19 +5510,19 @@ msgid ""
 "could not parse first line of `log` output: did not start with 'commit ': "
 "'%s'"
 msgstr ""
-"không thể phân tích cú pháp dòng đầu tiên của đầu ra `log`: không bắt đầu "
-"bằng 'commit ': '%s'"
+"không thể phân tích cú pháp dòng đầu tiên của đầu ra “log”: không bắt đầu "
+"bằng “commit ”: “%s”"
 
 #: range-diff.c:137
 #, c-format
 msgid "could not parse git header '%.*s'"
 msgstr "không thể phân tích cú pháp phần đầu git “%.*s”"
 
-#: range-diff.c:301
+#: range-diff.c:299
 msgid "failed to generate diff"
 msgstr "gặp lỗi khi tạo khác biệt"
 
-#: range-diff.c:534 range-diff.c:536
+#: range-diff.c:532 range-diff.c:534
 #, c-format
 msgid "could not parse log for '%s'"
 msgstr "không thể phân tích nhật ký cho “%s”"
@@ -5630,8 +5640,8 @@ msgstr "các mục tin stage không đúng thứ tự cho “%s”"
 
 #: read-cache.c:1971 read-cache.c:2262 rerere.c:565 rerere.c:599 rerere.c:1111
 #: submodule.c:1628 builtin/add.c:538 builtin/check-ignore.c:181
-#: builtin/checkout.c:489 builtin/checkout.c:675 builtin/clean.c:991
-#: builtin/commit.c:364 builtin/diff-tree.c:121 builtin/grep.c:507
+#: builtin/checkout.c:502 builtin/checkout.c:688 builtin/clean.c:991
+#: builtin/commit.c:364 builtin/diff-tree.c:122 builtin/grep.c:507
 #: builtin/mv.c:146 builtin/reset.c:247 builtin/rm.c:290
 #: builtin/submodule--helper.c:332
 msgid "index file corrupt"
@@ -5687,12 +5697,12 @@ msgstr "không thể làm tươi mới mục lục đã chia sẻ “%s”"
 msgid "broken index, expect %s in %s, got %s"
 msgstr "mục lục bị hỏng, cần %s trong %s, nhưng lại nhận được %s"
 
-#: read-cache.c:3017 strbuf.c:1171 wrapper.c:633 builtin/merge.c:1126
+#: read-cache.c:3017 strbuf.c:1171 wrapper.c:633 builtin/merge.c:1140
 #, c-format
 msgid "could not close '%s'"
 msgstr "không thể đóng “%s”"
 
-#: read-cache.c:3120 sequencer.c:2446 sequencer.c:4185
+#: read-cache.c:3120 sequencer.c:2479 sequencer.c:4231
 #, c-format
 msgid "could not stat '%s'"
 msgstr "không thể lấy thông tin thống kê về “%s”"
@@ -5827,14 +5837,14 @@ msgstr ""
 "Tuy nhiên, nếu bạn xóa bỏ mọi thứ, việc cải tổ sẽ bị bãi bỏ.\n"
 "\n"
 
-#: rebase-interactive.c:110 rerere.c:485 rerere.c:692 sequencer.c:3571
-#: sequencer.c:3597 sequencer.c:5389 builtin/fsck.c:347 builtin/rebase.c:264
+#: rebase-interactive.c:110 rerere.c:485 rerere.c:692 sequencer.c:3607
+#: sequencer.c:3633 sequencer.c:5416 builtin/fsck.c:347 builtin/rebase.c:270
 #, c-format
 msgid "could not write '%s'"
 msgstr "không thể ghi “%s”"
 
-#: rebase-interactive.c:116 builtin/rebase.c:196 builtin/rebase.c:222
-#: builtin/rebase.c:246
+#: rebase-interactive.c:116 builtin/rebase.c:202 builtin/rebase.c:228
+#: builtin/rebase.c:252
 #, c-format
 msgid "could not write '%s'."
 msgstr "không thể ghi “%s”."
@@ -5866,9 +5876,9 @@ msgstr ""
 "Cánh ứng xử có thể là: ignore, warn, error.\n"
 "\n"
 
-#: rebase-interactive.c:233 rebase-interactive.c:238 sequencer.c:2361
-#: builtin/rebase.c:182 builtin/rebase.c:207 builtin/rebase.c:233
-#: builtin/rebase.c:258
+#: rebase-interactive.c:233 rebase-interactive.c:238 sequencer.c:2394
+#: builtin/rebase.c:188 builtin/rebase.c:213 builtin/rebase.c:239
+#: builtin/rebase.c:264
 #, c-format
 msgid "could not read '%s'."
 msgstr "không thể đọc “%s”."
@@ -5960,12 +5970,12 @@ msgstr "đối số không được thừa nhận %%(contents): %s"
 #: ref-filter.c:380
 #, c-format
 msgid "positive value expected '%s' in %%(%s)"
-msgstr "cần giá trị dương '%s' trong %%(%s)"
+msgstr "cần giá trị dương “%s” trong %%(%s)"
 
 #: ref-filter.c:384
 #, c-format
 msgid "unrecognized argument '%s' in %%(%s)"
-msgstr "đối số '%s' không được thừa nhận trong %%(%s)"
+msgstr "đối số “%s” không được thừa nhận trong %%(%s)"
 
 #: ref-filter.c:398
 #, c-format
@@ -6065,61 +6075,61 @@ msgstr "định dạng: nguyên tử %%(end) được dùng mà không có nguy
 msgid "malformed format string %s"
 msgstr "chuỗi định dạng dị hình %s"
 
-#: ref-filter.c:1541
+#: ref-filter.c:1549
 #, c-format
 msgid "no branch, rebasing %s"
 msgstr "không nhánh, đang cải tổ %s"
 
-#: ref-filter.c:1544
+#: ref-filter.c:1552
 #, c-format
 msgid "no branch, rebasing detached HEAD %s"
 msgstr "không nhánh, đang cải tổ HEAD %s đã tách rời"
 
-#: ref-filter.c:1547
+#: ref-filter.c:1555
 #, c-format
 msgid "no branch, bisect started on %s"
 msgstr "không nhánh, di chuyển nửa bước được bắt đầu tại %s"
 
-#: ref-filter.c:1557
+#: ref-filter.c:1565
 msgid "no branch"
 msgstr "không nhánh"
 
-#: ref-filter.c:1591 ref-filter.c:1800
+#: ref-filter.c:1599 ref-filter.c:1808
 #, c-format
 msgid "missing object %s for %s"
 msgstr "thiếu đối tượng %s cho %s"
 
-#: ref-filter.c:1601
+#: ref-filter.c:1609
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr "parse_object_buffer gặp lỗi trên %s cho %s"
 
-#: ref-filter.c:2054
+#: ref-filter.c:2062
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "đối tượng dị hình tại “%s”"
 
-#: ref-filter.c:2143
+#: ref-filter.c:2151
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr "đang lờ đi tham chiếu với tên hỏng %s"
 
-#: ref-filter.c:2148 refs.c:657
+#: ref-filter.c:2156 refs.c:676
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr "đang lờ đi tham chiếu hỏng %s"
 
-#: ref-filter.c:2464
+#: ref-filter.c:2472
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr "định dạng: thiếu nguyên tử %%(end)"
 
-#: ref-filter.c:2563
+#: ref-filter.c:2571
 #, c-format
 msgid "malformed object name %s"
 msgstr "tên đối tượng dị hình %s"
 
-#: ref-filter.c:2568
+#: ref-filter.c:2576
 #, c-format
 msgid "option `%s' must point to a commit"
 msgstr "tùy chọn “%s” phải chỉ đến một lần chuyển giao"
@@ -6129,65 +6139,90 @@ msgstr "tùy chọn “%s” phải chỉ đến một lần chuyển giao"
 msgid "%s does not point to a valid object!"
 msgstr "“%s” không chỉ đến một lần chuyển giao hợp lệ nào cả!"
 
-#: refs.c:572
+#: refs.c:566
+#, c-format
+msgid ""
+"Using '%s' as the name for the initial branch. This default branch name\n"
+"is subject to change. To configure the initial branch name to use in all\n"
+"of your new repositories, which will suppress this warning, call:\n"
+"\n"
+"\tgit config --global init.defaultBranch <name>\n"
+"\n"
+"Names commonly chosen instead of 'master' are 'main', 'trunk' and\n"
+"'development'. The just-created branch can be renamed via this command:\n"
+"\n"
+"\tgit branch -m <name>\n"
+msgstr ""
+"Sử dụng '%s' làm tên cho nhánh ban đầu. Tên nhánh mặc định này\n"
+"có thể thay đổi. Để cấu hình tên nhánh khởi đầu sử dụng trong tất cả\n"
+"kho lưu trữ mới của bạn, cái mà sẽ ngăn chặn cảnh báo này, gọi lệnh:\n"
+"\n"
+"\tgit config --global init.defaultBranch <tên>\n"
+"\n"
+"Tên thường được chọn thay cho 'master' là 'main', 'trunk' và\n"
+"'development'. Nhánh vừa tạo có thể được đổi tên thông qua lệnh:\n"
+"\n"
+"\tgit branch -m <tên>\n"
+
+#: refs.c:588
 #, c-format
 msgid "could not retrieve `%s`"
 msgstr "không thể lấy về “%s”"
 
-#: refs.c:579
+#: refs.c:598
 #, c-format
 msgid "invalid branch name: %s = %s"
 msgstr "tên nhánh không hợp lệ: %s = %s"
 
-#: refs.c:655
+#: refs.c:674
 #, c-format
 msgid "ignoring dangling symref %s"
 msgstr "đang lờ đi tham chiếu mềm thừa %s"
 
-#: refs.c:892
+#: refs.c:911
 #, c-format
 msgid "log for ref %s has gap after %s"
 msgstr "nhật ký cho tham chiếu %s có khoảng trống sau %s"
 
-#: refs.c:898
+#: refs.c:917
 #, c-format
 msgid "log for ref %s unexpectedly ended on %s"
 msgstr "nhật ký cho tham chiếu %s kết thúc bất ngờ trên %s"
 
-#: refs.c:957
+#: refs.c:976
 #, c-format
 msgid "log for %s is empty"
 msgstr "nhật ký cho %s trống rỗng"
 
-#: refs.c:1049
+#: refs.c:1068
 #, c-format
 msgid "refusing to update ref with bad name '%s'"
 msgstr "từ chối cập nhật tham chiếu với tên sai “%s”"
 
-#: refs.c:1120
+#: refs.c:1139
 #, c-format
 msgid "update_ref failed for ref '%s': %s"
 msgstr "update_ref bị lỗi cho ref “%s”: %s"
 
-#: refs.c:1944
+#: refs.c:1963
 #, c-format
 msgid "multiple updates for ref '%s' not allowed"
 msgstr "không cho phép đa cập nhật cho tham chiếu “%s”"
 
-#: refs.c:2024
+#: refs.c:2043
 msgid "ref updates forbidden inside quarantine environment"
 msgstr "cập nhật tham chiếu bị cấm trong môi trường kiểm tra"
 
-#: refs.c:2035
+#: refs.c:2054
 msgid "ref updates aborted by hook"
 msgstr "các cập nhật tham chiếu bị bãi bỏ bởi móc"
 
-#: refs.c:2135 refs.c:2165
+#: refs.c:2154 refs.c:2184
 #, c-format
 msgid "'%s' exists; cannot create '%s'"
 msgstr "“%s” sẵn có; không thể tạo “%s”"
 
-#: refs.c:2141 refs.c:2176
+#: refs.c:2160 refs.c:2195
 #, c-format
 msgid "cannot process '%s' and '%s' at the same time"
 msgstr "không thể xử lý “%s” và “%s” cùng một lúc"
@@ -6208,7 +6243,7 @@ msgstr "không thể xóa bỏ tham chiếu %s: %s"
 msgid "could not delete references: %s"
 msgstr "không thể xóa bỏ tham chiếu: %s"
 
-#: refspec.c:167
+#: refspec.c:170
 #, c-format
 msgid "invalid refspec '%s'"
 msgstr "refspec không hợp lệ “%s”"
@@ -6354,95 +6389,95 @@ msgstr "dst refspec %s khớp nhiều hơn một"
 msgid "dst ref %s receives from more than one src"
 msgstr "dst ref %s nhận từ hơn một nguồn"
 
-#: remote.c:1703 remote.c:1804
+#: remote.c:1714 remote.c:1815
 msgid "HEAD does not point to a branch"
 msgstr "HEAD không chỉ đến một nhánh nào cả"
 
-#: remote.c:1712
+#: remote.c:1723
 #, c-format
 msgid "no such branch: '%s'"
 msgstr "không có nhánh nào như thế: “%s”"
 
-#: remote.c:1715
+#: remote.c:1726
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr "không có thượng nguồn được cấu hình cho nhánh “%s”"
 
-#: remote.c:1721
+#: remote.c:1732
 #, c-format
 msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr ""
 "nhánh thượng nguồn “%s” không được lưu lại như là một nhánh theo dõi máy chủ"
 
-#: remote.c:1736
+#: remote.c:1747
 #, c-format
 msgid "push destination '%s' on remote '%s' has no local tracking branch"
 msgstr "đẩy lên đích “%s” trên máy chủ “%s” không có nhánh theo dõi nội bộ"
 
-#: remote.c:1748
+#: remote.c:1759
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr "nhánh “%s” không có máy chủ để đẩy lên"
 
-#: remote.c:1758
+#: remote.c:1769
 #, c-format
 msgid "push refspecs for '%s' do not include '%s'"
 msgstr "đẩy refspecs cho “%s” không bao gồm “%s”"
 
-#: remote.c:1771
+#: remote.c:1782
 msgid "push has no destination (push.default is 'nothing')"
 msgstr "đẩy lên mà không có đích (push.default là “nothing”)"
 
-#: remote.c:1793
+#: remote.c:1804
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr "không thể phân giải đẩy “đơn giản” đến một đích đơn"
 
-#: remote.c:1922
+#: remote.c:1933
 #, c-format
 msgid "couldn't find remote ref %s"
 msgstr "không thể tìm thấy tham chiếu máy chủ %s"
 
-#: remote.c:1935
+#: remote.c:1946
 #, c-format
 msgid "* Ignoring funny ref '%s' locally"
 msgstr "* Đang bỏ qua tham chiếu thú vị nội bộ “%s”"
 
-#: remote.c:2098
+#: remote.c:2109
 #, c-format
 msgid "Your branch is based on '%s', but the upstream is gone.\n"
 msgstr ""
 "Nhánh của bạn dựa trên cơ sở là “%s”, nhưng trên thượng nguồn không còn.\n"
 
-#: remote.c:2102
+#: remote.c:2113
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "   (dùng \" git branch --unset-upstream\" để sửa)\n"
 
-#: remote.c:2105
+#: remote.c:2116
 #, c-format
 msgid "Your branch is up to date with '%s'.\n"
 msgstr "Nhánh của bạn đã cập nhật với “%s”.\n"
 
-#: remote.c:2109
+#: remote.c:2120
 #, c-format
 msgid "Your branch and '%s' refer to different commits.\n"
 msgstr "Nhánh của bạn và “%s” tham chiếu đến các lần chuyển giao khác nhau.\n"
 
-#: remote.c:2112
+#: remote.c:2123
 #, c-format
 msgid "  (use \"%s\" for details)\n"
 msgstr "  (dùng \"%s\" để biết thêm chi tiết)\n"
 
-#: remote.c:2116
+#: remote.c:2127
 #, c-format
 msgid "Your branch is ahead of '%s' by %d commit.\n"
 msgid_plural "Your branch is ahead of '%s' by %d commits.\n"
 msgstr[0] "Nhánh của bạn đứng trước “%s” %d lần chuyển giao.\n"
 
-#: remote.c:2122
+#: remote.c:2133
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (dùng \"git push\" để xuất bản các lần chuyển giao nội bộ của bạn)\n"
 
-#: remote.c:2125
+#: remote.c:2136
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -6451,11 +6486,11 @@ msgstr[0] ""
 "Nhánh của bạn đứng đằng sau “%s” %d lần chuyển giao, và có thể được chuyển-"
 "tiếp-nhanh.\n"
 
-#: remote.c:2133
+#: remote.c:2144
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (dùng \"git pull\" để cập nhật nhánh nội bộ của bạn)\n"
 
-#: remote.c:2136
+#: remote.c:2147
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -6468,13 +6503,13 @@ msgstr[0] ""
 "và có %d và %d lần chuyển giao khác nhau cho từng cái,\n"
 "tương ứng với mỗi lần.\n"
 
-#: remote.c:2146
+#: remote.c:2157
 msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr ""
 "  (dùng \"git pull\" để hòa trộn nhánh trên máy chủ vào trong nhánh của "
 "bạn)\n"
 
-#: remote.c:2337
+#: remote.c:2349
 #, c-format
 msgid "cannot parse expected object name '%s'"
 msgstr "không thể phân tích tên đối tượng mong muốn “%s”"
@@ -6552,7 +6587,7 @@ msgstr "không thể unlink stray “%s”"
 msgid "Recorded preimage for '%s'"
 msgstr "Preimage đã được ghi lại cho “%s”"
 
-#: rerere.c:881 submodule.c:2082 builtin/log.c:1975
+#: rerere.c:881 submodule.c:2082 builtin/log.c:1992
 #: builtin/submodule--helper.c:1878 builtin/submodule--helper.c:1890
 #, c-format
 msgid "could not create directory '%s'"
@@ -6591,43 +6626,43 @@ msgstr "không thể mở thư mục rr-cache"
 msgid "could not determine HEAD revision"
 msgstr "không thể dò tìm điểm xét duyệt HEAD"
 
-#: reset.c:70 reset.c:76 sequencer.c:3426
+#: reset.c:70 reset.c:76 sequencer.c:3460
 #, c-format
 msgid "failed to find tree of %s"
 msgstr "gặp lỗi khi tìm cây của %s"
 
-#: revision.c:2344
+#: revision.c:2336
 msgid "--unpacked=<packfile> no longer supported"
 msgstr "--unpacked=<packfile> không còn được hỗ trợ nữa"
 
-#: revision.c:2364
+#: revision.c:2356
 #, c-format
 msgid "unknown value for --diff-merges: %s"
 msgstr "không hiểu giá trị cho --diff-merges: %s"
 
-#: revision.c:2702
+#: revision.c:2694
 msgid "your current branch appears to be broken"
 msgstr "nhánh hiện tại của bạn có vẻ như bị hỏng"
 
-#: revision.c:2705
+#: revision.c:2697
 #, c-format
 msgid "your current branch '%s' does not have any commits yet"
 msgstr "nhánh hiện tại của bạn “%s” không có một lần chuyển giao nào cả"
 
-#: revision.c:2915
+#: revision.c:2907
 msgid "-L does not yet support diff formats besides -p and -s"
 msgstr "-L vẫn chưa hỗ trợ định dạng khác biệt nào ngoài -p và -s"
 
-#: run-command.c:763
+#: run-command.c:764
 msgid "open /dev/null failed"
 msgstr "gặp lỗi khi mở “/dev/null”"
 
-#: run-command.c:1270
+#: run-command.c:1271
 #, c-format
 msgid "cannot create async thread: %s"
 msgstr "không thể tạo tuyến async: %s"
 
-#: run-command.c:1334
+#: run-command.c:1335
 #, c-format
 msgid ""
 "The '%s' hook was ignored because it's not set as executable.\n"
@@ -6636,34 +6671,34 @@ msgstr ""
 "Móc “%s” bị bỏ qua bởi vì nó không thể đặt là thực thi được.\n"
 "Bạn có thể tắt cảnh báo này bằng “git config advice.ignoredHook false“."
 
-#: send-pack.c:145
+#: send-pack.c:146
 msgid "unexpected flush packet while reading remote unpack status"
 msgstr ""
 "gặp gói flush không cần trong khi đọc tình trạng giải nén gói trên máy chủ"
 
-#: send-pack.c:147
+#: send-pack.c:148
 #, c-format
 msgid "unable to parse remote unpack status: %s"
 msgstr "không thể phân tích tình trạng unpack máy chủ: %s"
 
-#: send-pack.c:149
+#: send-pack.c:150
 #, c-format
 msgid "remote unpack failed: %s"
 msgstr "máy chủ gặp lỗi unpack: %s"
 
-#: send-pack.c:372
+#: send-pack.c:374
 msgid "failed to sign the push certificate"
 msgstr "gặp lỗi khi ký chứng thực đẩy"
 
-#: send-pack.c:460
+#: send-pack.c:467
 msgid "the receiving end does not support this repository's hash algorithm"
 msgstr "kết thúc nhận không hỗ trợ các tùy chọn của lệnh push"
 
-#: send-pack.c:469
+#: send-pack.c:476
 msgid "the receiving end does not support --signed push"
 msgstr "kết thúc nhận không hỗ trợ đẩy --signed"
 
-#: send-pack.c:471
+#: send-pack.c:478
 msgid ""
 "not sending a push certificate since the receiving end does not support --"
 "signed push"
@@ -6671,47 +6706,47 @@ msgstr ""
 "đừng gửi giấy chứng nhận đẩy trước khi kết thúc nhận không hỗ trợ đẩy --"
 "signed"
 
-#: send-pack.c:483
+#: send-pack.c:490
 msgid "the receiving end does not support --atomic push"
 msgstr "kết thúc nhận không hỗ trợ đẩy --atomic"
 
-#: send-pack.c:488
+#: send-pack.c:495
 msgid "the receiving end does not support push options"
 msgstr "kết thúc nhận không hỗ trợ các tùy chọn của lệnh push"
 
-#: sequencer.c:194
+#: sequencer.c:195
 #, c-format
 msgid "invalid commit message cleanup mode '%s'"
 msgstr "chế độ dọn dẹp ghi chú các lần chuyển giao không hợp lệ “%s”"
 
-#: sequencer.c:308
+#: sequencer.c:323
 #, c-format
 msgid "could not delete '%s'"
 msgstr "không thể xóa bỏ “%s”"
 
-#: sequencer.c:329 builtin/rebase.c:749 builtin/rebase.c:1590 builtin/rm.c:385
+#: sequencer.c:343 builtin/rebase.c:755 builtin/rebase.c:1596 builtin/rm.c:385
 #, c-format
 msgid "could not remove '%s'"
 msgstr "không thể gỡ bỏ “%s”"
 
-#: sequencer.c:339
+#: sequencer.c:353
 msgid "revert"
 msgstr "hoàn nguyên"
 
-#: sequencer.c:341
+#: sequencer.c:355
 msgid "cherry-pick"
 msgstr "cherry-pick"
 
-#: sequencer.c:343
+#: sequencer.c:357
 msgid "rebase"
 msgstr "rebase"
 
-#: sequencer.c:345
+#: sequencer.c:359
 #, c-format
 msgid "unknown action: %d"
 msgstr "không nhận ra thao tác: %d"
 
-#: sequencer.c:404
+#: sequencer.c:418
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -6719,7 +6754,7 @@ msgstr ""
 "sau khi giải quyết các xung đột, đánh dấu đường dẫn đã sửa\n"
 "với lệnh “git add </các/đường/dẫn>” hoặc “git rm </các/đường/dẫn>”"
 
-#: sequencer.c:407
+#: sequencer.c:421
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -6729,43 +6764,43 @@ msgstr ""
 "với lệnh “git add </các/đường/dẫn>” hoặc “git rm </các/đường/dẫn>”\n"
 "và chuyển giao kết quả bằng lệnh “git commit”"
 
-#: sequencer.c:420 sequencer.c:3028
+#: sequencer.c:434 sequencer.c:3062
 #, c-format
 msgid "could not lock '%s'"
 msgstr "không thể khóa “%s”"
 
-#: sequencer.c:422 sequencer.c:2827 sequencer.c:3032 sequencer.c:3046
-#: sequencer.c:3303 sequencer.c:5299 strbuf.c:1168 wrapper.c:631
+#: sequencer.c:436 sequencer.c:2861 sequencer.c:3066 sequencer.c:3080
+#: sequencer.c:3337 sequencer.c:5326 strbuf.c:1168 wrapper.c:631
 #, c-format
 msgid "could not write to '%s'"
 msgstr "không thể ghi vào “%s”"
 
-#: sequencer.c:427
+#: sequencer.c:441
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr "không thể ghi eol vào “%s”"
 
-#: sequencer.c:432 sequencer.c:2832 sequencer.c:3034 sequencer.c:3048
-#: sequencer.c:3311
+#: sequencer.c:446 sequencer.c:2866 sequencer.c:3068 sequencer.c:3082
+#: sequencer.c:3345
 #, c-format
 msgid "failed to finalize '%s'"
 msgstr "gặp lỗi khi hoàn thành “%s”"
 
-#: sequencer.c:471
+#: sequencer.c:485
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr "các thay đổi nội bộ của bạn có thể bị ghi đè bởi lệnh %s."
 
-#: sequencer.c:475
+#: sequencer.c:489
 msgid "commit your changes or stash them to proceed."
 msgstr "chuyển giao các thay đổi của bạn hay tạm cất (stash) chúng để xử lý."
 
-#: sequencer.c:507
+#: sequencer.c:521
 #, c-format
 msgid "%s: fast-forward"
 msgstr "%s: chuyển-tiếp-nhanh"
 
-#: sequencer.c:546 builtin/tag.c:566
+#: sequencer.c:560 builtin/tag.c:566
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Chế độ dọn dẹp không hợp lệ %s"
@@ -6773,65 +6808,65 @@ msgstr "Chế độ dọn dẹp không hợp lệ %s"
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
 #. "rebase".
 #.
-#: sequencer.c:640
+#: sequencer.c:670
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s: Không thể ghi tập tin lưu bảng mục lục mới"
 
-#: sequencer.c:657
+#: sequencer.c:687
 msgid "unable to update cache tree"
 msgstr "không thể cập nhật cây bộ nhớ đệm"
 
-#: sequencer.c:671
+#: sequencer.c:701
 msgid "could not resolve HEAD commit"
 msgstr "không thể phân giải lần chuyển giao HEAD"
 
-#: sequencer.c:751
+#: sequencer.c:781
 #, c-format
 msgid "no key present in '%.*s'"
 msgstr "không có khóa hiện diện trong “%.*s”"
 
-#: sequencer.c:762
+#: sequencer.c:792
 #, c-format
 msgid "unable to dequote value of '%s'"
 msgstr "không thể giải trích dẫn giá trị của “%s”"
 
-#: sequencer.c:799 wrapper.c:201 wrapper.c:371 builtin/am.c:724
-#: builtin/am.c:816 builtin/merge.c:1121 builtin/rebase.c:902
+#: sequencer.c:829 wrapper.c:201 wrapper.c:371 builtin/am.c:710
+#: builtin/am.c:802 builtin/merge.c:1135 builtin/rebase.c:908
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "không thể mở “%s” để đọc"
 
-#: sequencer.c:809
+#: sequencer.c:839
 msgid "'GIT_AUTHOR_NAME' already given"
 msgstr "“GIT_AUTHOR_NAME” đã sẵn đưa ra rồi"
 
-#: sequencer.c:814
+#: sequencer.c:844
 msgid "'GIT_AUTHOR_EMAIL' already given"
 msgstr "“GIT_AUTHOR_EMAIL” đã sẵn đưa ra rồi"
 
-#: sequencer.c:819
+#: sequencer.c:849
 msgid "'GIT_AUTHOR_DATE' already given"
 msgstr "“GIT_AUTHOR_DATE” đã sẵn đưa ra rồi"
 
-#: sequencer.c:823
+#: sequencer.c:853
 #, c-format
 msgid "unknown variable '%s'"
 msgstr "không hiểu biến “%s”"
 
-#: sequencer.c:828
+#: sequencer.c:858
 msgid "missing 'GIT_AUTHOR_NAME'"
 msgstr "thiếu “GIT_AUTHOR_NAME”"
 
-#: sequencer.c:830
+#: sequencer.c:860
 msgid "missing 'GIT_AUTHOR_EMAIL'"
 msgstr "thiếu “GIT_AUTHOR_EMAIL”"
 
-#: sequencer.c:832
+#: sequencer.c:862
 msgid "missing 'GIT_AUTHOR_DATE'"
 msgstr "thiếu “GIT_AUTHOR_DATE”"
 
-#: sequencer.c:897
+#: sequencer.c:927
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -6860,11 +6895,11 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:1178
+#: sequencer.c:1208
 msgid "'prepare-commit-msg' hook failed"
 msgstr "móc “prepare-commit-msg” bị lỗi"
 
-#: sequencer.c:1184
+#: sequencer.c:1214
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -6895,7 +6930,7 @@ msgstr ""
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1197
+#: sequencer.c:1227
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -6923,341 +6958,341 @@ msgstr ""
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: sequencer.c:1239
+#: sequencer.c:1269
 msgid "couldn't look up newly created commit"
 msgstr "không thể tìm thấy lần chuyển giao mới hơn đã được tạo"
 
-#: sequencer.c:1241
+#: sequencer.c:1271
 msgid "could not parse newly created commit"
 msgstr ""
 "không thể phân tích cú pháp của đối tượng chuyển giao mới hơn đã được tạo"
 
-#: sequencer.c:1287
+#: sequencer.c:1317
 msgid "unable to resolve HEAD after creating commit"
 msgstr "không thể phân giải HEAD sau khi tạo lần chuyển giao"
 
-#: sequencer.c:1289
+#: sequencer.c:1319
 msgid "detached HEAD"
 msgstr "đã rời khỏi HEAD"
 
-#: sequencer.c:1293
+#: sequencer.c:1323
 msgid " (root-commit)"
 msgstr " (root-commit)"
 
-#: sequencer.c:1314
+#: sequencer.c:1344
 msgid "could not parse HEAD"
 msgstr "không thể phân tích HEAD"
 
-#: sequencer.c:1316
+#: sequencer.c:1346
 #, c-format
 msgid "HEAD %s is not a commit!"
 msgstr "HEAD %s không phải là một lần chuyển giao!"
 
-#: sequencer.c:1320 sequencer.c:1395 builtin/commit.c:1577
+#: sequencer.c:1350 sequencer.c:1425 builtin/commit.c:1577
 msgid "could not parse HEAD commit"
 msgstr "không thể phân tích commit (lần chuyển giao) HEAD"
 
-#: sequencer.c:1373 sequencer.c:2067
+#: sequencer.c:1403 sequencer.c:2100
 msgid "unable to parse commit author"
 msgstr "không thể phân tích tác giả của lần chuyển giao"
 
-#: sequencer.c:1384 builtin/am.c:1580 builtin/merge.c:692
+#: sequencer.c:1414 builtin/am.c:1566 builtin/merge.c:701
 msgid "git write-tree failed to write a tree"
 msgstr "lệnh git write-tree gặp lỗi khi ghi một cây"
 
-#: sequencer.c:1417 sequencer.c:1535
+#: sequencer.c:1447 sequencer.c:1565
 #, c-format
 msgid "unable to read commit message from '%s'"
 msgstr "không thể đọc phần chú thích (message) từ “%s”"
 
-#: sequencer.c:1446 sequencer.c:1478
+#: sequencer.c:1476 sequencer.c:1508
 #, c-format
 msgid "invalid author identity '%s'"
 msgstr "định danh tác giả không hợp lệ “%s”"
 
-#: sequencer.c:1452
+#: sequencer.c:1482
 msgid "corrupt author: missing date information"
 msgstr "tác giả sai hỏng: thiếu thông tin này tháng"
 
-#: sequencer.c:1491 builtin/am.c:1606 builtin/commit.c:1678 builtin/merge.c:890
-#: builtin/merge.c:915
+#: sequencer.c:1521 builtin/am.c:1593 builtin/commit.c:1678 builtin/merge.c:904
+#: builtin/merge.c:929 t/helper/test-fast-rebase.c:78
 msgid "failed to write commit object"
 msgstr "gặp lỗi khi ghi đối tượng chuyển giao"
 
-#: sequencer.c:1518 sequencer.c:4237
+#: sequencer.c:1548 sequencer.c:4283 t/helper/test-fast-rebase.c:198
 #, c-format
 msgid "could not update %s"
 msgstr "không thể cập nhật %s"
 
-#: sequencer.c:1567
+#: sequencer.c:1597
 #, c-format
 msgid "could not parse commit %s"
 msgstr "không thể phân tích lần chuyển giao %s"
 
-#: sequencer.c:1572
+#: sequencer.c:1602
 #, c-format
 msgid "could not parse parent commit %s"
 msgstr "không thể phân tích lần chuyển giao cha mẹ “%s”"
 
-#: sequencer.c:1655 sequencer.c:1766
+#: sequencer.c:1685 sequencer.c:1796
 #, c-format
 msgid "unknown command: %d"
 msgstr "không hiểu câu lệnh %d"
 
-#: sequencer.c:1713 sequencer.c:1738
+#: sequencer.c:1743 sequencer.c:1768
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr "Đây là tổ hợp của %d lần chuyển giao."
 
-#: sequencer.c:1723
+#: sequencer.c:1753
 msgid "need a HEAD to fixup"
 msgstr "cần một HEAD để sửa"
 
-#: sequencer.c:1725 sequencer.c:3338
+#: sequencer.c:1755 sequencer.c:3372
 msgid "could not read HEAD"
 msgstr "không thể đọc HEAD"
 
-#: sequencer.c:1727
+#: sequencer.c:1757
 msgid "could not read HEAD's commit message"
 msgstr "không thể đọc phần chú thích (message) của HEAD"
 
-#: sequencer.c:1733
+#: sequencer.c:1763
 #, c-format
 msgid "cannot write '%s'"
 msgstr "không thể ghi “%s”"
 
-#: sequencer.c:1740 git-rebase--preserve-merges.sh:486
+#: sequencer.c:1770 git-rebase--preserve-merges.sh:486
 msgid "This is the 1st commit message:"
 msgstr "Đây là chú thích cho lần chuyển giao thứ nhất:"
 
-#: sequencer.c:1748
+#: sequencer.c:1778
 #, c-format
 msgid "could not read commit message of %s"
 msgstr "không thể đọc phần chú thích (message) của %s"
 
-#: sequencer.c:1755
+#: sequencer.c:1785
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr "Đây là chú thích cho lần chuyển giao thứ #%d:"
 
-#: sequencer.c:1761
+#: sequencer.c:1791
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr "Chú thích cho lần chuyển giao thứ #%d sẽ bị bỏ qua:"
 
-#: sequencer.c:1849
+#: sequencer.c:1879
 msgid "your index file is unmerged."
 msgstr "tập tin lưu mục lục của bạn không được hòa trộn."
 
-#: sequencer.c:1856
+#: sequencer.c:1886
 msgid "cannot fixup root commit"
 msgstr "không thể sửa chữa lần chuyển giao gốc"
 
-#: sequencer.c:1875
+#: sequencer.c:1905
 #, c-format
 msgid "commit %s is a merge but no -m option was given."
 msgstr "lần chuyển giao %s là một lần hòa trộn nhưng không đưa ra tùy chọn -m."
 
-#: sequencer.c:1883 sequencer.c:1891
+#: sequencer.c:1913 sequencer.c:1921
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "lần chuyển giao %s không có cha mẹ %d"
 
-#: sequencer.c:1897
+#: sequencer.c:1927
 #, c-format
 msgid "cannot get commit message for %s"
 msgstr "không thể lấy ghi chú lần chuyển giao cho %s"
 
 #. TRANSLATORS: The first %s will be a "todo" command like
 #. "revert" or "pick", the second %s a SHA1.
-#: sequencer.c:1916
+#: sequencer.c:1946
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s: không thể phân tích lần chuyển giao mẹ của %s"
 
-#: sequencer.c:1981
+#: sequencer.c:2011
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr "không thể đổi tên “%s” thành “%s”"
 
-#: sequencer.c:2038
+#: sequencer.c:2071
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "không thể hoàn nguyên %s… %s"
 
-#: sequencer.c:2039
+#: sequencer.c:2072
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "không thể áp dụng miếng vá %s… %s"
 
-#: sequencer.c:2059
+#: sequencer.c:2092
 #, c-format
 msgid "dropping %s %s -- patch contents already upstream\n"
 msgstr "xóa %s %s -- vá nội dung thượng nguồn đã có\n"
 
-#: sequencer.c:2117
+#: sequencer.c:2150
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s: gặp lỗi đọc bảng mục lục"
 
-#: sequencer.c:2124
+#: sequencer.c:2157
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s: gặp lỗi khi làm tươi mới bảng mục lục"
 
-#: sequencer.c:2201
+#: sequencer.c:2234
 #, c-format
 msgid "%s does not accept arguments: '%s'"
 msgstr "%s không nhận các đối số: “%s”"
 
-#: sequencer.c:2210
+#: sequencer.c:2243
 #, c-format
 msgid "missing arguments for %s"
 msgstr "thiếu đối số cho %s"
 
-#: sequencer.c:2241
+#: sequencer.c:2274
 #, c-format
 msgid "could not parse '%s'"
 msgstr "không thể phân tích cú pháp “%s”"
 
-#: sequencer.c:2302
+#: sequencer.c:2335
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr "dòng không hợp lệ %d: %.*s"
 
-#: sequencer.c:2313
+#: sequencer.c:2346
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr "không thể “%s” thể mà không có lần chuyển giao kế trước"
 
-#: sequencer.c:2399
+#: sequencer.c:2432
 msgid "cancelling a cherry picking in progress"
 msgstr "đang hủy bỏ thao tác cherry pick đang thực hiện"
 
-#: sequencer.c:2408
+#: sequencer.c:2441
 msgid "cancelling a revert in progress"
 msgstr "đang hủy bỏ các thao tác hoàn nguyên đang thực hiện"
 
-#: sequencer.c:2452
+#: sequencer.c:2485
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr "vui lòng sửa lỗi này bằng cách dùng “git rebase --edit-todo”."
 
-#: sequencer.c:2454
+#: sequencer.c:2487
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr "bảng chỉ thị không thể dùng được: %s"
 
-#: sequencer.c:2459
+#: sequencer.c:2492
 msgid "no commits parsed."
 msgstr "không có lần chuyển giao nào được phân tích."
 
-#: sequencer.c:2470
+#: sequencer.c:2503
 msgid "cannot cherry-pick during a revert."
 msgstr "không thể cherry-pick trong khi hoàn nguyên."
 
-#: sequencer.c:2472
+#: sequencer.c:2505
 msgid "cannot revert during a cherry-pick."
 msgstr "không thể thực hiện việc hoàn nguyên trong khi đang cherry-pick."
 
-#: sequencer.c:2550
+#: sequencer.c:2583
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr "giá trị cho %s không hợp lệ: %s"
 
-#: sequencer.c:2657
+#: sequencer.c:2690
 msgid "unusable squash-onto"
 msgstr "squash-onto không dùng được"
 
-#: sequencer.c:2677
+#: sequencer.c:2710
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr "bảng tùy chọn dị hình: “%s”"
 
-#: sequencer.c:2769 sequencer.c:4609
+#: sequencer.c:2803 sequencer.c:4636
 msgid "empty commit set passed"
 msgstr "lần chuyển giao trống rỗng đặt là hợp quy cách"
 
-#: sequencer.c:2786
+#: sequencer.c:2820
 msgid "revert is already in progress"
 msgstr "có thao tác hoàn nguyên đang được thực hiện"
 
-#: sequencer.c:2788
+#: sequencer.c:2822
 #, c-format
 msgid "try \"git revert (--continue | %s--abort | --quit)\""
 msgstr "hãy thử \"git revert (--continue | %s--abort | --quit)\""
 
-#: sequencer.c:2791
+#: sequencer.c:2825
 msgid "cherry-pick is already in progress"
 msgstr "có thao tác “cherry-pick” đang được thực hiện"
 
-#: sequencer.c:2793
+#: sequencer.c:2827
 #, c-format
 msgid "try \"git cherry-pick (--continue | %s--abort | --quit)\""
 msgstr "hãy thử \"git cherry-pick (--continue | %s--abort | --quit)\""
 
-#: sequencer.c:2807
+#: sequencer.c:2841
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr "không thể tạo thư mục xếp dãy “%s”"
 
-#: sequencer.c:2822
+#: sequencer.c:2856
 msgid "could not lock HEAD"
 msgstr "không thể khóa HEAD"
 
-#: sequencer.c:2882 sequencer.c:4325
+#: sequencer.c:2916 sequencer.c:4371
 msgid "no cherry-pick or revert in progress"
 msgstr "không cherry-pick hay hoàn nguyên trong tiến trình"
 
-#: sequencer.c:2884 sequencer.c:2895
+#: sequencer.c:2918 sequencer.c:2929
 msgid "cannot resolve HEAD"
 msgstr "không thể phân giải HEAD"
 
-#: sequencer.c:2886 sequencer.c:2930
+#: sequencer.c:2920 sequencer.c:2964
 msgid "cannot abort from a branch yet to be born"
 msgstr "không thể hủy bỏ từ một nhánh mà nó còn chưa được tạo ra"
 
-#: sequencer.c:2916 builtin/grep.c:745
+#: sequencer.c:2950 builtin/grep.c:756
 #, c-format
 msgid "cannot open '%s'"
 msgstr "không mở được “%s”"
 
-#: sequencer.c:2918
+#: sequencer.c:2952
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr "không thể đọc “%s”: %s"
 
-#: sequencer.c:2919
+#: sequencer.c:2953
 msgid "unexpected end of file"
 msgstr "gặp kết thúc tập tin đột xuất"
 
-#: sequencer.c:2925
+#: sequencer.c:2959
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr "tập tin HEAD “pre-cherry-pick” đã lưu “%s” bị hỏng"
 
-#: sequencer.c:2936
+#: sequencer.c:2970
 msgid "You seem to have moved HEAD. Not rewinding, check your HEAD!"
 msgstr ""
 "Bạn có lẽ đã có HEAD đã bị di chuyển đi, Không thể tua, kiểm tra HEAD của "
 "bạn!"
 
-#: sequencer.c:2977
+#: sequencer.c:3011
 msgid "no revert in progress"
 msgstr "không có tiến trình hoàn nguyên nào"
 
-#: sequencer.c:2986
+#: sequencer.c:3020
 msgid "no cherry-pick in progress"
 msgstr "không có cherry-pick đang được thực hiện"
 
-#: sequencer.c:2996
+#: sequencer.c:3030
 msgid "failed to skip the commit"
 msgstr "gặp lỗi khi bỏ qua đối tượng chuyển giao"
 
-#: sequencer.c:3003
+#: sequencer.c:3037
 msgid "there is nothing to skip"
 msgstr "ở đây không có gì để mà bỏ qua cả"
 
-#: sequencer.c:3006
+#: sequencer.c:3040
 #, c-format
 msgid ""
 "have you committed already?\n"
@@ -7266,16 +7301,16 @@ msgstr ""
 "bạn đã sẵn sàng chuyển giao chưa?\n"
 "thử \"git %s --continue\""
 
-#: sequencer.c:3168 sequencer.c:4217
+#: sequencer.c:3202 sequencer.c:4263
 msgid "cannot read HEAD"
 msgstr "không thể đọc HEAD"
 
-#: sequencer.c:3185
+#: sequencer.c:3219
 #, c-format
 msgid "unable to copy '%s' to '%s'"
 msgstr "không thể chép “%s” sang “%s”"
 
-#: sequencer.c:3193
+#: sequencer.c:3227
 #, c-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -7294,27 +7329,27 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:3203
+#: sequencer.c:3237
 #, c-format
 msgid "Could not apply %s... %.*s"
 msgstr "Không thể áp dụng %s… %.*s"
 
-#: sequencer.c:3210
+#: sequencer.c:3244
 #, c-format
 msgid "Could not merge %.*s"
 msgstr "Không hòa trộn %.*s"
 
-#: sequencer.c:3224 sequencer.c:3228 builtin/difftool.c:641
+#: sequencer.c:3258 sequencer.c:3262 builtin/difftool.c:640
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "không thể chép “%s” sang “%s”"
 
-#: sequencer.c:3240
+#: sequencer.c:3274
 #, c-format
 msgid "Executing: %s\n"
 msgstr "Đang thực thi: %s\n"
 
-#: sequencer.c:3255
+#: sequencer.c:3289
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -7329,11 +7364,11 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:3261
+#: sequencer.c:3295
 msgid "and made changes to the index and/or the working tree\n"
 msgstr "và tạo các thay đổi bảng mục lục và/hay cây làm việc\n"
 
-#: sequencer.c:3267
+#: sequencer.c:3301
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -7350,90 +7385,90 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:3328
+#: sequencer.c:3362
 #, c-format
 msgid "illegal label name: '%.*s'"
 msgstr "tên nhãn dị hình: “%.*s”"
 
-#: sequencer.c:3382
+#: sequencer.c:3416
 msgid "writing fake root commit"
 msgstr "ghi lần chuyển giao gốc giả"
 
-#: sequencer.c:3387
+#: sequencer.c:3421
 msgid "writing squash-onto"
 msgstr "đang ghi squash-onto"
 
-#: sequencer.c:3471
+#: sequencer.c:3505
 #, c-format
 msgid "could not resolve '%s'"
 msgstr "không thể phân giải “%s”"
 
-#: sequencer.c:3502
+#: sequencer.c:3538
 msgid "cannot merge without a current revision"
 msgstr "không thể hòa trộn mà không có một điểm xét duyệt hiện tại"
 
-#: sequencer.c:3524
+#: sequencer.c:3560
 #, c-format
 msgid "unable to parse '%.*s'"
 msgstr "không thể phân tích “%.*s”"
 
-#: sequencer.c:3533
+#: sequencer.c:3569
 #, c-format
 msgid "nothing to merge: '%.*s'"
 msgstr "chẳng có gì để hòa trộn: “%.*s”"
 
-#: sequencer.c:3545
+#: sequencer.c:3581
 msgid "octopus merge cannot be executed on top of a [new root]"
 msgstr "hòa trộn octopus không thể được thực thi trên đỉnh của một [new root]"
 
-#: sequencer.c:3561
+#: sequencer.c:3597
 #, c-format
 msgid "could not get commit message of '%s'"
 msgstr "không thể lấy chú thích của lần chuyển giao của “%s”"
 
-#: sequencer.c:3730
+#: sequencer.c:3780
 #, c-format
 msgid "could not even attempt to merge '%.*s'"
 msgstr "không thể ngay cả khi thử hòa trộn “%.*s”"
 
-#: sequencer.c:3746
+#: sequencer.c:3796
 msgid "merge: Unable to write new index file"
 msgstr "merge: Không thể ghi tập tin lưu bảng mục lục mới"
 
-#: sequencer.c:3820
+#: sequencer.c:3870
 msgid "Cannot autostash"
 msgstr "Không thể autostash"
 
-#: sequencer.c:3823
+#: sequencer.c:3873
 #, c-format
 msgid "Unexpected stash response: '%s'"
 msgstr "Gặp đáp ứng stash không cần: “%s”"
 
-#: sequencer.c:3829
+#: sequencer.c:3879
 #, c-format
 msgid "Could not create directory for '%s'"
 msgstr "Không thể tạo thư mục cho “%s”"
 
-#: sequencer.c:3832
+#: sequencer.c:3882
 #, c-format
 msgid "Created autostash: %s\n"
 msgstr "Đã tạo autostash: %s\n"
 
-#: sequencer.c:3836
+#: sequencer.c:3886
 msgid "could not reset --hard"
 msgstr "không thể reset --hard"
 
-#: sequencer.c:3861
+#: sequencer.c:3911
 #, c-format
 msgid "Applied autostash.\n"
 msgstr "Đã áp dụng autostash.\n"
 
-#: sequencer.c:3873
+#: sequencer.c:3923
 #, c-format
 msgid "cannot store %s"
 msgstr "không thử lưu “%s”"
 
-#: sequencer.c:3876
+#: sequencer.c:3926
 #, c-format
 msgid ""
 "%s\n"
@@ -7445,34 +7480,29 @@ msgstr ""
 "Bạn có thể chạy lệnh \"git stash pop\" hay \"git stash drop\" bất kỳ lúc "
 "nào.\n"
 
-#: sequencer.c:3881
+#: sequencer.c:3931
 msgid "Applying autostash resulted in conflicts."
 msgstr "Áp dụng autostash có hiệu quả trong các xung đột."
 
-#: sequencer.c:3882
+#: sequencer.c:3932
 msgid "Autostash exists; creating a new stash entry."
 msgstr "Autostash đã sẵn có; nên tạo một mục stash mới."
 
-#: sequencer.c:3974
-#, c-format
-msgid "%s: not a valid OID"
-msgstr "%s không phải là một OID hợp lệ"
-
-#: sequencer.c:3979 git-rebase--preserve-merges.sh:769
+#: sequencer.c:4025 git-rebase--preserve-merges.sh:769
 msgid "could not detach HEAD"
 msgstr "không thể tách rời HEAD"
 
-#: sequencer.c:3994
+#: sequencer.c:4040
 #, c-format
 msgid "Stopped at HEAD\n"
 msgstr "Dừng lại ở HEAD\n"
 
-#: sequencer.c:3996
+#: sequencer.c:4042
 #, c-format
 msgid "Stopped at %s\n"
 msgstr "Dừng lại ở %s\n"
 
-#: sequencer.c:4004
+#: sequencer.c:4050
 #, c-format
 msgid ""
 "Could not execute the todo command\n"
@@ -7493,58 +7523,58 @@ msgstr ""
 "    git rebase --edit-todo\n"
 "    git rebase --continue\n"
 
-#: sequencer.c:4050
+#: sequencer.c:4096
 #, c-format
 msgid "Rebasing (%d/%d)%s"
 msgstr "Đang cải tổ (%d/%d)%s"
 
-#: sequencer.c:4095
+#: sequencer.c:4141
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr "Dừng lại ở %s…  %.*s\n"
 
-#: sequencer.c:4166
+#: sequencer.c:4212
 #, c-format
 msgid "unknown command %d"
 msgstr "không hiểu câu lệnh %d"
 
-#: sequencer.c:4225
+#: sequencer.c:4271
 msgid "could not read orig-head"
 msgstr "không thể đọc orig-head"
 
-#: sequencer.c:4230
+#: sequencer.c:4276
 msgid "could not read 'onto'"
 msgstr "không thể đọc “onto”."
 
-#: sequencer.c:4244
+#: sequencer.c:4290
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr "không thể cập nhật HEAD thành %s"
 
-#: sequencer.c:4304
+#: sequencer.c:4350
 #, c-format
 msgid "Successfully rebased and updated %s.\n"
 msgstr "Cài tổ và cập nhật %s một cách thành công.\n"
 
-#: sequencer.c:4337
+#: sequencer.c:4383
 msgid "cannot rebase: You have unstaged changes."
 msgstr "không thể cải tổ: Bạn có các thay đổi chưa được đưa lên bệ phóng."
 
-#: sequencer.c:4346
+#: sequencer.c:4392
 msgid "cannot amend non-existing commit"
 msgstr "không thể tu bỏ một lần chuyển giao không tồn tại"
 
-#: sequencer.c:4348
+#: sequencer.c:4394
 #, c-format
 msgid "invalid file: '%s'"
 msgstr "tập tin không hợp lệ: “%s”"
 
-#: sequencer.c:4350
+#: sequencer.c:4396
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr "nội dung không hợp lệ: “%s”"
 
-#: sequencer.c:4353
+#: sequencer.c:4399
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
@@ -7554,62 +7584,57 @@ msgstr ""
 "Bạn có các thay đổi chưa chuyển giao trong thư mục làm việc. Vui lòng\n"
 "chuyển giao chúng trước và sau đó chạy lệnh “git rebase --continue” lần nữa."
 
-#: sequencer.c:4389 sequencer.c:4428
+#: sequencer.c:4435 sequencer.c:4474
 #, c-format
 msgid "could not write file: '%s'"
 msgstr "không thể ghi tập tin: “%s”"
 
-#: sequencer.c:4444
+#: sequencer.c:4490
 msgid "could not remove CHERRY_PICK_HEAD"
 msgstr "không thể xóa bỏ CHERRY_PICK_HEAD"
 
-#: sequencer.c:4451
+#: sequencer.c:4497
 msgid "could not commit staged changes."
 msgstr "không thể chuyển giao các thay đổi đã đưa lên bệ phóng."
 
-#: sequencer.c:4477
-#, c-format
-msgid "invalid committer '%s'"
-msgstr "chuyển giao không hợp lệ '%s'"
-
-#: sequencer.c:4586
+#: sequencer.c:4613
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s: không thể cherry-pick một %s"
 
-#: sequencer.c:4590
+#: sequencer.c:4617
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s: điểm xét duyệt sai"
 
-#: sequencer.c:4625
+#: sequencer.c:4652
 msgid "can't revert as initial commit"
 msgstr "không thể hoàn nguyên một lần chuyển giao khởi tạo"
 
-#: sequencer.c:5102
+#: sequencer.c:5129
 msgid "make_script: unhandled options"
 msgstr "make_script: các tùy chọn được không xử lý"
 
-#: sequencer.c:5105
+#: sequencer.c:5132
 msgid "make_script: error preparing revisions"
 msgstr "make_script: lỗi chuẩn bị điểm hiệu chỉnh"
 
-#: sequencer.c:5347 sequencer.c:5364
+#: sequencer.c:5374 sequencer.c:5391
 msgid "nothing to do"
 msgstr "không có gì để làm"
 
-#: sequencer.c:5383
+#: sequencer.c:5410
 msgid "could not skip unnecessary pick commands"
 msgstr "không thể bỏ qua các lệnh cậy (pick) không cần thiết"
 
-#: sequencer.c:5480
+#: sequencer.c:5504
 msgid "the script was already rearranged."
 msgstr "văn lệnh đã sẵn được sắp đặt rồi."
 
 #: setup.c:133
 #, c-format
 msgid "'%s' is outside repository at '%s'"
-msgstr "“%s” ngoài một kho chứa tại '%s'"
+msgstr "“%s” ngoài một kho chứa tại “%s”"
 
 #: setup.c:185
 #, c-format
@@ -7769,258 +7794,258 @@ msgstr "gặp lỗi khi rẽ nhánh tiến trình"
 msgid "setsid failed"
 msgstr "setsid gặp lỗi"
 
-#: sha1-file.c:470
+#: sha1-file.c:480
 #, c-format
 msgid "object directory %s does not exist; check .git/objects/info/alternates"
 msgstr ""
 "thư mục đối tượng %s không tồn tại; kiểm tra .git/objects/info/alternates"
 
-#: sha1-file.c:521
+#: sha1-file.c:531
 #, c-format
 msgid "unable to normalize alternate object path: %s"
 msgstr "không thể thường hóa đường dẫn đối tượng thay thế: “%s”"
 
-#: sha1-file.c:593
+#: sha1-file.c:603
 #, c-format
 msgid "%s: ignoring alternate object stores, nesting too deep"
 msgstr "%s: đang bỏ qua kho đối tượng thay thế, lồng nhau quá sâu"
 
-#: sha1-file.c:600
+#: sha1-file.c:610
 #, c-format
 msgid "unable to normalize object directory: %s"
 msgstr "không thể chuẩn hóa thư mục đối tượng: “%s”"
 
-#: sha1-file.c:643
+#: sha1-file.c:653
 msgid "unable to fdopen alternates lockfile"
 msgstr "không thể fdopen tập tin khóa thay thế"
 
-#: sha1-file.c:661
+#: sha1-file.c:671
 msgid "unable to read alternates file"
 msgstr "không thể đọc tập tin thay thế"
 
-#: sha1-file.c:668
+#: sha1-file.c:678
 msgid "unable to move new alternates file into place"
 msgstr "không thể di chuyển tập tin thay thế vào chỗ"
 
-#: sha1-file.c:703
+#: sha1-file.c:713
 #, c-format
 msgid "path '%s' does not exist"
 msgstr "đường dẫn “%s” không tồn tại"
 
-#: sha1-file.c:724
+#: sha1-file.c:734
 #, c-format
 msgid "reference repository '%s' as a linked checkout is not supported yet."
 msgstr "kho tham chiếu “%s” như là lấy ra liên kết vẫn chưa được hỗ trợ."
 
-#: sha1-file.c:730
+#: sha1-file.c:740
 #, c-format
 msgid "reference repository '%s' is not a local repository."
 msgstr "kho tham chiếu “%s” không phải là một kho nội bộ."
 
-#: sha1-file.c:736
+#: sha1-file.c:746
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "kho tham chiếu “%s” là nông"
 
-#: sha1-file.c:744
+#: sha1-file.c:754
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "kho tham chiếu “%s” bị cấy ghép"
 
-#: sha1-file.c:804
+#: sha1-file.c:814
 #, c-format
 msgid "invalid line while parsing alternate refs: %s"
 msgstr "dòng không hợp lệ trong khi phân tích các tham chiếu thay thế: %s"
 
-#: sha1-file.c:954
+#: sha1-file.c:964
 #, c-format
 msgid "attempting to mmap %<PRIuMAX> over limit %<PRIuMAX>"
 msgstr "đang cố để mmap %<PRIuMAX> vượt quá giới hạn %<PRIuMAX>"
 
-#: sha1-file.c:975
+#: sha1-file.c:985
 msgid "mmap failed"
 msgstr "mmap gặp lỗi"
 
-#: sha1-file.c:1139
+#: sha1-file.c:1149
 #, c-format
 msgid "object file %s is empty"
 msgstr "tập tin đối tượng %s trống rỗng"
 
-#: sha1-file.c:1274 sha1-file.c:2467
+#: sha1-file.c:1284 sha1-file.c:2477
 #, c-format
 msgid "corrupt loose object '%s'"
 msgstr "đối tượng mất hỏng “%s”"
 
-#: sha1-file.c:1276 sha1-file.c:2471
+#: sha1-file.c:1286 sha1-file.c:2481
 #, c-format
 msgid "garbage at end of loose object '%s'"
 msgstr "gặp rác tại cuối của đối tượng bị mất “%s”"
 
-#: sha1-file.c:1318
+#: sha1-file.c:1328
 msgid "invalid object type"
 msgstr "kiểu đối tượng không hợp lệ"
 
-#: sha1-file.c:1402
+#: sha1-file.c:1412
 #, c-format
 msgid "unable to unpack %s header with --allow-unknown-type"
 msgstr "không thể giải nén phần đầu gói %s với --allow-unknown-type"
 
-#: sha1-file.c:1405
+#: sha1-file.c:1415
 #, c-format
 msgid "unable to unpack %s header"
 msgstr "không thể giải gói phần đầu %s"
 
-#: sha1-file.c:1411
+#: sha1-file.c:1421
 #, c-format
 msgid "unable to parse %s header with --allow-unknown-type"
 msgstr "không thể phân tích phần đầu gói %s với --allow-unknown-type"
 
-#: sha1-file.c:1414
+#: sha1-file.c:1424
 #, c-format
 msgid "unable to parse %s header"
 msgstr "không thể phân tích phần đầu của “%s”"
 
-#: sha1-file.c:1641
+#: sha1-file.c:1651
 #, c-format
 msgid "failed to read object %s"
 msgstr "gặp lỗi khi đọc đối tượng “%s”"
 
-#: sha1-file.c:1645
+#: sha1-file.c:1655
 #, c-format
 msgid "replacement %s not found for %s"
 msgstr "c%s thay thế không được tìm thấy cho %s"
 
-#: sha1-file.c:1649
+#: sha1-file.c:1659
 #, c-format
 msgid "loose object %s (stored in %s) is corrupt"
 msgstr "đối tượng mất %s (được lưu trong %s) bị hỏng"
 
-#: sha1-file.c:1653
+#: sha1-file.c:1663
 #, c-format
 msgid "packed object %s (stored in %s) is corrupt"
 msgstr "đối tượng đã đóng gói %s (được lưu trong %s) bị hỏng"
 
-#: sha1-file.c:1758
+#: sha1-file.c:1768
 #, c-format
 msgid "unable to write file %s"
 msgstr "không thể ghi tập tin %s"
 
-#: sha1-file.c:1765
+#: sha1-file.c:1775
 #, c-format
 msgid "unable to set permission to '%s'"
 msgstr "không thể đặt quyền thành “%s”"
 
-#: sha1-file.c:1772
+#: sha1-file.c:1782
 msgid "file write error"
 msgstr "lỗi ghi tập tin"
 
-#: sha1-file.c:1792
+#: sha1-file.c:1802
 msgid "error when closing loose object file"
 msgstr "gặp lỗi trong khi đóng tập tin đối tượng"
 
-#: sha1-file.c:1857
+#: sha1-file.c:1867
 #, c-format
 msgid "insufficient permission for adding an object to repository database %s"
 msgstr ""
 "không đủ thẩm quyền để thêm một đối tượng vào cơ sở dữ liệu kho chứa %s"
 
-#: sha1-file.c:1859
+#: sha1-file.c:1869
 msgid "unable to create temporary file"
 msgstr "không thể tạo tập tin tạm thời"
 
-#: sha1-file.c:1883
+#: sha1-file.c:1893
 msgid "unable to write loose object file"
 msgstr "không thể ghi tập tin đối tượng đã mất"
 
-#: sha1-file.c:1889
+#: sha1-file.c:1899
 #, c-format
 msgid "unable to deflate new object %s (%d)"
 msgstr "không thể xả nén đối tượng mới %s (%d)"
 
-#: sha1-file.c:1893
+#: sha1-file.c:1903
 #, c-format
 msgid "deflateEnd on object %s failed (%d)"
 msgstr "deflateEnd trên đối tượng %s gặp lỗi (%d)"
 
-#: sha1-file.c:1897
+#: sha1-file.c:1907
 #, c-format
 msgid "confused by unstable object source data for %s"
 msgstr "chưa rõ ràng baowir dữ liệu nguồn đối tượng không ổn định cho %s"
 
-#: sha1-file.c:1907 builtin/pack-objects.c:1086
+#: sha1-file.c:1917 builtin/pack-objects.c:1086
 #, c-format
 msgid "failed utime() on %s"
 msgstr "gặp lỗi utime() trên “%s”"
 
-#: sha1-file.c:1984
+#: sha1-file.c:1994
 #, c-format
 msgid "cannot read object for %s"
 msgstr "không thể đọc đối tượng cho %s"
 
-#: sha1-file.c:2035
+#: sha1-file.c:2045
 msgid "corrupt commit"
 msgstr "lần chuyển giao sai hỏng"
 
-#: sha1-file.c:2043
+#: sha1-file.c:2053
 msgid "corrupt tag"
 msgstr "thẻ sai hỏng"
 
-#: sha1-file.c:2143
+#: sha1-file.c:2153
 #, c-format
 msgid "read error while indexing %s"
 msgstr "gặp lỗi đọc khi đánh mục lục %s"
 
-#: sha1-file.c:2146
+#: sha1-file.c:2156
 #, c-format
 msgid "short read while indexing %s"
 msgstr "không đọc ngắn khi đánh mục lục %s"
 
-#: sha1-file.c:2219 sha1-file.c:2229
+#: sha1-file.c:2229 sha1-file.c:2239
 #, c-format
 msgid "%s: failed to insert into database"
 msgstr "%s: gặp lỗi khi thêm vào cơ sở dữ liệu"
 
-#: sha1-file.c:2235
+#: sha1-file.c:2245
 #, c-format
 msgid "%s: unsupported file type"
 msgstr "%s: kiểu tập tin không được hỗ trợ"
 
-#: sha1-file.c:2259
+#: sha1-file.c:2269
 #, c-format
 msgid "%s is not a valid object"
 msgstr "%s không phải là một đối tượng hợp lệ"
 
-#: sha1-file.c:2261
+#: sha1-file.c:2271
 #, c-format
 msgid "%s is not a valid '%s' object"
 msgstr "%s không phải là một đối tượng “%s” hợp lệ"
 
-#: sha1-file.c:2288 builtin/index-pack.c:192
+#: sha1-file.c:2298 builtin/index-pack.c:192
 #, c-format
 msgid "unable to open %s"
 msgstr "không thể mở %s"
 
-#: sha1-file.c:2478 sha1-file.c:2531
+#: sha1-file.c:2488 sha1-file.c:2541
 #, c-format
 msgid "hash mismatch for %s (expected %s)"
 msgstr "mã băm không khớp cho %s (cần %s)"
 
-#: sha1-file.c:2502
+#: sha1-file.c:2512
 #, c-format
 msgid "unable to mmap %s"
 msgstr "không thể mmap %s"
 
-#: sha1-file.c:2507
+#: sha1-file.c:2517
 #, c-format
 msgid "unable to unpack header of %s"
 msgstr "không thể giải gói phần đầu của “%s”"
 
-#: sha1-file.c:2513
+#: sha1-file.c:2523
 #, c-format
 msgid "unable to parse header of %s"
 msgstr "không thể phân tích phần đầu của “%s”"
 
-#: sha1-file.c:2524
+#: sha1-file.c:2534
 #, c-format
 msgid "unable to unpack contents of %s"
 msgstr "không thể giải gói nội dung của “%s”"
@@ -8050,7 +8075,7 @@ msgstr ""
 "bởi vì nó sẽ bị bỏ qua khi bạn chỉ định 40-hex. Những tham chiếu này\n"
 "có lẽ được tạo ra bởi một sai sót nào đó. Ví dụ,\n"
 "\n"
-"  git switch -c $br $(git rev-parse ...)\n"
+"  git switch -c $br $(git rev-parse )\n"
 "\n"
 "với \"$br\" không hiểu lý do vì sao trống rỗng và một tham chiếu 40-hex được "
 "tạo ra.\n"
@@ -8061,12 +8086,12 @@ msgstr ""
 #: sha1-name.c:916
 #, c-format
 msgid "log for '%.*s' only goes back to %s"
-msgstr "nhật ký cho '%.*s' chỉ đi lại cho %s"
+msgstr "nhật ký cho “%.*s” chỉ trở lại đến %s"
 
 #: sha1-name.c:924
 #, c-format
 msgid "log for '%.*s' only has %d entries"
-msgstr "nhật ký cho '%.*s' chỉ có %d mục"
+msgstr "nhật ký cho “%.*s” chỉ có %d mục"
 
 #: sha1-name.c:1702
 #, c-format
@@ -8079,13 +8104,13 @@ msgid ""
 "path '%s' exists, but not '%s'\n"
 "hint: Did you mean '%.*s:%s' aka '%.*s:./%s'?"
 msgstr ""
-"đường dẫn '%s' tồn tại, nhưng không phải '%s'\n"
-"gợi ý: Có phải ý bạn là '%.*s:%s' aka '%.*s:./%s'?"
+"đường dẫn “%s” tồn tại, nhưng không phải “%s”\n"
+"gợi ý: Có phải ý bạn là “%.*s:%s” aka “%.*s:./%s”?"
 
 #: sha1-name.c:1717
 #, c-format
 msgid "path '%s' does not exist in '%.*s'"
-msgstr "đường dẫn “%s” không tồn tại trong '%.*s'"
+msgstr "đường dẫn “%s” không tồn tại trong “%.*s”"
 
 #: sha1-name.c:1745
 #, c-format
@@ -8093,8 +8118,8 @@ msgid ""
 "path '%s' is in the index, but not at stage %d\n"
 "hint: Did you mean ':%d:%s'?"
 msgstr ""
-"đường dẫn '%s' nằm trong chỉ mục, nhưng không phải ở giai đoạn %d\n"
-"gợi ý: Có phải ý bạn là ':%d:%s'?"
+"đường dẫn “%s” nằm trong chỉ mục, nhưng không phải ở giai đoạn %d\n"
+"gợi ý: Có phải ý bạn là “:%d:%s”?"
 
 #: sha1-name.c:1761
 #, c-format
@@ -8102,13 +8127,13 @@ msgid ""
 "path '%s' is in the index, but not '%s'\n"
 "hint: Did you mean ':%d:%s' aka ':%d:./%s'?"
 msgstr ""
-"đường dẫn '%s' nằm trong chỉ mục, nhưng không phải '%s'\n"
-"gợi ý: Có phải ý bạn là ':% d:%s ' aka ':%d:./%s'?"
+"đường dẫn “%s” nằm trong chỉ mục, nhưng không phải “%s”\n"
+"gợi ý: Có phải ý bạn là “:% d:%s “ aka “:%d:./%s”?"
 
 #: sha1-name.c:1769
 #, c-format
 msgid "path '%s' exists on disk, but not in the index"
-msgstr "đường dẫn '%s' tồn tại trên đĩa, nhưng không có trong chỉ mục"
+msgstr "đường dẫn “%s” tồn tại trên đĩa, nhưng không có trong chỉ mục"
 
 #: sha1-name.c:1771
 #, c-format
@@ -8122,7 +8147,7 @@ msgstr "cú pháp đường dẫn tương đối không thể thể dùng ngoài
 #: sha1-name.c:1922
 #, c-format
 msgid "invalid object name '%.*s'."
-msgstr "'%.*s' không phải là tên đối tượng hợp lệ"
+msgstr "“%.*s” không phải là tên đối tượng hợp lệ."
 
 #. TRANSLATORS: IEC 80000-13:2008 gibibyte
 #: strbuf.c:848
@@ -8174,8 +8199,8 @@ msgid "%u byte/s"
 msgid_plural "%u bytes/s"
 msgstr[0] "%u byte/giây"
 
-#: strbuf.c:1166 wrapper.c:199 wrapper.c:369 builtin/am.c:733
-#: builtin/rebase.c:858
+#: strbuf.c:1166 wrapper.c:199 wrapper.c:369 builtin/am.c:719
+#: builtin/rebase.c:864
 #, c-format
 msgid "could not open '%s' for writing"
 msgstr "không thể mở “%s” để ghi"
@@ -8252,7 +8277,7 @@ msgid ""
 "Submodule in commit %s at path: '%s' collides with a submodule named the "
 "same. Skipping it."
 msgstr ""
-"Mô-đun-con trong lần chuyển giao %s tại đường dẫn: '%s' va chạm với mô-đun-"
+"Mô-đun-con trong lần chuyển giao %s tại đường dẫn: “%s” va chạm với mô-đun-"
 "con cùng tên. Nên bỏ qua nó."
 
 #: submodule.c:919
@@ -8275,7 +8300,7 @@ msgstr ""
 msgid "process for submodule '%s' failed"
 msgstr "xử lý cho mô-đun-con “%s” gặp lỗi"
 
-#: submodule.c:1156 builtin/branch.c:678 builtin/submodule--helper.c:2469
+#: submodule.c:1156 builtin/branch.c:680 builtin/submodule--helper.c:2469
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr "Gặp lỗi khi phân giải HEAD như là một tham chiếu hợp lệ."
 
@@ -8360,7 +8385,7 @@ msgstr "Mô-đun-con “%s” không thể được cập nhật."
 #: submodule.c:2042
 #, c-format
 msgid "submodule git dir '%s' is inside git dir '%.*s'"
-msgstr "thư mục git mô đun con '%s' là bên trong git DIR '%.*s'"
+msgstr "thư mục git mô đun con “%s” là bên trong git DIR “%.*s”"
 
 #: submodule.c:2063
 #, c-format
@@ -8378,7 +8403,7 @@ msgstr "không thể tìm kiếm tên cho mô-đun-con “%s”"
 #: submodule.c:2079
 #, c-format
 msgid "refusing to move '%s' into an existing git dir"
-msgstr "từ chối di chuyển ' %s ' vào trong một thư mục git sẵn có"
+msgstr "từ chối di chuyển “%s” vào trong một thư mục git sẵn có"
 
 #: submodule.c:2086
 #, c-format
@@ -8411,7 +8436,7 @@ msgstr "chạy lệnh kéo theo “%s” gặp lỗi"
 msgid "unknown value '%s' for key '%s'"
 msgstr "không hiểu giá trị “%s” cho khóa “%s”"
 
-#: trailer.c:537 trailer.c:542 builtin/remote.c:298 builtin/remote.c:323
+#: trailer.c:537 trailer.c:542 builtin/remote.c:299 builtin/remote.c:324
 #, c-format
 msgid "more than one %s"
 msgstr "nhiều hơn một %s"
@@ -8498,7 +8523,7 @@ msgstr "không thể chạy fast-import"
 msgid "error while running fast-import"
 msgstr "gặp lỗi trong khi chạy fast-import"
 
-#: transport-helper.c:549 transport-helper.c:1226
+#: transport-helper.c:549 transport-helper.c:1236
 #, c-format
 msgid "could not read ref %s"
 msgstr "không thể đọc tham chiếu %s"
@@ -8516,7 +8541,7 @@ msgstr "giao thức này không hỗ trợ cài đặt đường dẫn dịch v
 msgid "invalid remote service path"
 msgstr "đường dẫn dịch vụ máy chủ không hợp lệ"
 
-#: transport-helper.c:661 transport.c:1428
+#: transport-helper.c:661 transport.c:1446
 msgid "operation not supported by protocol"
 msgstr "thao tác không được gia thức hỗ trợ"
 
@@ -8527,61 +8552,66 @@ msgstr "không thể kết nối đến dịch vụ phụ %s"
 
 #: transport-helper.c:745
 msgid "'option' without a matching 'ok/error' directive"
-msgstr "'option' không có chỉ thị 'ok/error' tương ứng"
+msgstr "“option” không có chỉ thị “ok/error” tương ứng"
 
 #: transport-helper.c:788
 #, c-format
 msgid "expected ok/error, helper said '%s'"
 msgstr "cần ok/error, nhưng bộ hỗ trợ lại nói “%s”"
 
-#: transport-helper.c:841
+#: transport-helper.c:845
 #, c-format
 msgid "helper reported unexpected status of %s"
 msgstr "bộ hỗ trợ báo cáo rằng không cần tình trạng của %s"
 
-#: transport-helper.c:924
+#: transport-helper.c:928
 #, c-format
 msgid "helper %s does not support dry-run"
 msgstr "helper %s không hỗ trợ dry-run"
 
-#: transport-helper.c:927
+#: transport-helper.c:931
 #, c-format
 msgid "helper %s does not support --signed"
 msgstr "helper %s không hỗ trợ --signed"
 
-#: transport-helper.c:930
+#: transport-helper.c:934
 #, c-format
 msgid "helper %s does not support --signed=if-asked"
 msgstr "helper %s không hỗ trợ --signed=if-asked"
 
-#: transport-helper.c:935
+#: transport-helper.c:939
 #, c-format
 msgid "helper %s does not support --atomic"
 msgstr "helper %s không hỗ trợ --atomic"
 
-#: transport-helper.c:941
+#: transport-helper.c:943
+#, c-format
+msgid "helper %s does not support --%s"
+msgstr "helper %s không hỗ trợ --%s"
+
+#: transport-helper.c:950
 #, c-format
 msgid "helper %s does not support 'push-option'"
 msgstr "helper %s không hỗ trợ “push-option”"
 
-#: transport-helper.c:1040
+#: transport-helper.c:1050
 msgid "remote-helper doesn't support push; refspec needed"
 msgstr "remote-helper không hỗ trợ push; cần đặc tả tham chiếu"
 
-#: transport-helper.c:1045
+#: transport-helper.c:1055
 #, c-format
 msgid "helper %s does not support 'force'"
 msgstr "helper %s không hỗ trợ “force”"
 
-#: transport-helper.c:1092
+#: transport-helper.c:1102
 msgid "couldn't run fast-export"
 msgstr "không thể chạy fast-export"
 
-#: transport-helper.c:1097
+#: transport-helper.c:1107
 msgid "error while running fast-export"
 msgstr "gặp lỗi trong khi chạy fast-export"
 
-#: transport-helper.c:1122
+#: transport-helper.c:1132
 #, c-format
 msgid ""
 "No refs in common and none specified; doing nothing.\n"
@@ -8591,52 +8621,52 @@ msgstr ""
 "cả.\n"
 "Tuy nhiên bạn nên chỉ định một nhánh.\n"
 
-#: transport-helper.c:1203
+#: transport-helper.c:1213
 #, c-format
 msgid "unsupported object format '%s'"
 msgstr "không hỗ trợ định dạng đối tượng “%s”"
 
-#: transport-helper.c:1212
+#: transport-helper.c:1222
 #, c-format
 msgid "malformed response in ref list: %s"
 msgstr "đáp ứng sai dạng trong danh sách tham chiếu: %s"
 
-#: transport-helper.c:1364
+#: transport-helper.c:1374
 #, c-format
 msgid "read(%s) failed"
 msgstr "read(%s) gặp lỗi"
 
-#: transport-helper.c:1391
+#: transport-helper.c:1401
 #, c-format
 msgid "write(%s) failed"
 msgstr "write(%s) gặp lỗi"
 
-#: transport-helper.c:1440
+#: transport-helper.c:1450
 #, c-format
 msgid "%s thread failed"
 msgstr "tuyến trình %s gặp lỗi"
 
-#: transport-helper.c:1444
+#: transport-helper.c:1454
 #, c-format
 msgid "%s thread failed to join: %s"
 msgstr "tuyến trình %s gặp lỗi khi gia nhập: %s"
 
-#: transport-helper.c:1463 transport-helper.c:1467
+#: transport-helper.c:1473 transport-helper.c:1477
 #, c-format
 msgid "can't start thread for copying data: %s"
 msgstr "không thể khởi chạy tuyến trình để sao chép dữ liệu: %s"
 
-#: transport-helper.c:1504
+#: transport-helper.c:1514
 #, c-format
 msgid "%s process failed to wait"
 msgstr "xử lý %s gặp lỗi khi đợi"
 
-#: transport-helper.c:1508
+#: transport-helper.c:1518
 #, c-format
 msgid "%s process failed"
 msgstr "xử lý %s gặp lỗi"
 
-#: transport-helper.c:1526 transport-helper.c:1535
+#: transport-helper.c:1536 transport-helper.c:1545
 msgid "can't start thread for copying data"
 msgstr "không thể khởi chạy tuyến trình cho việc chép dữ liệu"
 
@@ -8663,29 +8693,29 @@ msgstr "xem protocol.version trong “git help config” để có thêm thông
 msgid "server options require protocol version 2 or later"
 msgstr "các tùy chọn máy chủ yêu cầu giao thức phiên bản 2 hoặc mới hơn"
 
-#: transport.c:712
+#: transport.c:727
 msgid "could not parse transport.color.* config"
 msgstr "không thể phân tích cú pháp cấu hình transport.color.*"
 
-#: transport.c:785
+#: transport.c:802
 msgid "support for protocol v2 not implemented yet"
 msgstr "việc hỗ trợ giao thức v2 chưa được thực hiện"
 
-#: transport.c:919
+#: transport.c:936
 #, c-format
 msgid "unknown value for config '%s': %s"
 msgstr "không hiểu giá trị cho cho cấu hình “%s”: %s"
 
-#: transport.c:985
+#: transport.c:1002
 #, c-format
 msgid "transport '%s' not allowed"
 msgstr "không cho phép phương thức vận chuyển “%s”"
 
-#: transport.c:1038
+#: transport.c:1055
 msgid "git-over-rsync is no longer supported"
 msgstr "git-over-rsync không còn được hỗ trợ nữa"
 
-#: transport.c:1140
+#: transport.c:1157
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
@@ -8694,7 +8724,7 @@ msgstr ""
 "Các đường dẫn mô-đun-con sau đây có chứa các thay đổi cái mà\n"
 "có thể được tìm thấy trên mọi máy phục vụ:\n"
 
-#: transport.c:1144
+#: transport.c:1161
 #, c-format
 msgid ""
 "\n"
@@ -8721,11 +8751,11 @@ msgstr ""
 "để đẩy chúng lên máy phục vụ.\n"
 "\n"
 
-#: transport.c:1152
+#: transport.c:1169
 msgid "Aborting."
 msgstr "Bãi bỏ."
 
-#: transport.c:1297
+#: transport.c:1315
 msgid "failed to push all needed submodules"
 msgstr "gặp lỗi khi đẩy dữ liệu của tất cả các mô-đun-con cần thiết"
 
@@ -8994,8 +9024,8 @@ msgid ""
 "After fixing the above paths, you may want to run `git sparse-checkout "
 "reapply`.\n"
 msgstr ""
-"Sau khi sửa các đường dẫn phía trên, bạn có thể chạy `git sparse-checkout "
-"reapply`.\n"
+"Sau khi sửa các đường dẫn phía trên, bạn có thể chạy git sparse-checkout "
+"reapply.\n"
 
 #: unpack-trees.c:350
 msgid "Updating files"
@@ -9015,7 +9045,7 @@ msgstr ""
 msgid "Updating index flags"
 msgstr "Đang cập nhật các cờ mục lục"
 
-#: upload-pack.c:1516
+#: upload-pack.c:1550
 msgid "expected flush after fetch arguments"
 msgstr "cần đẩy dữ liệu lên đĩa sau các tham số của lệnh fetch"
 
@@ -9052,7 +9082,7 @@ msgstr "đoạn đường dẫn “..” không hợp lệ"
 msgid "Fetching objects"
 msgstr "Đang lấy về các đối tượng"
 
-#: worktree.c:236 builtin/am.c:2116
+#: worktree.c:236 builtin/am.c:2103
 #, c-format
 msgid "failed to read '%s'"
 msgstr "gặp lỗi khi đọc “%s”"
@@ -9305,7 +9335,7 @@ msgid ""
 msgstr ""
 "\n"
 "Nó cần %.2f giây để tính toán giá trị của trước/sau của nhánh.\n"
-"Bạn có thể dùng '--no-ahead-behind' tránh phải điều này.\n"
+"Bạn có thể dùng “--no-ahead-behind” tránh phải điều này.\n"
 
 #: wt-status.c:1140
 msgid "You have unmerged paths."
@@ -9680,7 +9710,7 @@ msgid "cannot %s: Your index contains uncommitted changes."
 msgstr ""
 "không thể %s: Mục lục của bạn có chứa các thay đổi chưa được chuyển giao."
 
-#: compat/precompose_utf8.c:58 builtin/clone.c:456
+#: compat/precompose_utf8.c:58 builtin/clone.c:457
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "gặp lỗi khi bỏ liên kết (unlink) “%s”"
@@ -9708,7 +9738,7 @@ msgid "Unstaged changes after refreshing the index:"
 msgstr ""
 "Đưa ra khỏi bệ phóng các thay đổi sau khi làm tươi mới lại bảng mục lục:"
 
-#: builtin/add.c:272 builtin/rev-parse.c:904
+#: builtin/add.c:272 builtin/rev-parse.c:908
 msgid "Could not read the index"
 msgstr "Không thể đọc bảng mục lục"
 
@@ -9746,8 +9776,8 @@ msgstr ""
 "của bạn:\n"
 
 #: builtin/add.c:328 builtin/clean.c:904 builtin/fetch.c:166 builtin/mv.c:124
-#: builtin/prune-packed.c:14 builtin/pull.c:204 builtin/push.c:538
-#: builtin/remote.c:1422 builtin/rm.c:242 builtin/send-pack.c:184
+#: builtin/prune-packed.c:14 builtin/pull.c:204 builtin/push.c:559
+#: builtin/remote.c:1427 builtin/rm.c:242 builtin/send-pack.c:190
 msgid "dry run"
 msgstr "chạy thử"
 
@@ -9755,7 +9785,7 @@ msgstr "chạy thử"
 msgid "interactive picking"
 msgstr "sửa bằng cách tương tác"
 
-#: builtin/add.c:332 builtin/checkout.c:1529 builtin/reset.c:308
+#: builtin/add.c:332 builtin/checkout.c:1547 builtin/reset.c:308
 msgid "select hunks interactively"
 msgstr "chọn “hunks” theo kiểu tương tác"
 
@@ -9813,7 +9843,7 @@ msgstr "cảnh báo khi thêm một kho nhúng"
 
 #: builtin/add.c:351
 msgid "backend for `git stash -p`"
-msgstr "ứng dụng chạy phía sau cho 'git stash -p'"
+msgstr "ứng dụng chạy phía sau cho “git stash -p”"
 
 #: builtin/add.c:369
 #, c-format
@@ -9886,13 +9916,13 @@ msgstr "Tùy chọn --ignore-missing chỉ có thể được dùng cùng với
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr "--chmod tham số “%s” phải hoặc là -x hay +x"
 
-#: builtin/add.c:507 builtin/checkout.c:1697 builtin/commit.c:351
-#: builtin/reset.c:328 builtin/rm.c:272 builtin/stash.c:1503
+#: builtin/add.c:507 builtin/checkout.c:1715 builtin/commit.c:351
+#: builtin/reset.c:328 builtin/rm.c:272 builtin/stash.c:1502
 msgid "--pathspec-from-file is incompatible with pathspec arguments"
 msgstr "--pathspec-from-file xung khắc với các tham số đặc tả đường dẫn"
 
-#: builtin/add.c:514 builtin/checkout.c:1709 builtin/commit.c:357
-#: builtin/reset.c:334 builtin/rm.c:278 builtin/stash.c:1509
+#: builtin/add.c:514 builtin/checkout.c:1727 builtin/commit.c:357
+#: builtin/reset.c:334 builtin/rm.c:278 builtin/stash.c:1508
 msgid "--pathspec-file-nul requires --pathspec-from-file"
 msgstr "--pathspec-file-nul cần --pathspec-from-file"
 
@@ -9907,118 +9937,113 @@ msgid ""
 "Turn this message off by running\n"
 "\"git config advice.addEmptyPathspec false\""
 msgstr ""
-"Có lẽ bạn muốn chạy 'git add .'?\n"
+"Có lẽ bạn muốn chạy “git add .”?\n"
 "Tắt thông báo này bằng cách chạy lệnh\n"
 "\"git config advice.addEmptyPathspec false\""
 
-#: builtin/am.c:160
-#, c-format
-msgid "invalid committer: %s"
-msgstr "chuyển giao không hợp lệ: %s"
-
-#: builtin/am.c:366
+#: builtin/am.c:352
 msgid "could not parse author script"
 msgstr "không thể phân tích cú pháp văn lệnh tác giả"
 
-#: builtin/am.c:450
+#: builtin/am.c:436
 #, c-format
 msgid "'%s' was deleted by the applypatch-msg hook"
 msgstr "“%s” bị xóa bởi móc applypatch-msg"
 
-#: builtin/am.c:492
+#: builtin/am.c:478
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "Dòng đầu vào dị hình: “%s”."
 
-#: builtin/am.c:530
+#: builtin/am.c:516
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "Gặp lỗi khi sao chép ghi chú (note) từ “%s” tới “%s”"
 
-#: builtin/am.c:556
+#: builtin/am.c:542
 msgid "fseek failed"
 msgstr "fseek gặp lỗi"
 
-#: builtin/am.c:744
+#: builtin/am.c:730
 #, c-format
 msgid "could not parse patch '%s'"
 msgstr "không thể phân tích cú pháp “%s”"
 
-#: builtin/am.c:809
+#: builtin/am.c:795
 msgid "Only one StGIT patch series can be applied at once"
 msgstr "Chỉ có một sê-ri miếng vá StGIT được áp dụng một lúc"
 
-#: builtin/am.c:857
+#: builtin/am.c:843
 msgid "invalid timestamp"
 msgstr "dấu thời gian không hợp lệ"
 
-#: builtin/am.c:862 builtin/am.c:874
+#: builtin/am.c:848 builtin/am.c:860
 msgid "invalid Date line"
 msgstr "dòng Ngày tháng không hợp lệ"
 
-#: builtin/am.c:869
+#: builtin/am.c:855
 msgid "invalid timezone offset"
 msgstr "độ lệch múi giờ không hợp lệ"
 
-#: builtin/am.c:962
+#: builtin/am.c:948
 msgid "Patch format detection failed."
 msgstr "Dò tìm định dạng miếng vá gặp lỗi."
 
-#: builtin/am.c:967 builtin/clone.c:409
+#: builtin/am.c:953 builtin/clone.c:410
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "tạo thư mục \"%s\" gặp lỗi"
 
-#: builtin/am.c:972
+#: builtin/am.c:958
 msgid "Failed to split patches."
 msgstr "Gặp lỗi khi chia nhỏ các miếng vá."
 
-#: builtin/am.c:1103
+#: builtin/am.c:1089
 #, c-format
 msgid "When you have resolved this problem, run \"%s --continue\"."
 msgstr "Khi bạn đã giải quyết xong trục trặc này, hãy chạy \"%s --continue\"."
 
-#: builtin/am.c:1104
+#: builtin/am.c:1090
 #, c-format
 msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
 msgstr ""
 "Nếu bạn muốn bỏ qua miếng vá này, hãy chạy lệnh \"%s --skip\" để thay thế."
 
-#: builtin/am.c:1105
+#: builtin/am.c:1091
 #, c-format
 msgid "To restore the original branch and stop patching, run \"%s --abort\"."
 msgstr "Để phục hồi lại nhánh gốc và dừng vá, hãy chạy \"%s --abort\"."
 
-#: builtin/am.c:1188
+#: builtin/am.c:1174
 msgid "Patch sent with format=flowed; space at the end of lines might be lost."
 msgstr ""
 "Miếng vá được gửi với format=flowed; khoảng trống ở cuối của các dòng có thể "
 "bị mất."
 
-#: builtin/am.c:1216
+#: builtin/am.c:1202
 msgid "Patch is empty."
 msgstr "Miếng vá trống rỗng."
 
-#: builtin/am.c:1281
+#: builtin/am.c:1267
 #, c-format
 msgid "missing author line in commit %s"
 msgstr "thiếu dòng tác giả trong lần chuyển gia %s"
 
-#: builtin/am.c:1284
+#: builtin/am.c:1270
 #, c-format
 msgid "invalid ident line: %.*s"
 msgstr "dòng định danh không hợp lệ: %.*s"
 
-#: builtin/am.c:1503
+#: builtin/am.c:1489
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
 msgstr "Kho thiếu đối tượng blob cần thiết để thực hiện “3-way merge”."
 
-#: builtin/am.c:1505
+#: builtin/am.c:1491
 msgid "Using index info to reconstruct a base tree..."
 msgstr ""
 "Sử dụng thông tin trong bảng mục lục để cấu trúc lại một cây (tree) cơ sở…"
 
-#: builtin/am.c:1524
+#: builtin/am.c:1510
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -10026,24 +10051,24 @@ msgstr ""
 "Bạn đã sửa miếng vá của mình bằng cách thủ công à?\n"
 "Nó không thể áp dụng các blob đã được ghi lại trong bảng mục lục của nó."
 
-#: builtin/am.c:1530
+#: builtin/am.c:1516
 msgid "Falling back to patching base and 3-way merge..."
 msgstr "Đang dùng phương án dự phòng: vá bản cơ sở và “hòa trộn 3-đường”…"
 
-#: builtin/am.c:1556
+#: builtin/am.c:1542
 msgid "Failed to merge in the changes."
 msgstr "Gặp lỗi khi trộn vào các thay đổi."
 
-#: builtin/am.c:1588
+#: builtin/am.c:1574
 msgid "applying to an empty history"
 msgstr "áp dụng vào một lịch sử trống rỗng"
 
-#: builtin/am.c:1639 builtin/am.c:1643
+#: builtin/am.c:1626 builtin/am.c:1630
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr "không thể phục hồi: %s không tồn tại."
 
-#: builtin/am.c:1661
+#: builtin/am.c:1648
 msgid "Commit Body is:"
 msgstr "Thân của lần chuyển giao là:"
 
@@ -10051,41 +10076,41 @@ msgstr "Thân của lần chuyển giao là:"
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1671
+#: builtin/am.c:1658
 #, c-format
 msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
 msgstr ""
 "Áp dụng? đồng ý [y]/khô[n]g/chỉnh sửa [e]/hiển thị miếng [v]á/chấp nhận tất "
 "cả [a]: "
 
-#: builtin/am.c:1717 builtin/commit.c:395
+#: builtin/am.c:1704 builtin/commit.c:395
 msgid "unable to write index file"
 msgstr "không thể ghi tập tin lưu mục lục"
 
-#: builtin/am.c:1721
+#: builtin/am.c:1708
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr "Bảng mục lục bẩn: không thể áp dụng các miếng vá (bẩn: %s)"
 
-#: builtin/am.c:1761 builtin/am.c:1829
+#: builtin/am.c:1748 builtin/am.c:1816
 #, c-format
 msgid "Applying: %.*s"
 msgstr "Áp dụng: %.*s"
 
-#: builtin/am.c:1778
+#: builtin/am.c:1765
 msgid "No changes -- Patch already applied."
 msgstr "Không thay đổi gì cả -- Miếng vá đã được áp dụng rồi."
 
-#: builtin/am.c:1784
+#: builtin/am.c:1771
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "Gặp lỗi khi vá tại %s %.*s"
 
-#: builtin/am.c:1788
+#: builtin/am.c:1775
 msgid "Use 'git am --show-current-patch=diff' to see the failed patch"
 msgstr "Dùng “git am --show-current-patch=diff” để xem miếng vá bị lỗi"
 
-#: builtin/am.c:1832
+#: builtin/am.c:1819
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -10096,7 +10121,7 @@ msgstr ""
 "đã sẵn được đưa vào với cùng nội dung thay đổi; bạn có lẽ muốn bỏ qua miếng "
 "vá này."
 
-#: builtin/am.c:1839
+#: builtin/am.c:1826
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -10109,17 +10134,17 @@ msgstr ""
 "Bạn có lẽ muốn chạy “git rm“ trên một tập tin để chấp nhận \"được xóa bởi họ"
 "\" cho nó."
 
-#: builtin/am.c:1946 builtin/am.c:1950 builtin/am.c:1962 builtin/reset.c:347
+#: builtin/am.c:1933 builtin/am.c:1937 builtin/am.c:1949 builtin/reset.c:347
 #: builtin/reset.c:355
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "Không thể phân tích đối tượng “%s”."
 
-#: builtin/am.c:1998
+#: builtin/am.c:1985
 msgid "failed to clean index"
 msgstr "gặp lỗi khi dọn bảng mục lục"
 
-#: builtin/am.c:2042
+#: builtin/am.c:2029
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -10127,156 +10152,156 @@ msgstr ""
 "Bạn có lẽ đã có HEAD đã bị di chuyển đi kể từ lần “am” thất bại cuối cùng.\n"
 "Không thể chuyển tới ORIG_HEAD"
 
-#: builtin/am.c:2149
+#: builtin/am.c:2136
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr "Giá trị không hợp lệ cho --patch-format: %s"
 
-#: builtin/am.c:2191
+#: builtin/am.c:2178
 #, c-format
 msgid "Invalid value for --show-current-patch: %s"
 msgstr "Giá trị không hợp lệ cho --show-current-patch: %s"
 
-#: builtin/am.c:2195
+#: builtin/am.c:2182
 #, c-format
 msgid "--show-current-patch=%s is incompatible with --show-current-patch=%s"
 msgstr "--show-current-patch=%s xung khắc với --show-current-patch=%s"
 
-#: builtin/am.c:2226
+#: builtin/am.c:2213
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr "git am [<các tùy chọn>] [(<mbox>|<Maildir>)…]"
 
-#: builtin/am.c:2227
+#: builtin/am.c:2214
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr "git am [<các tùy chọn>] (--continue | --skip | --abort)"
 
-#: builtin/am.c:2233
+#: builtin/am.c:2220
 msgid "run interactively"
 msgstr "chạy kiểu tương tác"
 
-#: builtin/am.c:2235
+#: builtin/am.c:2222
 msgid "historical option -- no-op"
 msgstr "tùy chọn lịch sử -- không-toán-tử"
 
-#: builtin/am.c:2237
+#: builtin/am.c:2224
 msgid "allow fall back on 3way merging if needed"
 msgstr "cho phép quay trở lại để hòa trộn kiểu “3way” nếu cần"
 
-#: builtin/am.c:2238 builtin/init-db.c:558 builtin/prune-packed.c:16
-#: builtin/repack.c:309 builtin/stash.c:816
+#: builtin/am.c:2225 builtin/init-db.c:560 builtin/prune-packed.c:16
+#: builtin/repack.c:335 builtin/stash.c:815
 msgid "be quiet"
 msgstr "im lặng"
 
-#: builtin/am.c:2240
-msgid "add a Signed-off-by line to the commit message"
-msgstr "thêm dòng Signed-off-by cho ghi chú của lần chuyển giao"
+#: builtin/am.c:2227
+msgid "add a Signed-off-by trailer to the commit message"
+msgstr "thêm dòng Signed-off-by vào cuối ghi chú của lần chuyển giao"
 
-#: builtin/am.c:2243
+#: builtin/am.c:2230
 msgid "recode into utf8 (default)"
 msgstr "chuyển mã thành utf8 (mặc định)"
 
-#: builtin/am.c:2245
+#: builtin/am.c:2232
 msgid "pass -k flag to git-mailinfo"
 msgstr "chuyển cờ -k cho git-mailinfo"
 
-#: builtin/am.c:2247
+#: builtin/am.c:2234
 msgid "pass -b flag to git-mailinfo"
 msgstr "chuyển cờ -b cho git-mailinfo"
 
-#: builtin/am.c:2249
+#: builtin/am.c:2236
 msgid "pass -m flag to git-mailinfo"
 msgstr "chuyển cờ -m cho git-mailinfo"
 
-#: builtin/am.c:2251
+#: builtin/am.c:2238
 msgid "pass --keep-cr flag to git-mailsplit for mbox format"
 msgstr "chuyển cờ --keep-cr cho git-mailsplit với định dạng mbox"
 
-#: builtin/am.c:2254
+#: builtin/am.c:2241
 msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
 msgstr ""
 "đừng chuyển cờ --keep-cr cho git-mailsplit không phụ thuộc vào am.keepcr"
 
-#: builtin/am.c:2257
+#: builtin/am.c:2244
 msgid "strip everything before a scissors line"
 msgstr "cắt mọi thứ trước dòng scissors"
 
-#: builtin/am.c:2259 builtin/am.c:2262 builtin/am.c:2265 builtin/am.c:2268
-#: builtin/am.c:2271 builtin/am.c:2274 builtin/am.c:2277 builtin/am.c:2280
-#: builtin/am.c:2286
+#: builtin/am.c:2246 builtin/am.c:2249 builtin/am.c:2252 builtin/am.c:2255
+#: builtin/am.c:2258 builtin/am.c:2261 builtin/am.c:2264 builtin/am.c:2267
+#: builtin/am.c:2273
 msgid "pass it through git-apply"
 msgstr "chuyển nó qua git-apply"
 
-#: builtin/am.c:2276 builtin/commit.c:1395 builtin/fmt-merge-msg.c:17
-#: builtin/fmt-merge-msg.c:20 builtin/grep.c:892 builtin/merge.c:251
+#: builtin/am.c:2263 builtin/commit.c:1395 builtin/fmt-merge-msg.c:17
+#: builtin/fmt-merge-msg.c:20 builtin/grep.c:903 builtin/merge.c:260
 #: builtin/pull.c:141 builtin/pull.c:200 builtin/pull.c:217
-#: builtin/rebase.c:1335 builtin/repack.c:320 builtin/repack.c:324
-#: builtin/repack.c:326 builtin/show-branch.c:650 builtin/show-ref.c:172
+#: builtin/rebase.c:1341 builtin/repack.c:346 builtin/repack.c:350
+#: builtin/repack.c:352 builtin/show-branch.c:650 builtin/show-ref.c:172
 #: builtin/tag.c:404 parse-options.h:154 parse-options.h:175
 #: parse-options.h:316
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2282 builtin/branch.c:659 builtin/bugreport.c:135
+#: builtin/am.c:2269 builtin/branch.c:661 builtin/bugreport.c:136
 #: builtin/for-each-ref.c:38 builtin/replace.c:556 builtin/tag.c:438
 #: builtin/verify-tag.c:38
 msgid "format"
 msgstr "định dạng"
 
-#: builtin/am.c:2283
+#: builtin/am.c:2270
 msgid "format the patch(es) are in"
 msgstr "định dạng (các) miếng vá theo"
 
-#: builtin/am.c:2289
+#: builtin/am.c:2276
 msgid "override error message when patch failure occurs"
 msgstr "đè lên các lời nhắn lỗi khi xảy ra lỗi vá nghiêm trọng"
 
-#: builtin/am.c:2291
+#: builtin/am.c:2278
 msgid "continue applying patches after resolving a conflict"
 msgstr "tiếp tục áp dụng các miếng vá sau khi giải quyết xung đột"
 
-#: builtin/am.c:2294
+#: builtin/am.c:2281
 msgid "synonyms for --continue"
 msgstr "đồng nghĩa với --continue"
 
-#: builtin/am.c:2297
+#: builtin/am.c:2284
 msgid "skip the current patch"
 msgstr "bỏ qua miếng vá hiện hành"
 
-#: builtin/am.c:2300
+#: builtin/am.c:2287
 msgid "restore the original branch and abort the patching operation."
 msgstr "phục hồi lại nhánh gốc và loại bỏ thao tác vá."
 
-#: builtin/am.c:2303
+#: builtin/am.c:2290
 msgid "abort the patching operation but keep HEAD where it is."
 msgstr "bỏ qua thao tác vá nhưng vẫn giữ HEAD chỉ đến nó."
 
-#: builtin/am.c:2307
+#: builtin/am.c:2294
 msgid "show the patch being applied"
 msgstr "hiển thị miếng vá đã được áp dụng rồi"
 
-#: builtin/am.c:2312
+#: builtin/am.c:2299
 msgid "lie about committer date"
 msgstr "nói dối về ngày chuyển giao"
 
-#: builtin/am.c:2314
+#: builtin/am.c:2301
 msgid "use current timestamp for author date"
 msgstr "dùng dấu thời gian hiện tại cho ngày tác giả"
 
-#: builtin/am.c:2316 builtin/commit-tree.c:120 builtin/commit.c:1515
-#: builtin/merge.c:288 builtin/pull.c:175 builtin/rebase.c:530
-#: builtin/rebase.c:1388 builtin/revert.c:117 builtin/tag.c:419
+#: builtin/am.c:2303 builtin/commit-tree.c:120 builtin/commit.c:1515
+#: builtin/merge.c:297 builtin/pull.c:175 builtin/rebase.c:536
+#: builtin/rebase.c:1394 builtin/revert.c:117 builtin/tag.c:419
 msgid "key-id"
 msgstr "mã-số-khóa"
 
-#: builtin/am.c:2317 builtin/rebase.c:531 builtin/rebase.c:1389
+#: builtin/am.c:2304 builtin/rebase.c:537 builtin/rebase.c:1395
 msgid "GPG-sign commits"
 msgstr "Các lần chuyển giao ký-GPG"
 
-#: builtin/am.c:2320
+#: builtin/am.c:2307
 msgid "(internal use for git-rebase)"
 msgstr "(dùng nội bộ cho git-rebase)"
 
-#: builtin/am.c:2338
+#: builtin/am.c:2325
 msgid ""
 "The -b/--binary option has been a no-op for long time, and\n"
 "it will be removed. Please do not use it anymore."
@@ -10284,16 +10309,16 @@ msgstr ""
 "Tùy chọn -b/--binary đã không dùng từ lâu rồi, và\n"
 "nó sẽ được bỏ đi. Xin đừng sử dụng nó thêm nữa."
 
-#: builtin/am.c:2345
+#: builtin/am.c:2332
 msgid "failed to read the index"
 msgstr "gặp lỗi đọc bảng mục lục"
 
-#: builtin/am.c:2360
+#: builtin/am.c:2347
 #, c-format
 msgid "previous rebase directory %s still exists but mbox given."
 msgstr "thư mục rebase trước %s không sẵn có nhưng mbox lại đưa ra."
 
-#: builtin/am.c:2384
+#: builtin/am.c:2371
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -10302,11 +10327,11 @@ msgstr ""
 "Tìm thấy thư mục lạc %s.\n"
 "Dùng \"git am --abort\" để loại bỏ nó đi."
 
-#: builtin/am.c:2390
+#: builtin/am.c:2377
 msgid "Resolve operation not in progress, we are not resuming."
 msgstr "Thao tác phân giải không được tiến hành, chúng ta không phục hồi lại."
 
-#: builtin/am.c:2400
+#: builtin/am.c:2387
 msgid "interactive mode requires patches on the command line"
 msgstr "chế độ tương tác yêu cầu có các miếng vá trên dòng lệnh"
 
@@ -10345,22 +10370,10 @@ msgid "git archive: expected a flush"
 msgstr "git archive: cần một flush (đẩy dữ liệu lên đĩa)"
 
 #: builtin/bisect--helper.c:23
-msgid "git bisect--helper --next-all"
-msgstr "git bisect--helper --next-all"
-
-#: builtin/bisect--helper.c:24
-msgid "git bisect--helper --write-terms <bad_term> <good_term>"
-msgstr "git bisect--helper --write-terms <bad_term> <good_term>"
-
-#: builtin/bisect--helper.c:25
-msgid "git bisect--helper --bisect-clean-state"
-msgstr "git bisect--helper --bisect-clean-state"
-
-#: builtin/bisect--helper.c:26
 msgid "git bisect--helper --bisect-reset [<commit>]"
 msgstr "git bisect--helper --bisect-reset [<lần_chuyển_giao>]"
 
-#: builtin/bisect--helper.c:27
+#: builtin/bisect--helper.c:24
 msgid ""
 "git bisect--helper --bisect-write [--no-log] <state> <revision> <good_term> "
 "<bad_term>"
@@ -10368,7 +10381,7 @@ msgstr ""
 "git bisect--helper --bisect-write [--no-log] <state> <revision> <lúc_sai> "
 "<lúc_đúng>"
 
-#: builtin/bisect--helper.c:28
+#: builtin/bisect--helper.c:25
 msgid ""
 "git bisect--helper --bisect-check-and-set-terms <command> <good_term> "
 "<bad_term>"
@@ -10376,11 +10389,11 @@ msgstr ""
 "git bisect--helper --bisect-check-and-set-terms <command> <lúc_sai> "
 "<lúc_đúng>"
 
-#: builtin/bisect--helper.c:29
+#: builtin/bisect--helper.c:26
 msgid "git bisect--helper --bisect-next-check <good_term> <bad_term> [<term>]"
 msgstr "git bisect--helper --bisect-next-check <lúc_sai> <lúc_đúng> [<term>]"
 
-#: builtin/bisect--helper.c:30
+#: builtin/bisect--helper.c:27
 msgid ""
 "git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
 "term-new]"
@@ -10388,68 +10401,72 @@ msgstr ""
 "git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
 "term-new]"
 
-#: builtin/bisect--helper.c:31
+#: builtin/bisect--helper.c:28
 msgid ""
 "git bisect--helper --bisect-start [--term-{new,bad}=<term> --term-{old,good}"
 "=<term>] [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] "
 "[<paths>...]"
 msgstr ""
 "git bisect--helper --bisect-start [--term-{new,bad}=<term> --term-{old,good}"
-"=<term>] [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [</các/"
-"đường/dẫn>...]"
+"=<term>] [--no-checkout] [--first-parent] [<bad> [<good>]] [--] [</các/"
+"đường/dẫn>]"
 
-#: builtin/bisect--helper.c:33
+#: builtin/bisect--helper.c:30
 msgid "git bisect--helper --bisect-next"
 msgstr "git bisect--helper --bisect-next"
 
-#: builtin/bisect--helper.c:34
+#: builtin/bisect--helper.c:31
 msgid "git bisect--helper --bisect-auto-next"
 msgstr "git bisect--helper --bisect-auto-next"
 
-#: builtin/bisect--helper.c:35
-msgid "git bisect--helper --bisect-autostart"
-msgstr "git bisect--helper --bisect-autostart"
+#: builtin/bisect--helper.c:32
+msgid "git bisect--helper --bisect-state (bad|new) [<rev>]"
+msgstr "git bisect--helper --bisect-state (bad|new) [<lần_chuyển_giao>]"
+
+#: builtin/bisect--helper.c:33
+msgid "git bisect--helper --bisect-state (good|old) [<rev>...]"
+msgstr "git bisect--helper --bisect-reset (good|old) [<lần_chuyển_giao>…]"
 
-#: builtin/bisect--helper.c:97
+#: builtin/bisect--helper.c:108
 #, c-format
 msgid "cannot open file '%s' in mode '%s'"
 msgstr "không thể mở tập tin “%s” ở chế độ “%s”"
 
-#: builtin/bisect--helper.c:104
+#: builtin/bisect--helper.c:115
 #, c-format
 msgid "could not write to file '%s'"
 msgstr "không thể ghi vào tập tin “%s”"
 
-#: builtin/bisect--helper.c:143
+#: builtin/bisect--helper.c:154
 #, c-format
 msgid "'%s' is not a valid term"
 msgstr "“%s” không phải một thời hạn hợp lệ"
 
-#: builtin/bisect--helper.c:147
+#: builtin/bisect--helper.c:158
 #, c-format
 msgid "can't use the builtin command '%s' as a term"
 msgstr "không thể dùng lệnh tích hợp “%s” như là một thời kỳ"
 
-#: builtin/bisect--helper.c:157
+#: builtin/bisect--helper.c:168
 #, c-format
 msgid "can't change the meaning of the term '%s'"
 msgstr "không thể thay đổi nghĩa của thời kỳ “%s”"
 
-#: builtin/bisect--helper.c:167
+#: builtin/bisect--helper.c:178
 msgid "please use two different terms"
 msgstr "vui lòng dùng hai thời kỳ khác nhau"
 
-#: builtin/bisect--helper.c:207
+#: builtin/bisect--helper.c:194
 #, c-format
 msgid "We are not bisecting.\n"
 msgstr "Chúng tôi đang không bisect.\n"
 
-#: builtin/bisect--helper.c:215
+#: builtin/bisect--helper.c:202
 #, c-format
 msgid "'%s' is not a valid commit"
 msgstr "“%s” không phải một lần chuyển giao hợp lệ"
 
-#: builtin/bisect--helper.c:224
+#: builtin/bisect--helper.c:211
 #, c-format
 msgid ""
 "could not check out original HEAD '%s'. Try 'git bisect reset <commit>'."
@@ -10457,27 +10474,27 @@ msgstr ""
 "không thể lấy ra HEAD nguyên thủy của “%s”. Hãy thử “git bisect reset <lần-"
 "chuyển-giao>”."
 
-#: builtin/bisect--helper.c:268
+#: builtin/bisect--helper.c:255
 #, c-format
 msgid "Bad bisect_write argument: %s"
 msgstr "Đối số bisect_write sai: %s"
 
-#: builtin/bisect--helper.c:273
+#: builtin/bisect--helper.c:260
 #, c-format
 msgid "couldn't get the oid of the rev '%s'"
 msgstr "không thể lấy oid của điểm xét duyệt “%s”"
 
-#: builtin/bisect--helper.c:285
+#: builtin/bisect--helper.c:272
 #, c-format
 msgid "couldn't open the file '%s'"
 msgstr "không thể mở tập tin “%s”"
 
-#: builtin/bisect--helper.c:311
+#: builtin/bisect--helper.c:298
 #, c-format
 msgid "Invalid command: you're currently in a %s/%s bisect"
 msgstr "Lệnh không hợp lệ: bạn hiện đang ở một bisect %s/%s"
 
-#: builtin/bisect--helper.c:338
+#: builtin/bisect--helper.c:325
 #, c-format
 msgid ""
 "You need to give me at least one %s and %s revision.\n"
@@ -10486,7 +10503,7 @@ msgstr ""
 "Bạn phải chỉ cho tôi ít nhất một điểm %s và một %s.\n"
 "Bạn có thể sử dụng \"git bisect %s\" và \"git bisect %s\" cho cái đó."
 
-#: builtin/bisect--helper.c:342
+#: builtin/bisect--helper.c:329
 #, c-format
 msgid ""
 "You need to start by \"git bisect start\".\n"
@@ -10497,7 +10514,7 @@ msgstr ""
 "Bạn sau đó cần phải chỉ cho tôi ít nhất một điểm xét duyệt %s và một %s.\n"
 "Bạn có thể sử dụng \"git bisect %s\" và \"git bisect %s\" cho chúng."
 
-#: builtin/bisect--helper.c:362
+#: builtin/bisect--helper.c:349
 #, c-format
 msgid "bisecting only with a %s commit"
 msgstr "chỉ thực hiện việc bisect với một lần chuyển giao %s"
@@ -10506,15 +10523,15 @@ msgstr "chỉ thực hiện việc bisect với một lần chuyển giao %s"
 #. translation. The program will only accept English input
 #. at this point.
 #.
-#: builtin/bisect--helper.c:370
+#: builtin/bisect--helper.c:357
 msgid "Are you sure [Y/n]? "
 msgstr "Bạn có chắc chắn chưa [Y/n]? "
 
-#: builtin/bisect--helper.c:431
+#: builtin/bisect--helper.c:418
 msgid "no terms defined"
 msgstr "chưa định nghĩa thời kỳ nào"
 
-#: builtin/bisect--helper.c:434
+#: builtin/bisect--helper.c:421
 #, c-format
 msgid ""
 "Your current terms are %s for the old state\n"
@@ -10523,7 +10540,7 @@ msgstr ""
 "Bạn hiện tại đang ở thời kỳ %s cho tình trạng cũ\n"
 "và %s cho tình trạng mới.\n"
 
-#: builtin/bisect--helper.c:444
+#: builtin/bisect--helper.c:431
 #, c-format
 msgid ""
 "invalid argument %s for 'git bisect terms'.\n"
@@ -10532,52 +10549,52 @@ msgstr ""
 "tham số không hợp lệ %s cho “git bisect terms”.\n"
 "Các tùy chọn hỗ trợ là: --term-good|--term-old và --term-bad|--term-new."
 
-#: builtin/bisect--helper.c:511
+#: builtin/bisect--helper.c:498
 msgid "revision walk setup failed\n"
 msgstr "gặp lỗi cài đặt việc di chuyển qua các điểm xét duyệt\n"
 
-#: builtin/bisect--helper.c:533
+#: builtin/bisect--helper.c:520
 #, c-format
 msgid "could not open '%s' for appending"
 msgstr "không thể mở “%s” để nối thêm"
 
-#: builtin/bisect--helper.c:651 builtin/bisect--helper.c:664
+#: builtin/bisect--helper.c:639 builtin/bisect--helper.c:652
 msgid "'' is not a valid term"
 msgstr "” không phải một thời hạn hợp lệ"
 
-#: builtin/bisect--helper.c:674
+#: builtin/bisect--helper.c:662
 #, c-format
 msgid "unrecognized option: '%s'"
 msgstr "tùy chọn không được thừa nhận: “%s”"
 
-#: builtin/bisect--helper.c:678
+#: builtin/bisect--helper.c:666
 #, c-format
 msgid "'%s' does not appear to be a valid revision"
 msgstr "“%s” không có vẻ như là một điểm xét duyệt hợp lệ"
 
-#: builtin/bisect--helper.c:709
+#: builtin/bisect--helper.c:697
 msgid "bad HEAD - I need a HEAD"
 msgstr "sai HEAD - Tôi cần một HEAD"
 
-#: builtin/bisect--helper.c:724
+#: builtin/bisect--helper.c:712
 #, c-format
 msgid "checking out '%s' failed. Try 'git bisect start <valid-branch>'."
 msgstr "lấy ra “%s” ra gặp lỗi. Hãy thử \"git bisect reset <nhánh_hợp_lệ>\"."
 
-#: builtin/bisect--helper.c:745
+#: builtin/bisect--helper.c:733
 msgid "won't bisect on cg-seek'ed tree"
 msgstr "sẽ không di chuyển nửa bước trên cây được cg-seek"
 
-#: builtin/bisect--helper.c:748
+#: builtin/bisect--helper.c:736
 msgid "bad HEAD - strange symbolic ref"
 msgstr "sai HEAD - tham chiếu mềm kỳ lạ"
 
-#: builtin/bisect--helper.c:775
+#: builtin/bisect--helper.c:756
 #, c-format
 msgid "invalid ref: '%s'"
 msgstr "refspec không hợp lệ: “%s”"
 
-#: builtin/bisect--helper.c:827
+#: builtin/bisect--helper.c:814
 msgid "You need to start by \"git bisect start\"\n"
 msgstr "Bạn cần khởi đầu bằng \"git bisect start\"\n"
 
@@ -10585,108 +10602,94 @@ msgstr "Bạn cần khởi đầu bằng \"git bisect start\"\n"
 #. translation. The program will only accept English input
 #. at this point.
 #.
-#: builtin/bisect--helper.c:838
+#: builtin/bisect--helper.c:825
 msgid "Do you want me to do it for you [Y/n]? "
 msgstr "Bạn có muốn tôi thực hiện điều này cho bạn không [Y/n]? "
 
-#: builtin/bisect--helper.c:866
-msgid "perform 'git bisect next'"
-msgstr "thực hiện “git bisect next”"
-
-#: builtin/bisect--helper.c:868
-msgid "write the terms to .git/BISECT_TERMS"
-msgstr "ghi thời kỳ vào .git/BISECT_TERMS"
+#: builtin/bisect--helper.c:843
+msgid "Please call `--bisect-state` with at least one argument"
+msgstr "Hãy gọi “--bisect-state” với ít nhất một đối số"
 
-#: builtin/bisect--helper.c:870
-msgid "cleanup the bisection state"
-msgstr "dọn dẹp tình trạng di chuyển nửa bước"
+#: builtin/bisect--helper.c:856
+#, c-format
+msgid "'git bisect %s' can take only one argument."
+msgstr "“git bisect %s” có thể lấy chỉ một đối số."
 
-#: builtin/bisect--helper.c:872
-msgid "check for expected revs"
-msgstr "kiểm tra cho điểm xem xét cần dùng"
+#: builtin/bisect--helper.c:868 builtin/bisect--helper.c:879
+#, c-format
+msgid "Bad rev input: %s"
+msgstr "Đầu vào rev sai: %s"
 
-#: builtin/bisect--helper.c:874
+#: builtin/bisect--helper.c:924
 msgid "reset the bisection state"
 msgstr "đặt lại trạng di chuyển nửa bước"
 
-#: builtin/bisect--helper.c:876
+#: builtin/bisect--helper.c:926
 msgid "write out the bisection state in BISECT_LOG"
 msgstr "ghi ra tình trạng di chuyển nửa bước trong BISECT_LOG"
 
-#: builtin/bisect--helper.c:878
+#: builtin/bisect--helper.c:928
 msgid "check and set terms in a bisection state"
 msgstr "kiểm tra và đặt thời điểm trong di chuyển nửa bước"
 
-#: builtin/bisect--helper.c:880
+#: builtin/bisect--helper.c:930
 msgid "check whether bad or good terms exist"
 msgstr "kiểm tra xem các thời điểm xấu/tốt có tồn tại không"
 
-#: builtin/bisect--helper.c:882
+#: builtin/bisect--helper.c:932
 msgid "print out the bisect terms"
 msgstr "in ra các thời điểm di chuyển nửa bước"
 
-#: builtin/bisect--helper.c:884
+#: builtin/bisect--helper.c:934
 msgid "start the bisect session"
 msgstr "bắt đầu phiên di chuyển nửa bước"
 
-#: builtin/bisect--helper.c:886
+#: builtin/bisect--helper.c:936
 msgid "find the next bisection commit"
 msgstr "tìm lần chuyển giao không di chuyển phân đôi"
 
-#: builtin/bisect--helper.c:888
+#: builtin/bisect--helper.c:938
 msgid "verify the next bisection state then checkout the next bisection commit"
 msgstr ""
 "xác nhận trạng thái phân đôi kế sau đó lấy ra lần chuyển giao phân đôi kế"
 
-#: builtin/bisect--helper.c:890
-msgid "start the bisection if it has not yet been started"
-msgstr "chạy di chuyển phân đôi nếu nó vẫn chưa được khởi chạy"
+#: builtin/bisect--helper.c:940
+msgid "mark the state of ref (or refs)"
+msgstr "đánh dấu trạng thái ref (hoặc refs)"
 
-#: builtin/bisect--helper.c:892
+#: builtin/bisect--helper.c:942
 msgid "no log for BISECT_WRITE"
 msgstr "không có nhật ký cho BISECT_WRITE"
 
-#: builtin/bisect--helper.c:910
-msgid "--write-terms requires two arguments"
-msgstr "--write-terms cần hai tham số"
-
-#: builtin/bisect--helper.c:914
-msgid "--bisect-clean-state requires no arguments"
-msgstr "--bisect-clean-state không nhận đối số"
-
-#: builtin/bisect--helper.c:921
+#: builtin/bisect--helper.c:957
 msgid "--bisect-reset requires either no argument or a commit"
 msgstr ""
 "--bisect-reset requires không nhận đối số cũng không nhận lần chuyển giao"
 
-#: builtin/bisect--helper.c:925
+#: builtin/bisect--helper.c:961
 msgid "--bisect-write requires either 4 or 5 arguments"
 msgstr "--bisect-write cần 4 hoặc 5 tham số"
 
-#: builtin/bisect--helper.c:931
+#: builtin/bisect--helper.c:967
 msgid "--check-and-set-terms requires 3 arguments"
 msgstr "--check-and-set-terms cần 3 tham số"
 
-#: builtin/bisect--helper.c:937
+#: builtin/bisect--helper.c:973
 msgid "--bisect-next-check requires 2 or 3 arguments"
 msgstr "--bisect-next-check cần 2 hoặc 3 tham số"
 
-#: builtin/bisect--helper.c:943
+#: builtin/bisect--helper.c:979
 msgid "--bisect-terms requires 0 or 1 argument"
 msgstr "--bisect-terms cần 0 hoặc 1 tham số"
 
-#: builtin/bisect--helper.c:952
+#: builtin/bisect--helper.c:988
 msgid "--bisect-next requires 0 arguments"
 msgstr "--bisect-next cần 0 tham số"
 
-#: builtin/bisect--helper.c:958
+#: builtin/bisect--helper.c:994
 msgid "--bisect-auto-next requires 0 arguments"
 msgstr "--bisect-auto-next cần 0 tham số"
 
-#: builtin/bisect--helper.c:964
-msgid "--bisect-autostart does not accept arguments"
-msgstr "--bisect-autostart không nhận đối số"
-
 #: builtin/blame.c:32
 msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
 msgstr "git blame [<các tùy chọn>] [<rev-opts>] [<rev>] [--] <tập-tin>"
@@ -10713,131 +10716,131 @@ msgstr "màu không hợp lệ “%s” trong color.blame.repeatedLines"
 msgid "invalid value for blame.coloring"
 msgstr "màu không hợp lệ cho blame.coloring"
 
-#: builtin/blame.c:845
+#: builtin/blame.c:847
 #, c-format
 msgid "cannot find revision %s to ignore"
 msgstr "không thể tìm thấy điểm xét duyệt %s để mà bỏ qua"
 
-#: builtin/blame.c:867
+#: builtin/blame.c:869
 msgid "Show blame entries as we find them, incrementally"
 msgstr "Hiển thị các mục “blame” như là chúng ta thấy chúng, tăng dần"
 
-#: builtin/blame.c:868
+#: builtin/blame.c:870
 msgid "Do not show object names of boundary commits (Default: off)"
 msgstr ""
 "Đừng hiển thị tên đối tượng của những lần chuyển giao biên giới (Mặc định: "
 "off)"
 
-#: builtin/blame.c:869
+#: builtin/blame.c:871
 msgid "Do not treat root commits as boundaries (Default: off)"
 msgstr "Không coi các lần chuyển giao gốc là giới hạn (Mặc định: off)"
 
-#: builtin/blame.c:870
+#: builtin/blame.c:872
 msgid "Show work cost statistics"
 msgstr "Hiển thị thống kê công sức làm việc"
 
-#: builtin/blame.c:871
+#: builtin/blame.c:873
 msgid "Force progress reporting"
 msgstr "Ép buộc báo cáo diễn biến công việc"
 
-#: builtin/blame.c:872
+#: builtin/blame.c:874
 msgid "Show output score for blame entries"
 msgstr "Hiển thị kết xuất điểm số có các mục tin “blame”"
 
-#: builtin/blame.c:873
+#: builtin/blame.c:875
 msgid "Show original filename (Default: auto)"
 msgstr "Hiển thị tên tập tin gốc (Mặc định: auto)"
 
-#: builtin/blame.c:874
+#: builtin/blame.c:876
 msgid "Show original linenumber (Default: off)"
 msgstr "Hiển thị số dòng gốc (Mặc định: off)"
 
-#: builtin/blame.c:875
+#: builtin/blame.c:877
 msgid "Show in a format designed for machine consumption"
 msgstr "Hiển thị ở định dạng đã thiết kế cho sự tiêu dùng bằng máy"
 
-#: builtin/blame.c:876
+#: builtin/blame.c:878
 msgid "Show porcelain format with per-line commit information"
 msgstr "Hiển thị định dạng “porcelain” với thông tin chuyển giao mỗi dòng"
 
-#: builtin/blame.c:877
+#: builtin/blame.c:879
 msgid "Use the same output mode as git-annotate (Default: off)"
 msgstr "Dùng cùng chế độ xuất ra với git-annotate (Mặc định: off)"
 
-#: builtin/blame.c:878
+#: builtin/blame.c:880
 msgid "Show raw timestamp (Default: off)"
 msgstr "Hiển thị dấu vết thời gian dạng thô (Mặc định: off)"
 
-#: builtin/blame.c:879
+#: builtin/blame.c:881
 msgid "Show long commit SHA1 (Default: off)"
 msgstr "Hiển thị SHA1 của lần chuyển giao dạng dài (Mặc định: off)"
 
-#: builtin/blame.c:880
+#: builtin/blame.c:882
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr "Không hiển thị tên tác giả và dấu vết thời gian (Mặc định: off)"
 
-#: builtin/blame.c:881
+#: builtin/blame.c:883
 msgid "Show author email instead of name (Default: off)"
 msgstr "Hiển thị thư điện tử của tác giả thay vì tên (Mặc định: off)"
 
-#: builtin/blame.c:882
+#: builtin/blame.c:884
 msgid "Ignore whitespace differences"
 msgstr "Bỏ qua các khác biệt do khoảng trắng gây ra"
 
-#: builtin/blame.c:883 builtin/log.c:1808
+#: builtin/blame.c:885 builtin/log.c:1813
 msgid "rev"
 msgstr "rev"
 
-#: builtin/blame.c:883
+#: builtin/blame.c:885
 msgid "Ignore <rev> when blaming"
 msgstr "Bỏ qua <rev> khi blame"
 
-#: builtin/blame.c:884
+#: builtin/blame.c:886
 msgid "Ignore revisions from <file>"
 msgstr "Bỏ qua các điểm xét duyệt từ <tập tin>"
 
-#: builtin/blame.c:885
+#: builtin/blame.c:887
 msgid "color redundant metadata from previous line differently"
 msgstr "siêu dữ liệu dư thừa màu từ dòng trước khác hẳn"
 
-#: builtin/blame.c:886
+#: builtin/blame.c:888
 msgid "color lines by age"
 msgstr "các dòng màu theo tuổi"
 
-#: builtin/blame.c:887
+#: builtin/blame.c:889
 msgid "Spend extra cycles to find better match"
 msgstr "Tiêu thụ thêm năng tài nguyên máy móc để tìm kiếm tốt hơn nữa"
 
-#: builtin/blame.c:888
+#: builtin/blame.c:890
 msgid "Use revisions from <file> instead of calling git-rev-list"
 msgstr ""
 "Sử dụng điểm xét duyệt (revision) từ <tập tin> thay vì gọi “git-rev-list”"
 
-#: builtin/blame.c:889
+#: builtin/blame.c:891
 msgid "Use <file>'s contents as the final image"
 msgstr "Sử dụng nội dung của <tập tin> như là ảnh cuối cùng"
 
-#: builtin/blame.c:890 builtin/blame.c:891
+#: builtin/blame.c:892 builtin/blame.c:893
 msgid "score"
 msgstr "điểm số"
 
-#: builtin/blame.c:890
+#: builtin/blame.c:892
 msgid "Find line copies within and across files"
 msgstr "Tìm các bản sao chép dòng trong và ngang qua tập tin"
 
-#: builtin/blame.c:891
+#: builtin/blame.c:893
 msgid "Find line movements within and across files"
 msgstr "Tìm các di chuyển dòng trong và ngang qua tập tin"
 
-#: builtin/blame.c:892
-msgid "n,m"
-msgstr "n,m"
+#: builtin/blame.c:894
+msgid "range"
+msgstr "vùng"
 
-#: builtin/blame.c:892
-msgid "Process only line range n,m, counting from 1"
-msgstr "Xử lý chỉ dòng vùng n,m, tính từ 1"
+#: builtin/blame.c:895
+msgid "Process only line range <start>,<end> or function :<funcname>"
+msgstr "Xử lý chỉ dòng vùng <đầu>,<cuối> hoặc tính năng :<funcname>"
 
-#: builtin/blame.c:944
+#: builtin/blame.c:947
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 "--progress không được dùng cùng với --incremental hay các định dạng porcelain"
@@ -10850,17 +10853,17 @@ msgstr ""
 #. your language may need more or fewer display
 #. columns.
 #.
-#: builtin/blame.c:995
+#: builtin/blame.c:998
 msgid "4 years, 11 months ago"
 msgstr "4 năm, 11 tháng trước"
 
-#: builtin/blame.c:1110
+#: builtin/blame.c:1114
 #, c-format
 msgid "file %s has only %lu line"
 msgid_plural "file %s has only %lu lines"
 msgstr[0] "tập tin %s chỉ có %lu dòng"
 
-#: builtin/blame.c:1156
+#: builtin/blame.c:1159
 msgid "Blaming lines"
 msgstr "Các dòng blame"
 
@@ -11007,38 +11010,38 @@ msgstr "không thể đổi tên nhánh hiện hành trong khi nó chẳng ở 
 msgid "Invalid branch name: '%s'"
 msgstr "Tên nhánh không hợp lệ: “%s”"
 
-#: builtin/branch.c:542
+#: builtin/branch.c:544
 msgid "Branch rename failed"
 msgstr "Gặp lỗi khi đổi tên nhánh"
 
-#: builtin/branch.c:544
+#: builtin/branch.c:546
 msgid "Branch copy failed"
 msgstr "Gặp lỗi khi sao chép nhánh"
 
-#: builtin/branch.c:548
+#: builtin/branch.c:550
 #, c-format
 msgid "Created a copy of a misnamed branch '%s'"
 msgstr "Đã tạo một bản sao của nhánh khuyết danh “%s”"
 
-#: builtin/branch.c:551
+#: builtin/branch.c:553
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "Đã đổi tên nhánh khuyết danh “%s” đi"
 
-#: builtin/branch.c:557
+#: builtin/branch.c:559
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr "Nhánh bị đổi tên thành %s, nhưng HEAD lại không được cập nhật!"
 
-#: builtin/branch.c:566
+#: builtin/branch.c:568
 msgid "Branch is renamed, but update of config-file failed"
 msgstr "Nhánh bị đổi tên, nhưng cập nhật tập tin cấu hình gặp lỗi"
 
-#: builtin/branch.c:568
+#: builtin/branch.c:570
 msgid "Branch is copied, but update of config-file failed"
 msgstr "Nhánh đã được sao chép, nhưng cập nhật tập tin cấu hình gặp lỗi"
 
-#: builtin/branch.c:584
+#: builtin/branch.c:586
 #, c-format
 msgid ""
 "Please edit the description for the branch\n"
@@ -11049,180 +11052,180 @@ msgstr ""
 "  %s\n"
 "Những dòng được bắt đầu bằng “%c” sẽ được cắt bỏ.\n"
 
-#: builtin/branch.c:618
+#: builtin/branch.c:620
 msgid "Generic options"
 msgstr "Tùy chọn chung"
 
-#: builtin/branch.c:620
+#: builtin/branch.c:622
 msgid "show hash and subject, give twice for upstream branch"
 msgstr "hiển thị mã băm và chủ đề, đưa ra hai lần cho nhánh thượng nguồn"
 
-#: builtin/branch.c:621
+#: builtin/branch.c:623
 msgid "suppress informational messages"
 msgstr "không xuất các thông tin"
 
-#: builtin/branch.c:622
+#: builtin/branch.c:624
 msgid "set up tracking mode (see git-pull(1))"
 msgstr "cài đặt chế độ theo dõi (xem git-pull(1))"
 
-#: builtin/branch.c:624
+#: builtin/branch.c:626
 msgid "do not use"
 msgstr "không dùng"
 
-#: builtin/branch.c:626 builtin/rebase.c:526
+#: builtin/branch.c:628 builtin/rebase.c:532
 msgid "upstream"
 msgstr "thượng nguồn"
 
-#: builtin/branch.c:626
+#: builtin/branch.c:628
 msgid "change the upstream info"
 msgstr "thay đổi thông tin thượng nguồn"
 
-#: builtin/branch.c:627
+#: builtin/branch.c:629
 msgid "unset the upstream info"
 msgstr "bỏ đặt thông tin thượng nguồn"
 
-#: builtin/branch.c:628
+#: builtin/branch.c:630
 msgid "use colored output"
 msgstr "tô màu kết xuất"
 
-#: builtin/branch.c:629
+#: builtin/branch.c:631
 msgid "act on remote-tracking branches"
 msgstr "thao tác trên nhánh “remote-tracking”"
 
-#: builtin/branch.c:631 builtin/branch.c:633
+#: builtin/branch.c:633 builtin/branch.c:635
 msgid "print only branches that contain the commit"
 msgstr "chỉ hiển thị những nhánh mà nó chứa lần chuyển giao"
 
-#: builtin/branch.c:632 builtin/branch.c:634
+#: builtin/branch.c:634 builtin/branch.c:636
 msgid "print only branches that don't contain the commit"
 msgstr "chỉ hiển thị những nhánh mà nó không chứa lần chuyển giao"
 
-#: builtin/branch.c:637
+#: builtin/branch.c:639
 msgid "Specific git-branch actions:"
 msgstr "Hành động git-branch:"
 
-#: builtin/branch.c:638
+#: builtin/branch.c:640
 msgid "list both remote-tracking and local branches"
 msgstr "liệt kê cả nhánh “remote-tracking” và nội bộ"
 
-#: builtin/branch.c:640
+#: builtin/branch.c:642
 msgid "delete fully merged branch"
 msgstr "xóa một toàn bộ nhánh đã hòa trộn"
 
-#: builtin/branch.c:641
+#: builtin/branch.c:643
 msgid "delete branch (even if not merged)"
 msgstr "xóa nhánh (cho dù là chưa được hòa trộn)"
 
-#: builtin/branch.c:642
+#: builtin/branch.c:644
 msgid "move/rename a branch and its reflog"
 msgstr "di chuyển hay đổi tên một nhánh và reflog của nó"
 
-#: builtin/branch.c:643
+#: builtin/branch.c:645
 msgid "move/rename a branch, even if target exists"
 msgstr "di chuyển hoặc đổi tên một nhánh ngay cả khi đích đã có sẵn"
 
-#: builtin/branch.c:644
+#: builtin/branch.c:646
 msgid "copy a branch and its reflog"
 msgstr "sao chép một nhánh và reflog của nó"
 
-#: builtin/branch.c:645
+#: builtin/branch.c:647
 msgid "copy a branch, even if target exists"
 msgstr "sao chép một nhánh ngay cả khi đích đã có sẵn"
 
-#: builtin/branch.c:646
+#: builtin/branch.c:648
 msgid "list branch names"
 msgstr "liệt kê các tên nhánh"
 
-#: builtin/branch.c:647
+#: builtin/branch.c:649
 msgid "show current branch name"
 msgstr "hiển thị nhánh hiện hành"
 
-#: builtin/branch.c:648
+#: builtin/branch.c:650
 msgid "create the branch's reflog"
 msgstr "tạo reflog của nhánh"
 
-#: builtin/branch.c:650
+#: builtin/branch.c:652
 msgid "edit the description for the branch"
 msgstr "sửa mô tả cho nhánh"
 
-#: builtin/branch.c:651
+#: builtin/branch.c:653
 msgid "force creation, move/rename, deletion"
 msgstr "buộc tạo, di chuyển/đổi tên, xóa"
 
-#: builtin/branch.c:652
+#: builtin/branch.c:654
 msgid "print only branches that are merged"
 msgstr "chỉ hiển thị những nhánh mà nó được hòa trộn"
 
-#: builtin/branch.c:653
+#: builtin/branch.c:655
 msgid "print only branches that are not merged"
 msgstr "chỉ hiển thị những nhánh mà nó không được hòa trộn"
 
-#: builtin/branch.c:654
+#: builtin/branch.c:656
 msgid "list branches in columns"
 msgstr "liệt kê các nhánh trong các cột"
 
-#: builtin/branch.c:656 builtin/for-each-ref.c:42 builtin/notes.c:415
+#: builtin/branch.c:658 builtin/for-each-ref.c:42 builtin/notes.c:415
 #: builtin/notes.c:418 builtin/notes.c:581 builtin/notes.c:584
 #: builtin/tag.c:434
 msgid "object"
 msgstr "đối tượng"
 
-#: builtin/branch.c:657
+#: builtin/branch.c:659
 msgid "print only branches of the object"
 msgstr "chỉ hiển thị các nhánh của đối tượng"
 
-#: builtin/branch.c:658 builtin/for-each-ref.c:48 builtin/tag.c:441
+#: builtin/branch.c:660 builtin/for-each-ref.c:48 builtin/tag.c:441
 msgid "sorting and filtering are case insensitive"
 msgstr "sắp xếp và lọc là phân biệt HOA thường"
 
-#: builtin/branch.c:659 builtin/for-each-ref.c:38 builtin/tag.c:439
+#: builtin/branch.c:661 builtin/for-each-ref.c:38 builtin/tag.c:439
 #: builtin/verify-tag.c:38
 msgid "format to use for the output"
 msgstr "định dạng sẽ dùng cho đầu ra"
 
-#: builtin/branch.c:682 builtin/clone.c:789
+#: builtin/branch.c:684 builtin/clone.c:790
 msgid "HEAD not found below refs/heads!"
 msgstr "Không tìm thấy HEAD ở dưới refs/heads!"
 
-#: builtin/branch.c:706
+#: builtin/branch.c:708
 msgid "--column and --verbose are incompatible"
 msgstr "tùy chọn --column và --verbose xung khắc nhau"
 
-#: builtin/branch.c:721 builtin/branch.c:775 builtin/branch.c:784
+#: builtin/branch.c:723 builtin/branch.c:777 builtin/branch.c:786
 msgid "branch name required"
 msgstr "cần chỉ ra tên nhánh"
 
-#: builtin/branch.c:751
+#: builtin/branch.c:753
 msgid "Cannot give description to detached HEAD"
 msgstr "Không thể đưa ra mô tả HEAD đã tách rời"
 
-#: builtin/branch.c:756
+#: builtin/branch.c:758
 msgid "cannot edit description of more than one branch"
 msgstr "không thể sửa mô tả cho nhiều hơn một nhánh"
 
-#: builtin/branch.c:763
+#: builtin/branch.c:765
 #, c-format
 msgid "No commit on branch '%s' yet."
 msgstr "Vẫn chưa chuyển giao trên nhánh “%s”."
 
-#: builtin/branch.c:766
+#: builtin/branch.c:768
 #, c-format
 msgid "No branch named '%s'."
 msgstr "Không có nhánh nào có tên “%s”."
 
-#: builtin/branch.c:781
+#: builtin/branch.c:783
 msgid "too many branches for a copy operation"
 msgstr "quá nhiều nhánh dành cho thao tác sao chép"
 
-#: builtin/branch.c:790
+#: builtin/branch.c:792
 msgid "too many arguments for a rename operation"
 msgstr "quá nhiều tham số cho thao tác đổi tên"
 
-#: builtin/branch.c:795
+#: builtin/branch.c:797
 msgid "too many arguments to set new upstream"
 msgstr "quá nhiều tham số để đặt thượng nguồn mới"
 
-#: builtin/branch.c:799
+#: builtin/branch.c:801
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
@@ -11230,30 +11233,30 @@ msgstr ""
 "không thể đặt thượng nguồn của HEAD thành %s khi mà nó chẳng chỉ đến nhánh "
 "nào cả."
 
-#: builtin/branch.c:802 builtin/branch.c:825
+#: builtin/branch.c:804 builtin/branch.c:827
 #, c-format
 msgid "no such branch '%s'"
 msgstr "không có nhánh nào như thế “%s”"
 
-#: builtin/branch.c:806
+#: builtin/branch.c:808
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr "chưa có nhánh “%s”"
 
-#: builtin/branch.c:819
+#: builtin/branch.c:821
 msgid "too many arguments to unset upstream"
 msgstr "quá nhiều tham số để bỏ đặt thượng nguồn"
 
-#: builtin/branch.c:823
+#: builtin/branch.c:825
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr "không thể bỏ đặt thượng nguồn của HEAD không chỉ đến một nhánh nào cả."
 
-#: builtin/branch.c:829
+#: builtin/branch.c:831
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr "Nhánh “%s” không có thông tin thượng nguồn"
 
-#: builtin/branch.c:839
+#: builtin/branch.c:841
 msgid ""
 "The -a, and -r, options to 'git branch' do not take a branch name.\n"
 "Did you mean to use: -a|-r --list <pattern>?"
@@ -11262,7 +11265,7 @@ msgstr ""
 "nhánh.\n"
 "Có phải ý bạn là dùng: -a|-r --list <mẫu>?"
 
-#: builtin/branch.c:843
+#: builtin/branch.c:845
 msgid ""
 "the '--set-upstream' option is no longer supported. Please use '--track' or "
 "'--set-upstream-to' instead."
@@ -11277,7 +11280,7 @@ msgstr "phiên bản git:\n"
 #: builtin/bugreport.c:21
 #, c-format
 msgid "uname() failed with error '%s' (%d)\n"
-msgstr "uname() gặp lỗi '%s' (%d)\n"
+msgstr "uname() gặp lỗi “%s” (%d)\n"
 
 #: builtin/bugreport.c:31
 msgid "compiler info: "
@@ -11330,39 +11333,39 @@ msgstr ""
 "Vui lòng xen xét phần còn lại của báo cáo lỗi bên dưới.\n"
 "Bạn có thể xóa bất kỳ dòng nào bạn không muốn chia sẻ.\n"
 
-#: builtin/bugreport.c:134
+#: builtin/bugreport.c:135
 msgid "specify a destination for the bugreport file"
 msgstr "chỉ định thư mục định để tạo tập tin báo cáo lỗi"
 
-#: builtin/bugreport.c:136
+#: builtin/bugreport.c:137
 msgid "specify a strftime format suffix for the filename"
 msgstr ""
 "chỉ định chuỗi định dạng thời gian strftime dùng làm hậu tố cho tên tập tin"
 
-#: builtin/bugreport.c:158
+#: builtin/bugreport.c:159
 #, c-format
 msgid "could not create leading directories for '%s'"
 msgstr "không thể tạo các thư mục dẫn đầu cho “%s”"
 
-#: builtin/bugreport.c:165
+#: builtin/bugreport.c:166
 msgid "System Info"
 msgstr "Thông tin hệ thống"
 
-#: builtin/bugreport.c:168
+#: builtin/bugreport.c:169
 msgid "Enabled Hooks"
 msgstr "Các Móc đã được bật"
 
-#: builtin/bugreport.c:175
+#: builtin/bugreport.c:176
 #, c-format
 msgid "couldn't create a new file at '%s'"
 msgstr "không thể tạo tập tin mới tại “%s”"
 
-#: builtin/bugreport.c:178
+#: builtin/bugreport.c:179
 #, c-format
 msgid "unable to write to %s"
 msgstr "không thể ghi vào %s"
 
-#: builtin/bugreport.c:188
+#: builtin/bugreport.c:189
 #, c-format
 msgid "Created new report at '%s'.\n"
 msgstr "Đã tạo báo cáo mới tại “%s”\n"
@@ -11377,11 +11380,11 @@ msgstr "git bundle verify [<các tùy chọn>] <tập-tin>"
 
 #: builtin/bundle.c:17 builtin/bundle.c:33
 msgid "git bundle list-heads <file> [<refname>...]"
-msgstr "git bundle list-heads <tập tin> [<tên tham chiếu>...]"
+msgstr "git bundle list-heads <tập tin> [<tên tham chiếu>]"
 
 #: builtin/bundle.c:18 builtin/bundle.c:38
 msgid "git bundle unbundle <file> [<refname>...]"
-msgstr "git bundle unbundle <tập tin> [<tên tham chiếu>...]"
+msgstr "git bundle unbundle <tập tin> [<tên tham chiếu>]"
 
 #: builtin/bundle.c:67 builtin/pack-objects.c:3480
 msgid "do not show progress meter"
@@ -11420,11 +11423,11 @@ msgstr "“%s” tốt\n"
 msgid "Need a repository to unbundle."
 msgstr "Cần một kho chứa để có thể giải nén một bundle."
 
-#: builtin/bundle.c:171 builtin/remote.c:1687
+#: builtin/bundle.c:171 builtin/remote.c:1700
 msgid "be verbose; must be placed before a subcommand"
 msgstr "chi tiết; phải được đặt trước một lệnh-con"
 
-#: builtin/bundle.c:193 builtin/remote.c:1718
+#: builtin/bundle.c:193 builtin/remote.c:1731
 #, c-format
 msgid "Unknown subcommand: %s"
 msgstr "Không hiểu câu lệnh con: %s"
@@ -11538,7 +11541,7 @@ msgstr "đọc tên tập tin từ đầu vào tiêu chuẩn"
 msgid "terminate input and output records by a NUL character"
 msgstr "chấm dứt các bản ghi vào và ra bằng ký tự NULL"
 
-#: builtin/check-ignore.c:21 builtin/checkout.c:1482 builtin/gc.c:538
+#: builtin/check-ignore.c:21 builtin/checkout.c:1500 builtin/gc.c:541
 #: builtin/worktree.c:561
 msgid "suppress progress reporting"
 msgstr "chặn các báo cáo tiến trình hoạt động"
@@ -11592,55 +11595,55 @@ msgstr "không thể phân tích danh bạ: “%s”"
 msgid "no contacts specified"
 msgstr "chưa chỉ ra danh bạ"
 
-#: builtin/checkout-index.c:131
+#: builtin/checkout-index.c:139
 msgid "git checkout-index [<options>] [--] [<file>...]"
 msgstr "git checkout-index [<các tùy chọn>] [--] [<tập-tin>…]"
 
-#: builtin/checkout-index.c:148
+#: builtin/checkout-index.c:156
 msgid "stage should be between 1 and 3 or all"
 msgstr "stage nên giữa 1 và 3 hay all"
 
-#: builtin/checkout-index.c:164
+#: builtin/checkout-index.c:173
 msgid "check out all files in the index"
 msgstr "lấy ra toàn bộ các tập tin trong bảng mục lục"
 
-#: builtin/checkout-index.c:165
+#: builtin/checkout-index.c:174
 msgid "force overwrite of existing files"
 msgstr "ép buộc ghi đè lên tập tin đã sẵn có từ trước"
 
-#: builtin/checkout-index.c:167
+#: builtin/checkout-index.c:176
 msgid "no warning for existing files and files not in index"
 msgstr ""
 "không cảnh báo cho những tập tin tồn tại và không có trong bảng mục lục"
 
-#: builtin/checkout-index.c:169
+#: builtin/checkout-index.c:178
 msgid "don't checkout new files"
 msgstr "không checkout các tập tin mới"
 
-#: builtin/checkout-index.c:171
+#: builtin/checkout-index.c:180
 msgid "update stat information in the index file"
 msgstr "cập nhật thông tin thống kê trong tập tin lưu bảng mục lục mới"
 
-#: builtin/checkout-index.c:175
+#: builtin/checkout-index.c:184
 msgid "read list of paths from the standard input"
 msgstr "đọc danh sách đường dẫn từ đầu vào tiêu chuẩn"
 
-#: builtin/checkout-index.c:177
+#: builtin/checkout-index.c:186
 msgid "write the content to temporary files"
 msgstr "ghi nội dung vào tập tin tạm"
 
-#: builtin/checkout-index.c:178 builtin/column.c:31
+#: builtin/checkout-index.c:187 builtin/column.c:31
 #: builtin/submodule--helper.c:1824 builtin/submodule--helper.c:1827
 #: builtin/submodule--helper.c:1835 builtin/submodule--helper.c:2333
-#: builtin/worktree.c:754
+#: builtin/worktree.c:757
 msgid "string"
 msgstr "chuỗi"
 
-#: builtin/checkout-index.c:179
+#: builtin/checkout-index.c:188
 msgid "when creating files, prepend <string>"
 msgstr "khi tạo các tập tin, nối thêm <chuỗi>"
 
-#: builtin/checkout-index.c:181
+#: builtin/checkout-index.c:190
 msgid "copy out the files from named stage"
 msgstr "sao chép ra các tập tin từ bệ phóng có tên"
 
@@ -11658,7 +11661,7 @@ msgstr "git switch [<các tùy chọn>] [<nhánh>]"
 
 #: builtin/checkout.c:42
 msgid "git restore [<options>] [--source=<branch>] <file>..."
-msgstr "git restore [<các tùy chọn>] [--source=<nhánh>] <tập tin>..."
+msgstr "git restore [<các tùy chọn>] [--source=<nhánh>] <tập tin>"
 
 #: builtin/checkout.c:188 builtin/checkout.c:227
 #, c-format
@@ -11728,7 +11731,7 @@ msgstr ""
 #: builtin/checkout.c:455
 #, c-format
 msgid "neither '%s' or '%s' is specified"
-msgstr "không chỉ định '%s' không '%s'"
+msgstr "không chỉ định “%s” cũng không “%s”"
 
 #: builtin/checkout.c:459
 #, c-format
@@ -11738,18 +11741,18 @@ msgstr "phải có “%s” khi không chỉ định “%s”"
 #: builtin/checkout.c:464 builtin/checkout.c:469
 #, c-format
 msgid "'%s' or '%s' cannot be used with %s"
-msgstr "'%s' hay '%s' không thể được sử dụng với %s"
+msgstr "“%s” hay “%s” không thể được sử dụng với %s"
 
-#: builtin/checkout.c:528 builtin/checkout.c:535
+#: builtin/checkout.c:541 builtin/checkout.c:548
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "đường dẫn “%s” không được hòa trộn"
 
-#: builtin/checkout.c:703
+#: builtin/checkout.c:716
 msgid "you need to resolve your current index first"
 msgstr "bạn cần phải giải quyết bảng mục lục hiện tại của bạn trước đã"
 
-#: builtin/checkout.c:757
+#: builtin/checkout.c:770
 #, c-format
 msgid ""
 "cannot continue with staged changes in the following files:\n"
@@ -11759,50 +11762,50 @@ msgstr ""
 "sau:\n"
 "%s"
 
-#: builtin/checkout.c:853
+#: builtin/checkout.c:866
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr "Không thể thực hiện reflog cho “%s”: %s\n"
 
-#: builtin/checkout.c:895
+#: builtin/checkout.c:908
 msgid "HEAD is now at"
 msgstr "HEAD hiện giờ tại"
 
-#: builtin/checkout.c:899 builtin/clone.c:720
+#: builtin/checkout.c:912 builtin/clone.c:721 t/helper/test-fast-rebase.c:202
 msgid "unable to update HEAD"
 msgstr "không thể cập nhật HEAD"
 
-#: builtin/checkout.c:903
+#: builtin/checkout.c:916
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Đặt lại nhánh “%s”\n"
 
-#: builtin/checkout.c:906
+#: builtin/checkout.c:919
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Đã sẵn sàng trên “%s”\n"
 
-#: builtin/checkout.c:910
+#: builtin/checkout.c:923
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Đã chuyển tới và đặt lại nhánh “%s”\n"
 
-#: builtin/checkout.c:912 builtin/checkout.c:1338
+#: builtin/checkout.c:925 builtin/checkout.c:1356
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Đã chuyển đến nhánh mới “%s”\n"
 
-#: builtin/checkout.c:914
+#: builtin/checkout.c:927
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Đã chuyển đến nhánh “%s”\n"
 
-#: builtin/checkout.c:965
+#: builtin/checkout.c:978
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " … và nhiều hơn %d.\n"
 
-#: builtin/checkout.c:971
+#: builtin/checkout.c:984
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -11821,7 +11824,7 @@ msgstr[0] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:990
+#: builtin/checkout.c:1003
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -11842,19 +11845,19 @@ msgstr[0] ""
 " git branch <tên_nhánh_mới> %s\n"
 "\n"
 
-#: builtin/checkout.c:1025
+#: builtin/checkout.c:1038
 msgid "internal error in revision walk"
 msgstr "lỗi nội bộ trong khi di chuyển qua các điểm xét duyệt"
 
-#: builtin/checkout.c:1029
+#: builtin/checkout.c:1042
 msgid "Previous HEAD position was"
 msgstr "Vị trí trước kia của HEAD là"
 
-#: builtin/checkout.c:1069 builtin/checkout.c:1333
+#: builtin/checkout.c:1082 builtin/checkout.c:1351
 msgid "You are on a branch yet to be born"
 msgstr "Bạn tại nhánh mà nó chưa hề được sinh ra"
 
-#: builtin/checkout.c:1146
+#: builtin/checkout.c:1164
 #, c-format
 msgid ""
 "'%s' could be both a local file and a tracking branch.\n"
@@ -11863,7 +11866,7 @@ msgstr ""
 "“%s” không thể là cả tập tin nội bộ và một nhánh theo dõi.\n"
 "Vui long dùng -- (và tùy chọn thêm --no-guess) để tránh lẫn lộn"
 
-#: builtin/checkout.c:1153
+#: builtin/checkout.c:1171
 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"
@@ -11883,51 +11886,51 @@ msgstr ""
 "chưa rõ ràng, ví dụ máy chủ “origin”, cân nhắc cài đặt\n"
 "checkout.defaultRemote=origin trong cấu hình của bạn."
 
-#: builtin/checkout.c:1163
+#: builtin/checkout.c:1181
 #, c-format
 msgid "'%s' matched multiple (%d) remote tracking branches"
 msgstr "“%s” khớp với nhiều (%d) nhánh máy chủ được theo dõi"
 
-#: builtin/checkout.c:1229
+#: builtin/checkout.c:1247
 msgid "only one reference expected"
 msgstr "chỉ cần một tham chiếu"
 
-#: builtin/checkout.c:1246
+#: builtin/checkout.c:1264
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "chỉ cần một tham chiếu, nhưng lại đưa ra %d."
 
-#: builtin/checkout.c:1292 builtin/worktree.c:342 builtin/worktree.c:510
+#: builtin/checkout.c:1310 builtin/worktree.c:342 builtin/worktree.c:510
 #, c-format
 msgid "invalid reference: %s"
 msgstr "tham chiếu không hợp lệ: %s"
 
-#: builtin/checkout.c:1305 builtin/checkout.c:1671
+#: builtin/checkout.c:1323 builtin/checkout.c:1689
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "tham chiếu không phải là một cây:%s"
 
-#: builtin/checkout.c:1352
+#: builtin/checkout.c:1370
 #, c-format
 msgid "a branch is expected, got tag '%s'"
 msgstr "cần một nhánh, nhưng lại nhận được thẻ “%s”"
 
-#: builtin/checkout.c:1354
+#: builtin/checkout.c:1372
 #, c-format
 msgid "a branch is expected, got remote branch '%s'"
 msgstr "cần một nhánh, nhưng lại nhận được nhánh máy phục vụ “%s”"
 
-#: builtin/checkout.c:1355 builtin/checkout.c:1363
+#: builtin/checkout.c:1373 builtin/checkout.c:1381
 #, c-format
 msgid "a branch is expected, got '%s'"
 msgstr "cần một nhánh, nhưng lại nhận được “%s”"
 
-#: builtin/checkout.c:1358
+#: builtin/checkout.c:1376
 #, c-format
 msgid "a branch is expected, got commit '%s'"
 msgstr "cần một nhánh, nhưng lại nhận được “%s”"
 
-#: builtin/checkout.c:1374
+#: builtin/checkout.c:1392
 msgid ""
 "cannot switch branch while merging\n"
 "Consider \"git merge --quit\" or \"git worktree add\"."
@@ -11935,7 +11938,7 @@ msgstr ""
 "không thể chuyển nhánh trong khi đang hòa trộn\n"
 "Cân nhắc dung \"git merge --quit\" hoặc \"git worktree add\"."
 
-#: builtin/checkout.c:1378
+#: builtin/checkout.c:1396
 msgid ""
 "cannot switch branch in the middle of an am session\n"
 "Consider \"git am --quit\" or \"git worktree add\"."
@@ -11943,7 +11946,7 @@ msgstr ""
 "không thể chuyển nhanh ở giữa một phiên am\n"
 "Cân nhắc dùng \"git am --quit\" hoặc \"git worktree add\"."
 
-#: builtin/checkout.c:1382
+#: builtin/checkout.c:1400
 msgid ""
 "cannot switch branch while rebasing\n"
 "Consider \"git rebase --quit\" or \"git worktree add\"."
@@ -11951,7 +11954,7 @@ msgstr ""
 "không thể chuyển nhánh trong khi cải tổ\n"
 "Cân nhắc dùng \"git rebase --quit\" hay \"git worktree add\"."
 
-#: builtin/checkout.c:1386
+#: builtin/checkout.c:1404
 msgid ""
 "cannot switch branch while cherry-picking\n"
 "Consider \"git cherry-pick --quit\" or \"git worktree add\"."
@@ -11959,7 +11962,7 @@ msgstr ""
 "không thể chuyển nhánh trong khi  cherry-picking\n"
 "Cân nhắc dùng \"git cherry-pick --quit\" hay \"git worktree add\"."
 
-#: builtin/checkout.c:1390
+#: builtin/checkout.c:1408
 msgid ""
 "cannot switch branch while reverting\n"
 "Consider \"git revert --quit\" or \"git worktree add\"."
@@ -11967,150 +11970,150 @@ msgstr ""
 "không thể chuyển nhánh trong khi hoàn nguyên\n"
 "Cân nhắc dùng \"git revert --quit\" hoặc \"git worktree add\"."
 
-#: builtin/checkout.c:1394
+#: builtin/checkout.c:1412
 msgid "you are switching branch while bisecting"
 msgstr ""
 "bạn hiện tại đang thực hiện việc chuyển nhánh trong khi đang di chuyển nửa "
 "bước"
 
-#: builtin/checkout.c:1401
+#: builtin/checkout.c:1419
 msgid "paths cannot be used with switching branches"
 msgstr "các đường dẫn không thể dùng cùng với các nhánh chuyển"
 
-#: builtin/checkout.c:1404 builtin/checkout.c:1408 builtin/checkout.c:1412
+#: builtin/checkout.c:1422 builtin/checkout.c:1426 builtin/checkout.c:1430
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr "“%s” không thể được sử dụng với các nhánh chuyển"
 
-#: builtin/checkout.c:1416 builtin/checkout.c:1419 builtin/checkout.c:1422
-#: builtin/checkout.c:1427 builtin/checkout.c:1432
+#: builtin/checkout.c:1434 builtin/checkout.c:1437 builtin/checkout.c:1440
+#: builtin/checkout.c:1445 builtin/checkout.c:1450
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "“%s” không thể được dùng với “%s”"
 
-#: builtin/checkout.c:1429
+#: builtin/checkout.c:1447
 #, c-format
 msgid "'%s' cannot take <start-point>"
 msgstr "“%s” không thể nhận <điểm-đầu>"
 
-#: builtin/checkout.c:1437
+#: builtin/checkout.c:1455
 #, c-format
 msgid "Cannot switch branch to a non-commit '%s'"
 msgstr "Không thể chuyển nhánh đến một thứ không phải là lần chuyển giao “%s”"
 
-#: builtin/checkout.c:1444
+#: builtin/checkout.c:1462
 msgid "missing branch or commit argument"
 msgstr "thiếu tham số là nhánh hoặc lần chuyển giao"
 
-#: builtin/checkout.c:1486 builtin/clone.c:91 builtin/commit-graph.c:84
-#: builtin/commit-graph.c:222 builtin/fetch.c:172 builtin/merge.c:287
-#: builtin/multi-pack-index.c:27 builtin/pull.c:119 builtin/push.c:551
-#: builtin/send-pack.c:192
+#: builtin/checkout.c:1504 builtin/clone.c:92 builtin/commit-graph.c:84
+#: builtin/commit-graph.c:222 builtin/fetch.c:172 builtin/merge.c:296
+#: builtin/multi-pack-index.c:27 builtin/pull.c:119 builtin/push.c:575
+#: builtin/send-pack.c:198
 msgid "force progress reporting"
 msgstr "ép buộc báo cáo tiến triển công việc"
 
-#: builtin/checkout.c:1487
+#: builtin/checkout.c:1505
 msgid "perform a 3-way merge with the new branch"
 msgstr "thực hiện hòa trộn kiểu 3-way với nhánh mới"
 
-#: builtin/checkout.c:1488 builtin/log.c:1795 parse-options.h:322
+#: builtin/checkout.c:1506 builtin/log.c:1800 parse-options.h:322
 msgid "style"
 msgstr "kiểu"
 
-#: builtin/checkout.c:1489
+#: builtin/checkout.c:1507
 msgid "conflict style (merge or diff3)"
 msgstr "xung đột kiểu (hòa trộn hoặc diff3)"
 
-#: builtin/checkout.c:1501 builtin/worktree.c:558
+#: builtin/checkout.c:1519 builtin/worktree.c:558
 msgid "detach HEAD at named commit"
 msgstr "rời bỏ HEAD tại lần chuyển giao theo tên"
 
-#: builtin/checkout.c:1502
+#: builtin/checkout.c:1520
 msgid "set upstream info for new branch"
 msgstr "đặt thông tin thượng nguồn cho nhánh mới"
 
-#: builtin/checkout.c:1504
+#: builtin/checkout.c:1522
 msgid "force checkout (throw away local modifications)"
 msgstr "ép buộc lấy ra (bỏ đi những thay đổi nội bộ)"
 
-#: builtin/checkout.c:1506
+#: builtin/checkout.c:1524
 msgid "new-branch"
 msgstr "nhánh-mới"
 
-#: builtin/checkout.c:1506
+#: builtin/checkout.c:1524
 msgid "new unparented branch"
 msgstr "nhánh không cha mới"
 
-#: builtin/checkout.c:1508 builtin/merge.c:291
+#: builtin/checkout.c:1526 builtin/merge.c:300
 msgid "update ignored files (default)"
 msgstr "cập nhật các tập tin bị bỏ qua (mặc định)"
 
-#: builtin/checkout.c:1511
+#: builtin/checkout.c:1529
 msgid "do not check if another worktree is holding the given ref"
 msgstr "không kiểm tra nếu cây làm việc khác đang giữ tham chiếu đã cho"
 
-#: builtin/checkout.c:1524
+#: builtin/checkout.c:1542
 msgid "checkout our version for unmerged files"
 msgstr ""
 "lấy ra (checkout) phiên bản của chúng ta cho các tập tin chưa được hòa trộn"
 
-#: builtin/checkout.c:1527
+#: builtin/checkout.c:1545
 msgid "checkout their version for unmerged files"
 msgstr ""
 "lấy ra (checkout) phiên bản của chúng họ cho các tập tin chưa được hòa trộn"
 
-#: builtin/checkout.c:1531
+#: builtin/checkout.c:1549
 msgid "do not limit pathspecs to sparse entries only"
 msgstr "không giới hạn đặc tả đường dẫn thành chỉ các mục rải rác"
 
-#: builtin/checkout.c:1586
+#: builtin/checkout.c:1604
 #, c-format
 msgid "-%c, -%c and --orphan are mutually exclusive"
 msgstr "-%c, -%c và --orphan loại từ lẫn nhau"
 
-#: builtin/checkout.c:1590
+#: builtin/checkout.c:1608
 msgid "-p and --overlay are mutually exclusive"
 msgstr "-p và --overlay loại từ lẫn nhau"
 
-#: builtin/checkout.c:1627
+#: builtin/checkout.c:1645
 msgid "--track needs a branch name"
 msgstr "--track cần tên một nhánh"
 
-#: builtin/checkout.c:1632
+#: builtin/checkout.c:1650
 #, c-format
 msgid "missing branch name; try -%c"
 msgstr "thiếu tên nhánh; hãy thử -%c"
 
-#: builtin/checkout.c:1664
+#: builtin/checkout.c:1682
 #, c-format
 msgid "could not resolve %s"
 msgstr "không thể phân giải “%s”"
 
-#: builtin/checkout.c:1680
+#: builtin/checkout.c:1698
 msgid "invalid path specification"
 msgstr "đường dẫn đã cho không hợp lệ"
 
-#: builtin/checkout.c:1687
+#: builtin/checkout.c:1705
 #, c-format
 msgid "'%s' is not a commit and a branch '%s' cannot be created from it"
 msgstr ""
 "“%s” không phải là một lần chuyển giao và một nhánh'%s” không thể được tạo "
 "từ đó"
 
-#: builtin/checkout.c:1691
+#: builtin/checkout.c:1709
 #, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
 msgstr "git checkout: --detach không nhận một đối số đường dẫn “%s”"
 
-#: builtin/checkout.c:1700
+#: builtin/checkout.c:1718
 msgid "--pathspec-from-file is incompatible with --detach"
 msgstr "--pathspec-from-file xung khắc với --detach"
 
-#: builtin/checkout.c:1703 builtin/reset.c:325 builtin/stash.c:1500
+#: builtin/checkout.c:1721 builtin/reset.c:325 builtin/stash.c:1499
 msgid "--pathspec-from-file is incompatible with --patch"
 msgstr "--pathspec-from-file xung khắc với --patch"
 
-#: builtin/checkout.c:1716
+#: builtin/checkout.c:1734
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -12118,70 +12121,70 @@ msgstr ""
 "git checkout: --ours/--theirs, --force và --merge là xung khắc với nhau khi\n"
 "checkout bảng mục lục (index)."
 
-#: builtin/checkout.c:1721
+#: builtin/checkout.c:1739
 msgid "you must specify path(s) to restore"
 msgstr "bạn phải chỉ định các thư mục muốn hồi phục"
 
-#: builtin/checkout.c:1747 builtin/checkout.c:1749 builtin/checkout.c:1798
-#: builtin/checkout.c:1800 builtin/clone.c:121 builtin/remote.c:170
+#: builtin/checkout.c:1765 builtin/checkout.c:1767 builtin/checkout.c:1816
+#: builtin/checkout.c:1818 builtin/clone.c:122 builtin/remote.c:170
 #: builtin/remote.c:172 builtin/submodule--helper.c:2719 builtin/worktree.c:554
 #: builtin/worktree.c:556
 msgid "branch"
 msgstr "nhánh"
 
-#: builtin/checkout.c:1748
+#: builtin/checkout.c:1766
 msgid "create and checkout a new branch"
 msgstr "tạo và checkout một nhánh mới"
 
-#: builtin/checkout.c:1750
+#: builtin/checkout.c:1768
 msgid "create/reset and checkout a branch"
 msgstr "tạo/đặt_lại và checkout một nhánh"
 
-#: builtin/checkout.c:1751
+#: builtin/checkout.c:1769
 msgid "create reflog for new branch"
 msgstr "tạo reflog cho nhánh mới"
 
-#: builtin/checkout.c:1753
+#: builtin/checkout.c:1771
 msgid "second guess 'git checkout <no-such-branch>' (default)"
-msgstr "đoán thứ hai 'git checkout <không-nhánh-nào-như-vậy>' (mặc định)"
+msgstr "đoán thứ hai “git checkout <không-nhánh-nào-như-vậy>” (mặc định)"
 
-#: builtin/checkout.c:1754
+#: builtin/checkout.c:1772
 msgid "use overlay mode (default)"
 msgstr "dùng chế độ che phủ (mặc định)"
 
-#: builtin/checkout.c:1799
+#: builtin/checkout.c:1817
 msgid "create and switch to a new branch"
 msgstr "tạo và chuyển đến một nhánh mới"
 
-#: builtin/checkout.c:1801
+#: builtin/checkout.c:1819
 msgid "create/reset and switch to a branch"
 msgstr "tạo/đặt_lại và chuyển đến một nhánh"
 
-#: builtin/checkout.c:1803
+#: builtin/checkout.c:1821
 msgid "second guess 'git switch <no-such-branch>'"
 msgstr "gợi ý thứ hai \"git checkout <không-nhánh-nào-như-vậy>\""
 
-#: builtin/checkout.c:1805
+#: builtin/checkout.c:1823
 msgid "throw away local modifications"
 msgstr "vứt bỏ các sửa đổi địa phương"
 
-#: builtin/checkout.c:1839
+#: builtin/checkout.c:1857
 msgid "which tree-ish to checkout from"
 msgstr "lấy ra từ tree-ish nào"
 
-#: builtin/checkout.c:1841
+#: builtin/checkout.c:1859
 msgid "restore the index"
 msgstr "phục hồi bảng mục lục"
 
-#: builtin/checkout.c:1843
+#: builtin/checkout.c:1861
 msgid "restore the working tree (default)"
 msgstr "phục hồi cây làm việc (mặc định)"
 
-#: builtin/checkout.c:1845
+#: builtin/checkout.c:1863
 msgid "ignore unmerged entries"
 msgstr "bỏ qua những thứ chưa hòa trộn: %s"
 
-#: builtin/checkout.c:1846
+#: builtin/checkout.c:1864
 msgid "use overlay mode"
 msgstr "dùng chế độ che phủ"
 
@@ -12222,7 +12225,7 @@ msgstr "gặp lỗi khi gỡ bỏ %s"
 msgid "could not lstat %s\n"
 msgstr "không thể lấy thông tin thống kê đầy đủ của %s\n"
 
-#: builtin/clean.c:302 git-add--interactive.perl:595
+#: builtin/clean.c:302 git-add--interactive.perl:593
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -12235,7 +12238,7 @@ msgstr ""
 "foo        - chọn mục trên cơ sở tiền tố duy nhất\n"
 "           - (để trống) không chọn gì cả\n"
 
-#: builtin/clean.c:306 git-add--interactive.perl:604
+#: builtin/clean.c:306 git-add--interactive.perl:602
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -12256,8 +12259,8 @@ msgstr ""
 "*          - chọn tất\n"
 "           - (để trống) kết thúc việc chọn\n"
 
-#: builtin/clean.c:521 git-add--interactive.perl:570
-#: git-add--interactive.perl:575
+#: builtin/clean.c:521 git-add--interactive.perl:568
+#: git-add--interactive.perl:573
 #, c-format, perl-format
 msgid "Huh (%s)?\n"
 msgstr "Hả (%s)?\n"
@@ -12326,7 +12329,7 @@ msgid "remove whole directories"
 msgstr "gỡ bỏ toàn bộ thư mục"
 
 #: builtin/clean.c:909 builtin/describe.c:565 builtin/describe.c:567
-#: builtin/grep.c:910 builtin/log.c:181 builtin/log.c:183
+#: builtin/grep.c:921 builtin/log.c:183 builtin/log.c:185
 #: builtin/ls-files.c:558 builtin/name-rev.c:526 builtin/name-rev.c:528
 #: builtin/show-ref.c:179
 msgid "pattern"
@@ -12368,164 +12371,164 @@ msgstr "-x và -X không thể dùng cùng nhau"
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<các tùy chọn>] [--] <kho> [<t.mục>]"
 
-#: builtin/clone.c:93
+#: builtin/clone.c:94
 msgid "don't create a checkout"
 msgstr "không tạo một checkout"
 
-#: builtin/clone.c:94 builtin/clone.c:96 builtin/init-db.c:553
+#: builtin/clone.c:95 builtin/clone.c:97 builtin/init-db.c:555
 msgid "create a bare repository"
 msgstr "tạo kho thuần"
 
-#: builtin/clone.c:98
+#: builtin/clone.c:99
 msgid "create a mirror repository (implies bare)"
 msgstr "tạo kho bản sao (ý là kho thuần)"
 
-#: builtin/clone.c:100
+#: builtin/clone.c:101
 msgid "to clone from a local repository"
 msgstr "để nhân bản từ kho nội bộ"
 
-#: builtin/clone.c:102
+#: builtin/clone.c:103
 msgid "don't use local hardlinks, always copy"
 msgstr "không sử dụng liên kết cứng nội bộ, luôn sao chép"
 
-#: builtin/clone.c:104
+#: builtin/clone.c:105
 msgid "setup as shared repository"
 msgstr "cài đặt đây là kho chia sẻ"
 
-#: builtin/clone.c:106
+#: builtin/clone.c:107
 msgid "pathspec"
 msgstr "đặc-tả-đường-dẫn"
 
-#: builtin/clone.c:106
+#: builtin/clone.c:107
 msgid "initialize submodules in the clone"
 msgstr "khởi tạo mô-đun-con trong bản sao"
 
-#: builtin/clone.c:110
+#: builtin/clone.c:111
 msgid "number of submodules cloned in parallel"
 msgstr "số lượng mô-đun-con được nhân bản đồng thời"
 
-#: builtin/clone.c:111 builtin/init-db.c:550
+#: builtin/clone.c:112 builtin/init-db.c:552
 msgid "template-directory"
 msgstr "thư-mục-mẫu"
 
-#: builtin/clone.c:112 builtin/init-db.c:551
+#: builtin/clone.c:113 builtin/init-db.c:553
 msgid "directory from which templates will be used"
 msgstr "thư mục mà tại đó các mẫu sẽ được dùng"
 
-#: builtin/clone.c:114 builtin/clone.c:116 builtin/submodule--helper.c:1831
+#: builtin/clone.c:115 builtin/clone.c:117 builtin/submodule--helper.c:1831
 #: builtin/submodule--helper.c:2336
 msgid "reference repository"
 msgstr "kho tham chiếu"
 
-#: builtin/clone.c:118 builtin/submodule--helper.c:1833
+#: builtin/clone.c:119 builtin/submodule--helper.c:1833
 #: builtin/submodule--helper.c:2338
 msgid "use --reference only while cloning"
 msgstr "chỉ dùng --reference khi nhân bản"
 
-#: builtin/clone.c:119 builtin/column.c:27 builtin/init-db.c:561
-#: builtin/merge-file.c:46 builtin/pack-objects.c:3546 builtin/repack.c:332
+#: builtin/clone.c:120 builtin/column.c:27 builtin/init-db.c:563
+#: builtin/merge-file.c:46 builtin/pack-objects.c:3546 builtin/repack.c:358
 msgid "name"
 msgstr "tên"
 
-#: builtin/clone.c:120
+#: builtin/clone.c:121
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr "dùng <tên> thay cho “origin” để theo dõi thượng nguồn"
 
-#: builtin/clone.c:122
+#: builtin/clone.c:123
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "lấy ra <nhánh> thay cho HEAD của máy chủ"
 
-#: builtin/clone.c:124
+#: builtin/clone.c:125
 msgid "path to git-upload-pack on the remote"
 msgstr "đường dẫn đến git-upload-pack trên máy chủ"
 
-#: builtin/clone.c:125 builtin/fetch.c:173 builtin/grep.c:849
+#: builtin/clone.c:126 builtin/fetch.c:173 builtin/grep.c:860
 #: builtin/pull.c:208
 msgid "depth"
 msgstr "độ-sâu"
 
-#: builtin/clone.c:126
+#: builtin/clone.c:127
 msgid "create a shallow clone of that depth"
 msgstr "tạo bản sao không đầy đủ cho mức sâu đã cho"
 
-#: builtin/clone.c:127 builtin/fetch.c:175 builtin/pack-objects.c:3535
+#: builtin/clone.c:128 builtin/fetch.c:175 builtin/pack-objects.c:3535
 #: builtin/pull.c:211
 msgid "time"
 msgstr "thời-gian"
 
-#: builtin/clone.c:128
+#: builtin/clone.c:129
 msgid "create a shallow clone since a specific time"
 msgstr "tạo bản sao không đầy đủ từ thời điểm đã cho"
 
-#: builtin/clone.c:129 builtin/fetch.c:177 builtin/fetch.c:200
-#: builtin/pull.c:214 builtin/pull.c:239 builtin/rebase.c:1311
+#: builtin/clone.c:130 builtin/fetch.c:177 builtin/fetch.c:200
+#: builtin/pull.c:214 builtin/pull.c:239 builtin/rebase.c:1317
 msgid "revision"
 msgstr "điểm xét duyệt"
 
-#: builtin/clone.c:130 builtin/fetch.c:178 builtin/pull.c:215
+#: builtin/clone.c:131 builtin/fetch.c:178 builtin/pull.c:215
 msgid "deepen history of shallow clone, excluding rev"
 msgstr "làm sâu hơn lịch sử của bản sao shallow, bằng điểm xét duyệt loại trừ"
 
-#: builtin/clone.c:132 builtin/submodule--helper.c:1843
+#: builtin/clone.c:133 builtin/submodule--helper.c:1843
 #: builtin/submodule--helper.c:2352
 msgid "clone only one branch, HEAD or --branch"
 msgstr "chỉ nhân bản một nhánh, HEAD hoặc --branch"
 
-#: builtin/clone.c:134
+#: builtin/clone.c:135
 msgid "don't clone any tags, and make later fetches not to follow them"
 msgstr ""
 "đứng có nhân bản bất kỳ nhánh nào, và làm cho những lần lấy về sau không "
 "theo chúng nữa"
 
-#: builtin/clone.c:136
+#: builtin/clone.c:137
 msgid "any cloned submodules will be shallow"
 msgstr "mọi mô-đun-con nhân bản sẽ là shallow (nông)"
 
-#: builtin/clone.c:137 builtin/init-db.c:559
+#: builtin/clone.c:138 builtin/init-db.c:561
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:138 builtin/init-db.c:560
+#: builtin/clone.c:139 builtin/init-db.c:562
 msgid "separate git dir from working tree"
 msgstr "không dùng chung thư mục dành riêng cho git và thư mục làm việc"
 
-#: builtin/clone.c:139
+#: builtin/clone.c:140
 msgid "key=value"
 msgstr "khóa=giá_trị"
 
-#: builtin/clone.c:140
+#: builtin/clone.c:141
 msgid "set config inside the new repository"
 msgstr "đặt cấu hình bên trong một kho chứa mới"
 
-#: builtin/clone.c:142 builtin/fetch.c:195 builtin/ls-remote.c:76
-#: builtin/pull.c:230 builtin/push.c:560 builtin/send-pack.c:190
+#: builtin/clone.c:143 builtin/fetch.c:195 builtin/ls-remote.c:76
+#: builtin/pull.c:230 builtin/push.c:584 builtin/send-pack.c:196
 msgid "server-specific"
 msgstr "đặc-tả-máy-phục-vụ"
 
-#: builtin/clone.c:142 builtin/fetch.c:195 builtin/ls-remote.c:76
-#: builtin/pull.c:231 builtin/push.c:560 builtin/send-pack.c:191
+#: builtin/clone.c:143 builtin/fetch.c:195 builtin/ls-remote.c:76
+#: builtin/pull.c:231 builtin/push.c:584 builtin/send-pack.c:197
 msgid "option to transmit"
 msgstr "tùy chọn để chuyển giao"
 
-#: builtin/clone.c:143 builtin/fetch.c:196 builtin/pull.c:234
-#: builtin/push.c:561
+#: builtin/clone.c:144 builtin/fetch.c:196 builtin/pull.c:234
+#: builtin/push.c:585
 msgid "use IPv4 addresses only"
 msgstr "chỉ dùng địa chỉ IPv4"
 
-#: builtin/clone.c:145 builtin/fetch.c:198 builtin/pull.c:237
-#: builtin/push.c:563
+#: builtin/clone.c:146 builtin/fetch.c:198 builtin/pull.c:237
+#: builtin/push.c:587
 msgid "use IPv6 addresses only"
 msgstr "chỉ dùng địa chỉ IPv6"
 
-#: builtin/clone.c:149
+#: builtin/clone.c:150
 msgid "any cloned submodules will use their remote-tracking branch"
 msgstr "mọi mô-đun-con nhân bản sẽ dung nhánh theo dõi máy chủ của chúng"
 
-#: builtin/clone.c:151
+#: builtin/clone.c:152
 msgid "initialize sparse-checkout file to include only files at root"
 msgstr "khởi tạo tập tin sparse-checkout để bao gồm chỉ các tập tin ở gốc"
 
-#: builtin/clone.c:287
+#: builtin/clone.c:288
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -12533,42 +12536,42 @@ msgstr ""
 "Không đoán được thư mục tên là gì.\n"
 "Vui lòng chỉ định tên một thư mục trên dòng lệnh"
 
-#: builtin/clone.c:340
+#: builtin/clone.c:341
 #, c-format
 msgid "info: Could not add alternate for '%s': %s\n"
 msgstr "thông tin: không thể thêm thay thế cho “%s”: %s\n"
 
-#: builtin/clone.c:413
+#: builtin/clone.c:414
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s có tồn tại nhưng lại không phải là một thư mục"
 
-#: builtin/clone.c:431
+#: builtin/clone.c:432
 #, c-format
 msgid "failed to start iterator over '%s'"
 msgstr "gặp lỗi khi bắt đầu lặp qua “%s”"
 
-#: builtin/clone.c:462
+#: builtin/clone.c:463
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "gặp lỗi khi tạo được liên kết mềm %s"
 
-#: builtin/clone.c:466
+#: builtin/clone.c:467
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "gặp lỗi khi sao chép tập tin và “%s”"
 
-#: builtin/clone.c:471
+#: builtin/clone.c:472
 #, c-format
 msgid "failed to iterate over '%s'"
 msgstr "gặp lỗi khi lặp qua “%s”"
 
-#: builtin/clone.c:498
+#: builtin/clone.c:499
 #, c-format
 msgid "done.\n"
 msgstr "hoàn tất.\n"
 
-#: builtin/clone.c:512
+#: builtin/clone.c:513
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
@@ -12576,107 +12579,107 @@ msgid ""
 msgstr ""
 "Việc nhân bản thành công, nhưng checkout gặp lỗi.\n"
 "Bạn kiểm tra kỹ xem cái gì được lấy ra bằng lệnh “git status”\n"
-"và thử lấy ra với lệnh 'git restore --source=HEAD :/'\n"
+"và thử lấy ra với lệnh “git restore --source=HEAD :/”\n"
 
-#: builtin/clone.c:589
+#: builtin/clone.c:590
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Không tìm thấy nhánh máy chủ %s để nhân bản (clone)."
 
-#: builtin/clone.c:708
+#: builtin/clone.c:709
 #, c-format
 msgid "unable to update %s"
 msgstr "không thể cập nhật %s"
 
-#: builtin/clone.c:756
+#: builtin/clone.c:757
 msgid "failed to initialize sparse-checkout"
 msgstr "gặp lỗi khi khởi tạo sparse-checkout"
 
-#: builtin/clone.c:779
+#: builtin/clone.c:780
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr "refers HEAD máy chủ  chỉ đến ref không tồn tại, không thể lấy ra.\n"
 
-#: builtin/clone.c:811
+#: builtin/clone.c:812
 msgid "unable to checkout working tree"
 msgstr "không thể lấy ra (checkout) cây làm việc"
 
-#: builtin/clone.c:868
+#: builtin/clone.c:887
 msgid "unable to write parameters to config file"
 msgstr "không thể ghi các tham số vào tập tin cấu hình"
 
-#: builtin/clone.c:931
+#: builtin/clone.c:950
 msgid "cannot repack to clean up"
 msgstr "không thể đóng gói để dọn dẹp"
 
-#: builtin/clone.c:933
+#: builtin/clone.c:952
 msgid "cannot unlink temporary alternates file"
 msgstr "không thể bỏ liên kết tập tin thay thế tạm thời"
 
-#: builtin/clone.c:970 builtin/receive-pack.c:2434
+#: builtin/clone.c:992 builtin/receive-pack.c:2493
 msgid "Too many arguments."
 msgstr "Có quá nhiều đối số."
 
-#: builtin/clone.c:974
+#: builtin/clone.c:996
 msgid "You must specify a repository to clone."
 msgstr "Bạn phải chỉ định một kho để mà nhân bản (clone)."
 
-#: builtin/clone.c:987
+#: builtin/clone.c:1009
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "tùy chọn --bare và --origin %s xung khắc nhau."
 
-#: builtin/clone.c:990
+#: builtin/clone.c:1012
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "tùy chọn --bare và --separate-git-dir xung khắc nhau."
 
-#: builtin/clone.c:1006
+#: builtin/clone.c:1025
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "kho chứa “%s” chưa tồn tại"
 
-#: builtin/clone.c:1010 builtin/fetch.c:1841
+#: builtin/clone.c:1029 builtin/fetch.c:1841
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "độ sâu %s không phải là một số nguyên dương"
 
-#: builtin/clone.c:1020
+#: builtin/clone.c:1039
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr "đường dẫn đích “%s” đã có từ trước và không phải là một thư mục rỗng."
 
-#: builtin/clone.c:1026
+#: builtin/clone.c:1045
 #, c-format
 msgid "repository path '%s' already exists and is not an empty directory."
 msgstr ""
 "đường dẫn kho chứa “%s” đã có từ trước và không phải là một thư mục rỗng."
 
-#: builtin/clone.c:1040
+#: builtin/clone.c:1059
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "cây làm việc “%s” đã sẵn tồn tại rồi."
 
-#: builtin/clone.c:1055 builtin/clone.c:1076 builtin/difftool.c:271
-#: builtin/log.c:1970 builtin/worktree.c:354 builtin/worktree.c:386
+#: builtin/clone.c:1074 builtin/clone.c:1095 builtin/difftool.c:271
+#: builtin/log.c:1987 builtin/worktree.c:354 builtin/worktree.c:386
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "không thể tạo các thư mục dẫn đầu của “%s”"
 
-#: builtin/clone.c:1060
+#: builtin/clone.c:1079
 #, c-format
 msgid "could not create work tree dir '%s'"
 msgstr "không thể tạo cây thư mục làm việc dir “%s”"
 
-#: builtin/clone.c:1080
+#: builtin/clone.c:1099
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "Đang nhân bản thành kho chứa bare “%s”…\n"
 
-#: builtin/clone.c:1082
+#: builtin/clone.c:1101
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Đang nhân bản thành “%s”…\n"
 
-#: builtin/clone.c:1106
+#: builtin/clone.c:1125
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
@@ -12684,41 +12687,46 @@ msgstr ""
 "nhân bản --recursive không tương thích với cả hai --reference và --reference-"
 "if-able"
 
-#: builtin/clone.c:1170
+#: builtin/clone.c:1169 builtin/remote.c:200 builtin/remote.c:705
+#, c-format
+msgid "'%s' is not a valid remote name"
+msgstr "“%s” không phải tên máy chủ hợp lệ"
+
+#: builtin/clone.c:1210
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr "--depth bị lờ đi khi nhân bản nội bộ; hãy sử dụng file:// để thay thế."
 
-#: builtin/clone.c:1172
+#: builtin/clone.c:1212
 msgid "--shallow-since is ignored in local clones; use file:// instead."
 msgstr ""
 "--shallow-since bị lờ đi khi nhân bản nội bộ; hãy sử dụng file:// để thay "
 "thế."
 
-#: builtin/clone.c:1174
+#: builtin/clone.c:1214
 msgid "--shallow-exclude is ignored in local clones; use file:// instead."
 msgstr ""
 "--shallow-exclude bị lờ đi khi nhân bản nội bộ; hãy sử dụng file:// để thay "
 "thế."
 
-#: builtin/clone.c:1176
+#: builtin/clone.c:1216
 msgid "--filter is ignored in local clones; use file:// instead."
 msgstr ""
 "--filter bị lờ đi khi nhân bản nội bộ; hãy sử dụng file:// để thay thế."
 
-#: builtin/clone.c:1179
+#: builtin/clone.c:1219
 msgid "source repository is shallow, ignoring --local"
 msgstr "kho nguồn là nông, nên bỏ qua --local"
 
-#: builtin/clone.c:1184
+#: builtin/clone.c:1224
 msgid "--local is ignored"
 msgstr "--local bị lờ đi"
 
-#: builtin/clone.c:1268 builtin/clone.c:1276
+#: builtin/clone.c:1311 builtin/clone.c:1319
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr "Nhánh máy chủ %s không tìm thấy trong thượng nguồn %s"
 
-#: builtin/clone.c:1279
+#: builtin/clone.c:1322
 msgid "You appear to have cloned an empty repository."
 msgstr "Bạn hình như là đã nhân bản một kho trống rỗng."
 
@@ -12778,7 +12786,7 @@ msgid "could not find object directory matching %s"
 msgstr "không thể tìm thấy thư mục đối tượng khớp với “%s”"
 
 #: builtin/commit-graph.c:80 builtin/commit-graph.c:210
-#: builtin/commit-graph.c:316 builtin/fetch.c:184 builtin/log.c:1764
+#: builtin/commit-graph.c:316 builtin/fetch.c:184 builtin/log.c:1769
 msgid "dir"
 msgstr "tmục"
 
@@ -12881,7 +12889,7 @@ msgstr ""
 msgid "duplicate parent %s ignored"
 msgstr "cha mẹ bị trùng lặp %s đã bị bỏ qua"
 
-#: builtin/commit-tree.c:56 builtin/commit-tree.c:136 builtin/log.c:546
+#: builtin/commit-tree.c:56 builtin/commit-tree.c:136 builtin/log.c:555
 #, c-format
 msgid "not a valid object name %s"
 msgstr "không phải là tên đối tượng hợp lệ “%s”"
@@ -12909,8 +12917,8 @@ msgstr "cha-mẹ"
 msgid "id of a parent commit object"
 msgstr "mã số của đối tượng chuyển giao cha mẹ"
 
-#: builtin/commit-tree.c:114 builtin/commit.c:1504 builtin/merge.c:272
-#: builtin/notes.c:409 builtin/notes.c:575 builtin/stash.c:1471
+#: builtin/commit-tree.c:114 builtin/commit.c:1504 builtin/merge.c:281
+#: builtin/notes.c:409 builtin/notes.c:575 builtin/stash.c:1470
 #: builtin/tag.c:413
 msgid "message"
 msgstr "chú thích"
@@ -12923,7 +12931,7 @@ msgstr "chú thích của lần chuyển giao"
 msgid "read commit log message from file"
 msgstr "đọc chú thích nhật ký lần chuyển giao từ tập tin"
 
-#: builtin/commit-tree.c:121 builtin/commit.c:1516 builtin/merge.c:289
+#: builtin/commit-tree.c:121 builtin/commit.c:1516 builtin/merge.c:298
 #: builtin/pull.c:176 builtin/revert.c:118
 msgid "GPG sign commit"
 msgstr "Ký lần chuyển giao dùng GPG"
@@ -13084,7 +13092,7 @@ msgstr ""
 msgid "could not lookup commit %s"
 msgstr "không thể tìm kiếm commit (lần chuyển giao) %s"
 
-#: builtin/commit.c:729 builtin/shortlog.c:478
+#: builtin/commit.c:729 builtin/shortlog.c:425
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr "(đang đọc thông điệp nhật ký từ đầu vào tiêu chuẩn)\n"
@@ -13282,8 +13290,8 @@ msgstr "tính đầy đủ giá trị trước/sau"
 msgid "version"
 msgstr "phiên bản"
 
-#: builtin/commit.c:1374 builtin/commit.c:1533 builtin/push.c:539
-#: builtin/worktree.c:722
+#: builtin/commit.c:1374 builtin/commit.c:1533 builtin/push.c:560
+#: builtin/worktree.c:725
 msgid "machine-readable output"
 msgstr "kết xuất dạng máy-có-thể-đọc"
 
@@ -13296,8 +13304,8 @@ msgid "terminate entries with NUL"
 msgstr "chấm dứt các mục bằng NUL"
 
 #: builtin/commit.c:1382 builtin/commit.c:1386 builtin/commit.c:1541
-#: builtin/fast-export.c:1199 builtin/fast-export.c:1202
-#: builtin/fast-export.c:1205 builtin/rebase.c:1400 parse-options.h:336
+#: builtin/fast-export.c:1198 builtin/fast-export.c:1201
+#: builtin/fast-export.c:1204 builtin/rebase.c:1406 parse-options.h:336
 msgid "mode"
 msgstr "chế độ"
 
@@ -13356,7 +13364,7 @@ msgstr "hiển thị sự khác biệt trong mẫu tin nhắn chuyển giao"
 msgid "Commit message options"
 msgstr "Các tùy chọn ghi chú commit"
 
-#: builtin/commit.c:1501 builtin/merge.c:276 builtin/tag.c:415
+#: builtin/commit.c:1501 builtin/merge.c:285 builtin/tag.c:415
 msgid "read message from file"
 msgstr "đọc chú thích từ tập tin"
 
@@ -13368,7 +13376,7 @@ msgstr "tác giả"
 msgid "override author for commit"
 msgstr "ghi đè tác giả cho commit"
 
-#: builtin/commit.c:1503 builtin/gc.c:539
+#: builtin/commit.c:1503 builtin/gc.c:542
 msgid "date"
 msgstr "ngày tháng"
 
@@ -13405,10 +13413,10 @@ msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr ""
 "lần chuyển giao nhận tôi là tác giả (được dùng với tùy chọn -C/-c/--amend)"
 
-#: builtin/commit.c:1510 builtin/log.c:1741 builtin/merge.c:292
+#: builtin/commit.c:1510 builtin/log.c:1744 builtin/merge.c:301
 #: builtin/pull.c:145 builtin/revert.c:110
-msgid "add Signed-off-by:"
-msgstr "(nên dùng) thêm dòng Signed-off-by:"
+msgid "add a Signed-off-by trailer"
+msgstr "thêm dòng Signed-off-by vào cuối"
 
 #: builtin/commit.c:1511
 msgid "use specified template file"
@@ -13511,217 +13519,221 @@ msgstr ""
 msgid "git config [<options>]"
 msgstr "git config [<các tùy chọn>]"
 
-#: builtin/config.c:107 builtin/env--helper.c:27
+#: builtin/config.c:109 builtin/env--helper.c:27
 #, c-format
 msgid "unrecognized --type argument, %s"
 msgstr "đối số không được thừa nhận --type, %s"
 
-#: builtin/config.c:119
+#: builtin/config.c:121
 msgid "only one type at a time"
 msgstr "chỉ một kiểu một lần"
 
-#: builtin/config.c:128
+#: builtin/config.c:130
 msgid "Config file location"
 msgstr "Vị trí tập tin cấu hình"
 
-#: builtin/config.c:129
+#: builtin/config.c:131
 msgid "use global config file"
 msgstr "dùng tập tin cấu hình toàn cục"
 
-#: builtin/config.c:130
+#: builtin/config.c:132
 msgid "use system config file"
 msgstr "sử dụng tập tin cấu hình hệ thống"
 
-#: builtin/config.c:131
+#: builtin/config.c:133
 msgid "use repository config file"
 msgstr "dùng tập tin cấu hình của kho"
 
-#: builtin/config.c:132
+#: builtin/config.c:134
 msgid "use per-worktree config file"
 msgstr "dùng tập tin cấu hình per-worktree"
 
-#: builtin/config.c:133
+#: builtin/config.c:135
 msgid "use given config file"
 msgstr "sử dụng tập tin cấu hình đã cho"
 
-#: builtin/config.c:134
+#: builtin/config.c:136
 msgid "blob-id"
 msgstr "blob-id"
 
-#: builtin/config.c:134
+#: builtin/config.c:136
 msgid "read config from given blob object"
 msgstr "đọc cấu hình từ đối tượng blob đã cho"
 
-#: builtin/config.c:135
+#: builtin/config.c:137
 msgid "Action"
 msgstr "Hành động"
 
-#: builtin/config.c:136
-msgid "get value: name [value-regex]"
-msgstr "lấy giá-trị: tên [value-regex]"
-
-#: builtin/config.c:137
-msgid "get all values: key [value-regex]"
-msgstr "lấy tất cả giá-trị: khóa [value-regex]"
-
 #: builtin/config.c:138
-msgid "get values for regexp: name-regex [value-regex]"
-msgstr "lấy giá trị cho regexp: name-regex [value-regex]"
+msgid "get value: name [value-pattern]"
+msgstr "lấy giá trị: tên [value-pattern]"
 
 #: builtin/config.c:139
-msgid "get value specific for the URL: section[.var] URL"
-msgstr "lấy đặc tả giá trị cho URL: phần[.biến] URL"
+msgid "get all values: key [value-pattern]"
+msgstr "lấy tất cả giá trị: khóa [value-pattern]"
 
 #: builtin/config.c:140
-msgid "replace all matching variables: name value [value_regex]"
-msgstr "thay thế tất cả các biến khớp mẫu: tên giá-trị [value_regex]"
+msgid "get values for regexp: name-regex [value-pattern]"
+msgstr "lấy giá trị cho regexp: name-regex [value-pattern]"
 
 #: builtin/config.c:141
-msgid "add a new variable: name value"
-msgstr "thêm biến mới: tên giá-trị"
+msgid "get value specific for the URL: section[.var] URL"
+msgstr "lấy đặc tả giá trị cho URL: phần[.biến] URL"
 
 #: builtin/config.c:142
-msgid "remove a variable: name [value-regex]"
-msgstr "gỡ bỏ biến: tên [value-regex]"
+msgid "replace all matching variables: name value [value-pattern]"
+msgstr "thay thế tất cả các biến khớp mẫu: tên giá-trị [value-pattern]"
 
 #: builtin/config.c:143
-msgid "remove all matches: name [value-regex]"
-msgstr "gỡ bỏ mọi cái khớp: tên [value-regex]"
+msgid "add a new variable: name value"
+msgstr "thêm biến mới: tên giá-trị"
 
 #: builtin/config.c:144
+msgid "remove a variable: name [value-pattern]"
+msgstr "gỡ bỏ biến: tên [value-pattern]"
+
+#: builtin/config.c:145
+msgid "remove all matches: name [value-pattern]"
+msgstr "gỡ bỏ mọi cái khớp: tên [value-pattern]"
+
+#: builtin/config.c:146
 msgid "rename section: old-name new-name"
 msgstr "đổi tên phần: tên-cũ tên-mới"
 
-#: builtin/config.c:145
+#: builtin/config.c:147
 msgid "remove a section: name"
 msgstr "gỡ bỏ phần: tên"
 
-#: builtin/config.c:146
+#: builtin/config.c:148
 msgid "list all"
 msgstr "liệt kê tất"
 
-#: builtin/config.c:147
+#: builtin/config.c:149
+msgid "use string equality when comparing values to 'value-pattern'"
+msgstr "sử dụng so sánh bằng chuỗi khi so sánh các giá trị với “value-pattern”"
+
+#: builtin/config.c:150
 msgid "open an editor"
 msgstr "mở một trình biên soạn"
 
-#: builtin/config.c:148
+#: builtin/config.c:151
 msgid "find the color configured: slot [default]"
 msgstr "tìm cấu hình màu sắc: slot [mặc định]"
 
-#: builtin/config.c:149
+#: builtin/config.c:152
 msgid "find the color setting: slot [stdout-is-tty]"
 msgstr "tìm các cài đặt về màu sắc: slot [stdout-là-tty]"
 
-#: builtin/config.c:150
+#: builtin/config.c:153
 msgid "Type"
 msgstr "Kiểu"
 
-#: builtin/config.c:151 builtin/env--helper.c:43
+#: builtin/config.c:154 builtin/env--helper.c:43
 msgid "value is given this type"
 msgstr "giá trị được đưa kiểu này"
 
-#: builtin/config.c:152
+#: builtin/config.c:155
 msgid "value is \"true\" or \"false\""
 msgstr "giá trị là \"true\" hoặc \"false\""
 
-#: builtin/config.c:153
+#: builtin/config.c:156
 msgid "value is decimal number"
 msgstr "giá trị ở dạng số thập phân"
 
-#: builtin/config.c:154
+#: builtin/config.c:157
 msgid "value is --bool or --int"
 msgstr "giá trị là --bool hoặc --int"
 
-#: builtin/config.c:155
+#: builtin/config.c:158
 msgid "value is --bool or string"
 msgstr "giá trị là --bool hoặc chuỗi"
 
-#: builtin/config.c:156
+#: builtin/config.c:159
 msgid "value is a path (file or directory name)"
 msgstr "giá trị là đường dẫn (tên tập tin hay thư mục)"
 
-#: builtin/config.c:157
+#: builtin/config.c:160
 msgid "value is an expiry date"
 msgstr "giá trị là một ngày hết hạn"
 
-#: builtin/config.c:158
+#: builtin/config.c:161
 msgid "Other"
 msgstr "Khác"
 
-#: builtin/config.c:159
+#: builtin/config.c:162
 msgid "terminate values with NUL byte"
 msgstr "chấm dứt giá trị với byte NUL"
 
-#: builtin/config.c:160
+#: builtin/config.c:163
 msgid "show variable names only"
 msgstr "chỉ hiển thị các tên biến"
 
-#: builtin/config.c:161
+#: builtin/config.c:164
 msgid "respect include directives on lookup"
 msgstr "tôn trọng kể cà các hướng trong tìm kiếm"
 
-#: builtin/config.c:162
+#: builtin/config.c:165
 msgid "show origin of config (file, standard input, blob, command line)"
 msgstr ""
 "hiển thị nguyên gốc của cấu hình (tập tin, đầu vào tiêu chuẩn, blob, dòng "
 "lệnh)"
 
-#: builtin/config.c:163
+#: builtin/config.c:166
 msgid "show scope of config (worktree, local, global, system, command)"
 msgstr ""
 "hiển thị phạm vi của cấu hình (cây làm việc, cục bộ, toàn cầu, hệ thống, "
 "lệnh)"
 
-#: builtin/config.c:164 builtin/env--helper.c:45
+#: builtin/config.c:167 builtin/env--helper.c:45
 msgid "value"
 msgstr "giá trị"
 
-#: builtin/config.c:164
+#: builtin/config.c:167
 msgid "with --get, use default value when missing entry"
 msgstr "với --get, dùng giá trị mặc định khi thiếu mục tin"
 
-#: builtin/config.c:178
+#: builtin/config.c:181
 #, c-format
 msgid "wrong number of arguments, should be %d"
 msgstr "sai số lượng tham số, phải là %d"
 
-#: builtin/config.c:180
+#: builtin/config.c:183
 #, c-format
 msgid "wrong number of arguments, should be from %d to %d"
 msgstr "sai số lượng tham số, phải từ %d đến %d"
 
-#: builtin/config.c:334
+#: builtin/config.c:339
 #, c-format
 msgid "invalid key pattern: %s"
 msgstr "mẫu khóa không hợp lệ: %s"
 
-#: builtin/config.c:370
+#: builtin/config.c:377
 #, c-format
 msgid "failed to format default config value: %s"
 msgstr "gặp lỗi khi định dạng giá trị cấu hình mặc định: %s"
 
-#: builtin/config.c:434
+#: builtin/config.c:441
 #, c-format
 msgid "cannot parse color '%s'"
 msgstr "không thể phân tích màu “%s”"
 
-#: builtin/config.c:476
+#: builtin/config.c:483
 msgid "unable to parse default color value"
 msgstr "không thể phân tích giá trị màu mặc định"
 
-#: builtin/config.c:529 builtin/config.c:789
+#: builtin/config.c:536 builtin/config.c:833
 msgid "not in a git directory"
 msgstr "không trong thư mục git"
 
-#: builtin/config.c:532
+#: builtin/config.c:539
 msgid "writing to stdin is not supported"
 msgstr "việc ghi ra đầu ra tiêu chuẩn là không được hỗ trợ"
 
-#: builtin/config.c:535
+#: builtin/config.c:542
 msgid "writing config blobs is not supported"
 msgstr "không hỗ trợ ghi cấu hình các blob"
 
-#: builtin/config.c:620
+#: builtin/config.c:627
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -13736,27 +13748,27 @@ msgstr ""
 "#\tname = %s\n"
 "#\temail = %s\n"
 
-#: builtin/config.c:644
+#: builtin/config.c:652
 msgid "only one config file at a time"
 msgstr "chỉ một tập tin cấu hình một lần"
 
-#: builtin/config.c:650
+#: builtin/config.c:658
 msgid "--local can only be used inside a git repository"
 msgstr "--local chỉ có thể được dùng bên trong một kho git"
 
-#: builtin/config.c:652
+#: builtin/config.c:660
 msgid "--blob can only be used inside a git repository"
 msgstr "--blob chỉ có thể được dùng bên trong một kho git"
 
-#: builtin/config.c:654
+#: builtin/config.c:662
 msgid "--worktree can only be used inside a git repository"
 msgstr "--worktree chỉ có thể được dùng bên trong một kho git"
 
-#: builtin/config.c:676
+#: builtin/config.c:684
 msgid "$HOME not set"
 msgstr "Chưa đặt biến môi trường HOME"
 
-#: builtin/config.c:700
+#: builtin/config.c:708
 msgid ""
 "--worktree cannot be used with multiple working trees unless the config\n"
 "extension worktreeConfig is enabled. Please read \"CONFIGURATION FILE\"\n"
@@ -13766,19 +13778,19 @@ msgstr ""
 "worktreeConfig được bật. Vui lòng đọc phần \"CONFIGURATION FILE\"\n"
 "trong \"git help worktree\" để biết thêm chi tiết"
 
-#: builtin/config.c:735
+#: builtin/config.c:743
 msgid "--get-color and variable type are incoherent"
 msgstr "--get-color và kiểu biến là không mạch lạc"
 
-#: builtin/config.c:740
+#: builtin/config.c:748
 msgid "only one action at a time"
 msgstr "chỉ một thao tác mỗi lần"
 
-#: builtin/config.c:753
+#: builtin/config.c:761
 msgid "--name-only is only applicable to --list or --get-regexp"
 msgstr "--name-only chỉ được áp dụng cho --list hoặc --get-regexp"
 
-#: builtin/config.c:759
+#: builtin/config.c:767
 msgid ""
 "--show-origin is only applicable to --get, --get-all, --get-regexp, and --"
 "list"
@@ -13786,33 +13798,37 @@ msgstr ""
 "--show-origin chỉ được áp dụng cho --get, --get-all, --get-regexp, hoặc --"
 "list"
 
-#: builtin/config.c:765
+#: builtin/config.c:773
 msgid "--default is only applicable to --get"
 msgstr "--default chỉ được áp dụng cho --get"
 
-#: builtin/config.c:778
+#: builtin/config.c:806
+msgid "--fixed-value only applies with 'value-pattern'"
+msgstr "--fixed-value chỉ áp dụng với “value-pattern”"
+
+#: builtin/config.c:822
 #, c-format
 msgid "unable to read config file '%s'"
 msgstr "không thể đọc tập tin cấu hình “%s”"
 
-#: builtin/config.c:781
+#: builtin/config.c:825
 msgid "error processing config file(s)"
 msgstr "gặp lỗi khi xử lý các tập tin cấu hình"
 
-#: builtin/config.c:791
+#: builtin/config.c:835
 msgid "editing stdin is not supported"
 msgstr "sửa chữa đầu ra tiêu chuẩn là không được hỗ trợ"
 
-#: builtin/config.c:793
+#: builtin/config.c:837
 msgid "editing blobs is not supported"
 msgstr "việc sửa chữa các blob là không được hỗ trợ"
 
-#: builtin/config.c:807
+#: builtin/config.c:851
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr "không thể tạo tập tin cấu hình “%s”"
 
-#: builtin/config.c:820
+#: builtin/config.c:864
 #, c-format
 msgid ""
 "cannot overwrite multiple values with a single value\n"
@@ -13821,7 +13837,7 @@ msgstr ""
 "không thể ghi đè nhiều giá trị với một giá trị đơn\n"
 "      Dùng một biểu thức chính quy, --add hay --replace-all để thay đổi %s."
 
-#: builtin/config.c:894 builtin/config.c:905
+#: builtin/config.c:943 builtin/config.c:954
 #, c-format
 msgid "no such section: %s"
 msgstr "không có đoạn: %s"
@@ -13859,6 +13875,11 @@ msgstr "credential-cache--daemon không sẵn có; không hỗ trợ unix socket
 msgid "credential-cache unavailable; no unix socket support"
 msgstr "credential-cache không sẵn có; không hỗ trợ unix socket"
 
+#: builtin/credential-store.c:66
+#, c-format
+msgid "unable to get credential storage lock in %d ms"
+msgstr "không thể lấy khóa lưu trữ ủy nhiệm %d ms"
+
 #: builtin/describe.c:26
 msgid "git describe [<options>] [<commit-ish>...]"
 msgstr "git describe [<các tùy chọn>] <commit-ish>*"
@@ -14023,44 +14044,52 @@ msgstr "--dirty là xung khắc với các tùy chọn commit-ish"
 msgid "--broken is incompatible with commit-ishes"
 msgstr "--broken là xung khắc với commit-ishes"
 
+#: builtin/diff-tree.c:155
+msgid "--stdin and --merge-base are mutually exclusive"
+msgstr "--stdin và --merge-base loại từ lẫn nhau"
+
+#: builtin/diff-tree.c:157
+msgid "--merge-base only works with two commits"
+msgstr "--merge-base chỉ hoạt động với hai lần chuyển giao"
+
 #: builtin/diff.c:91
 #, c-format
 msgid "'%s': not a regular file or symlink"
 msgstr "“%s”: không phải tập tin bình thường hay liên kết mềm"
 
-#: builtin/diff.c:241
+#: builtin/diff.c:258
 #, c-format
 msgid "invalid option: %s"
 msgstr "tùy chọn không hợp lệ: %s"
 
-#: builtin/diff.c:358
+#: builtin/diff.c:375
 #, c-format
 msgid "%s...%s: no merge base"
-msgstr "%s...%s: không có cơ sở hòa trộn"
+msgstr "%s%s: không có cơ sở hòa trộn"
 
-#: builtin/diff.c:468
+#: builtin/diff.c:485
 msgid "Not a git repository"
 msgstr "Không phải là kho git"
 
-#: builtin/diff.c:513
+#: builtin/diff.c:530 builtin/grep.c:681
 #, c-format
 msgid "invalid object '%s' given."
 msgstr "đối tượng đã cho “%s” không hợp lệ."
 
-#: builtin/diff.c:524
+#: builtin/diff.c:541
 #, c-format
 msgid "more than two blobs given: '%s'"
 msgstr "đã cho nhiều hơn hai đối tượng blob: “%s”"
 
-#: builtin/diff.c:529
+#: builtin/diff.c:546
 #, c-format
 msgid "unhandled object '%s' given."
 msgstr "đã cho đối tượng không thể nắm giữ “%s”."
 
-#: builtin/diff.c:563
+#: builtin/diff.c:580
 #, c-format
 msgid "%s...%s: multiple merge bases, using %s"
-msgstr "%s...%s: có nhiều cơ sở để hòa trộn, nên dùng %s"
+msgstr "%s%s: có nhiều cơ sở để hòa trộn, nên dùng %s"
 
 #: builtin/difftool.c:30
 msgid "git difftool [<options>] [<commit> [<commit>]] [--] [<path>...]"
@@ -14088,7 +14117,7 @@ msgstr "không đọc được tập tin liên kết mềm %s"
 msgid "could not read object %s for symlink %s"
 msgstr "không thể đọc đối tượng %s cho liên kết mềm %s"
 
-#: builtin/difftool.c:413
+#: builtin/difftool.c:412
 msgid ""
 "combined diff formats('-c' and '--cc') are not supported in\n"
 "directory diff mode('-d' and '--dir-diff')."
@@ -14096,53 +14125,53 @@ msgstr ""
 "các định dạng diff tổ hợp(“-c” và “--cc”) chưa được hỗ trợ trong\n"
 "chế độ diff thư mục(“-d” và “--dir-diff”)."
 
-#: builtin/difftool.c:634
+#: builtin/difftool.c:633
 #, c-format
 msgid "both files modified: '%s' and '%s'."
 msgstr "cả hai tập tin đã bị sửa: “%s” và “%s”."
 
-#: builtin/difftool.c:636
+#: builtin/difftool.c:635
 msgid "working tree file has been left."
 msgstr "cây làm việc ở bên trái."
 
-#: builtin/difftool.c:647
+#: builtin/difftool.c:646
 #, c-format
 msgid "temporary files exist in '%s'."
 msgstr "các tập tin tạm đã sẵn có trong “%s”."
 
-#: builtin/difftool.c:648
+#: builtin/difftool.c:647
 msgid "you may want to cleanup or recover these."
 msgstr "bạn có lẽ muốn dọn dẹp hay phục hồi ở đây."
 
-#: builtin/difftool.c:697
+#: builtin/difftool.c:696
 msgid "use `diff.guitool` instead of `diff.tool`"
 msgstr "dùng “diff.guitool“ thay vì dùng “diff.tool“"
 
-#: builtin/difftool.c:699
+#: builtin/difftool.c:698
 msgid "perform a full-directory diff"
 msgstr "thực hiện một diff toàn thư mục"
 
-#: builtin/difftool.c:701
+#: builtin/difftool.c:700
 msgid "do not prompt before launching a diff tool"
 msgstr "đừng nhắc khi khởi chạy công cụ diff"
 
-#: builtin/difftool.c:706
+#: builtin/difftool.c:705
 msgid "use symlinks in dir-diff mode"
 msgstr "dùng liên kết mềm trong diff-thư-mục"
 
-#: builtin/difftool.c:707
+#: builtin/difftool.c:706
 msgid "tool"
 msgstr "công cụ"
 
-#: builtin/difftool.c:708
+#: builtin/difftool.c:707
 msgid "use the specified diff tool"
 msgstr "dùng công cụ diff đã cho"
 
-#: builtin/difftool.c:710
+#: builtin/difftool.c:709
 msgid "print a list of diff tools that may be used with `--tool`"
 msgstr "in ra danh sách các công cụ dif cái mà có thẻ dùng với “--tool“"
 
-#: builtin/difftool.c:713
+#: builtin/difftool.c:712
 msgid ""
 "make 'git-difftool' exit when an invoked diff tool returns a non - zero exit "
 "code"
@@ -14150,31 +14179,31 @@ msgstr ""
 "làm cho “git-difftool” thoát khi gọi công cụ diff trả về mã không phải số "
 "không"
 
-#: builtin/difftool.c:716
+#: builtin/difftool.c:715
 msgid "specify a custom command for viewing diffs"
 msgstr "chỉ định một lệnh tùy ý để xem diff"
 
-#: builtin/difftool.c:717
+#: builtin/difftool.c:716
 msgid "passed to `diff`"
 msgstr "chuyển cho “diff”"
 
-#: builtin/difftool.c:732
+#: builtin/difftool.c:731
 msgid "difftool requires worktree or --no-index"
 msgstr "difftool cần cây làm việc hoặc --no-index"
 
-#: builtin/difftool.c:739
+#: builtin/difftool.c:738
 msgid "--dir-diff is incompatible with --no-index"
 msgstr "--dir-diff xung khắc với --no-index"
 
-#: builtin/difftool.c:742
+#: builtin/difftool.c:741
 msgid "--gui, --tool and --extcmd are mutually exclusive"
 msgstr "--gui, --tool và --extcmd loại từ lẫn nhau"
 
-#: builtin/difftool.c:750
+#: builtin/difftool.c:749
 msgid "no <tool> given for --tool=<tool>"
 msgstr "chưa đưa ra <công_cụ> cho --tool=<công_cụ>"
 
-#: builtin/difftool.c:757
+#: builtin/difftool.c:756
 msgid "no <cmd> given for --extcmd=<cmd>"
 msgstr "chưa đưa ra <lệnh> cho --extcmd=<lệnh>"
 
@@ -14188,7 +14217,7 @@ msgstr "kiểu"
 
 #: builtin/env--helper.c:46
 msgid "default for git_env_*(...) to fall back on"
-msgstr "mặc định cho git_env_*(...) để quay về"
+msgstr "mặc định cho git_env_*() để quay về"
 
 #: builtin/env--helper.c:48
 msgid "be quiet only use git_env_*() value as exit code"
@@ -14198,7 +14227,7 @@ msgstr "im lặng chỉ khi dung giá trị git_env_*() làm mã thoát"
 #, c-format
 msgid "option `--default' expects a boolean value with `--type=bool`, not `%s`"
 msgstr ""
-"tùy chọn `--default' cần một giá trị logic với `--type=bool`, không phải `%s`"
+"tùy chọn “--default” cần một giá trị logic với “--type=bool“, không phải “%s“"
 
 #: builtin/env--helper.c:82
 #, c-format
@@ -14206,8 +14235,8 @@ msgid ""
 "option `--default' expects an unsigned long value with `--type=ulong`, not `"
 "%s`"
 msgstr ""
-"tùy chọn `--default' cần một giá trị số nguyên dài không dấu với `--"
-"type=ulong`, không phải `%s`"
+"tùy chọn “--default” cần một giá trị số nguyên dài không dấu với “--"
+"type=ulong“, không phải “%s“"
 
 #: builtin/fast-export.c:29
 msgid "git fast-export [rev-list-opts]"
@@ -14217,126 +14246,126 @@ msgstr "git fast-export [rev-list-opts]"
 msgid "Error: Cannot export nested tags unless --mark-tags is specified."
 msgstr "Lỗi: không thể xuất thẻ lồng nhau trừ khi --mark-tags được chỉ định."
 
-#: builtin/fast-export.c:1178
+#: builtin/fast-export.c:1177
 msgid "--anonymize-map token cannot be empty"
 msgstr "--anonymize-map thẻ không thể là rỗng"
 
-#: builtin/fast-export.c:1198
+#: builtin/fast-export.c:1197
 msgid "show progress after <n> objects"
 msgstr "hiển thị tiến triển sau <n> đối tượng"
 
-#: builtin/fast-export.c:1200
+#: builtin/fast-export.c:1199
 msgid "select handling of signed tags"
 msgstr "chọn điều khiển của thẻ đã ký"
 
-#: builtin/fast-export.c:1203
+#: builtin/fast-export.c:1202
 msgid "select handling of tags that tag filtered objects"
 msgstr "chọn sự xử lý của các thẻ, cái mà đánh thẻ các đối tượng được lọc ra"
 
-#: builtin/fast-export.c:1206
+#: builtin/fast-export.c:1205
 msgid "select handling of commit messages in an alternate encoding"
 msgstr ""
 "chọn bộ xử lý cho các ghi chú của lần chuyển giao theo một bộ mã thay thế"
 
-#: builtin/fast-export.c:1209
+#: builtin/fast-export.c:1208
 msgid "Dump marks to this file"
 msgstr "Đổ các đánh dấu này vào tập-tin"
 
-#: builtin/fast-export.c:1211
+#: builtin/fast-export.c:1210
 msgid "Import marks from this file"
 msgstr "Nhập vào đánh dấu từ tập tin này"
 
-#: builtin/fast-export.c:1215
+#: builtin/fast-export.c:1214
 msgid "Import marks from this file if it exists"
 msgstr "Nhập vào đánh dấu từ tập tin sẵn có"
 
-#: builtin/fast-export.c:1217
+#: builtin/fast-export.c:1216
 msgid "Fake a tagger when tags lack one"
 msgstr "Làm giả một cái thẻ khi thẻ bị thiếu một cái"
 
-#: builtin/fast-export.c:1219
+#: builtin/fast-export.c:1218
 msgid "Output full tree for each commit"
 msgstr "Xuất ra toàn bộ cây cho mỗi lần chuyển giao"
 
-#: builtin/fast-export.c:1221
+#: builtin/fast-export.c:1220
 msgid "Use the done feature to terminate the stream"
 msgstr "Sử dụng tính năng done để chấm dứt luồng dữ liệu"
 
-#: builtin/fast-export.c:1222
+#: builtin/fast-export.c:1221
 msgid "Skip output of blob data"
 msgstr "Bỏ qua kết xuất của dữ liệu blob"
 
-#: builtin/fast-export.c:1223 builtin/log.c:1811
+#: builtin/fast-export.c:1222 builtin/log.c:1816
 msgid "refspec"
 msgstr "refspec"
 
-#: builtin/fast-export.c:1224
+#: builtin/fast-export.c:1223
 msgid "Apply refspec to exported refs"
 msgstr "Áp dụng refspec cho refs đã xuất"
 
-#: builtin/fast-export.c:1225
+#: builtin/fast-export.c:1224
 msgid "anonymize output"
 msgstr "kết xuất anonymize"
 
-#: builtin/fast-export.c:1226
+#: builtin/fast-export.c:1225
 msgid "from:to"
 msgstr "từ:đến"
 
-#: builtin/fast-export.c:1227
+#: builtin/fast-export.c:1226
 msgid "convert <from> to <to> in anonymized output"
 msgstr "chuyển đổi <from> sang <to> đầu ra ẩn danh"
 
-#: builtin/fast-export.c:1230
+#: builtin/fast-export.c:1229
 msgid "Reference parents which are not in fast-export stream by object id"
 msgstr ""
 "Các cha mẹ tham chiếu cái mà k trong luồng dữ liệu fast-export bởi mã id đối "
 "tượng"
 
-#: builtin/fast-export.c:1232
+#: builtin/fast-export.c:1231
 msgid "Show original object ids of blobs/commits"
 msgstr "Hiển thị các mã id nguyên gốc của blobs/commits"
 
-#: builtin/fast-export.c:1234
+#: builtin/fast-export.c:1233
 msgid "Label tags with mark ids"
 msgstr "Gắn nhãn thẻ ID dấu"
 
-#: builtin/fast-export.c:1257
+#: builtin/fast-export.c:1256
 msgid "--anonymize-map without --anonymize does not make sense"
 msgstr "--anonymize-map mà không có --anonymize là không hợp lý"
 
-#: builtin/fast-export.c:1272
+#: builtin/fast-export.c:1271
 msgid "Cannot pass both --import-marks and --import-marks-if-exists"
 msgstr "Không thể chuyển qua cả hai --import-marks và --import-marks-if-exists"
 
-#: builtin/fast-import.c:3086
+#: builtin/fast-import.c:3088
 #, c-format
 msgid "Missing from marks for submodule '%s'"
 msgstr "Thiếu các đánh dấu cho mô-đun-con “%s”"
 
-#: builtin/fast-import.c:3088
+#: builtin/fast-import.c:3090
 #, c-format
 msgid "Missing to marks for submodule '%s'"
 msgstr "Thiếu đánh dấu cho mô-đun-con “%s”"
 
-#: builtin/fast-import.c:3223
+#: builtin/fast-import.c:3225
 #, c-format
 msgid "Expected 'mark' command, got %s"
-msgstr "Cần lệnh 'mark', nhưng lại nhận được %s"
+msgstr "Cần lệnh “mark”, nhưng lại nhận được %s"
 
-#: builtin/fast-import.c:3228
+#: builtin/fast-import.c:3230
 #, c-format
 msgid "Expected 'to' command, got %s"
-msgstr "Cần lệnh 'to', nhưng lại nhận được %s"
+msgstr "Cần lệnh “to”, nhưng lại nhận được %s"
 
-#: builtin/fast-import.c:3320
+#: builtin/fast-import.c:3322
 msgid "Expected format name:filename for submodule rewrite option"
 msgstr "Cần định dạng tên:tên_tập_tin cho tùy chọn ghi lại mô-đun-con"
 
-#: builtin/fast-import.c:3374
+#: builtin/fast-import.c:3377
 #, c-format
 msgid "feature '%s' forbidden in input without --allow-unsafe-features"
 msgstr ""
-"tính năng ' %s ' bị cấm chỉ trong đầu vào mà không có --allow-unsafe-features"
+"tính năng “%s” bị cấm chỉ trong đầu vào mà không có --allow-unsafe-features"
 
 #: builtin/fetch-pack.c:241
 #, c-format
@@ -14473,7 +14502,7 @@ msgstr ""
 
 #: builtin/fetch.c:204 builtin/fetch.c:206
 msgid "run 'maintenance --auto' after fetching"
-msgstr "chạy 'maintenance --auto' sau khi lấy về"
+msgstr "chạy “maintenance --auto” sau khi lấy về"
 
 #: builtin/fetch.c:208 builtin/pull.c:243
 msgid "check for forced-updates on all updated branches"
@@ -14554,7 +14583,7 @@ msgid ""
 msgstr ""
 "Việc lấy về thường chỉ ra các nhánh buộc phải cập nhật,\n"
 "nhưng lựa chọn bị tắt. Để kích hoạt lại, sử dụng cờ\n"
-"'--show-forced-updates' hoặc chạy 'git config fetch.showForcedUpdates true'."
+"“--show-forced-updates” hoặc chạy “git config fetch.showForcedUpdates true”."
 
 #: builtin/fetch.c:905
 #, c-format
@@ -14565,8 +14594,8 @@ msgid ""
 " to avoid this check.\n"
 msgstr ""
 "Việc này cần %.2f giây để kiểm tra các cập nhật ép buộc. Bạn có thể dùng\n"
-"'--no-show-forced-updates' hoặc chạy 'git config fetch.showForcedUpdates "
-"false'\n"
+"“--no-show-forced-updates” hoặc chạy “git config fetch.showForcedUpdates "
+"false\n"
 "để tránh kiểm tra này.\n"
 
 #: builtin/fetch.c:939
@@ -14607,7 +14636,7 @@ msgstr "   (%s đã trở thành không đầu (không được quản lý))"
 msgid "[deleted]"
 msgstr "[đã xóa]"
 
-#: builtin/fetch.c:1195 builtin/remote.c:1113
+#: builtin/fetch.c:1195 builtin/remote.c:1118
 msgid "(none)"
 msgstr "(không)"
 
@@ -14721,7 +14750,6 @@ msgstr ""
 "partialclone"
 
 #: builtin/fetch.c:1891
-#| msgid "Option --exec can only be used together with --remote"
 msgid "--stdin can only be used when fetching from one remote"
 msgstr "--stdin chỉ có thể dùng khi lấy về từ một máy chủ"
 
@@ -14816,6 +14844,22 @@ msgstr "chỉ hiển thị những tham chiếu mà nó chứa lần chuyển gi
 msgid "print only refs which don't contain the commit"
 msgstr "chỉ hiển thị những tham chiếu mà nó không chứa lần chuyển giao"
 
+#: builtin/for-each-repo.c:9
+msgid "git for-each-repo --config=<config> <command-args>"
+msgstr "git for-each-repo --config=<config> <command-args>"
+
+#: builtin/for-each-repo.c:37
+msgid "config"
+msgstr "config"
+
+#: builtin/for-each-repo.c:38
+msgid "config key storing a list of repository paths"
+msgstr "khóa cấu hình lưu trữ danh sách đường dẫn kho lưu trữ"
+
+#: builtin/for-each-repo.c:46
+msgid "missing --config=<config>"
+msgstr "thiếu --config=<config>"
+
 #: builtin/fsck.c:69 builtin/fsck.c:148 builtin/fsck.c:149
 msgid "unknown"
 msgstr "không hiểu"
@@ -15059,31 +15103,31 @@ msgstr "%s: thiếu đối tượng"
 msgid "invalid parameter: expected sha1, got '%s'"
 msgstr "tham số không hợp lệ: cần sha1, nhưng lại nhận được “%s”"
 
-#: builtin/gc.c:36
+#: builtin/gc.c:39
 msgid "git gc [<options>]"
 msgstr "git gc [<các tùy chọn>]"
 
-#: builtin/gc.c:91
+#: builtin/gc.c:94
 #, c-format
 msgid "Failed to fstat %s: %s"
 msgstr "Gặp lỗi khi lấy thông tin thống kê về tập tin %s: %s"
 
-#: builtin/gc.c:127
+#: builtin/gc.c:130
 #, c-format
 msgid "failed to parse '%s' value '%s'"
 msgstr "gặp lỗi khi phân tích “%s” giá trị “%s”"
 
-#: builtin/gc.c:476 builtin/init-db.c:58
+#: builtin/gc.c:479 builtin/init-db.c:58
 #, c-format
 msgid "cannot stat '%s'"
 msgstr "không thể lấy thông tin thống kê về “%s”"
 
-#: builtin/gc.c:485 builtin/notes.c:240 builtin/tag.c:530
+#: builtin/gc.c:488 builtin/notes.c:240 builtin/tag.c:530
 #, c-format
 msgid "cannot read '%s'"
 msgstr "không thể đọc “%s”"
 
-#: builtin/gc.c:492
+#: builtin/gc.c:495
 #, c-format
 msgid ""
 "The last gc run reported the following. Please correct the root cause\n"
@@ -15098,54 +15142,54 @@ msgstr ""
 "\n"
 "%s"
 
-#: builtin/gc.c:540
+#: builtin/gc.c:543
 msgid "prune unreferenced objects"
 msgstr "xóa bỏ các đối tượng không được tham chiếu"
 
-#: builtin/gc.c:542
+#: builtin/gc.c:545
 msgid "be more thorough (increased runtime)"
 msgstr "cẩn thận hơn nữa (tăng thời gian chạy)"
 
-#: builtin/gc.c:543
+#: builtin/gc.c:546
 msgid "enable auto-gc mode"
 msgstr "bật chế độ auto-gc"
 
-#: builtin/gc.c:546
+#: builtin/gc.c:549
 msgid "force running gc even if there may be another gc running"
 msgstr "buộc gc chạy ngay cả khi có tiến trình gc khác đang chạy"
 
-#: builtin/gc.c:549
+#: builtin/gc.c:552
 msgid "repack all other packs except the largest pack"
 msgstr "đóng gói lại tất cả các gói khác ngoại trừ gói lớn nhất"
 
-#: builtin/gc.c:566
+#: builtin/gc.c:569
 #, c-format
 msgid "failed to parse gc.logexpiry value %s"
 msgstr "gặp lỗi khi phân tích giá trị gc.logexpiry %s"
 
-#: builtin/gc.c:577
+#: builtin/gc.c:580
 #, c-format
 msgid "failed to parse prune expiry value %s"
 msgstr "gặp lỗi khi phân tích giá trị prune %s"
 
-#: builtin/gc.c:597
+#: builtin/gc.c:600
 #, c-format
 msgid "Auto packing the repository in background for optimum performance.\n"
 msgstr ""
 "Tự động đóng gói kho chứa trên nền hệ thống để tối ưu hóa hiệu suất làm "
 "việc.\n"
 
-#: builtin/gc.c:599
+#: builtin/gc.c:602
 #, c-format
 msgid "Auto packing the repository for optimum performance.\n"
 msgstr "Tự động đóng gói kho chứa để tối ưu hóa hiệu suất làm việc.\n"
 
-#: builtin/gc.c:600
+#: builtin/gc.c:603
 #, c-format
 msgid "See \"git help gc\" for manual housekeeping.\n"
 msgstr "Xem \"git help gc\" để có hướng dẫn cụ thể về cách dọn dẹp kho git.\n"
 
-#: builtin/gc.c:640
+#: builtin/gc.c:643
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
@@ -15153,62 +15197,143 @@ msgstr ""
 "gc đang được thực hiện trên máy “%s” pid %<PRIuMAX> (dùng --force nếu không "
 "phải thế)"
 
-#: builtin/gc.c:695
+#: builtin/gc.c:698
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
 "Có quá nhiều đối tượng tự do không được dùng đến; hãy chạy lệnh “git prune” "
 "để xóa bỏ chúng đi."
 
-#: builtin/gc.c:705
-msgid "git maintenance run [--auto] [--[no-]quiet] [--task=<task>]"
-msgstr "git maintenance run [--auto] [--[no-]quiet] [--task=<nhiệm vụ>]"
+#: builtin/gc.c:708
+msgid ""
+"git maintenance run [--auto] [--[no-]quiet] [--task=<task>] [--schedule]"
+msgstr ""
+"git maintenance run [--auto] [--[no-]quiet] [--task=<nhiệm vụ>] [--schedule]"
+
+#: builtin/gc.c:738
+msgid "--no-schedule is not allowed"
+msgstr "--no-schedule không được phép"
+
+#: builtin/gc.c:743
+#, c-format
+msgid "unrecognized --schedule argument '%s'"
+msgstr "đối số --schedule không được thừa nhận %s"
 
-#: builtin/gc.c:812
+#: builtin/gc.c:862
 msgid "failed to write commit-graph"
 msgstr "gặp lỗi khi ghi đồ thị các lần chuyển giao"
 
-#: builtin/gc.c:905
+#: builtin/gc.c:901
+msgid "failed to fill remotes"
+msgstr "gặp lỗi khi điền đầy các máy chủ"
+
+#: builtin/gc.c:1024
+msgid "failed to start 'git pack-objects' process"
+msgstr "gặp lỗi khi lấy thông tin thống kê về tiến trình “git pack-objects”"
+
+#: builtin/gc.c:1041
+msgid "failed to finish 'git pack-objects' process"
+msgstr "gặp lỗi khi hoàn tất tiến trình “git pack-objects”"
+
+#: builtin/gc.c:1093
+msgid "failed to write multi-pack-index"
+msgstr "gặp lỗi khi ghi multi-pack-index"
+
+#: builtin/gc.c:1111
+msgid "'git multi-pack-index expire' failed"
+msgstr "gặp lỗi khi chạy “git multi-pack-index expire”"
+
+#: builtin/gc.c:1172
+msgid "'git multi-pack-index repack' failed"
+msgstr "gặp lỗi khi chạy “git multi-pack-index repack”"
+
+#: builtin/gc.c:1181
+msgid ""
+"skipping incremental-repack task because core.multiPackIndex is disabled"
+msgstr "bỏ qua tác vụ incremental-repack vì core.multiPackIndex bị vô hiệu hóa"
+
+#: builtin/gc.c:1279
 #, c-format
 msgid "lock file '%s' exists, skipping maintenance"
-msgstr "đã có khóa của tập tin '%s', bỏ qua bảo trì "
+msgstr "đã có khóa của tập tin “%s”, bỏ qua bảo trì"
 
-#: builtin/gc.c:932
+#: builtin/gc.c:1309
 #, c-format
 msgid "task '%s' failed"
 msgstr "gặp lỗi khi thực hiện nhiệm vụ “%s”"
 
-#: builtin/gc.c:979
+#: builtin/gc.c:1389
 #, c-format
 msgid "'%s' is not a valid task"
 msgstr "“%s” không phải một nhiệm vụ hợp lệ"
 
-#: builtin/gc.c:984
+#: builtin/gc.c:1394
 #, c-format
 msgid "task '%s' cannot be selected multiple times"
 msgstr "nhiệm vụ “%s” không được chọn nhiều lần"
 
-#: builtin/gc.c:999
+#: builtin/gc.c:1409
 msgid "run tasks based on the state of the repository"
 msgstr "chạy nhiệm vụ dựa trên trạng thái của kho chứa"
 
-#: builtin/gc.c:1001
+#: builtin/gc.c:1410
+msgid "frequency"
+msgstr "tần số"
+
+#: builtin/gc.c:1411
+msgid "run tasks based on frequency"
+msgstr "chạy nhiệm vụ dựa trên tần suất"
+
+#: builtin/gc.c:1414
 msgid "do not report progress or other information over stderr"
 msgstr "đừng báo cáo diễn tiến hay các thông tin khác ra đầu lỗi tiêu chuẩn"
 
-#: builtin/gc.c:1002
+#: builtin/gc.c:1415
 msgid "task"
 msgstr "tác vụ"
 
-#: builtin/gc.c:1003
+#: builtin/gc.c:1416
 msgid "run a specific task"
 msgstr "chạy một nhiệm vụ cụ thể"
 
-#: builtin/gc.c:1026
-msgid "git maintenance run [<options>]"
-msgstr "git maintenance run [<các tùy chọn>]"
+#: builtin/gc.c:1433
+msgid "use at most one of --auto and --schedule=<frequency>"
+msgstr "dùng nhiều nhất là một trong --auto và --schedule=<frequency>"
+
+#: builtin/gc.c:1467
+msgid "failed to run 'git config'"
+msgstr "gặp lỗi khi chạy “git config”"
+
+#: builtin/gc.c:1512
+msgid "another process is scheduling background maintenance"
+msgstr "một tiến trình khác được lập kế hoạch chạy nền để bảo trì"
+
+#: builtin/gc.c:1525
+msgid "failed to run 'crontab -l'; your system might not support 'cron'"
+msgstr ""
+"gặp lỗi khi chạy “crontab -l”; hệ thống của bạn có thể không hỗ trợ “cron”"
+
+#: builtin/gc.c:1544
+msgid "failed to run 'crontab'; your system might not support 'cron'"
+msgstr "gặp lỗi khi chạy “crontab”; hiển thị của bạn có lẽ không hỗ trợ “cron”"
+
+#: builtin/gc.c:1550
+msgid "failed to open stdin of 'crontab'"
+msgstr "gặp lỗi khi mở đầu vào tiêu chuẩn của “crontab”"
+
+#: builtin/gc.c:1592
+msgid "'crontab' died"
+msgstr "“crontab” đã chết"
 
-#: builtin/gc.c:1037
+#: builtin/gc.c:1605
+msgid "failed to add repo to global config"
+msgstr "gặp lỗi khi thêm cấu hình toàn cục"
+
+#: builtin/gc.c:1615
+msgid "git maintenance <subcommand> [<options>]"
+msgstr "git maintenance run <lệnh_con> [<các tùy chọn>]"
+
+#: builtin/gc.c:1634
 #, c-format
 msgid "invalid subcommand: %s"
 msgstr "lện con không hợp lệ: %s"
@@ -15247,243 +15372,243 @@ msgstr "không thể đọc cây (%s)"
 msgid "unable to grep from object of type %s"
 msgstr "không thể thực hiện lệnh grep (lọc tìm) từ đối tượng thuộc kiểu %s"
 
-#: builtin/grep.c:725
+#: builtin/grep.c:736
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "chuyển đến “%c” cần một giá trị bằng số"
 
-#: builtin/grep.c:824
+#: builtin/grep.c:835
 msgid "search in index instead of in the work tree"
 msgstr "tìm trong bảng mục lục thay vì trong cây làm việc"
 
-#: builtin/grep.c:826
+#: builtin/grep.c:837
 msgid "find in contents not managed by git"
 msgstr "tìm trong nội dung không được quản lý bởi git"
 
-#: builtin/grep.c:828
+#: builtin/grep.c:839
 msgid "search in both tracked and untracked files"
 msgstr "tìm kiếm các tập tin được và chưa được theo dõi dấu vết"
 
-#: builtin/grep.c:830
+#: builtin/grep.c:841
 msgid "ignore files specified via '.gitignore'"
 msgstr "các tập tin bị bỏ qua được chỉ định thông qua “.gitignore”"
 
-#: builtin/grep.c:832
+#: builtin/grep.c:843
 msgid "recursively search in each submodule"
 msgstr "tìm kiếm đệ quy trong từng mô-đun-con"
 
-#: builtin/grep.c:835
+#: builtin/grep.c:846
 msgid "show non-matching lines"
 msgstr "hiển thị những dòng không khớp với mẫu"
 
-#: builtin/grep.c:837
+#: builtin/grep.c:848
 msgid "case insensitive matching"
 msgstr "phân biệt HOA/thường"
 
-#: builtin/grep.c:839
+#: builtin/grep.c:850
 msgid "match patterns only at word boundaries"
 msgstr "chỉ khớp mẫu tại đường ranh giới từ"
 
-#: builtin/grep.c:841
+#: builtin/grep.c:852
 msgid "process binary files as text"
 msgstr "xử lý tập tin nhị phân như là dạng văn bản thường"
 
-#: builtin/grep.c:843
+#: builtin/grep.c:854
 msgid "don't match patterns in binary files"
 msgstr "không khớp mẫu trong các tập tin nhị phân"
 
-#: builtin/grep.c:846
+#: builtin/grep.c:857
 msgid "process binary files with textconv filters"
 msgstr "xử lý tập tin nhị phân với các bộ lọc “textconv”"
 
-#: builtin/grep.c:848
+#: builtin/grep.c:859
 msgid "search in subdirectories (default)"
 msgstr "tìm kiếm trong thư mục con (mặc định)"
 
-#: builtin/grep.c:850
+#: builtin/grep.c:861
 msgid "descend at most <depth> levels"
 msgstr "hạ xuống ít nhất là mức <sâu>"
 
-#: builtin/grep.c:854
+#: builtin/grep.c:865
 msgid "use extended POSIX regular expressions"
 msgstr "dùng biểu thức chính qui POSIX có mở rộng"
 
-#: builtin/grep.c:857
+#: builtin/grep.c:868
 msgid "use basic POSIX regular expressions (default)"
 msgstr "sử dụng biểu thức chính quy kiểu POSIX (mặc định)"
 
-#: builtin/grep.c:860
+#: builtin/grep.c:871
 msgid "interpret patterns as fixed strings"
 msgstr "diễn dịch các mẫu như là chuỗi cố định"
 
-#: builtin/grep.c:863
+#: builtin/grep.c:874
 msgid "use Perl-compatible regular expressions"
 msgstr "sử dụng biểu thức chính quy tương thích Perl"
 
-#: builtin/grep.c:866
+#: builtin/grep.c:877
 msgid "show line numbers"
 msgstr "hiển thị số của dòng"
 
-#: builtin/grep.c:867
+#: builtin/grep.c:878
 msgid "show column number of first match"
 msgstr "hiển thị số cột của khớp với mẫu đầu tiên"
 
-#: builtin/grep.c:868
+#: builtin/grep.c:879
 msgid "don't show filenames"
 msgstr "không hiển thị tên tập tin"
 
-#: builtin/grep.c:869
+#: builtin/grep.c:880
 msgid "show filenames"
 msgstr "hiển thị các tên tập tin"
 
-#: builtin/grep.c:871
+#: builtin/grep.c:882
 msgid "show filenames relative to top directory"
 msgstr "hiển thị tên tập tin tương đối với thư mục đỉnh (top)"
 
-#: builtin/grep.c:873
+#: builtin/grep.c:884
 msgid "show only filenames instead of matching lines"
 msgstr "chỉ hiển thị tên tập tin thay vì những dòng khớp với mẫu"
 
-#: builtin/grep.c:875
+#: builtin/grep.c:886
 msgid "synonym for --files-with-matches"
 msgstr "đồng nghĩa với --files-with-matches"
 
-#: builtin/grep.c:878
+#: builtin/grep.c:889
 msgid "show only the names of files without match"
 msgstr "chỉ hiển thị tên cho những tập tin không khớp với mẫu"
 
-#: builtin/grep.c:880
+#: builtin/grep.c:891
 msgid "print NUL after filenames"
 msgstr "thêm NUL vào sau tên tập tin"
 
-#: builtin/grep.c:883
+#: builtin/grep.c:894
 msgid "show only matching parts of a line"
 msgstr "chỉ hiển thị những phần khớp với mẫu của một dòng"
 
-#: builtin/grep.c:885
+#: builtin/grep.c:896
 msgid "show the number of matches instead of matching lines"
 msgstr "hiển thị số lượng khớp thay vì những dòng khớp với mẫu"
 
-#: builtin/grep.c:886
+#: builtin/grep.c:897
 msgid "highlight matches"
 msgstr "tô sáng phần khớp mẫu"
 
-#: builtin/grep.c:888
+#: builtin/grep.c:899
 msgid "print empty line between matches from different files"
 msgstr "hiển thị dòng trống giữa các lần khớp từ các tập tin khác biệt"
 
-#: builtin/grep.c:890
+#: builtin/grep.c:901
 msgid "show filename only once above matches from same file"
 msgstr ""
 "hiển thị tên tập tin một lần phía trên các lần khớp từ cùng một tập tin"
 
-#: builtin/grep.c:893
+#: builtin/grep.c:904
 msgid "show <n> context lines before and after matches"
 msgstr "hiển thị <n> dòng nội dung phía trước và sau các lần khớp"
 
-#: builtin/grep.c:896
+#: builtin/grep.c:907
 msgid "show <n> context lines before matches"
 msgstr "hiển thị <n> dòng nội dung trước khớp"
 
-#: builtin/grep.c:898
+#: builtin/grep.c:909
 msgid "show <n> context lines after matches"
 msgstr "hiển thị <n> dòng nội dung sau khớp"
 
-#: builtin/grep.c:900
+#: builtin/grep.c:911
 msgid "use <n> worker threads"
 msgstr "dùng <n> tuyến trình làm việc"
 
-#: builtin/grep.c:901
+#: builtin/grep.c:912
 msgid "shortcut for -C NUM"
 msgstr "dạng viết tắt của -C SỐ"
 
-#: builtin/grep.c:904
+#: builtin/grep.c:915
 msgid "show a line with the function name before matches"
 msgstr "hiển thị dòng vói tên hàm trước các lần khớp"
 
-#: builtin/grep.c:906
+#: builtin/grep.c:917
 msgid "show the surrounding function"
 msgstr "hiển thị hàm bao quanh"
 
-#: builtin/grep.c:909
+#: builtin/grep.c:920
 msgid "read patterns from file"
 msgstr "đọc mẫu từ tập-tin"
 
-#: builtin/grep.c:911
+#: builtin/grep.c:922
 msgid "match <pattern>"
 msgstr "match <mẫu>"
 
-#: builtin/grep.c:913
+#: builtin/grep.c:924
 msgid "combine patterns specified with -e"
 msgstr "tổ hợp mẫu được chỉ ra với tùy chọn -e"
 
-#: builtin/grep.c:925
+#: builtin/grep.c:936
 msgid "indicate hit with exit status without output"
 msgstr "đưa ra gợi ý với trạng thái thoát mà không có kết xuất"
 
-#: builtin/grep.c:927
+#: builtin/grep.c:938
 msgid "show only matches from files that match all patterns"
 msgstr "chỉ hiển thị những cái khớp từ tập tin mà nó khớp toàn bộ các mẫu"
 
-#: builtin/grep.c:929
+#: builtin/grep.c:940
 msgid "show parse tree for grep expression"
 msgstr "hiển thị cây phân tích cú pháp cho biểu thức “grep” (tìm kiếm)"
 
-#: builtin/grep.c:933
+#: builtin/grep.c:944
 msgid "pager"
 msgstr "dàn trang"
 
-#: builtin/grep.c:933
+#: builtin/grep.c:944
 msgid "show matching files in the pager"
 msgstr "hiển thị các tập tin khớp trong trang giấy"
 
-#: builtin/grep.c:937
+#: builtin/grep.c:948
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "cho phép gọi grep(1) (bị bỏ qua bởi lần dịch này)"
 
-#: builtin/grep.c:1004
+#: builtin/grep.c:1014
 msgid "no pattern given"
 msgstr "chưa chỉ ra mẫu"
 
-#: builtin/grep.c:1040
+#: builtin/grep.c:1050
 msgid "--no-index or --untracked cannot be used with revs"
 msgstr "--no-index hay --untracked không được sử dụng cùng với revs"
 
-#: builtin/grep.c:1048
+#: builtin/grep.c:1058
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr "không thể phân giải điểm xét duyệt: %s"
 
-#: builtin/grep.c:1078
+#: builtin/grep.c:1088
 msgid "--untracked not supported with --recurse-submodules"
 msgstr "tùy chọn --untracked không được hỗ trợ với --recurse-submodules"
 
-#: builtin/grep.c:1082
+#: builtin/grep.c:1092
 msgid "invalid option combination, ignoring --threads"
 msgstr "tổ hợp tùy chọn không hợp lệ, bỏ qua --threads"
 
-#: builtin/grep.c:1085 builtin/pack-objects.c:3655
+#: builtin/grep.c:1095 builtin/pack-objects.c:3655
 msgid "no threads support, ignoring --threads"
 msgstr "không hỗ trợ đa tuyến, bỏ qua --threads"
 
-#: builtin/grep.c:1088 builtin/index-pack.c:1573 builtin/pack-objects.c:2933
+#: builtin/grep.c:1098 builtin/index-pack.c:1573 builtin/pack-objects.c:2933
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "số tuyến chỉ ra không hợp lệ (%d)"
 
-#: builtin/grep.c:1122
+#: builtin/grep.c:1132
 msgid "--open-files-in-pager only works on the worktree"
 msgstr "--open-files-in-pager chỉ làm việc trên cây-làm-việc"
 
-#: builtin/grep.c:1148
+#: builtin/grep.c:1158
 msgid "--cached or --untracked cannot be used with --no-index"
 msgstr "--cached hay --untracked không được sử dụng với --no-index"
 
-#: builtin/grep.c:1154
+#: builtin/grep.c:1164
 msgid "--[no-]exclude-standard cannot be used for tracked contents"
 msgstr "--[no-]exclude-standard không thể sử dụng cho nội dung lưu dấu vết"
 
-#: builtin/grep.c:1162
+#: builtin/grep.c:1172
 msgid "both --cached and trees are given"
 msgstr "cả hai --cached và các cây phải được chỉ ra"
 
@@ -15674,7 +15799,7 @@ msgstr "gói quá lớn so với định nghĩa hiện tại của kiểu off_t"
 msgid "pack exceeds maximum allowed size"
 msgstr "gói đã vượt quá cỡ tối đa được phép"
 
-#: builtin/index-pack.c:342 builtin/repack.c:254
+#: builtin/index-pack.c:342 builtin/repack.c:286
 #, c-format
 msgid "unable to create '%s'"
 msgstr "không thể tạo “%s”"
@@ -15898,7 +16023,7 @@ msgstr "Không thể quay lại cwd"
 msgid "bad %s"
 msgstr "%s sai"
 
-#: builtin/index-pack.c:1806 builtin/init-db.c:391 builtin/init-db.c:623
+#: builtin/index-pack.c:1806 builtin/init-db.c:392 builtin/init-db.c:625
 #, c-format
 msgid "unknown hash algorithm '%s'"
 msgstr "không hiểu thuật toán băm dữ liệu “%s”"
@@ -15963,56 +16088,56 @@ msgstr "các mẫu không được tìm thấy trong %s"
 msgid "not copying templates from '%s': %s"
 msgstr "không sao chép các mẫu từ “%s”: %s"
 
-#: builtin/init-db.c:274
+#: builtin/init-db.c:275
 #, c-format
 msgid "invalid initial branch name: '%s'"
 msgstr "tên nhánh khởi tạo không hợp lệ: “%s”"
 
-#: builtin/init-db.c:366
+#: builtin/init-db.c:367
 #, c-format
 msgid "unable to handle file type %d"
 msgstr "không thể xử lý (handle) tập tin kiểu %d"
 
-#: builtin/init-db.c:369
+#: builtin/init-db.c:370
 #, c-format
 msgid "unable to move %s to %s"
 msgstr "không di chuyển được %s vào %s"
 
-#: builtin/init-db.c:385
+#: builtin/init-db.c:386
 msgid "attempt to reinitialize repository with different hash"
 msgstr "cố để khởi tạo lại một kho với kiểu băm dữ liệu khác"
 
-#: builtin/init-db.c:409 builtin/init-db.c:412
+#: builtin/init-db.c:410 builtin/init-db.c:413
 #, c-format
 msgid "%s already exists"
 msgstr "%s đã có từ trước rồi"
 
-#: builtin/init-db.c:443
+#: builtin/init-db.c:445
 #, c-format
 msgid "re-init: ignored --initial-branch=%s"
 msgstr "re-init: --initial-branch=%s bị bỏ qua"
 
-#: builtin/init-db.c:474
+#: builtin/init-db.c:476
 #, c-format
 msgid "Reinitialized existing shared Git repository in %s%s\n"
 msgstr "Đã khởi tạo lại kho Git chia sẻ sẵn có trong %s%s\n"
 
-#: builtin/init-db.c:475
+#: builtin/init-db.c:477
 #, c-format
 msgid "Reinitialized existing Git repository in %s%s\n"
 msgstr "Đã khởi tạo lại kho Git sẵn có trong %s%s\n"
 
-#: builtin/init-db.c:479
+#: builtin/init-db.c:481
 #, c-format
 msgid "Initialized empty shared Git repository in %s%s\n"
 msgstr "Đã khởi tạo lại kho Git chia sẻ trống rỗng sẵn có trong %s%s\n"
 
-#: builtin/init-db.c:480
+#: builtin/init-db.c:482
 #, c-format
 msgid "Initialized empty Git repository in %s%s\n"
 msgstr "Đã khởi tạo lại kho Git trống rỗng sẵn có trong %s%s\n"
 
-#: builtin/init-db.c:529
+#: builtin/init-db.c:531
 msgid ""
 "git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
 "shared[=<permissions>]] [<directory>]"
@@ -16020,41 +16145,41 @@ msgstr ""
 "git init [-q | --quiet] [--bare] [--template=<thư-mục-tạm>] [--shared[=<các-"
 "quyền>]] [thư-mục]"
 
-#: builtin/init-db.c:555
+#: builtin/init-db.c:557
 msgid "permissions"
 msgstr "các quyền"
 
-#: builtin/init-db.c:556
+#: builtin/init-db.c:558
 msgid "specify that the git repository is to be shared amongst several users"
 msgstr "chỉ ra cái mà kho git được chia sẻ giữa nhiều người dùng"
 
-#: builtin/init-db.c:562
+#: builtin/init-db.c:564
 msgid "override the name of the initial branch"
 msgstr "ghi đè lên tên của nhánh khởi tạo"
 
-#: builtin/init-db.c:563 builtin/verify-pack.c:74
+#: builtin/init-db.c:565 builtin/verify-pack.c:74
 msgid "hash"
 msgstr "băm"
 
-#: builtin/init-db.c:564 builtin/show-index.c:22 builtin/verify-pack.c:75
+#: builtin/init-db.c:566 builtin/show-index.c:22 builtin/verify-pack.c:75
 msgid "specify the hash algorithm to use"
 msgstr "chỉ định thuật toán băm dữ liệu muốn dùng"
 
-#: builtin/init-db.c:571
+#: builtin/init-db.c:573
 msgid "--separate-git-dir and --bare are mutually exclusive"
 msgstr "Các tùy chọn --separate-git-dir và --bare loại từ lẫn nhau"
 
-#: builtin/init-db.c:600 builtin/init-db.c:605
+#: builtin/init-db.c:602 builtin/init-db.c:607
 #, c-format
 msgid "cannot mkdir %s"
 msgstr "không thể mkdir (tạo thư mục): %s"
 
-#: builtin/init-db.c:609 builtin/init-db.c:664
+#: builtin/init-db.c:611 builtin/init-db.c:666
 #, c-format
 msgid "cannot chdir to %s"
 msgstr "không thể chdir (chuyển đổi thư mục) sang %s"
 
-#: builtin/init-db.c:636
+#: builtin/init-db.c:638
 #, c-format
 msgid ""
 "%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
@@ -16063,12 +16188,12 @@ msgstr ""
 "%s (hoặc --work-tree=<thư-mục>) không cho phép không chỉ định %s (hoặc --git-"
 "dir=<thư-mục>)"
 
-#: builtin/init-db.c:688
+#: builtin/init-db.c:690
 #, c-format
 msgid "Cannot access work tree '%s'"
 msgstr "Không thể truy cập cây (tree) làm việc “%s”"
 
-#: builtin/init-db.c:693
+#: builtin/init-db.c:695
 msgid "--separate-git-dir incompatible with bare repository"
 msgstr "--separate-git-dir xung khắc với kho thuần"
 
@@ -16136,126 +16261,130 @@ msgstr "--trailer cùng với --only-input không hợp lý"
 msgid "no input file given for in-place editing"
 msgstr "không đưa ra tập tin đầu vào để sửa tại-chỗ"
 
-#: builtin/log.c:56
+#: builtin/log.c:58
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<các tùy chọn>] [<vùng-xem-xét>] [[--] </đường/dẫn>…]"
 
-#: builtin/log.c:57
+#: builtin/log.c:59
 msgid "git show [<options>] <object>..."
 msgstr "git show [<các tùy chọn>] <đối-tượng>…"
 
-#: builtin/log.c:110
+#: builtin/log.c:112
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr "tùy chọn--decorate không hợp lệ: %s"
 
-#: builtin/log.c:177
+#: builtin/log.c:179
 msgid "show source"
 msgstr "hiển thị mã nguồn"
 
-#: builtin/log.c:178
+#: builtin/log.c:180
 msgid "Use mail map file"
 msgstr "Sử dụng tập tin ánh xạ thư"
 
-#: builtin/log.c:181
+#: builtin/log.c:183
 msgid "only decorate refs that match <pattern>"
 msgstr "chỉ tô sáng các tham chiếu khớp với <mẫu>"
 
-#: builtin/log.c:183
+#: builtin/log.c:185
 msgid "do not decorate refs that match <pattern>"
 msgstr "không tô sáng các tham chiếu khớp với <mẫu>"
 
-#: builtin/log.c:184
+#: builtin/log.c:186
 msgid "decorate options"
 msgstr "các tùy chọn trang trí"
 
-#: builtin/log.c:187
-msgid "Process line range n,m in file, counting from 1"
-msgstr "Xử lý chỉ dòng vùng n,m trong tập tin, tính từ 1"
+#: builtin/log.c:189
+msgid ""
+"Trace the evolution of line range <start>,<end> or function :<funcname> in "
+"<file>"
+msgstr ""
+"Theo dõi sự tiến hóa của phạm vi <start><end> dòng, hoặc chức năng:"
+"<funcname> trong <file>"
+
+#: builtin/log.c:212
+msgid "-L<range>:<file> cannot be used with pathspec"
+msgstr "-L<vùng>:<tập_tin> không thể được sử dụng với đặc tả đường dẫn"
 
-#: builtin/log.c:297
+#: builtin/log.c:302
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "Kết xuất cuối cùng: %d %s\n"
 
-#: builtin/log.c:555
+#: builtin/log.c:564
 #, c-format
 msgid "git show %s: bad file"
 msgstr "git show %s: sai tập tin"
 
-#: builtin/log.c:570 builtin/log.c:665
+#: builtin/log.c:579 builtin/log.c:674
 #, c-format
 msgid "could not read object %s"
 msgstr "không thể đọc đối tượng %s"
 
-#: builtin/log.c:690
+#: builtin/log.c:699
 #, c-format
 msgid "unknown type: %d"
 msgstr "không nhận ra kiểu: %d"
 
-#: builtin/log.c:839
+#: builtin/log.c:848
 #, c-format
 msgid "%s: invalid cover from description mode"
 msgstr "%s: bao bọc không hợp lệ từ chế độ mô tả"
 
-#: builtin/log.c:846
+#: builtin/log.c:855
 msgid "format.headers without value"
 msgstr "format.headers không có giá trị cụ thể"
 
-#: builtin/log.c:965
-msgid "name of output directory is too long"
-msgstr "tên của thư mục kết xuất quá dài"
-
-#: builtin/log.c:981
+#: builtin/log.c:984
 #, c-format
 msgid "cannot open patch file %s"
 msgstr "không thể mở tập tin miếng vá: %s"
 
-#: builtin/log.c:998
+#: builtin/log.c:1001
 msgid "need exactly one range"
 msgstr "cần chính xác một vùng"
 
-#: builtin/log.c:1008
+#: builtin/log.c:1011
 msgid "not a range"
 msgstr "không phải là một vùng"
 
-#: builtin/log.c:1172
+#: builtin/log.c:1175
 msgid "cover letter needs email format"
 msgstr "“cover letter” cần cho định dạng thư"
 
-#: builtin/log.c:1178
+#: builtin/log.c:1181
 msgid "failed to create cover-letter file"
 msgstr "gặp lỗi khi tạo các tập tin cover-letter"
 
-#: builtin/log.c:1259
+#: builtin/log.c:1262
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to điên rồ: %s"
 
-#: builtin/log.c:1286
+#: builtin/log.c:1289
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr "git format-patch [<các tùy chọn>] [<kể-từ> | <vùng-xem-xét>]"
 
-#: builtin/log.c:1344
+#: builtin/log.c:1347
 msgid "two output directories?"
 msgstr "hai thư mục kết xuất?"
 
-#: builtin/log.c:1495 builtin/log.c:2301 builtin/log.c:2303 builtin/log.c:2315
+#: builtin/log.c:1498 builtin/log.c:2318 builtin/log.c:2320 builtin/log.c:2332
 #, c-format
 msgid "unknown commit %s"
 msgstr "không hiểu lần chuyển giao %s"
 
-#: builtin/log.c:1506 builtin/replace.c:58 builtin/replace.c:207
+#: builtin/log.c:1509 builtin/replace.c:58 builtin/replace.c:207
 #: builtin/replace.c:210
 #, c-format
 msgid "failed to resolve '%s' as a valid ref"
 msgstr "gặp lỗi khi phân giải “%s” như là một tham chiếu hợp lệ"
 
-#: builtin/log.c:1515
+#: builtin/log.c:1518
 msgid "could not find exact merge base"
 msgstr "không tìm thấy nền hòa trộn chính xác"
 
-#: builtin/log.c:1525
+#: builtin/log.c:1528
 msgid ""
 "failed to get upstream, if you want to record base commit automatically,\n"
 "please use git branch --set-upstream-to to track a remote branch.\n"
@@ -16266,285 +16395,289 @@ msgstr ""
 "nhánh máy chủ. Hoặc là bạn có thể chỉ định lần chuyển giao nền bằng\n"
 "\"--base=<base-commit-id>\" một cách thủ công"
 
-#: builtin/log.c:1548
+#: builtin/log.c:1551
 msgid "failed to find exact merge base"
 msgstr "gặp lỗi khi tìm nền hòa trộn chính xác"
 
-#: builtin/log.c:1565
+#: builtin/log.c:1568
 msgid "base commit should be the ancestor of revision list"
 msgstr "lần chuyển giao nền không là tổ tiên của danh sách điểm xét duyệt"
 
-#: builtin/log.c:1575
+#: builtin/log.c:1578
 msgid "base commit shouldn't be in revision list"
 msgstr "lần chuyển giao nền không được trong danh sách điểm xét duyệt"
 
-#: builtin/log.c:1633
+#: builtin/log.c:1636
 msgid "cannot get patch id"
 msgstr "không thể lấy mã miếng vá"
 
-#: builtin/log.c:1690
+#: builtin/log.c:1693
 msgid "failed to infer range-diff origin of current series"
 msgstr ""
 "gặp lỗi khi suy luận range-diff (vùng khác biệt) gốc của sê-ri hiện tại"
 
-#: builtin/log.c:1692
+#: builtin/log.c:1695
 #, c-format
 msgid "using '%s' as range-diff origin of current series"
-msgstr "dùng '%s' như là gốc range-diff của sê-ri hiện tại"
+msgstr "dùng “%s” như là gốc range-diff của sê-ri hiện tại"
 
-#: builtin/log.c:1736
+#: builtin/log.c:1739
 msgid "use [PATCH n/m] even with a single patch"
 msgstr "dùng [PATCH n/m] ngay cả với miếng vá đơn"
 
-#: builtin/log.c:1739
+#: builtin/log.c:1742
 msgid "use [PATCH] even with multiple patches"
 msgstr "dùng [VÁ] ngay cả với các miếng vá phức tạp"
 
-#: builtin/log.c:1743
+#: builtin/log.c:1746
 msgid "print patches to standard out"
 msgstr "hiển thị miếng vá ra đầu ra chuẩn"
 
-#: builtin/log.c:1745
+#: builtin/log.c:1748
 msgid "generate a cover letter"
 msgstr "tạo bì thư"
 
-#: builtin/log.c:1747
+#: builtin/log.c:1750
 msgid "use simple number sequence for output file names"
 msgstr "sử dụng chỗi dãy số dạng đơn giản cho tên tập-tin xuất ra"
 
-#: builtin/log.c:1748
+#: builtin/log.c:1751
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1749
+#: builtin/log.c:1752
 msgid "use <sfx> instead of '.patch'"
 msgstr "sử dụng <sfx> thay cho “.patch”"
 
-#: builtin/log.c:1751
+#: builtin/log.c:1754
 msgid "start numbering patches at <n> instead of 1"
 msgstr "bắt đầu đánh số miếng vá từ <n> thay vì 1"
 
-#: builtin/log.c:1753
+#: builtin/log.c:1756
 msgid "mark the series as Nth re-roll"
 msgstr "đánh dấu chuỗi nối tiếp dạng thứ-N re-roll"
 
-#: builtin/log.c:1755
+#: builtin/log.c:1758
+msgid "max length of output filename"
+msgstr "chiều dài tên tập tin đầu ra tối đa"
+
+#: builtin/log.c:1760
 msgid "Use [RFC PATCH] instead of [PATCH]"
 msgstr "Dùng [RFC VÁ] thay cho [VÁ]"
 
-#: builtin/log.c:1758
+#: builtin/log.c:1763
 msgid "cover-from-description-mode"
 msgstr "cover-from-description-mode"
 
-#: builtin/log.c:1759
+#: builtin/log.c:1764
 msgid "generate parts of a cover letter based on a branch's description"
 msgstr "tạo ra các phần của một lá thư bao gồm dựa trên mô tả của nhánh"
 
-#: builtin/log.c:1761
+#: builtin/log.c:1766
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr "Dùng [<tiền-tố>] thay cho [VÁ]"
 
-#: builtin/log.c:1764
+#: builtin/log.c:1769
 msgid "store resulting files in <dir>"
 msgstr "lưu các tập tin kết quả trong <t.mục>"
 
-#: builtin/log.c:1767
+#: builtin/log.c:1772
 msgid "don't strip/add [PATCH]"
 msgstr "không strip/add [VÁ]"
 
-#: builtin/log.c:1770
+#: builtin/log.c:1775
 msgid "don't output binary diffs"
 msgstr "không kết xuất diff (những khác biệt) nhị phân"
 
-#: builtin/log.c:1772
+#: builtin/log.c:1777
 msgid "output all-zero hash in From header"
 msgstr "xuất mọi mã băm all-zero trong phần đầu From"
 
-#: builtin/log.c:1774
+#: builtin/log.c:1779
 msgid "don't include a patch matching a commit upstream"
 msgstr "không bao gồm miếng vá khớp với một lần chuyển giao thượng nguồn"
 
-#: builtin/log.c:1776
+#: builtin/log.c:1781
 msgid "show patch format instead of default (patch + stat)"
 msgstr "hiển thị định dạng miếng vá thay vì mặc định (miếng vá + thống kê)"
 
-#: builtin/log.c:1778
+#: builtin/log.c:1783
 msgid "Messaging"
 msgstr "Lời nhắn"
 
-#: builtin/log.c:1779
+#: builtin/log.c:1784
 msgid "header"
 msgstr "đầu đề thư"
 
-#: builtin/log.c:1780
+#: builtin/log.c:1785
 msgid "add email header"
 msgstr "thêm đầu đề thư"
 
-#: builtin/log.c:1781 builtin/log.c:1782
+#: builtin/log.c:1786 builtin/log.c:1787
 msgid "email"
 msgstr "thư điện tử"
 
-#: builtin/log.c:1781
+#: builtin/log.c:1786
 msgid "add To: header"
 msgstr "thêm To: đầu đề thư"
 
-#: builtin/log.c:1782
+#: builtin/log.c:1787
 msgid "add Cc: header"
 msgstr "thêm Cc: đầu đề thư"
 
-#: builtin/log.c:1783
+#: builtin/log.c:1788
 msgid "ident"
 msgstr "thụt lề"
 
-#: builtin/log.c:1784
+#: builtin/log.c:1789
 msgid "set From address to <ident> (or committer ident if absent)"
 msgstr ""
 "đặt “Địa chỉ gửi” thành <thụ lề> (hoặc thụt lề người commit nếu bỏ quên)"
 
-#: builtin/log.c:1786
+#: builtin/log.c:1791
 msgid "message-id"
 msgstr "message-id"
 
-#: builtin/log.c:1787
+#: builtin/log.c:1792
 msgid "make first mail a reply to <message-id>"
 msgstr "dùng thư đầu tiên để trả lời <message-id>"
 
-#: builtin/log.c:1788 builtin/log.c:1791
+#: builtin/log.c:1793 builtin/log.c:1796
 msgid "boundary"
 msgstr "ranh giới"
 
-#: builtin/log.c:1789
+#: builtin/log.c:1794
 msgid "attach the patch"
 msgstr "đính kèm miếng vá"
 
-#: builtin/log.c:1792
+#: builtin/log.c:1797
 msgid "inline the patch"
 msgstr "dùng miếng vá làm nội dung"
 
-#: builtin/log.c:1796
+#: builtin/log.c:1801
 msgid "enable message threading, styles: shallow, deep"
 msgstr "cho phép luồng lời nhắn, kiểu: “shallow”, “deep”"
 
-#: builtin/log.c:1798
+#: builtin/log.c:1803
 msgid "signature"
 msgstr "chữ ký"
 
-#: builtin/log.c:1799
+#: builtin/log.c:1804
 msgid "add a signature"
 msgstr "thêm chữ ký"
 
-#: builtin/log.c:1800
+#: builtin/log.c:1805
 msgid "base-commit"
 msgstr "lần_chuyển_giao_nền"
 
-#: builtin/log.c:1801
+#: builtin/log.c:1806
 msgid "add prerequisite tree info to the patch series"
 msgstr "add trước hết đòi hỏi thông tin cây tới sê-ri miếng vá"
 
-#: builtin/log.c:1804
+#: builtin/log.c:1809
 msgid "add a signature from a file"
 msgstr "thêm chữ ký từ một tập tin"
 
-#: builtin/log.c:1805
+#: builtin/log.c:1810
 msgid "don't print the patch filenames"
 msgstr "không hiển thị các tên tập tin của miếng vá"
 
-#: builtin/log.c:1807
+#: builtin/log.c:1812
 msgid "show progress while generating patches"
 msgstr "hiển thị bộ đo tiến triển trong khi tạo các miếng vá"
 
-#: builtin/log.c:1809
+#: builtin/log.c:1814
 msgid "show changes against <rev> in cover letter or single patch"
 msgstr ""
 "hiển thị các thay đổi dựa trên <rev> trong các chữ bao bọc hoặc miếng vá đơn"
 
-#: builtin/log.c:1812
+#: builtin/log.c:1817
 msgid "show changes against <refspec> in cover letter or single patch"
 msgstr ""
 "hiển thị các thay đổi dựa trên <refspec> trong các chữ bao bọc hoặc miếng vá "
 "đơn"
 
-#: builtin/log.c:1814
+#: builtin/log.c:1819
 msgid "percentage by which creation is weighted"
 msgstr "tỷ lệ phần trăm theo cái tạo là weighted"
 
-#: builtin/log.c:1896
+#: builtin/log.c:1905
 #, c-format
 msgid "invalid ident line: %s"
 msgstr "dòng định danh không hợp lệ: %s"
 
-#: builtin/log.c:1911
+#: builtin/log.c:1920
 msgid "-n and -k are mutually exclusive"
 msgstr "-n và -k loại trừ lẫn nhau"
 
-#: builtin/log.c:1913
+#: builtin/log.c:1922
 msgid "--subject-prefix/--rfc and -k are mutually exclusive"
 msgstr "--subject-prefix/--rfc và -k xung khắc nhau"
 
-#: builtin/log.c:1921
+#: builtin/log.c:1930
 msgid "--name-only does not make sense"
 msgstr "--name-only không hợp lý"
 
-#: builtin/log.c:1923
+#: builtin/log.c:1932
 msgid "--name-status does not make sense"
 msgstr "--name-status không hợp lý"
 
-#: builtin/log.c:1925
+#: builtin/log.c:1934
 msgid "--check does not make sense"
 msgstr "--check không hợp lý"
 
-#: builtin/log.c:1958
-msgid "standard output, or directory, which one?"
-msgstr "đầu ra chuẩn, hay thư mục, chọn cái nào?"
+#: builtin/log.c:1956
+msgid "--stdout, --output, and --output-directory are mutually exclusive"
+msgstr "Các tùy chọn--stdout, --output, và --output-directory loại từ lẫn nhau"
 
-#: builtin/log.c:2062
+#: builtin/log.c:2079
 msgid "--interdiff requires --cover-letter or single patch"
 msgstr "--interdiff cần --cover-letter hoặc vá đơn"
 
-#: builtin/log.c:2066
+#: builtin/log.c:2083
 msgid "Interdiff:"
 msgstr "Interdiff:"
 
-#: builtin/log.c:2067
+#: builtin/log.c:2084
 #, c-format
 msgid "Interdiff against v%d:"
 msgstr "Interdiff dựa trên v%d:"
 
-#: builtin/log.c:2073
+#: builtin/log.c:2090
 msgid "--creation-factor requires --range-diff"
 msgstr "--creation-factor yêu cầu --range-diff"
 
-#: builtin/log.c:2077
+#: builtin/log.c:2094
 msgid "--range-diff requires --cover-letter or single patch"
 msgstr "--range-diff yêu cầu --cover-letter hoặc miếng vá đơn"
 
-#: builtin/log.c:2085
+#: builtin/log.c:2102
 msgid "Range-diff:"
 msgstr "Range-diff:"
 
-#: builtin/log.c:2086
+#: builtin/log.c:2103
 #, c-format
 msgid "Range-diff against v%d:"
 msgstr "Range-diff dựa trên v%d:"
 
-#: builtin/log.c:2097
+#: builtin/log.c:2114
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr "không thể đọc tập tin chữ ký “%s”"
 
-#: builtin/log.c:2133
+#: builtin/log.c:2150
 msgid "Generating patches"
 msgstr "Đang tạo các miếng vá"
 
-#: builtin/log.c:2177
+#: builtin/log.c:2194
 msgid "failed to create output files"
 msgstr "gặp lỗi khi tạo các tập tin kết xuất"
 
-#: builtin/log.c:2236
+#: builtin/log.c:2253
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<thượng-nguồn> [<đầu> [<giới-hạn>]]]"
 
-#: builtin/log.c:2290
+#: builtin/log.c:2307
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -16673,7 +16806,7 @@ msgstr ""
 msgid "do not print remote URL"
 msgstr "không hiển thị URL máy chủ"
 
-#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:1392
+#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:1398
 msgid "exec"
 msgstr "thực thi"
 
@@ -16856,193 +16989,193 @@ msgstr "không thể phân giải tham chiếu %s"
 msgid "Merging %s with %s\n"
 msgstr "Đang hòa trộn %s với %s\n"
 
-#: builtin/merge.c:56
+#: builtin/merge.c:57
 msgid "git merge [<options>] [<commit>...]"
 msgstr "git merge [<các tùy chọn>] [<commit>…]"
 
-#: builtin/merge.c:57
+#: builtin/merge.c:58
 msgid "git merge --abort"
 msgstr "git merge --abort"
 
-#: builtin/merge.c:58
+#: builtin/merge.c:59
 msgid "git merge --continue"
 msgstr "git merge --continue"
 
-#: builtin/merge.c:120
+#: builtin/merge.c:122
 msgid "switch `m' requires a value"
 msgstr "switch “m” yêu cầu một giá trị"
 
-#: builtin/merge.c:143
+#: builtin/merge.c:145
 #, c-format
 msgid "option `%s' requires a value"
 msgstr "tùy chọn “%s” yêu cầu một giá trị"
 
-#: builtin/merge.c:189
+#: builtin/merge.c:198
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr "Không tìm thấy chiến lược hòa trộn “%s”.\n"
 
-#: builtin/merge.c:190
+#: builtin/merge.c:199
 #, c-format
 msgid "Available strategies are:"
 msgstr "Các chiến lược sẵn sàng là:"
 
-#: builtin/merge.c:195
+#: builtin/merge.c:204
 #, c-format
 msgid "Available custom strategies are:"
 msgstr "Các chiến lược tùy chỉnh sẵn sàng là:"
 
-#: builtin/merge.c:246 builtin/pull.c:133
+#: builtin/merge.c:255 builtin/pull.c:133
 msgid "do not show a diffstat at the end of the merge"
 msgstr "không hiển thị thống kê khác biệt tại cuối của lần hòa trộn"
 
-#: builtin/merge.c:249 builtin/pull.c:136
+#: builtin/merge.c:258 builtin/pull.c:136
 msgid "show a diffstat at the end of the merge"
 msgstr "hiển thị thống kê khác biệt tại cuối của hòa trộn"
 
-#: builtin/merge.c:250 builtin/pull.c:139
+#: builtin/merge.c:259 builtin/pull.c:139
 msgid "(synonym to --stat)"
 msgstr "(đồng nghĩa với --stat)"
 
-#: builtin/merge.c:252 builtin/pull.c:142
+#: builtin/merge.c:261 builtin/pull.c:142
 msgid "add (at most <n>) entries from shortlog to merge commit message"
 msgstr "thêm (ít nhất <n>) mục từ shortlog cho ghi chú chuyển giao hòa trộn"
 
-#: builtin/merge.c:255 builtin/pull.c:148
+#: builtin/merge.c:264 builtin/pull.c:148
 msgid "create a single commit instead of doing a merge"
 msgstr "tạo một lần chuyển giao đưon thay vì thực hiện việc hòa trộn"
 
-#: builtin/merge.c:257 builtin/pull.c:151
+#: builtin/merge.c:266 builtin/pull.c:151
 msgid "perform a commit if the merge succeeds (default)"
 msgstr "thực hiện chuyển giao nếu hòa trộn thành công (mặc định)"
 
-#: builtin/merge.c:259 builtin/pull.c:154
+#: builtin/merge.c:268 builtin/pull.c:154
 msgid "edit message before committing"
 msgstr "sửa chú thích trước khi chuyển giao"
 
-#: builtin/merge.c:261
+#: builtin/merge.c:270
 msgid "allow fast-forward (default)"
 msgstr "cho phép chuyển-tiếp-nhanh (mặc định)"
 
-#: builtin/merge.c:263 builtin/pull.c:161
+#: builtin/merge.c:272 builtin/pull.c:161
 msgid "abort if fast-forward is not possible"
 msgstr "bỏ qua nếu chuyển-tiếp-nhanh không thể được"
 
-#: builtin/merge.c:267 builtin/pull.c:164
+#: builtin/merge.c:276 builtin/pull.c:164
 msgid "verify that the named commit has a valid GPG signature"
 msgstr "thẩm tra xem lần chuyển giao có tên đó có chữ ký GPG hợp lệ hay không"
 
-#: builtin/merge.c:268 builtin/notes.c:787 builtin/pull.c:168
-#: builtin/rebase.c:533 builtin/rebase.c:1406 builtin/revert.c:114
+#: builtin/merge.c:277 builtin/notes.c:787 builtin/pull.c:168
+#: builtin/rebase.c:539 builtin/rebase.c:1412 builtin/revert.c:114
 msgid "strategy"
 msgstr "chiến lược"
 
-#: builtin/merge.c:269 builtin/pull.c:169
+#: builtin/merge.c:278 builtin/pull.c:169
 msgid "merge strategy to use"
 msgstr "chiến lược hòa trộn sẽ dùng"
 
-#: builtin/merge.c:270 builtin/pull.c:172
+#: builtin/merge.c:279 builtin/pull.c:172
 msgid "option=value"
 msgstr "tùy_chọn=giá_trị"
 
-#: builtin/merge.c:271 builtin/pull.c:173
+#: builtin/merge.c:280 builtin/pull.c:173
 msgid "option for selected merge strategy"
 msgstr "tùy chọn cho chiến lược hòa trộn đã chọn"
 
-#: builtin/merge.c:273
+#: builtin/merge.c:282
 msgid "merge commit message (for a non-fast-forward merge)"
 msgstr ""
 "hòa trộn ghi chú của lần chuyển giao (dành cho hòa trộn không-chuyển-tiếp-"
 "nhanh)"
 
-#: builtin/merge.c:280
+#: builtin/merge.c:289
 msgid "abort the current in-progress merge"
 msgstr "bãi bỏ quá trình hòa trộn hiện tại đang thực hiện"
 
-#: builtin/merge.c:282
+#: builtin/merge.c:291
 msgid "--abort but leave index and working tree alone"
 msgstr "--abort nhưng để lại bảng mục lục và cây làm việc"
 
-#: builtin/merge.c:284
+#: builtin/merge.c:293
 msgid "continue the current in-progress merge"
 msgstr "tiếp tục quá trình hòa trộn hiện tại đang thực hiện"
 
-#: builtin/merge.c:286 builtin/pull.c:180
+#: builtin/merge.c:295 builtin/pull.c:180
 msgid "allow merging unrelated histories"
 msgstr "cho phép hòa trộn lịch sử không liên quan"
 
-#: builtin/merge.c:293
+#: builtin/merge.c:302
 msgid "bypass pre-merge-commit and commit-msg hooks"
 msgstr "vòng qua móc (hook) pre-merge-commit và commit-msg"
 
-#: builtin/merge.c:310
+#: builtin/merge.c:319
 msgid "could not run stash."
 msgstr "không thể chạy stash."
 
-#: builtin/merge.c:315
+#: builtin/merge.c:324
 msgid "stash failed"
 msgstr "lệnh tạm cất gặp lỗi"
 
-#: builtin/merge.c:320
+#: builtin/merge.c:329
 #, c-format
 msgid "not a valid object: %s"
 msgstr "không phải là một đối tượng hợp lệ: %s"
 
-#: builtin/merge.c:342 builtin/merge.c:359
+#: builtin/merge.c:351 builtin/merge.c:368
 msgid "read-tree failed"
 msgstr "read-tree gặp lỗi"
 
-#: builtin/merge.c:389
+#: builtin/merge.c:398
 msgid " (nothing to squash)"
 msgstr " (không có gì để squash)"
 
-#: builtin/merge.c:400
+#: builtin/merge.c:409
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr "Squash commit -- không cập nhật HEAD\n"
 
-#: builtin/merge.c:450
+#: builtin/merge.c:459
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr "Không có lời chú thích hòa trộn -- nên không cập nhật HEAD\n"
 
-#: builtin/merge.c:501
+#: builtin/merge.c:510
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr "“%s” không chỉ đến một lần chuyển giao nào cả"
 
-#: builtin/merge.c:588
+#: builtin/merge.c:597
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "Chuỗi branch.%s.mergeoptions sai: %s"
 
-#: builtin/merge.c:713
+#: builtin/merge.c:723
 msgid "Not handling anything other than two heads merge."
 msgstr "Không cầm nắm gì ngoài hai head hòa trộn."
 
-#: builtin/merge.c:726
+#: builtin/merge.c:736
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "Không hiểu tùy chọn cho merge-recursive: -X%s"
 
-#: builtin/merge.c:741
+#: builtin/merge.c:755 t/helper/test-fast-rebase.c:209
 #, c-format
 msgid "unable to write %s"
 msgstr "không thể ghi %s"
 
-#: builtin/merge.c:793
+#: builtin/merge.c:807
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "Không thể đọc từ “%s”"
 
-#: builtin/merge.c:802
+#: builtin/merge.c:816
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr ""
 "Vẫn chưa hòa trộn các lần chuyển giao; sử dụng lệnh “git commit” để hoàn tất "
 "việc hòa trộn.\n"
 
-#: builtin/merge.c:808
+#: builtin/merge.c:822
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
 "especially if it merges an updated upstream into a topic branch.\n"
@@ -17054,11 +17187,11 @@ msgstr ""
 "topic.\n"
 "\n"
 
-#: builtin/merge.c:813
+#: builtin/merge.c:827
 msgid "An empty message aborts the commit.\n"
 msgstr "Nếu phần chú thích rỗng sẽ hủy bỏ lần chuyển giao.\n"
 
-#: builtin/merge.c:816
+#: builtin/merge.c:830
 #, c-format
 msgid ""
 "Lines starting with '%c' will be ignored, and an empty message aborts\n"
@@ -17067,75 +17200,75 @@ msgstr ""
 "Những dòng được bắt đầu bằng “%c” sẽ được bỏ qua, và nếu phần chú\n"
 "thích rỗng sẽ hủy bỏ lần chuyển giao.\n"
 
-#: builtin/merge.c:869
+#: builtin/merge.c:883
 msgid "Empty commit message."
 msgstr "Chú thích của lần commit (chuyển giao) bị trống rỗng."
 
-#: builtin/merge.c:884
+#: builtin/merge.c:898
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Tuyệt vời.\n"
 
-#: builtin/merge.c:945
+#: builtin/merge.c:959
 #, c-format
 msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 msgstr ""
 "Việc tự động hòa trộn gặp lỗi; hãy sửa các xung đột sau đó chuyển giao kết "
 "quả.\n"
 
-#: builtin/merge.c:984
+#: builtin/merge.c:998
 msgid "No current branch."
 msgstr "Không phải nhánh hiện hành."
 
-#: builtin/merge.c:986
+#: builtin/merge.c:1000
 msgid "No remote for the current branch."
 msgstr "Không có máy chủ cho nhánh hiện hành."
 
-#: builtin/merge.c:988
+#: builtin/merge.c:1002
 msgid "No default upstream defined for the current branch."
 msgstr "Không có thượng nguồn mặc định được định nghĩa cho nhánh hiện hành."
 
-#: builtin/merge.c:993
+#: builtin/merge.c:1007
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr "Không nhánh mạng theo dõi cho %s từ %s"
 
-#: builtin/merge.c:1050
+#: builtin/merge.c:1064
 #, c-format
 msgid "Bad value '%s' in environment '%s'"
 msgstr "Giá trị sai “%s” trong biến môi trường “%s”"
 
-#: builtin/merge.c:1153
+#: builtin/merge.c:1167
 #, c-format
 msgid "not something we can merge in %s: %s"
 msgstr "không phải là một thứ gì đó mà chúng tôi có thể hòa trộn trong %s: %s"
 
-#: builtin/merge.c:1187
+#: builtin/merge.c:1201
 msgid "not something we can merge"
 msgstr "không phải là thứ gì đó mà chúng tôi có thể hòa trộn"
 
-#: builtin/merge.c:1291
+#: builtin/merge.c:1311
 msgid "--abort expects no arguments"
 msgstr "--abort không nhận các đối số"
 
-#: builtin/merge.c:1295
+#: builtin/merge.c:1315
 msgid "There is no merge to abort (MERGE_HEAD missing)."
 msgstr ""
 "Ở đây không có lần hòa trộn nào được hủy bỏ giữa chừng cả (thiếu MERGE_HEAD)."
 
-#: builtin/merge.c:1313
+#: builtin/merge.c:1333
 msgid "--quit expects no arguments"
 msgstr "--quit không nhận các đối số"
 
-#: builtin/merge.c:1326
+#: builtin/merge.c:1346
 msgid "--continue expects no arguments"
 msgstr "--continue không nhận đối số"
 
-#: builtin/merge.c:1330
+#: builtin/merge.c:1350
 msgid "There is no merge in progress (MERGE_HEAD missing)."
 msgstr "Ở đây không có lần hòa trộn nào đang được xử lý cả (thiếu MERGE_HEAD)."
 
-#: builtin/merge.c:1346
+#: builtin/merge.c:1366
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -17143,7 +17276,7 @@ msgstr ""
 "Bạn chưa kết thúc việc hòa trộn (MERGE_HEAD vẫn tồn tại).\n"
 "Hãy chuyển giao các thay đổi trước khi bạn có thể hòa trộn."
 
-#: builtin/merge.c:1353
+#: builtin/merge.c:1373
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -17151,98 +17284,98 @@ msgstr ""
 "Bạn chưa kết thúc việc cherry-pick (CHERRY_PICK_HEAD vẫn tồn tại).\n"
 "Hãy chuyển giao các thay đổi trước khi bạn có thể hòa trộn."
 
-#: builtin/merge.c:1356
+#: builtin/merge.c:1376
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
 msgstr "Bạn chưa kết thúc việc cherry-pick (CHERRY_PICK_HEAD vẫn tồn tại)."
 
-#: builtin/merge.c:1370
+#: builtin/merge.c:1390
 msgid "You cannot combine --squash with --no-ff."
 msgstr "Bạn không thể kết hợp --squash với --no-ff."
 
-#: builtin/merge.c:1372
+#: builtin/merge.c:1392
 msgid "You cannot combine --squash with --commit."
 msgstr "Bạn không thể kết hợp --squash với --commit."
 
-#: builtin/merge.c:1388
+#: builtin/merge.c:1408
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr "Không chỉ ra lần chuyển giao và merge.defaultToUpstream chưa được đặt."
 
-#: builtin/merge.c:1405
+#: builtin/merge.c:1425
 msgid "Squash commit into empty head not supported yet"
 msgstr "Squash commit vào một head trống rỗng vẫn chưa được hỗ trợ"
 
-#: builtin/merge.c:1407
+#: builtin/merge.c:1427
 msgid "Non-fast-forward commit does not make sense into an empty head"
 msgstr ""
 "Chuyển giao không-chuyển-tiếp-nhanh không hợp lý ở trong một head trống rỗng"
 
-#: builtin/merge.c:1412
+#: builtin/merge.c:1432
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - không phải là thứ gì đó mà chúng tôi có thể hòa trộn"
 
-#: builtin/merge.c:1414
+#: builtin/merge.c:1434
 msgid "Can merge only exactly one commit into empty head"
 msgstr ""
 "Không thể hòa trộn một cách đúng đắn một lần chuyển giao vào một head rỗng"
 
-#: builtin/merge.c:1495
+#: builtin/merge.c:1515
 msgid "refusing to merge unrelated histories"
 msgstr "từ chối hòa trộn lịch sử không liên quan"
 
-#: builtin/merge.c:1504
+#: builtin/merge.c:1524
 msgid "Already up to date."
 msgstr "Đã cập nhật rồi."
 
-#: builtin/merge.c:1514
+#: builtin/merge.c:1534
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "Đang cập nhật %s..%s\n"
 
-#: builtin/merge.c:1560
+#: builtin/merge.c:1580
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "Đang thử hòa trộn kiểu “trivial in-index”…\n"
 
-#: builtin/merge.c:1567
+#: builtin/merge.c:1587
 #, c-format
 msgid "Nope.\n"
 msgstr "Không.\n"
 
-#: builtin/merge.c:1592
+#: builtin/merge.c:1612
 msgid "Already up to date. Yeeah!"
 msgstr "Đã cập nhật rồi. Yeeah!"
 
-#: builtin/merge.c:1598
+#: builtin/merge.c:1618
 msgid "Not possible to fast-forward, aborting."
 msgstr "Thực hiện lệnh chuyển-tiếp-nhanh là không thể được, đang bỏ qua."
 
-#: builtin/merge.c:1626 builtin/merge.c:1691
+#: builtin/merge.c:1646 builtin/merge.c:1711
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "Đang tua lại cây thành thời xa xưa…\n"
 
-#: builtin/merge.c:1630
+#: builtin/merge.c:1650
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "Đang thử chiến lược hòa trộn %s…\n"
 
-#: builtin/merge.c:1682
+#: builtin/merge.c:1702
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr "Không có chiến lược hòa trộn nào được nắm giữ (handle) sự hòa trộn.\n"
 
-#: builtin/merge.c:1684
+#: builtin/merge.c:1704
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "Hòa trộn với chiến lược %s gặp lỗi.\n"
 
-#: builtin/merge.c:1693
+#: builtin/merge.c:1713
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
 msgstr "Sử dụng %s để chuẩn bị giải quyết bằng tay.\n"
 
-#: builtin/merge.c:1707
+#: builtin/merge.c:1727
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -17291,7 +17424,7 @@ msgstr "có quá nhiều đối số"
 
 #: builtin/multi-pack-index.c:60
 msgid "--batch-size option is only for 'repack' subcommand"
-msgstr "tùy chọn --batch-size chỉ cho lệnh con 'repack'"
+msgstr "tùy chọn --batch-size chỉ cho lệnh con “repack”"
 
 #: builtin/multi-pack-index.c:69
 #, c-format
@@ -17390,7 +17523,7 @@ msgstr "%s, nguồn=%s, đích=%s"
 msgid "Renaming %s to %s\n"
 msgstr "Đổi tên %s thành %s\n"
 
-#: builtin/mv.c:280 builtin/remote.c:782 builtin/repack.c:518
+#: builtin/mv.c:280 builtin/remote.c:785 builtin/repack.c:484
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "gặp lỗi khi đổi tên “%s”"
@@ -17850,7 +17983,7 @@ msgstr "notes-ref"
 msgid "use notes from <notes-ref>"
 msgstr "dùng “notes” từ <notes-ref>"
 
-#: builtin/notes.c:1034 builtin/stash.c:1605
+#: builtin/notes.c:1034 builtin/stash.c:1604
 #, c-format
 msgid "unknown subcommand: %s"
 msgstr "không hiểu câu lệnh con: %s"
@@ -17971,8 +18104,8 @@ msgid ""
 "value of uploadpack.blobpackfileuri must be of the form '<object-hash> <pack-"
 "hash> <uri>' (got '%s')"
 msgstr ""
-"giá trị của uploadpack.blobpackfileuri phải có dạng '<object-hash> <pack-"
-"hash> <uri>' (nhận '%s')"
+"giá trị của uploadpack.blobpackfileuri phải có dạng <object-hash> <pack-"
+"hash> <uri>” (nhận “%s”)"
 
 #: builtin/pack-objects.c:2964
 #, c-format
@@ -17980,7 +18113,7 @@ msgid ""
 "object already configured in another uploadpack.blobpackfileuri (got '%s')"
 msgstr ""
 "đối tượng đã được cấu hình trong một uploadpack.blobpackfileuri khác (đã "
-"nhận '%s')"
+"nhận “%s”)"
 
 #: builtin/pack-objects.c:2993
 #, c-format
@@ -18295,7 +18428,7 @@ msgstr "Các tùy chọn liên quan đến hòa trộn"
 msgid "incorporate changes by rebasing rather than merging"
 msgstr "các thay đổi hợp nhất bằng cải tổ thay vì hòa trộn"
 
-#: builtin/pull.c:158 builtin/rebase.c:484 builtin/revert.c:126
+#: builtin/pull.c:158 builtin/rebase.c:490 builtin/revert.c:126
 msgid "allow fast-forward"
 msgstr "cho phép chuyển-tiếp-nhanh"
 
@@ -18389,15 +18522,15 @@ msgstr ""
 "theo mặc định cho nhánh hiện tại của bạn, bạn phải chỉ định\n"
 "một nhánh trên dòng lệnh."
 
-#: builtin/pull.c:469 builtin/rebase.c:1240 git-parse-remote.sh:73
+#: builtin/pull.c:469 builtin/rebase.c:1246
 msgid "You are not currently on a branch."
 msgstr "Hiện tại bạn chẳng ở nhánh nào cả."
 
-#: builtin/pull.c:471 builtin/pull.c:486 git-parse-remote.sh:79
+#: builtin/pull.c:471 builtin/pull.c:486
 msgid "Please specify which branch you want to rebase against."
 msgstr "Vui lòng chỉ định nhánh nào bạn muốn cải tổ lại."
 
-#: builtin/pull.c:473 builtin/pull.c:488 git-parse-remote.sh:82
+#: builtin/pull.c:473 builtin/pull.c:488
 msgid "Please specify which branch you want to merge with."
 msgstr "Vui lòng chỉ định nhánh nào bạn muốn hòa trộn vào."
 
@@ -18406,20 +18539,19 @@ msgid "See git-pull(1) for details."
 msgstr "Xem git-pull(1) để biết thêm chi tiết."
 
 #: builtin/pull.c:476 builtin/pull.c:482 builtin/pull.c:491
-#: builtin/rebase.c:1246 git-parse-remote.sh:64
+#: builtin/rebase.c:1252
 msgid "<remote>"
 msgstr "<máy chủ>"
 
 #: builtin/pull.c:476 builtin/pull.c:491 builtin/pull.c:496
-#: git-parse-remote.sh:65
 msgid "<branch>"
 msgstr "<nhánh>"
 
-#: builtin/pull.c:484 builtin/rebase.c:1238 git-parse-remote.sh:75
+#: builtin/pull.c:484 builtin/rebase.c:1244
 msgid "There is no tracking information for the current branch."
 msgstr "Ở đây không có thông tin theo dõi cho nhánh hiện hành."
 
-#: builtin/pull.c:493 git-parse-remote.sh:95
+#: builtin/pull.c:493
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:"
 msgstr ""
@@ -18439,25 +18571,25 @@ msgstr ""
 msgid "unable to access commit %s"
 msgstr "không thể truy cập lần chuyển giao “%s”"
 
-#: builtin/pull.c:894
+#: builtin/pull.c:915
 msgid "ignoring --verify-signatures for rebase"
 msgstr "bỏ qua --verify-signatures khi rebase"
 
-#: builtin/pull.c:954
+#: builtin/pull.c:972
 msgid "Updating an unborn branch with changes added to the index."
 msgstr ""
 "Đang cập nhật một nhánh chưa được sinh ra với các thay đổi được thêm vào "
 "bảng mục lục."
 
-#: builtin/pull.c:958
+#: builtin/pull.c:976
 msgid "pull with rebase"
 msgstr "pull với rebase"
 
-#: builtin/pull.c:959
+#: builtin/pull.c:977
 msgid "please commit or stash them."
 msgstr "xin hãy chuyển giao hoặc tạm cất (stash) chúng."
 
-#: builtin/pull.c:984
+#: builtin/pull.c:1002
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -18468,7 +18600,7 @@ msgstr ""
 "đang chuyển-tiếp-nhanh cây làm việc của bạn từ\n"
 "lần chuyển giaot %s."
 
-#: builtin/pull.c:990
+#: builtin/pull.c:1008
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -18486,15 +18618,15 @@ msgstr ""
 "$ git reset --hard\n"
 "để khôi phục lại."
 
-#: builtin/pull.c:1005
+#: builtin/pull.c:1023
 msgid "Cannot merge multiple branches into empty head."
 msgstr "Không thể hòa trộn nhiều nhánh vào trong một head trống rỗng."
 
-#: builtin/pull.c:1009
+#: builtin/pull.c:1027
 msgid "Cannot rebase onto multiple branches."
 msgstr "Không thể thực hiện lệnh rebase (cải tổ) trên nhiều nhánh."
 
-#: builtin/pull.c:1017
+#: builtin/pull.c:1041
 msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
 "không thể cải tổ với các thay đổi mô-đun-con được ghi lại một cách cục bộ"
@@ -18656,99 +18788,115 @@ msgstr ""
 "đối tượng\n"
 "không phải chuyển giao, mà không sử dụng tùy chọn “--force”.\n"
 
-#: builtin/push.c:351
+#: builtin/push.c:294
+msgid ""
+"Updates were rejected because the tip of the remote-tracking\n"
+"branch has been updated since the last checkout. You may want\n"
+"to integrate those changes locally (e.g., 'git pull ...')\n"
+"before forcing an update.\n"
+msgstr ""
+"Việc cập nhật bị từ chối bởi vì đầu mút của nhánh theo dõi máy chủ\n"
+"đã được cập nhật kể từ sau lần lấy ra cuối cùng. Bạn có lẽ muốn\n"
+"tích hợp các thay đổi này một cách cục bộ (v.d. \"git pull …\")\n"
+"trước khi ép buộc một cập nhật.\n"
+
+#: builtin/push.c:364
 #, c-format
 msgid "Pushing to %s\n"
 msgstr "Đang đẩy lên %s\n"
 
-#: builtin/push.c:358
+#: builtin/push.c:371
 #, c-format
 msgid "failed to push some refs to '%s'"
 msgstr "gặp lỗi khi đẩy tới một số tham chiếu đến “%s”"
 
-#: builtin/push.c:532
+#: builtin/push.c:553
 msgid "repository"
 msgstr "kho"
 
-#: builtin/push.c:533 builtin/send-pack.c:183
+#: builtin/push.c:554 builtin/send-pack.c:189
 msgid "push all refs"
 msgstr "đẩy tất cả các tham chiếu"
 
-#: builtin/push.c:534 builtin/send-pack.c:185
+#: builtin/push.c:555 builtin/send-pack.c:191
 msgid "mirror all refs"
 msgstr "mirror tất cả các tham chiếu"
 
-#: builtin/push.c:536
+#: builtin/push.c:557
 msgid "delete refs"
 msgstr "xóa các tham chiếu"
 
-#: builtin/push.c:537
+#: builtin/push.c:558
 msgid "push tags (can't be used with --all or --mirror)"
 msgstr "đẩy các thẻ (không dùng cùng với --all hay --mirror)"
 
-#: builtin/push.c:540 builtin/send-pack.c:186
+#: builtin/push.c:561 builtin/send-pack.c:192
 msgid "force updates"
 msgstr "ép buộc cập nhật"
 
-#: builtin/push.c:541 builtin/send-pack.c:198
+#: builtin/push.c:562 builtin/send-pack.c:204
 msgid "<refname>:<expect>"
 msgstr "<tên-tham-chiếu>:<cần>"
 
-#: builtin/push.c:542 builtin/send-pack.c:199
+#: builtin/push.c:563 builtin/send-pack.c:205
 msgid "require old value of ref to be at this value"
 msgstr "yêu cầu giá-trị cũ của tham chiếu thì là giá-trị này"
 
-#: builtin/push.c:545
+#: builtin/push.c:566 builtin/send-pack.c:208
+msgid "require remote updates to be integrated locally"
+msgstr "yêu cầu máy chủ cập nhật để thích hợp với máy cục bộ"
+
+#: builtin/push.c:569
 msgid "control recursive pushing of submodules"
 msgstr "điều khiển việc đẩy lên (push) đệ qui của mô-đun-con"
 
-#: builtin/push.c:546 builtin/send-pack.c:193
+#: builtin/push.c:570 builtin/send-pack.c:199
 msgid "use thin pack"
 msgstr "tạo gói nhẹ"
 
-#: builtin/push.c:547 builtin/push.c:548 builtin/send-pack.c:180
-#: builtin/send-pack.c:181
+#: builtin/push.c:571 builtin/push.c:572 builtin/send-pack.c:186
+#: builtin/send-pack.c:187
 msgid "receive pack program"
 msgstr "chương trình nhận gói"
 
-#: builtin/push.c:549
+#: builtin/push.c:573
 msgid "set upstream for git pull/status"
 msgstr "đặt thượng nguồn cho git pull/status"
 
-#: builtin/push.c:552
+#: builtin/push.c:576
 msgid "prune locally removed refs"
 msgstr "xén tỉa những tham chiếu bị gỡ bỏ"
 
-#: builtin/push.c:554
+#: builtin/push.c:578
 msgid "bypass pre-push hook"
 msgstr "vòng qua móc tiền-đẩy (pre-push)"
 
-#: builtin/push.c:555
+#: builtin/push.c:579
 msgid "push missing but relevant tags"
 msgstr "push phần bị thiếu nhưng các thẻ lại thích hợp"
 
-#: builtin/push.c:557 builtin/send-pack.c:187
+#: builtin/push.c:581 builtin/send-pack.c:193
 msgid "GPG sign the push"
 msgstr "ký lần đẩy dùng GPG"
 
-#: builtin/push.c:559 builtin/send-pack.c:194
+#: builtin/push.c:583 builtin/send-pack.c:200
 msgid "request atomic transaction on remote side"
 msgstr "yêu cầu giao dịch hạt nhân bên phía máy chủ"
 
-#: builtin/push.c:577
+#: builtin/push.c:601
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr "--delete là xung khắc với các tùy chọn --all, --mirror và --tags"
 
-#: builtin/push.c:579
+#: builtin/push.c:603
 msgid "--delete doesn't make sense without any refs"
 msgstr "--delete không hợp lý nếu không có bất kỳ tham chiếu nào"
 
-#: builtin/push.c:599
+#: builtin/push.c:623
 #, c-format
 msgid "bad repository '%s'"
 msgstr "repository (kho) sai “%s”"
 
-#: builtin/push.c:600
+#: builtin/push.c:624
 msgid ""
 "No configured push destination.\n"
 "Either specify the URL from the command-line or configure a remote "
@@ -18769,27 +18917,27 @@ msgstr ""
 "\n"
 "    git push <tên>\n"
 
-#: builtin/push.c:615
+#: builtin/push.c:639
 msgid "--all and --tags are incompatible"
 msgstr "--all và --tags xung khắc nhau"
 
-#: builtin/push.c:617
+#: builtin/push.c:641
 msgid "--all can't be combined with refspecs"
 msgstr "--all không thể được tổ hợp cùng với đặc tả đường dẫn"
 
-#: builtin/push.c:621
+#: builtin/push.c:645
 msgid "--mirror and --tags are incompatible"
 msgstr "--mirror và --tags xung khắc nhau"
 
-#: builtin/push.c:623
+#: builtin/push.c:647
 msgid "--mirror can't be combined with refspecs"
 msgstr "--mirror không thể được tổ hợp cùng với đặc tả đường dẫn"
 
-#: builtin/push.c:626
+#: builtin/push.c:650
 msgid "--all and --mirror are incompatible"
 msgstr "--all và --mirror xung khắc nhau"
 
-#: builtin/push.c:630
+#: builtin/push.c:657
 msgid "push options must not have new line characters"
 msgstr "các tùy chọn push phải không có ký tự dòng mới"
 
@@ -18938,193 +19086,193 @@ msgstr ""
 msgid "git rebase --continue | --abort | --skip | --edit-todo"
 msgstr "git rebase --continue | --abort | --skip | --edit-todo"
 
-#: builtin/rebase.c:187 builtin/rebase.c:211 builtin/rebase.c:238
+#: builtin/rebase.c:193 builtin/rebase.c:217 builtin/rebase.c:244
 #, c-format
 msgid "unusable todo list: '%s'"
 msgstr "danh sách cần làm không dùng được: “%s”"
 
-#: builtin/rebase.c:304
+#: builtin/rebase.c:310
 #, c-format
 msgid "could not create temporary %s"
 msgstr "không thể tạo %s tạm thời"
 
-#: builtin/rebase.c:310
+#: builtin/rebase.c:316
 msgid "could not mark as interactive"
 msgstr "không thể đánh dấu là tương tác"
 
-#: builtin/rebase.c:364
+#: builtin/rebase.c:369
 msgid "could not generate todo list"
 msgstr "không thể tạo danh sách cần làm"
 
-#: builtin/rebase.c:405
+#: builtin/rebase.c:411
 msgid "a base commit must be provided with --upstream or --onto"
 msgstr "lần chuyển giao cơ sỏ phải được chỉ định với --upstream hoặc --onto"
 
-#: builtin/rebase.c:474
+#: builtin/rebase.c:480
 msgid "git rebase--interactive [<options>]"
 msgstr "git rebase--interactive [<các tùy chọn>]"
 
-#: builtin/rebase.c:487 builtin/rebase.c:1382
+#: builtin/rebase.c:493 builtin/rebase.c:1388
 msgid "keep commits which start empty"
 msgstr "bỏ qua các lần chuyển giao mà nó bắt đầu trống rỗng"
 
-#: builtin/rebase.c:491 builtin/revert.c:128
+#: builtin/rebase.c:497 builtin/revert.c:128
 msgid "allow commits with empty messages"
 msgstr "chấp nhận chuyển giao mà không ghi chú gì"
 
-#: builtin/rebase.c:493
+#: builtin/rebase.c:499
 msgid "rebase merge commits"
 msgstr "cải tổ các lần chuyển giao hòa trộn"
 
-#: builtin/rebase.c:495
+#: builtin/rebase.c:501
 msgid "keep original branch points of cousins"
 msgstr "giữ các điểm nhánh nguyên bản của các anh em họ"
 
-#: builtin/rebase.c:497
+#: builtin/rebase.c:503
 msgid "move commits that begin with squash!/fixup!"
 msgstr "di chuyển các lần chuyển giao bắt đầu bằng squash!/fixup!"
 
-#: builtin/rebase.c:498
+#: builtin/rebase.c:504
 msgid "sign commits"
 msgstr "ký các lần chuyển giao"
 
-#: builtin/rebase.c:500 builtin/rebase.c:1321
+#: builtin/rebase.c:506 builtin/rebase.c:1327
 msgid "display a diffstat of what changed upstream"
 msgstr "hiển thị một diffstat của những thay đổi thượng nguồn"
 
-#: builtin/rebase.c:502
+#: builtin/rebase.c:508
 msgid "continue rebase"
 msgstr "tiếp tục cải tổ"
 
-#: builtin/rebase.c:504
+#: builtin/rebase.c:510
 msgid "skip commit"
 msgstr "bỏ qua lần chuyển giao"
 
-#: builtin/rebase.c:505
+#: builtin/rebase.c:511
 msgid "edit the todo list"
 msgstr "sửa danh sách cần làm"
 
-#: builtin/rebase.c:507
+#: builtin/rebase.c:513
 msgid "show the current patch"
 msgstr "hiển thị miếng vá hiện hành"
 
-#: builtin/rebase.c:510
+#: builtin/rebase.c:516
 msgid "shorten commit ids in the todo list"
 msgstr "rút ngắn mã chuyển giao trong danh sách cần làm"
 
-#: builtin/rebase.c:512
+#: builtin/rebase.c:518
 msgid "expand commit ids in the todo list"
 msgstr "khai triển mã chuyển giao trong danh sách cần làm"
 
-#: builtin/rebase.c:514
+#: builtin/rebase.c:520
 msgid "check the todo list"
 msgstr "kiểm tra danh sách cần làm"
 
-#: builtin/rebase.c:516
+#: builtin/rebase.c:522
 msgid "rearrange fixup/squash lines"
 msgstr "sắp xếp lại các dòng fixup/squash"
 
-#: builtin/rebase.c:518
+#: builtin/rebase.c:524
 msgid "insert exec commands in todo list"
 msgstr "chèn các lệnh thực thi trong danh sách cần làm"
 
-#: builtin/rebase.c:519
+#: builtin/rebase.c:525
 msgid "onto"
 msgstr "lên trên"
 
-#: builtin/rebase.c:522
+#: builtin/rebase.c:528
 msgid "restrict-revision"
 msgstr "điểm-xét-duyệt-hạn-chế"
 
-#: builtin/rebase.c:522
+#: builtin/rebase.c:528
 msgid "restrict revision"
 msgstr "điểm xét duyệt hạn chế"
 
-#: builtin/rebase.c:524
+#: builtin/rebase.c:530
 msgid "squash-onto"
 msgstr "squash-lên-trên"
 
-#: builtin/rebase.c:525
+#: builtin/rebase.c:531
 msgid "squash onto"
 msgstr "squash lên trên"
 
-#: builtin/rebase.c:527
+#: builtin/rebase.c:533
 msgid "the upstream commit"
 msgstr "lần chuyển giao thượng nguồn"
 
-#: builtin/rebase.c:529
+#: builtin/rebase.c:535
 msgid "head-name"
 msgstr "tên-đầu"
 
-#: builtin/rebase.c:529
+#: builtin/rebase.c:535
 msgid "head name"
 msgstr "tên đầu"
 
-#: builtin/rebase.c:534
+#: builtin/rebase.c:540
 msgid "rebase strategy"
 msgstr "chiến lược cải tổ"
 
-#: builtin/rebase.c:535
+#: builtin/rebase.c:541
 msgid "strategy-opts"
 msgstr "tùy-chọn-chiến-lược"
 
-#: builtin/rebase.c:536
+#: builtin/rebase.c:542
 msgid "strategy options"
 msgstr "các tùy chọn chiến lược"
 
-#: builtin/rebase.c:537
+#: builtin/rebase.c:543
 msgid "switch-to"
 msgstr "chuyển-đến"
 
-#: builtin/rebase.c:538
+#: builtin/rebase.c:544
 msgid "the branch or commit to checkout"
 msgstr "nhánh hay lần chuyển giao lần lấy ra"
 
-#: builtin/rebase.c:539
+#: builtin/rebase.c:545
 msgid "onto-name"
 msgstr "onto-name"
 
-#: builtin/rebase.c:539
+#: builtin/rebase.c:545
 msgid "onto name"
 msgstr "tên lên trên"
 
-#: builtin/rebase.c:540
+#: builtin/rebase.c:546
 msgid "cmd"
 msgstr "lệnh"
 
-#: builtin/rebase.c:540
+#: builtin/rebase.c:546
 msgid "the command to run"
 msgstr "lệnh muốn chạy"
 
-#: builtin/rebase.c:543 builtin/rebase.c:1415
+#: builtin/rebase.c:549 builtin/rebase.c:1421
 msgid "automatically re-schedule any `exec` that fails"
 msgstr "lập lịch lại một cách tự động bất kỳ “exec“ bị lỗi"
 
-#: builtin/rebase.c:559
+#: builtin/rebase.c:565
 msgid "--[no-]rebase-cousins has no effect without --rebase-merges"
 msgstr "--[no-]rebase-cousins không có tác dụng khi không có --rebase-merges"
 
-#: builtin/rebase.c:575
+#: builtin/rebase.c:581
 #, c-format
 msgid "%s requires the merge backend"
 msgstr "%s cần một ứng dụng hòa trộn chạy phía sau"
 
-#: builtin/rebase.c:618
+#: builtin/rebase.c:624
 #, c-format
 msgid "could not get 'onto': '%s'"
 msgstr "không thể đặt lấy “onto”: “%s”"
 
-#: builtin/rebase.c:635
+#: builtin/rebase.c:641
 #, c-format
 msgid "invalid orig-head: '%s'"
 msgstr "orig-head không hợp lệ: “%s”"
 
-#: builtin/rebase.c:660
+#: builtin/rebase.c:666
 #, c-format
 msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
 msgstr "đang bỏ qua allow_rerere_autoupdate không hợp lệ: “%s”"
 
-#: builtin/rebase.c:805 git-rebase--preserve-merges.sh:81
+#: builtin/rebase.c:811 git-rebase--preserve-merges.sh:81
 msgid ""
 "Resolve all conflicts manually, mark them as resolved with\n"
 "\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
@@ -19139,7 +19287,7 @@ msgstr ""
 "Để bãi bỏ và quay trở lại trạng thái trước \"git rebase\", chạy \"git rebase "
 "--abort\"."
 
-#: builtin/rebase.c:888
+#: builtin/rebase.c:894
 #, c-format
 msgid ""
 "\n"
@@ -19158,16 +19306,16 @@ msgstr ""
 "\n"
 "Kết quả là git không thể cải tổ lại chúng."
 
-#: builtin/rebase.c:1214
+#: builtin/rebase.c:1220
 #, c-format
 msgid ""
 "unrecognized empty type '%s'; valid values are \"drop\", \"keep\", and \"ask"
 "\"."
 msgstr ""
-"kiểu rỗng không được nhận dạng '%s'; giá trị hợp lệ là \"drop\", \"keep\", "
+"kiểu rỗng không được nhận dạng “%s”; giá trị hợp lệ là \"drop\", \"keep\", "
 "và \"ask\"."
 
-#: builtin/rebase.c:1232
+#: builtin/rebase.c:1238
 #, c-format
 msgid ""
 "%s\n"
@@ -19184,7 +19332,7 @@ msgstr ""
 "    git rebase “<nhánh>”\n"
 "\n"
 
-#: builtin/rebase.c:1248
+#: builtin/rebase.c:1254
 #, c-format
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:\n"
@@ -19198,150 +19346,150 @@ msgstr ""
 "    git branch --set-upstream-to=%s/<nhánh> %s\n"
 "\n"
 
-#: builtin/rebase.c:1278
+#: builtin/rebase.c:1284
 msgid "exec commands cannot contain newlines"
 msgstr "các lệnh thực thi không thể chứa các ký tự dòng mới"
 
-#: builtin/rebase.c:1282
+#: builtin/rebase.c:1288
 msgid "empty exec command"
 msgstr "lệnh thực thi trống rỗng"
 
-#: builtin/rebase.c:1312
+#: builtin/rebase.c:1318
 msgid "rebase onto given branch instead of upstream"
 msgstr "cải tổ vào nhánh đã cho thay cho thượng nguồn"
 
-#: builtin/rebase.c:1314
+#: builtin/rebase.c:1320
 msgid "use the merge-base of upstream and branch as the current base"
 msgstr ""
 "sử dụng các cơ sở hòa trộn của thượng nguồn và nhánh như là cơ sở hiện tại"
 
-#: builtin/rebase.c:1316
+#: builtin/rebase.c:1322
 msgid "allow pre-rebase hook to run"
 msgstr "cho phép móc (hook) pre-rebase được chạy"
 
-#: builtin/rebase.c:1318
+#: builtin/rebase.c:1324
 msgid "be quiet. implies --no-stat"
 msgstr "hãy im lặng. ý là --no-stat"
 
-#: builtin/rebase.c:1324
+#: builtin/rebase.c:1330
 msgid "do not show diffstat of what changed upstream"
 msgstr "đừng hiển thị diffstat của những thay đổi thượng nguồn"
 
-#: builtin/rebase.c:1327
-msgid "add a Signed-off-by: line to each commit"
-msgstr "thêm dòng Signed-off-by: cho từng lần chuyển giao"
+#: builtin/rebase.c:1333
+msgid "add a Signed-off-by trailer to each commit"
+msgstr "thêm dòng Signed-off-by vào cuối cho từng lần chuyển giao"
 
-#: builtin/rebase.c:1330
+#: builtin/rebase.c:1336
 msgid "make committer date match author date"
 msgstr "làm ngày tháng chuyển giao khớp với ngày của tác giả"
 
-#: builtin/rebase.c:1332
+#: builtin/rebase.c:1338
 msgid "ignore author date and use current date"
 msgstr "bỏ qua ngày tác giả và sử dụng ngày tháng hiện tại"
 
-#: builtin/rebase.c:1334
+#: builtin/rebase.c:1340
 msgid "synonym of --reset-author-date"
 msgstr "đồng nghĩa với --reset-author-date"
 
-#: builtin/rebase.c:1336 builtin/rebase.c:1340
+#: builtin/rebase.c:1342 builtin/rebase.c:1346
 msgid "passed to 'git apply'"
 msgstr "chuyển cho “git apply”"
 
-#: builtin/rebase.c:1338
+#: builtin/rebase.c:1344
 msgid "ignore changes in whitespace"
 msgstr "lờ đi sự thay đổi do khoảng trắng gây ra"
 
-#: builtin/rebase.c:1342 builtin/rebase.c:1345
+#: builtin/rebase.c:1348 builtin/rebase.c:1351
 msgid "cherry-pick all commits, even if unchanged"
 msgstr ""
 "cherry-pick tất cả các lần chuyển giao, ngay cả khi không có thay đổi gì"
 
-#: builtin/rebase.c:1347
+#: builtin/rebase.c:1353
 msgid "continue"
 msgstr "tiếp tục"
 
-#: builtin/rebase.c:1350
+#: builtin/rebase.c:1356
 msgid "skip current patch and continue"
 msgstr "bỏ qua miếng vá hiện hành và tiếp tục"
 
-#: builtin/rebase.c:1352
+#: builtin/rebase.c:1358
 msgid "abort and check out the original branch"
 msgstr "bãi bỏ và lấy ra nhánh nguyên thủy"
 
-#: builtin/rebase.c:1355
+#: builtin/rebase.c:1361
 msgid "abort but keep HEAD where it is"
 msgstr "bãi bỏ nhưng vẫn vẫn giữ HEAD chỉ đến nó"
 
-#: builtin/rebase.c:1356
+#: builtin/rebase.c:1362
 msgid "edit the todo list during an interactive rebase"
 msgstr "sửa danh sách cần làm trong quá trình “rebase” (cải tổ) tương tác"
 
-#: builtin/rebase.c:1359
+#: builtin/rebase.c:1365
 msgid "show the patch file being applied or merged"
 msgstr "hiển thị miếng vá đã được áp dụng hay hòa trộn"
 
-#: builtin/rebase.c:1362
+#: builtin/rebase.c:1368
 msgid "use apply strategies to rebase"
 msgstr "dùng chiến lược áp dụng để cải tổ"
 
-#: builtin/rebase.c:1366
+#: builtin/rebase.c:1372
 msgid "use merging strategies to rebase"
 msgstr "dùng chiến lược hòa trộn để cải tổ"
 
-#: builtin/rebase.c:1370
+#: builtin/rebase.c:1376
 msgid "let the user edit the list of commits to rebase"
 msgstr "để người dùng sửa danh sách các lần chuyển giao muốn cải tổ"
 
-#: builtin/rebase.c:1374
+#: builtin/rebase.c:1380
 msgid "(DEPRECATED) try to recreate merges instead of ignoring them"
 msgstr "(ĐàLẠC HẬU) hay thử tạo lại các hòa trộn thay vì bỏ qua chúng"
 
-#: builtin/rebase.c:1379
+#: builtin/rebase.c:1385
 msgid "how to handle commits that become empty"
 msgstr "xử lý các lần chuyển giao mà nó trở thành trống rỗng như thế nào"
 
-#: builtin/rebase.c:1386
+#: builtin/rebase.c:1392
 msgid "move commits that begin with squash!/fixup! under -i"
 msgstr "di chuyển các lần chuyển giao mà bắt đầu bằng squash!/fixup! dưới -i"
 
-#: builtin/rebase.c:1393
+#: builtin/rebase.c:1399
 msgid "add exec lines after each commit of the editable list"
 msgstr "thêm các dòng thực thi sau từng lần chuyển giao của danh sách sửa được"
 
-#: builtin/rebase.c:1397
+#: builtin/rebase.c:1403
 msgid "allow rebasing commits with empty messages"
 msgstr "chấp nhận cải tổ các chuyển giao mà không ghi chú gì"
 
-#: builtin/rebase.c:1401
+#: builtin/rebase.c:1407
 msgid "try to rebase merges instead of skipping them"
 msgstr "cố thử cải tổ các hòa trộn thay vì bỏ qua chúng"
 
-#: builtin/rebase.c:1404
+#: builtin/rebase.c:1410
 msgid "use 'merge-base --fork-point' to refine upstream"
 msgstr "dùng “merge-base --fork-point” để định nghĩa lại thượng nguồn"
 
-#: builtin/rebase.c:1406
+#: builtin/rebase.c:1412
 msgid "use the given merge strategy"
 msgstr "dùng chiến lược hòa trộn đã cho"
 
-#: builtin/rebase.c:1408 builtin/revert.c:115
+#: builtin/rebase.c:1414 builtin/revert.c:115
 msgid "option"
 msgstr "tùy chọn"
 
-#: builtin/rebase.c:1409
+#: builtin/rebase.c:1415
 msgid "pass the argument through to the merge strategy"
 msgstr "chuyển thao số đến chiến lược hòa trộn"
 
-#: builtin/rebase.c:1412
+#: builtin/rebase.c:1418
 msgid "rebase all reachable commits up to the root(s)"
 msgstr "cải tổ tất các các lần chuyển giao cho đến root"
 
-#: builtin/rebase.c:1417
+#: builtin/rebase.c:1423
 msgid "apply all changes, even those already present upstream"
 msgstr ""
 "áp dụng mọi thay đổi, ngay cả khi những thứ đó đã sẵn có ở thượng nguồn"
 
-#: builtin/rebase.c:1434
+#: builtin/rebase.c:1440
 msgid ""
 "the rebase.useBuiltin support has been removed!\n"
 "See its entry in 'git help config' for details."
@@ -19349,45 +19497,45 @@ msgstr ""
 "việc hỗ trợ rebase.useBuiltin đã bị xóa!\n"
 "Xem mục tin của nó trong “ git help config” để biết chi tiết."
 
-#: builtin/rebase.c:1440
+#: builtin/rebase.c:1446
 msgid "It looks like 'git am' is in progress. Cannot rebase."
 msgstr ""
 "Hình như đang trong quá trình thực hiện lệnh “git-am”. Không thể rebase."
 
-#: builtin/rebase.c:1481
+#: builtin/rebase.c:1487
 msgid ""
 "git rebase --preserve-merges is deprecated. Use --rebase-merges instead."
 msgstr ""
 "git rebase --preserve-merges đã lạc hậu. Hãy dùng --rebase-merges để thay "
 "thế."
 
-#: builtin/rebase.c:1486
+#: builtin/rebase.c:1492
 msgid "cannot combine '--keep-base' with '--onto'"
 msgstr "không thể kết hợp “--keep-base” với “--onto”"
 
-#: builtin/rebase.c:1488
+#: builtin/rebase.c:1494
 msgid "cannot combine '--keep-base' with '--root'"
 msgstr "không thể kết hợp “--keep-base” với “--root”"
 
-#: builtin/rebase.c:1492
+#: builtin/rebase.c:1498
 msgid "cannot combine '--root' with '--fork-point'"
 msgstr "không thể kết hợp “--root” với “--fork-point”"
 
-#: builtin/rebase.c:1495
+#: builtin/rebase.c:1501
 msgid "No rebase in progress?"
 msgstr "Không có tiến trình rebase nào phải không?"
 
-#: builtin/rebase.c:1499
+#: builtin/rebase.c:1505
 msgid "The --edit-todo action can only be used during interactive rebase."
 msgstr ""
 "Hành động “--edit-todo” chỉ có thể dùng trong quá trình “rebase” (sửa lịch "
 "sử) tương tác."
 
-#: builtin/rebase.c:1522
+#: builtin/rebase.c:1528 t/helper/test-fast-rebase.c:123
 msgid "Cannot read HEAD"
 msgstr "Không thể đọc HEAD"
 
-#: builtin/rebase.c:1534
+#: builtin/rebase.c:1540
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -19395,16 +19543,16 @@ msgstr ""
 "Bạn phải sửa tất cả các lần hòa trộn xung đột và sau\n"
 "đó đánh dấu chúng là cần xử lý sử dụng lệnh git add"
 
-#: builtin/rebase.c:1553
+#: builtin/rebase.c:1559
 msgid "could not discard worktree changes"
 msgstr "không thể loại bỏ các thay đổi cây-làm-việc"
 
-#: builtin/rebase.c:1572
+#: builtin/rebase.c:1578
 #, c-format
 msgid "could not move back to %s"
 msgstr "không thể quay trở lại %s"
 
-#: builtin/rebase.c:1618
+#: builtin/rebase.c:1624
 #, c-format
 msgid ""
 "It seems that there is already a %s directory, and\n"
@@ -19425,132 +19573,132 @@ msgstr ""
 "và chạy TÔI lần nữa. TÔI dừng lại trong trường hợp bạn vẫn\n"
 "có một số thứ quý giá ở đây.\n"
 
-#: builtin/rebase.c:1646
+#: builtin/rebase.c:1652
 msgid "switch `C' expects a numerical value"
 msgstr "tùy chọn “%c” cần một giá trị bằng số"
 
-#: builtin/rebase.c:1688
+#: builtin/rebase.c:1694
 #, c-format
 msgid "Unknown mode: %s"
 msgstr "Không hiểu chế độ: %s"
 
-#: builtin/rebase.c:1727
+#: builtin/rebase.c:1733
 msgid "--strategy requires --merge or --interactive"
 msgstr "--strategy cần --merge hay --interactive"
 
-#: builtin/rebase.c:1757
+#: builtin/rebase.c:1763
 msgid "cannot combine apply options with merge options"
 msgstr "không thể tổ hợp các tùy chọn áp dụng với các tùy chọn hòa trộn"
 
-#: builtin/rebase.c:1770
+#: builtin/rebase.c:1776
 #, c-format
 msgid "Unknown rebase backend: %s"
 msgstr "Không hiểu ứng dụng chạy phía sau lệnh cải tổ: %s"
 
-#: builtin/rebase.c:1795
+#: builtin/rebase.c:1806
 msgid "--reschedule-failed-exec requires --exec or --interactive"
 msgstr "--reschedule-failed-exec cần --exec hay --interactive"
 
-#: builtin/rebase.c:1815
+#: builtin/rebase.c:1826
 msgid "cannot combine '--preserve-merges' with '--rebase-merges'"
 msgstr "không thể kết hợp “--preserve-merges” với “--rebase-merges”"
 
-#: builtin/rebase.c:1819
+#: builtin/rebase.c:1830
 msgid ""
 "error: cannot combine '--preserve-merges' with '--reschedule-failed-exec'"
 msgstr "không thể kết hợp “--preserve-merges” với “--reschedule-failed-exec”"
 
-#: builtin/rebase.c:1843
+#: builtin/rebase.c:1854
 #, c-format
 msgid "invalid upstream '%s'"
 msgstr "thượng nguồn không hợp lệ “%s”"
 
-#: builtin/rebase.c:1849
+#: builtin/rebase.c:1860
 msgid "Could not create new root commit"
 msgstr "Không thể tạo lần chuyển giao gốc mới"
 
-#: builtin/rebase.c:1875
+#: builtin/rebase.c:1886
 #, c-format
 msgid "'%s': need exactly one merge base with branch"
 msgstr "“%s”: cần chính xác một cơ sở hòa trộn với nhánh"
 
-#: builtin/rebase.c:1878
+#: builtin/rebase.c:1889
 #, c-format
 msgid "'%s': need exactly one merge base"
 msgstr "“%s”: cần chính xác một cơ sở hòa trộn"
 
-#: builtin/rebase.c:1886
+#: builtin/rebase.c:1897
 #, c-format
 msgid "Does not point to a valid commit '%s'"
 msgstr "Không chỉ đến một lần chuyển giao không hợp lệ “%s”"
 
-#: builtin/rebase.c:1912
+#: builtin/rebase.c:1923
 #, c-format
 msgid "fatal: no such branch/commit '%s'"
 msgstr "nghiêm trọng: không có nhánh/lần chuyển giao “%s” như thế"
 
-#: builtin/rebase.c:1920 builtin/submodule--helper.c:40
+#: builtin/rebase.c:1931 builtin/submodule--helper.c:40
 #: builtin/submodule--helper.c:2414
 #, c-format
 msgid "No such ref: %s"
 msgstr "Không có tham chiếu nào như thế: %s"
 
-#: builtin/rebase.c:1931
+#: builtin/rebase.c:1942
 msgid "Could not resolve HEAD to a revision"
 msgstr "Không thể phân giải lần chuyển giao HEAD đến một điểm xét duyệt"
 
-#: builtin/rebase.c:1952
+#: builtin/rebase.c:1963
 msgid "Please commit or stash them."
 msgstr "Xin hãy chuyển giao hoặc tạm cất (stash) chúng."
 
-#: builtin/rebase.c:1988
+#: builtin/rebase.c:1999
 #, c-format
 msgid "could not switch to %s"
 msgstr "không thể chuyển đến %s"
 
-#: builtin/rebase.c:1999
+#: builtin/rebase.c:2010
 msgid "HEAD is up to date."
 msgstr "HEAD đã cập nhật."
 
-#: builtin/rebase.c:2001
+#: builtin/rebase.c:2012
 #, c-format
 msgid "Current branch %s is up to date.\n"
 msgstr "Nhánh hiện tại %s đã được cập nhật rồi.\n"
 
-#: builtin/rebase.c:2009
+#: builtin/rebase.c:2020
 msgid "HEAD is up to date, rebase forced."
 msgstr "HEAD hiện đã được cập nhật rồi, bị ép buộc rebase."
 
-#: builtin/rebase.c:2011
+#: builtin/rebase.c:2022
 #, c-format
 msgid "Current branch %s is up to date, rebase forced.\n"
 msgstr "Nhánh hiện tại %s đã được cập nhật rồi, lệnh rebase ép buộc.\n"
 
-#: builtin/rebase.c:2019
+#: builtin/rebase.c:2030
 msgid "The pre-rebase hook refused to rebase."
 msgstr "Móc (hook) pre-rebase từ chối rebase."
 
-#: builtin/rebase.c:2026
+#: builtin/rebase.c:2037
 #, c-format
 msgid "Changes to %s:\n"
 msgstr "Thay đổi thành %s:\n"
 
-#: builtin/rebase.c:2029
+#: builtin/rebase.c:2040
 #, c-format
 msgid "Changes from %s to %s:\n"
 msgstr "Thay đổi từ %s thành %s:\n"
 
-#: builtin/rebase.c:2054
+#: builtin/rebase.c:2065
 #, c-format
 msgid "First, rewinding head to replay your work on top of it...\n"
 msgstr ""
 "Trước tiên, di chuyển head để xem lại các công việc trên đỉnh của nó…\n"
 
-#: builtin/rebase.c:2063
+#: builtin/rebase.c:2074
 msgid "Could not detach HEAD"
 msgstr "Không thể tách rời HEAD"
 
-#: builtin/rebase.c:2072
+#: builtin/rebase.c:2083
 #, c-format
 msgid "Fast-forwarded %s to %s.\n"
 msgstr "Chuyển-tiếp-nhanh %s đến %s.\n"
@@ -19559,7 +19707,7 @@ msgstr "Chuyển-tiếp-nhanh %s đến %s.\n"
 msgid "git receive-pack <git-dir>"
 msgstr "git receive-pack <thư-mục-git>"
 
-#: builtin/receive-pack.c:1224
+#: builtin/receive-pack.c:1276
 msgid ""
 "By default, updating the current branch in a non-bare repository\n"
 "is denied, because it will make the index and work tree inconsistent\n"
@@ -19589,7 +19737,7 @@ msgstr ""
 "Để chấm dứt lời nhắn này và vẫn giữ cách ứng xử mặc định, hãy đặt\n"
 "biến cấu hình “receive.denyCurrentBranch” thành “refuse”."
 
-#: builtin/receive-pack.c:1244
+#: builtin/receive-pack.c:1296
 msgid ""
 "By default, deleting the current branch is denied, because the next\n"
 "'git clone' won't result in any file checked out, causing confusion.\n"
@@ -19610,11 +19758,11 @@ msgstr ""
 "\n"
 "Để chấm dứt lời nhắn này, bạn hãy đặt nó thành “refuse”."
 
-#: builtin/receive-pack.c:2422
+#: builtin/receive-pack.c:2481
 msgid "quiet"
 msgstr "im lặng"
 
-#: builtin/receive-pack.c:2436
+#: builtin/receive-pack.c:2495
 msgid "You must specify a directory."
 msgstr "Bạn phải chỉ định thư mục."
 
@@ -19810,40 +19958,35 @@ msgstr "đang chỉ định một nhánh master không hợp lý với tùy ch
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr "chỉ định những nhánh để theo dõi chỉ hợp lý với các “fetch mirror”"
 
-#: builtin/remote.c:195 builtin/remote.c:697
+#: builtin/remote.c:195 builtin/remote.c:700
 #, c-format
 msgid "remote %s already exists."
 msgstr "máy chủ %s đã tồn tại rồi."
 
-#: builtin/remote.c:199 builtin/remote.c:701
-#, c-format
-msgid "'%s' is not a valid remote name"
-msgstr "“%s” không phải tên máy chủ hợp lệ"
-
-#: builtin/remote.c:239
+#: builtin/remote.c:240
 #, c-format
 msgid "Could not setup master '%s'"
 msgstr "Không thể cài đặt nhánh master “%s”"
 
-#: builtin/remote.c:354
+#: builtin/remote.c:355
 #, c-format
 msgid "Could not get fetch map for refspec %s"
 msgstr "Không thể lấy ánh xạ (map) fetch cho đặc tả tham chiếu %s"
 
-#: builtin/remote.c:453 builtin/remote.c:461
+#: builtin/remote.c:454 builtin/remote.c:462
 msgid "(matching)"
 msgstr "(khớp)"
 
-#: builtin/remote.c:465
+#: builtin/remote.c:466
 msgid "(delete)"
 msgstr "(xóa)"
 
-#: builtin/remote.c:654
+#: builtin/remote.c:655
 #, c-format
 msgid "could not set '%s'"
 msgstr "không thể đặt “%s”"
 
-#: builtin/remote.c:659
+#: builtin/remote.c:660
 #, c-format
 msgid ""
 "The %s configuration remote.pushDefault in:\n"
@@ -19852,19 +19995,19 @@ msgid ""
 msgstr ""
 "Cấu hình %s remote.pushDefault trong:\n"
 "\t%s:%d\n"
-"bây giờ tên trên máy chủ không tồn tại '%s'"
+"bây giờ tên trên máy chủ không tồn tại “%s”"
 
-#: builtin/remote.c:690 builtin/remote.c:833 builtin/remote.c:941
+#: builtin/remote.c:691 builtin/remote.c:836 builtin/remote.c:946
 #, c-format
 msgid "No such remote: '%s'"
 msgstr "Không có máy chủ nào như vậy: “%s”"
 
-#: builtin/remote.c:707
+#: builtin/remote.c:710
 #, c-format
 msgid "Could not rename config section '%s' to '%s'"
 msgstr "Không thể đổi tên phần của cấu hình từ “%s” thành “%s”"
 
-#: builtin/remote.c:727
+#: builtin/remote.c:730
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -19875,17 +20018,17 @@ msgstr ""
 "\t%s\n"
 "\tXin hãy cập nhật phần cấu hình một cách thủ công nếu thấy cần thiết."
 
-#: builtin/remote.c:767
+#: builtin/remote.c:770
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "gặp lỗi khi xóa “%s”"
 
-#: builtin/remote.c:801
+#: builtin/remote.c:804
 #, c-format
 msgid "creating '%s' failed"
 msgstr "gặp lỗi khi tạo “%s”"
 
-#: builtin/remote.c:877
+#: builtin/remote.c:882
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -19897,119 +20040,119 @@ msgstr[0] ""
 "đi;\n"
 "để xóa đi, sử dụng:"
 
-#: builtin/remote.c:891
+#: builtin/remote.c:896
 #, c-format
 msgid "Could not remove config section '%s'"
 msgstr "Không thể gỡ bỏ phần cấu hình “%s”"
 
-#: builtin/remote.c:994
+#: builtin/remote.c:999
 #, c-format
 msgid " new (next fetch will store in remotes/%s)"
 msgstr " mới (lần lấy về tiếp theo sẽ lưu trong remotes/%s)"
 
-#: builtin/remote.c:997
+#: builtin/remote.c:1002
 msgid " tracked"
 msgstr " được theo dõi"
 
-#: builtin/remote.c:999
+#: builtin/remote.c:1004
 msgid " stale (use 'git remote prune' to remove)"
 msgstr " cũ rích (dùng “git remote prune” để gỡ bỏ)"
 
-#: builtin/remote.c:1001
+#: builtin/remote.c:1006
 msgid " ???"
 msgstr " ???"
 
-#: builtin/remote.c:1042
+#: builtin/remote.c:1047
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr "branch.%s.merge không hợp lệ; không thể cải tổ về phía > 1 nhánh"
 
-#: builtin/remote.c:1051
+#: builtin/remote.c:1056
 #, c-format
 msgid "rebases interactively onto remote %s"
 msgstr "thực hiện rebase một cách tương tác trên máy chủ %s"
 
-#: builtin/remote.c:1053
+#: builtin/remote.c:1058
 #, c-format
 msgid "rebases interactively (with merges) onto remote %s"
 msgstr ""
 "thực hiện cải tổ (với các hòa trộn) một cách tương tác lên trên máy chủ %s"
 
-#: builtin/remote.c:1056
+#: builtin/remote.c:1061
 #, c-format
 msgid "rebases onto remote %s"
 msgstr "thực hiện rebase trên máy chủ %s"
 
-#: builtin/remote.c:1060
+#: builtin/remote.c:1065
 #, c-format
 msgid " merges with remote %s"
 msgstr " hòa trộn với máy chủ %s"
 
-#: builtin/remote.c:1063
+#: builtin/remote.c:1068
 #, c-format
 msgid "merges with remote %s"
 msgstr "hòa trộn với máy chủ %s"
 
-#: builtin/remote.c:1066
+#: builtin/remote.c:1071
 #, c-format
 msgid "%-*s    and with remote %s\n"
 msgstr "%-*s    và với máy chủ %s\n"
 
-#: builtin/remote.c:1109
+#: builtin/remote.c:1114
 msgid "create"
 msgstr "tạo"
 
-#: builtin/remote.c:1112
+#: builtin/remote.c:1117
 msgid "delete"
 msgstr "xóa"
 
-#: builtin/remote.c:1116
+#: builtin/remote.c:1121
 msgid "up to date"
 msgstr "đã cập nhật"
 
-#: builtin/remote.c:1119
+#: builtin/remote.c:1124
 msgid "fast-forwardable"
 msgstr "có-thể-chuyển-tiếp-nhanh"
 
-#: builtin/remote.c:1122
+#: builtin/remote.c:1127
 msgid "local out of date"
 msgstr "dữ liệu nội bộ đã cũ"
 
-#: builtin/remote.c:1129
+#: builtin/remote.c:1134
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr "    %-*s ép buộc thành %-*s (%s)"
 
-#: builtin/remote.c:1132
+#: builtin/remote.c:1137
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr "    %-*s đẩy lên thành %-*s (%s)"
 
-#: builtin/remote.c:1136
+#: builtin/remote.c:1141
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr "    %-*s ép buộc thành %s"
 
-#: builtin/remote.c:1139
+#: builtin/remote.c:1144
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s đẩy lên thành %s"
 
-#: builtin/remote.c:1207
+#: builtin/remote.c:1212
 msgid "do not query remotes"
 msgstr "không truy vấn các máy chủ"
 
-#: builtin/remote.c:1234
+#: builtin/remote.c:1239
 #, c-format
 msgid "* remote %s"
 msgstr "* máy chủ %s"
 
-#: builtin/remote.c:1235
+#: builtin/remote.c:1240
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr "  URL để lấy về: %s"
 
-#: builtin/remote.c:1236 builtin/remote.c:1252 builtin/remote.c:1391
+#: builtin/remote.c:1241 builtin/remote.c:1257 builtin/remote.c:1396
 msgid "(no URL)"
 msgstr "(không có URL)"
 
@@ -20017,173 +20160,173 @@ msgstr "(không có URL)"
 #. with the one in " Fetch URL: %s"
 #. translation.
 #.
-#: builtin/remote.c:1250 builtin/remote.c:1252
+#: builtin/remote.c:1255 builtin/remote.c:1257
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  URL để đẩy lên: %s"
 
-#: builtin/remote.c:1254 builtin/remote.c:1256 builtin/remote.c:1258
+#: builtin/remote.c:1259 builtin/remote.c:1261 builtin/remote.c:1263
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  Nhánh HEAD: %s"
 
-#: builtin/remote.c:1254
+#: builtin/remote.c:1259
 msgid "(not queried)"
 msgstr "(không yêu cầu)"
 
-#: builtin/remote.c:1256
+#: builtin/remote.c:1261
 msgid "(unknown)"
 msgstr "(không hiểu)"
 
-#: builtin/remote.c:1260
+#: builtin/remote.c:1265
 #, c-format
 msgid ""
 "  HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
 msgstr "  nhánh HEAD (HEAD máy chủ chưa rõ ràng, có lẽ là một trong số sau):\n"
 
-#: builtin/remote.c:1272
+#: builtin/remote.c:1277
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
 msgstr[0] "  Những nhánh trên máy chủ:%s"
 
-#: builtin/remote.c:1275 builtin/remote.c:1301
+#: builtin/remote.c:1280 builtin/remote.c:1306
 msgid " (status not queried)"
 msgstr " (trạng thái không được yêu cầu)"
 
-#: builtin/remote.c:1284
+#: builtin/remote.c:1289
 msgid "  Local branch configured for 'git pull':"
 msgid_plural "  Local branches configured for 'git pull':"
 msgstr[0] "  Những nhánh nội bộ đã được cấu hình cho lệnh “git pull”:"
 
-#: builtin/remote.c:1292
+#: builtin/remote.c:1297
 msgid "  Local refs will be mirrored by 'git push'"
 msgstr "  refs nội bộ sẽ được phản chiếu bởi lệnh “git push”"
 
-#: builtin/remote.c:1298
+#: builtin/remote.c:1303
 #, c-format
 msgid "  Local ref configured for 'git push'%s:"
 msgid_plural "  Local refs configured for 'git push'%s:"
 msgstr[0] "  Những tham chiếu nội bộ được cấu hình cho lệnh “git push”%s:"
 
-#: builtin/remote.c:1319
+#: builtin/remote.c:1324
 msgid "set refs/remotes/<name>/HEAD according to remote"
 msgstr "đặt refs/remotes/<tên>/HEAD cho phù hợp với máy chủ"
 
-#: builtin/remote.c:1321
+#: builtin/remote.c:1326
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr "xóa refs/remotes/<tên>/HEAD"
 
-#: builtin/remote.c:1336
+#: builtin/remote.c:1341
 msgid "Cannot determine remote HEAD"
 msgstr "Không thể xác định được HEAD máy chủ"
 
-#: builtin/remote.c:1338
+#: builtin/remote.c:1343
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
 msgstr "Nhiều nhánh HEAD máy chủ. Hãy chọn rõ ràng một:"
 
-#: builtin/remote.c:1348
+#: builtin/remote.c:1353
 #, c-format
 msgid "Could not delete %s"
 msgstr "Không thể xóa bỏ %s"
 
-#: builtin/remote.c:1356
+#: builtin/remote.c:1361
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "Không phải là tham chiếu hợp lệ: %s"
 
-#: builtin/remote.c:1358
+#: builtin/remote.c:1363
 #, c-format
 msgid "Could not setup %s"
 msgstr "Không thể cài đặt %s"
 
-#: builtin/remote.c:1376
+#: builtin/remote.c:1381
 #, c-format
 msgid " %s will become dangling!"
 msgstr " %s sẽ trở thành không đầu (không được quản lý)!"
 
-#: builtin/remote.c:1377
+#: builtin/remote.c:1382
 #, c-format
 msgid " %s has become dangling!"
 msgstr " %s đã trở thành không đầu (không được quản lý)!"
 
-#: builtin/remote.c:1387
+#: builtin/remote.c:1392
 #, c-format
 msgid "Pruning %s"
 msgstr "Đang xén bớt %s"
 
-#: builtin/remote.c:1388
+#: builtin/remote.c:1393
 #, c-format
 msgid "URL: %s"
 msgstr "URL: %s"
 
-#: builtin/remote.c:1404
+#: builtin/remote.c:1409
 #, c-format
 msgid " * [would prune] %s"
 msgstr " * [nên xén bớt] %s"
 
-#: builtin/remote.c:1407
+#: builtin/remote.c:1412
 #, c-format
 msgid " * [pruned] %s"
 msgstr " * [đã bị xén] %s"
 
-#: builtin/remote.c:1452
+#: builtin/remote.c:1457
 msgid "prune remotes after fetching"
 msgstr "cắt máy chủ sau khi lấy về"
 
-#: builtin/remote.c:1515 builtin/remote.c:1569 builtin/remote.c:1637
+#: builtin/remote.c:1521 builtin/remote.c:1577 builtin/remote.c:1647
 #, c-format
 msgid "No such remote '%s'"
 msgstr "Không có máy chủ nào có tên “%s”"
 
-#: builtin/remote.c:1531
+#: builtin/remote.c:1539
 msgid "add branch"
 msgstr "thêm nhánh"
 
-#: builtin/remote.c:1538
+#: builtin/remote.c:1546
 msgid "no remote specified"
 msgstr "chưa chỉ ra máy chủ nào"
 
-#: builtin/remote.c:1555
+#: builtin/remote.c:1563
 msgid "query push URLs rather than fetch URLs"
 msgstr "truy vấn đẩy URL thay vì lấy"
 
-#: builtin/remote.c:1557
+#: builtin/remote.c:1565
 msgid "return all URLs"
 msgstr "trả về mọi URL"
 
-#: builtin/remote.c:1585
+#: builtin/remote.c:1595
 #, c-format
 msgid "no URLs configured for remote '%s'"
 msgstr "không có URL nào được cấu hình cho nhánh “%s”"
 
-#: builtin/remote.c:1611
+#: builtin/remote.c:1621
 msgid "manipulate push URLs"
 msgstr "đẩy các “URL” bằng tay"
 
-#: builtin/remote.c:1613
+#: builtin/remote.c:1623
 msgid "add URL"
 msgstr "thêm URL"
 
-#: builtin/remote.c:1615
+#: builtin/remote.c:1625
 msgid "delete URLs"
 msgstr "xóa URLs"
 
-#: builtin/remote.c:1622
+#: builtin/remote.c:1632
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete không hợp lý"
 
-#: builtin/remote.c:1661
+#: builtin/remote.c:1673
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr "Kiểu mẫu URL cũ không hợp lệ: %s"
 
-#: builtin/remote.c:1669
+#: builtin/remote.c:1681
 #, c-format
 msgid "No such URL found: %s"
 msgstr "Không tìm thấy URL như vậy: %s"
 
-#: builtin/remote.c:1671
+#: builtin/remote.c:1683
 msgid "Will not delete all non-push URLs"
 msgstr "Sẽ không xóa những địa chỉ URL không-push"
 
@@ -20205,131 +20348,117 @@ msgstr ""
 "không thể lấy thông tin thống kê pack-objects để mà đóng gói lại các đối "
 "tượng hứa hẹn"
 
-#: builtin/repack.c:236 builtin/repack.c:421
+#: builtin/repack.c:268 builtin/repack.c:447
 msgid "repack: Expecting full hex object ID lines only from pack-objects."
 msgstr ""
 "repack: Đang chỉ cần các dòng ID đối tượng dạng thập lục phân đầy dủ từ pack-"
 "objects."
 
-#: builtin/repack.c:260
+#: builtin/repack.c:295
 msgid "could not finish pack-objects to repack promisor objects"
 msgstr "không thể hoàn tất pack-objects để đóng gói các đối tượng hứa hẹn"
 
-#: builtin/repack.c:297
+#: builtin/repack.c:323
 msgid "pack everything in a single pack"
 msgstr "đóng gói mọi thứ trong một gói đơn"
 
-#: builtin/repack.c:299
+#: builtin/repack.c:325
 msgid "same as -a, and turn unreachable objects loose"
 msgstr "giống với -a, và chỉnh sửa các đối tượng không đọc được thiếu sót"
 
-#: builtin/repack.c:302
+#: builtin/repack.c:328
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr "xóa bỏ các gói dư thừa, và chạy git-prune-packed"
 
-#: builtin/repack.c:304
+#: builtin/repack.c:330
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr "chuyển --no-reuse-delta cho git-pack-objects"
 
-#: builtin/repack.c:306
+#: builtin/repack.c:332
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr "chuyển --no-reuse-object cho git-pack-objects"
 
-#: builtin/repack.c:308
+#: builtin/repack.c:334
 msgid "do not run git-update-server-info"
 msgstr "không chạy git-update-server-info"
 
-#: builtin/repack.c:311
+#: builtin/repack.c:337
 msgid "pass --local to git-pack-objects"
 msgstr "chuyển --local cho git-pack-objects"
 
-#: builtin/repack.c:313
+#: builtin/repack.c:339
 msgid "write bitmap index"
 msgstr "ghi mục lục ánh xạ"
 
-#: builtin/repack.c:315
+#: builtin/repack.c:341
 msgid "pass --delta-islands to git-pack-objects"
 msgstr "chuyển --delta-islands cho git-pack-objects"
 
-#: builtin/repack.c:316
+#: builtin/repack.c:342
 msgid "approxidate"
 msgstr "ngày ước tính"
 
-#: builtin/repack.c:317
+#: builtin/repack.c:343
 msgid "with -A, do not loosen objects older than this"
 msgstr "với -A, các đối tượng cũ hơn khoảng thời gian này thì không bị mất"
 
-#: builtin/repack.c:319
+#: builtin/repack.c:345
 msgid "with -a, repack unreachable objects"
 msgstr "với -a, đóng gói lại các đối tượng không thể đọc được"
 
-#: builtin/repack.c:321
+#: builtin/repack.c:347
 msgid "size of the window used for delta compression"
 msgstr "kích thước cửa sổ được dùng cho nén “delta”"
 
-#: builtin/repack.c:322 builtin/repack.c:328
+#: builtin/repack.c:348 builtin/repack.c:354
 msgid "bytes"
 msgstr "byte"
 
-#: builtin/repack.c:323
+#: builtin/repack.c:349
 msgid "same as the above, but limit memory size instead of entries count"
 msgstr "giống như trên, nhưng giới hạn kích thước bộ nhớ hay vì số lượng"
 
-#: builtin/repack.c:325
+#: builtin/repack.c:351
 msgid "limits the maximum delta depth"
 msgstr "giới hạn độ sâu tối đa của “delta”"
 
-#: builtin/repack.c:327
+#: builtin/repack.c:353
 msgid "limits the maximum number of threads"
 msgstr "giới hạn số lượng tối đa tuyến trình"
 
-#: builtin/repack.c:329
+#: builtin/repack.c:355
 msgid "maximum size of each packfile"
 msgstr "kích thước tối đa cho từng tập tin gói"
 
-#: builtin/repack.c:331
+#: builtin/repack.c:357
 msgid "repack objects in packs marked with .keep"
 msgstr "đóng gói lại các đối tượng trong các gói đã đánh dấu bằng .keep"
 
-#: builtin/repack.c:333
+#: builtin/repack.c:359
 msgid "do not repack this pack"
 msgstr "đừng đóng gói lại gói này"
 
-#: builtin/repack.c:343
+#: builtin/repack.c:369
 msgid "cannot delete packs in a precious-objects repo"
 msgstr "không thể xóa các gói trong một kho đối_tượng_vĩ_đại"
 
-#: builtin/repack.c:347
+#: builtin/repack.c:373
 msgid "--keep-unreachable and -A are incompatible"
 msgstr "--keep-unreachable và -A xung khắc nhau"
 
-#: builtin/repack.c:430
+#: builtin/repack.c:456
 msgid "Nothing new to pack."
 msgstr "Không có gì mới để mà đóng gói."
 
 #: builtin/repack.c:486
 #, c-format
-msgid ""
-"WARNING: Some packs in use have been renamed by\n"
-"WARNING: prefixing old- to their name, in order to\n"
-"WARNING: replace them with the new version of the\n"
-"WARNING: file.  But the operation failed, and the\n"
-"WARNING: attempt to rename them back to their\n"
-"WARNING: original names also failed.\n"
-"WARNING: Please rename them in %s manually:\n"
-msgstr ""
-"CẢNH BÁO: Một số gói đang dùng vừa được đổi tên bằng cách\n"
-"CẢNH BÁO: đánh tiền tố old- vào tên của chúng, mục đích là\n"
-"CẢNH BÁO: thay chúng bằng phiên bản mới của tập\n"
-"CẢNH BÁO: tin. Nhưng thao tác lại gặp lỗi, và nỗ\n"
-"CẢNH BÁO: lực để đổi ngược lại tên chúng cho đúng với tên\n"
-"CẢNH BÁO: nguyên gốc của nó cũng gặp lỗi.\n"
-"CẢNH BÁO: Vui lòng đổi tên chúng trong %s bằng tay:\n"
+msgid "missing required file: %s"
+msgstr "thiếu tập tin cần thiết: %s"
 
-#: builtin/repack.c:534
+#: builtin/repack.c:488
 #, c-format
-msgid "failed to remove '%s'"
-msgstr "gặp lỗi khi gỡ bỏ “%s”"
+msgid "could not unlink: %s"
+msgstr "không thể bỏ liên kết: %s"
 
 #: builtin/replace.c:22
 msgid "git replace [-f] <object> <replacement>"
@@ -20605,7 +20734,7 @@ msgstr ""
 
 #: builtin/reset.c:33
 msgid "git reset [-q] [<tree-ish>] [--] <pathspec>..."
-msgstr "git reset [-q] [<tree-ish>] [--] <đặc/tả/đường/dẫn>..."
+msgstr "git reset [-q] [<tree-ish>] [--] <đặc/tả/đường/dẫn>"
 
 #: builtin/reset.c:34
 msgid ""
@@ -20615,7 +20744,7 @@ msgstr ""
 
 #: builtin/reset.c:35
 msgid "git reset --patch [<tree-ish>] [--] [<pathspec>...]"
-msgstr "git reset --patch [<tree-ish>] [--] [<đặc/tả/đường/dẫn>...]"
+msgstr "git reset --patch [<tree-ish>] [--] [<đặc/tả/đường/dẫn>]"
 
 #: builtin/reset.c:41
 msgid "mixed"
@@ -20660,8 +20789,8 @@ msgstr "HEAD hiện giờ tại %s"
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr "Không thể thực hiện một %s reset ở giữa của quá trình hòa trộn."
 
-#: builtin/reset.c:295 builtin/stash.c:520 builtin/stash.c:595
-#: builtin/stash.c:619
+#: builtin/reset.c:295 builtin/stash.c:520 builtin/stash.c:594
+#: builtin/stash.c:618
 msgid "be quiet, only report errors"
 msgstr "làm việc ở chế độ im lặng, chỉ hiển thị khi có lỗi"
 
@@ -20870,11 +20999,11 @@ msgstr "cấm khởi tạo lần chuyển giao trống rỗng"
 msgid "keep redundant, empty commits"
 msgstr "giữ lại các lần chuyển giao dư thừa, rỗng"
 
-#: builtin/revert.c:232
+#: builtin/revert.c:239
 msgid "revert failed"
 msgstr "hoàn nguyên gặp lỗi"
 
-#: builtin/revert.c:245
+#: builtin/revert.c:252
 msgid "cherry-pick failed"
 msgstr "cherry-pick gặp lỗi"
 
@@ -20970,77 +21099,77 @@ msgstr ""
 "chiếu>…]\n"
 "  --all và đặc tả <ref> rõ ràng là loại trừ lẫn nhau."
 
-#: builtin/send-pack.c:182
+#: builtin/send-pack.c:188
 msgid "remote name"
 msgstr "tên máy dịch vụ"
 
-#: builtin/send-pack.c:195
+#: builtin/send-pack.c:201
 msgid "use stateless RPC protocol"
 msgstr "dùng giao thức RPC không ổn định"
 
-#: builtin/send-pack.c:196
+#: builtin/send-pack.c:202
 msgid "read refs from stdin"
 msgstr "đọc tham chiếu từ đầu vào tiêu chuẩn"
 
-#: builtin/send-pack.c:197
+#: builtin/send-pack.c:203
 msgid "print status from remote helper"
 msgstr "in các trạng thái từ phần hướng dẫn trên máy dịch vụ"
 
-#: builtin/shortlog.c:15
+#: builtin/shortlog.c:16
 msgid "git shortlog [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git shortlog [<các tùy chọn>] [<vùng-xét-duyệt>] [[--] [<đường/dẫn>…]]"
 
-#: builtin/shortlog.c:16
+#: builtin/shortlog.c:17
 msgid "git log --pretty=short | git shortlog [<options>]"
 msgstr "git log --pretty=short | git shortlog [<các tùy chọn>]"
 
-#: builtin/shortlog.c:134
+#: builtin/shortlog.c:135
 msgid "using multiple --group options with stdin is not supported"
 msgstr ""
 "việc dùng nhiều tùy chọn --group với đầu ra tiêu chuẩn là không được hỗ trợ"
 
-#: builtin/shortlog.c:144
+#: builtin/shortlog.c:145
 msgid "using --group=trailer with stdin is not supported"
 msgstr "việc dùng --group=trailer với đầu ra tiêu chuẩn là không được hỗ trợ"
 
-#: builtin/shortlog.c:388
+#: builtin/shortlog.c:335
 #, c-format
 msgid "unknown group type: %s"
 msgstr "không nhận ra kiểu nhóm: %s"
 
-#: builtin/shortlog.c:416
+#: builtin/shortlog.c:363
 msgid "Group by committer rather than author"
 msgstr "Nhóm theo người chuyển giao thay vì tác giả"
 
-#: builtin/shortlog.c:419
+#: builtin/shortlog.c:366
 msgid "sort output according to the number of commits per author"
 msgstr "sắp xếp kết xuất tuân theo số lượng chuyển giao trên mỗi tác giả"
 
-#: builtin/shortlog.c:421
+#: builtin/shortlog.c:368
 msgid "Suppress commit descriptions, only provides commit count"
 msgstr "Chặn mọi mô tả lần chuyển giao, chỉ đưa ra số lượng lần chuyển giao"
 
-#: builtin/shortlog.c:423
+#: builtin/shortlog.c:370
 msgid "Show the email address of each author"
 msgstr "Hiển thị thư điện tử cho từng tác giả"
 
-#: builtin/shortlog.c:424
+#: builtin/shortlog.c:371
 msgid "<w>[,<i1>[,<i2>]]"
 msgstr "<w>[,<i1>[,<i2>]]"
 
-#: builtin/shortlog.c:425
+#: builtin/shortlog.c:372
 msgid "Linewrap output"
 msgstr "Ngắt dòng khi quá dài"
 
-#: builtin/shortlog.c:427
+#: builtin/shortlog.c:374
 msgid "field"
 msgstr "trường"
 
-#: builtin/shortlog.c:428
+#: builtin/shortlog.c:375
 msgid "Group by field"
 msgstr "Nhóm theo trường"
 
-#: builtin/shortlog.c:456
+#: builtin/shortlog.c:403
 msgid "too many arguments given outside repository"
 msgstr "quá nhiều tham số đưa ra ngoài kho chứa"
 
@@ -21238,7 +21367,6 @@ msgid "git sparse-checkout (init|list|set|add|reapply|disable) <options>"
 msgstr "git sparse-checkout (init|list|set|add|reapply|disable) <các-tùy-chọn>"
 
 #: builtin/sparse-checkout.c:50
-#| msgid "git sparse-checkout init [--cone]"
 msgid "git sparse-checkout list"
 msgstr "git sparse-checkout list"
 
@@ -21296,12 +21424,10 @@ msgid "read patterns from standard in"
 msgstr "đọc các mẫu từ đầu vào tiêu chuẩn"
 
 #: builtin/sparse-checkout.c:576
-#| msgid "git sparse-checkout init [--cone]"
 msgid "git sparse-checkout reapply"
 msgstr "git sparse-checkout reapply"
 
 #: builtin/sparse-checkout.c:595
-#| msgid "git sparse-checkout init [--cone]"
 msgid "git sparse-checkout disable"
 msgstr "git sparse-checkout disable"
 
@@ -21409,7 +21535,7 @@ msgid "could not generate diff %s^!."
 msgstr "không thể tạo diff %s^!."
 
 #: builtin/stash.c:422
-msgid "conflicts in index.Try without --index."
+msgid "conflicts in index. Try without --index."
 msgstr "xung đột trong bảng mục lục. Hãy thử mà không dùng tùy chọn --index."
 
 #: builtin/stash.c:428
@@ -21429,120 +21555,120 @@ msgstr "Đang hòa trộn %s với %s"
 msgid "Index was not unstashed."
 msgstr "Bảng mục lục đã không được bỏ stash."
 
-#: builtin/stash.c:522 builtin/stash.c:621
+#: builtin/stash.c:522 builtin/stash.c:620
 msgid "attempt to recreate the index"
 msgstr "gặp lỗi đọc bảng mục lục"
 
-#: builtin/stash.c:555
+#: builtin/stash.c:566
 #, c-format
 msgid "Dropped %s (%s)"
 msgstr "Đã xóa %s (%s)"
 
-#: builtin/stash.c:558
+#: builtin/stash.c:569
 #, c-format
 msgid "%s: Could not drop stash entry"
 msgstr "%s: Không thể xóa bỏ mục stash"
 
-#: builtin/stash.c:583
+#: builtin/stash.c:582
 #, c-format
 msgid "'%s' is not a stash reference"
 msgstr "”%s” không phải tham chiếu đến stash"
 
-#: builtin/stash.c:633
+#: builtin/stash.c:632
 msgid "The stash entry is kept in case you need it again."
 msgstr "Các mục tạm cất (stash) được giữ trong trường hợp bạn lại cần nó."
 
-#: builtin/stash.c:656
+#: builtin/stash.c:655
 msgid "No branch name specified"
 msgstr "Chưa chỉ ra tên của nhánh"
 
-#: builtin/stash.c:800 builtin/stash.c:837
+#: builtin/stash.c:799 builtin/stash.c:836
 #, c-format
 msgid "Cannot update %s with %s"
 msgstr "Không thể cập nhật %s với %s"
 
-#: builtin/stash.c:818 builtin/stash.c:1472 builtin/stash.c:1537
+#: builtin/stash.c:817 builtin/stash.c:1471 builtin/stash.c:1536
 msgid "stash message"
 msgstr "phần chú thích cho stash"
 
-#: builtin/stash.c:828
+#: builtin/stash.c:827
 msgid "\"git stash store\" requires one <commit> argument"
 msgstr "\"git stash store\" cần một đối số <lần chuyển giao>"
 
-#: builtin/stash.c:1043
+#: builtin/stash.c:1042
 msgid "No changes selected"
 msgstr "Chưa có thay đổi nào được chọn"
 
-#: builtin/stash.c:1143
+#: builtin/stash.c:1142
 msgid "You do not have the initial commit yet"
 msgstr "Bạn chưa còn có lần chuyển giao khởi tạo"
 
-#: builtin/stash.c:1170
+#: builtin/stash.c:1169
 msgid "Cannot save the current index state"
 msgstr "Không thể ghi lại trạng thái bảng mục lục hiện hành"
 
-#: builtin/stash.c:1179
+#: builtin/stash.c:1178
 msgid "Cannot save the untracked files"
 msgstr "Không thể ghi lại các tập tin chưa theo dõi"
 
-#: builtin/stash.c:1190 builtin/stash.c:1199
+#: builtin/stash.c:1189 builtin/stash.c:1198
 msgid "Cannot save the current worktree state"
 msgstr "Không thể ghi lại trạng thái cây-làm-việc hiện hành"
 
-#: builtin/stash.c:1227
+#: builtin/stash.c:1226
 msgid "Cannot record working tree state"
 msgstr "Không thể ghi lại trạng thái cây làm việc hiện hành"
 
-#: builtin/stash.c:1276
+#: builtin/stash.c:1275
 msgid "Can't use --patch and --include-untracked or --all at the same time"
 msgstr "Không thể dùng --patch và --include-untracked hay --all cùng một lúc"
 
-#: builtin/stash.c:1292
+#: builtin/stash.c:1291
 msgid "Did you forget to 'git add'?"
 msgstr "Có lẽ bạn đã quên “git add ” phải không?"
 
-#: builtin/stash.c:1307
+#: builtin/stash.c:1306
 msgid "No local changes to save"
 msgstr "Không có thay đổi nội bộ nào được ghi lại"
 
-#: builtin/stash.c:1314
+#: builtin/stash.c:1313
 msgid "Cannot initialize stash"
 msgstr "Không thể khởi tạo stash"
 
-#: builtin/stash.c:1329
+#: builtin/stash.c:1328
 msgid "Cannot save the current status"
 msgstr "Không thể ghi lại trạng thái hiện hành"
 
-#: builtin/stash.c:1334
+#: builtin/stash.c:1333
 #, c-format
 msgid "Saved working directory and index state %s"
 msgstr "Đã ghi lại thư mục làm việc và trạng thái mục lục %s"
 
-#: builtin/stash.c:1424
+#: builtin/stash.c:1423
 msgid "Cannot remove worktree changes"
 msgstr "Không thể gỡ bỏ các thay đổi cây-làm-việc"
 
-#: builtin/stash.c:1463 builtin/stash.c:1528
+#: builtin/stash.c:1462 builtin/stash.c:1527
 msgid "keep index"
 msgstr "giữ nguyên bảng mục lục"
 
-#: builtin/stash.c:1465 builtin/stash.c:1530
+#: builtin/stash.c:1464 builtin/stash.c:1529
 msgid "stash in patch mode"
 msgstr "cất đi ở chế độ miếng vá"
 
-#: builtin/stash.c:1466 builtin/stash.c:1531
+#: builtin/stash.c:1465 builtin/stash.c:1530
 msgid "quiet mode"
 msgstr "chế độ im lặng"
 
-#: builtin/stash.c:1468 builtin/stash.c:1533
+#: builtin/stash.c:1467 builtin/stash.c:1532
 msgid "include untracked files in stash"
 msgstr "bao gồm các tập tin không được theo dõi trong stash"
 
-#: builtin/stash.c:1470 builtin/stash.c:1535
+#: builtin/stash.c:1469 builtin/stash.c:1534
 msgid "include ignore files"
 msgstr "bao gồm các tập tin bị bỏ qua"
 
-#: builtin/stash.c:1570
+#: builtin/stash.c:1569
 msgid ""
 "the stash.useBuiltin support has been removed!\n"
 "See its entry in 'git help config' for details."
@@ -21749,7 +21875,7 @@ msgstr ""
 #: builtin/submodule--helper.c:1304
 msgid "skip submodules with 'ignore_config' value set to 'all'"
 msgstr ""
-"bỏ qua các mô-đun-con với giá trị của 'ignore_config' được đặt thành 'all'"
+"bỏ qua các mô-đun-con với giá trị của “ignore_config” được đặt thành “all”"
 
 #: builtin/submodule--helper.c:1306
 msgid "limit the summary size"
@@ -21864,9 +21990,9 @@ msgstr ""
 "lệ.\n"
 "Để cho Git thực hiện nhân bản mà không có cái thay thế như trong trường hợp "
 "này, đặt\n"
-"submodule.alternateErrorStrategy thành 'info' hoặc, tương đương, nhân bản "
+"submodule.alternateErrorStrategy thành “info” hoặc, tương đương, nhân bản "
 "bằng\n"
-"'--reference-if-able' thay vì dùng '--reference'."
+"“--reference-if-able” thay vì dùng “--reference”."
 
 #: builtin/submodule--helper.c:1752 builtin/submodule--helper.c:1755
 #, c-format
@@ -21920,7 +22046,7 @@ msgstr ""
 #: builtin/submodule--helper.c:1873
 #, c-format
 msgid "refusing to create/use '%s' in another submodule's git dir"
-msgstr "từ chối tạo/dùng '%s' trong một thư mục git của mô đun con"
+msgstr "từ chối tạo/dùng “%s” trong một thư mục git của mô đun con"
 
 #: builtin/submodule--helper.c:1884
 #, c-format
@@ -21930,7 +22056,7 @@ msgstr "việc sao “%s” vào đường dẫn mô-đun-con “%s” gặp l
 #: builtin/submodule--helper.c:1888
 #, c-format
 msgid "directory not empty: '%s'"
-msgstr "thư mục không trống: '%s'"
+msgstr "thư mục không trống: “%s”"
 
 #: builtin/submodule--helper.c:1900
 #, c-format
@@ -22057,7 +22183,7 @@ msgstr "git submodule--helper config --unset <tên>"
 msgid "git submodule--helper config --check-writeable"
 msgstr "git submodule--helper config --check-writeable"
 
-#: builtin/submodule--helper.c:2665 git-submodule.sh:151
+#: builtin/submodule--helper.c:2665 git-submodule.sh:150
 #, sh-format
 msgid "please make sure that the .gitmodules file is in the working tree"
 msgstr "hãy đảm bảo rằng tập tin .gitmodules có trong cây làm việc"
@@ -22098,7 +22224,7 @@ msgstr "cần --branch hoặc --default"
 msgid "--branch and --default are mutually exclusive"
 msgstr "Các tùy chọn --branch và --default loại từ lẫn nhau"
 
-#: builtin/submodule--helper.c:2792 git.c:438 git.c:710
+#: builtin/submodule--helper.c:2792 git.c:438 git.c:711
 #, c-format
 msgid "%s doesn't support --super-prefix"
 msgstr "%s không hỗ trợ --super-prefix"
@@ -22128,11 +22254,11 @@ msgstr "xóa tham chiếu mềm"
 msgid "shorten ref output"
 msgstr "làm ngắn kết xuất ref (tham chiếu)"
 
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:486
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:499
 msgid "reason"
 msgstr "lý do"
 
-#: builtin/symbolic-ref.c:43 builtin/update-ref.c:486
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:499
 msgid "reason of the update"
 msgstr "lý do cập nhật"
 
@@ -22280,7 +22406,7 @@ msgstr "dùng kháo khác để ký thẻ"
 msgid "replace the tag if exists"
 msgstr "thay thế nếu thẻ đó đã có trước"
 
-#: builtin/tag.c:422 builtin/update-ref.c:492
+#: builtin/tag.c:422 builtin/update-ref.c:505
 msgid "create a reflog"
 msgstr "tạo một reflog"
 
@@ -22637,19 +22763,19 @@ msgstr "git update-ref [<các tùy chọn>]    <refname> <biến-mới> [<biến
 msgid "git update-ref [<options>] --stdin [-z]"
 msgstr "git update-ref [<các tùy chọn>] --stdin [-z]"
 
-#: builtin/update-ref.c:487
+#: builtin/update-ref.c:500
 msgid "delete the reference"
 msgstr "xóa tham chiếu"
 
-#: builtin/update-ref.c:489
+#: builtin/update-ref.c:502
 msgid "update <refname> not the one it points to"
 msgstr "cập nhật <tên-tham-chiếu> không phải cái nó chỉ tới"
 
-#: builtin/update-ref.c:490
+#: builtin/update-ref.c:503
 msgid "stdin has NUL-terminated arguments"
 msgstr "đầu vào tiêu chuẩn có các đối số được chấm dứt bởi NUL"
 
-#: builtin/update-ref.c:491
+#: builtin/update-ref.c:504
 msgid "read updates from stdin"
 msgstr "đọc cập nhật từ đầu vào tiêu chuẩn"
 
@@ -22741,7 +22867,7 @@ msgstr "git worktree remove [<các tùy chọn>] <worktree>"
 msgid "git worktree unlock <path>"
 msgstr "git worktree unlock </đường/dẫn>"
 
-#: builtin/worktree.c:60 builtin/worktree.c:970
+#: builtin/worktree.c:60 builtin/worktree.c:973
 #, c-format
 msgid "failed to delete '%s'"
 msgstr "gặp lỗi khi xóa “%s”"
@@ -22874,54 +23000,54 @@ msgstr "Các tùy chọn -b, -B, và --detach loại từ lẫn nhau"
 msgid "--[no-]track can only be used if a new branch is created"
 msgstr "--[no-]track chỉ có thể được dùng nếu một nhánh mới được tạo"
 
-#: builtin/worktree.c:755
+#: builtin/worktree.c:758
 msgid "reason for locking"
 msgstr "lý do khóa"
 
-#: builtin/worktree.c:767 builtin/worktree.c:800 builtin/worktree.c:874
-#: builtin/worktree.c:998
+#: builtin/worktree.c:770 builtin/worktree.c:803 builtin/worktree.c:877
+#: builtin/worktree.c:1001
 #, c-format
 msgid "'%s' is not a working tree"
 msgstr "%s không phải là cây làm việc"
 
-#: builtin/worktree.c:769 builtin/worktree.c:802
+#: builtin/worktree.c:772 builtin/worktree.c:805
 msgid "The main working tree cannot be locked or unlocked"
 msgstr "Cây thư mục làm việc chính không thể khóa hay bỏ khóa được"
 
-#: builtin/worktree.c:774
+#: builtin/worktree.c:777
 #, c-format
 msgid "'%s' is already locked, reason: %s"
 msgstr "“%s” đã được khóa rồi, lý do: %s"
 
-#: builtin/worktree.c:776
+#: builtin/worktree.c:779
 #, c-format
 msgid "'%s' is already locked"
 msgstr "“%s” đã được khóa rồi"
 
-#: builtin/worktree.c:804
+#: builtin/worktree.c:807
 #, c-format
 msgid "'%s' is not locked"
 msgstr "“%s” chưa bị khóa"
 
-#: builtin/worktree.c:845
+#: builtin/worktree.c:848
 msgid "working trees containing submodules cannot be moved or removed"
 msgstr "cây làm việc có chứa mô-đun-con không thể di chuyển hay xóa bỏ"
 
-#: builtin/worktree.c:853
+#: builtin/worktree.c:856
 msgid "force move even if worktree is dirty or locked"
 msgstr "ép buộc ngay cả khi cây làm việc đang bẩn hay bị khóa"
 
-#: builtin/worktree.c:876 builtin/worktree.c:1000
+#: builtin/worktree.c:879 builtin/worktree.c:1003
 #, c-format
 msgid "'%s' is a main working tree"
 msgstr "“%s” là cây làm việc chính"
 
-#: builtin/worktree.c:881
+#: builtin/worktree.c:884
 #, c-format
 msgid "could not figure out destination name from '%s'"
 msgstr "không thể phác họa ra tên đích đến “%s”"
 
-#: builtin/worktree.c:894
+#: builtin/worktree.c:897
 #, c-format
 msgid ""
 "cannot move a locked working tree, lock reason: %s\n"
@@ -22930,7 +23056,7 @@ msgstr ""
 "không thể di chuyển một cây-làm-việc bị khóa, khóa vì: %s\n"
 "dùng “move -f -f” để ghi đè hoặc mở khóa trước đã"
 
-#: builtin/worktree.c:896
+#: builtin/worktree.c:899
 msgid ""
 "cannot move a locked working tree;\n"
 "use 'move -f -f' to override or unlock first"
@@ -22938,38 +23064,38 @@ msgstr ""
 "không thể di chuyển một cây-làm-việc bị khóa;\n"
 "dùng “move -f -f” để ghi đè hoặc mở khóa trước đã"
 
-#: builtin/worktree.c:899
+#: builtin/worktree.c:902
 #, c-format
 msgid "validation failed, cannot move working tree: %s"
 msgstr "thẩm tra gặp lỗi, không thể di chuyển một cây-làm-việc: %s"
 
-#: builtin/worktree.c:904
+#: builtin/worktree.c:907
 #, c-format
 msgid "failed to move '%s' to '%s'"
 msgstr "gặp lỗi khi chuyển “%s” sang “%s”"
 
-#: builtin/worktree.c:950
+#: builtin/worktree.c:953
 #, c-format
 msgid "failed to run 'git status' on '%s'"
 msgstr "gặp lỗi khi chạy “git status” vào “%s”"
 
-#: builtin/worktree.c:954
+#: builtin/worktree.c:957
 #, c-format
 msgid "'%s' contains modified or untracked files, use --force to delete it"
 msgstr ""
 "“%s” có chứa các tập tin đã bị sửa chữa hoặc chưa được theo dõi, hãy dùng --"
 "force để xóa nó"
 
-#: builtin/worktree.c:959
+#: builtin/worktree.c:962
 #, c-format
 msgid "failed to run 'git status' on '%s', code %d"
 msgstr "gặp lỗi khi chạy “git status” trong “%s”, mã %d"
 
-#: builtin/worktree.c:982
+#: builtin/worktree.c:985
 msgid "force removal even if worktree is dirty or locked"
 msgstr "ép buộc di chuyển thậm chí cả khi cây làm việc đang bẩn hay bị khóa"
 
-#: builtin/worktree.c:1005
+#: builtin/worktree.c:1008
 #, c-format
 msgid ""
 "cannot remove a locked working tree, lock reason: %s\n"
@@ -22978,7 +23104,7 @@ msgstr ""
 "không thể xóa bỏ một cây-làm-việc bị khóa, khóa vì: %s\n"
 "dùng “remove -f -f” để ghi đè hoặc mở khóa trước đã"
 
-#: builtin/worktree.c:1007
+#: builtin/worktree.c:1010
 msgid ""
 "cannot remove a locked working tree;\n"
 "use 'remove -f -f' to override or unlock first"
@@ -22986,17 +23112,17 @@ msgstr ""
 "không thể xóa bỏ một cây-làm-việc bị khóa;\n"
 "dùng “remove -f -f” để ghi đè hoặc mở khóa trước đã"
 
-#: builtin/worktree.c:1010
+#: builtin/worktree.c:1013
 #, c-format
 msgid "validation failed, cannot remove working tree: %s"
 msgstr "thẩm tra gặp lỗi, không thể gỡ bỏ một cây-làm-việc: %s"
 
-#: builtin/worktree.c:1034
+#: builtin/worktree.c:1037
 #, c-format
 msgid "repair: %s: %s"
 msgstr "sửa chữa: %s: %s"
 
-#: builtin/worktree.c:1037
+#: builtin/worktree.c:1040
 #, c-format
 msgid "error: %s: %s"
 msgstr "lỗi: %s: %s"
@@ -23020,12 +23146,20 @@ msgstr "chỉ hữu ích khi cần gỡ lỗi"
 #: http-fetch.c:114
 #, c-format
 msgid "argument to --packfile must be a valid hash (got '%s')"
-msgstr "tham số cho --packfile phải là một giá trị băm hợp lệ (nhận được '%s')"
+msgstr "tham số cho --packfile phải là một giá trị băm hợp lệ (nhận được “%s”)"
 
 #: http-fetch.c:122
 msgid "not a git repository"
 msgstr "không phải là kho git"
 
+#: t/helper/test-fast-rebase.c:141
+msgid "unhandled options"
+msgstr "các tùy chọn được không xử lý"
+
+#: t/helper/test-fast-rebase.c:146
+msgid "error preparing revisions"
+msgstr "gặp lỗi khi chuẩn bị các điểm xét duyệt"
+
 #: t/helper/test-reach.c:154
 #, c-format
 msgid "commit %s is not marked reachable"
@@ -23071,7 +23205,7 @@ msgstr ""
 "“git help -a” và “git help -g” liệt kê các câu lệnh con sẵn có và một số\n"
 "hướng dẫn về khái niệm. Xem “git help <lệnh>” hay “git help <khái-niệm>”\n"
 "để xem các đặc tả cho lệnh hay khái niệm cụ thể.\n"
-"Xem 'git help git' để biết tổng quan của hệ thống."
+"Xem “git help git” để biết tổng quan của hệ thống."
 
 #: git.c:187
 #, c-format
@@ -23144,18 +23278,18 @@ msgstr "lỗi nghiêm trọng chưa biết khi ghi ra đầu ra tiêu chuẩn"
 msgid "close failed on standard output"
 msgstr "gặp lỗi khi đóng đầu ra tiêu chuẩn"
 
-#: git.c:819
+#: git.c:820
 #, c-format
 msgid "alias loop detected: expansion of '%s' does not terminate:%s"
 msgstr ""
 "dò tìm thấy các bí danh quẩn tròn: biểu thức của “%s” không có điểm kết:%s"
 
-#: git.c:869
+#: git.c:870
 #, c-format
 msgid "cannot handle %s as a builtin"
 msgstr "không thể xử lý %s như là một phần bổ sung"
 
-#: git.c:882
+#: git.c:883
 #, c-format
 msgid ""
 "usage: %s\n"
@@ -23164,12 +23298,12 @@ msgstr ""
 "cách dùng: %s\n"
 "\n"
 
-#: git.c:902
+#: git.c:903
 #, c-format
 msgid "expansion of alias '%s' failed; '%s' is not a git command\n"
 msgstr "gặp lỗi khi khai triển bí danh “%s”; “%s” không phải là lệnh git\n"
 
-#: git.c:914
+#: git.c:915
 #, c-format
 msgid "failed to run command '%s': %s\n"
 msgstr "gặp lỗi khi chạy lệnh “%s”: %s\n"
@@ -23225,136 +23359,136 @@ msgstr ""
 "      hỏi cho: %s\n"
 " chuyển hướng: %s"
 
-#: remote-curl.c:174
+#: remote-curl.c:183
 #, c-format
 msgid "invalid quoting in push-option value: '%s'"
 msgstr "sai trích dẫn trong giá trị push-option :“%s”"
 
-#: remote-curl.c:298
+#: remote-curl.c:307
 #, c-format
 msgid "%sinfo/refs not valid: is this a git repository?"
 msgstr "%sinfo/refs không hợp lệ: đây có phải là một kho git?"
 
-#: remote-curl.c:399
+#: remote-curl.c:408
 msgid "invalid server response; expected service, got flush packet"
 msgstr ""
 "đáp ứng từ máy phục vụ không hợp lệ; cần dịch vụ, nhưng lại nhận được gói "
 "flush"
 
-#: remote-curl.c:430
+#: remote-curl.c:439
 #, c-format
 msgid "invalid server response; got '%s'"
 msgstr "trả về của máy phục vụ không hợp lệ; nhận được %s"
 
-#: remote-curl.c:490
+#: remote-curl.c:499
 #, c-format
 msgid "repository '%s' not found"
 msgstr "không tìm thấy kho “%s”"
 
-#: remote-curl.c:494
+#: remote-curl.c:503
 #, c-format
 msgid "Authentication failed for '%s'"
 msgstr "Xác thực gặp lỗi cho “%s”"
 
-#: remote-curl.c:498
+#: remote-curl.c:507
 #, c-format
 msgid "unable to access '%s': %s"
 msgstr "không thể truy cập “%s”: %s"
 
-#: remote-curl.c:504
+#: remote-curl.c:513
 #, c-format
 msgid "redirecting to %s"
 msgstr "chuyển hướng đến %s"
 
-#: remote-curl.c:633
+#: remote-curl.c:642
 msgid "shouldn't have EOF when not gentle on EOF"
 msgstr "không nên có EOF khi không gentle trên EOF"
 
-#: remote-curl.c:645
+#: remote-curl.c:654
 msgid "remote server sent stateless separator"
 msgstr "máy phục vụ từ xa gửi các bộ ngăn cách không tình trạng"
 
-#: remote-curl.c:715
+#: remote-curl.c:724
 msgid "unable to rewind rpc post data - try increasing http.postBuffer"
 msgstr "không thể tua lại dữ liệu post rpc - thử tăng http.postBuffer"
 
-#: remote-curl.c:745
+#: remote-curl.c:754
 #, c-format
 msgid "remote-curl: bad line length character: %.4s"
 msgstr "remote-curl: ký tự chiều dài dòng bị sai: %.4s"
 
-#: remote-curl.c:747
+#: remote-curl.c:756
 msgid "remote-curl: unexpected response end packet"
 msgstr "remote-curl: gặp đáp ứng là gói kết thúc bất ngờ"
 
-#: remote-curl.c:823
+#: remote-curl.c:832
 #, c-format
 msgid "RPC failed; %s"
 msgstr "RPC gặp lỗi; %s"
 
-#: remote-curl.c:863
+#: remote-curl.c:872
 msgid "cannot handle pushes this big"
 msgstr "không thể xử lý đẩy cái lớn này"
 
-#: remote-curl.c:978
+#: remote-curl.c:987
 #, c-format
 msgid "cannot deflate request; zlib deflate error %d"
 msgstr "không thể giải nén yêu cầu; có lỗi khi giải nén của zlib %d"
 
-#: remote-curl.c:982
+#: remote-curl.c:991
 #, c-format
 msgid "cannot deflate request; zlib end error %d"
 msgstr "không thể giải nén yêu cầu; có lỗi ở cuối %d"
 
-#: remote-curl.c:1032
+#: remote-curl.c:1041
 #, c-format
 msgid "%d bytes of length header were received"
 msgstr "đã nhận về phần đầu có chiều dài %d byte"
 
-#: remote-curl.c:1034
+#: remote-curl.c:1043
 #, c-format
 msgid "%d bytes of body are still expected"
 msgstr "phần thân vẫn còn cần %d byte"
 
-#: remote-curl.c:1123
+#: remote-curl.c:1132
 msgid "dumb http transport does not support shallow capabilities"
 msgstr "đổ vận chuyển http không hỗ trợ khả năng nông"
 
-#: remote-curl.c:1138
+#: remote-curl.c:1147
 msgid "fetch failed."
 msgstr "lấy về gặp lỗi."
 
-#: remote-curl.c:1184
+#: remote-curl.c:1193
 msgid "cannot fetch by sha1 over smart http"
 msgstr "không thể lấy về bằng sha1 thông qua smart http"
 
-#: remote-curl.c:1228 remote-curl.c:1234
+#: remote-curl.c:1237 remote-curl.c:1243
 #, c-format
 msgid "protocol error: expected sha/ref, got '%s'"
 msgstr "lỗi giao thức: cần sha/ref, nhưng lại nhận được “%s”"
 
-#: remote-curl.c:1246 remote-curl.c:1361
+#: remote-curl.c:1255 remote-curl.c:1373
 #, c-format
 msgid "http transport does not support %s"
 msgstr "vận chuyển http không hỗ trợ %s"
 
-#: remote-curl.c:1282
+#: remote-curl.c:1291
 msgid "git-http-push failed"
 msgstr "git-http-push gặp lỗi"
 
-#: remote-curl.c:1467
+#: remote-curl.c:1479
 msgid "remote-curl: usage: git remote-curl <remote> [<url>]"
 msgstr "remote-curl: usage: git remote-curl <máy chủ> [<url>]"
 
-#: remote-curl.c:1499
+#: remote-curl.c:1511
 msgid "remote-curl: error reading command stream from git"
 msgstr "remote-curl: gặp lỗi khi đọc luồng dữ liệu lệnh từ git"
 
-#: remote-curl.c:1506
+#: remote-curl.c:1518
 msgid "remote-curl: fetch attempted without a local repo"
 msgstr "remote-curl: đã cố gắng fetch mà không có kho nội bộ"
 
-#: remote-curl.c:1547
+#: remote-curl.c:1559
 #, c-format
 msgid "remote-curl: unknown command '%s' from git"
 msgstr "remote-curl: không hiểu lệnh “%s” từ git"
@@ -23636,179 +23770,179 @@ msgid "Output information on each ref"
 msgstr "Xuất thông tin cho từng tham chiếu"
 
 #: command-list.h:99
+msgid "Run a Git command on a list of repositories"
+msgstr "Chạy lệnh Git trên danh sách các kho chứa"
+
+#: command-list.h:100
 msgid "Prepare patches for e-mail submission"
 msgstr "Chuẩn bị các miếng vá để gửi qua thư điện tử"
 
-#: command-list.h:100
+#: command-list.h:101
 msgid "Verifies the connectivity and validity of the objects in the database"
 msgstr ""
 "Thẩm tra lại tính kết nối và tính hiệu lực cảu các đối tượng trong cơ sở dữ "
 "liệu"
 
-#: command-list.h:101
+#: command-list.h:102
 msgid "Cleanup unnecessary files and optimize the local repository"
 msgstr "Dọn dẹp các tập tin không cần thiết và tối ưu kho nội bộ"
 
-#: command-list.h:102
+#: command-list.h:103
 msgid "Extract commit ID from an archive created using git-archive"
 msgstr ""
 "Rút trích mã số lần chuyển giao từ một kho nén đã được tạo bởi git-archive"
 
-#: command-list.h:103
+#: command-list.h:104
 msgid "Print lines matching a pattern"
 msgstr "In ra những dòng khớp với một mẫu"
 
-#: command-list.h:104
+#: command-list.h:105
 msgid "A portable graphical interface to Git"
 msgstr "Một giao diện đồ họa khả chuyển cho Git"
 
-#: command-list.h:105
+#: command-list.h:106
 msgid "Compute object ID and optionally creates a blob from a file"
 msgstr "Tính toán ID đối tượng và tùy chọn là tạo một blob từ một tập tin"
 
-#: command-list.h:106
+#: command-list.h:107
 msgid "Display help information about Git"
 msgstr "Hiển thị thông tin trợ giúp về Git"
 
-#: command-list.h:107
+#: command-list.h:108
 msgid "Server side implementation of Git over HTTP"
 msgstr "Thi hành phía máy chủ của Git qua HTTP"
 
-#: command-list.h:108
+#: command-list.h:109
 msgid "Download from a remote Git repository via HTTP"
 msgstr "Tải về từ một kho chứa Git trên mạng thông qua HTTP"
 
-#: command-list.h:109
+#: command-list.h:110
 msgid "Push objects over HTTP/DAV to another repository"
 msgstr "Đẩy các đối tượng lên thông qua HTTP/DAV đến kho chứa khác"
 
-#: command-list.h:110
+#: command-list.h:111
 msgid "Send a collection of patches from stdin to an IMAP folder"
 msgstr ""
 "Gửi một bộ sưu tập các miếng vá từ đầu vào tiêu chuẩn đến một thư mục IMAP"
 
-#: command-list.h:111
+#: command-list.h:112
 msgid "Build pack index file for an existing packed archive"
 msgstr "Xây dựng tập tin mục lục gói cho một kho nén đã đóng gói sẵn có"
 
-#: command-list.h:112
+#: command-list.h:113
 msgid "Create an empty Git repository or reinitialize an existing one"
 msgstr "Tạo một kho git mới hay khởi tạo lại một kho đã tồn tại từ trước"
 
-#: command-list.h:113
+#: command-list.h:114
 msgid "Instantly browse your working repository in gitweb"
 msgstr "Duyệt ngay kho làm việc của bạn trong gitweb"
 
-#: command-list.h:114
+#: command-list.h:115
 msgid "Add or parse structured information in commit messages"
 msgstr "Thêm hay phân tích thông tin cấu trúc trong ghi chú lần chuyển giao"
 
-#: command-list.h:115
+#: command-list.h:116
 msgid "The Git repository browser"
 msgstr "Bộ duyện kho Git"
 
-#: command-list.h:116
+#: command-list.h:117
 msgid "Show commit logs"
 msgstr "Hiển thị nhật ký các lần chuyển giao"
 
-#: command-list.h:117
+#: command-list.h:118
 msgid "Show information about files in the index and the working tree"
 msgstr "Hiển thị thông tin về các tập tin trong bảng mục lục và cây làm việc"
 
-#: command-list.h:118
+#: command-list.h:119
 msgid "List references in a remote repository"
 msgstr "Liệt kê các tham chiếu trong một kho chứa trên mạng"
 
-#: command-list.h:119
+#: command-list.h:120
 msgid "List the contents of a tree object"
 msgstr "Liệt kê nội dung của đối tượng cây"
 
-#: command-list.h:120
+#: command-list.h:121
 msgid "Extracts patch and authorship from a single e-mail message"
 msgstr "Trích xuất miếng và và nguồn tác giả từ một thư điện tử đơn"
 
-#: command-list.h:121
+#: command-list.h:122
 msgid "Simple UNIX mbox splitter program"
 msgstr "Chương trình phân tách UNIX mbox đơn giản"
 
-#: command-list.h:122
+#: command-list.h:123
 msgid "Run tasks to optimize Git repository data"
 msgstr "Chạy các nhiệm vụ để tối ưu hóa dữ liệu kho Git"
 
-#: command-list.h:123
+#: command-list.h:124
 msgid "Join two or more development histories together"
 msgstr "Hợp nhất hai hay nhiều hơn lịch sử của các nhà phát triển"
 
-#: command-list.h:124
+#: command-list.h:125
 msgid "Find as good common ancestors as possible for a merge"
 msgstr "Tìm các tổ tiên chung tốt có thể được cho hòa trộn"
 
-#: command-list.h:125
+#: command-list.h:126
 msgid "Run a three-way file merge"
 msgstr "Chạy một hòa trộn tập tin “3-đường”"
 
-#: command-list.h:126
+#: command-list.h:127
 msgid "Run a merge for files needing merging"
 msgstr "Chạy một hòa trộn cho các tập tin cần hòa trộn"
 
-#: command-list.h:127
+#: command-list.h:128
 msgid "The standard helper program to use with git-merge-index"
 msgstr "Một chương trình hỗ trợ tiêu chuẩn dùng với git-merge-index"
 
-#: command-list.h:128
+#: command-list.h:129
 msgid "Run merge conflict resolution tools to resolve merge conflicts"
 msgstr ""
 "Chạy công cụ phân giải xung đột hòa trộn để mà giải quyết các xung đột hòa "
 "trộn"
 
-#: command-list.h:129
+#: command-list.h:130
 msgid "Show three-way merge without touching index"
 msgstr "Hiển thị hòa trộn ba-đường mà không đụng chạm đến mục lục"
 
-#: command-list.h:130
+#: command-list.h:131
 msgid "Write and verify multi-pack-indexes"
 msgstr "Ghi và thẩm tra các multi-pack-indexes"
 
-#: command-list.h:131
+#: command-list.h:132
 msgid "Creates a tag object"
 msgstr "Tạo một đối tượng thẻ"
 
-#: command-list.h:132
+#: command-list.h:133
 msgid "Build a tree-object from ls-tree formatted text"
 msgstr "Xây dựng một tree-object từ văn bản định dạng ls-tree"
 
-#: command-list.h:133
+#: command-list.h:134
 msgid "Move or rename a file, a directory, or a symlink"
 msgstr "Di chuyển hay đổi tên một tập tin, thư mục hoặc liên kết mềm"
 
-#: command-list.h:134
+#: command-list.h:135
 msgid "Find symbolic names for given revs"
 msgstr "Tìm các tên liên kết mềm cho điểm xét đã cho"
 
-#: command-list.h:135
+#: command-list.h:136
 msgid "Add or inspect object notes"
 msgstr "Thêm hoặc điều tra đối tượng ghi chú"
 
-#: command-list.h:136
+#: command-list.h:137
 msgid "Import from and submit to Perforce repositories"
 msgstr "Nhập vào từ và gửi đến các kho cần thiết"
 
-#: command-list.h:137
+#: command-list.h:138
 msgid "Create a packed archive of objects"
 msgstr "Tạo một kho lưu được đóng gói cho các đối"
 
-#: command-list.h:138
+#: command-list.h:139
 msgid "Find redundant pack files"
 msgstr "Tìm các tập tin gói dư thừa"
 
-#: command-list.h:139
+#: command-list.h:140
 msgid "Pack heads and tags for efficient repository access"
 msgstr "Đóng gói các phần đầu và thẻ để truy cập kho hiệu quả hơn"
 
-#: command-list.h:140
-msgid "Routines to help parsing remote repository access parameters"
-msgstr "Các thủ tục để giúp phân tích các tham số truy cập kho chứa trên mạng"
-
 #: command-list.h:141
 msgid "Compute unique ID for a patch"
 msgstr "Tính toán ID duy nhất cho một miếng vá"
@@ -24118,49 +24252,34 @@ msgstr "Hướng dẫn cách dùng Git"
 msgid "An overview of recommended workflows with Git"
 msgstr "Tổng quan về luồng công việc khuyến nghị nên dùng với Git"
 
-#: git-bisect.sh:79
+#: git-bisect.sh:48
 #, sh-format
 msgid "Bad rev input: $arg"
 msgstr "Đầu vào rev sai: $arg"
 
-#: git-bisect.sh:99
-#, sh-format
-msgid "Bad rev input: $bisected_head"
-msgstr "Đầu vào rev sai: $bisected_head"
-
-#: git-bisect.sh:108
-#, sh-format
-msgid "Bad rev input: $rev"
-msgstr "Đầu vào rev sai: $rev"
-
-#: git-bisect.sh:117
-#, sh-format
-msgid "'git bisect $TERM_BAD' can take only one argument."
-msgstr "“git bisect $TERM_BAD” có thể lấy chỉ một đối số."
-
-#: git-bisect.sh:149
+#: git-bisect.sh:82
 msgid "No logfile given"
 msgstr "Chưa chỉ ra tập tin ghi nhật ký"
 
-#: git-bisect.sh:150
+#: git-bisect.sh:83
 #, sh-format
 msgid "cannot read $file for replaying"
 msgstr "không thể đọc $file để thao diễn lại"
 
-#: git-bisect.sh:173
+#: git-bisect.sh:105
 msgid "?? what are you talking about?"
 msgstr "?? bạn đang nói gì thế?"
 
-#: git-bisect.sh:183
+#: git-bisect.sh:115
 msgid "bisect run failed: no command provided."
 msgstr "bisect chạy gặp lỗi: không đưa ra lệnh."
 
-#: git-bisect.sh:188
+#: git-bisect.sh:120
 #, sh-format
 msgid "running $command"
 msgstr "đang chạy lệnh $command"
 
-#: git-bisect.sh:195
+#: git-bisect.sh:127
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -24169,24 +24288,24 @@ msgstr ""
 "chạy bisect gặp lỗi:\n"
 "mã trả về $res từ lệnh “$command” là < 0 hoặc >= 128"
 
-#: git-bisect.sh:221
+#: git-bisect.sh:152
 msgid "bisect run cannot continue any more"
 msgstr "bisect không thể tiếp tục thêm được nữa"
 
-#: git-bisect.sh:227
+#: git-bisect.sh:158
 #, sh-format
 msgid ""
 "bisect run failed:\n"
-"'bisect_state $state' exited with error code $res"
+"'bisect-state $state' exited with error code $res"
 msgstr ""
 "chạy bisect gặp lỗi:\n"
-"”bisect_state $state” đã thoát ra với mã lỗi $res"
+"”bisect-state $state” đã thoát ra với mã lỗi $res"
 
-#: git-bisect.sh:234
+#: git-bisect.sh:165
 msgid "bisect run success"
 msgstr "bisect chạy thành công"
 
-#: git-bisect.sh:242
+#: git-bisect.sh:173
 msgid "We are not bisecting."
 msgstr "Chúng tôi không bisect."
 
@@ -24230,52 +24349,52 @@ msgstr "Đang thử hòa trộn đơn giản với $pretty_name"
 msgid "Simple merge did not work, trying automatic merge."
 msgstr "Hòa trộn đơn giản không làm việc, thử hòa trộn tự động."
 
-#: git-submodule.sh:180
+#: git-submodule.sh:179
 msgid "Relative path can only be used from the toplevel of the working tree"
 msgstr ""
 "Đường dẫn tương đối chỉ có thể dùng từ thư mục ở mức cao nhất của cây làm "
 "việc"
 
-#: git-submodule.sh:190
+#: git-submodule.sh:189
 #, sh-format
 msgid "repo URL: '$repo' must be absolute or begin with ./|../"
 msgstr ""
 "repo URL: “$repo” phải là đường dẫn tuyệt đối hoặc là bắt đầu bằng ./|../"
 
-#: git-submodule.sh:209
+#: git-submodule.sh:208
 #, sh-format
 msgid "'$sm_path' already exists in the index"
 msgstr "”$sm_path” thực sự đã tồn tại ở bảng mục lục rồi"
 
-#: git-submodule.sh:212
+#: git-submodule.sh:211
 #, sh-format
 msgid "'$sm_path' already exists in the index and is not a submodule"
 msgstr ""
 "”$sm_path” thực sự đã tồn tại ở bảng mục lục rồi và không phải là một mô-đun-"
 "con"
 
-#: git-submodule.sh:219
+#: git-submodule.sh:218
 #, sh-format
 msgid "'$sm_path' does not have a commit checked out"
 msgstr "“$sm_path” không có lần chuyển giao nào được lấy ra"
 
-#: git-submodule.sh:250
+#: git-submodule.sh:249
 #, sh-format
 msgid "Adding existing repo at '$sm_path' to the index"
 msgstr "Đang thêm repo có sẵn tại “$sm_path” vào bảng mục lục"
 
-#: git-submodule.sh:252
+#: git-submodule.sh:251
 #, sh-format
 msgid "'$sm_path' already exists and is not a valid git repo"
 msgstr "”$sm_path” đã tồn tại từ trước và không phải là một kho git hợp lệ"
 
-#: git-submodule.sh:260
+#: git-submodule.sh:259
 #, sh-format
 msgid "A git directory for '$sm_name' is found locally with remote(s):"
 msgstr ""
 "Thư mục git cho “$sm_name” được tìm thấy một cách cục bộ với các máy chủ:"
 
-#: git-submodule.sh:262
+#: git-submodule.sh:261
 #, sh-format
 msgid ""
 "If you want to reuse this local git directory instead of cloning again from\n"
@@ -24291,40 +24410,40 @@ msgstr ""
 "hoặc là bạn không chắc chắn điều đó nghĩa là gì thì chọn tên khác với tùy "
 "chọn “--name”."
 
-#: git-submodule.sh:268
+#: git-submodule.sh:267
 #, sh-format
 msgid "Reactivating local git directory for submodule '$sm_name'."
 msgstr ""
 "Phục hồi sự hoạt động của thư mục git nội bộ cho mô-đun-con “$sm_name”."
 
-#: git-submodule.sh:280
+#: git-submodule.sh:279
 #, sh-format
 msgid "Unable to checkout submodule '$sm_path'"
 msgstr "Không thể lấy ra mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:285
+#: git-submodule.sh:284
 #, sh-format
 msgid "Failed to add submodule '$sm_path'"
 msgstr "Gặp lỗi khi thêm mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:294
+#: git-submodule.sh:293
 #, sh-format
 msgid "Failed to register submodule '$sm_path'"
 msgstr "Gặp lỗi khi đăng ký với hệ thống mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:567
+#: git-submodule.sh:568
 #, sh-format
 msgid "Unable to find current revision in submodule path '$displaypath'"
 msgstr ""
 "Không tìm thấy điểm xét duyệt hiện hành trong đường dẫn mô-đun-con "
 "“$displaypath”"
 
-#: git-submodule.sh:577
+#: git-submodule.sh:578
 #, sh-format
 msgid "Unable to fetch in submodule path '$sm_path'"
 msgstr "Không thể lấy về trong đường dẫn mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:582
+#: git-submodule.sh:583
 #, sh-format
 msgid ""
 "Unable to find current ${remote_name}/${branch} revision in submodule path "
@@ -24333,7 +24452,7 @@ msgstr ""
 "Không thể tìm thấy điểm xét duyệt hiện hành ${remote_name}/${branch} trong "
 "đường dẫn mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:600
+#: git-submodule.sh:601
 #, sh-format
 msgid ""
 "Unable to fetch in submodule path '$displaypath'; trying to directly fetch "
@@ -24342,7 +24461,7 @@ msgstr ""
 "Không thể lấy về trong đường dẫn mô-đun-con “$displaypath”; thử lấy về trực "
 "tiếp $sha1:"
 
-#: git-submodule.sh:606
+#: git-submodule.sh:607
 #, sh-format
 msgid ""
 "Fetched in submodule path '$displaypath', but it did not contain $sha1. "
@@ -24351,59 +24470,54 @@ msgstr ""
 "Đã lấy về từ đường dẫn mô-đun con “$displaypath”, nhưng nó không chứa $sha1. "
 "Lấy về theo định hướng của lần chuyển giao đó gặp lỗi."
 
-#: git-submodule.sh:613
+#: git-submodule.sh:614
 #, sh-format
 msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
 msgstr "Không thể lấy ra “$sha1” trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:614
+#: git-submodule.sh:615
 #, sh-format
 msgid "Submodule path '$displaypath': checked out '$sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: đã checkout “$sha1”"
 
-#: git-submodule.sh:618
+#: git-submodule.sh:619
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
 msgstr "Không thể cải tổ “$sha1” trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:619
+#: git-submodule.sh:620
 #, sh-format
 msgid "Submodule path '$displaypath': rebased into '$sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: được rebase vào trong “$sha1”"
 
-#: git-submodule.sh:624
+#: git-submodule.sh:625
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
 msgstr ""
 "Không thể hòa trộn (merge) “$sha1” trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:625
+#: git-submodule.sh:626
 #, sh-format
 msgid "Submodule path '$displaypath': merged in '$sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: được hòa trộn vào “$sha1”"
 
-#: git-submodule.sh:630
+#: git-submodule.sh:631
 #, sh-format
 msgid "Execution of '$command $sha1' failed in submodule path '$displaypath'"
 msgstr ""
 "Thực hiện không thành công lệnh “$command $sha1” trong đường dẫn mô-đun-con "
 "“$displaypath”"
 
-#: git-submodule.sh:631
+#: git-submodule.sh:632
 #, sh-format
 msgid "Submodule path '$displaypath': '$command $sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: “$command $sha1”"
 
-#: git-submodule.sh:662
+#: git-submodule.sh:663
 #, sh-format
 msgid "Failed to recurse into submodule path '$displaypath'"
 msgstr "Gặp lỗi khi đệ quy vào trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-parse-remote.sh:89
-#, sh-format
-msgid "See git-${cmd}(1) for details."
-msgstr "Xem git-${cmd}(1) để biết thêm chi tiết."
-
 #: git-rebase--preserve-merges.sh:109
 msgid "Applied autostash."
 msgstr "Đã áp dụng autostash."
@@ -24806,13 +24920,13 @@ msgstr "Không thể dò tìm đường dẫn tuyệt đối của thư mục gi
 msgid "%12s %12s %s"
 msgstr "%12s %12s %s"
 
-#: git-add--interactive.perl:634
+#: git-add--interactive.perl:632
 #, perl-format
 msgid "touched %d path\n"
 msgid_plural "touched %d paths\n"
 msgstr[0] "%d đường dẫn đã touch (chạm)\n"
 
-#: git-add--interactive.perl:1058
+#: git-add--interactive.perl:1056
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for staging."
@@ -24820,7 +24934,7 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức\n"
 "được đánh dấu để chuyển lên bệ phóng."
 
-#: git-add--interactive.perl:1061
+#: git-add--interactive.perl:1059
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for stashing."
@@ -24828,7 +24942,7 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức\n"
 "được đánh dấu để tạm cất."
 
-#: git-add--interactive.perl:1064
+#: git-add--interactive.perl:1062
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for unstaging."
@@ -24836,8 +24950,8 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức\n"
 "được đánh dấu để bỏ chuyển lên bệ phóng."
 
-#: git-add--interactive.perl:1067 git-add--interactive.perl:1076
-#: git-add--interactive.perl:1082
+#: git-add--interactive.perl:1065 git-add--interactive.perl:1074
+#: git-add--interactive.perl:1080
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for applying."
@@ -24845,8 +24959,8 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức\n"
 "được đánh dấu để áp dụng."
 
-#: git-add--interactive.perl:1070 git-add--interactive.perl:1073
-#: git-add--interactive.perl:1079
+#: git-add--interactive.perl:1068 git-add--interactive.perl:1071
+#: git-add--interactive.perl:1077
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for discarding."
@@ -24854,12 +24968,12 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức\n"
 "được đánh dấu để loại bỏ."
 
-#: git-add--interactive.perl:1116
+#: git-add--interactive.perl:1114
 #, perl-format
 msgid "failed to open hunk edit file for writing: %s"
 msgstr "gặp lỗi khi tập tin sửa khúc để ghi: %s"
 
-#: git-add--interactive.perl:1123
+#: git-add--interactive.perl:1121
 #, perl-format
 msgid ""
 "---\n"
@@ -24872,12 +24986,12 @@ msgstr ""
 "Để xóa bỏ dòng “%s”, xóa chúng đi.\n"
 "Những dòng bắt đầu bằng %s sẽ bị loại bỏ.\n"
 
-#: git-add--interactive.perl:1145
+#: git-add--interactive.perl:1143
 #, perl-format
 msgid "failed to open hunk edit file for reading: %s"
 msgstr "gặp lỗi khi mở tập tin khúc để đọc: %s"
 
-#: git-add--interactive.perl:1253
+#: git-add--interactive.perl:1251
 msgid ""
 "y - stage this hunk\n"
 "n - do not stage this hunk\n"
@@ -24892,7 +25006,7 @@ msgstr ""
 "d - đừng đưa lên bệ phóng khúc này cũng như bất kỳ cái nào còn lại trong tập "
 "tin"
 
-#: git-add--interactive.perl:1259
+#: git-add--interactive.perl:1257
 msgid ""
 "y - stash this hunk\n"
 "n - do not stash this hunk\n"
@@ -24906,7 +25020,7 @@ msgstr ""
 "a - tạm cất khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng tạm cất khúc này cũng như bất kỳ cái nào còn lại trong tập tin"
 
-#: git-add--interactive.perl:1265
+#: git-add--interactive.perl:1263
 msgid ""
 "y - unstage this hunk\n"
 "n - do not unstage this hunk\n"
@@ -24922,7 +25036,7 @@ msgstr ""
 "d - đừng đưa ra khỏi bệ phóng khúc này cũng như bất kỳ cái nào còn lại trong "
 "tập tin"
 
-#: git-add--interactive.perl:1271
+#: git-add--interactive.perl:1269
 msgid ""
 "y - apply this hunk to index\n"
 "n - do not apply this hunk to index\n"
@@ -24936,7 +25050,7 @@ msgstr ""
 "a - áp dụng khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng áp dụng khúc này cũng như bất kỳ cái nào sau này trong tập tin"
 
-#: git-add--interactive.perl:1277 git-add--interactive.perl:1295
+#: git-add--interactive.perl:1275 git-add--interactive.perl:1293
 msgid ""
 "y - discard this hunk from worktree\n"
 "n - do not discard this hunk from worktree\n"
@@ -24950,7 +25064,7 @@ msgstr ""
 "a - loại bỏ khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng loại bỏ khúc này cũng như bất kỳ cái nào sau này trong tập tin"
 
-#: git-add--interactive.perl:1283
+#: git-add--interactive.perl:1281
 msgid ""
 "y - discard this hunk from index and worktree\n"
 "n - do not discard this hunk from index and worktree\n"
@@ -24964,7 +25078,7 @@ msgstr ""
 "a - loại bỏ khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng loại bỏ khúc này cũng như bất kỳ cái nào sau này trong tập tin"
 
-#: git-add--interactive.perl:1289
+#: git-add--interactive.perl:1287
 msgid ""
 "y - apply this hunk to index and worktree\n"
 "n - do not apply this hunk to index and worktree\n"
@@ -24978,7 +25092,7 @@ msgstr ""
 "a - áp dụng khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng áp dụng khúc này cũng như bất kỳ cái nào sau này trong tập tin"
 
-#: git-add--interactive.perl:1301
+#: git-add--interactive.perl:1299
 msgid ""
 "y - apply this hunk to worktree\n"
 "n - do not apply this hunk to worktree\n"
@@ -24992,7 +25106,7 @@ msgstr ""
 "a - áp dụng khúc này và tất cả các khúc sau này trong tập tin\n"
 "d - đừng áp dụng khúc này cũng như bất kỳ cái nào sau này trong tập tin"
 
-#: git-add--interactive.perl:1316
+#: git-add--interactive.perl:1314
 msgid ""
 "g - select a hunk to go to\n"
 "/ - search for a hunk matching the given regex\n"
@@ -25014,88 +25128,88 @@ msgstr ""
 "e - sửa bằng tay khúc hiện hành\n"
 "? - in trợ giúp\n"
 
-#: git-add--interactive.perl:1347
+#: git-add--interactive.perl:1345
 msgid "The selected hunks do not apply to the index!\n"
 msgstr "Các khúc đã chọn không được áp dụng vào bảng mục lục!\n"
 
-#: git-add--interactive.perl:1362
+#: git-add--interactive.perl:1360
 #, perl-format
 msgid "ignoring unmerged: %s\n"
 msgstr "bỏ qua những thứ chưa hòa trộn: %s\n"
 
-#: git-add--interactive.perl:1481
+#: git-add--interactive.perl:1479
 #, perl-format
 msgid "Apply mode change to worktree [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng thay đổi chế độ cho cây làm việc [y,n,q,a,d%s,?]? "
 
-#: git-add--interactive.perl:1482
+#: git-add--interactive.perl:1480
 #, perl-format
 msgid "Apply deletion to worktree [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng việc xóa cho cây làm việc [y,n,q,a,d%s,?]? "
 
-#: git-add--interactive.perl:1483
+#: git-add--interactive.perl:1481
 #, perl-format
 msgid "Apply addition to worktree [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng việc thêm cho cây làm việc [y,n,q,a,d%s,?]? "
 
-#: git-add--interactive.perl:1484
+#: git-add--interactive.perl:1482
 #, perl-format
 msgid "Apply this hunk to worktree [y,n,q,a,d%s,?]? "
 msgstr "Áp dụng khúc này vào cây làm việc [y,n,q,a,d%s,?]? "
 
-#: git-add--interactive.perl:1601
+#: git-add--interactive.perl:1599
 msgid "No other hunks to goto\n"
 msgstr "Không còn khúc nào để mà nhảy đến\n"
 
-#: git-add--interactive.perl:1619
+#: git-add--interactive.perl:1617
 #, perl-format
 msgid "Invalid number: '%s'\n"
 msgstr "Số không hợp lệ: “%s”\n"
 
-#: git-add--interactive.perl:1624
+#: git-add--interactive.perl:1622
 #, perl-format
 msgid "Sorry, only %d hunk available.\n"
 msgid_plural "Sorry, only %d hunks available.\n"
 msgstr[0] "Rất tiếc, chỉ có sẵn %d khúc.\n"
 
-#: git-add--interactive.perl:1659
+#: git-add--interactive.perl:1657
 msgid "No other hunks to search\n"
 msgstr "Không còn khúc nào để mà tìm kiếm\n"
 
-#: git-add--interactive.perl:1676
+#: git-add--interactive.perl:1674
 #, perl-format
 msgid "Malformed search regexp %s: %s\n"
 msgstr "Định dạng tìm kiếm của biểu thức chính quy không đúng %s: %s\n"
 
-#: git-add--interactive.perl:1686
+#: git-add--interactive.perl:1684
 msgid "No hunk matches the given pattern\n"
 msgstr "Không thấy khúc nào khớp mẫu đã cho\n"
 
-#: git-add--interactive.perl:1698 git-add--interactive.perl:1720
+#: git-add--interactive.perl:1696 git-add--interactive.perl:1718
 msgid "No previous hunk\n"
 msgstr "Không có khúc kế trước\n"
 
-#: git-add--interactive.perl:1707 git-add--interactive.perl:1726
+#: git-add--interactive.perl:1705 git-add--interactive.perl:1724
 msgid "No next hunk\n"
 msgstr "Không có khúc kế tiếp\n"
 
-#: git-add--interactive.perl:1732
+#: git-add--interactive.perl:1730
 msgid "Sorry, cannot split this hunk\n"
 msgstr "Rất tiếc, không thể chia nhỏ khúc này\n"
 
-#: git-add--interactive.perl:1738
+#: git-add--interactive.perl:1736
 #, perl-format
 msgid "Split into %d hunk.\n"
 msgid_plural "Split into %d hunks.\n"
 msgstr[0] "Chi nhỏ thành %d khúc.\n"
 
-#: git-add--interactive.perl:1748
+#: git-add--interactive.perl:1746
 msgid "Sorry, cannot edit this hunk\n"
 msgstr "Rất tiếc, không thể sửa khúc này\n"
 
 #. TRANSLATORS: please do not translate the command names
 #. 'status', 'update', 'revert', etc.
-#: git-add--interactive.perl:1813
+#: git-add--interactive.perl:1811
 msgid ""
 "status        - show paths with changes\n"
 "update        - add working tree state to the staged set of changes\n"
@@ -25115,19 +25229,19 @@ msgstr ""
 "add untracked - thêm nội dung các các tập tin chưa theo dõi và tập hợp các "
 "thay đổi đã đặt lên bệ phóng\n"
 
-#: git-add--interactive.perl:1830 git-add--interactive.perl:1835
-#: git-add--interactive.perl:1838 git-add--interactive.perl:1845
-#: git-add--interactive.perl:1848 git-add--interactive.perl:1855
-#: git-add--interactive.perl:1859 git-add--interactive.perl:1865
+#: git-add--interactive.perl:1828 git-add--interactive.perl:1840
+#: git-add--interactive.perl:1843 git-add--interactive.perl:1850
+#: git-add--interactive.perl:1853 git-add--interactive.perl:1860
+#: git-add--interactive.perl:1864 git-add--interactive.perl:1870
 msgid "missing --"
 msgstr "thiếu --"
 
-#: git-add--interactive.perl:1861
+#: git-add--interactive.perl:1866
 #, perl-format
 msgid "unknown --patch mode: %s"
 msgstr "không hiểu chế độ --patch: %s"
 
-#: git-add--interactive.perl:1867 git-add--interactive.perl:1873
+#: git-add--interactive.perl:1872 git-add--interactive.perl:1878
 #, perl-format
 msgid "invalid argument %s, expecting --"
 msgstr "đối số không hợp lệ %s, cần --"
@@ -25165,8 +25279,8 @@ msgid ""
 "git-send-email is configured with the sendemail.* options - note the 'e'.\n"
 "Set sendemail.forbidSendmailVariables to false to disable this check.\n"
 msgstr ""
-"lỗi nghiêm trọng: tìm thấy các tùy chọn cấu hình cho 'sendmail'\n"
-"git-send-email được cấu hình với các tùy chọn sendemail.* - chú ý 'e'.\n"
+"lỗi nghiêm trọng: tìm thấy các tùy chọn cấu hình cho “sendmail”\n"
+"git-send-email được cấu hình với các tùy chọn sendemail.* - chú ý “e”.\n"
 "Đặt sendemail.forbidSendmailVariables thành false để tắt kiểm tra này.\n"
 
 #: git-send-email.perl:489 git-send-email.perl:691
@@ -25504,6 +25618,119 @@ msgstr "Bỏ qua %s với hậu tố sao lưu dự phòng “%s”.\n"
 msgid "Do you really want to send %s? [y|N]: "
 msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 
+#~ msgid "Counting distinct commits in commit graph"
+#~ msgstr "Đang đếm các lần chuyển giao khác nhau trong đồ thị lần chuyển giao"
+
+#, c-format
+#~ msgid "the commit graph format cannot write %d commits"
+#~ msgstr ""
+#~ "định dạng đồ họa các lần chuyển giao không thể ghi %d lần chuyển giao"
+
+#~ msgid "store only"
+#~ msgstr "chỉ lưu (không nén)"
+
+#~ msgid "compress faster"
+#~ msgstr "nén nhanh hơn"
+
+#~ msgid "compress better"
+#~ msgstr "nén nhỏ hơn"
+
+#~ msgid "unexpected duplicate commit id %s"
+#~ msgstr "gặp mã số tích lần chuyển giao bị trùng lặp “%s”"
+
+#~ msgid "error preparing packfile from multi-pack-index"
+#~ msgstr "lỗi chuẩn bị tập tin gói từ multi-pack-index"
+
+#~ msgid "%s: not a valid OID"
+#~ msgstr "%s không phải là một OID hợp lệ"
+
+#~ msgid "invalid committer '%s'"
+#~ msgstr "chuyển giao không hợp lệ “%s”"
+
+#~ msgid "invalid committer: %s"
+#~ msgstr "chuyển giao không hợp lệ: %s"
+
+#~ msgid "git bisect--helper --next-all"
+#~ msgstr "git bisect--helper --next-all"
+
+#~ msgid "git bisect--helper --write-terms <bad_term> <good_term>"
+#~ msgstr "git bisect--helper --write-terms <bad_term> <good_term>"
+
+#~ msgid "git bisect--helper --bisect-clean-state"
+#~ msgstr "git bisect--helper --bisect-clean-state"
+
+#~ msgid "git bisect--helper --bisect-autostart"
+#~ msgstr "git bisect--helper --bisect-autostart"
+
+#~ msgid "perform 'git bisect next'"
+#~ msgstr "thực hiện “git bisect next”"
+
+#~ msgid "write the terms to .git/BISECT_TERMS"
+#~ msgstr "ghi thời kỳ vào .git/BISECT_TERMS"
+
+#~ msgid "cleanup the bisection state"
+#~ msgstr "dọn dẹp tình trạng di chuyển nửa bước"
+
+#~ msgid "check for expected revs"
+#~ msgstr "kiểm tra cho điểm xem xét cần dùng"
+
+#~ msgid "start the bisection if it has not yet been started"
+#~ msgstr "chạy di chuyển phân đôi nếu nó vẫn chưa được khởi chạy"
+
+#~ msgid "--write-terms requires two arguments"
+#~ msgstr "--write-terms cần hai tham số"
+
+#~ msgid "--bisect-clean-state requires no arguments"
+#~ msgstr "--bisect-clean-state không nhận đối số"
+
+#~ msgid "--bisect-autostart does not accept arguments"
+#~ msgstr "--bisect-autostart không nhận đối số"
+
+#~ msgid "n,m"
+#~ msgstr "n,m"
+
+#~ msgid "Process line range n,m in file, counting from 1"
+#~ msgstr "Xử lý chỉ dòng vùng n,m trong tập tin, tính từ 1"
+
+#~ msgid "name of output directory is too long"
+#~ msgstr "tên của thư mục kết xuất quá dài"
+
+#~ msgid "standard output, or directory, which one?"
+#~ msgstr "đầu ra chuẩn, hay thư mục, chọn cái nào?"
+
+#~ msgid ""
+#~ "WARNING: Some packs in use have been renamed by\n"
+#~ "WARNING: prefixing old- to their name, in order to\n"
+#~ "WARNING: replace them with the new version of the\n"
+#~ "WARNING: file.  But the operation failed, and the\n"
+#~ "WARNING: attempt to rename them back to their\n"
+#~ "WARNING: original names also failed.\n"
+#~ "WARNING: Please rename them in %s manually:\n"
+#~ msgstr ""
+#~ "CẢNH BÁO: Một số gói đang dùng vừa được đổi tên bằng cách\n"
+#~ "CẢNH BÁO: đánh tiền tố old- vào tên của chúng, mục đích là\n"
+#~ "CẢNH BÁO: thay chúng bằng phiên bản mới của tập\n"
+#~ "CẢNH BÁO: tin. Nhưng thao tác lại gặp lỗi, và nỗ\n"
+#~ "CẢNH BÁO: lực để đổi ngược lại tên chúng cho đúng với tên\n"
+#~ "CẢNH BÁO: nguyên gốc của nó cũng gặp lỗi.\n"
+#~ "CẢNH BÁO: Vui lòng đổi tên chúng trong %s bằng tay:\n"
+
+#~ msgid "failed to remove '%s'"
+#~ msgstr "gặp lỗi khi gỡ bỏ “%s”"
+
+#~ msgid "Routines to help parsing remote repository access parameters"
+#~ msgstr ""
+#~ "Các thủ tục để giúp phân tích các tham số truy cập kho chứa trên mạng"
+
+#~ msgid "Bad rev input: $bisected_head"
+#~ msgstr "Đầu vào rev sai: $bisected_head"
+
+#~ msgid "Bad rev input: $rev"
+#~ msgstr "Đầu vào rev sai: $rev"
+
+#~ msgid "See git-${cmd}(1) for details."
+#~ msgstr "Xem git-${cmd}(1) để biết thêm chi tiết."
+
 #~ msgid "unknown hash algorithm length"
 #~ msgstr "không hiểu chiều dài thuật toán băm dữ liệu"
 
@@ -25516,54 +25743,42 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "Writing changed paths Bloom filters index"
 #~ msgstr "Ghi dữ liệu các mục lục Bloom đường dẫn đã bị thay đổi"
 
-#, c-format
 #~ msgid "hash version %u does not match"
 #~ msgstr "phiên bản băm “%u” không khớp"
 
 #~ msgid "Remote with no URL"
 #~ msgstr "Máy chủ không có địa chỉ URL"
 
-#, c-format
 #~ msgid "%%(subject) does not take arguments"
 #~ msgstr "%%(subject) không nhận các đối số"
 
-#, c-format
 #~ msgid "positive value expected objectname:short=%s"
 #~ msgstr "cần nội dung mang giá trị dương:shot=%s"
 
-#, c-format
 #~ msgid "unrecognized %%(objectname) argument: %s"
 #~ msgstr "đối số không được thừa nhận %%(objectname): %s"
 
-#, c-format
 #~ msgid "option `%s' is incompatible with --merged"
 #~ msgstr "tùy chọn “%s” là xung khắc với tùy chọn --merged"
 
-#, c-format
 #~ msgid "option `%s' is incompatible with --no-merged"
 #~ msgstr "tùy chọn “%s” là xung khắc với tùy chọn --no-merged"
 
-#, c-format
 #~ msgid "could not open '%s' for writing: %s"
 #~ msgstr "không thể mở “%s” để ghi: %s"
 
-#, c-format
 #~ msgid "could not read ref '%s'"
 #~ msgstr "không thể đọc tham chiếu “%s”"
 
-#, c-format
 #~ msgid "ref '%s' already exists"
 #~ msgstr "tham chiếu “%s” đã có từ trước rồi"
 
-#, c-format
 #~ msgid "unexpected object ID when writing '%s'"
 #~ msgstr "không cần ID đối tượng khi ghi “%s”"
 
-#, c-format
 #~ msgid "unexpected object ID when deleting '%s'"
 #~ msgstr "gặp ID đối tượng không cần khi xóa “%s”"
 
-#, c-format
 #~ msgid "The hash algorithm %s is not supported in this build."
 #~ msgstr "Thuật toán băm %s không được hỗ trợ trong bản biên dịch này."
 
@@ -25584,52 +25799,41 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "The --cached option cannot be used with the --files option"
 #~ msgstr "Tùy chọn --cached không thể dùng cùng với tùy chọn --files"
 
-#, sh-format
 #~ msgid "  Warn: $display_name doesn't contain commit $sha1_src"
 #~ msgstr "  Cảnh báo: $display_name không chứa lần chuyển giao $sha1_src"
 
-#, sh-format
 #~ msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
 #~ msgstr "  Cảnh báo: $display_name không chứa lần chuyển giao $sha1_dst"
 
-#, sh-format
 #~ msgid ""
 #~ "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
 #~ msgstr ""
 #~ "  Cảnh báo: $display_name không chứa những lần chuyển giao $sha1_src và "
 #~ "$sha1_dst"
 
-#, c-format
 #~ msgid "Finding commits for commit graph from %d ref"
 #~ msgid_plural "Finding commits for commit graph from %d refs"
 #~ msgstr[0] ""
 #~ "Đang tìm các lần chuyển giao cho đồ thị lần chuyển giao từ %d tham chiếu"
 
-#, c-format
 #~ msgid "invalid commit object id: %s"
 #~ msgstr "mã số đối tượng lần chuyển giao không hợp lệ: %s"
 
-#, c-format
 #~ msgid "Removing worktrees/%s: not a valid directory"
 #~ msgstr "Gỡ bỏ cây làm việc/%s: không phải là thư mục hợp lệ"
 
-#, c-format
 #~ msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
 #~ msgstr "Gỡ bỏ cây làm việc/%s: không thể đọc tập tin gitdir (%s)"
 
-#, c-format
 #~ msgid "Removing worktrees/%s: invalid gitdir file"
 #~ msgstr "Gỡ bỏ cây làm việc/%s: tập tin gitdir không hợp lệ"
 
-#, c-format
 #~ msgid "unable to re-add worktree '%s'"
 #~ msgstr "không thể thêm-lại cây “%s”"
 
-#, c-format
 #~ msgid "target '%s' already exists"
 #~ msgstr "đích “%s” đã tồn tại rồi"
 
-#, c-format
 #~ msgid ""
 #~ "Cannot update sparse checkout: the following entries are not up to date:\n"
 #~ "%s"
@@ -25637,7 +25841,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ "Không thể cập nhật checkout rải rác: các mục tin sau đây chưa cập nhật:\n"
 #~ "%s"
 
-#, c-format
 #~ msgid ""
 #~ "The following working tree files would be overwritten by sparse checkout "
 #~ "update:\n"
@@ -25647,7 +25850,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ "nhật checkout rải rác:\n"
 #~ "%s"
 
-#, c-format
 #~ msgid ""
 #~ "The following working tree files would be removed by sparse checkout "
 #~ "update:\n"
@@ -25657,7 +25859,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ "nhật checkout rải rác:\n"
 #~ "%s"
 
-#, c-format
 #~ msgid "annotated tag %s has no embedded name"
 #~ msgstr "thẻ được chú giải %s không có tên nhúng"
 
@@ -25670,11 +25871,9 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "(DEPRECATED) keep empty commits"
 #~ msgstr "(CŨ) giữ lại các lần chuyển giao rỗng"
 
-#, c-format
 #~ msgid "Could not read '%s'"
 #~ msgstr "Không thể đọc “%s”"
 
-#, c-format
 #~ msgid "Cannot store %s"
 #~ msgstr "Không thể lưu “%s”"
 
@@ -25687,42 +25886,33 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "disable sparse-checkout"
 #~ msgstr "tắt sparse-checkout"
 
-#, c-format
 #~ msgid "could not exec %s"
 #~ msgstr "không thể thực thi %s"
 
 #~ msgid "Cannot remove temporary index (can't happen)"
 #~ msgstr "Không thể gỡ bỏ bảng mục lục tạm thời (không thể xảy ra)"
 
-#, sh-format
 #~ msgid "Cannot update $ref_stash with $w_commit"
 #~ msgstr "Không thể cập nhật $ref_stash với $w_commit"
 
-#, sh-format
 #~ msgid "error: unknown option for 'stash push': $option"
 #~ msgstr "lỗi: không hiểu tùy chọn cho “stash push”: $option"
 
-#, sh-format
 #~ msgid "Saved working directory and index state $stash_msg"
 #~ msgstr "Đã ghi lại thư mục làm việc và trạng thái mục lục $stash_msg"
 
-#, sh-format
 #~ msgid "unknown option: $opt"
 #~ msgstr "không hiểu tùy chọn: $opt"
 
-#, sh-format
 #~ msgid "Too many revisions specified: $REV"
 #~ msgstr "Chỉ ra quá nhiều điểm xét duyệt: $REV"
 
-#, sh-format
 #~ msgid "$reference is not a valid reference"
 #~ msgstr "$reference không phải là tham chiếu hợp lệ"
 
-#, sh-format
 #~ msgid "'$args' is not a stash-like commit"
 #~ msgstr "“$args” không phải là lần chuyển giao kiểu-stash (cất đi)"
 
-#, sh-format
 #~ msgid "'$args' is not a stash reference"
 #~ msgstr "”$args” không phải tham chiếu đến stash"
 
@@ -25745,26 +25935,21 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "Cannot unstage modified files"
 #~ msgstr "Không thể bỏ ra khỏi bệ phóng các tập tin đã được sửa chữa"
 
-#, sh-format
 #~ msgid "Dropped ${REV} ($s)"
 #~ msgstr "Đã xóa ${REV} ($s)"
 
-#, sh-format
 #~ msgid "${REV}: Could not drop stash entry"
 #~ msgstr "${REV}: Không thể xóa bỏ mục stash"
 
 #~ msgid "(To restore them type \"git stash apply\")"
 #~ msgstr "(Để phục hồi lại chúng hãy gõ \"git stash apply\")"
 
-#, c-format
 #~ msgid "Stage mode change [y,n,a,q,d%s,?]? "
 #~ msgstr "Thay đổi chế độ bệ phóng [y,n,a,q,d%s,?]? "
 
-#, c-format
 #~ msgid "Stage deletion [y,n,a,q,d%s,?]? "
 #~ msgstr "Xóa khỏi bệ phóng [y,n,a,q,d%s,?]? "
 
-#, c-format
 #~ msgid "Stage this hunk [y,n,a,q,d%s,?]? "
 #~ msgstr "Đưa lên bệ phóng khúc này [y,n,a,q,d%s,?]? "
 
@@ -25789,38 +25974,30 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ "a - đưa lên bệ phóng khúc này và tất cả các khúc còn lại sau này\n"
 #~ "d - đừng đưa lên bệ phóng khúc này cũng như bất kỳ cái nào còn lại\n"
 
-#, c-format
 #~ msgid "could not copy '%s' to '%s'."
 #~ msgstr "không thể chép “%s” sang “%s”."
 
 #~ msgid "malformed ident line"
 #~ msgstr "dòng định danh không hợp lệ"
 
-#, c-format
 #~ msgid "could not parse '%.*s'"
 #~ msgstr "không thể phân tích cú pháp “%.*s”"
 
-#, c-format
 #~ msgid "could not checkout %s"
 #~ msgstr "không thể lấy ra %s"
 
-#, c-format
 #~ msgid "filename in tree entry contains backslash: '%s'"
-#~ msgstr "tên tập tin trong mục tin cây có chứa ký tự gạch ngược: '%s'"
+#~ msgstr "tên tập tin trong mục tin cây có chứa ký tự gạch ngược: “%s”"
 
-#, c-format
 #~ msgid "Use -f if you really want to add them.\n"
 #~ msgstr "Sử dụng tùy chọn -f nếu bạn thực sự muốn thêm chúng vào.\n"
 
-#, c-format
 #~ msgid "Maybe you wanted to say 'git add .'?\n"
 #~ msgstr "Có lẽ ý bạn là “git add .” phải không?\n"
 
-#, c-format
 #~ msgid "packfile is invalid: %s"
 #~ msgstr "tập tin gói không hợp lệ: %s"
 
-#, c-format
 #~ msgid "unable to open packfile for reuse: %s"
 #~ msgstr "không thể mở tập tin gói để dùng lại: %s"
 
@@ -25839,7 +26016,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "cannot combine --use-bitmap-index with object filtering"
 #~ msgstr "không thể tổ hợp --use-bitmap-index với lọc đối tượng"
 
-#, sh-format
 #~ msgid ""
 #~ "The following path is ignored by one of your .gitignore files:\n"
 #~ "$sm_path\n"
@@ -25850,10 +26026,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ "$sm_path\n"
 #~ "Sử dụng -f nếu bạn thực sự muốn thêm nó vào."
 
-#, c-format
-#~ msgid "unable to get tree for %s"
-#~ msgstr "không thể lấy cây cho %s"
-
 #~ msgid "Use an experimental heuristic to improve diffs"
 #~ msgstr "Dùng một phỏng đoán thử nghiệm để tăng cường các diff"
 
@@ -25863,7 +26035,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "git commit-graph read [--object-dir <objdir>]"
 #~ msgstr "git commit-graph read [--object-dir <objdir>]"
 
-#, c-format
 #~ msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
 #~ msgstr ""
 #~ "không hiểu giá trị core.untrackedCache “%s”; dùng giá trị mặc định “keep”"
@@ -25874,14 +26045,12 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "error building trees"
 #~ msgstr "gặp lỗi khi xây dựng cây"
 
-#, c-format
 #~ msgid "invalid date format '%s' in '%s'"
 #~ msgstr "định dạng ngày tháng không hợp lệ “%s” trong “%s”"
 
 #~ msgid "writing root commit"
 #~ msgstr "ghi chuyển giao gốc"
 
-#, c-format
 #~ msgid "staged changes in the following files may be lost: %s"
 #~ msgstr ""
 #~ "các thay đổi đã đưa lên bệ phóng trong các tập tin sau đây có thể bị mất: "
@@ -25900,7 +26069,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "cannot combine '--rebase-merges' with '--strategy-option'"
 #~ msgstr "không thể kết hợp “--rebase-merges” với “--strategy-option”"
 
-#, c-format
 #~ msgid "invalid sparse value '%s'"
 #~ msgstr "giá trị sparse không hợp lệ “%s”"
 
@@ -25914,7 +26082,7 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid ""
 #~ "or run 'git config fetch.showForcedUpdates false' to avoid this check.\n"
 #~ msgstr ""
-#~ "hoặc chạy 'git config fetch.showForcedUpdates false' để tránh kiểm tra "
+#~ "hoặc chạy “git config fetch.showForcedUpdates false” để tránh kiểm tra "
 #~ "này.\n"
 
 #~ msgid ""
@@ -25935,7 +26103,7 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ "Để làm chấm dứt thông báo này và áp cách hành xử mới, hãy đặt\n"
 #~ "giá trị cấu hình log.mailmap true.\n"
 #~ "\n"
-#~ "Xem 'git help config ' và tìm kiếm ' log.mailmap ' để biết thêm thông tin."
+#~ "Xem “git help config “ và tìm kiếm “ log.mailmap “ để biết thêm thông tin."
 
 #~ msgid "Server supports multi_ack_detailed"
 #~ msgstr "Máy chủ hỗ trợ multi_ack_detailed"
@@ -26685,9 +26853,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "removing '%s' failed"
 #~ msgstr "gặp lỗi khi xóa bỏ “%s”"
 
-#~ msgid "Please call 'bisect_state' with at least one argument."
-#~ msgstr "Hãy gọi lệnhl “bisect_state” với ít nhất một đối số."
-
 #~ msgid ""
 #~ "If you want to reuse this local git directory instead of cloning again "
 #~ "from"
@@ -27182,9 +27347,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N](có/KHÔNG): "
 #~ msgid "--orphan and -b|-B are mutually exclusive"
 #~ msgstr "Tùy chọn --orphan và -b|-B loại từ lẫn nhau"
 
-#~ msgid "--orphan cannot be used with -t"
-#~ msgstr "--orphan không thể được sử dụng với tùy chọn -t"
-
 #~ msgid "git checkout: -f and -m are incompatible"
 #~ msgstr "git checkout: hai tùy chọn -f và -m xung khắc nhau"