]> git.ipfire.org Git - thirdparty/git.git/blobdiff - po/vi.po
l10n: vi(5367t): Updated translation
[thirdparty/git.git] / po / vi.po
index 69c3b9315413ada04f9370fe38a7309957337198..d673745ac5b73adc8b2743b53cdfaba9936f2ff4 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
 # Vietnamese translation for GIT-CORE.
 # Bản dịch tiếng Việt dành cho GIT-CORE.
 # This file is distributed under the same license as the git-core package.
+# https://raw.githubusercontent.com/git-l10n/git-po/pot/main/po/git.pot
 # Nguyễn Thái Ngọc Duy <pclouds@gmail.com>, 2012.
-# Trần Ngọc Quân <vnwildman@gmail.com>, 2012-2022.
 # Đoàn Trần Công Danh <congdanhqx@gmail.com>, 2020.
+# Trần Ngọc Quân <vnwildman@gmail.com>, 2012-2022.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: git v2.36.0 round 2\n"
+"Project-Id-Version: git v2.37.0\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2022-04-13 14:52+0800\n"
-"PO-Revision-Date: 2022-04-14 15:34+0700\n"
+"POT-Creation-Date: 2022-06-21 20:20+0000\n"
+"PO-Revision-Date: 2022-06-25 08:37+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"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
+"Plural-Forms: nplurals=1; plural=0\n"
 "X-Language-Team-Website: <http://translationproject.org/team/vi.html>\n"
-"X-Generator: Poedit 3.0.1\n"
+"X-Generator: Gtranslator 42.0\n"
 
-#: add-interactive.c:382
 #, c-format
 msgid "Huh (%s)?"
 msgstr "Hả (%s)?"
 
-#: add-interactive.c:535 add-interactive.c:836 reset.c:136 sequencer.c:3505
-#: sequencer.c:3970 sequencer.c:4127 builtin/rebase.c:1261
-#: builtin/rebase.c:1671
 msgid "could not read index"
 msgstr "không thể đọc bảng mục lục"
 
-#: add-interactive.c:590 git-add--interactive.perl:269
-#: git-add--interactive.perl:294
 msgid "binary"
 msgstr "nhị phân"
 
-#: add-interactive.c:648 git-add--interactive.perl:278
-#: git-add--interactive.perl:332
 msgid "nothing"
 msgstr "không có gì"
 
-#: add-interactive.c:649 git-add--interactive.perl:314
-#: git-add--interactive.perl:329
 msgid "unchanged"
 msgstr "không thay đổi"
 
-#: add-interactive.c:686 git-add--interactive.perl:641
 msgid "Update"
 msgstr "Cập nhật"
 
-#: add-interactive.c:703 add-interactive.c:891
 #, c-format
 msgid "could not stage '%s'"
 msgstr "không thể đưa “%s” lên bệ phóng"
 
-#: add-interactive.c:709 add-interactive.c:898 reset.c:160 sequencer.c:3709
 msgid "could not write index"
 msgstr "không thể ghi bảng mục lục"
 
-#: add-interactive.c:712 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:730 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:735 apply.c:4133 builtin/checkout.c:311
-#: builtin/reset.c:167
 #, 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:765 git-add--interactive.perl:653
 msgid "Revert"
 msgstr "Hoàn nguyên"
 
-#: add-interactive.c:781
 msgid "Could not parse HEAD^{tree}"
 msgstr "Không thể phân tích cú pháp HEAD^{tree}"
 
-#: add-interactive.c:819 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:870 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:874 git-add--interactive.perl:687
 msgid "Add untracked"
 msgstr "Thêm các cái chưa được theo dõi"
 
-#: add-interactive.c:901 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:931
 #, c-format
 msgid "ignoring unmerged: %s"
 msgstr "bỏ qua những thứ chưa hòa trộn: %s"
 
-#: add-interactive.c:943 add-patch.c:1758 git-add--interactive.perl:1371
 #, 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:945 add-patch.c:1756 git-add--interactive.perl:1373
 #, c-format
 msgid "No changes.\n"
 msgstr "Không có thay đổi nào.\n"
 
-#: add-interactive.c:949 git-add--interactive.perl:1381
 msgid "Patch update"
 msgstr "Cập nhật miếng vá"
 
-#: add-interactive.c:988 git-add--interactive.perl:1794
 msgid "Review diff"
 msgstr "Xem xét lại diff"
 
-#: add-interactive.c:1016
 msgid "show paths with changes"
 msgstr "hiển thị đường dẫn với các thay đổi"
 
-#: add-interactive.c:1018
 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:1020
 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:1022
 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:1024
 msgid "view diff between HEAD and index"
 msgstr "xem khác biệt giữa HEAD và mục lục"
 
-#: add-interactive.c:1026
 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:1034 add-interactive.c:1083
 msgid "Prompt help:"
 msgstr "Trợ giúp về nhắc:"
 
-#: add-interactive.c:1036
 msgid "select a single item"
 msgstr "chọn một mục đơn"
 
-#: add-interactive.c:1038
 msgid "select a range of items"
 msgstr "chọn một vùng các mục"
 
-#: add-interactive.c:1040
 msgid "select multiple ranges"
 msgstr "chọn nhiều vùng"
 
-#: add-interactive.c:1042 add-interactive.c:1087
 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:1044
 msgid "unselect specified items"
 msgstr "bỏ chọn các mục đã cho"
 
-#: add-interactive.c:1046
 msgid "choose all items"
 msgstr "chọn tất cả các mục"
 
-#: add-interactive.c:1048
 msgid "(empty) finish selecting"
 msgstr "(để trống) hoàn tất chọn lựa"
 
-#: add-interactive.c:1085
 msgid "select a numbered item"
 msgstr "tùy chọn mục bằng số"
 
-#: add-interactive.c:1089
 msgid "(empty) select nothing"
 msgstr "(để trống) không chọn gì"
 
-#: add-interactive.c:1097 builtin/clean.c:839 git-add--interactive.perl:1898
 msgid "*** Commands ***"
 msgstr "*** Lệnh ***"
 
-#: add-interactive.c:1098 builtin/clean.c:840 git-add--interactive.perl:1895
 msgid "What now"
 msgstr "Giờ thì sao"
 
-#: add-interactive.c:1150 git-add--interactive.perl:213
 msgid "staged"
 msgstr "đã đưa lên bệ phóng"
 
-#: add-interactive.c:1150 git-add--interactive.perl:213
 msgid "unstaged"
 msgstr "chưa đưa lên bệ phóng"
 
-#: add-interactive.c:1150 apply.c:5002 apply.c:5005 builtin/am.c:2370
-#: builtin/am.c:2373 builtin/bugreport.c:107 builtin/clone.c:132
-#: builtin/fetch.c:154 builtin/merge.c:287 builtin/pull.c:194
-#: builtin/submodule--helper.c:412 builtin/submodule--helper.c:1872
-#: builtin/submodule--helper.c:1875 builtin/submodule--helper.c:2709
-#: builtin/submodule--helper.c:2712 builtin/submodule--helper.c:2891
-#: git-add--interactive.perl:213
 msgid "path"
 msgstr "đường-dẫn"
 
-#: add-interactive.c:1157
 msgid "could not refresh index"
 msgstr "không thể đọc lại bảng mục lục"
 
-#: add-interactive.c:1171 builtin/clean.c:804 git-add--interactive.perl:1805
 #, c-format
 msgid "Bye.\n"
 msgstr "Tạm biệt.\n"
 
-#: add-patch.c:34 git-add--interactive.perl:1433
 #, 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
 #, 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
 #, 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
 #, 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,?]? "
 
-#: add-patch.c:39
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be marked for "
 "staging."
@@ -262,7 +201,6 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức được đánh dấu "
 "để chuyển lên bệ phóng."
 
-#: add-patch.c:42
 msgid ""
 "y - stage this hunk\n"
 "n - do not stage this hunk\n"
@@ -277,27 +215,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
 #, 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
 #, 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
 #, 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
 #, 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,?]? "
 
-#: add-patch.c:61
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be marked for "
 "stashing."
@@ -305,7 +238,6 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức được đánh dấu "
 "để tạm cất."
 
-#: add-patch.c:64
 msgid ""
 "y - stash this hunk\n"
 "n - do not stash this hunk\n"
@@ -319,27 +251,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
 #, 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
 #, 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
 #, 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
 #, 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,?]? "
 
-#: add-patch.c:85
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be marked for "
 "unstaging."
@@ -347,7 +274,6 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức được đánh dấu "
 "để bỏ ra khỏi bệ phóng."
 
-#: add-patch.c:88
 msgid ""
 "y - unstage this hunk\n"
 "n - do not unstage this hunk\n"
@@ -363,27 +289,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
 #, 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
 #, 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
 #, 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
 #, 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,?]? "
 
-#: add-patch.c:108 add-patch.c:176 add-patch.c:221
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be marked for "
 "applying."
@@ -391,7 +312,6 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức được đánh dấu "
 "để áp dụng."
 
-#: add-patch.c:111
 msgid ""
 "y - apply this hunk to index\n"
 "n - do not apply this hunk to index\n"
@@ -405,31 +325,22 @@ 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
 #, 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
 #, 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
 #, 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
 #, 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,?]? "
 
-#: add-patch.c:131 add-patch.c:154 add-patch.c:199
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be marked for "
 "discarding."
@@ -437,7 +348,6 @@ msgstr ""
 "Nếu miếng vá được áp dụng sạch sẽ, khúc đã sửa sẽ ngay lập tức được đánh dấu "
 "để loại bỏ."
 
-#: add-patch.c:134 add-patch.c:202
 msgid ""
 "y - discard this hunk from worktree\n"
 "n - do not discard this hunk from worktree\n"
@@ -451,27 +361,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
 #, 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
 #, 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
 #, 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
 #, 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,?]? "
 
-#: add-patch.c:157
 msgid ""
 "y - discard this hunk from index and worktree\n"
 "n - do not discard this hunk from index and worktree\n"
@@ -485,27 +390,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
 #, 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
 #, 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
 #, 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
 #, 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,?]? "
 
-#: add-patch.c:179
 msgid ""
 "y - apply this hunk to index and worktree\n"
 "n - do not apply this hunk to index and worktree\n"
@@ -519,7 +419,6 @@ 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:224
 msgid ""
 "y - apply this hunk to worktree\n"
 "n - do not apply this hunk to worktree\n"
@@ -533,34 +432,27 @@ 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:343
 #, c-format
 msgid "could not parse hunk header '%.*s'"
 msgstr "không thể phân tích cú pháp phần đầu của khúc “%.*s”"
 
-#: add-patch.c:362 add-patch.c:366
 #, c-format
 msgid "could not parse colored hunk header '%.*s'"
 msgstr "không thể phân tích cú pháp phần đầu khúc đã tô màu “%.*s”"
 
-#: add-patch.c:431
 msgid "could not parse diff"
 msgstr "không thể phân tích cú pháp khác biệt"
 
-#: add-patch.c:450
 msgid "could not parse colored diff"
 msgstr "không thể phân tích khác biệt được tô màu"
 
-#: add-patch.c:464
 #, c-format
 msgid "failed to run '%s'"
 msgstr "gặp lỗi khi chạy “%s”"
 
-#: add-patch.c:618
 msgid "mismatched output from interactive.diffFilter"
 msgstr "đầu ra không khớp từ interactive.diffFilter"
 
-#: add-patch.c:619
 msgid ""
 "Your filter must maintain a one-to-one correspondence\n"
 "between its input and output lines."
@@ -568,7 +460,6 @@ 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:797
 #, c-format
 msgid ""
 "expected context line #%d in\n"
@@ -577,7 +468,6 @@ msgstr ""
 "cần dòng ngữ cảnh #%d trong\n"
 "%.*s"
 
-#: add-patch.c:812
 #, c-format
 msgid ""
 "hunks do not overlap:\n"
@@ -590,11 +480,9 @@ msgstr ""
 "\tkhông được kết thúc bằng:\n"
 "%.*s"
 
-#: add-patch.c:1088 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:1092
 #, c-format
 msgid ""
 "---\n"
@@ -607,8 +495,8 @@ msgstr ""
 "Để gõ bỏ dòng “%c”, xóa chúng đi.\n"
 "Những dòng bắt đầu bằng %c sẽ bị loại bỏ.\n"
 
+#. #-#-#-#-#  git-add--interactive.perl.po  #-#-#-#-#
 #. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
-#: add-patch.c:1106 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"
@@ -618,46 +506,41 @@ 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:1139
 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:1184
 msgid "'git apply --cached' failed"
 msgstr "“git apply --cached” gặp lỗi"
 
+#. #-#-#-#-#  add-patch.c.po  #-#-#-#-#
 #. TRANSLATORS: do not translate [y/n]
 #. The program will only accept that input at this point.
 #. Consider translating (saying "no" discards!) as
 #. (saying "n" for "no" discards!) if the translation
 #. of the word "no" does not start with n.
 #.
+#. #-#-#-#-#  git-add--interactive.perl.po  #-#-#-#-#
 #. TRANSLATORS: do not translate [y/n]
 #. The program will only accept that input
 #. at this point.
 #. 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:1253 git-add--interactive.perl:1244
 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:1296
 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:1297 git-add--interactive.perl:1348
 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:1304 git-add--interactive.perl:1351
 msgid "Nothing was applied.\n"
 msgstr "Đã không áp dụng gì cả.\n"
 
-#: add-patch.c:1361
 msgid ""
 "j - leave this hunk undecided, see next undecided hunk\n"
 "J - leave this hunk undecided, see next hunk\n"
@@ -679,72 +562,56 @@ msgstr ""
 "e - sửa bằng tay khúc hiện hành\n"
 "? - hiển thị trợ giúp\n"
 
-#: add-patch.c:1523 add-patch.c:1533
 msgid "No previous hunk"
 msgstr "Không có khúc kế trước"
 
-#: add-patch.c:1528 add-patch.c:1538
 msgid "No next hunk"
 msgstr "Không có khúc kế tiếp"
 
-#: add-patch.c:1544
 msgid "No other hunks to goto"
 msgstr "Không còn khúc nào để mà nhảy đến"
 
-#: add-patch.c:1555 git-add--interactive.perl:1608
 msgid "go to which hunk (<ret> to see more)? "
 msgstr "nhảy đến khúc nào (<ret> để xem thêm)? "
 
-#: add-patch.c:1556 git-add--interactive.perl:1610
 msgid "go to which hunk? "
 msgstr "nhảy đến khúc nào? "
 
-#: add-patch.c:1567
 #, c-format
 msgid "Invalid number: '%s'"
 msgstr "Số không hợp lệ: “%s”"
 
-#: add-patch.c:1572
 #, 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:1581
 msgid "No other hunks to search"
 msgstr "Không còn khúc nào để mà tìm kiếm"
 
-#: add-patch.c:1587 git-add--interactive.perl:1663
 msgid "search for regex? "
 msgstr "tìm kiếm cho biểu thức chính quy? "
 
-#: add-patch.c:1602
 #, 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:1619
 msgid "No hunk matches the given pattern"
 msgstr "Không thấy khúc nào khớp mẫu đã cho"
 
-#: add-patch.c:1626
 msgid "Sorry, cannot split this hunk"
 msgstr "Rất tiếc, không thể chia nhỏ khúc này"
 
-#: add-patch.c:1630
 #, c-format
 msgid "Split into %d hunks."
 msgstr "Chi nhỏ thành %d khúc."
 
-#: add-patch.c:1634
 msgid "Sorry, cannot edit this hunk"
 msgstr "Rất tiếc, không thể sửa khúc này"
 
-#: add-patch.c:1686
 msgid "'git apply' failed"
 msgstr "“git apply” gặp lỗi"
 
-#: advice.c:81
 #, c-format
 msgid ""
 "\n"
@@ -753,47 +620,39 @@ msgstr ""
 "\n"
 "Tắt lời nhắn này bằng \"git config advice.%s false\""
 
-#: advice.c:97
 #, c-format
 msgid "%shint: %.*s%s\n"
 msgstr "%sgợi ý: %.*s%s\n"
 
-#: advice.c:181
 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:183
 msgid "Committing is not possible because you have unmerged files."
 msgstr ""
 "Không thể thực hiện chuyển giao được bởi vì bạn có những tập tin chưa được "
 "hòa trộn."
 
-#: advice.c:185
 msgid "Merging is not possible because you have unmerged files."
 msgstr ""
 "Không thể thực hiện hòa trộn bởi vì bạn có những tập tin chưa được hòa trộn."
 
-#: advice.c:187
 msgid "Pulling is not possible because you have unmerged files."
 msgstr ""
 "Không thể thực hiện kéo về bởi vì bạn có những tập tin chưa được hòa trộn."
 
-#: advice.c:189
 msgid "Reverting is not possible because you have unmerged files."
 msgstr ""
 "Không thể thực hiện hoàn nguyên bởi vì bạn có những tập tin chưa được hòa "
 "trộn."
 
-#: advice.c:191
 #, 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:199
 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,27 +660,21 @@ 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:207
 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:212 builtin/merge.c:1388
 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:214
 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:215
 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:220
 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."
 
-#: advice.c:230
 #, c-format
 msgid ""
 "The following paths and/or pathspecs matched paths that exist\n"
@@ -833,7 +686,6 @@ msgstr ""
 "bên ngoài định nghĩa “sparse-checkout” của bạn, vì vậy sẽ không\n"
 "cập nhật trong chỉ mục:\n"
 
-#: advice.c:237
 msgid ""
 "If you intend to update such entries, try one of the following:\n"
 "* Use the --sparse option.\n"
@@ -843,7 +695,6 @@ msgstr ""
 "* Sử dụng tùy chọn --sparse.\n"
 "* Vô hiệu hóa hoặc sửa đổi các quy tắc thưa thớt."
 
-#: advice.c:245
 #, c-format
 msgid ""
 "Note: switching to '%s'.\n"
@@ -885,104 +736,67 @@ msgstr ""
 "Tắt hướng dẫn này bằng cách đặt biến advice.detachedHead thành false\n"
 "\n"
 
-#: alias.c:50
 msgid "cmdline ends with \\"
 msgstr "cmdline kết thúc với \\"
 
-#: alias.c:51
 msgid "unclosed quote"
 msgstr "chưa có dấu nháy đóng"
 
-#: apply.c:70
 #, c-format
 msgid "unrecognized whitespace option '%s'"
 msgstr "không nhận ra tùy chọn về khoảng trắng “%s”"
 
-#: apply.c:86
 #, c-format
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "không nhận ra tùy chọn bỏ qua khoảng trắng “%s”"
 
-#: apply.c:138 archive.c:584 parse-options.c:1122 range-diff.c:555
-#: revision.c:2314 revision.c:2318 revision.c:2327 revision.c:2332
-#: revision.c:2560 revision.c:2895 revision.c:2899 revision.c:2907
-#: revision.c:2910 revision.c:2912 builtin/add.c:507 builtin/add.c:509
-#: builtin/add.c:515 builtin/add.c:527 builtin/branch.c:755
-#: builtin/checkout.c:472 builtin/checkout.c:475 builtin/checkout.c:1663
-#: builtin/checkout.c:1773 builtin/checkout.c:1776 builtin/clone.c:921
-#: builtin/commit.c:359 builtin/commit.c:362 builtin/commit.c:1200
-#: builtin/commit.c:1256 builtin/commit.c:1273 builtin/describe.c:593
-#: builtin/diff-tree.c:155 builtin/difftool.c:733 builtin/fast-export.c:1245
-#: builtin/fetch.c:2141 builtin/fetch.c:2162 builtin/fetch.c:2167
-#: builtin/help.c:602 builtin/index-pack.c:1858 builtin/init-db.c:560
-#: builtin/log.c:1968 builtin/log.c:1970 builtin/ls-files.c:778
-#: builtin/merge-base.c:163 builtin/merge-base.c:169 builtin/merge.c:1409
-#: builtin/merge.c:1411 builtin/pack-objects.c:4098 builtin/push.c:592
-#: builtin/push.c:630 builtin/push.c:636 builtin/push.c:641
-#: builtin/rebase.c:1221 builtin/rebase.c:1223 builtin/rebase.c:1227
-#: builtin/repack.c:688 builtin/repack.c:719 builtin/reset.c:433
-#: builtin/reset.c:469 builtin/rev-list.c:537 builtin/show-branch.c:711
-#: builtin/stash.c:1696 builtin/stash.c:1699 builtin/submodule--helper.c:1328
-#: builtin/submodule--helper.c:3054 builtin/tag.c:527 builtin/tag.c:573
-#: builtin/worktree.c:779
 #, c-format
 msgid "options '%s' and '%s' cannot be used together"
 msgstr "tùy chọn '%s' và '%s' không thể dùng cùng nhau"
 
-#: apply.c:141 apply.c:152 apply.c:155
 #, c-format
 msgid "'%s' outside a repository"
 msgstr "'%s' ở ngoài một kho chứa"
 
-#: apply.c:807
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr ""
 "Không thể chuẩn bị biểu thức chính qui dấu vết thời gian (timestamp regexp) "
 "%s"
 
-#: apply.c:816
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "thi hành biểu thức chính quy trả về %d cho đầu vào: %s"
 
-#: apply.c:890
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr "không thể tìm thấy tên tập tin trong miếng vá tại dòng %d"
 
-#: apply.c:928
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr ""
 "git apply: git-diff sai - cần /dev/null, nhưng lại nhận được %s trên dòng %d"
 
-#: apply.c:934
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
 msgstr "git apply: git-diff sai - tên tập tin mới không nhất quán trên dòng %d"
 
-#: apply.c:935
 #, c-format
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr "git apply: git-diff sai - tên tập tin cũ không nhất quán trên dòng %d"
 
-#: apply.c:940
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr "git apply: git-diff sai - cần “/dev/null” trên dòng %d"
 
-#: apply.c:969
 #, c-format
 msgid "invalid mode on line %d: %s"
 msgstr "chế độ không hợp lệ trên dòng %d: %s"
 
-#: apply.c:1288
 #, c-format
 msgid "inconsistent header lines %d and %d"
 msgstr "phần đầu mâu thuẫn dòng %d và %d"
 
-#: apply.c:1378
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -994,91 +808,73 @@ msgstr[0] ""
 "phần đầu diff cho git  thiếu thông tin tên tập tin khi gỡ bỏ đi %d trong "
 "thành phần dẫn đầu tên của đường dẫn (dòng %d)"
 
-#: apply.c:1391
 #, c-format
 msgid "git diff header lacks filename information (line %d)"
 msgstr "phần đầu diff cho git thiếu thông tin tên tập tin (dòng %d)"
 
-#: apply.c:1487
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr "chi tiết: dòng không cần: %.*s"
 
-#: apply.c:1556
 #, c-format
 msgid "patch fragment without header at line %d: %.*s"
 msgstr "miếng vá phân mảnh mà không có phần đầu tại dòng %d: %.*s"
 
-#: apply.c:1759
 msgid "new file depends on old contents"
 msgstr "tập tin mới phụ thuộc vào nội dung cũ"
 
-#: apply.c:1761
 msgid "deleted file still has contents"
 msgstr "tập tin đã xóa vẫn còn nội dung"
 
-#: apply.c:1795
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "miếng vá hỏng tại dòng %d"
 
-#: apply.c:1832
 #, c-format
 msgid "new file %s depends on old contents"
 msgstr "tập tin mới %s phụ thuộc vào nội dung cũ"
 
-#: apply.c:1834
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "tập tin đã xóa %s vẫn còn nội dung"
 
-#: apply.c:1837
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** cảnh báo: tập tin %s trở nên trống rỗng nhưng không bị xóa"
 
-#: apply.c:1985
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "miếng vá định dạng nhị phân sai hỏng tại dòng %d: %.*s"
 
-#: apply.c:2022
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "miếng vá định dạng nhị phân không được nhận ra tại dòng %d"
 
-#: apply.c:2184
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "vá chỉ với “rác” tại dòng %d"
 
-#: apply.c:2270
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "không thể đọc liên kết mềm %s"
 
-#: apply.c:2274
 #, c-format
 msgid "unable to open or read %s"
 msgstr "không thể mở hay đọc %s"
 
-#: apply.c:2943
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "sai khởi đầu dòng: “%c”"
 
-#: apply.c:3064
 #, c-format
 msgid "Hunk #%d succeeded at %d (offset %d line)."
 msgid_plural "Hunk #%d succeeded at %d (offset %d lines)."
 msgstr[0] "Khối dữ liệu #%d thành công tại %d (offset %d dòng)."
 
-#: apply.c:3076
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr "Ngữ cảnh bị giảm xuống còn (%ld/%ld) để áp dụng mảnh dữ liệu tại %d"
 
-#: apply.c:3082
 #, c-format
 msgid ""
 "while searching for:\n"
@@ -1087,657 +883,518 @@ msgstr ""
 "trong khi đang tìm kiếm cho:\n"
 "%.*s"
 
-#: apply.c:3104
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "thiếu dữ liệu của miếng vá định dạng nhị phân cho “%s”"
 
-#: apply.c:3112
 #, c-format
 msgid "cannot reverse-apply a binary patch without the reverse hunk to '%s'"
 msgstr ""
 "không thể reverse-apply một miếng vá nhị phân mà không đảo ngược khúc thành "
 "“%s”"
 
-#: apply.c:3159
 #, c-format
 msgid "cannot apply binary patch to '%s' without full index line"
 msgstr ""
 "không thể áp dụng miếng vá nhị phân thành “%s” mà không có dòng chỉ mục đầy "
 "đủ"
 
-#: apply.c:3170
 #, c-format
 msgid ""
 "the patch applies to '%s' (%s), which does not match the current contents."
 msgstr ""
 "miếng vá áp dụng cho “%s” (%s), cái mà không khớp với các nội dung hiện tại."
 
-#: apply.c:3178
 #, c-format
 msgid "the patch applies to an empty '%s' but it is not empty"
 msgstr "miếng vá áp dụng cho một “%s” trống rỗng nhưng nó lại không trống"
 
-#: apply.c:3196
 #, c-format
 msgid "the necessary postimage %s for '%s' cannot be read"
 msgstr "không thể đọc postimage %s cần thiết cho “%s”"
 
-#: apply.c:3209
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "miếng vá định dạng nhị phân không được áp dụng cho “%s”"
 
-#: apply.c:3216
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr ""
 "vá nhị phân cho “%s” tạo ra kết quả không chính xác (mong chờ %s, lại nhận "
 "%s)"
 
-#: apply.c:3237
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "gặp lỗi khi vá: %s:%ld"
 
-#: apply.c:3360
 #, c-format
 msgid "cannot checkout %s"
 msgstr "không thể lấy ra %s"
 
-#: apply.c:3412 apply.c:3423 apply.c:3469 midx.c:105 pack-revindex.c:214
-#: setup.c:310
 #, c-format
 msgid "failed to read %s"
 msgstr "gặp lỗi khi đọc %s"
 
-#: apply.c:3420
 #, c-format
 msgid "reading from '%s' beyond a symbolic link"
 msgstr "đọc từ “%s” vượt ra ngoài liên kết mềm"
 
-#: apply.c:3449 apply.c:3721
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "đường dẫn %s đã bị xóa hoặc đổi tên"
 
-#: apply.c:3559 apply.c:3736
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s: không tồn tại trong bảng mục lục"
 
-#: apply.c:3568 apply.c:3744 apply.c:3960
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s: không khớp trong mục lục"
 
-#: apply.c:3605
 msgid "repository lacks the necessary blob to perform 3-way merge."
 msgstr "kho thiếu đối tượng blob cần thiết để thực hiện hòa trộn “3-way”."
 
-#: apply.c:3608
 #, c-format
 msgid "Performing three-way merge...\n"
 msgstr "Đang thực hiện hòa trộn “3-đường”…\n"
 
-#: apply.c:3624 apply.c:3628
 #, c-format
 msgid "cannot read the current contents of '%s'"
 msgstr "không thể đọc nội dung hiện hành của “%s”"
 
-#: apply.c:3640
 #, c-format
 msgid "Failed to perform three-way merge...\n"
 msgstr "Gặp lỗi khi thực hiện hòa trộn kiểu “three-way”…\n"
 
-#: apply.c:3654
 #, c-format
 msgid "Applied patch to '%s' with conflicts.\n"
 msgstr "Đã áp dụng miếng vá %s với các xung đột.\n"
 
-#: apply.c:3659
 #, c-format
 msgid "Applied patch to '%s' cleanly.\n"
 msgstr "Đã áp dụng miếng vá %s một cách sạch sẽ.\n"
 
-#: apply.c:3676
 #, c-format
 msgid "Falling back to direct application...\n"
 msgstr "Đang trở lại ứng dụng chi phối…\n"
 
-#: apply.c:3688
 msgid "removal patch leaves file contents"
 msgstr "loại bỏ miếng vá để lại nội dung tập tin"
 
-#: apply.c:3761
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s: sai kiểu"
 
-#: apply.c:3763
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s có kiểu %o, cần %o"
 
-#: apply.c:3900 apply.c:3902 read-cache.c:903 read-cache.c:932
-#: read-cache.c:1399
 #, c-format
 msgid "invalid path '%s'"
 msgstr "đường dẫn không hợp lệ “%s”"
 
-#: apply.c:3958
 #, c-format
 msgid "%s: already exists in index"
 msgstr "%s: đã có từ trước trong bảng mục lục"
 
-#: apply.c:3962
 #, 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:3982
 #, 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:3987
 #, 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:4007
 #, 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:4011
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s: miếng vá không được áp dụng"
 
-#: apply.c:4026
 #, c-format
 msgid "Checking patch %s..."
 msgstr "Đang kiểm tra miếng vá %s…"
 
-#: apply.c:4118
 #, 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:4125
 #, 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:4128
 #, 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:4137
 #, 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:4147
 #, 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:4285
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "không thể gỡ bỏ %s từ mục lục"
 
-#: apply.c:4319
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "miếng vá sai hỏng cho mô-đun-con %s"
 
-#: apply.c:4325
 #, 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:4333
 #, 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:4339 apply.c:4484
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "không thể thêm mục nhớ đệm cho %s"
 
-#: apply.c:4382 builtin/bisect--helper.c:540 builtin/gc.c:2258
-#: builtin/gc.c:2293
 #, c-format
 msgid "failed to write to '%s'"
 msgstr "gặp lỗi khi ghi vào “%s”"
 
-#: apply.c:4386
 #, c-format
 msgid "closing file '%s'"
 msgstr "đang đóng tập tin “%s”"
 
-#: apply.c:4456
 #, 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:4554
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Đã áp dụng miếng vá %s một cách sạch sẽ."
 
-#: apply.c:4562
 msgid "internal error"
 msgstr "lỗi nội bộ"
 
-#: apply.c:4565
 #, 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:4576
 #, 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:4584
 #, c-format
 msgid "cannot open %s"
 msgstr "không mở được “%s”"
 
-#: apply.c:4598
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Khối nhớ #%d được áp dụng gọn gàng."
 
-#: apply.c:4602
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "Đoạn dữ liệu #%d bị từ chối."
 
-#: apply.c:4731
 #, c-format
 msgid "Skipped patch '%s'."
 msgstr "Bỏ qua đường dẫn “%s”."
 
-#: apply.c:4740
 msgid "No valid patches in input (allow with \"--allow-empty\")"
 msgstr ""
 "Không có miếng vá hợp lệ nào trong đầu vào (cho phép với \"--allow-empty\")"
 
-#: apply.c:4761
 msgid "unable to read index file"
 msgstr "không thể đọc tập tin lưu bảng mục lục"
 
-#: apply.c:4918
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr "không thể mở miếng vá “%s”: %s"
 
-#: apply.c:4945
 #, 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:4951 apply.c:4966
 #, 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:4959
 #, 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:4975 builtin/add.c:690 builtin/mv.c:338 builtin/rm.c:430
 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:5003
 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:5006
 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:5008 builtin/am.c:2379
 msgid "num"
 msgstr "số"
 
-#: apply.c:5009
 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:5012
 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:5014
 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:5018
 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:5020
 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:5022
 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:5024
 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:5026
 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:5028
 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:5030
 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:5033
 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:5035
 msgid "attempt three-way merge, fall back on normal patch if that fails"
 msgstr ""
 "thử hòa trộn kiểu three-way, quay lại dán bình thường nếu không thể thực "
 "hiện được"
 
-#: apply.c:5037
 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:5040 builtin/checkout-index.c:230
 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:5042
 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:5043 builtin/am.c:2355 builtin/am.c:2358
-#: builtin/interpret-trailers.c:98 builtin/interpret-trailers.c:100
-#: builtin/interpret-trailers.c:102 builtin/pack-objects.c:3983
-#: builtin/rebase.c:1079
 msgid "action"
 msgstr "hành động"
 
-#: apply.c:5044
 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:5047 apply.c:5050
 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:5053
 msgid "apply the patch in reverse"
 msgstr "áp dụng miếng vá theo chiều ngược"
 
-#: apply.c:5055
 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:5057
 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:5059
 msgid "allow overlapping hunks"
 msgstr "cho phép chồng khối nhớ"
 
-#: apply.c:5062
 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:5065
 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:5067 builtin/am.c:2367
 msgid "root"
 msgstr "gốc"
 
-#: apply.c:5068
 msgid "prepend <root> to all filenames"
 msgstr "treo thêm <root> vào tất cả các tên tập tin"
 
-#: apply.c:5071
 msgid "don't return error for empty patches"
 msgstr "đừng trả về lỗi khi các miếng vá trống rỗng"
 
-#: archive-tar.c:125 archive-zip.c:346
 #, c-format
 msgid "cannot stream blob %s"
 msgstr "không thể stream blob “%s”"
 
-#: archive-tar.c:265 archive-zip.c:359
 #, c-format
 msgid "unsupported file mode: 0%o (SHA1: %s)"
 msgstr "chế độ tập tin không được hỗ trợ: 0%o (SHA1: %s)"
 
-#: archive-tar.c:447
 #, c-format
 msgid "unable to start '%s' filter"
 msgstr "không thể bắt đầu bộ lọc “%s”"
 
-#: archive-tar.c:450
 msgid "unable to redirect descriptor"
 msgstr "không thể chuyển hướng mô tả"
 
-#: archive-tar.c:457
 #, c-format
 msgid "'%s' filter reported error"
 msgstr "bộ lọc “%s” đã báo cáo lỗi"
 
-#: archive-zip.c:319
 #, c-format
 msgid "path is not valid UTF-8: %s"
 msgstr "đường dẫn không hợp lệ UTF-8: %s"
 
-#: archive-zip.c:323
 #, c-format
 msgid "path too long (%d chars, SHA1: %s): %s"
 msgstr "đường dẫn quá dài (%d ký tự, SHA1: %s): %s"
 
-#: archive-zip.c:470 builtin/pack-objects.c:363 builtin/pack-objects.c:366
 #, c-format
 msgid "deflate error (%d)"
 msgstr "lỗi giải nén (%d)"
 
-#: archive-zip.c:604
 #, c-format
 msgid "timestamp too large for this system: %<PRIuMAX>"
 msgstr "dấu vết thời gian là quá lớn cho hệ thống này: %<PRIuMAX>"
 
-#: archive.c:14
 msgid "git archive [<options>] <tree-ish> [<path>...]"
 msgstr "git archive [<các tùy chọn>] <tree-ish> [</đường/dẫn>…]"
 
-#: archive.c:16
 msgid ""
 "git archive --remote <repo> [--exec <cmd>] [<options>] <tree-ish> [<path>...]"
 msgstr ""
 "git archive --remote <kho> [--exec <lệnh>] [<các tùy chọn>] <tree-ish> [</"
 "đường/dẫn>…]"
 
-#: archive.c:17
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <kho> [--exec <lệnh>] --list"
 
-#: archive.c:188 archive.c:341 builtin/gc.c:497 builtin/notes.c:238
-#: builtin/tag.c:579
 #, c-format
 msgid "cannot read '%s'"
 msgstr "không thể đọc “%s”"
 
-#: archive.c:426 builtin/add.c:214 builtin/add.c:657 builtin/rm.c:334
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr "đặc tả đường dẫn “%s” không khớp với bất kỳ tập tin nào"
 
-#: archive.c:450
 #, c-format
 msgid "no such ref: %.*s"
 msgstr "không có tham chiếu nào như thế: %.*s"
 
-#: archive.c:456
 #, c-format
 msgid "not a valid object name: %s"
 msgstr "không phải là tên đối tượng hợp lệ: “%s”"
 
-#: archive.c:469
 #, c-format
 msgid "not a tree object: %s"
 msgstr "không phải là đối tượng cây: “%s”"
 
-#: archive.c:481
 msgid "current working directory is untracked"
 msgstr "thư mục làm việc hiện hành chưa được theo dõi"
 
-#: archive.c:522
 #, c-format
 msgid "File not found: %s"
 msgstr "Không tìm thấy tập tin: %s"
 
-#: archive.c:524
 #, c-format
 msgid "Not a regular file: %s"
 msgstr "Không phải một tập tin thường: %s"
 
-#: archive.c:551
+#, c-format
+msgid "unclosed quote: '%s'"
+msgstr "chưa có dấu nháy đóng: '%s'"
+
+#, c-format
+msgid "missing colon: '%s'"
+msgstr "thiếu dấu hai chấm: “%s”"
+
+#, c-format
+msgid "empty file name: '%s'"
+msgstr "tên tập tin trống rỗng: “%s”"
+
 msgid "fmt"
 msgstr "định_dạng"
 
-#: archive.c:551
 msgid "archive format"
 msgstr "định dạng lưu trữ"
 
-#: archive.c:552 builtin/log.c:1809
 msgid "prefix"
 msgstr "tiền_tố"
 
-#: archive.c:553
 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:554 archive.c:557 builtin/blame.c:881 builtin/blame.c:885
-#: builtin/blame.c:886 builtin/commit-tree.c:115 builtin/config.c:135
-#: builtin/fast-export.c:1181 builtin/fast-export.c:1183
-#: builtin/fast-export.c:1187 builtin/grep.c:936 builtin/hash-object.c:104
-#: builtin/ls-files.c:654 builtin/ls-files.c:657 builtin/notes.c:410
-#: builtin/notes.c:576 builtin/read-tree.c:115 parse-options.h:195
 msgid "file"
 msgstr "tập_tin"
 
-#: archive.c:555
 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:558 builtin/archive.c:88
+msgid "path:content"
+msgstr "đường dẫn:nội dung"
+
 msgid "write the archive to this file"
 msgstr "ghi kho lưu vào tập tin này"
 
-#: archive.c:560
 msgid "read .gitattributes in working directory"
 msgstr "đọc .gitattributes trong thư mục làm việc"
 
-#: archive.c:561
 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:563
 msgid "set compression level"
 msgstr "đặt mức nén"
 
-#: archive.c:566
 msgid "list supported archive formats"
 msgstr "liệt kê các kiểu nén được hỗ trợ"
 
-#: archive.c:568 builtin/archive.c:89 builtin/clone.c:122 builtin/clone.c:125
-#: builtin/submodule--helper.c:1884 builtin/submodule--helper.c:2718
 msgid "repo"
 msgstr "kho"
 
-#: archive.c:569 builtin/archive.c:90
 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:570 builtin/archive.c:91 builtin/difftool.c:708
-#: builtin/notes.c:496
 msgid "command"
 msgstr "lệnh"
 
-#: archive.c:571 builtin/archive.c:92
 msgid "path to the remote git-upload-archive command"
 msgstr "đường dẫn đến lệnh git-upload-archive trên máy chủ"
 
-#: archive.c:578
 msgid "Unexpected option --remote"
 msgstr "Gặp tùy chọn không cần --remote"
 
-#: archive.c:580 fetch-pack.c:300 revision.c:2914 builtin/add.c:530
-#: builtin/add.c:562 builtin/checkout.c:1782 builtin/clone.c:1099
-#: builtin/clone.c:1102 builtin/commit.c:371 builtin/fast-export.c:1230
-#: builtin/index-pack.c:1854 builtin/log.c:2140 builtin/reset.c:442
-#: builtin/reset.c:500 builtin/rm.c:281 builtin/stash.c:1708
-#: builtin/worktree.c:580 builtin/worktree.c:781 http-fetch.c:144
-#: http-fetch.c:153
 #, c-format
 msgid "the option '%s' requires '%s'"
 msgstr "tùy chọn “%s” yêu cầu “%s”"
 
-#: archive.c:582
 msgid "Unexpected option --output"
 msgstr "Gặp tùy chọn không cần --output"
 
-#: archive.c:606
 #, c-format
 msgid "Unknown archive format '%s'"
 msgstr "Không hiểu định dạng “%s”"
 
-#: archive.c:615
 #, 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: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:363
 #, c-format
 msgid "%s not allowed: %s:%d"
 msgstr "%s không được phép: %s:%d"
 
-#: attr.c:403
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
@@ -1745,22 +1402,18 @@ 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:488
 #, 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:698
 #, c-format
 msgid "We cannot bisect more!\n"
 msgstr "Chúng tôi không bisect thêm nữa!\n"
 
-#: bisect.c:765
 #, 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:790
 #, c-format
 msgid ""
 "The merge base %s is bad.\n"
@@ -1769,7 +1422,6 @@ 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:795
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
@@ -1778,7 +1430,6 @@ 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:800
 #, c-format
 msgid ""
 "The merge base %s is %s.\n"
@@ -1787,7 +1438,6 @@ 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:808
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -1798,7 +1448,6 @@ 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:821
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -1810,36 +1459,29 @@ msgstr ""
 "%s.\n"
 "Chúng tôi vẫn cứ tiếp tục."
 
-#: bisect.c:860
 #, 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:910
 #, c-format
 msgid "a %s revision is needed"
 msgstr "cần một điểm xét duyệt %s"
 
-#: bisect.c:940
 #, c-format
 msgid "could not create file '%s'"
 msgstr "không thể tạo tập tin “%s”"
 
-#: bisect.c:986 builtin/merge.c:155
 #, c-format
 msgid "could not read file '%s'"
 msgstr "không thể đọc tập tin “%s”"
 
-#: bisect.c:1026
 msgid "reading bisect refs failed"
 msgstr "việc đọc tham chiếu bisect gặp lỗi"
 
-#: bisect.c:1056
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr "%s là cả %s và %s\n"
 
-#: bisect.c:1065
 #, c-format
 msgid ""
 "No testable commit found.\n"
@@ -1848,7 +1490,6 @@ 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:1094
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
@@ -1857,52 +1498,38 @@ msgstr[0] "(ước chừng %d bước)"
 #. TRANSLATORS: the last %s will be replaced with "(roughly %d
 #. steps)" translation.
 #.
-#: bisect.c:1100
 #, 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:2773
 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:2787
 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:2808
 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:2817 bundle.c:231 midx.c:1058 ref-filter.c:2371 remote.c:2157
-#: sequencer.c:2348 sequencer.c:4872 submodule.c:913 builtin/commit.c:1118
-#: builtin/log.c:437 builtin/log.c:1055 builtin/log.c:1663 builtin/log.c:2096
-#: builtin/log.c:2387 builtin/merge.c:431 builtin/pack-objects.c:3381
-#: builtin/pack-objects.c:3781 builtin/pack-objects.c:3796
-#: builtin/shortlog.c:255
 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:2835
 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:2846
 #, c-format
 msgid "no such path %s in %s"
 msgstr "không có đường dẫn %s trong “%s”"
 
-#: blame.c:2857
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr "không thể đọc blob %s cho đường dẫn “%s”"
 
-#: branch.c:93
 msgid ""
 "cannot inherit upstream tracking configuration of multiple refs when "
 "rebasing is requested"
@@ -1910,31 +1537,25 @@ msgstr ""
 "không thể kế thừa cấu hình theo dõi thượng nguồn của nhiều tham chiếu khi mà "
 "lệnh cải tổ được yêu cầu"
 
-#: branch.c:104
 #, c-format
 msgid "not setting branch '%s' as its own upstream"
 msgstr "không cài đặt nhánh '%s' như là thượng nguồn của nó"
 
-#: branch.c:160
 #, c-format
 msgid "branch '%s' set up to track '%s' by rebasing."
 msgstr "nhánh “%s” cài đặt để theo dõi “%s” bằng cách rebase."
 
-#: branch.c:161
 #, c-format
 msgid "branch '%s' set up to track '%s'."
 msgstr "nhánh “%s” cài đặt để theo dõi “%s”."
 
-#: branch.c:164
 #, c-format
 msgid "branch '%s' set up to track:"
 msgstr "nhánh “%s” cài đặt để theo dõi:"
 
-#: branch.c:176
 msgid "unable to write upstream branch configuration"
 msgstr "không thể ghi cấu hình nhánh thượng nguồn"
 
-#: branch.c:178
 msgid ""
 "\n"
 "After fixing the error cause you may try to fix up\n"
@@ -1944,34 +1565,32 @@ msgstr ""
 "Sau khi sửa nguyên nhân gây lỗi bạn có lẻ cần thử sửa\n"
 "thông tin theo dõi máy chủ bằng cách gọi lệnh:"
 
-#: branch.c:219
 #, c-format
 msgid "asked to inherit tracking from '%s', but no remote is set"
 msgstr ""
 "đã hỏi để kế thừa theo dõi từ '%s', nhưng không có máy chủ nào được đặt"
 
-#: branch.c:225
 #, c-format
 msgid "asked to inherit tracking from '%s', but no merge configuration is set"
 msgstr ""
 "đã hỏi để kế thừa theo dõi từ '%s', nhưng không có cấu hình hòa trộn nào "
 "được đặt"
 
-#: branch.c:277
 #, c-format
 msgid "not tracking: ambiguous information for ref '%s'"
 msgstr "không theo dõi: thông tin chưa rõ ràng cho tham chiếu '%s'"
 
+#. #-#-#-#-#  branch.c.po  #-#-#-#-#
 #. TRANSLATORS: This is a line listing a remote with duplicate
 #. refspecs in the advice message below. For RTL languages you'll
 #. probably want to swap the "%s" and leading "  " space around.
 #.
+#. #-#-#-#-#  object-name.c.po  #-#-#-#-#
 #. TRANSLATORS: This is line item of ambiguous object output
 #. from describe_ambiguous_object() above. For RTL languages
 #. you'll probably want to swap the "%s" and leading " " space
 #. around.
 #.
-#: branch.c:289 object-name.c:464
 #, c-format
 msgid "  %s\n"
 msgstr "  %s\n"
@@ -1979,7 +1598,6 @@ msgstr "  %s\n"
 #. TRANSLATORS: The second argument is a \n-delimited list of
 #. duplicate refspecs, composed above.
 #.
-#: branch.c:295
 #, c-format
 msgid ""
 "There are multiple remotes whose fetch refspecs map to the remote\n"
@@ -2000,34 +1618,28 @@ msgstr ""
 "các máy chủ khác nhau lấy các refspecs ánh xạ đến\n"
 "không gian tên theo dõi khác."
 
-#: branch.c:344
 #, c-format
 msgid "'%s' is not a valid branch name"
 msgstr "“%s” không phải là một tên nhánh hợp lệ"
 
-#: branch.c:364
 #, c-format
 msgid "a branch named '%s' already exists"
 msgstr "đã có nhánh mang tên “%s”"
 
-#: branch.c:370
 #, c-format
 msgid "cannot force update the branch '%s' checked out at '%s'"
 msgstr "không thể ép buộc cập nhật nhánh “%s” đã được lấy ra tại “%s”"
 
-#: branch.c:393
 #, c-format
 msgid "cannot set up tracking information; starting point '%s' is not a branch"
 msgstr ""
 "không thể cài đặt thông tin theo dõi; điểm bắt đầu “%s” không phải là một "
 "nhánh"
 
-#: branch.c:395
 #, c-format
 msgid "the requested upstream branch '%s' does not exist"
 msgstr "nhánh thượng nguồn đã yêu cầu “%s” không tồn tại"
 
-#: branch.c:397
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -2047,28 +1659,22 @@ msgstr ""
 "sẽ theo dõi bản đối chiếu máy chủ của nó, bạn cần dùng lệnh\n"
 "\"git push -u\" để đặt cấu hình thượng nguồn bạn muốn push."
 
-#: branch.c:445 builtin/replace.c:321 builtin/replace.c:377
-#: builtin/replace.c:423 builtin/replace.c:453
 #, c-format
 msgid "not a valid object name: '%s'"
 msgstr "không phải là tên đối tượng hợp lệ: “%s”"
 
-#: branch.c:465
 #, c-format
 msgid "ambiguous object name: '%s'"
 msgstr "tên đối tượng chưa rõ ràng: “%s”."
 
-#: branch.c:470
 #, c-format
 msgid "not a valid branch point: '%s'"
 msgstr "không phải là một điểm nhánh hợp lệ: “%s”"
 
-#: branch.c:658
 #, c-format
 msgid "submodule '%s': unable to find submodule"
 msgstr "mô-đun-con “%s”: không thể tìm thấy mô-đun-con"
 
-#: branch.c:661
 #, c-format
 msgid ""
 "You may try updating the submodules using 'git checkout %s && git submodule "
@@ -2077,22960 +1683,18371 @@ msgstr ""
 "Bạn có thể thử cập nhật các mô-đun-con bằng cách sử dụng 'git checkout %s && "
 "git submodule update --init'"
 
-#: branch.c:672 branch.c:698
 #, c-format
 msgid "submodule '%s': cannot create branch '%s'"
 msgstr "mô-đun-con “%s”: không thể tạo nhánh “%s”"
 
-#: branch.c:730
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr "“%s” đã được lấy ra tại “%s” rồi"
 
-#: branch.c:755
 #, c-format
 msgid "HEAD of working tree %s is not updated"
 msgstr "HEAD của cây làm việc %s chưa được cập nhật"
 
-#: bundle.c:45
-#, c-format
-msgid "unrecognized bundle hash algorithm: %s"
-msgstr "không hiểu thuật toán băm dữ liệu bundle: %s"
+msgid "git add [<options>] [--] <pathspec>..."
+msgstr "git add [<các tùy chọn>] [--]  <pathspec>…"
 
-#: bundle.c:53
 #, c-format
-msgid "unknown capability '%s'"
-msgstr "không hiểu dung lượng “%s”"
+msgid "cannot chmod %cx '%s'"
+msgstr "không thể chmod %cx “%s”"
 
-#: bundle.c:79
 #, c-format
-msgid "'%s' does not look like a v2 or v3 bundle file"
-msgstr "“%s” không giống như tập tin v2 hay v3 bundle (định dạng dump của git)"
+msgid "unexpected diff status %c"
+msgstr "trạng thái lệnh diff không như mong đợi %c"
 
-#: bundle.c:118
-#, c-format
-msgid "unrecognized header: %s%s (%d)"
-msgstr "phần đầu không được thừa nhận: %s%s (%d)"
+msgid "updating files failed"
+msgstr "cập nhật tập tin gặp lỗi"
 
-#: bundle.c:145 rerere.c:464 rerere.c:675 sequencer.c:2616 sequencer.c:3402
-#: builtin/commit.c:865
 #, c-format
-msgid "could not open '%s'"
-msgstr "không thể mở “%s”"
+msgid "remove '%s'\n"
+msgstr "gỡ bỏ “%s”\n"
 
-#: bundle.c:203
-msgid "Repository lacks these prerequisite commits:"
-msgstr "Kho chứa thiếu những lần chuyển giao tiên quyết này:"
+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:"
 
-#: bundle.c:206
-msgid "need a repository to verify a bundle"
-msgstr "cần một kho chứa để thẩm tra một bundle"
+msgid "Could not read the index"
+msgstr "Không thể đọc bảng mục lục"
+
+msgid "Could not write patch"
+msgstr "Không thể ghi ra miếng vá"
+
+msgid "editing patch failed"
+msgstr "gặp lỗi khi sửa miếng vá"
 
-#: bundle.c:264
 #, c-format
-msgid "The bundle contains this ref:"
-msgid_plural "The bundle contains these %<PRIuMAX> refs:"
-msgstr[0] "Bó dữ liệu chứa %<PRIuMAX> tham chiếu:"
+msgid "Could not stat '%s'"
+msgstr "Không thể lấy thông tin thống kê về “%s”"
 
-#: bundle.c:272
-msgid "The bundle records a complete history."
-msgstr "Lệnh bundle ghi lại toàn bộ lịch sử."
+msgid "Empty patch. Aborted."
+msgstr "Miếng vá trống rỗng. Nên bỏ qua."
 
-#: bundle.c:274
 #, c-format
-msgid "The bundle requires this ref:"
-msgid_plural "The bundle requires these %<PRIuMAX> refs:"
-msgstr[0] "Lệnh bundle yêu cầu %<PRIuMAX> tham chiếu này:"
+msgid "Could not apply '%s'"
+msgstr "Không thể áp dụng miếng vá “%s”"
 
-#: bundle.c:350
-msgid "unable to dup bundle descriptor"
-msgstr "không thể nhân đôi bộ mô tả bundle"
+msgid "The following paths are ignored by one of your .gitignore files:\n"
+msgstr ""
+"Các đường dẫn theo sau đây sẽ bị lờ đi bởi một trong các tập tin .gitignore "
+"của bạn:\n"
 
-#: bundle.c:357
-msgid "Could not spawn pack-objects"
-msgstr "Không thể sản sinh đối tượng gói"
+msgid "dry run"
+msgstr "chạy thử"
 
-#: bundle.c:368
-msgid "pack-objects died"
-msgstr "đối tượng gói đã chết"
+msgid "be verbose"
+msgstr "chi tiết"
 
-#: bundle.c:417
-#, c-format
-msgid "ref '%s' is excluded by the rev-list options"
-msgstr "th.chiếu “%s” bị loại trừ bởi các tùy chọn rev-list"
+msgid "interactive picking"
+msgstr "sửa bằng cách tương tác"
 
-#: bundle.c:533 builtin/log.c:211 builtin/log.c:1975 builtin/shortlog.c:400
-#, c-format
-msgid "unrecognized argument: %s"
-msgstr "đối số không được thừa nhận: %s"
+msgid "select hunks interactively"
+msgstr "chọn “hunks” theo kiểu tương tác"
 
-#: bundle.c:548
-#, c-format
-msgid "unsupported bundle version %d"
-msgstr "phiên bản bundle %d không được hỗ trợ"
+msgid "edit current diff and apply"
+msgstr "sửa diff hiện nay và áp dụng nó"
 
-#: bundle.c:550
-#, c-format
-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"
+msgid "allow adding otherwise ignored files"
+msgstr "cho phép thêm các tập tin bị bỏ qua khác"
 
-#: bundle.c:600
-msgid "Refusing to create empty bundle."
-msgstr "Từ chối tạo một bó dữ liệu trống rỗng."
+msgid "update tracked files"
+msgstr "cập nhật các tập tin được theo dõi"
 
-#: bundle.c:610
-#, c-format
-msgid "cannot create '%s'"
-msgstr "không thể tạo “%s”"
+msgid "renormalize EOL of tracked files (implies -u)"
+msgstr "thường hóa lại EOL của các tập tin được theo dõi (ý là -u)"
 
-#: bundle.c:639
-msgid "index-pack died"
-msgstr "mục lục gói đã chết"
+msgid "record only the fact that the path will be added later"
+msgstr "chỉ ghi lại sự việc mà đường dẫn sẽ được thêm vào sau"
 
-#: chunk-format.c:117
-msgid "terminating chunk id appears earlier than expected"
-msgstr "mã mảnh kết thúc sớm hơn bình thường"
+msgid "add changes from all tracked and untracked files"
+msgstr ""
+"thêm các thay đổi từ tất cả các tập tin có cũng như không được theo dõi dấu "
+"vết"
 
-#: chunk-format.c:126
-#, c-format
-msgid "improper chunk offset(s) %<PRIx64> and %<PRIx64>"
-msgstr "bù mảnh không đúng cách %<PRIx64> và %<PRIx64>"
+msgid "ignore paths removed in the working tree (same as --no-all)"
+msgstr ""
+"lờ đi các đường dẫn bị gỡ bỏ trong cây thư mục làm việc (giống với --no-all)"
 
-#: chunk-format.c:133
-#, c-format
-msgid "duplicate chunk ID %<PRIx32> found"
-msgstr "tìm thấy ID của mảnh bị trùng lặp %<PRIx32>"
+msgid "don't add, only refresh the index"
+msgstr "không thêm, chỉ làm tươi mới bảng mục lục"
+
+msgid "just skip files which cannot be added because of errors"
+msgstr "chie bỏ qua những tập tin mà nó không thể được thêm vào bởi vì gặp lỗi"
+
+msgid "check if - even missing - files are ignored in dry run"
+msgstr ""
+"kiểm tra xem - thậm chí thiếu - tập tin bị bỏ qua trong quá trình chạy thử"
+
+msgid "allow updating entries outside of the sparse-checkout cone"
+msgstr "cho phép cập nhật các mục ở ngoài “sparse-checkout cone”"
+
+msgid "override the executable bit of the listed files"
+msgstr "ghi đè lên bít thi hành của các tập tin được liệt kê"
+
+msgid "warn when adding an embedded repository"
+msgstr "cảnh báo khi thêm một kho nhúng"
 
-#: chunk-format.c:147
 #, c-format
-msgid "final chunk has non-zero id %<PRIx32>"
-msgstr "mảnh cuối cùng có id không bằng không %<PRIx32>"
+msgid ""
+"You've added another git repository inside your current repository.\n"
+"Clones of the outer repository will not contain the contents of\n"
+"the embedded repository and will not know how to obtain it.\n"
+"If you meant to add a submodule, use:\n"
+"\n"
+"\tgit submodule add <url> %s\n"
+"\n"
+"If you added this path by mistake, you can remove it from the\n"
+"index with:\n"
+"\n"
+"\tgit rm --cached %s\n"
+"\n"
+"See \"git help submodule\" for more information."
+msgstr ""
+"Bạn vừa thêm một kho git vào bên trong kho hiện tại của bạn.\n"
+"Các bản sao của kho ngoài sẽ không chứa các nội dung của\n"
+"kho nhúng và sẽ không biết làm thế nào để lấy nó.\n"
+"Nếu ý bạn là thêm một mô-đun-con, hãy chạy:\n"
+"\n"
+"\tgit submodule add <url> %s\n"
+"\n"
+"Nếu bạn đã thêm miếng vá này chỉ là sai sót, bạn có thể xóa bỏ\n"
+"nó khỏi mục lục bằng:\n"
+"\n"
+"\tgit rm --cached %s\n"
+"\n"
+"Xem \"git help submodule\" để biết thêm chi tiết."
 
-#: color.c:354
 #, c-format
-msgid "invalid color value: %.*s"
-msgstr "giá trị màu không hợp lệ: %.*s"
+msgid "adding embedded git repository: %s"
+msgstr "thêm cần một kho git nhúng: %s"
 
-#: commit-graph.c:204 midx.c:52
-msgid "invalid hash version"
-msgstr "phiên bản băm không hợp lệ"
+msgid ""
+"Use -f if you really want to add them.\n"
+"Turn this message off by running\n"
+"\"git config advice.addIgnoredFile false\""
+msgstr ""
+"Sử dụng -f nếu bạn thực sự muốn thêm chúng.\n"
+"Tắt thông báo này bằng cách chạy lệnh\n"
+"\"git config advice.addIgnoredFile false\""
 
-#: commit-graph.c:262
-msgid "commit-graph file is too small"
-msgstr "tập tin đồ-thị-các-lần-chuyển-giao quá nhỏ"
+msgid "adding files failed"
+msgstr "thêm tập tin gặp lỗi"
 
-#: commit-graph.c:355
 #, c-format
-msgid "commit-graph signature %X does not match signature %X"
-msgstr "chữ ký đồ-thị-các-lần-chuyển-giao %X không khớp chữ ký %X"
+msgid "--chmod param '%s' must be either -x or +x"
+msgstr "--chmod tham số “%s” phải hoặc là -x hay +x"
 
-#: commit-graph.c:362
 #, c-format
-msgid "commit-graph version %X does not match version %X"
-msgstr "phiên bản đồ-thị-các-lần-chuyển-giao %X không khớp phiên bản %X"
+msgid "'%s' and pathspec arguments cannot be used together"
+msgstr "'%s' và các tham số đặc tả đường dẫn không thể dùng cùng nhau"
 
-#: commit-graph.c:369
 #, c-format
-msgid "commit-graph hash version %X does not match version %X"
-msgstr "phiên bản đồ-thị-các-lần-chuyển-giao %X không khớp phiên bản %X"
+msgid "Nothing specified, nothing added.\n"
+msgstr "Không có gì được chỉ ra, không có gì được thêm vào.\n"
 
-#: commit-graph.c:386
-#, c-format
-msgid "commit-graph file is too small to hold %u chunks"
-msgstr "tập tin đồ-thị-các-lần-chuyển-giao quá nhỏ để giữ %u mảnh dữ liệu"
+msgid ""
+"Maybe you wanted to say 'git add .'?\n"
+"Turn this message off by running\n"
+"\"git config advice.addEmptyPathspec false\""
+msgstr ""
+"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\""
 
-#: commit-graph.c:485
-msgid "commit-graph has no base graphs chunk"
-msgstr "đồ-thị-các-lần-chuyển-giao có không có mảnh các đồ họa cơ sở"
+msgid "index file corrupt"
+msgstr "tập tin ghi bảng mục lục bị hỏng"
 
-#: commit-graph.c:495
-msgid "commit-graph chain does not match"
-msgstr "móc xích đồ-thị-các-lần-chuyển-giao không khớp"
+#, c-format
+msgid "bad action '%s' for '%s'"
+msgstr "thao tác sai “%s” cho “%s”"
 
-#: commit-graph.c:543
 #, 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ột mã băm"
+msgid "invalid value for '%s': '%s'"
+msgstr "giá trị không hợp lệ cho '%s': '%s'"
 
-#: commit-graph.c:567
-msgid "unable to find all commit-graph files"
-msgstr "không thể tìm thấy tất cả các tập tin đồ-thị-các-lần-chuyển-giao"
+#, c-format
+msgid "could not read '%s'"
+msgstr "không thể đọc “%s”"
 
-#: commit-graph.c:752 commit-graph.c:789
-msgid "invalid commit position. commit-graph is likely corrupt"
-msgstr ""
-"vị trí lần chuyển giao không hợp lệ. đồ-thị-các-lần-chuyển-giao có vẻ như đã "
-"bị hỏng"
+msgid "could not parse author script"
+msgstr "không thể phân tích cú pháp văn lệnh tác giả"
 
-#: commit-graph.c:773
 #, c-format
-msgid "could not find commit %s"
-msgstr "không thể tìm thấy lần chuyển giao %s"
+msgid "could not parse %s"
+msgstr "không thể phân tích cú pháp %s"
 
-#: commit-graph.c:806
-msgid "commit-graph requires overflow generation data but has none"
-msgstr "commit-graph yêu cầu dữ liệu tạo tràn nhưng không có"
+#, c-format
+msgid "'%s' was deleted by the applypatch-msg hook"
+msgstr "“%s” bị xóa bởi móc applypatch-msg"
 
-#: commit-graph.c:1111 builtin/am.c:1370 builtin/checkout.c:775
-#: builtin/clone.c:705
 #, c-format
-msgid "unable to parse commit %s"
-msgstr "không thể phân tích lần chuyển giao “%s”"
+msgid "Malformed input line: '%s'."
+msgstr "Dòng đầu vào dị hình: “%s”."
 
-#: commit-graph.c:1373 builtin/pack-objects.c:3078
 #, c-format
-msgid "unable to get type of object %s"
-msgstr "không thể lấy kiểu của đối tượng “%s”"
+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”"
 
-#: commit-graph.c:1404
-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"
+msgid "fseek failed"
+msgstr "fseek gặp lỗi"
 
-#: commit-graph.c:1421
-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"
+#, c-format
+msgid "could not open '%s' for reading"
+msgstr "không thể mở “%s” để đọc"
 
-#: commit-graph.c:1441
-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"
+#, c-format
+msgid "could not open '%s' for writing"
+msgstr "không thể mở “%s” để ghi"
 
-#: commit-graph.c:1460
-msgid "Computing commit graph topological levels"
-msgstr "Đang tính mức hình học tô-pô tạo đồ thị các lần chuyển giao"
+#, c-format
+msgid "could not parse patch '%s'"
+msgstr "không thể phân tích cú pháp “%s”"
 
-#: commit-graph.c:1513
-msgid "Computing commit graph generation numbers"
-msgstr "Đang tính toán số tạo đồ thị các lần chuyển giao"
+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"
 
-#: commit-graph.c:1598
-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"
+msgid "invalid timestamp"
+msgstr "dấu thời gian không hợp lệ"
 
-#: commit-graph.c:1675
-msgid "Collecting referenced commits"
-msgstr "Đang sưu tập các lần chuyển giao được tham chiếu"
+msgid "invalid Date line"
+msgstr "dòng Ngày tháng không hợp lệ"
+
+msgid "invalid timezone offset"
+msgstr "độ lệch múi giờ không hợp lệ"
+
+msgid "Patch format detection failed."
+msgstr "Dò tìm định dạng miếng vá gặp lỗi."
 
-#: commit-graph.c:1701
 #, c-format
-msgid "Finding commits for commit graph in %<PRIuMAX> pack"
-msgid_plural "Finding commits for commit graph in %<PRIuMAX> packs"
-msgstr[0] ""
-"Đang tìm các lần chuyển giao cho đồ thị lần chuyển giao trong %<PRIuMAX> gói"
+msgid "failed to create directory '%s'"
+msgstr "tạo thư mục \"%s\" gặp lỗi"
+
+msgid "Failed to split patches."
+msgstr "Gặp lỗi khi chia nhỏ các miếng vá."
 
-#: commit-graph.c:1714
 #, c-format
-msgid "error adding pack %s"
-msgstr "gặp lỗi thêm gói %s"
+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\"."
 
-#: commit-graph.c:1718
 #, c-format
-msgid "error opening index for %s"
-msgstr "gặp lỗi khi mở mục lục cho “%s”"
+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ế."
 
-#: commit-graph.c:1756
-msgid "Finding commits for commit graph among packed objects"
+#, c-format
+msgid "To record the empty patch as an empty commit, run \"%s --allow-empty\"."
 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"
+"Để ghi một miếng vá trống rỗng như một lần chuyển giao rông, \"%s --allow-"
+"empty\"."
 
-#: commit-graph.c:1774
-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"
+#, 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\"."
 
-#: commit-graph.c:1823
-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ở"
+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."
 
-#: commit-graph.c:1854 midx.c:1168 builtin/sparse-checkout.c:475
 #, 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:1868
-msgid "unable to create temporary graph layer"
-msgstr "không thể tạo lớp sơ đồ tạm thời"
+msgid "missing author line in commit %s"
+msgstr "thiếu dòng tác giả trong lần chuyển gia %s"
 
-#: commit-graph.c:1873
 #, 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”"
+msgid "invalid ident line: %.*s"
+msgstr "dòng định danh không hợp lệ: %.*s"
 
-#: commit-graph.c:1930
 #, 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"
+msgid "unable to parse commit %s"
+msgstr "không thể phân tích lần chuyển giao “%s”"
 
-#: commit-graph.c:1967
-msgid "unable to open commit-graph chain file"
-msgstr "không thể mở tập tin mắt xích đồ thị chuyển giao"
+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”."
 
-#: commit-graph.c:1983
-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"
+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ở…"
 
-#: commit-graph.c:2004
-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"
+msgid ""
+"Did you hand edit your patch?\n"
+"It does not apply to blobs recorded in its index."
+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ó."
 
-#: commit-graph.c:2137
-msgid "Scanning merged commits"
-msgstr "Đang quét các lần chuyển giao đã hòa trộn"
+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”…"
 
-#: commit-graph.c:2181
-msgid "Merging commit-graph"
-msgstr "Đang hòa trộn đồ-thị-các-lần-chuyển-giao"
+msgid "Failed to merge in the changes."
+msgstr "Gặp lỗi khi trộn vào các thay đổi."
 
-#: commit-graph.c:2289
-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"
+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"
 
-#: commit-graph.c:2396
-msgid "too many commits to write graph"
-msgstr "có quá nhiều lần chuyển giao để ghi đồ thị"
+msgid "applying to an empty history"
+msgstr "áp dụng vào một lịch sử trống rỗng"
 
-#: commit-graph.c:2494
-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"
+msgid "failed to write commit object"
+msgstr "gặp lỗi khi ghi đối tượng chuyển giao"
 
-#: commit-graph.c:2504
 #, 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"
+msgid "cannot resume: %s does not exist."
+msgstr "không thể phục hồi: %s không tồn tại."
 
-#: commit-graph.c:2514 commit-graph.c:2529
-#, 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"
+msgid "Commit Body is:"
+msgstr "Thân của lần chuyển giao là:"
 
-#: commit-graph.c:2521
+#. TRANSLATORS: Make sure to include [y], [n], [e], [v] and [a]
+#. in your translation. The program will only accept English
+#. input at this point.
+#.
 #, 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"
+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]: "
 
-#: commit-graph.c:2539
-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"
+msgid "unable to write index file"
+msgstr "không thể ghi tập tin lưu mục lục"
 
-#: commit-graph.c:2554
 #, 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"
+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)"
 
-#: commit-graph.c:2561
 #, 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"
+msgid "Skipping: %.*s"
+msgstr "Đang bỏ qua: %.*s"
 
-#: commit-graph.c:2571
 #, 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"
+msgid "Creating an empty commit: %.*s"
+msgstr "Đang tạo một lần chuyển giao trống rỗng: %.*s"
 
-#: commit-graph.c:2580
-#, 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"
+msgid "Patch is empty."
+msgstr "Miếng vá trống rỗng."
 
-#: commit-graph.c:2594
 #, 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"
+msgid "Applying: %.*s"
+msgstr "Áp dụng: %.*s"
+
+msgid "No changes -- Patch already applied."
+msgstr "Không thay đổi gì cả -- Miếng vá đã được áp dụng rồi."
 
-#: commit-graph.c:2599
 #, c-format
+msgid "Patch failed at %s %.*s"
+msgstr "Gặp lỗi khi vá tại %s %.*s"
+
+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"
+
+msgid "No changes - recorded it as an empty commit."
+msgstr "Không có thay đổi nào - được ghi thành một lần chuyển giao rỗng."
+
 msgid ""
-"commit-graph has generation number zero for commit %s, but non-zero elsewhere"
+"No changes - did you forget to use 'git add'?\n"
+"If there is nothing left to stage, chances are that something else\n"
+"already introduced the same changes; you might want to skip this patch."
 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"
+"Không có thay đổi nào - bạn đã quên sử dụng lệnh “git add” à?\n"
+"Nếu ở đây không có gì còn lại stage, tình cờ là có một số thứ khác\n"
+"đã 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."
 
-#: commit-graph.c:2603
-#, c-format
 msgid ""
-"commit-graph has non-zero generation number for commit %s, but zero elsewhere"
+"You still have unmerged paths in your index.\n"
+"You should 'git add' each file with resolved conflicts to mark them as "
+"such.\n"
+"You might run `git rm` on a file to accept \"deleted by them\" for it."
 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"
+"Bạn vẫn có những đường dẫn chưa hòa trộn trong chỉ mục của bạn.\n"
+"Bạn nên “git add” từng tập tin với các xung đột đã được giải quyết để đánh "
+"dấu chúng là thế.\n"
+"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ó."
 
-#: commit-graph.c:2620
-#, c-format
-msgid "commit-graph generation for commit %s is %<PRIuMAX> < %<PRIuMAX>"
-msgstr ""
-"tạo đồ-thị-các-lần-chuyển-giao cho lần chuyển giao %s là %<PRIuMAX> < "
-"%<PRIuMAX>"
+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"
 
-#: commit-graph.c:2626
 #, c-format
-msgid "commit date for commit %s in commit-graph is %<PRIuMAX> != %<PRIuMAX>"
+msgid "Could not parse object '%s'."
+msgstr "Không thể phân tích đối tượng “%s”."
+
+msgid "failed to clean index"
+msgstr "gặp lỗi khi dọn bảng mục lục"
+
+msgid ""
+"You seem to have moved HEAD since the last 'am' failure.\n"
+"Not rewinding to ORIG_HEAD"
 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>"
+"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"
 
-#: commit.c:54 sequencer.c:3105 builtin/am.c:400 builtin/am.c:445
-#: builtin/am.c:450 builtin/am.c:1449 builtin/am.c:2124 builtin/replace.c:456
 #, c-format
-msgid "could not parse %s"
-msgstr "không thể phân tích cú pháp %s"
+msgid "failed to read '%s'"
+msgstr "gặp lỗi khi đọc “%s”"
 
-#: commit.c:56
 #, c-format
-msgid "%s %s is not a commit!"
-msgstr "%s %s không phải là một lần chuyển giao!"
+msgid "options '%s=%s' and '%s=%s' cannot be used together"
+msgstr "tùy chọn '%s=%s' và '%s=%s' không thể dùng cùng nhau"
 
-#: commit.c:197
-msgid ""
-"Support for <GIT_DIR>/info/grafts is deprecated\n"
-"and will be removed in a future Git version.\n"
-"\n"
-"Please use \"git replace --convert-graft-file\"\n"
-"to convert the grafts into replace refs.\n"
-"\n"
-"Turn this message off by running\n"
-"\"git config advice.graftFileDeprecated false\""
-msgstr ""
-"Việc hỗ trợ cho <GIT_DIR>/info/grafts đã lạc hậu\n"
-"và sẽ bị xóa bỏ ở phiên bản Git tương lai.\n"
-"\n"
-"Vui lòng dùng \"git replace --convert-graft-file\"\n"
-"để chuyển đổi các graft thành các tham chiếu thay thế.\n"
-"\n"
-"Tắt lời nhắn này bằng cách chạy\n"
-"\"git config advice.graftFileDeprecated false\""
-
-#: commit.c:1252
-#, c-format
-msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
-msgstr ""
-"Lần chuyển giao %s có một chữ ký GPG không đáng tin, được cho là bởi %s."
+msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
+msgstr "git am [<các tùy chọn>] [(<mbox>|<Maildir>)…]"
 
-#: commit.c:1256
-#, c-format
-msgid "Commit %s has a bad GPG signature allegedly by %s."
-msgstr "Lần chuyển giao %s có một chữ ký GPG sai, được cho là bởi %s."
+msgid "git am [<options>] (--continue | --skip | --abort)"
+msgstr "git am [<các tùy chọn>] (--continue | --skip | --abort)"
 
-#: commit.c:1259
-#, c-format
-msgid "Commit %s does not have a GPG signature."
-msgstr "Lần chuyển giao %s không có chữ ký GPG."
+msgid "run interactively"
+msgstr "chạy kiểu tương tác"
 
-#: commit.c:1262
-#, c-format
-msgid "Commit %s has a good GPG signature by %s\n"
-msgstr "Lần chuyển giao %s có một chữ ký GPG tốt bởi %s\n"
+msgid "historical option -- no-op"
+msgstr "tùy chọn lịch sử -- không-toán-tử"
 
-#: commit.c:1516
-msgid ""
-"Warning: commit message did not conform to UTF-8.\n"
-"You may want to amend it after fixing the message, or set the config\n"
-"variable i18n.commitencoding to the encoding your project uses.\n"
-msgstr ""
-"Cảnh báo: ghi chú cho lần chuyển giao không hợp chuẩn UTF-8.\n"
-"Bạn có lẽ muốn tu bổ nó sau khi sửa lời chú thích, hoặc là đặt biến\n"
-"cấu hình i18n.commitencoding thành bảng mã mà dự án của bạn muốn dùng.\n"
+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"
 
-#: compat/obstack.c:406 compat/obstack.c:408
-msgid "memory exhausted"
-msgstr "hết bộ nhớ"
+msgid "be quiet"
+msgstr "im lặng"
 
-#: compat/terminal.c:167
-msgid "cannot resume in the background, please use 'fg' to resume"
-msgstr ""
-"không thể khôi phục lại trong nền hệ thống, vui lòng sử dụng 'fg' để khôi "
-"phục lại"
+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"
 
-#: compat/terminal.c:168
-msgid "cannot restore terminal settings"
-msgstr "không thể phục hồi lại các cài đặt thiết bị cuối"
+msgid "recode into utf8 (default)"
+msgstr "chuyển mã thành utf8 (mặc định)"
 
-#: config.c:143
-#, c-format
-msgid ""
-"exceeded maximum include depth (%d) while including\n"
-"\t%s\n"
-"from\n"
-"\t%s\n"
-"This might be due to circular includes."
-msgstr ""
-"vượt quá độ sâu bao gồm tối đa (%d) trong khi bao gồm\n"
-"\t%s\n"
-"từ\n"
-"\t%s\n"
-"Nguyên nhân có thể là gồm quẩn vòng."
+msgid "pass -k flag to git-mailinfo"
+msgstr "chuyển cờ -k cho git-mailinfo"
 
-#: config.c:159
-#, c-format
-msgid "could not expand include path '%s'"
-msgstr "không thể khai triển đường dẫn “%s”"
+msgid "pass -b flag to git-mailinfo"
+msgstr "chuyển cờ -b cho git-mailinfo"
 
-#: config.c:170
-msgid "relative config includes must come from files"
-msgstr "các bao gồm cấu hình liên quan phải đến từ các tập tin"
+msgid "pass -m flag to git-mailinfo"
+msgstr "chuyển cờ -m cho git-mailinfo"
 
-#: config.c:219
-msgid "relative config include conditionals must come from files"
-msgstr "các điều kiện bao gồm cấu hình liên quan phải đến từ các tập tin"
+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"
 
-#: config.c:364
-msgid ""
-"remote URLs cannot be configured in file directly or indirectly included by "
-"includeIf.hasconfig:remote.*.url"
+msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
 msgstr ""
-"các URL máy chủ không thể được cấu hình trong tệp trực tiếp hoặc gián tiếp "
-"được bao gồm bởi includeIf.hasconfig:remote.*.url"
-
-#: config.c:508
-#, c-format
-msgid "invalid config format: %s"
-msgstr "định dạng cấu hình không hợp lệ: %s"
-
-#: config.c:512
-#, c-format
-msgid "missing environment variable name for configuration '%.*s'"
-msgstr "thiếu tên biến môi trường cho cấu hình “%.*s”"
+"đừng chuyển cờ --keep-cr cho git-mailsplit không phụ thuộc vào am.keepcr"
 
-#: config.c:517
-#, c-format
-msgid "missing environment variable '%s' for configuration '%.*s'"
-msgstr "thiếu biến môi trường “%s” cho cấu hình “%.*s”"
+msgid "strip everything before a scissors line"
+msgstr "cắt mọi thứ trước dòng scissors"
 
-#: config.c:553
-#, c-format
-msgid "key does not contain a section: %s"
-msgstr "khóa không chứa một phần: %s"
+msgid "pass it through git-mailinfo"
+msgstr "chuyển nó qua git-mailinfo"
 
-#: config.c:558
-#, c-format
-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"
+msgid "pass it through git-apply"
+msgstr "chuyển nó qua git-apply"
 
-#: config.c:580 sequencer.c:2802
-#, c-format
-msgid "invalid key: %s"
-msgstr "khóa không đúng: %s"
+msgid "n"
+msgstr "n"
 
-#: config.c:585
-#, c-format
-msgid "invalid key (newline): %s"
-msgstr "khóa không hợp lệ (dòng mới): %s"
+msgid "format"
+msgstr "định dạng"
 
-#: config.c:605
-msgid "empty config key"
-msgstr "khóa cấu hình trống rỗng"
+msgid "format the patch(es) are in"
+msgstr "định dạng (các) miếng vá theo"
 
-#: config.c:623 config.c:635
-#, c-format
-msgid "bogus config parameter: %s"
-msgstr "tham số cấu hình không có thực: %s"
+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"
 
-#: config.c:649 config.c:666 config.c:673 config.c:682
-#, c-format
-msgid "bogus format in %s"
-msgstr "định dạng không có thực trong %s"
+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"
 
-#: config.c:716
-#, c-format
-msgid "bogus count in %s"
-msgstr "số lượng không có thực trong %s"
+msgid "synonyms for --continue"
+msgstr "đồng nghĩa với --continue"
 
-#: config.c:720
-#, c-format
-msgid "too many entries in %s"
-msgstr "quá nhiều mục tin trong %s"
+msgid "skip the current patch"
+msgstr "bỏ qua miếng vá hiện hành"
 
-#: config.c:730
-#, c-format
-msgid "missing config key %s"
-msgstr "thiếu khóa cấu hình “%s”"
+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á"
 
-#: config.c:738
-#, c-format
-msgid "missing config value %s"
-msgstr "thiếu giá trị cấu hình “%s”"
+msgid "abort the patching operation but keep HEAD where it is"
+msgstr "bỏ qua thao tác vá nhưng vẫn giữ HEAD nơi nó chỉ đến"
 
-#: config.c:1089
-#, c-format
-msgid "bad config line %d in blob %s"
-msgstr "tập tin cấu hình sai tại dòng %d trong blob %s"
+msgid "show the patch being applied"
+msgstr "hiển thị miếng vá đã được áp dụng rồi"
 
-#: config.c:1093
-#, c-format
-msgid "bad config line %d in file %s"
-msgstr "cấu hình sai tại dòng %d trong tập tin %s"
+msgid "record the empty patch as an empty commit"
+msgstr "ghi lại miếng vá trống rỗng như là một lần chuyển giao trống"
 
-#: config.c:1097
-#, c-format
-msgid "bad config line %d in standard input"
-msgstr "cấu hình sai tại dòng %d trong đầu vào tiêu chuẩn"
+msgid "lie about committer date"
+msgstr "nói dối về ngày chuyển giao"
 
-#: config.c:1101
-#, c-format
-msgid "bad config line %d in submodule-blob %s"
-msgstr "cấu hình sai tại dòng %d trong blob-mô-đun-con %s"
+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ả"
 
-#: config.c:1105
-#, c-format
-msgid "bad config line %d in command line %s"
-msgstr "cấu hình sai tại dòng %d trong dòng lệnh %s"
+msgid "key-id"
+msgstr "mã-số-khóa"
 
-#: config.c:1109
-#, c-format
-msgid "bad config line %d in %s"
-msgstr "cấu hình sai tại dòng %d trong %s"
+msgid "GPG-sign commits"
+msgstr "Các lần chuyển giao ký-GPG"
 
-#: config.c:1246
-msgid "out of range"
-msgstr "nằm ngoài phạm vi"
+msgid "how to handle empty patches"
+msgstr "xử lý các miếng vá trống rỗng như thế nào"
 
-#: config.c:1246
-msgid "invalid unit"
-msgstr "đơn vị không hợp lệ"
+msgid "(internal use for git-rebase)"
+msgstr "(dùng nội bộ cho git-rebase)"
 
-#: config.c:1247
-#, c-format
-msgid "bad numeric config value '%s' for '%s': %s"
-msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s”: %s"
+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."
+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."
 
-#: config.c:1257
-#, c-format
-msgid "bad numeric config value '%s' for '%s' in blob %s: %s"
-msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong blob %s: %s"
+msgid "failed to read the index"
+msgstr "gặp lỗi đọc bảng mục lục"
 
-#: config.c:1260
 #, c-format
-msgid "bad numeric config value '%s' for '%s' in file %s: %s"
-msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong tập tin %s: %s"
+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."
 
-#: config.c:1263
 #, c-format
-msgid "bad numeric config value '%s' for '%s' in standard input: %s"
+msgid ""
+"Stray %s directory found.\n"
+"Use \"git am --abort\" to remove it."
 msgstr ""
-"sai giá trị bằng số của cấu hình “%s” cho “%s” trong đầu vào tiêu chuẩn: %s"
+"Tìm thấy thư mục lạc %s.\n"
+"Dùng \"git am --abort\" để loại bỏ nó đi."
 
-#: config.c:1266
-#, c-format
-msgid "bad numeric config value '%s' for '%s' in submodule-blob %s: %s"
-msgstr ""
-"sai giá trị bằng số của cấu hình “%s” cho “%s” trong submodule-blob %s: %s"
+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."
 
-#: config.c:1269
-#, c-format
-msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
-msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong dòng lệnh %s: %s"
+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"
 
-#: config.c:1272
-#, c-format
-msgid "bad numeric config value '%s' for '%s' in %s: %s"
-msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong %s: %s"
+msgid "git apply [<options>] [<patch>...]"
+msgstr "git apply [<các tùy chọn>] [<miếng-vá>…]"
 
-#: config.c:1368
-#, c-format
-msgid "invalid value for variable %s"
-msgstr "giá trị không hợp lệ cho biến %s"
+msgid "could not redirect output"
+msgstr "không thể chuyển hướng kết xuất"
 
-#: config.c:1389
-#, c-format
-msgid "ignoring unknown core.fsync component '%s'"
-msgstr "bỏ qua thành phần core.fsync chưa biết '%s'"
+msgid "git archive: Remote with no URL"
+msgstr "git archive: Máy chủ không có địa chỉ URL"
 
-#: config.c:1425
-#, c-format
-msgid "bad boolean config value '%s' for '%s'"
-msgstr "sai giá trị kiểu lô-gíc của cấu hình “%s” cho “%s”"
+msgid "git archive: expected ACK/NAK, got a flush packet"
+msgstr "git archive: cần ACK/NAK, nhưng lại nhận được gói flush"
 
-#: config.c:1443
 #, c-format
-msgid "failed to expand user dir in: '%s'"
-msgstr "gặp lỗi mở rộng thư mục người dùng trong: “%s”"
+msgid "git archive: NACK %s"
+msgstr "git archive: NACK %s"
 
-#: config.c:1452
-#, c-format
-msgid "'%s' for '%s' is not a valid timestamp"
-msgstr "“%s” dành cho “%s” không phải là dấu vết thời gian hợp lệ"
-
-#: config.c:1545
-#, c-format
-msgid "abbrev length out of range: %d"
-msgstr "chiều dài abbrev nằm ngoài phạm vi: %d"
+msgid "git archive: protocol error"
+msgstr "git archive: lỗi giao thức"
 
-#: config.c:1559 config.c:1570
-#, c-format
-msgid "bad zlib compression level %d"
-msgstr "mức nén zlib %d là sai"
+msgid "git archive: expected a flush"
+msgstr "git archive: cần một flush (đẩy dữ liệu lên đĩa)"
 
-#: config.c:1660
-msgid "core.commentChar should only be one character"
-msgstr "core.commentChar chỉ được có một ký tự"
+msgid "git bisect--helper --bisect-reset [<commit>]"
+msgstr "git bisect--helper --bisect-reset [<lần_chuyển_giao>]"
 
-#: config.c:1692
-#, c-format
-msgid "ignoring unknown core.fsyncMethod value '%s'"
-msgstr "bỏ qua giá trị core.fsyncMethod chưa biết '%s'"
+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>…]"
 
-#: config.c:1698
-msgid "core.fsyncObjectFiles is deprecated; use core.fsync instead"
-msgstr "core.fsyncObjectFiles đã lạc hậu; hãy dùng core.fsync để thay thế"
+msgid "git bisect--helper --bisect-state (bad|new) [<rev>]"
+msgstr "git bisect--helper --bisect-state (bad|new) [<lần_chuyển_giao>]"
 
-#: config.c:1714
-#, c-format
-msgid "invalid mode for object creation: %s"
-msgstr "chế độ không hợp lệ đối với việc tạo đối tượng: %s"
+msgid "git bisect--helper --bisect-state (good|old) [<rev>...]"
+msgstr "git bisect--helper --bisect-state (good|old) [<lần_chuyển_giao>…]"
 
-#: config.c:1800
-#, c-format
-msgid "malformed value for %s"
-msgstr "giá trị cho %s sai dạng"
+msgid "git bisect--helper --bisect-replay <filename>"
+msgstr "git bisect--helper --bisect-replay <tên_tập_tin>"
 
-#: config.c:1826
-#, c-format
-msgid "malformed value for %s: %s"
-msgstr "giá trị cho %s sai dạng: %s"
+msgid "git bisect--helper --bisect-skip [(<rev>|<range>)...]"
+msgstr "git bisect--helper --bisect-skip [(<rev>|<vùng>)…]"
 
-#: config.c:1827
-msgid "must be one of nothing, matching, simple, upstream or current"
-msgstr "phải là một trong số nothing, matching, simple, upstream hay current"
+msgid "git bisect--helper --bisect-run <cmd>..."
+msgstr "git bisect--helper --bisect-run <lệnh>…"
 
-#: config.c:1888 builtin/pack-objects.c:4078
 #, c-format
-msgid "bad pack compression level %d"
-msgstr "mức nén gói %d không hợp lệ"
+msgid "cannot open file '%s' in mode '%s'"
+msgstr "không thể mở tập tin “%s” ở chế độ “%s”"
 
-#: config.c:2014
 #, c-format
-msgid "unable to load config blob object '%s'"
-msgstr "không thể tải đối tượng blob cấu hình “%s”"
+msgid "could not write to file '%s'"
+msgstr "không thể ghi vào tập tin “%s”"
 
-#: config.c:2017
 #, c-format
-msgid "reference '%s' does not point to a blob"
-msgstr "tham chiếu “%s” không chỉ đến một blob nào cả"
+msgid "cannot open file '%s' for reading"
+msgstr "không thể mở tập tin “%s” để đọc"
 
-#: config.c:2035
 #, c-format
-msgid "unable to resolve config blob '%s'"
-msgstr "không thể phân giải điểm xét duyệt “%s”"
+msgid "'%s' is not a valid term"
+msgstr "“%s” không phải một thời hạn hợp lệ"
 
-#: config.c:2080
 #, c-format
-msgid "failed to parse %s"
-msgstr "gặp lỗi khi phân tích cú pháp %s"
+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ỳ"
 
-#: config.c:2136
-msgid "unable to parse command-line config"
-msgstr "không thể phân tích cấu hình dòng lệnh"
+#, 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”"
 
-#: config.c:2512
-msgid "unknown error occurred while reading the configuration files"
-msgstr "đã có lỗi chưa biết xảy ra trong khi đọc các tập tin cấu hình"
+msgid "please use two different terms"
+msgstr "vui lòng dùng hai thời kỳ khác nhau"
 
-#: config.c:2686
 #, c-format
-msgid "Invalid %s: '%s'"
-msgstr "%s không hợp lệ: “%s”"
+msgid "We are not bisecting.\n"
+msgstr "Chúng tôi đang không bisect.\n"
 
-#: config.c:2731
 #, c-format
-msgid "splitIndex.maxPercentChange value '%d' should be between 0 and 100"
-msgstr "giá trị splitIndex.maxPercentChange “%d” phải nằm giữa 0 và 100"
+msgid "'%s' is not a valid commit"
+msgstr "“%s” không phải một lần chuyển giao hợp lệ"
 
-#: config.c:2763
 #, c-format
-msgid "unable to parse '%s' from command-line config"
-msgstr "không thể phân tích “%s” từ cấu hình dòng lệnh"
+msgid ""
+"could not check out original HEAD '%s'. Try 'git bisect reset <commit>'."
+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>”."
 
-#: config.c:2765
 #, c-format
-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"
+msgid "Bad bisect_write argument: %s"
+msgstr "Đối số bisect_write sai: %s"
 
-#: config.c:2850
 #, c-format
-msgid "invalid section name '%s'"
-msgstr "tên của phần không hợp lệ “%s”"
+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”"
 
-#: config.c:2882
 #, c-format
-msgid "%s has multiple values"
-msgstr "%s có đa giá trị"
+msgid "couldn't open the file '%s'"
+msgstr "không thể mở tập tin “%s”"
 
-#: config.c:2911
 #, 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”"
+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"
 
-#: config.c:3177 config.c:3518
 #, c-format
-msgid "could not lock config file %s"
-msgstr "không thể khóa tập tin cấu hình %s"
+msgid ""
+"You need to give me at least one %s and %s revision.\n"
+"You can use \"git bisect %s\" and \"git bisect %s\" for that."
+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 đó."
 
-#: config.c:3188
 #, c-format
-msgid "opening %s"
-msgstr "đang mở “%s”"
+msgid ""
+"You need to start by \"git bisect start\".\n"
+"You then need to give me at least one %s and %s revision.\n"
+"You can use \"git bisect %s\" and \"git bisect %s\" for that."
+msgstr ""
+"Bạn cần bắt đầu bằng lệnh \"git bisect start\".\n"
+"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."
 
-#: config.c:3225 builtin/config.c:361
 #, c-format
-msgid "invalid pattern: %s"
-msgstr "mẫu không hợp lệ: %s"
+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"
 
-#: config.c:3250
-#, c-format
-msgid "invalid config file %s"
-msgstr "tập tin cấu hình “%s” không hợp lệ"
+#. TRANSLATORS: Make sure to include [Y] and [n] in your
+#. translation. The program will only accept English input
+#. at this point.
+#.
+msgid "Are you sure [Y/n]? "
+msgstr "Bạn có chắc chắn chưa [Y/n]? "
 
-#: config.c:3263 config.c:3531
-#, c-format
-msgid "fstat on %s failed"
-msgstr "fstat trên %s gặp lỗi"
+msgid "status: waiting for both good and bad commits\n"
+msgstr "trạng thái: đang chờ cho cả các lần chuyển giao tốt và sai\n"
 
-#: config.c:3274
 #, c-format
-msgid "unable to mmap '%s'%s"
-msgstr "không thể mmap “%s”%s"
+msgid "status: waiting for bad commit, %d good commit known\n"
+msgid_plural "status: waiting for bad commit, %d good commits known\n"
+msgstr[0] ""
+"trạng thái: đang chờ cho lần chuyển giao sai, đã biết %d lần chuyển giao "
+"tốt\n"
 
-#: config.c:3284 config.c:3536
-#, c-format
-msgid "chmod on %s failed"
-msgstr "chmod trên %s gặp lỗi"
+msgid "status: waiting for good commit(s), bad commit known\n"
+msgstr ""
+"trạng thái: đang chờ cho lần chuyển giao tốt, chưa biết lần chuyển giao sai\n"
 
-#: config.c:3369 config.c:3633
-#, c-format
-msgid "could not write config file %s"
-msgstr "không thể ghi tập tin cấu hình “%s”"
+msgid "no terms defined"
+msgstr "chưa định nghĩa thời kỳ nào"
 
-#: config.c:3403
 #, c-format
-msgid "could not set '%s' to '%s'"
-msgstr "không thể đặt “%s” thành “%s”"
+msgid ""
+"Your current terms are %s for the old state\n"
+"and %s for the new state.\n"
+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"
 
-#: config.c:3405 builtin/remote.c:666 builtin/remote.c:885 builtin/remote.c:893
 #, c-format
-msgid "could not unset '%s'"
-msgstr "không thể thôi đặt “%s”"
+msgid ""
+"invalid argument %s for 'git bisect terms'.\n"
+"Supported options are: --term-good|--term-old and --term-bad|--term-new."
+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."
 
-#: config.c:3509
-#, c-format
-msgid "invalid section name: %s"
-msgstr "tên của phần không hợp lệ: %s"
+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"
 
-#: config.c:3676
 #, c-format
-msgid "missing value for '%s'"
-msgstr "thiếu giá trị cho cho “%s”"
-
-#: connect.c:61
-msgid "the remote end hung up upon initial contact"
-msgstr "máy chủ bị treo trên lần tiếp xúc đầu tiên"
+msgid "could not open '%s' for appending"
+msgstr "không thể mở “%s” để nối thêm"
 
-#: connect.c:63
-msgid ""
-"Could not read from remote repository.\n"
-"\n"
-"Please make sure you have the correct access rights\n"
-"and the repository exists."
-msgstr ""
-"Không thể đọc từ kho trên mạng.\n"
-"\n"
-"Vui lòng chắc chắn là bạn có đủ thẩm quyền truy cập\n"
-"và kho chứa đã sẵn có."
+msgid "'' is not a valid term"
+msgstr "” không phải một thời hạn hợp lệ"
 
-#: connect.c:81
 #, c-format
-msgid "server doesn't support '%s'"
-msgstr "máy chủ không hỗ trợ “%s”"
+msgid "unrecognized option: '%s'"
+msgstr "tùy chọn không được thừa nhận: “%s”"
 
-#: connect.c:118
 #, c-format
-msgid "server doesn't support feature '%s'"
-msgstr "máy chủ không hỗ trợ tính năng “%s”"
+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ệ"
 
-#: connect.c:129
-msgid "expected flush after capabilities"
-msgstr "cần đẩy dữ liệu lên đĩa sau các capabilities"
+msgid "bad HEAD - I need a HEAD"
+msgstr "sai HEAD - Tôi cần một HEAD"
 
-#: connect.c:265
 #, c-format
-msgid "ignoring capabilities after first line '%s'"
-msgstr "bỏ qua capabilities sau dòng đầu tiên “%s”"
+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ệ>\"."
 
-#: connect.c:286
-msgid "protocol error: unexpected capabilities^{}"
-msgstr "lỗi giao thức: không cần capabilities^{}"
+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"
+
+msgid "bad HEAD - strange symbolic ref"
+msgstr "sai HEAD - tham chiếu mềm kỳ lạ"
 
-#: connect.c:308
 #, c-format
-msgid "protocol error: expected shallow sha-1, got '%s'"
-msgstr "lỗi giao thức: cần sha-1 shallow, nhưng lại nhận được “%s”"
+msgid "invalid ref: '%s'"
+msgstr "refspec không hợp lệ: “%s”"
 
-#: connect.c:310
-msgid "repository on the other end cannot be shallow"
-msgstr "kho đã ở điểm cuối khoác nên không thể được shallow"
+msgid "You need to start by \"git bisect start\"\n"
+msgstr "Bạn cần khởi đầu bằng \"git bisect start\"\n"
 
-#: connect.c:349
-msgid "invalid packet"
-msgstr "gói không hợp lệ"
+#. TRANSLATORS: Make sure to include [Y] and [n] in your
+#. translation. The program will only accept English input
+#. at this point.
+#.
+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]? "
 
-#: connect.c:369
-#, c-format
-msgid "protocol error: unexpected '%s'"
-msgstr "lỗi giao thức: không cần “%s”"
+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ố"
 
-#: connect.c:499
 #, 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ụ"
+msgid "'git bisect %s' can take only one argument."
+msgstr "“git bisect %s” có thể lấy chỉ một đối số."
 
-#: connect.c:528
 #, c-format
-msgid "invalid ls-refs response: %s"
-msgstr "trả về của ls-refs không hợp lệ: %s"
+msgid "Bad rev input: %s"
+msgstr "Đầu vào rev sai: %s"
 
-#: connect.c:532
-msgid "expected flush after ref listing"
-msgstr "cần đẩy dữ liệu lên đĩa sau khi liệt kê tham chiếu"
+#, c-format
+msgid "Bad rev input (not a commit): %s"
+msgstr "Đầu vào rev sai (không phải là lần chuyển giao): %s"
 
-#: connect.c:535
-msgid "expected response end packet after ref listing"
-msgstr "cần nhận được trả lời là kết thúc gói sau khi liệt kê tham chiếu"
+msgid "We are not bisecting."
+msgstr "Chúng tôi không bisect."
 
-#: connect.c:670
 #, c-format
-msgid "protocol '%s' is not supported"
-msgstr "giao thức “%s” chưa được hỗ trợ"
-
-#: connect.c:721
-msgid "unable to set SO_KEEPALIVE on socket"
-msgstr "không thể đặt SO_KEEPALIVE trên ổ cắm"
+msgid "'%s'?? what are you talking about?"
+msgstr "“%s”?? bạn đang nói gì thế?"
 
-#: connect.c:761 connect.c:824
 #, c-format
-msgid "Looking up %s ... "
-msgstr "Đang tìm kiếm %s … "
+msgid "cannot read file '%s' for replaying"
+msgstr "không thể đọc tập tin “%s” để thao diễn lại"
 
-#: connect.c:765
 #, c-format
-msgid "unable to look up %s (port %s) (%s)"
-msgstr "không tìm được %s (cổng %s) (%s)"
+msgid "running %s\n"
+msgstr "đang chạy %s\n"
 
-#. TRANSLATORS: this is the end of "Looking up %s ... "
-#: connect.c:769 connect.c:840
-#, c-format
-msgid ""
-"done.\n"
-"Connecting to %s (port %s) ... "
-msgstr ""
-"xong.\n"
-"Đang kết nối đến %s (cổng %s) … "
+msgid "bisect run failed: no command provided."
+msgstr "bisect chạy gặp lỗi: không đưa ra lệnh."
 
-#: connect.c:791 connect.c:868
 #, c-format
-msgid ""
-"unable to connect to %s:\n"
-"%s"
-msgstr ""
-"không thể kết nối đến %s:\n"
-"%s"
-
-#. TRANSLATORS: this is the end of "Connecting to %s (port %s) ... "
-#: connect.c:797 connect.c:874
-msgid "done."
-msgstr "hoàn tất."
+msgid "unable to verify '%s' on good revision"
+msgstr "không thể xác nhận “%s” trên điểm xét duyệt tốt"
 
-#: connect.c:828
 #, c-format
-msgid "unable to look up %s (%s)"
-msgstr "không thể tìm thấy %s (%s)"
+msgid "bogus exit code %d for good revision"
+msgstr "mã thoát giả %d cho điểm xét duyệt tốt"
 
-#: connect.c:834
 #, c-format
-msgid "unknown port %s"
-msgstr "không hiểu cổng %s"
+msgid "bisect run failed: exit code %d from '%s' is < 0 or >= 128"
+msgstr "chạy bisect gặp lỗi: mã trả về %d từ lệnh “%s” là < 0 hoặc >= 128"
 
-#: connect.c:971 connect.c:1303
 #, c-format
-msgid "strange hostname '%s' blocked"
-msgstr "đã khóa tên máy lạ “%s”"
+msgid "cannot open file '%s' for writing"
+msgstr "không thể mở “%s” để ghi"
+
+msgid "bisect run cannot continue any more"
+msgstr "bisect không thể tiếp tục thêm được nữa"
 
-#: connect.c:973
 #, c-format
-msgid "strange port '%s' blocked"
-msgstr "đã khóa cổng lạ “%s”"
+msgid "bisect run success"
+msgstr "bisect chạy thành công"
 
-#: connect.c:983
 #, c-format
-msgid "cannot start proxy %s"
-msgstr "không thể khởi chạy ủy nhiệm “%s”"
+msgid "bisect found first bad commit"
+msgstr "bisect tìm thấy lần chuyển giao sai đầu tiên"
 
-#: connect.c:1054
-msgid "no path specified; see 'git help pull' for valid url syntax"
-msgstr "chưa chỉ định đường dẫn; xem'git help pull” để biết cú pháp url hợp lệ"
+#, c-format
+msgid ""
+"bisect run failed: 'git bisect--helper --bisect-state %s' exited with error "
+"code %d"
+msgstr ""
+"chạy bisect gặp lỗi: “git bisect--helper --bisect-state %s” đã thoát ra với "
+"mã lỗi %d"
 
-#: connect.c:1194
-msgid "newline is forbidden in git:// hosts and repo paths"
-msgstr "newline bị cấm trong các git:// máy chủ và đường dẫn repo"
+msgid "reset the bisection state"
+msgstr "đặt lại trạng di chuyển nửa bước"
 
-#: connect.c:1251
-msgid "ssh variant 'simple' does not support -4"
-msgstr "ssh biến thể “simple” không hỗ trợ -4"
+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"
 
-#: connect.c:1263
-msgid "ssh variant 'simple' does not support -6"
-msgstr "ssh biến thể “simple” không hỗ trợ -6"
+msgid "print out the bisect terms"
+msgstr "in ra các thời điểm di chuyển nửa bước"
 
-#: connect.c:1280
-msgid "ssh variant 'simple' does not support setting port"
-msgstr "ssh biến thể “simple” không hỗ trợ đặt cổng"
+msgid "start the bisect session"
+msgstr "bắt đầu phiên di chuyển nửa bước"
 
-#: connect.c:1392
-#, c-format
-msgid "strange pathname '%s' blocked"
-msgstr "đã khóa tên đường dẫn lạ “%s”"
+msgid "find the next bisection commit"
+msgstr "tìm lần chuyển giao không di chuyển phân đôi"
 
-#: connect.c:1440
-msgid "unable to fork"
-msgstr "không thể rẽ nhánh tiến trình con"
+msgid "mark the state of ref (or refs)"
+msgstr "đánh dấu trạng thái ref (hoặc refs)"
 
-#: connected.c:109 builtin/fsck.c:189 builtin/prune.c:57
-msgid "Checking connectivity"
-msgstr "Đang kiểm tra kết nối"
+msgid "list the bisection steps so far"
+msgstr "liệt kê các bước bisection đi quá xa"
 
-#: connected.c:122
-msgid "Could not run 'git rev-list'"
-msgstr "Không thể chạy “git rev-list”"
+msgid "replay the bisection process from the given file"
+msgstr "phát lại quá trình bisection từ tệp đã cho"
 
-#: connected.c:146
-msgid "failed write to rev-list"
-msgstr "gặp lỗi khi ghi vào rev-list"
+msgid "skip some commits for checkout"
+msgstr "bỏ qua một số lần chuyển giao để lấy ra"
 
-#: connected.c:151
-msgid "failed to close rev-list's stdin"
-msgstr "gặp lỗi khi đóng đầu vào chuẩn stdin của rev-list"
+msgid "visualize the bisection"
+msgstr "trực quan việc di chuyển nửa bước"
 
-#: convert.c:183
-#, c-format
-msgid "illegal crlf_action %d"
-msgstr "crlf_action %d không hợp lệ"
+msgid "use <cmd>... to automatically bisect"
+msgstr "dùng <cmd>… để bisect một cách tự động"
 
-#: convert.c:196
-#, c-format
-msgid "CRLF would be replaced by LF in %s"
-msgstr "CRLF nên được thay bằng LF trong %s"
+msgid "no log for BISECT_WRITE"
+msgstr "không có nhật ký cho BISECT_WRITE"
 
-#: convert.c:198
-#, c-format
-msgid ""
-"CRLF will be replaced by LF in %s.\n"
-"The file will have its original line endings in your working directory"
+msgid "--bisect-reset requires either no argument or a commit"
 msgstr ""
-"CRLF sẽ bị thay thế bằng LF trong %s.\n"
-"Tập tin sẽ có kiểu xuống dòng như bản gốc trong thư mục làm việc của bạn"
+"--bisect-reset requires không nhận đối số cũng không nhận lần chuyển giao"
 
-#: convert.c:206
-#, c-format
-msgid "LF would be replaced by CRLF in %s"
-msgstr "LF nên thay bằng CRLF trong %s"
+msgid "--bisect-terms requires 0 or 1 argument"
+msgstr "--bisect-terms cần 0 hoặc 1 tham số"
 
-#: convert.c:208
-#, c-format
-msgid ""
-"LF will be replaced by CRLF in %s.\n"
-"The file will have its original line endings in your working directory"
-msgstr ""
-"LF sẽ bị thay thế bằng CRLF trong %s.\n"
-"Tập tin sẽ có kiểu xuống dòng như bản gốc trong thư mục làm việc của bạn"
+msgid "--bisect-next requires 0 arguments"
+msgstr "--bisect-next cần 0 tham số"
 
-#: convert.c:273
-#, c-format
-msgid "BOM is prohibited in '%s' if encoded as %s"
-msgstr "BOM bị cấm trong “%s” nếu được mã hóa là %s"
+msgid "--bisect-log requires 0 arguments"
+msgstr "--bisect-log cần 0 tham số"
 
-#: convert.c:280
-#, c-format
-msgid ""
-"The file '%s' contains a byte order mark (BOM). Please use UTF-%.*s as "
-"working-tree-encoding."
-msgstr ""
-"Tập tin “%s” có chứa ký hiệu thứ tự byte (BOM). Vui lòng dùng UTF-%.*s như "
-"là bảng mã cây làm việc."
+msgid "no logfile given"
+msgstr "chưa chỉ ra tập tin ghi nhật ký"
 
-#: convert.c:293
-#, c-format
-msgid "BOM is required in '%s' if encoded as %s"
-msgstr "BOM là bắt buộc trong “%s” nếu được mã hóa là %s"
+msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
+msgstr "git blame [<các tùy chọn>] [<rev-opts>] [<rev>] [--] <tập-tin>"
 
-#: convert.c:295
-#, c-format
-msgid ""
-"The file '%s' is missing a byte order mark (BOM). Please use UTF-%sBE or UTF-"
-"%sLE (depending on the byte order) as working-tree-encoding."
-msgstr ""
-"Tập tin “%s” còn thiếu ký hiệu thứ tự byte (BOM). Vui lòng dùng UTF-%sBE hay "
-"UTF-%sLE (còn phục thuộc vào thứ tự byte) như là bảng mã cây làm việc."
+msgid "<rev-opts> are documented in git-rev-list(1)"
+msgstr "<rev-opts> được mô tả trong tài liệu git-rev-list(1)"
 
-#: convert.c:408 convert.c:479
 #, c-format
-msgid "failed to encode '%s' from %s to %s"
-msgstr "gặp lỗi khi mã hóa “%s”  từ “%s” sang “%s”"
+msgid "expecting a color: %s"
+msgstr "cần một màu: %s"
 
-#: convert.c:451
-#, c-format
-msgid "encoding '%s' from %s to %s and back is not the same"
-msgstr "mã hóa “%s” từ %s thành %s và ngược trở lại không phải là cùng"
+msgid "must end with a color"
+msgstr "phải kết thúc bằng một màu"
 
-#: convert.c:654
 #, c-format
-msgid "cannot fork to run external filter '%s'"
-msgstr "không thể rẽ nhánh tiến trình để chạy bộ lọc bên ngoài “%s”"
+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"
 
-#: convert.c:674
-#, c-format
-msgid "cannot feed the input to external filter '%s'"
-msgstr "không thể cấp đầu vào cho bộ lọc bên ngoài “%s”"
+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"
 
-#: convert.c:681
-#, c-format
-msgid "external filter '%s' failed %d"
-msgstr "chạy bộ lọc bên ngoài “%s” gặp lỗi %d"
+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)"
 
-#: convert.c:716 convert.c:719
-#, c-format
-msgid "read from external filter '%s' failed"
-msgstr "đọc từ bộ lọc bên ngoài “%s” gặp lỗi"
+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)"
 
-#: convert.c:722 convert.c:777
-#, c-format
-msgid "external filter '%s' failed"
-msgstr "gặp lỗi khi chạy bộ lọc bên ngoài “%s”"
+msgid "show work cost statistics"
+msgstr "hiển thị thống kê công sức làm việc"
 
-#: convert.c:826
-msgid "unexpected filter type"
-msgstr "gặp kiểu bộ lọc thừa"
+msgid "force progress reporting"
+msgstr "ép buộc báo cáo tiến triển công việc"
 
-#: convert.c:837
-msgid "path name too long for external filter"
-msgstr "tên đường dẫn quá dài cho bộ lọc bên ngoài"
+msgid "show output score for blame entries"
+msgstr "hiển thị kết xuất điểm số cho các mục tin “blame”"
 
-#: convert.c:935
-#, c-format
-msgid ""
-"external filter '%s' is not available anymore although not all paths have "
-"been filtered"
-msgstr ""
-"bộ lọc bên ngoài “%s” không sẵn sàng nữa mặc dù không phải tất cả các đường "
-"dẫn đã được lọc"
+msgid "show original filename (Default: auto)"
+msgstr "hiển thị tên tập tin gốc (Mặc định: auto)"
 
-#: convert.c:1236
-msgid "true/false are no valid working-tree-encodings"
-msgstr "true/false là không phải bảng-mã-cây-làm-việc hợp lệ"
+msgid "show original linenumber (Default: off)"
+msgstr "hiển thị số dòng gốc (Mặc định: off)"
 
-#: convert.c:1416 convert.c:1449
-#, c-format
-msgid "%s: clean filter '%s' failed"
-msgstr "%s: gặp lỗi khi xóa bộ lọc “%s”"
+msgid "show in a format designed for machine consumption"
+msgstr "hiển thị ở định dạng đã thiết kế cho dùng bằng máy"
 
-#: convert.c:1492
-#, c-format
-msgid "%s: smudge filter %s failed"
-msgstr "%s: smudge bộ lọc %s gặp lỗi"
+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"
 
-#: credential.c:96
-#, c-format
-msgid "skipping credential lookup for key: credential.%s"
-msgstr "bỏ qua tìm kiếm giấy chứng chực cho khóa: credential.%s"
+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)"
 
-#: credential.c:112
-msgid "refusing to work with credential missing host field"
-msgstr "từ chối làm việc với giấy chứng thực thiếu trường máy chủ"
+msgid "show raw timestamp (Default: off)"
+msgstr "hiển thị dấu vết thời gian dạng thô (Mặc định: off)"
 
-#: credential.c:114
-msgid "refusing to work with credential missing protocol field"
-msgstr "từ chối làm việc với giấy chứng thực thiếu trường giao thức"
+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)"
 
-#: credential.c:396
-#, c-format
-msgid "url contains a newline in its %s component: %s"
-msgstr "url có chứa một dấu xuống dòng trong thành phần %s của nó: %s"
+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)"
 
-#: credential.c:440
-#, c-format
-msgid "url has no scheme: %s"
-msgstr "url không có lược đồ: %s"
+msgid "show author email instead of name (Default: off)"
+msgstr "hiển thị thư điện tử của tác giả thay cho tên (Mặc định: off)"
 
-#: credential.c:513
-#, c-format
-msgid "credential url cannot be parsed: %s"
-msgstr "không thể phân tích cú pháp giấy chứng thực url: %s"
+msgid "ignore whitespace differences"
+msgstr "bỏ qua các khác biệt do khoảng trắng gây ra"
 
-#: date.c:139
-msgid "in the future"
-msgstr "ở thời tương lai"
+msgid "rev"
+msgstr "rev"
 
-#: date.c:145
-#, c-format
-msgid "%<PRIuMAX> second ago"
-msgid_plural "%<PRIuMAX> seconds ago"
-msgstr[0] "%<PRIuMAX> giây trước"
+msgid "ignore <rev> when blaming"
+msgstr "bỏ qua <rev> khi blame"
 
-#: date.c:152
-#, c-format
-msgid "%<PRIuMAX> minute ago"
-msgid_plural "%<PRIuMAX> minutes ago"
-msgstr[0] "%<PRIuMAX> phút trước"
+msgid "ignore revisions from <file>"
+msgstr "bỏ qua các điểm xét duyệt từ <tập tin>"
 
-#: date.c:159
-#, c-format
-msgid "%<PRIuMAX> hour ago"
-msgid_plural "%<PRIuMAX> hours ago"
-msgstr[0] "%<PRIuMAX> giờ trước"
+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"
 
-#: date.c:166
-#, c-format
-msgid "%<PRIuMAX> day ago"
-msgid_plural "%<PRIuMAX> days ago"
-msgstr[0] "%<PRIuMAX> ngày trước"
+msgid "color lines by age"
+msgstr "các dòng màu theo tuổi"
 
-#: date.c:172
-#, c-format
-msgid "%<PRIuMAX> week ago"
-msgid_plural "%<PRIuMAX> weeks ago"
-msgstr[0] "%<PRIuMAX> tuần trước"
+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"
 
-#: date.c:179
-#, c-format
-msgid "%<PRIuMAX> month ago"
-msgid_plural "%<PRIuMAX> months ago"
-msgstr[0] "%<PRIuMAX> tháng trước"
+msgid "use revisions from <file> instead of calling git-rev-list"
+msgstr ""
+"sử dụng các điểm xét duyệt (revision) từ <tập tin> thay vì gọi “git-rev-list”"
 
-#: date.c:190
-#, c-format
-msgid "%<PRIuMAX> year"
-msgid_plural "%<PRIuMAX> years"
-msgstr[0] "%<PRIuMAX> năm"
+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"
 
-#. TRANSLATORS: "%s" is "<n> years"
-#: date.c:193
-#, c-format
-msgid "%s, %<PRIuMAX> month ago"
-msgid_plural "%s, %<PRIuMAX> months ago"
-msgstr[0] "%s, %<PRIuMAX> tháng trước"
+msgid "score"
+msgstr "điểm số"
 
-#: date.c:198 date.c:203
-#, c-format
-msgid "%<PRIuMAX> year ago"
-msgid_plural "%<PRIuMAX> years ago"
-msgstr[0] "%<PRIuMAX> năm trước"
+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"
 
-#: delta-islands.c:272
-msgid "Propagating island marks"
-msgstr "Đang lan truyền các đánh dấu island"
+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"
 
-#: delta-islands.c:290
-#, c-format
-msgid "bad tree object %s"
-msgstr "đối tượng cây sai “%s”"
+msgid "range"
+msgstr "vùng"
 
-#: delta-islands.c:334
-#, c-format
-msgid "failed to load island regex for '%s': %s"
-msgstr "gặp lỗi khi tải biểu thức chính quy island cho “%s”: %s"
+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>"
 
-#: delta-islands.c:390
-#, c-format
-msgid "island regex from config has too many capture groups (max=%d)"
+msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
-"biểu thức chính quy island từ cấu hình có quá nhiều nhóm chụp (tối đa=%d)"
+"--progress không được dùng cùng với --incremental hay các định dạng porcelain"
 
-#: delta-islands.c:467
-#, c-format
-msgid "Marked %d islands, done.\n"
-msgstr "Đã đánh dấu %d island, xong.\n"
+#. TRANSLATORS: This string is used to tell us the
+#. maximum display width for a relative timestamp in
+#. "git blame" output.  For C locale, "4 years, 11
+#. months ago", which takes 22 places, is the longest
+#. among various forms of relative timestamps, but
+#. your language may need more or fewer display
+#. columns.
+#.
+msgid "4 years, 11 months ago"
+msgstr "4 năm, 11 tháng trước"
 
-#: diff-merges.c:81 gpg-interface.c:719 gpg-interface.c:734 ls-refs.c:37
-#: parallel-checkout.c:42 sequencer.c:2805 setup.c:563 builtin/am.c:203
-#: builtin/am.c:2243 builtin/am.c:2287 builtin/blame.c:724 builtin/blame.c:742
-#: builtin/fetch.c:792 builtin/pack-objects.c:3515 builtin/pull.c:45
-#: builtin/pull.c:47 builtin/pull.c:321
 #, c-format
-msgid "invalid value for '%s': '%s'"
-msgstr "giá trị không hợp lệ cho '%s': '%s'"
-
-#: diff-lib.c:561
-msgid "--merge-base does not work with ranges"
-msgstr "--merge-base không hoạt động với phạm vi"
+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"
 
-#: diff-lib.c:563
-msgid "--merge-base only works with commits"
-msgstr "--merge-base chỉ hoạt động với các lần chuyển giao"
+msgid "Blaming lines"
+msgstr "Các dòng blame"
 
-#: diff-lib.c:580
-msgid "unable to get HEAD"
-msgstr "không thể lấy HEAD"
+msgid "git branch [<options>] [-r | -a] [--merged] [--no-merged]"
+msgstr "git branch [<các tùy chọn>] [-r | -a] [--merged] [ --no-merged]"
 
-#: diff-lib.c:587
-msgid "no merge base found"
-msgstr "không tìm thấy cơ sở để hòa trộn"
+msgid ""
+"git branch [<options>] [-f] [--recurse-submodules] <branch-name> [<start-"
+"point>]"
+msgstr ""
+"git branch [<các tùy chọn>] [-f] [--recurse-submodules] <tên-nhánh> [<điểm-"
+"đầu>]"
 
-#: diff-lib.c:589
-msgid "multiple merge bases found"
-msgstr "có nhiều cơ sở để hòa trộn"
+msgid "git branch [<options>] [-l] [<pattern>...]"
+msgstr "git branch [<các tùy chọn>] [-l] [<mẫu>...]"
 
-#: diff-no-index.c:237
-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>"
+msgid "git branch [<options>] [-r] (-d | -D) <branch-name>..."
+msgstr "git branch [<các tùy chọn>] [-r] (-d | -D) <tên-nhánh> …"
 
-#: diff-no-index.c:262
-msgid ""
-"Not a git repository. Use --no-index to compare two paths outside a working "
-"tree"
-msgstr ""
-"Không phải là một thư mục git. Dùng --no-index để so sánh hai đường dẫn bên "
-"ngoài một cây làm việc"
+msgid "git branch [<options>] (-m | -M) [<old-branch>] <new-branch>"
+msgstr "git branch [<các tùy chọn>] (-m | -M) [<nhánh-cũ>] <nhánh-mới>"
 
-#: diff.c:159
-#, c-format
-msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
-msgstr "  Gặp lỗi khi phân tích dirstat cắt bỏ phần trăm “%s”\n"
+msgid "git branch [<options>] (-c | -C) [<old-branch>] <new-branch>"
+msgstr "git branch [<các tùy chọn>] (-c | -C) [<nhánh-cũ>] <nhánh-mới>"
 
-#: diff.c:164
-#, c-format
-msgid "  Unknown dirstat parameter '%s'\n"
-msgstr "  Không hiểu đối số dirstat “%s”\n"
+msgid "git branch [<options>] [-r | -a] [--points-at]"
+msgstr "git branch [<các tùy chọn>] [-r | -a] [--points-at]"
 
-#: diff.c:300
-msgid ""
-"color moved setting must be one of 'no', 'default', 'blocks', 'zebra', "
-"'dimmed-zebra', 'plain'"
-msgstr ""
-"cài đặt màu đã di chuyển phải là một trong “no”, “default”, “blocks”, "
-"“zebra”, “dimmed-zebra”, “plain”"
+msgid "git branch [<options>] [-r | -a] [--format]"
+msgstr "git branch [<các tùy chọn>] [-r | -a] [--format]"
 
-#: diff.c:328
 #, c-format
 msgid ""
-"unknown color-moved-ws mode '%s', possible values are 'ignore-space-change', "
-"'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-change'"
+"deleting branch '%s' that has been merged to\n"
+"         '%s', but not yet merged to HEAD."
 msgstr ""
-"không hiểu chế độ color-moved-ws “%s”, các giá trị có thể là “ignore-space-"
-"change”, “ignore-space-at-eol”, “ignore-all-space”, “allow-indentation-"
-"change”"
+"đang xóa nhánh “%s” mà nó lại đã được hòa trộn vào\n"
+"         “%s”, nhưng vẫn chưa được hòa trộn vào HEAD."
 
-#: diff.c:336
+#, c-format
 msgid ""
-"color-moved-ws: allow-indentation-change cannot be combined with other "
-"whitespace modes"
+"not deleting branch '%s' that is not yet merged to\n"
+"         '%s', even though it is merged to HEAD."
 msgstr ""
-"color-moved-ws: allow-indentation-change không thể tổ hợp cùng với các chế "
-"độ khoảng trắng khác"
+"không xóa nhánh “%s” cái mà chưa được hòa trộn vào\n"
+"         “%s”, cho dù là nó đã được hòa trộn vào HEAD."
 
-#: diff.c:413
 #, c-format
-msgid "Unknown value for 'diff.submodule' config variable: '%s'"
-msgstr "Không hiểu giá trị cho biến cấu hình “diff.submodule”: “%s”"
+msgid "Couldn't look up commit object for '%s'"
+msgstr "Không thể tìm kiếm đối tượng chuyển giao cho “%s”"
 
-#: diff.c:473
 #, c-format
 msgid ""
-"Found errors in 'diff.dirstat' config variable:\n"
-"%s"
+"The branch '%s' is not fully merged.\n"
+"If you are sure you want to delete it, run 'git branch -D %s'."
 msgstr ""
-"Tìm thấy các lỗi trong biến cấu hình “diff.dirstat”:\n"
-"%s"
+"Nhánh “%s” không được trộn một cách đầy đủ.\n"
+"Nếu bạn thực sự muốn xóa nó, thì chạy lệnh “git branch -D %s”."
 
-#: diff.c:4282
-#, 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"
+msgid "Update of config-file failed"
+msgstr "Cập nhật tập tin cấu hình gặp lỗi"
 
-#: diff.c:4677 parse-options.c:1114
-#, c-format
-msgid "options '%s', '%s', '%s', and '%s' cannot be used together"
-msgstr "tùy chọn '%s', '%s', '%s' và '%s' không thể dùng cùng nhau"
+msgid "cannot use -a with -d"
+msgstr "không thể dùng tùy chọn -a với -d"
 
-#: diff.c:4681 parse-options.c:1118 builtin/worktree.c:578
-#, c-format
-msgid "options '%s', '%s', and '%s' cannot be used together"
-msgstr "tùy chọn '%s', '%s' và '%s' không thể dùng cùng nhau"
+msgid "Couldn't look up commit object for HEAD"
+msgstr "Không thể tìm kiếm đối tượng chuyển giao cho HEAD"
 
-#: diff.c:4685
 #, c-format
-msgid "options '%s' and '%s' cannot be used together, use '%s' with '%s'"
-msgstr "tùy chọn '%s' và '%s' không thể dùng cùng nhau, dùng '%s' với '%s'"
+msgid "Cannot delete branch '%s' checked out at '%s'"
+msgstr "Không thể xóa nhánh “%s” đã được lấy ra tại “%s”"
 
-#: diff.c:4689
 #, c-format
-msgid ""
-"options '%s' and '%s' cannot be used together, use '%s' with '%s' and '%s'"
-msgstr ""
-"tùy chọn '%s' và '%s' không thể dùng cùng nhau, dùng '%s' với '%s' và '%s'"
-
-#: diff.c:4769
-msgid "--follow requires exactly one pathspec"
-msgstr "--follow cần chính xác một đặc tả đường dẫn"
+msgid "remote-tracking branch '%s' not found."
+msgstr "không tìm thấy nhánh theo dõi máy chủ “%s”."
 
-#: diff.c:4823
 #, c-format
-msgid "invalid --stat value: %s"
-msgstr "giá trị --stat không hợp lệ: “%s”"
+msgid "branch '%s' not found."
+msgstr "không tìm thấy nhánh “%s”."
 
-#: diff.c:4828 diff.c:4833 diff.c:4838 diff.c:4843 diff.c:5319
-#: parse-options.c:217 parse-options.c:221
 #, c-format
-msgid "%s expects a numerical value"
-msgstr "tùy chọn “%s” cần một giá trị bằng số"
+msgid "Deleted remote-tracking branch %s (was %s).\n"
+msgstr "Đã xóa nhánh theo dõi máy chủ \"%s\" (từng là %s).\n"
 
-#: diff.c:4860
 #, c-format
-msgid ""
-"Failed to parse --dirstat/-X option parameter:\n"
-"%s"
-msgstr ""
-"Gặp lỗi khi phân tích đối số tùy chọn --dirstat/-X:\n"
-"%s"
+msgid "Deleted branch %s (was %s).\n"
+msgstr "Nhánh “%s” đã bị xóa (từng là %s)\n"
 
-#: diff.c:4893
-#, 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"
+msgid "unable to parse format string"
+msgstr "không thể phân tích chuỗi định dạng"
 
-#: diff.c:4917
-#, c-format
-msgid "unknown value after ws-error-highlight=%.*s"
-msgstr "không hiểu giá trị sau ws-error-highlight=%.*s"
+msgid "could not resolve HEAD"
+msgstr "không thể phân giải HEAD"
 
-#: diff.c:4931
 #, c-format
-msgid "unable to resolve '%s'"
-msgstr "không thể phân giải “%s”"
+msgid "HEAD (%s) points outside of refs/heads/"
+msgstr "HEAD (%s) chỉ bên ngoài của refs/heads/"
 
-#: diff.c:4981 diff.c:4987
 #, c-format
-msgid "%s expects <n>/<m> form"
-msgstr "%s cần dạng <n>/<m>"
+msgid "Branch %s is being rebased at %s"
+msgstr "Nhánh %s đang được cải tổ lại tại %s"
 
-#: diff.c:4999
 #, 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”"
+msgid "Branch %s is being bisected at %s"
+msgstr "Nhánh %s đang được di chuyển phân đôi (bisect) tại %s"
 
-#: diff.c:5020
-#, c-format
-msgid "bad --color-moved argument: %s"
-msgstr "đối số --color-moved sai: %s"
+msgid "cannot copy the current branch while not on any."
+msgstr "không thể sao chép nhánh hiện hành trong khi nó chẳng ở đâu cả."
 
-#: diff.c:5039
-#, c-format
-msgid "invalid mode '%s' in --color-moved-ws"
-msgstr "chế độ “%s” không hợp lệ trong --color-moved-ws"
+msgid "cannot rename the current branch while not on any."
+msgstr "không thể đổi tên nhánh hiện hành trong khi nó chẳng ở đâu cả."
 
-#: diff.c:5079
-msgid ""
-"option diff-algorithm accepts \"myers\", \"minimal\", \"patience\" and "
-"\"histogram\""
-msgstr ""
-"tùy chọn  diff-algorithm chấp nhận \"myers\", \"minimal\", \"patience\" và "
-"\"histogram\""
-
-#: diff.c:5115 diff.c:5135
 #, c-format
-msgid "invalid argument to %s"
-msgstr "tham số cho %s không hợp lệ"
+msgid "Invalid branch name: '%s'"
+msgstr "Tên nhánh không hợp lệ: “%s”"
+
+msgid "Branch rename failed"
+msgstr "Gặp lỗi khi đổi tên nhánh"
+
+msgid "Branch copy failed"
+msgstr "Gặp lỗi khi sao chép nhánh"
 
-#: diff.c:5239
 #, c-format
-msgid "invalid regex given to -I: '%s'"
-msgstr "Ä\91Æ°a cho -I biá»\83u thức chính quy không hợp lá»\87: “%s”"
+msgid "Created a copy of a misnamed branch '%s'"
+msgstr "Ä\90ã tạo má»\99t bản sao của nhánh khuyết danh “%s”"
 
-#: diff.c:5288
 #, 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”"
+msgid "Renamed a misnamed branch '%s' away"
+msgstr "Đã đổi tên nhánh khuyết danh “%s” đi"
 
-#: diff.c:5344
 #, c-format
-msgid "bad --word-diff argument: %s"
-msgstr "đối số --word-diff sai: %s"
+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!"
 
-#: diff.c:5380
-msgid "Diff output format options"
-msgstr "Các tùy chọn định dạng khi xuất các khác biệt"
+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"
 
-#: diff.c:5382 diff.c:5388
-msgid "generate patch"
-msgstr "tạo miếng vá"
+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"
 
-#: diff.c:5385 builtin/log.c:180
-msgid "suppress diff output"
-msgstr "chặn mọi kết xuất từ diff"
+#, c-format
+msgid ""
+"Please edit the description for the branch\n"
+"  %s\n"
+"Lines starting with '%c' will be stripped.\n"
+msgstr ""
+"Viết các ghi chú cho nhánh:\n"
+"  %s\n"
+"Những dòng được bắt đầu bằng “%c” sẽ được cắt bỏ.\n"
 
-#: diff.c:5390 diff.c:5504 diff.c:5511
-msgid "<n>"
-msgstr "<n>"
+msgid "Generic options"
+msgstr "Tùy chọn chung"
 
-#: diff.c:5391 diff.c:5394
-msgid "generate diffs with <n> lines context"
-msgstr "tạo khác biệt với <n> dòng ngữ cảnh"
+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"
 
-#: diff.c:5396
-msgid "generate the diff in raw format"
-msgstr "tạo khác biệt ở định dạng thô"
+msgid "suppress informational messages"
+msgstr "không xuất các thông tin"
 
-#: diff.c:5399
-msgid "synonym for '-p --raw'"
-msgstr "đồng nghĩa với “-p --raw”"
+msgid "set branch tracking configuration"
+msgstr "đặt cấu hình thao dõi nhánh"
 
-#: diff.c:5403
-msgid "synonym for '-p --stat'"
-msgstr "đồng nghĩa với “-p --stat”"
+msgid "do not use"
+msgstr "không dùng"
 
-#: diff.c:5407
-msgid "machine friendly --stat"
-msgstr "--stat thuận tiện cho máy đọc"
+msgid "upstream"
+msgstr "thượng nguồn"
 
-#: diff.c:5410
-msgid "output only the last line of --stat"
-msgstr "chỉ xuất những dòng cuối của --stat"
+msgid "change the upstream info"
+msgstr "thay đổi thông tin thượng nguồn"
 
-#: diff.c:5412 diff.c:5420
-msgid "<param1,param2>..."
-msgstr "<tham_số_1,tham_số_2>…"
+msgid "unset the upstream info"
+msgstr "bỏ đặt thông tin thượng nguồn"
 
-#: diff.c:5413
-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"
+msgid "use colored output"
+msgstr "tô màu kết xuất"
 
-#: diff.c:5417
-msgid "synonym for --dirstat=cumulative"
-msgstr "đồng nghĩa với --dirstat=cumulative"
+msgid "act on remote-tracking branches"
+msgstr "thao tác trên nhánh “remote-tracking”"
 
-#: diff.c:5421
-msgid "synonym for --dirstat=files,param1,param2..."
-msgstr "đồng nghĩa với --dirstat=files,param1,param2…"
+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"
 
-#: diff.c:5425
-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"
+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"
 
-#: diff.c:5428
-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ế độ"
+msgid "Specific git-branch actions:"
+msgstr "Hành động git-branch:"
 
-#: diff.c:5431
-msgid "show only names of changed files"
-msgstr "chỉ hiển thị tên của các tập tin đổi"
+msgid "list both remote-tracking and local branches"
+msgstr "liệt kê cả nhánh “remote-tracking” và nội bộ"
 
-#: diff.c:5434
-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"
+msgid "delete fully merged branch"
+msgstr "xóa một toàn bộ nhánh đã hòa trộn"
 
-#: diff.c:5436
-msgid "<width>[,<name-width>[,<count>]]"
-msgstr "<rộng>[,<name-width>[,<số-lượng>]]"
+msgid "delete branch (even if not merged)"
+msgstr "xóa nhánh (cho dù là chưa được hòa trộn)"
 
-#: diff.c:5437
-msgid "generate diffstat"
-msgstr "tạo diffstat"
+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ó"
 
-#: diff.c:5439 diff.c:5442 diff.c:5445
-msgid "<width>"
-msgstr "<rộng>"
+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"
 
-#: diff.c:5440
-msgid "generate diffstat with a given width"
-msgstr "tạo diffstat với độ rộng đã cho"
+msgid "copy a branch and its reflog"
+msgstr "sao chép một nhánh và reflog của nó"
 
-#: diff.c:5443
-msgid "generate diffstat with a given name width"
-msgstr "tạo diffstat với tên độ rộng đã cho"
+msgid "copy a branch, even if target exists"
+msgstr "sao chép một nhánh ngay cả khi đích đã có sẵn"
 
-#: diff.c:5446
-msgid "generate diffstat with a given graph width"
-msgstr "tạo diffstat với độ rộng đồ thị đã cho"
+msgid "list branch names"
+msgstr "liệt kê các tên nhánh"
 
-#: diff.c:5448
-msgid "<count>"
-msgstr "<số_lượng>"
+msgid "show current branch name"
+msgstr "hiển thị nhánh hiện hành"
 
-#: diff.c:5449
-msgid "generate diffstat with limited lines"
-msgstr "tạo diffstat với các dòng bị giới hạn"
+msgid "create the branch's reflog"
+msgstr "tạo reflog của nhánh"
 
-#: diff.c:5452
-msgid "generate compact summary in diffstat"
-msgstr "tạo tổng hợp xúc tích trong diffstat"
+msgid "edit the description for the branch"
+msgstr "sửa mô tả cho nhánh"
 
-#: diff.c:5455
-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"
+msgid "force creation, move/rename, deletion"
+msgstr "buộc tạo, di chuyển/đổi tên, xóa"
 
-#: diff.c:5458
-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"
-"\""
+msgid "print only branches that are merged"
+msgstr "chỉ hiển thị những nhánh mà nó được hòa trộn"
 
-#: diff.c:5460
-msgid "show colored diff"
-msgstr "hiển thị thay đổi được tô màu"
+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"
 
-#: diff.c:5461
-msgid "<kind>"
-msgstr "<kiểu>"
+msgid "list branches in columns"
+msgstr "liệt kê các nhánh trong các cột"
 
-#: diff.c:5462
-msgid ""
-"highlight whitespace errors in the 'context', 'old' or 'new' lines in the "
-"diff"
-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"
+msgid "object"
+msgstr "đối tượng"
 
-#: diff.c:5465
-msgid ""
-"do not munge pathnames and use NULs as output field terminators in --raw or "
-"--numstat"
-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"
+msgid "print only branches of the object"
+msgstr "chỉ hiển thị các nhánh của đối tượng"
 
-#: diff.c:5468 diff.c:5471 diff.c:5474 diff.c:5583
-msgid "<prefix>"
-msgstr "<tiền_tố>"
+msgid "sorting and filtering are case insensitive"
+msgstr "sắp xếp và lọc là phân biệt HOA thường"
 
-#: diff.c:5469
-msgid "show the given source prefix instead of \"a/\""
-msgstr "hiển thị tiền tố nguồn đã cho thay cho \"a/\""
+msgid "recurse through submodules"
+msgstr "đệ quy xuyên qua mô-đun con"
 
-#: diff.c:5472
-msgid "show the given destination prefix instead of \"b/\""
-msgstr "hiển thị tiền tố đích đã cho thay cho \"b/\""
+msgid "format to use for the output"
+msgstr "định dạng sẽ dùng cho đầu ra"
 
-#: diff.c:5475
-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"
+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ệ."
 
-#: diff.c:5478
-msgid "do not show any source or destination prefix"
-msgstr "đừng hiển thị bất kỳ tiền tố nguồn hay đích"
+msgid "HEAD not found below refs/heads!"
+msgstr "Không tìm thấy HEAD ở dưới refs/heads!"
 
-#: diff.c:5481
-msgid "show context between diff hunks up to the specified number of lines"
+msgid ""
+"branch with --recurse-submodules can only be used if submodule."
+"propagateBranches is enabled"
 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"
+"nhánh với --recurse-submodules chỉ có thể được sử dụng nếu submodule."
+"propagateBranches được kích hoạt"
 
-#: diff.c:5485 diff.c:5490 diff.c:5495
-msgid "<char>"
-msgstr "<ký_tự>"
+msgid "--recurse-submodules can only be used to create branches"
+msgstr "--recurse-submodules chỉ có thể được sử dụng để tạo ra các nhánh"
 
-#: diff.c:5486
-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 “+”"
+msgid "branch name required"
+msgstr "cần chỉ ra tên nhánh"
 
-#: diff.c:5491
-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 “-”"
+msgid "Cannot give description to detached HEAD"
+msgstr "Không thể đưa ra mô tả HEAD đã tách rời"
 
-#: diff.c:5496
-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 “”"
+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"
 
-#: diff.c:5499
-msgid "Diff rename options"
-msgstr "Tùy chọn khác biệt đổi tên"
+#, c-format
+msgid "No commit on branch '%s' yet."
+msgstr "Vẫn chưa chuyển giao trên nhánh “%s”."
 
-#: diff.c:5500
-msgid "<n>[/<m>]"
-msgstr "<n>[/<m>]"
+#, c-format
+msgid "No branch named '%s'."
+msgstr "Không có nhánh nào có tên “%s”."
 
-#: diff.c:5501
-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"
+msgid "too many branches for a copy operation"
+msgstr "quá nhiều nhánh dành cho thao tác sao chép"
 
-#: diff.c:5505
-msgid "detect renames"
-msgstr "dò tìm các tên thay đổi"
+msgid "too many arguments for a rename operation"
+msgstr "quá nhiều tham số cho thao tác đổi tên"
 
-#: diff.c:5509
-msgid "omit the preimage for deletes"
-msgstr "bỏ qua preimage (tiền ảnh??) cho các việc xóa"
+msgid "too many arguments to set new upstream"
+msgstr "quá nhiều tham số để đặt thượng nguồn mới"
 
-#: diff.c:5512
-msgid "detect copies"
-msgstr "dò bản sao"
+#, c-format
+msgid ""
+"could not set upstream of HEAD to %s when it does not point to any branch."
+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ả."
 
-#: diff.c:5516
-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"
+#, c-format
+msgid "no such branch '%s'"
+msgstr "không có nhánh nào như thế “%s”"
 
-#: diff.c:5518
-msgid "disable rename detection"
-msgstr "tắt dò tìm đổi tên"
+#, c-format
+msgid "branch '%s' does not exist"
+msgstr "chưa có nhánh “%s”"
 
-#: diff.c:5521
-msgid "use empty blobs as rename source"
-msgstr "dùng các blob trống rống như là nguồn đổi tên"
+msgid "too many arguments to unset upstream"
+msgstr "quá nhiều tham số để bỏ đặt thượng nguồn"
 
-#: diff.c:5523
-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"
+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ả."
+
+#, c-format
+msgid "Branch '%s' has no upstream information"
+msgstr "Nhánh “%s” không có thông tin thượng nguồn"
 
-#: diff.c:5526
 msgid ""
-"prevent rename/copy detection if the number of rename/copy targets exceeds "
-"given limit"
+"The -a, and -r, options to 'git branch' do not take a branch name.\n"
+"Did you mean to use: -a|-r --list <pattern>?"
 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:5528
-msgid "Diff algorithm options"
-msgstr "Tùy chọn thuật toán khác biệt"
+"Hai tùy chọn -a và -r áp dụng cho lệnh “git branch” không nhận một tên "
+"nhánh.\n"
+"Có phải ý bạn là dùng: -a|-r --list <mẫu>?"
 
-#: diff.c:5530
-msgid "produce the smallest possible diff"
-msgstr "sản sinh khác biệt ít nhất có thể"
+msgid ""
+"the '--set-upstream' option is no longer supported. Please use '--track' or "
+"'--set-upstream-to' instead."
+msgstr ""
+"tùy chọn --set-upstream đã không còn được hỗ trợ nữa. Vui lòng dùng “--"
+"track” hoặc “--set-upstream-to” để thay thế."
 
-#: diff.c:5533
-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"
+msgid "git version:\n"
+msgstr "phiên bản git:\n"
 
-#: diff.c:5536
-msgid "ignore changes in amount of whitespace"
-msgstr "lờ đi sự thay đổi do số lượng khoảng trắng gây ra"
+#, c-format
+msgid "uname() failed with error '%s' (%d)\n"
+msgstr "uname() gặp lỗi “%s” (%d)\n"
 
-#: diff.c:5539
-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"
+msgid "compiler info: "
+msgstr "thông tin trình biên dịch: "
 
-#: diff.c:5542
-msgid "ignore carrier-return at the end of line"
-msgstr "bỏ qua ký tự về đầu dòng tại cuối dòng"
+msgid "libc info: "
+msgstr "thông tin libc: "
 
-#: diff.c:5545
-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"
+msgid "not run from a git repository - no hooks to show\n"
+msgstr "không chạy từ một kho git - nên chẳng có móc nào để mà hiển thị cả\n"
 
-#: diff.c:5547 diff.c:5569 diff.c:5572 diff.c:5617
-msgid "<regex>"
-msgstr "<regex>"
+msgid "git bugreport [-o|--output-directory <file>] [-s|--suffix <format>]"
+msgstr ""
+"git bugreport [-o|--output-directory <tập_tin>] [-s|--suffix <định_dạng>]"
 
-#: diff.c:5548
-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>"
+msgid ""
+"Thank you for filling out a Git bug report!\n"
+"Please answer the following questions to help us understand your issue.\n"
+"\n"
+"What did you do before the bug happened? (Steps to reproduce your issue)\n"
+"\n"
+"What did you expect to happen? (Expected behavior)\n"
+"\n"
+"What happened instead? (Actual behavior)\n"
+"\n"
+"What's different between what you expected and what actually happened?\n"
+"\n"
+"Anything else you want to add:\n"
+"\n"
+"Please review the rest of the bug report below.\n"
+"You can delete any lines you don't wish to share.\n"
+msgstr ""
+"Cảm ơn bạn đã tạo một báo cáo lỗi Git!\n"
+"Vui lòng trả lời các câu hỏi sau để giúp chúng tôi hiểu vấn đề của bạn.\n"
+"\n"
+"Bạn đã làm gì trước khi lỗi xảy ra? (Các bước để tái tạo sự cố của bạn)\n"
+"\n"
+"Điều bạn mong muốn xảy ra? (Hành vi dự kiến)\n"
+"\n"
+"Điều gì đã xảy ra thay thế? (Hành vi thực tế)\n"
+"\n"
+"Có gì khác biệt giữa những gì bạn mong đợi và những gì thực sự xảy ra?\n"
+"\n"
+"Bất kỳ thứ gì khác bạn muốn thêm:\n"
+"\n"
+"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"
 
-#: diff.c:5551
-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"
+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"
 
-#: diff.c:5554
-msgid "generate diff using the \"patience diff\" algorithm"
-msgstr "tạo khác biệt sử dung thuật toán \"patience diff\""
+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"
 
-#: diff.c:5558
-msgid "generate diff using the \"histogram diff\" algorithm"
-msgstr "tạo khác biệt sử dung thuật toán \"histogram diff\""
+#, 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”"
 
-#: diff.c:5560
-msgid "<algorithm>"
-msgstr "<thuật toán>"
+msgid "System Info"
+msgstr "Thông tin hệ thống"
 
-#: diff.c:5561
-msgid "choose a diff algorithm"
-msgstr "chọn một thuật toán khác biệt"
+msgid "Enabled Hooks"
+msgstr "Các Móc đã được bật"
 
-#: diff.c:5563
-msgid "<text>"
-msgstr "<văn bản>"
+#, c-format
+msgid "unable to write to %s"
+msgstr "không thể ghi vào %s"
 
-#: diff.c:5564
-msgid "generate diff using the \"anchored diff\" algorithm"
-msgstr "tạo khác biệt sử dung thuật toán \"anchored diff\""
+#, c-format
+msgid "Created new report at '%s'.\n"
+msgstr "Đã tạo báo cáo mới tại “%s”\n"
 
-#: diff.c:5566 diff.c:5575 diff.c:5578
-msgid "<mode>"
-msgstr "<chế độ>"
+msgid "git bundle create [<options>] <file> <git-rev-list args>"
+msgstr "git bundle create [<các tùy chọn>] <tập_tin> <git-rev-list args>"
 
-#: diff.c:5567
-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"
+msgid "git bundle verify [<options>] <file>"
+msgstr "git bundle verify [<các tùy chọn>] <tập-tin>"
 
-#: diff.c:5570
-msgid "use <regex> to decide what a word is"
-msgstr "dùng <regex> để quyết định từ là cái gì"
+msgid "git bundle list-heads <file> [<refname>...]"
+msgstr "git bundle list-heads <tập tin> [<tên tham chiếu>…]"
 
-#: diff.c:5573
-msgid "equivalent to --word-diff=color --word-diff-regex=<regex>"
-msgstr "tương đương với --word-diff=color --word-diff-regex=<regex>"
+msgid "git bundle unbundle <file> [<refname>...]"
+msgstr "git bundle unbundle <tập tin> [<tên tham chiếu>…]"
 
-#: diff.c:5576
-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"
+msgid "do not show progress meter"
+msgstr "không hiển thị bộ đo tiến trình"
 
-#: diff.c:5579
-msgid "how white spaces are ignored in --color-moved"
-msgstr "cách bỏ qua khoảng trắng trong --color-moved"
+msgid "show progress meter"
+msgstr "hiển thị bộ đo tiến trình"
 
-#: diff.c:5582
-msgid "Other diff options"
-msgstr "Các tùy chọn khác biệt khác"
+msgid "show progress meter during object writing phase"
+msgstr "hiển thị bộ đo tiến triển trong suốt pha ghi đối tượng"
 
-#: diff.c:5584
-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"
+msgid "similar to --all-progress when progress meter is shown"
+msgstr "tương tự --all-progress khi bộ đo tiến trình được xuất hiện"
 
-#: diff.c:5588
-msgid "treat all files as text"
-msgstr "coi mọi tập tin là dạng văn bản thường"
+msgid "specify bundle format version"
+msgstr "chỉ điịnh định dạng cho bundle"
 
-#: diff.c:5590
-msgid "swap two inputs, reverse the diff"
-msgstr "tráo đổi hai đầu vào, đảo ngược khác biệt"
+msgid "Need a repository to create a bundle."
+msgstr "Cần một kho chứa để có thể tạo một bundle."
 
-#: diff.c:5592
-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"
+msgid "do not show bundle details"
+msgstr "không hiển thị chi tiết bundle (bó)"
 
-#: diff.c:5594
-msgid "disable all output of the program"
-msgstr "tắt mọi kết xuất của chương trình"
+#, c-format
+msgid "%s is okay\n"
+msgstr "“%s” tốt\n"
 
-#: diff.c:5596
-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"
+msgid "Need a repository to unbundle."
+msgstr "Cần một kho chứa để có thể giải nén một bundle."
 
-#: diff.c:5598
-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"
+msgid "Unbundling objects"
+msgstr "Tháo rời các đối tượng"
 
-#: diff.c:5600
-msgid "<when>"
-msgstr "<khi>"
+#, c-format
+msgid "Unknown subcommand: %s"
+msgstr "Không hiểu câu lệnh con: %s"
 
-#: diff.c:5601
-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"
+#, c-format
+msgid "cannot read object %s '%s'"
+msgstr "không thể đọc đối tượng %s “%s”"
 
-#: diff.c:5604
-msgid "<format>"
-msgstr "<định dạng>"
+msgid "flush is only for --buffer mode"
+msgstr "flush chỉ dành cho chế độ --buffer"
 
-#: diff.c:5605
-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ị"
+msgid "empty command in input"
+msgstr "lệnh thực thi trống rỗng trong đầu vào"
 
-#: diff.c:5609
-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"
+#, c-format
+msgid "whitespace before command: '%s'"
+msgstr "có khoảng trắng trước lệnh: '%s'"
 
-#: diff.c:5612
-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"
+#, c-format
+msgid "%s requires arguments"
+msgstr "%s cần các tham số"
 
-#: diff.c:5614
-msgid "<string>"
-msgstr "<chuỗi>"
+#, c-format
+msgid "%s takes no arguments"
+msgstr "%s không nhận tham số"
 
-#: diff.c:5615
-msgid ""
-"look for differences that change the number of occurrences of the specified "
-"string"
-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"
+#, c-format
+msgid "unknown command: '%s'"
+msgstr "không hiểu câu lệnh: '%s'"
 
-#: diff.c:5618
-msgid ""
-"look for differences that change the number of occurrences of the specified "
-"regex"
-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"
+msgid "only one batch option may be specified"
+msgstr "chỉ một tùy chọn batch được chỉ ra"
 
-#: diff.c:5621
-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"
+msgid "git cat-file <type> <object>"
+msgstr "git cat-file <kiểu> <đối tượng>"
 
-#: diff.c:5624
-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"
+msgid "git cat-file (-e | -p) <object>"
+msgstr "git cat-file (-e | -p) <đối tượng>"
 
-#: diff.c:5627
-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"
+msgid "git cat-file (-t | -s) [--allow-unknown-type] <object>"
+msgstr "git cat-file (-t | -s) [--allow-unknown-type] <đối_tượng>"
 
-#: diff.c:5628 diff.c:5631
-msgid "<path>"
-msgstr "<đường-dẫn>"
-
-#: diff.c:5629
-msgid "show the change in the specified path first"
-msgstr "hiển thị các thay đổi trong đường dẫn đã cho đầu tiên"
-
-#: diff.c:5632
-msgid "skip the output to the specified path"
-msgstr "bỏ qua đầu ra đến đường dẫn đã cho"
-
-#: diff.c:5634
-msgid "<object-id>"
-msgstr "<mã-số-đối-tượng>"
-
-#: diff.c:5635
 msgid ""
-"look for differences that change the number of occurrences of the specified "
-"object"
+"git cat-file (--batch | --batch-check | --batch-command) [--batch-all-"
+"objects]\n"
+"             [--buffer] [--follow-symlinks] [--unordered]\n"
+"             [--textconv | --filters]"
 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"
+"git cat-file (--batch | --batch-check | --batch-command) [--batch-all-"
+"objects]\n"
+"             [--buffer] [--follow-symlinks] [--unordered]\n"
+"             [--textconv | --filters]"
 
-#: diff.c:5637
-msgid "[(A|C|D|M|R|T|U|X|B)...[*]]"
-msgstr "[(A|C|D|M|R|T|U|X|B)…[*]]"
+msgid ""
+"git cat-file (--textconv | --filters)\n"
+"             [<rev>:<path|tree-ish> | --path=<path|tree-ish> <rev>]"
+msgstr ""
+"git cat-file (--textconv | --filters)\n"
+"             [<rev>:<path|tree-ish> | --path=<path|tree-ish> <rev>]"
 
-#: diff.c:5638
-msgid "select files by diff type"
-msgstr "chọn các tập tin theo kiểu khác biệt"
+msgid "Check object existence or emit object contents"
+msgstr "Kiểm tra đối tượng có sẵn hay không hoặc phát nội dung của đối tượng"
 
-#: diff.c:5640
-msgid "<file>"
-msgstr "<tập_tin>"
+msgid "check if <object> exists"
+msgstr "không tra xem <đối tượng> có sẵn hay không"
 
-#: diff.c:5641
-msgid "output to a specific file"
-msgstr "xuất ra một tập tin cụ thể"
+msgid "pretty-print <object> content"
+msgstr "in nội dung <đối tượng> dạng dễ đọc"
 
-#: diff.c:6321
-msgid "exhaustive rename detection was skipped due to too many files."
-msgstr "nhận thấy đổi tên toàn diện đã bị bỏ qua bởi có quá nhiều tập tin."
+msgid "Emit [broken] object attributes"
+msgstr "Phát các thuộc tính đối tượng [hỏng]"
 
-#: diff.c:6324
-msgid "only found copies from modified paths due to too many files."
+msgid "show object type (one of 'blob', 'tree', 'commit', 'tag', ...)"
 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."
+"hiển thị kiểu của đối tượng (là một trong số 'blob', 'tree', 'commit', "
+"'tag', ...)"
 
-#: diff.c:6327
-#, c-format
-msgid ""
-"you may want to set your %s variable to at least %d and retry the command."
+msgid "show object size"
+msgstr "hiển thị kích thước đối tượng"
+
+msgid "allow -s and -t to work with broken/corrupt objects"
+msgstr "cho phép -s và -t để làm việc với các đối tượng sai/hỏng"
+
+msgid "Batch objects requested on stdin (or --batch-all-objects)"
 msgstr ""
-"bạn có lẽ muốn đặt biến %s của bạn thành ít nhất là %d và thử lại lệnh lần "
-"nữa."
+"Đã yêu cầu các đối tượng batch trên đầu vào tiêu chuẩn stdin (hoặc --batch-"
+"all-objects)"
 
-#: diffcore-order.c:24
-#, c-format
-msgid "failed to read orderfile '%s'"
-msgstr "gặp lỗi khi đọc tập-tin-thứ-tự “%s”"
+msgid "show full <object> or <rev> contents"
+msgstr "hiển thị đầy đủ nội dung <object> hay <rev>"
 
-#: diffcore-rename.c:1564
-msgid "Performing inexact rename detection"
-msgstr "Đang thực hiện dò tìm đổi tên không chính xác"
+msgid "like --batch, but don't emit <contents>"
+msgstr "giống --batch, nhưng không phát ra <contents>"
 
-#: diffcore-rotate.c:29
-#, c-format
-msgid "No such path '%s' in the diff"
-msgstr "Không có đường dẫn %s trong diff"
+msgid "read commands from stdin"
+msgstr "đọc các lệnh từ đầu vào tiêu chuẩn"
 
-#: dir.c:593
-#, c-format
-msgid "pathspec '%s' did not match any file(s) known to git"
-msgstr "đặc tả đường dẫn “%s” không khớp với bất kỳ tập tin nào mà git biết"
+msgid "with --batch[-check]: ignores stdin, batches all known objects"
+msgstr ""
+"với --batch[-check]: bỏ qua đầu vào tiêu chuẩn stdin, batch mọi đối tượng đã "
+"biết"
 
-#: dir.c:733 dir.c:762 dir.c:775
-#, c-format
-msgid "unrecognized pattern: '%s'"
-msgstr "mẫu không được thừa nhận: “%s”"
+msgid "Change or optimize batch output"
+msgstr "Thay đổi hay tối ưu hóa đầu ra batch"
 
-#: dir.c:790 dir.c:804
-#, c-format
-msgid "unrecognized negative pattern: '%s'"
-msgstr "mẫu âm không được thừa nhận: “%s”"
+msgid "buffer --batch output"
+msgstr "đệm kết xuất --batch"
 
-#: dir.c:820
-#, 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"
+msgid "follow in-tree symlinks"
+msgstr "theo liên kết mềm trong-cây"
 
-#: dir.c:828
-msgid "disabling cone pattern matching"
-msgstr "vô hiệu khớp mẫu nón"
+msgid "do not order objects before emitting them"
+msgstr "đừng sắp xếp các đối tượng trước khi phát chúng"
 
-#: dir.c:1212
-#, c-format
-msgid "cannot use %s as an exclude file"
-msgstr "không thể dùng %s như là một tập tin loại trừ"
+msgid ""
+"Emit object (blob or tree) with conversion or filter (stand-alone, or with "
+"batch)"
+msgstr ""
+"Phát đối tượng (blob hoặc cây) với bộ chuyển đổi hoặc bộ lọc (stand-alone, "
+"hoặc với batch)"
 
-#: dir.c:2419
-#, c-format
-msgid "could not open directory '%s'"
-msgstr "không thể mở thư mục “%s”"
+msgid "run textconv on object's content"
+msgstr "chạy lệnh textconv trên nội dung của đối tượng"
 
-#: dir.c:2721
-msgid "failed to get kernel name and information"
-msgstr "gặp lỗi khi lấy tên và thông tin của nhân"
+msgid "run filters on object's content"
+msgstr "chạy các bộ lọc nội dung của đối tượng"
 
-#: dir.c:2846
-msgid "untracked cache is disabled on this system or location"
-msgstr "bộ nhớ tạm không theo vết bị tắt trên hệ thống hay vị trí này"
+msgid "blob|tree"
+msgstr "blob|tree"
 
-#: dir.c:3119
-msgid ""
-"No directory name could be guessed.\n"
-"Please specify a directory on the command line"
+msgid "use a <path> for (--textconv | --filters); Not with 'batch'"
 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"
+"dùng một </đường/dẫn/> rõ ràng cho (--textconv/--filters); Không với 'batch'"
 
-#: dir.c:3807
 #, c-format
-msgid "index file corrupt in repo %s"
-msgstr "tập tin ghi bảng mục lục bị hỏng trong kho %s"
+msgid "'%s=<%s>' needs '%s' or '%s'"
+msgstr "'%s=<%s>' cần '%s' hoặc '%s'"
 
-#: dir.c:3854 dir.c:3859
-#, c-format
-msgid "could not create directories for %s"
-msgstr "không thể tạo thư mục cho %s"
+msgid "path|tree-ish"
+msgstr "path|tree-ish"
 
-#: dir.c:3888
 #, c-format
-msgid "could not migrate git directory from '%s' to '%s'"
-msgstr "không thể di dời thư mục git từ “%s” sang “%s”"
+msgid "'%s' requires a batch mode"
+msgstr "“%s” cần một chế độ batch"
 
-#: editor.c:74
 #, c-format
-msgid "hint: Waiting for your editor to close the file...%c"
-msgstr "gợi ý: Chờ trình biên soạn của bạn đóng tập tin…%c"
+msgid "'-%c' is incompatible with batch mode"
+msgstr "'-%c' là xung khắc với chế độ batch"
 
-#: entry.c:179
-msgid "Filtering content"
-msgstr "Nội dung lọc"
+msgid "batch modes take no arguments"
+msgstr "chế độ batch không nhận các đối số"
 
-#: entry.c:500
 #, c-format
-msgid "could not stat file '%s'"
-msgstr "không thể lấy thống kê tập tin “%s”"
+msgid "<rev> required with '%s'"
+msgstr "cần <rev> với '%s'"
 
-#: environment.c:147
 #, c-format
-msgid "bad git namespace path \"%s\""
-msgstr "đường dẫn không gian tên git \"%s\" sai"
+msgid "<object> required with '-%c'"
+msgstr "cần <object> với '-%c'"
+
+msgid "too many arguments"
+msgstr "có quá nhiều đối số"
 
-#: exec-cmd.c:363
 #, c-format
-msgid "too many args to run %s"
-msgstr "quá nhiều tham số để chạy %s"
+msgid "only two arguments allowed in <type> <object> mode, not %d"
+msgstr "chỉ hai đối số được phép trong chế độ <type> <object>, không phải %d"
 
-#: fetch-pack.c:194
-msgid "git fetch-pack: expected shallow list"
-msgstr "git fetch-pack: cần danh sách shallow"
+msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
+msgstr "git check-attr [-a | --all | <attr>…] [--] tên-đường-dẫn…"
 
-#: fetch-pack.c:197
-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"
+msgid "git check-attr --stdin [-z] [-a | --all | <attr>...]"
+msgstr "git check-attr --stdin [-z] [-a | --all | <attr>…]"
 
-#: fetch-pack.c:208
-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"
+msgid "report all attributes set on file"
+msgstr "báo cáo tất cả các thuộc tính đặt trên tập tin"
 
-#: fetch-pack.c:228
-#, 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”"
+msgid "use .gitattributes only from the index"
+msgstr "chỉ dùng .gitattributes từ bảng mục lục"
 
-#: fetch-pack.c:239
-msgid "unable to write to remote"
-msgstr "không thể ghi lên máy phục vụ"
+msgid "read file names from stdin"
+msgstr "đọc tên tập tin từ đầu vào tiêu chuẩn"
 
-#: fetch-pack.c:397 fetch-pack.c:1460
-#, c-format
-msgid "invalid shallow line: %s"
-msgstr "dòng shallow không hợp lệ: %s"
+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"
 
-#: fetch-pack.c:403 fetch-pack.c:1466
-#, c-format
-msgid "invalid unshallow line: %s"
-msgstr "dòng unshallow không hợp lệ: %s"
+msgid "suppress progress reporting"
+msgstr "chặn các báo cáo tiến trình hoạt động"
 
-#: fetch-pack.c:405 fetch-pack.c:1468
-#, c-format
-msgid "object not found: %s"
-msgstr "không tìm thấy đối tượng: %s"
+msgid "show non-matching input paths"
+msgstr "hiển thị những đường dẫn đầu vào không khớp với mẫu"
 
-#: fetch-pack.c:408 fetch-pack.c:1471
-#, c-format
-msgid "error in object: %s"
-msgstr "lỗi trong đối tượng: %s"
+msgid "ignore index when checking"
+msgstr "bỏ qua mục lục khi kiểm tra"
 
-#: fetch-pack.c:410 fetch-pack.c:1473
-#, c-format
-msgid "no shallow found: %s"
-msgstr "không tìm shallow nào: %s"
+msgid "cannot specify pathnames with --stdin"
+msgstr "không thể chỉ định các tên đường dẫn với --stdin"
 
-#: fetch-pack.c:413 fetch-pack.c:1477
-#, c-format
-msgid "expected shallow/unshallow, got %s"
-msgstr "cần shallow/unshallow, nhưng lại nhận được %s"
+msgid "-z only makes sense with --stdin"
+msgstr "-z chỉ hợp lý với --stdin"
 
-#: fetch-pack.c:453
-#, c-format
-msgid "got %s %d %s"
-msgstr "nhận %s %d - %s"
+msgid "no path specified"
+msgstr "chưa chỉ ra đường dẫn"
 
-#: fetch-pack.c:470
-#, c-format
-msgid "invalid commit %s"
-msgstr "lần chuyển giao %s không hợp lệ"
+msgid "--quiet is only valid with a single pathname"
+msgstr "--quiet chỉ hợp lệ với tên đường dẫn đơn"
 
-#: fetch-pack.c:501
-msgid "giving up"
-msgstr "chịu thua"
+msgid "cannot have both --quiet and --verbose"
+msgstr "không thể dùng cả hai tùy chọn --quiet và --verbose"
 
-#: fetch-pack.c:514 progress.h:25
-msgid "done"
-msgstr "xong"
+msgid "--non-matching is only valid with --verbose"
+msgstr "tùy-chọn --non-matching chỉ hợp lệ khi dùng với --verbose"
 
-#: fetch-pack.c:526
-#, c-format
-msgid "got %s (%d) %s"
-msgstr "nhận %s (%d) %s"
+msgid "git check-mailmap [<options>] <contact>..."
+msgstr "git check-mailmap [<các tùy chọn>] <danh-bạ>…"
 
-#: fetch-pack.c:562
-#, c-format
-msgid "Marking %s as complete"
-msgstr "Đánh dấu %s là đã hoàn thành"
+msgid "also read contacts from stdin"
+msgstr "đồng thời đọc các danh bạ từ đầu vào tiêu chuẩn"
 
-#: fetch-pack.c:784
 #, c-format
-msgid "already have %s (%s)"
-msgstr "đã sẵn có %s (%s)"
+msgid "unable to parse contact: %s"
+msgstr "không thể phân tích danh bạ: “%s”"
 
-#: fetch-pack.c:870
-msgid "fetch-pack: unable to fork off sideband demultiplexer"
-msgstr "fetch-pack: không thể rẽ nhánh sideband demultiplexer"
-
-#: fetch-pack.c:878
-msgid "protocol error: bad pack header"
-msgstr "lỗi giao thức: phần đầu gói bị sai"
-
-#: fetch-pack.c:974
-#, c-format
-msgid "fetch-pack: unable to fork off %s"
-msgstr "fetch-pack: không thể rẽ nhánh %s"
-
-#: fetch-pack.c:980
-msgid "fetch-pack: invalid index-pack output"
-msgstr "fetch-pack: kết xuất index-pack không hợp lệ"
+msgid "no contacts specified"
+msgstr "chưa chỉ ra danh bạ"
 
-#: fetch-pack.c:997
-#, c-format
-msgid "%s failed"
-msgstr "%s gặp lỗi"
+msgid "git checkout--worker [<options>]"
+msgstr "git checkout--worker [<các tùy chọn>]"
 
-#: fetch-pack.c:999
-msgid "error in sideband demultiplexer"
-msgstr "có lỗi trong sideband demultiplexer"
+msgid "string"
+msgstr "chuỗi"
 
-#: fetch-pack.c:1048
-#, c-format
-msgid "Server version is %.*s"
-msgstr "Phiên bản máy chủ là %.*s"
+msgid "when creating files, prepend <string>"
+msgstr "khi tạo các tập tin, nối thêm <chuỗi>"
 
-#: fetch-pack.c:1056 fetch-pack.c:1062 fetch-pack.c:1065 fetch-pack.c:1071
-#: fetch-pack.c:1075 fetch-pack.c:1079 fetch-pack.c:1083 fetch-pack.c:1087
-#: fetch-pack.c:1091 fetch-pack.c:1095 fetch-pack.c:1099 fetch-pack.c:1103
-#: fetch-pack.c:1109 fetch-pack.c:1115 fetch-pack.c:1120 fetch-pack.c:1125
-#, c-format
-msgid "Server supports %s"
-msgstr "Máy chủ hỗ trợ %s"
+msgid "git checkout-index [<options>] [--] [<file>...]"
+msgstr "git checkout-index [<các tùy chọn>] [--] [<tập-tin>…]"
 
-#: fetch-pack.c:1058
-msgid "Server does not support shallow clients"
-msgstr "Máy chủ không hỗ trợ máy khách shallow"
+msgid "stage should be between 1 and 3 or all"
+msgstr "stage nên giữa 1 và 3 hay all"
 
-#: fetch-pack.c:1118
-msgid "Server does not support --shallow-since"
-msgstr "Máy chủ không hỗ trợ --shallow-since"
+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"
 
-#: fetch-pack.c:1123
-msgid "Server does not support --shallow-exclude"
-msgstr "Máy chủ không hỗ trợ --shallow-exclude"
+msgid "do not skip files with skip-worktree set"
+msgstr "đừng bỏ qua các tập tin với skip-worktree được đặt"
 
-#: fetch-pack.c:1127
-msgid "Server does not support --deepen"
-msgstr "Máy chủ không hỗ trợ --deepen"
+msgid "force overwrite of existing files"
+msgstr "ép buộc ghi đè lên tập tin đã sẵn có từ trước"
 
-#: fetch-pack.c:1129
-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"
+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"
 
-#: fetch-pack.c:1142
-msgid "no common commits"
-msgstr "không có lần chuyển giao chung nào"
+msgid "don't checkout new files"
+msgstr "không checkout các tập tin mới"
 
-#: fetch-pack.c:1151 fetch-pack.c:1506 builtin/clone.c:1166
-msgid "source repository is shallow, reject to clone."
-msgstr "kho nguồn là nông, nên bỏ từ chối nhân bản."
+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"
 
-#: fetch-pack.c:1157 fetch-pack.c:1705
-msgid "git fetch-pack: fetch failed."
-msgstr "git fetch-pack: fetch gặp lỗi."
+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"
 
-#: fetch-pack.c:1271
-#, 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"
+msgid "write the content to temporary files"
+msgstr "ghi nội dung vào tập tin tạm"
 
-#: fetch-pack.c:1275
-#, c-format
-msgid "the server does not support algorithm '%s'"
-msgstr "máy chủ không hỗ trợ thuật toán “%s”"
+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"
 
-#: fetch-pack.c:1308
-msgid "Server does not support shallow requests"
-msgstr "Máy chủ không hỗ trợ yêu cầu shallow"
+msgid "git checkout [<options>] <branch>"
+msgstr "git checkout [<các tùy chọn>] <nhánh>"
 
-#: fetch-pack.c:1315
-msgid "Server supports filter"
-msgstr "Máy chủ hỗ trợ bộ lọc"
+msgid "git checkout [<options>] [<branch>] -- <file>..."
+msgstr "git checkout [<các tùy chọn>] [<nhánh>] -- <tập-tin>…"
 
-#: fetch-pack.c:1358 fetch-pack.c:2087
-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ụ"
+msgid "git switch [<options>] [<branch>]"
+msgstr "git switch [<các tùy chọn>] [<nhánh>]"
 
-#: fetch-pack.c:1376
-#, c-format
-msgid "error reading section header '%s'"
-msgstr "gặp lỗi khi đọc phần đầu của đoạn %s"
+msgid "git restore [<options>] [--source=<branch>] <file>..."
+msgstr "git restore [<các tùy chọn>] [--source=<nhánh>] <tập tin>…"
 
-#: fetch-pack.c:1382
 #, c-format
-msgid "expected '%s', received '%s'"
-msgstr "cần “%s”, nhưng lại nhận “%s”"
+msgid "path '%s' does not have our version"
+msgstr "đường dẫn “%s” không có các phiên bản của chúng ta"
 
-#: fetch-pack.c:1416
 #, c-format
-msgid "unexpected acknowledgment line: '%s'"
-msgstr "gặp dòng không được thừa nhận: “%s”"
+msgid "path '%s' does not have their version"
+msgstr "đường dẫn “%s” không có các phiên bản của chúng"
 
-#: fetch-pack.c:1421
 #, c-format
-msgid "error processing acks: %d"
-msgstr "gặp lỗi khi xử lý tín hiệu trả lời: %d"
+msgid "path '%s' does not have all necessary versions"
+msgstr "đường dẫn “%s” không có tất cả các phiên bản cần thiết"
 
-#. TRANSLATORS: The parameter will be 'ready', a protocol
-#. keyword.
-#.
-#: fetch-pack.c:1435
 #, c-format
-msgid "expected packfile to be sent after '%s'"
-msgstr "cần tập tin gói để gửi sau “%s”"
+msgid "path '%s' does not have necessary versions"
+msgstr "đường dẫn “%s” không có các phiên bản cần thiết"
 
-#. TRANSLATORS: The parameter will be 'ready', a protocol
-#. keyword.
-#.
-#: fetch-pack.c:1441
 #, c-format
-msgid "expected no other sections to be sent after no '%s'"
-msgstr "không cần thêm phần nào để gửi sau không “%s”"
+msgid "path '%s': cannot merge"
+msgstr "đường dẫn “%s”: không thể hòa trộn"
 
-#: fetch-pack.c:1482
 #, c-format
-msgid "error processing shallow info: %d"
-msgstr "lỗi xử lý thông tin shallow: %d"
+msgid "Unable to add merge result for '%s'"
+msgstr "Không thể thêm kết quả hòa trộn cho “%s”"
 
-#: fetch-pack.c:1531
 #, c-format
-msgid "expected wanted-ref, got '%s'"
-msgstr "cần wanted-ref, nhưng lại nhận được “%s”"
+msgid "Recreated %d merge conflict"
+msgid_plural "Recreated %d merge conflicts"
+msgstr[0] "Đã tạo lại %d xung đột hòa trộn"
 
-#: fetch-pack.c:1536
 #, c-format
-msgid "unexpected wanted-ref: '%s'"
-msgstr "wanted-ref không được mong đợi: “%s”"
+msgid "Updated %d path from %s"
+msgid_plural "Updated %d paths from %s"
+msgstr[0] "Đã cập nhật đường dẫn %d từ %s"
 
-#: fetch-pack.c:1541
 #, c-format
-msgid "error processing wanted refs: %d"
-msgstr "lỗi khi xử lý wanted refs: %d"
-
-#: fetch-pack.c:1571
-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:1983
-msgid "no matching remote head"
-msgstr "không khớp phần đầu máy chủ"
-
-#: fetch-pack.c:2006 builtin/clone.c:587
-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:2109
-msgid "unexpected 'ready' from remote"
-msgstr "gặp “ready” đột xuất từ máy chủ"
+msgid "Updated %d path from the index"
+msgid_plural "Updated %d paths from the index"
+msgstr[0] "Đã cập nhật đường dẫn %d từ mục lục"
 
-#: fetch-pack.c:2132
 #, c-format
-msgid "no such remote ref %s"
-msgstr "không có máy chủ tham chiếu nào như %s"
+msgid "'%s' cannot be used with updating paths"
+msgstr "không được dùng “%s” với các đường dẫn cập nhật"
 
-#: fetch-pack.c:2135
 #, c-format
-msgid "Server does not allow request for unadvertised object %s"
+msgid "Cannot update paths and switch to branch '%s' at the same time."
 msgstr ""
-"Máy phục vụ không cho phép yêu cầu cho đối tượng không được báo trước %s"
+"Không thể cập nhật các đường dẫn và chuyển đến nhánh “%s” cùng một lúc."
 
-#: fsmonitor-ipc.c:119
 #, c-format
-msgid "fsmonitor_ipc__send_query: invalid path '%s'"
-msgstr "fsmonitor_ipc__send_query: đường dẫn không hợp lệ '%s'"
+msgid "neither '%s' or '%s' is specified"
+msgstr "không chỉ định “%s” cũng không “%s”"
 
-#: fsmonitor-ipc.c:125
 #, c-format
-msgid "fsmonitor_ipc__send_query: unspecified error on '%s'"
-msgstr "fsmonitor_ipc__send_query: lỗi chưa rõ trên '%s'"
-
-#: fsmonitor-ipc.c:155
-msgid "fsmonitor--daemon is not running"
-msgstr "fsmonitor--daemon hiện tại chưa chạy"
+msgid "'%s' must be used when '%s' is not specified"
+msgstr "phải có “%s” khi không chỉ định “%s”"
 
-#: fsmonitor-ipc.c:164
 #, c-format
-msgid "could not send '%s' command to fsmonitor--daemon"
-msgstr "không thể gửi lệnh '%s' đến fsmonitor--daemon"
-
-#: gpg-interface.c:329 gpg-interface.c:456 gpg-interface.c:995
-#: gpg-interface.c:1011
-msgid "could not create temporary file"
-msgstr "không thể tạo tập tin tạm thời"
+msgid "'%s' or '%s' cannot be used with %s"
+msgstr "“%s” hay “%s” không thể được sử dụng với %s"
 
-#: gpg-interface.c:332 gpg-interface.c:459
 #, c-format
-msgid "failed writing detached signature to '%s'"
-msgstr "gặp lỗi khi ghi chữ ký đính kèm vào “%s”"
+msgid "path '%s' is unmerged"
+msgstr "đường dẫn “%s” không được hòa trộn"
 
-#: gpg-interface.c:450
-msgid ""
-"gpg.ssh.allowedSignersFile needs to be configured and exist for ssh "
-"signature verification"
-msgstr ""
-"gpg.ssh.allowedSignersFile cần được cấu hình và tồn tại để xác minh chữ ký "
-"ssh"
+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 đã"
 
-#: gpg-interface.c:479
+#, c-format
 msgid ""
-"ssh-keygen -Y find-principals/verify is needed for ssh signature "
-"verification (available in openssh version 8.2p1+)"
+"cannot continue with staged changes in the following files:\n"
+"%s"
 msgstr ""
-"ssh-keygen -Y find-principals/verify là cần thiết để xác minh chữ ký ssh (có "
-"sẵn trong phiên bản openssh 8.2p1+)"
-
-#: gpg-interface.c:550
-#, c-format
-msgid "ssh signing revocation file configured but not found: %s"
-msgstr "tập tin thu hồi chữ ký ssh đã được cấu hình nhưng không tìm thấy: %s"
+"không thể tiếp tục với các thay đổi đã được đưa lên bệ phóng trong các dòng "
+"sau:\n"
+"%s"
 
-#: gpg-interface.c:638
 #, c-format
-msgid "bad/incompatible signature '%s'"
-msgstr "chữ sai / không tương thích “%s”"
+msgid "Can not do reflog for '%s': %s\n"
+msgstr "Không thể thực hiện reflog cho “%s”: %s\n"
 
-#: gpg-interface.c:815 gpg-interface.c:820
-#, c-format
-msgid "failed to get the ssh fingerprint for key '%s'"
-msgstr "gặp lỗi khi lấy dấu vân tay ssh cho khóa “%s”"
+msgid "HEAD is now at"
+msgstr "HEAD hiện giờ tại"
 
-#: gpg-interface.c:843
-msgid ""
-"either user.signingkey or gpg.ssh.defaultKeyCommand needs to be configured"
-msgstr ""
-"hoặc là user.signingkey hoặc gpg.ssh.defaultKeyCommand cần được cấu hình"
+msgid "unable to update HEAD"
+msgstr "không thể cập nhật HEAD"
 
-#: gpg-interface.c:865
 #, c-format
-msgid "gpg.ssh.defaultKeyCommand succeeded but returned no keys: %s %s"
-msgstr ""
-"gpg.ssh.defaultKeyCommand thành công nhưng lại không trả về khóa nào: %s %s"
+msgid "Reset branch '%s'\n"
+msgstr "Đặt lại nhánh “%s”\n"
 
-#: gpg-interface.c:871
 #, c-format
-msgid "gpg.ssh.defaultKeyCommand failed: %s %s"
-msgstr "gpg.ssh.defaultKeyCommand gặp lỗi: %s %s"
-
-#: gpg-interface.c:966
-msgid "gpg failed to sign the data"
-msgstr "gpg gặp lỗi khi ký dữ liệu"
-
-#: gpg-interface.c:988
-msgid "user.signingkey needs to be set for ssh signing"
-msgstr "user.signingkey cần được đặt cho ký ssh"
+msgid "Already on '%s'\n"
+msgstr "Đã sẵn sàng trên “%s”\n"
 
-#: gpg-interface.c:999
 #, c-format
-msgid "failed writing ssh signing key to '%s'"
-msgstr "gặp lỗi khi ghi chìa khóa ký ssh vào “%s”"
+msgid "Switched to and reset branch '%s'\n"
+msgstr "Đã chuyển tới và đặt lại nhánh “%s”\n"
 
-#: gpg-interface.c:1017
 #, c-format
-msgid "failed writing ssh signing key buffer to '%s'"
-msgstr "gặp lỗi khi ghi bộ đệm chìa khóa ký ssh vào “%s”"
-
-#: gpg-interface.c:1035
-msgid ""
-"ssh-keygen -Y sign is needed for ssh signing (available in openssh version "
-"8.2p1+)"
-msgstr ""
-"ssh-keygen -Y sign là cần thiết cho ký ssh (sẵn có trong openssh phiên bản "
-"8.2p1+)"
+msgid "Switched to a new branch '%s'\n"
+msgstr "Đã chuyển đến nhánh mới “%s”\n"
 
-#: gpg-interface.c:1047
 #, c-format
-msgid "failed reading ssh signing data buffer from '%s'"
-msgstr "gặp lỗi khi đọc bộ đệm dữ liệu chữ ký ssh từ “%s”"
+msgid "Switched to branch '%s'\n"
+msgstr "Đã chuyển đến nhánh “%s”\n"
 
-#: graph.c:98
 #, c-format
-msgid "ignored invalid color '%.*s' in log.graphColors"
-msgstr "bỏ qua màu không hợp lệ “%.*s” trong log.graphColors"
+msgid " ... and %d more.\n"
+msgstr " … và nhiều hơn %d.\n"
 
-#: grep.c:446
-msgid ""
-"given pattern contains NULL byte (via -f <file>). This is only supported "
-"with -P under PCRE v2"
-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:1859
-#, c-format
-msgid "'%s': unable to read %s"
-msgstr "“%s”: không thể đọc %s"
-
-#: grep.c:1876 setup.c:178 builtin/clone.c:308 builtin/diff.c:90
-#: builtin/rm.c:136
-#, c-format
-msgid "failed to stat '%s'"
-msgstr "gặp lỗi khi lấy thống kê về “%s”"
-
-#: grep.c:1887
-#, c-format
-msgid "'%s': short read"
-msgstr "“%s”: đọc ngắn"
-
-#: help.c:25
-msgid "start a working area (see also: git help tutorial)"
-msgstr "bắt đầu một vùng làm việc (xem thêm: git help tutorial)"
-
-#: help.c:26
-msgid "work on the current change (see also: git help everyday)"
-msgstr "làm việc trên thay đổi hiện tại (xem thêm: git help everyday)"
-
-#: help.c:27
-msgid "examine the history and state (see also: git help revisions)"
-msgstr "xem xét lịch sử tình trạng (xem thêm: git help revisions)"
-
-#: help.c:28
-msgid "grow, mark and tweak your common history"
-msgstr "thêm, ghi dấu và chỉnh lịch sử chung của bạn"
-
-#: help.c:29
-msgid "collaborate (see also: git help workflows)"
-msgstr "làm việc nhóm (xem thêm: git help workflows)"
-
-#: help.c:33
-msgid "Main Porcelain Commands"
-msgstr "Các lệnh Porcelain chính"
-
-#: help.c:34
-msgid "Ancillary Commands / Manipulators"
-msgstr "Lệnh/thao tác thứ cấp"
-
-#: help.c:35
-msgid "Ancillary Commands / Interrogators"
-msgstr "Lệnh/bộ hỏi thứ cấp"
-
-#: help.c:36
-msgid "Interacting with Others"
-msgstr "Tương tác với những cái khác"
-
-#: help.c:37
-msgid "Low-level Commands / Manipulators"
-msgstr "Lệnh/thao tác ở mức thấp"
-
-#: help.c:38
-msgid "Low-level Commands / Interrogators"
-msgstr "Lệnh/bộ hỏi ở mức thấp"
-
-#: help.c:39
-msgid "Low-level Commands / Syncing Repositories"
-msgstr "Lệnh/Đồng bộ kho ở mức thấp"
-
-#: help.c:40
-msgid "Low-level Commands / Internal Helpers"
-msgstr "Lệnh/Hỗ trợ nội tại ở mức thấp"
-
-#: help.c:316
-#, c-format
-msgid "available git commands in '%s'"
-msgstr "các lệnh git sẵn có trong thư mục “%s”:"
-
-#: help.c:323
-msgid "git commands available from elsewhere on your $PATH"
-msgstr "các lệnh git sẵn có từ một nơi khác trong $PATH của bạn"
-
-#: help.c:332
-msgid "These are common Git commands used in various situations:"
-msgstr "Có các lệnh Git chung được sử dụng trong các tình huống khác nhau:"
-
-#: help.c:382 git.c:100
-#, c-format
-msgid "unsupported command listing type '%s'"
-msgstr "không hỗ trợ liệt kê lệnh kiểu “%s”"
-
-#: help.c:422
-msgid "The Git concept guides are:"
-msgstr "Các chỉ dẫn khái niệm về Git là:"
-
-#: help.c:446
-msgid "External commands"
-msgstr "Các lệnh bên ngoài"
-
-#: help.c:468
-msgid "Command aliases"
-msgstr "Các bí danh lệnh"
-
-#: help.c:486
-msgid "See 'git help <command>' to read about a specific subcommand"
-msgstr "Xem “git help <lệnh>” để đọc các đặc tả của lệnh con"
-
-#: help.c:563
-#, c-format
-msgid ""
-"'%s' appears to be a git command, but we were not\n"
-"able to execute it. Maybe git-%s is broken?"
-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:585 help.c:682
-#, 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:633
-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:655
-#, 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:660
-#, 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:666
-#, c-format
-msgid "Run '%s' instead [y/N]? "
-msgstr "Chạy “%s” để thay thế? (y/N)? "
-
-#: help.c:674
-#, 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:686
+#, c-format
 msgid ""
+"Warning: you are leaving %d commit behind, not connected to\n"
+"any of your branches:\n"
 "\n"
-"The most similar command is"
+"%s\n"
 msgid_plural ""
+"Warning: you are leaving %d commits behind, not connected to\n"
+"any of your branches:\n"
 "\n"
-"The most similar commands are"
+"%s\n"
 msgstr[0] ""
+"Cảnh báo: bạn đã rời bỏ %d lần chuyển giao lại đằng sau, không được kết nối "
+"đến\n"
+"bất kỳ nhánh nào của bạn:\n"
 "\n"
-"Những lệnh giống nhất là"
-
-#: help.c:729
-msgid "git version [<options>]"
-msgstr "git version [<các tùy chọn>]"
+"%s\n"
 
-#: help.c:784
 #, c-format
-msgid "%s: %s - %s"
-msgstr "%s: %s - %s"
-
-#: help.c:788
 msgid ""
+"If you want to keep it by creating a new branch, this may be a good time\n"
+"to do so with:\n"
+"\n"
+" git branch <new-branch-name> %s\n"
 "\n"
-"Did you mean this?"
 msgid_plural ""
+"If you want to keep them by creating a new branch, this may be a good time\n"
+"to do so with:\n"
+"\n"
+" git branch <new-branch-name> %s\n"
 "\n"
-"Did you mean one of these?"
 msgstr[0] ""
+"Nếu bạn muốn giữ (chúng) nó bằng cách tạo ra một nhánh mới, đây có lẽ là\n"
+"một thời điểm thích hợp để làm thế bằng lệnh:\n"
+"\n"
+" git branch <tên_nhánh_mới> %s\n"
 "\n"
-"Có phải ý bạn là một trong số những cái này không?"
 
-#: hook.c:28
-#, c-format
-msgid ""
-"The '%s' hook was ignored because it's not set as executable.\n"
-"You can disable this warning with `git config advice.ignoredHook false`."
-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“."
+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"
 
-#: hook.c:87
-#, c-format
-msgid "Couldn't start hook '%s'\n"
-msgstr "Không thể khởi chạy móc “%s”\n"
+msgid "Previous HEAD position was"
+msgstr "Vị trí trước kia của HEAD là"
 
-#: ident.c:354
-msgid "Author identity unknown\n"
-msgstr "Chưa biết định danh tác giả\n"
+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"
 
-#: ident.c:357
-msgid "Committer identity unknown\n"
-msgstr "Chưa biết định danh người chuyển giao\n"
+#, c-format
+msgid ""
+"'%s' could be both a local file and a tracking branch.\n"
+"Please use -- (and optionally --no-guess) to disambiguate"
+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"
 
-#: ident.c:363
 msgid ""
+"If you meant to check out a remote tracking branch on, e.g. 'origin',\n"
+"you can do so by fully qualifying the name with the --track option:\n"
 "\n"
-"*** Please tell me who you are.\n"
-"\n"
-"Run\n"
-"\n"
-"  git config --global user.email \"you@example.com\"\n"
-"  git config --global user.name \"Your Name\"\n"
-"\n"
-"to set your account's default identity.\n"
-"Omit --global to set the identity only in this repository.\n"
+"    git checkout --track origin/<name>\n"
 "\n"
+"If you'd like to always have checkouts of an ambiguous <name> prefer\n"
+"one remote, e.g. the 'origin' remote, consider setting\n"
+"checkout.defaultRemote=origin in your config."
 msgstr ""
+"Nếu ý bạn là lấy ra nhánh máy chủ được theo dõi, ví dụ “origin”,\n"
+"bạn có thể làm như vậy bằng cách chỉ định đầy đủ tên với tùy chọn --track:\n"
 "\n"
-"*** Vui lòng cho biết bạn là ai.\n"
-"\n"
-"Chạy\n"
-"\n"
-"  git config --global user.email \"bạn@ví_dụ.com\"\n"
-"  git config --global user.name \"Tên Của Bạn\"\n"
-"\n"
-"để đặt định danh mặc định cho tài khoản của bạn.\n"
-"Bỏ tùy chọn --global nếu chỉ định danh riêng cho kho này.\n"
+"    git checkout --track origin/<tên>\n"
 "\n"
+"Nếu bạn muốn luôn lấy ra từ một <tên> một máy chủ ưa thích\n"
+"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."
 
-#: ident.c:398
-msgid "no email was given and auto-detection is disabled"
-msgstr "không đưa ra địa chỉ thư điện tử và auto-detection bị tắt"
-
-#: ident.c:403
 #, c-format
-msgid "unable to auto-detect email address (got '%s')"
-msgstr "không thể tự dò tìm địa chỉ thư điện tử (nhận “%s”)"
+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"
 
-#: ident.c:420
-msgid "no name was given and auto-detection is disabled"
-msgstr "chưa chỉ ra tên và tự-động-dò-tìm bị tắt"
+msgid "only one reference expected"
+msgstr "chỉ cần một tham chiếu"
 
-#: ident.c:426
 #, c-format
-msgid "unable to auto-detect name (got '%s')"
-msgstr "không thể dò-tìm-tự động tên (đã nhận “%s”)"
+msgid "only one reference expected, %d given."
+msgstr "chỉ cần một tham chiếu, nhưng lại đưa ra %d."
 
-#: ident.c:434
 #, c-format
-msgid "empty ident name (for <%s>) not allowed"
-msgstr "không cho phép tên định danh là rỗng (cho <%s>)"
+msgid "invalid reference: %s"
+msgstr "tham chiếu không hợp lệ: %s"
 
-#: ident.c:440
 #, c-format
-msgid "name consists only of disallowed characters: %s"
-msgstr "tên chỉ được phép bao gồm các ký tự sau: %s"
+msgid "reference is not a tree: %s"
+msgstr "tham chiếu không phải là một cây:%s"
 
-#: ident.c:455 builtin/commit.c:649
 #, c-format
-msgid "invalid date format: %s"
-msgstr "ngày tháng không hợp lệ: %s"
-
-#: list-objects-filter-options.c:68
-msgid "expected 'tree:<depth>'"
-msgstr "cần “tree:<depth>”"
-
-#: list-objects-filter-options.c:83
-msgid "sparse:path filters support has been dropped"
-msgstr "việc hỗ trợ bộ lọc sparse:đường/dẫn đã bị bỏ"
+msgid "a branch is expected, got tag '%s'"
+msgstr "cần một nhánh, nhưng lại nhận được thẻ “%s”"
 
-#: list-objects-filter-options.c:90
 #, c-format
-msgid "'%s' for 'object:type=<type>' is not a valid object type"
-msgstr "“%s” dành cho “object:type=<type>” không phải là kiểu đối tượng hợp lệ"
+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”"
 
-#: list-objects-filter-options.c:109
 #, c-format
-msgid "invalid filter-spec '%s'"
-msgstr "đặc tả bộ lọc không hợp lệ “%s”"
+msgid "a branch is expected, got '%s'"
+msgstr "cần một nhánh, nhưng lại nhận được “%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”"
-
-#: list-objects-filter-options.c:167
-msgid "expected something after combine:"
-msgstr "mong đợi một cái gì đó sau khi kết hợp:"
+msgid "a branch is expected, got commit '%s'"
+msgstr "cần một nhánh, nhưng lại nhận được “%s”"
 
-#: list-objects-filter-options.c:249
-msgid "multiple filter-specs cannot be combined"
-msgstr "không thể tổ hợp nhiều đặc tả kiểu lọc"
+msgid ""
+"If you want to detach HEAD at the commit, try again with the --detach option."
+msgstr ""
+"Nếu bạn muốn tách rời HEAD ở lần chuyển giao, hay thử lại với tùy chọn --"
+"detach."
 
-#: list-objects-filter-options.c:365
-msgid "unable to upgrade repository format to support partial clone"
-msgstr "không thể nâng cấp định định dạng kho chứa để hỗ trợ nhân bản cục bộ"
-
-#: list-objects-filter.c:532
-#, 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”"
-
-#: list-objects-filter.c:535
-#, c-format
-msgid "unable to parse sparse filter data in %s"
-msgstr "không thể phân tích dữ liệu bộ lọc rải rác trong %s"
-
-#: list-objects.c:144
-#, c-format
-msgid "entry '%s' in tree %s has tree mode, but is not a tree"
-msgstr "mục “%s” trong cây %s có nút cây, nhưng không phải là một cây"
-
-#: list-objects.c:157
-#, c-format
-msgid "entry '%s' in tree %s has blob mode, but is not a blob"
-msgstr "mục “%s” trong cây %s có nút blob, nhưng không phải là một blob"
+msgid ""
+"cannot switch branch while merging\n"
+"Consider \"git merge --quit\" or \"git worktree add\"."
+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\"."
 
-#: list-objects.c:415
-#, c-format
-msgid "unable to load root tree for commit %s"
-msgstr "không thể tải cây gốc cho lần chuyển giao “%s”"
+msgid ""
+"cannot switch branch in the middle of an am session\n"
+"Consider \"git am --quit\" or \"git worktree add\"."
+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\"."
 
-#: lockfile.c:152
-#, c-format
 msgid ""
-"Unable to create '%s.lock': %s.\n"
-"\n"
-"Another git process seems to be running in this repository, e.g.\n"
-"an editor opened by 'git commit'. Please make sure all processes\n"
-"are terminated then try again. If it still fails, a git process\n"
-"may have crashed in this repository earlier:\n"
-"remove the file manually to continue."
+"cannot switch branch while rebasing\n"
+"Consider \"git rebase --quit\" or \"git worktree add\"."
 msgstr ""
-"Không thể tạo “%s.lock”: %s.\n"
-"\n"
-"Tiến trình git khác có lẽ đang chạy ở kho này, ví dụ\n"
-"một trình soạn thảo được mở bởi “git commit”. Vui lòng chắc chắn\n"
-"rằng mọi tiến trình đã chấm dứt và sau đó thử lại. Nếu vẫn lỗi,\n"
-"một tiến trình git có lẽ đã đổ vỡ khi thực hiện ở kho này trước đó:\n"
-"gõ bỏ tập tin một cách thủ công để tiếp tục."
+"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\"."
 
-#: lockfile.c:160
-#, c-format
-msgid "Unable to create '%s.lock': %s"
-msgstr "Không thể tạo “%s.lock”: %s"
+msgid ""
+"cannot switch branch while cherry-picking\n"
+"Consider \"git cherry-pick --quit\" or \"git worktree add\"."
+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\"."
 
-#: ls-refs.c:175
-#, c-format
-msgid "unexpected line: '%s'"
-msgstr "dòng không cần: “%s”"
+msgid ""
+"cannot switch branch while reverting\n"
+"Consider \"git revert --quit\" or \"git worktree add\"."
+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\"."
 
-#: ls-refs.c:179
-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)"
+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"
 
-#: mailinfo.c:1050
-msgid "quoted CRLF detected"
-msgstr "phát hiện CRLF được trích dẫn"
+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"
 
-#: mailinfo.c:1254 builtin/am.c:185 builtin/mailinfo.c:46
 #, c-format
-msgid "bad action '%s' for '%s'"
-msgstr "thao tác sai “%s” cho “%s”"
+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"
 
-#: merge-ort.c:1630 merge-recursive.c:1214
 #, c-format
-msgid "Failed to merge submodule %s (not checked out)"
-msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s” (không lấy ra được)"
+msgid "'%s' cannot be used with '%s'"
+msgstr "“%s” không thể được dùng với “%s”"
 
-#: merge-ort.c:1639 merge-recursive.c:1221
 #, c-format
-msgid "Failed to merge submodule %s (commits not present)"
-msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s” (lần chuyển giao không hiện diện)"
+msgid "'%s' cannot take <start-point>"
+msgstr "“%s” không thể nhận <điểm-đầu>"
 
-#: merge-ort.c:1648 merge-recursive.c:1228
 #, c-format
-msgid "Failed to merge submodule %s (commits don't follow merge-base)"
-msgstr ""
-"Gặp lỗi khi hòa trộn mô-đun-con “%s” (lần chuyển giao không theo sau nền-hòa-"
-"trộn)"
+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”"
 
-#: merge-ort.c:1658 merge-ort.c:1666
-#, c-format
-msgid "Note: Fast-forwarding submodule %s to %s"
-msgstr "Chú ý: Chuyển-tiếp-nhanh mô-đun-con “%s” sang “%s”"
+msgid "missing branch or commit argument"
+msgstr "thiếu tham số là nhánh hoặc lần chuyển giao"
 
-#: merge-ort.c:1688
-#, c-format
-msgid "Failed to merge submodule %s"
-msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s”"
+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"
 
-#: merge-ort.c:1695
-#, c-format
-msgid ""
-"Failed to merge submodule %s, but a possible merge resolution exists:\n"
-"%s\n"
-msgstr ""
-"Gặp lỗi khi hòa trộn mô-đun-con “%s”, nhưng có cách giải quyết:\n"
-"%s\n"
+msgid "style"
+msgstr "kiểu"
 
-#: merge-ort.c:1699 merge-recursive.c:1284
-#, c-format
-msgid ""
-"If this is correct simply add it to the index for example\n"
-"by using:\n"
-"\n"
-"  git update-index --cacheinfo 160000 %s \"%s\"\n"
-"\n"
-"which will accept this suggestion.\n"
-msgstr ""
-"Nếu đây là đúng đơn giản thêm nó vào mục lục ví dụ\n"
-"bằng cách dùng:\n"
-"\n"
-"  git update-index --cacheinfo 160000 %s \"%s\"\n"
-"\n"
-"cái mà sẽ chấp nhận gợi ý này.\n"
+msgid "conflict style (merge, diff3, or zdiff3)"
+msgstr "xung đột kiểu (hòa trộn, diff3 hoặc zdiff3)"
 
-#: merge-ort.c:1712
-#, c-format
-msgid ""
-"Failed to merge submodule %s, but multiple possible merges exist:\n"
-"%s"
-msgstr ""
-"Gặp lỗi khi hòa trộn mô-đun-con “%s”, nhưng có nhiều cách giải quyết:\n"
-"%s"
+msgid "detach HEAD at named commit"
+msgstr "rời bỏ HEAD tại lần chuyển giao theo tên"
 
-#: merge-ort.c:1937 merge-recursive.c:1375
-msgid "Failed to execute internal merge"
-msgstr "Gặp lỗi khi thực hiện trộn nội bộ"
+msgid "force checkout (throw away local modifications)"
+msgstr "ép buộc lấy ra (bỏ đi những thay đổi nội bộ)"
 
-#: merge-ort.c:1942 merge-recursive.c:1380
-#, c-format
-msgid "Unable to add %s to database"
-msgstr "Không thể thêm %s vào cơ sở dữ liệu"
+msgid "new-branch"
+msgstr "nhánh-mới"
 
-#: merge-ort.c:1949 merge-recursive.c:1413
-#, c-format
-msgid "Auto-merging %s"
-msgstr "Tự-động-hòa-trộn %s"
+msgid "new unparented branch"
+msgstr "nhánh không cha mới"
 
-#: merge-ort.c:2088 merge-recursive.c:2135
-#, c-format
-msgid ""
-"CONFLICT (implicit dir rename): Existing file/dir at %s in the way of "
-"implicit directory rename(s) putting the following path(s) there: %s."
-msgstr ""
-"XUNG ĐỘT: (ngầm đổi tên thư mục): Tập tin/thư mục đã sẵn có tại %s theo cách "
-"của các đổi tên thư mục ngầm đặt (các) đường dẫn sau ở đây: %s."
+msgid "update ignored files (default)"
+msgstr "cập nhật các tập tin bị bỏ qua (mặc định)"
 
-#: merge-ort.c:2098 merge-recursive.c:2145
-#, c-format
-msgid ""
-"CONFLICT (implicit dir rename): Cannot map more than one path to %s; "
-"implicit directory renames tried to put these paths there: %s"
-msgstr ""
-"XUNG ĐỘT: (ngầm đổi tên thư mục): Không thể ánh xạ một đường dẫn thành %s; "
-"các đổi tên thư mục ngầm cố đặt các đường dẫn ở đây: %s"
+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"
 
-#: merge-ort.c:2156
-#, c-format
-msgid ""
-"CONFLICT (directory rename split): Unclear where to rename %s to; it was "
-"renamed to multiple other directories, with no destination getting a "
-"majority of the files."
+msgid "checkout our version for unmerged files"
 msgstr ""
-"XUNG ĐỘT: (thư mục đổi tên chia tách): Không rõ ràng nơi để đổi tên %s "
-"thành; nó đã bị đổi tên thành nhiều thư mục khác, với không đích đến nhận "
-"một phần nhiều của các tập tin."
+"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"
 
-#: merge-ort.c:2310 merge-recursive.c:2481
-#, c-format
-msgid ""
-"WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
-"renamed."
+msgid "checkout their version for unmerged files"
 msgstr ""
-"CẢNH BÁO: tránh áp dụng %s -> %s đổi thên thành %s, bởi vì bản thân %s cũng "
-"bị đổi tên."
+"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"
 
-#: merge-ort.c:2450 merge-recursive.c:3264
-#, c-format
-msgid ""
-"Path updated: %s added in %s inside a directory that was renamed in %s; "
-"moving it to %s."
-msgstr ""
-"Đường dẫn đã được cập nhật: %s được thêm vào trong %s bên trong một thư mục "
-"đã được đổi tên trong %s; di chuyển nó đến %s."
+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"
 
-#: merge-ort.c:2457 merge-recursive.c:3271
 #, c-format
-msgid ""
-"Path updated: %s renamed to %s in %s, inside a directory that was renamed in "
-"%s; moving it to %s."
-msgstr ""
-"Đường dẫn đã được cập nhật: %s được đổi tên thành %s trong %s, bên trong một "
-"thư mục đã được đổi tên trong %s; di chuyển nó đến %s."
+msgid "options '-%c', '-%c', and '%s' cannot be used together"
+msgstr "tùy chọn '-%c', '-%c' và '%s' không thể dùng cùng nhau"
+
+msgid "--track needs a branch name"
+msgstr "--track cần tên một nhánh"
 
-#: merge-ort.c:2470 merge-recursive.c:3267
 #, c-format
-msgid ""
-"CONFLICT (file location): %s added in %s inside a directory that was renamed "
-"in %s, suggesting it should perhaps be moved to %s."
-msgstr ""
-"XUNG ĐỘT (vị trí tệp): %s được thêm vào trong %s trong một thư mục đã được "
-"đổi tên thành %s, đoán là nó nên được di chuyển đến %s."
+msgid "missing branch name; try -%c"
+msgstr "thiếu tên nhánh; hãy thử -%c"
 
-#: merge-ort.c:2478 merge-recursive.c:3274
 #, c-format
-msgid ""
-"CONFLICT (file location): %s renamed to %s in %s, inside a directory that "
-"was renamed in %s, suggesting it should perhaps be moved to %s."
-msgstr ""
-"XUNG ĐỘT (vị trí tệp): %s được đổi tên thành %s trong %s, bên trong một thư "
-"mục đã được đổi tên thành %s, đoán là nó nên được di chuyển đến %s."
+msgid "could not resolve %s"
+msgstr "không thể phân giải “%s”"
+
+msgid "invalid path specification"
+msgstr "đường dẫn đã cho không hợp lệ"
 
-#: merge-ort.c:2634
 #, c-format
-msgid "CONFLICT (rename/rename): %s renamed to %s in %s and to %s in %s."
+msgid "'%s' is not a commit and a branch '%s' cannot be created from it"
 msgstr ""
-"XUNG ĐỘT (đổi-tên/đổi-tên): Đổi tên %s->%s trong %s và thành %s trong %s."
+"“%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ừ đó"
 
-#: merge-ort.c:2729
 #, 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”"
+
 msgid ""
-"CONFLICT (rename involved in collision): rename of %s -> %s has content "
-"conflicts AND collides with another path; this may result in nested conflict "
-"markers."
+"git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
+"checking out of the index."
 msgstr ""
-"XUNG ĐỘT (đổi tên liên quan đến va chạm): đổi tên %s -> %s xung đột nội dung "
-"VÀ va chạm với một đường dẫn khác; điều này có thể dẫn đến tạo ra các xung "
-"đột lồng nhau."
+"git checkout: --ours/--theirs, --force và --merge là xung khắc với nhau khi\n"
+"checkout bảng mục lục (index)."
 
-#: merge-ort.c:2748 merge-ort.c:2772
-#, c-format
-msgid "CONFLICT (rename/delete): %s renamed to %s in %s, but deleted in %s."
-msgstr ""
-"XUNG ĐỘT (đổi-tên/xóa): Đổi tên %s->%s trong %s, nhưng lại bị xóa trong %s."
+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"
 
-#: merge-ort.c:3261 merge-recursive.c:3025
-#, c-format
-msgid "cannot read object %s"
-msgstr "không thể đọc đối tượng %s"
-
-#: merge-ort.c:3264 merge-recursive.c:3028
-#, c-format
-msgid "object %s is not a blob"
-msgstr "đối tượng %s không phải là một blob"
+msgid "branch"
+msgstr "nhánh"
 
-#: merge-ort.c:3693
-#, c-format
-msgid ""
-"CONFLICT (file/directory): directory in the way of %s from %s; moving it to "
-"%s instead."
-msgstr ""
-"XUNG ĐỘT (tập tin/thư mục): thư mục theo cách của %s từ %s; thay vào đó, di "
-"chuyển nó đến %s."
+msgid "create and checkout a new branch"
+msgstr "tạo và checkout một nhánh mới"
 
-#: merge-ort.c:3770
-#, c-format
-msgid ""
-"CONFLICT (distinct types): %s had different types on each side; renamed both "
-"of them so each can be recorded somewhere."
-msgstr ""
-"XUNG ĐỘT (các kiểu riêng biệt): %s có các kiểu khác nhau ở mỗi bên; đã đổi "
-"tên cả hai trong số chúng để mỗi cái có thể được ghi lại ở đâu đó."
+msgid "create/reset and checkout a branch"
+msgstr "tạo/đặt_lại và checkout một nhánh"
 
-#: merge-ort.c:3777
-#, c-format
-msgid ""
-"CONFLICT (distinct types): %s had different types on each side; renamed one "
-"of them so each can be recorded somewhere."
-msgstr ""
-"XUNG ĐỘT (các kiểu riêng biệt): %s có các loại khác nhau ở mỗi bên; đã đổi "
-"tên một trong số chúng để mỗi cái có thể được ghi lại ở đâu đó."
+msgid "create reflog for new branch"
+msgstr "tạo reflog cho nhánh mới"
 
-#: merge-ort.c:3866 merge-recursive.c:3104
-msgid "content"
-msgstr "nội dung"
+msgid "second guess 'git checkout <no-such-branch>' (default)"
+msgstr "gợi ý thứ hai “git checkout <không-nhánh-nào-như-vậy>” (mặc định)"
 
-#: merge-ort.c:3868 merge-recursive.c:3108
-msgid "add/add"
-msgstr "thêm/thêm"
+msgid "use overlay mode (default)"
+msgstr "dùng chế độ che phủ (mặc định)"
 
-#: merge-ort.c:3870 merge-recursive.c:3153
-msgid "submodule"
-msgstr "mô-đun-con"
+msgid "create and switch to a new branch"
+msgstr "tạo và chuyển đến một nhánh mới"
 
-#: merge-ort.c:3872 merge-recursive.c:3154
-#, c-format
-msgid "CONFLICT (%s): Merge conflict in %s"
-msgstr "XUNG ĐỘT (%s): Xung đột hòa trộn trong %s"
+msgid "create/reset and switch to a branch"
+msgstr "tạo/đặt_lại và chuyển đến một nhánh"
 
-#: merge-ort.c:3916
-#, c-format
-msgid ""
-"CONFLICT (modify/delete): %s deleted in %s and modified in %s.  Version %s "
-"of %s left in tree."
-msgstr ""
-"XUNG ĐỘT (sửa/xóa): %s bị xóa trong %s và sửa trong %s. Phiên bản %s của %s "
-"còn lại trong cây (tree)."
+msgid "second guess 'git switch <no-such-branch>'"
+msgstr "gợi ý thứ hai \"git switch <không-nhánh-nào-như-vậy>\""
 
-#: merge-ort.c:4212
-#, c-format
-msgid ""
-"Note: %s not up to date and in way of checking out conflicted version; old "
-"copy renamed to %s"
-msgstr ""
-"Lưu ý: %s không được cập nhật và theo cách lấy ra phiên bản xung đột; bản "
-"sao cũ được đổi tên thành %s"
+msgid "throw away local modifications"
+msgstr "vứt bỏ các sửa đổi địa phương"
 
-#. TRANSLATORS: The %s arguments are: 1) tree hash of a merge
-#. base, and 2-3) the trees for the two trees we're merging.
-#.
-#: merge-ort.c:4586
-#, c-format
-msgid "collecting merge info failed for trees %s, %s, %s"
-msgstr "thu thập thông tin hòa trộn gặp lỗi cho cây %s, %s, %s"
+msgid "which tree-ish to checkout from"
+msgstr "lấy ra từ tree-ish nào"
 
-#: merge-ort-wrappers.c:13 merge-recursive.c:3723
-#, 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"
+msgid "restore the index"
+msgstr "phục hồi bảng mục lục"
 
-#: merge-ort-wrappers.c:33 merge-recursive.c:3485 builtin/merge.c:405
-msgid "Already up to date."
-msgstr "Đã cập nhật rồi."
+msgid "restore the working tree (default)"
+msgstr "phục hồi cây làm việc (mặc định)"
 
-#: merge-recursive.c:353
-msgid "(bad commit)\n"
-msgstr "(commit sai)\n"
+msgid "ignore unmerged entries"
+msgstr "bỏ qua những thứ chưa hòa trộn: %s"
 
-#: merge-recursive.c:381
-#, c-format
-msgid "add_cacheinfo failed for path '%s'; merge aborting."
-msgstr "add_cacheinfo gặp lỗi đối với đường dẫn “%s”; việc hòa trộn bị bãi bỏ."
+msgid "use overlay mode"
+msgstr "dùng chế độ che phủ"
 
-#: merge-recursive.c:390
-#, c-format
-msgid "add_cacheinfo failed to refresh for path '%s'; merge aborting."
+msgid ""
+"git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <paths>..."
 msgstr ""
-"add_cacheinfo gặp lỗi khi làm mới đối với đường dẫn “%s”; việc hòa trộn bị "
-"bãi bỏ."
-
-#: merge-recursive.c:881
-#, c-format
-msgid "failed to create path '%s'%s"
-msgstr "gặp lỗi khi tạo đường dẫn “%s”%s"
-
-#: merge-recursive.c:892
-#, c-format
-msgid "Removing %s to make room for subdirectory\n"
-msgstr "Gỡ bỏ %s để tạo chỗ (room) cho thư mục con\n"
-
-#: merge-recursive.c:906 merge-recursive.c:925
-msgid ": perhaps a D/F conflict?"
-msgstr ": có lẽ là một xung đột D/F?"
+"git clean [-d] [-f] [-i] [-n] [-q] [-e <mẫu>] [-x | -X] [--] </các/đường/"
+"dẫn>…"
 
-#: merge-recursive.c:915
 #, c-format
-msgid "refusing to lose untracked file at '%s'"
-msgstr "từ chối đóng tập tin không được theo dõi tại “%s”"
+msgid "Removing %s\n"
+msgstr "Đang gỡ bỏ %s\n"
 
-#: merge-recursive.c:956 builtin/cat-file.c:47
 #, c-format
-msgid "cannot read object %s '%s'"
-msgstr "không thể đọc đối tượng %s “%s”"
+msgid "Would remove %s\n"
+msgstr "Có thể gỡ bỏ %s\n"
 
-#: merge-recursive.c:961
 #, c-format
-msgid "blob expected for %s '%s'"
-msgstr "mong đợi đối tượng blob cho %s “%s”"
+msgid "Skipping repository %s\n"
+msgstr "Đang bỏ qua kho chứa %s\n"
 
-#: merge-recursive.c:986
 #, c-format
-msgid "failed to open '%s': %s"
-msgstr "gặp lỗi khi mở “%s”: %s"
+msgid "Would skip repository %s\n"
+msgstr "Nên bỏ qua kho chứa %s\n"
 
-#: merge-recursive.c:997
 #, c-format
-msgid "failed to symlink '%s': %s"
-msgstr "gặp lỗi khi tạo liên kết mềm (symlink) “%s”: %s"
+msgid "failed to remove %s"
+msgstr "gặp lỗi khi gỡ bỏ %s"
 
-#: merge-recursive.c:1002
 #, c-format
-msgid "do not know what to do with %06o %s '%s'"
-msgstr "không hiểu phải làm gì với %06o %s “%s”"
+msgid "could not lstat %s\n"
+msgstr "không thể lấy thông tin thống kê đầy đủ của %s\n"
 
-#: merge-recursive.c:1236 merge-recursive.c:1249
-#, c-format
-msgid "Fast-forwarding submodule %s to the following commit:"
-msgstr "Chuyển-tiếp-nhanh mô-đun-con “%s” đến lần chuyển giao sau đây:"
+msgid "Refusing to remove current working directory\n"
+msgstr "Từ chối gỡ bỏ thư mục làm việc hiện tại\n"
 
-#: merge-recursive.c:1239 merge-recursive.c:1252
-#, c-format
-msgid "Fast-forwarding submodule %s"
-msgstr "Chuyển-tiếp-nhanh mô-đun-con “%s”"
+msgid "Would refuse to remove current working directory\n"
+msgstr "Nên từ chối gỡ bỏ thư mục làm việc hiện tại\n"
 
-#: merge-recursive.c:1276
 #, c-format
-msgid "Failed to merge submodule %s (merge following commits not found)"
+msgid ""
+"Prompt help:\n"
+"1          - select a numbered item\n"
+"foo        - select item based on unique prefix\n"
+"           - (empty) select nothing\n"
 msgstr ""
-"Gặp lỗi khi hòa trộn mô-đun-con “%s” (không tìm thấy các lần chuyển giao "
-"theo sau hòa trộn)"
+"Trợ giúp về nhắc:\n"
+"1          - chọn một mục được đánh số\n"
+"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"
 
-#: merge-recursive.c:1280
 #, c-format
-msgid "Failed to merge submodule %s (not fast-forward)"
-msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s” (không chuyển tiếp nhanh được)"
-
-#: merge-recursive.c:1281
-msgid "Found a possible merge resolution for the submodule:\n"
-msgstr "Tìm thấy một giải pháp hòa trộn có thể cho mô-đun-con:\n"
+msgid ""
+"Prompt help:\n"
+"1          - select a single item\n"
+"3-5        - select a range of items\n"
+"2-3,6-9    - select multiple ranges\n"
+"foo        - select item based on unique prefix\n"
+"-...       - unselect specified items\n"
+"*          - choose all items\n"
+"           - (empty) finish selecting\n"
+msgstr ""
+"Trợ giúp về nhắc:\n"
+"1          - chọn một mục đơn\n"
+"3-5        - chọn một vùng\n"
+"2-3,6-9    - chọn nhiều vùng\n"
+"foo        - chọn mục dựa trên tiền tố duy nhất\n"
+"-…         - không chọn các mục đã chỉ ra\n"
+"*          - chọn tất\n"
+"           - (để trống) kết thúc việc chọn\n"
 
-#: merge-recursive.c:1293
-#, c-format
-msgid "Failed to merge submodule %s (multiple merges found)"
-msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s” (thấy nhiều hòa trộn đa trùng)"
+#, c-format, perl-format
+msgid "Huh (%s)?\n"
+msgstr "Hả (%s)?\n"
 
-#: merge-recursive.c:1437
 #, c-format
-msgid "Error: Refusing to lose untracked file at %s; writing to %s instead."
-msgstr ""
-"Lỗi: từ chối đóng tập tin không được theo dõi tại “%s”; thay vào đó ghi vào "
-"%s."
+msgid "Input ignore patterns>> "
+msgstr "Mẫu để lọc các tập tin đầu vào cần lờ đi>> "
 
-#: merge-recursive.c:1509
 #, c-format
-msgid ""
-"CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
-"in tree."
-msgstr ""
-"XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s trong %s. Phiên bản %s của %s "
-"còn lại trong cây (tree)."
+msgid "WARNING: Cannot find items matched by: %s"
+msgstr "CẢNH BÁO: Không tìm thấy các mục được khớp bởi: %s"
 
-#: merge-recursive.c:1514
-#, c-format
-msgid ""
-"CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
-"left in tree."
-msgstr ""
-"XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s đến %s trong %s. Phiên bản %s "
-"của %s còn lại trong cây (tree)."
+msgid "Select items to delete"
+msgstr "Chọn mục muốn xóa"
 
-#: merge-recursive.c:1521
+#. TRANSLATORS: Make sure to keep [y/N] as is
 #, c-format
-msgid ""
-"CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
-"in tree at %s."
-msgstr ""
-"XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s trong %s. Phiên bản %s của %s "
-"còn lại trong cây (tree) tại %s."
+msgid "Remove %s [y/N]? "
+msgstr "Xóa bỏ “%s” [y/N]? "
 
-#: merge-recursive.c:1526
-#, c-format
 msgid ""
-"CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
-"left in tree at %s."
+"clean               - start cleaning\n"
+"filter by pattern   - exclude items from deletion\n"
+"select by numbers   - select items to be deleted by numbers\n"
+"ask each            - confirm each deletion (like \"rm -i\")\n"
+"quit                - stop cleaning\n"
+"help                - this screen\n"
+"?                   - help for prompt selection"
 msgstr ""
-"XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s đến %s trong %s. Phiên bản %s "
-"của %s còn lại trong cây (tree) tại %s."
+"clean               - bắt đầu dọn dẹp\n"
+"filter by pattern   - loại trừ các mục khỏi việc xóa\n"
+"select by numbers   - chọn các mục cần xóa bằng số\n"
+"ask each            - xác nhận trước mỗi lần xóa (giống như \"rm -i\")\n"
+"quit                - dừng việc dọn dẹp lại\n"
+"help                - hiển thị chính trợ giúp này\n"
+"?                   - trợ giúp dành cho chọn bằng cách nhắc"
 
-#: merge-recursive.c:1561
-msgid "rename"
-msgstr "đổi tên"
+msgid "Would remove the following item:"
+msgid_plural "Would remove the following items:"
+msgstr[0] "Có muốn gỡ bỏ (các) mục sau đây không:"
 
-#: merge-recursive.c:1561
-msgid "renamed"
-msgstr "đã đổi tên"
+msgid "No more files to clean, exiting."
+msgstr "Không còn tập-tin nào để dọn dẹp, đang thoát ra."
 
-#: merge-recursive.c:1612 merge-recursive.c:2518 merge-recursive.c:3181
-#, c-format
-msgid "Refusing to lose dirty file at %s"
-msgstr "Từ chối đóng tập tin không được theo dõi tại “%s”"
+msgid "do not print names of files removed"
+msgstr "không hiển thị tên của các tập tin đã gỡ bỏ"
 
-#: merge-recursive.c:1622
-#, c-format
-msgid "Refusing to lose untracked file at %s, even though it's in the way."
-msgstr ""
-"Từ chối đóng tập tin không được theo dõi tại “%s”, ngay cả khi nó ở trên "
-"đường."
+msgid "force"
+msgstr "ép buộc"
 
-#: merge-recursive.c:1680
-#, c-format
-msgid "CONFLICT (rename/add): Rename %s->%s in %s.  Added %s in %s"
-msgstr ""
-"XUNG ĐỘT (đổi-tên/thêm): Đổi tên %s->%s trong %s. %s được thêm trong %s"
+msgid "interactive cleaning"
+msgstr "dọn bằng kiểu tương tác"
 
-#: merge-recursive.c:1711
-#, c-format
-msgid "%s is a directory in %s adding as %s instead"
-msgstr "%s là một thư mục trong %s thay vào đó thêm vào như là %s"
+msgid "remove whole directories"
+msgstr "gỡ bỏ toàn bộ thư mục"
 
-#: merge-recursive.c:1716
-#, c-format
-msgid "Refusing to lose untracked file at %s; adding as %s instead"
-msgstr ""
-"Từ chối đóng tập tin không được theo dõi tại “%s”; thay vào đó đang thêm "
-"thành %s"
+msgid "pattern"
+msgstr "mẫu"
 
-#: merge-recursive.c:1743
-#, c-format
-msgid ""
-"CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
-"\"->\"%s\" in \"%s\"%s"
-msgstr ""
-"XUNG ĐỘT (đổi-tên/đổi-tên): Đổi tên \"%s\"->\"%s\" trong nhánh \"%s\" đổi "
-"tên \"%s\"->\"%s\" trong \"%s\"%s"
+msgid "add <pattern> to ignore rules"
+msgstr "thêm <mẫu> vào trong qui tắc bỏ qua"
 
-#: merge-recursive.c:1748
-msgid " (left unresolved)"
-msgstr " (cần giải quyết)"
+msgid "remove ignored files, too"
+msgstr "đồng thời gỡ bỏ cả các tập tin bị bỏ qua"
 
-#: merge-recursive.c:1840
-#, c-format
-msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
-msgstr ""
-"XUNG ĐỘT (đổi-tên/đổi-tên): Đổi tên %s->%s trong %s. Đổi tên %s->%s trong %s"
+msgid "remove only ignored files"
+msgstr "chỉ gỡ bỏ những tập tin bị bỏ qua"
 
-#: merge-recursive.c:2103
-#, c-format
 msgid ""
-"CONFLICT (directory rename split): Unclear where to place %s because "
-"directory %s was renamed to multiple other directories, with no destination "
-"getting a majority of the files."
+"clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
+"clean"
 msgstr ""
-"XUNG ĐỘT: (thư mục đổi tên chia tách): Không rõ ràng để đặt địa điểm %s bởi "
-"vì thư mục %s đã bị đổi tên thành nhiều thư mục khác, với không đích đến "
-"nhận một phần nhiều của các tập tin."
+"clean.requireForce được đặt thành true và không đưa ra tùy chọn -i, -n mà "
+"cũng không -f; từ chối lệnh dọn dẹp (clean)"
 
-#: merge-recursive.c:2237
-#, c-format
 msgid ""
-"CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
-">%s in %s"
+"clean.requireForce defaults to true and neither -i, -n, nor -f given; "
+"refusing to clean"
 msgstr ""
-"XUNG ĐỘT (đổi-tên/đổi-tên): Đổi tên thư mục %s->%s trong %s. Đổi tên thư mục "
-"%s->%s trong %s"
+"clean.requireForce mặc định được đặt là true và không đưa ra tùy chọn -i, -n "
+"mà cũng không -f; từ chối lệnh dọn dẹp (clean)"
 
-#: merge-recursive.c:3092
-msgid "modify"
-msgstr "sửa đổi"
+msgid "-x and -X cannot be used together"
+msgstr "-x và -X không thể dùng cùng nhau"
 
-#: merge-recursive.c:3092
-msgid "modified"
-msgstr "đã sửa"
+msgid "git clone [<options>] [--] <repo> [<dir>]"
+msgstr "git clone [<các tùy chọn>] [--] <kho> [<t.mục>]"
 
-#: merge-recursive.c:3131
-#, c-format
-msgid "Skipped %s (merged same as existing)"
-msgstr "Đã bỏ qua %s (đã có sẵn lần hòa trộn này)"
+msgid "don't clone shallow repository"
+msgstr "đừng nhân bản từ kho nông"
 
-#: merge-recursive.c:3184
-#, c-format
-msgid "Adding as %s instead"
-msgstr "Thay vào đó thêm vào %s"
+msgid "don't create a checkout"
+msgstr "không tạo một checkout"
 
-#: merge-recursive.c:3388
-#, c-format
-msgid "Removing %s"
-msgstr "Đang xóa %s"
+msgid "create a bare repository"
+msgstr "tạo kho thuần"
 
-#: merge-recursive.c:3411
-msgid "file/directory"
-msgstr "tập-tin/thư-mục"
+msgid "create a mirror repository (implies bare)"
+msgstr "tạo kho bản sao (ý là kho thuần)"
 
-#: merge-recursive.c:3416
-msgid "directory/file"
-msgstr "thư-mục/tập-tin"
+msgid "to clone from a local repository"
+msgstr "để nhân bản từ kho nội bộ"
 
-#: merge-recursive.c:3423
-#, c-format
-msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
-msgstr ""
-"XUNG ĐỘT (%s): Ở đây không có thư mục nào có tên %s trong %s. Thêm %s như là "
-"%s"
+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"
 
-#: merge-recursive.c:3432
-#, c-format
-msgid "Adding %s"
-msgstr "Thêm \"%s\""
+msgid "setup as shared repository"
+msgstr "cài đặt đây là kho chia sẻ"
 
-#: merge-recursive.c:3441
-#, c-format
-msgid "CONFLICT (add/add): Merge conflict in %s"
-msgstr "XUNG ĐỘT (thêm/thêm): Xung đột hòa trộn trong %s"
+msgid "pathspec"
+msgstr "đặc-tả-đường-dẫn"
 
-#: merge-recursive.c:3494
-#, c-format
-msgid "merging of trees %s and %s failed"
-msgstr "hòa trộn các cây %s và %s gặp lỗi"
+msgid "initialize submodules in the clone"
+msgstr "khởi tạo mô-đun-con trong bản sao"
 
-#: merge-recursive.c:3588
-msgid "Merging:"
-msgstr "Đang trộn:"
+msgid "number of submodules cloned in parallel"
+msgstr "số lượng mô-đun-con được nhân bản đồng thời"
 
-#: merge-recursive.c:3601
-#, c-format
-msgid "found %u common ancestor:"
-msgid_plural "found %u common ancestors:"
-msgstr[0] "tìm thấy %u tổ tiên chung:"
+msgid "template-directory"
+msgstr "thư-mục-mẫu"
 
-#: merge-recursive.c:3651
-msgid "merge returned no commit"
-msgstr "hòa trộn không trả về lần chuyển giao nào"
+msgid "directory from which templates will be used"
+msgstr "thư mục mà tại đó các mẫu sẽ được dùng"
 
-#: merge-recursive.c:3823
-#, c-format
-msgid "Could not parse object '%s'"
-msgstr "Không thể phân tích đối tượng “%s”"
+msgid "reference repository"
+msgstr "kho tham chiếu"
 
-#: merge-recursive.c:3841 builtin/merge.c:720 builtin/merge.c:912
-#: builtin/stash.c:489
-msgid "Unable to write index."
-msgstr "Không thể ghi bảng mục lục."
+msgid "use --reference only while cloning"
+msgstr "chỉ dùng --reference khi nhân bản"
 
-#: merge.c:41
-msgid "failed to read the cache"
-msgstr "gặp lỗi khi đọc bộ nhớ đệm"
+msgid "name"
+msgstr "tên"
 
-#: merge.c:102 rerere.c:705 builtin/am.c:1989 builtin/am.c:2023
-#: builtin/checkout.c:603 builtin/checkout.c:865 builtin/clone.c:714
-#: builtin/stash.c:269
-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"
+msgid "use <name> instead of 'origin' to track upstream"
+msgstr "dùng <tên> thay cho “origin” để theo dõi thượng nguồn"
 
-#: midx.c:79
-msgid "multi-pack-index OID fanout is of the wrong size"
-msgstr "fanout OID nhiều gói chỉ mục có kích thước sai"
+msgid "checkout <branch> instead of the remote's HEAD"
+msgstr "lấy ra <nhánh> thay cho HEAD của máy chủ"
 
-#: midx.c:112
-#, c-format
-msgid "multi-pack-index file %s is too small"
-msgstr "tập tin đồ thị multi-pack-index %s quá nhỏ"
+msgid "path to git-upload-pack on the remote"
+msgstr "đường dẫn đến git-upload-pack trên máy chủ"
 
-#: midx.c:128
-#, 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"
+msgid "depth"
+msgstr "độ-sâu"
 
-#: midx.c:133
-#, 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"
+msgid "create a shallow clone of that depth"
+msgstr "tạo bản sao không đầy đủ cho mức sâu đã cho"
 
-#: midx.c:138
-#, 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"
+msgid "time"
+msgstr "thời-gian"
 
-#: midx.c:155
-msgid "multi-pack-index missing required pack-name chunk"
-msgstr "multi-pack-index thiếu mảnh pack-name cần thiết"
+msgid "create a shallow clone since a specific time"
+msgstr "tạo bản sao không đầy đủ từ thời điểm đã cho"
 
-#: midx.c:157
-msgid "multi-pack-index missing required OID fanout chunk"
-msgstr "multi-pack-index thiếu mảnh OID fanout cần thiết"
+msgid "revision"
+msgstr "điểm xét duyệt"
 
-#: midx.c:159
-msgid "multi-pack-index missing required OID lookup chunk"
-msgstr "multi-pack-index thiếu mảnh OID lookup cần thiết"
+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ừ"
 
-#: midx.c:161
-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"
+msgid "clone only one branch, HEAD or --branch"
+msgstr "chỉ nhân bản một nhánh, HEAD hoặc --branch"
 
-#: 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”"
+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"
 
-#: midx.c:228
-#, c-format
-msgid "bad pack-int-id: %u (%u total packs)"
-msgstr "pack-int-id sai: %u (%u các gói tổng)"
+msgid "any cloned submodules will be shallow"
+msgstr "mọi mô-đun-con nhân bản sẽ là shallow (nông)"
 
-#: midx.c:278
-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ỏ"
+msgid "gitdir"
+msgstr "gitdir"
 
-#: midx.c:509
-#, c-format
-msgid "failed to add packfile '%s'"
-msgstr "gặp lỗi khi thêm tập tin gói “%s”"
+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"
 
-#: midx.c:515
-#, c-format
-msgid "failed to open pack-index '%s'"
-msgstr "gặp lỗi khi mở pack-index “%s”"
+msgid "key=value"
+msgstr "khóa=giá_trị"
 
-#: midx.c:583
-#, 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"
+msgid "set config inside the new repository"
+msgstr "đặt cấu hình bên trong một kho chứa mới"
 
-#: midx.c:911
-msgid "cannot store reverse index file"
-msgstr "không thể lưu trữ tập tin ghi mục lục đảo ngược"
+msgid "server-specific"
+msgstr "đặc-tả-máy-phục-vụ"
 
-#: midx.c:1009
-#, c-format
-msgid "could not parse line: %s"
-msgstr "không thể phân tích cú pháp dòng: %s"
+msgid "option to transmit"
+msgstr "tùy chọn để chuyển giao"
 
-#: midx.c:1011
-#, c-format
-msgid "malformed line: %s"
-msgstr "dòng dị hình: %s"
+msgid "use IPv4 addresses only"
+msgstr "chỉ dùng địa chỉ IPv4"
 
-#: midx.c:1181
-msgid "ignoring existing multi-pack-index; checksum mismatch"
-msgstr "bỏ qua multi-pack-index sẵn có; tổng kiểm không khớp"
+msgid "use IPv6 addresses only"
+msgstr "chỉ dùng địa chỉ IPv6"
 
-#: midx.c:1206
-msgid "could not load pack"
-msgstr "không thể tải gói"
+msgid "apply partial clone filters to submodules"
+msgstr "áp dụng các bộ lọc nhân bản một phần cho mô-đun-con"
 
-#: midx.c:1212
-#, c-format
-msgid "could not open index for %s"
-msgstr "không thể mở mục lục cho %s"
+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"
 
-#: midx.c:1223
-msgid "Adding packfiles to multi-pack-index"
-msgstr "Đang thêm tập tin gói từ multi-pack-index"
+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"
 
-#: midx.c:1266
 #, c-format
-msgid "unknown preferred pack: '%s'"
-msgstr "không hiểu \"preferred pack\": %s"
+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"
 
-#: midx.c:1311
 #, c-format
-msgid "cannot select preferred pack %s with no objects"
-msgstr "không thể chọn gói ưa dùng %s với không đối tượng nào"
+msgid "failed to stat '%s'"
+msgstr "gặp lỗi khi lấy thống kê về “%s”"
 
-#: midx.c:1343
 #, 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"
+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"
 
-#: midx.c:1389
 #, c-format
-msgid "preferred pack '%s' is expired"
-msgstr "\"preferred pack\" “%s” đã hết hạn"
-
-#: midx.c:1402
-msgid "no pack files to index."
-msgstr "không có tập tin gói để đánh mục lục."
-
-#: midx.c:1409
-msgid "refusing to write multi-pack .bitmap without any objects"
-msgstr "từ chối ghi “multi-pack bitmap” mà không có bất kỳ đối tượng nào"
-
-#: midx.c:1451
-msgid "could not write multi-pack bitmap"
-msgstr "không thể ghi “multi-pack bitmap”"
-
-#: midx.c:1461
-msgid "could not write multi-pack-index"
-msgstr "không thể ghi “multi-pack-index”"
+msgid "failed to start iterator over '%s'"
+msgstr "gặp lỗi khi bắt đầu lặp qua “%s”"
 
-#: midx.c:1520 builtin/clean.c:37
 #, c-format
-msgid "failed to remove %s"
-msgstr "gặp lỗi khi gỡ bỏ %s"
+msgid "failed to unlink '%s'"
+msgstr "gặp lỗi khi bỏ liên kết (unlink) “%s”"
 
-#: midx.c:1553
 #, 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:1616
-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"
+msgid "failed to create link '%s'"
+msgstr "gặp lỗi khi tạo được liên kết mềm %s"
 
-#: midx.c:1624
-msgid "incorrect checksum"
-msgstr "tổng kiểm không đúng"
+#, c-format
+msgid "failed to copy file to '%s'"
+msgstr "gặp lỗi khi sao chép tập tin và “%s”"
 
-#: midx.c:1627
-msgid "Looking for referenced packfiles"
-msgstr "Đang khóa cho các gói bị tham chiếu"
+#, c-format
+msgid "failed to iterate over '%s'"
+msgstr "gặp lỗi khi lặp qua “%s”"
 
-#: midx.c:1642
 #, c-format
+msgid "done.\n"
+msgstr "hoàn tất.\n"
+
 msgid ""
-"oid fanout out of order: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
-msgstr "fanout cũ sai thứ tự: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
+"Clone succeeded, but checkout failed.\n"
+"You can inspect what was checked out with 'git status'\n"
+"and retry with 'git restore --source=HEAD :/'\n"
+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"
 
-#: midx.c:1647
-msgid "the midx contains no oid"
-msgstr "midx chẳng chứa oid nào"
+#, 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)."
 
-#: midx.c:1656
-msgid "Verifying OID order in multi-pack-index"
-msgstr "Thẩm tra thứ tự OID trong multi-pack-index"
+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"
 
-#: midx.c:1665
 #, 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]"
+msgid "unable to update %s"
+msgstr "không thể cập nhật %s"
 
-#: midx.c:1685
-msgid "Sorting objects by packfile"
-msgstr "Đang sắp xếp các đối tượng theo tập tin gói"
+msgid "failed to initialize sparse-checkout"
+msgstr "gặp lỗi khi khởi tạo sparse-checkout"
 
-#: midx.c:1692
-msgid "Verifying object offsets"
-msgstr "Đang thẩm tra các khoảng bù đối tượng"
+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"
 
-#: midx.c:1708
-#, 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"
+msgid "unable to checkout working tree"
+msgstr "không thể lấy ra (checkout) cây làm việc"
 
-#: midx.c:1714
-#, 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"
+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"
 
-#: midx.c:1723
-#, 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>"
+msgid "cannot repack to clean up"
+msgstr "không thể đóng gói để dọn dẹp"
 
-#: midx.c:1750
-msgid "Counting referenced objects"
-msgstr "Đang đếm các đối tượng được tham chiếu"
+msgid "cannot unlink temporary alternates file"
+msgstr "không thể bỏ liên kết tập tin thay thế tạm thời"
 
-#: midx.c:1760
-msgid "Finding and deleting unreferenced packfiles"
-msgstr "Đang tìm và xóa các gói không được tham chiếu"
+msgid "Too many arguments."
+msgstr "Có quá nhiều đối số."
 
-#: midx.c:1952
-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"
+msgid "You must specify a repository to clone."
+msgstr "Bạn phải chỉ định một kho để mà nhân bản (clone)."
 
-#: midx.c:1972
-msgid "could not finish pack-objects"
-msgstr "không thể hoàn thiện các đối tượng gói"
+#, c-format
+msgid "options '%s' and '%s %s' cannot be used together"
+msgstr "tùy chọn '%s', và '%s %s' không thể dùng cùng nhau"
 
-#: name-hash.c:542
 #, c-format
-msgid "unable to create lazy_dir thread: %s"
-msgstr "không thể tạo tuyến lazy_dir: %s"
+msgid "repository '%s' does not exist"
+msgstr "kho chứa “%s” chưa tồn tại"
 
-#: name-hash.c:564
 #, c-format
-msgid "unable to create lazy_name thread: %s"
-msgstr "không thể tạo tuyến lazy_name: %s"
+msgid "depth %s is not a positive number"
+msgstr "độ sâu %s không phải là một số nguyên dương"
 
-#: name-hash.c:570
 #, c-format
-msgid "unable to join lazy_name thread: %s"
-msgstr "không thể gia nhập tuyến lazy_name: %s"
+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."
 
-#: notes-merge.c:276
 #, c-format
-msgid ""
-"You have not concluded your previous notes merge (%s exists).\n"
-"Please, use 'git notes merge --commit' or 'git notes merge --abort' to "
-"commit/abort the previous merge before you start a new notes merge."
+msgid "repository path '%s' already exists and is not an empty directory."
 msgstr ""
-"Bạn đã chưa hoàn tất hòa trộn ghi chú trước đây (%s vẫn còn).\n"
-"Vui lòng dùng “git notes merge --commit” hay “git notes merge --abort” để "
-"chuyển giao hay bãi bỏ lần hòa trộn trước đây và bắt đầu một hòa trộn ghi "
-"chú mới."
+"đường dẫn kho chứa “%s” đã có từ trước và không phải là một thư mục rỗng."
 
-#: notes-merge.c:283
 #, c-format
-msgid "You have not concluded your notes merge (%s exists)."
-msgstr "Bạn chưa kết thúc việc hòa trộn ghi chú (%s vẫn tồn tại)."
-
-#: notes-utils.c:46
-msgid "Cannot commit uninitialized/unreferenced notes tree"
-msgstr ""
-"Không thể chuyển giao cây ghi chú chưa được khởi tạo hoặc không được tham "
-"chiếu"
+msgid "working tree '%s' already exists."
+msgstr "cây làm việc “%s” đã sẵn tồn tại rồi."
 
-#: notes-utils.c:105
 #, c-format
-msgid "Bad notes.rewriteMode value: '%s'"
-msgstr "Giá trị notes.rewriteMode sai: “%s”"
+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”"
 
-#: notes-utils.c:115
 #, c-format
-msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
-msgstr "Từ chối ghi đè ghi chú trong %s (nằm ngoài refs/notes/)"
+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”"
 
-#. TRANSLATORS: The first %s is the name of
-#. the environment variable, the second %s is
-#. its value.
-#.
-#: notes-utils.c:145
 #, c-format
-msgid "Bad %s value: '%s'"
-msgstr "Giá trị %s sai: “%s”"
+msgid "Cloning into bare repository '%s'...\n"
+msgstr "Đang nhân bản thành kho chứa bare “%s”…\n"
 
-#: object-file.c:457
 #, c-format
-msgid "object directory %s does not exist; check .git/objects/info/alternates"
+msgid "Cloning into '%s'...\n"
+msgstr "Đang nhân bản thành “%s”…\n"
+
+msgid ""
+"clone --recursive is not compatible with both --reference and --reference-if-"
+"able"
 msgstr ""
-"thư mục đối tượng %s không tồn tại; kiểm tra .git/objects/info/alternates"
+"nhân bản --recursive không tương thích với cả hai --reference và --reference-"
+"if-able"
 
-#: object-file.c:515
 #, 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”"
+msgid "'%s' is not a valid remote name"
+msgstr "“%s” không phải tên máy chủ hợp lệ"
 
-#: object-file.c:589
-#, 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"
+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ế."
 
-#: object-file.c:596
-#, c-format
-msgid "unable to normalize object directory: %s"
-msgstr "không thể chuẩn hóa thư mục đối tượng: “%s”"
+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ế."
 
-#: object-file.c:639
-msgid "unable to fdopen alternates lockfile"
-msgstr "không thể fdopen tập tin khóa thay thế"
+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ế."
 
-#: object-file.c:657
-msgid "unable to read alternates file"
-msgstr "không thể đọc tập tin thay thế"
+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ế."
 
-#: object-file.c:664
-msgid "unable to move new alternates file into place"
-msgstr "không thể di chuyển tập tin thay thế vào chỗ"
+msgid "source repository is shallow, reject to clone."
+msgstr "kho nguồn là nông, nên bỏ từ chối nhân bản."
 
-#: object-file.c:742
-#, c-format
-msgid "path '%s' does not exist"
-msgstr "đường dẫn “%s” không tồn tại"
+msgid "source repository is shallow, ignoring --local"
+msgstr "kho nguồn là nông, nên bỏ qua --local"
 
-#: object-file.c:763
-#, 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ợ."
+msgid "--local is ignored"
+msgstr "--local bị lờ đi"
 
-#: object-file.c:769
-#, 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ộ."
+msgid "cannot clone from filtered bundle"
+msgstr "không thể nhân bản từ bundle được lọc ra"
 
-#: object-file.c:775
-#, c-format
-msgid "reference repository '%s' is shallow"
-msgstr "kho tham chiếu “%s” là nông"
+msgid "remote transport reported error"
+msgstr "vận chuyển máy mạng đã báo cáo lỗi"
 
-#: object-file.c:783
 #, c-format
-msgid "reference repository '%s' is grafted"
-msgstr "kho tham chiếu “%s” bị cấy ghép"
+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"
 
-#: object-file.c:814
-#, c-format
-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”"
+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."
 
-#: object-file.c:864
-#, 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"
+msgid "git column [<options>]"
+msgstr "git column [<các tùy chọn>]"
 
-#: object-file.c:1014
-#, c-format
-msgid "attempting to mmap %<PRIuMAX> over limit %<PRIuMAX>"
-msgstr "đang cố để mmap %<PRIuMAX> vượt quá giới hạn %<PRIuMAX>"
+msgid "lookup config vars"
+msgstr "tìm kiếm biến cấu hình"
 
-#: object-file.c:1049
-#, c-format
-msgid "mmap failed%s"
-msgstr "mmap gặp lỗi%s"
+msgid "layout to use"
+msgstr "bố cục để dùng"
 
-#: object-file.c:1230
-#, c-format
-msgid "object file %s is empty"
-msgstr "tập tin đối tượng %s trống rỗng"
+msgid "maximum width"
+msgstr "độ rộng tối đa"
 
-#: object-file.c:1349 object-file.c:2588
-#, c-format
-msgid "corrupt loose object '%s'"
-msgstr "đối tượng mất hỏng “%s”"
+msgid "padding space on left border"
+msgstr "chèn thêm khoảng trống vào bên trái"
 
-#: object-file.c:1351 object-file.c:2592
-#, 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”"
+msgid "padding space on right border"
+msgstr "chèn thêm khoảng trắng vào bên phải"
 
-#: object-file.c:1473
-#, c-format
-msgid "unable to parse %s header"
-msgstr "không thể phân tích phần đầu của “%s”"
+msgid "padding space between columns"
+msgstr "chèn thêm khoảng trắng giữa các cột"
 
-#: object-file.c:1475
-msgid "invalid object type"
-msgstr "kiểu đối tượng không hợp lệ"
+msgid "--command must be the first argument"
+msgstr "--command phải là đối số đầu tiên"
 
-#: object-file.c:1486
-#, c-format
-msgid "unable to unpack %s header"
-msgstr "không thể giải gói phần đầu %s"
+msgid ""
+"git commit-graph verify [--object-dir <objdir>] [--shallow] [--[no-]progress]"
+msgstr ""
+"git commit-graph verify [--object-dir </thư/mục/đối/tượng>] [--shallow] [--"
+"[no-]progress]"
 
-#: object-file.c:1490
-#, c-format
-msgid "header for %s too long, exceeds %d bytes"
-msgstr "phần đầu cho %s quá dài, vượt quá %d byte"
+msgid ""
+"git commit-graph write [--object-dir <objdir>] [--append] [--"
+"split[=<strategy>]] [--reachable|--stdin-packs|--stdin-commits] [--changed-"
+"paths] [--[no-]max-new-filters <n>] [--[no-]progress] <split options>"
+msgstr ""
+"git commit-graph write [--object-dir </thư/mục/đối/tượng>] [--append][--"
+"split[=<chiến lược>]] [--reachable|--stdin-packs|--stdin-commits][--changed-"
+"paths] [--[no-]max-new-filters <n>] [--[no-]progress] <các tùy chọn chia "
+"tách>"
 
-#: object-file.c:1720
-#, c-format
-msgid "failed to read object %s"
-msgstr "gặp lỗi khi đọc đối tượng “%s”"
+msgid "dir"
+msgstr "tmục"
 
-#: object-file.c:1724
-#, c-format
-msgid "replacement %s not found for %s"
-msgstr "c%s thay thế không được tìm thấy cho %s"
+msgid "the object directory to store the graph"
+msgstr "thư mục đối tượng để lưu đồ thị"
 
-#: object-file.c:1728
-#, 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"
+msgid "if the commit-graph is split, only verify the tip file"
+msgstr ""
+"nếu đồ-thị-các-lần-chuyển-giao bị chia cắt, thì chỉ thẩm tra tập tin đỉnh"
 
-#: object-file.c:1732
 #, 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"
+msgid "Could not open commit-graph '%s'"
+msgstr "Không thể mở đồ thị chuyển giao “%s”"
 
-#: object-file.c:1855
 #, c-format
-msgid "unable to write file %s"
-msgstr "không thể ghi tập tin %s"
+msgid "unrecognized --split argument, %s"
+msgstr "đối số --split không được thừa nhận, %s"
 
-#: object-file.c:1862
 #, c-format
-msgid "unable to set permission to '%s'"
-msgstr "không thể đặt quyền thành “%s”"
-
-#: object-file.c:1869
-msgid "file write error"
-msgstr "lỗi ghi tập tin"
+msgid "unexpected non-hex object ID: %s"
+msgstr "nhận được ID đối tượng không phải dạng hex không cần: %s"
 
-#: object-file.c:1904
-msgid "error when closing loose object file"
-msgstr "gặp lỗi trong khi đóng tập tin đối tượng"
+#, c-format
+msgid "invalid object: %s"
+msgstr "đối tượng không hợp lệ: %s"
 
-#: object-file.c:1971
 #, 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"
+msgid "option `%s' expects a numerical value"
+msgstr "tùy chọn “%s” cần một giá trị bằng số"
 
-#: object-file.c:1973
-msgid "unable to create temporary file"
-msgstr "không thể tạo tập tin tạm thời"
+msgid "start walk at all refs"
+msgstr "bắt đầu di chuyển tại mọi tham chiếu"
 
-#: object-file.c:1997
-msgid "unable to write loose object file"
-msgstr "không thể ghi tập tin đối tượng đã mất"
+msgid "scan pack-indexes listed by stdin for commits"
+msgstr ""
+"quét dó các mục lục gói được liệt kê bởi đầu vào tiêu chuẩn cho các lần "
+"chuyển giao"
 
-#: object-file.c:2003
-#, c-format
-msgid "unable to deflate new object %s (%d)"
-msgstr "không thể xả nén đối tượng mới %s (%d)"
+msgid "start walk at commits listed by stdin"
+msgstr ""
+"bắt đầu di chuyển tại các lần chuyển giao được liệt kê bởi đầu vào tiêu chuẩn"
 
-#: object-file.c:2007
-#, c-format
-msgid "deflateEnd on object %s failed (%d)"
-msgstr "deflateEnd trên đối tượng %s gặp lỗi (%d)"
+msgid "include all commits already in the commit-graph file"
+msgstr ""
+"bao gồm mọi lần chuyển giao đã sẵn có trongười tập tin đồ-thị-các-lần-chuyển-"
+"giao"
 
-#: object-file.c:2011
-#, 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"
+msgid "enable computation for changed paths"
+msgstr "cho phép tính toán các đường dẫn đã bị thay đổi"
 
-#: object-file.c:2022 builtin/pack-objects.c:1251
-#, c-format
-msgid "failed utime() on %s"
-msgstr "gặp lỗi utime() trên “%s”"
+msgid "allow writing an incremental commit-graph file"
+msgstr "cho phép ghi một tập tin đồ họa các lần chuyển giao lớn lên"
 
-#: object-file.c:2100
-#, c-format
-msgid "cannot read object for %s"
-msgstr "không thể đọc đối tượng cho %s"
+msgid "maximum number of commits in a non-base split commit-graph"
+msgstr ""
+"số lượng tối đa của các lần chuyển giao trong một đồ-thị-các-lần-chuyển-giao "
+"chia cắt không-cơ-sở"
 
-#: object-file.c:2151
-msgid "corrupt commit"
-msgstr "lần chuyển giao sai hỏng"
+msgid "maximum ratio between two levels of a split commit-graph"
+msgstr "tỷ lệ tối đa giữa hai mức của một đồ-thị-các-lần-chuyển-giao chia cắt"
 
-#: object-file.c:2159
-msgid "corrupt tag"
-msgstr "thẻ sai hỏng"
+msgid "only expire files older than a given date-time"
+msgstr "chỉ làm hết hạn các tập tin khi nó cũ hơn khoảng <thời gian> đưa ra"
 
-#: object-file.c:2259
-#, c-format
-msgid "read error while indexing %s"
-msgstr "gặp lỗi đọc khi đánh mục lục %s"
+msgid "maximum number of changed-path Bloom filters to compute"
+msgstr "số tối đa các bộ lọc các đường dẫn thay đổi Bloom để tính toán"
 
-#: object-file.c:2262
-#, c-format
-msgid "short read while indexing %s"
-msgstr "không đọc ngắn khi đánh mục lục %s"
+msgid "use at most one of --reachable, --stdin-commits, or --stdin-packs"
+msgstr ""
+"không thể sử dụng hơn một --reachable, --stdin-commits, hay --stdin-packs"
 
-#: object-file.c:2335 object-file.c:2345
-#, 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"
+msgid "Collecting commits from input"
+msgstr "Sưu tập các lần chuyển giao từ đầu vào"
 
-#: object-file.c:2351
 #, c-format
-msgid "%s: unsupported file type"
-msgstr "%s: kiểu tập tin không được hỗ trợ"
+msgid "unrecognized subcommand: %s"
+msgstr "không hiểu câu lệnh con: %s"
 
-#: object-file.c:2375 builtin/fetch.c:1494
-#, c-format
-msgid "%s is not a valid object"
-msgstr "%s không phải là một đối tượng hợp lệ"
+msgid ""
+"git commit-tree [(-p <parent>)...] [-S[<keyid>]] [(-m <message>)...] [(-F "
+"<file>)...] <tree>"
+msgstr ""
+"git commit-tree [(-p <cha>)…] [-S[<keyid>]] [(-m <ghi chú>)…] [(-F <tập tin>)"
+"…] <cây>"
 
-#: object-file.c:2377
 #, 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ệ"
+msgid "duplicate parent %s ignored"
+msgstr "cha mẹ bị trùng lặp %s đã bị bỏ qua"
 
-#: object-file.c:2404
 #, c-format
-msgid "unable to open %s"
-msgstr "không thể mở %s"
+msgid "not a valid object name %s"
+msgstr "không phải là tên đối tượng hợp lệ “%s”"
 
-#: object-file.c:2599
 #, c-format
-msgid "hash mismatch for %s (expected %s)"
-msgstr "mã băm không khớp cho %s (cần %s)"
+msgid "git commit-tree: failed to read '%s'"
+msgstr "git commit-tree: gặp lỗi khi đọc “%s”"
 
-#: object-file.c:2622
 #, c-format
-msgid "unable to mmap %s"
-msgstr "không thể mmap %s"
+msgid "git commit-tree: failed to close '%s'"
+msgstr "git commit-tree: gặp lỗi khi đóng “%s”"
 
-#: object-file.c:2628
-#, c-format
-msgid "unable to unpack header of %s"
-msgstr "không thể giải gói phần đầu của “%s”"
+msgid "parent"
+msgstr "cha-mẹ"
 
-#: object-file.c:2633
-#, c-format
-msgid "unable to parse header of %s"
-msgstr "không thể phân tích phần đầu của “%s”"
+msgid "id of a parent commit object"
+msgstr "mã số của đối tượng chuyển giao cha mẹ"
 
-#: object-file.c:2644
-#, c-format
-msgid "unable to unpack contents of %s"
-msgstr "không thể giải gói nội dung của “%s”"
+msgid "message"
+msgstr "chú thích"
 
-#. TRANSLATORS: This is a line of ambiguous object
-#. output shown when we cannot look up or parse the
-#. object in question. E.g. "deadbeef [bad object]".
-#.
-#: object-name.c:382
-#, c-format
-msgid "%s [bad object]"
-msgstr "%s [đối tượng sai.]"
+msgid "commit message"
+msgstr "chú thích của lần chuyển giao"
 
-#. TRANSLATORS: This is a line of ambiguous commit
-#. object output. E.g.:
-#. *
-#. "deadbeef commit 2021-01-01 - Some Commit Message"
-#.
-#: object-name.c:407
-#, c-format
-msgid "%s commit %s - %s"
-msgstr "%s lần chuyển giao %s - %s"
+msgid "read commit log message from file"
+msgstr "đọc chú thích nhật ký lần chuyển giao từ tập tin"
 
-#. TRANSLATORS: This is a line of ambiguous
-#. tag object output. E.g.:
-#. *
-#. "deadbeef tag 2022-01-01 - Some Tag Message"
-#. *
-#. The second argument is the YYYY-MM-DD found
-#. in the tag.
-#. *
-#. The third argument is the "tag" string
-#. from object.c.
-#.
-#: object-name.c:428
-#, c-format
-msgid "%s tag %s - %s"
-msgstr "%s thẻ %s - %s"
+msgid "GPG sign commit"
+msgstr "Ký lần chuyển giao dùng GPG"
 
-#. TRANSLATORS: This is a line of ambiguous
-#. tag object output where we couldn't parse
-#. the tag itself. E.g.:
-#. *
-#. "deadbeef [bad tag, could not parse it]"
-#.
-#: object-name.c:439
-#, c-format
-msgid "%s [bad tag, could not parse it]"
-msgstr "%s [thẻ sai, không thể phân tích cú pháp nó]"
+msgid "must give exactly one tree"
+msgstr "phải đưa ra chính xác một cây"
 
-#. TRANSLATORS: This is a line of ambiguous <type>
-#. object output. E.g. "deadbeef tree".
-#.
-#: object-name.c:447
-#, c-format
-msgid "%s tree"
-msgstr "%s tree"
+msgid "git commit-tree: failed to read"
+msgstr "git commit-tree: gặp lỗi khi đọc"
 
-#. TRANSLATORS: This is a line of ambiguous <type>
-#. object output. E.g. "deadbeef blob".
-#.
-#: object-name.c:453
-#, c-format
-msgid "%s blob"
-msgstr "%s blob"
+msgid "git commit [<options>] [--] <pathspec>..."
+msgstr "git commit [<các tùy chọn>] [--] <pathspec>…"
 
-#: object-name.c:569
-#, c-format
-msgid "short object ID %s is ambiguous"
-msgstr "mã đối tượng dạng rút gọn %s chưa rõ ràng"
+msgid "git status [<options>] [--] <pathspec>..."
+msgstr "git status [<các tùy chọn>] [--] <pathspec>…"
 
-#. TRANSLATORS: The argument is the list of ambiguous
-#. objects composed in show_ambiguous_object(). See
-#. its "TRANSLATORS" comments for details.
-#.
-#: object-name.c:591
-#, c-format
 msgid ""
-"The candidates are:\n"
-"%s"
-msgstr ""
-"Các ứng cử là:\n"
-"%s"
+"You asked to amend the most recent commit, but doing so would make\n"
+"it empty. You can repeat your command with --allow-empty, or you can\n"
+"remove the commit entirely with \"git reset HEAD^\".\n"
+msgstr ""
+"Bạn đã yêu cầu amend (“tu bổ”) phần lớn các lần chuyển giao gần đây, nhưng "
+"làm như thế\n"
+"có thể làm cho nó trở nên trống rỗng. Bạn có thể lặp lại lệnh của mình bằng "
+"--allow-empty,\n"
+"hoặc là bạn gỡ bỏ các lần chuyển giao một cách hoàn toàn bằng lệnh:\n"
+"\"git reset HEAD^\".\n"
 
-#: object-name.c:888
 msgid ""
-"Git normally never creates a ref that ends with 40 hex characters\n"
-"because it will be ignored when you just specify 40-hex. These refs\n"
-"may be created by mistake. For example,\n"
+"The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
+"If you wish to commit it anyway, use:\n"
 "\n"
-"  git switch -c $br $(git rev-parse ...)\n"
+"    git commit --allow-empty\n"
 "\n"
-"where \"$br\" is somehow empty and a 40-hex ref is created. Please\n"
-"examine these refs and maybe delete them. Turn this message off by\n"
-"running \"git config advice.objectNameWarning false\""
 msgstr ""
-"Git thường không bao giờ tạo tham chiếu mà nó kết thúc với 40 ký tự hex\n"
-"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"
+"Lần cherry-pick trước hiện nay trống rỗng, có lẽ là bởi vì sự phân giải xung "
+"đột.\n"
+"Nếu bạn vẫn muốn chuyển giao nó cho dù thế nào đi nữa, hãy dùng:\n"
 "\n"
-"  git switch -c $br $(git rev-parse …)\n"
+"    git commit --allow-empty\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"
-"Xin hãy kiểm tra những tham chiếu này và có thể xóa chúng đi. Tắt lời nhắn "
-"này\n"
-"bằng cách chạy lệnh \"git config advice.objectNameWarning false\""
-
-#: object-name.c:1008
-#, c-format
-msgid "log for '%.*s' only goes back to %s"
-msgstr "nhật ký cho “%.*s” chỉ trở lại đến %s"
-
-#: object-name.c:1016
-#, c-format
-msgid "log for '%.*s' only has %d entries"
-msgstr "nhật ký cho “%.*s” chỉ có %d mục"
-
-#: object-name.c:1794
-#, c-format
-msgid "path '%s' exists on disk, but not in '%.*s'"
-msgstr "đường dẫn “%s” có ở trên đĩa, nhưng không trong “%.*s”"
-
-#: object-name.c:1800
-#, c-format
-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”?"
 
-#: object-name.c:1809
-#, c-format
-msgid "path '%s' does not exist in '%.*s'"
-msgstr "đường dẫn “%s” không tồn tại trong “%.*s”"
+msgid "Otherwise, please use 'git rebase --skip'\n"
+msgstr "Nếu không được thì dùng lệnh \"git rebase --skip\"\n"
 
-#: object-name.c:1837
-#, c-format
-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”?"
+msgid "Otherwise, please use 'git cherry-pick --skip'\n"
+msgstr "Nếu không được thì dùng lệnh \"git cherry-pick --skip\"\n"
 
-#: object-name.c:1853
-#, c-format
 msgid ""
-"path '%s' is in the index, but not '%s'\n"
-"hint: Did you mean ':%d:%s' aka ':%d:./%s'?"
+"and then use:\n"
+"\n"
+"    git cherry-pick --continue\n"
+"\n"
+"to resume cherry-picking the remaining commits.\n"
+"If you wish to skip this commit, use:\n"
+"\n"
+"    git cherry-pick --skip\n"
+"\n"
 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”?"
-
-#: object-name.c:1861
-#, 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"
+"và sau đó dùng:\n"
+"\n"
+"    git cherry-pick --continue\n"
+"\n"
+"để lại tiếp tục cherry-picking các lần chuyển giao còn lại.\n"
+"Nếu bạn muốn bỏ qua lần chuyển giao này thì dùng:\n"
+"\n"
+"    git cherry-pick --skip\n"
+"\n"
 
-#: object-name.c:1863
-#, c-format
-msgid "path '%s' does not exist (neither on disk nor in the index)"
-msgstr "đường dẫn “%s” không tồn tại (không trên đĩa cũng không trong mục lục)"
+msgid "failed to unpack HEAD tree object"
+msgstr "gặp lỗi khi tháo dỡ HEAD đối tượng cây"
 
-#: object-name.c:1876
-msgid "relative path syntax can't be used outside working tree"
-msgstr "cú pháp đường dẫn tương đối không thể thể dùng ngoài cây làm việc"
+msgid "No paths with --include/--only does not make sense."
+msgstr "Không đường dẫn với các tùy chọn --include/--only không hợp lý."
 
-#: object-name.c:1901
-#, c-format
-msgid "<object>:<path> required, only <object> '%s' given"
-msgstr "<object>:<path> cần cả hai, nhưng chỉ <object> '%s' được đưa ra"
+msgid "unable to create temporary index"
+msgstr "không thể tạo bảng mục lục tạm thời"
 
-#: object-name.c:2014
-#, c-format
-msgid "invalid object name '%.*s'."
-msgstr "“%.*s” không phải là tên đối tượng hợp lệ."
+msgid "interactive add failed"
+msgstr "gặp lỗi khi thêm bằng cách tương"
 
-#: object.c:53
-#, c-format
-msgid "invalid object type \"%s\""
-msgstr "kiểu đối tượng \"%s\" không hợp lệ"
+msgid "unable to update temporary index"
+msgstr "không thể cập nhật bảng mục lục tạm thời"
 
-#: object.c:173
-#, c-format
-msgid "object %s is a %s, not a %s"
-msgstr "đối tượng %s là một %s, không phải là một %s"
+msgid "Failed to update main cache tree"
+msgstr "Gặp lỗi khi cập nhật cây bộ nhớ đệm"
 
-#: object.c:250
-#, c-format
-msgid "object %s has unknown type id %d"
-msgstr "đối tượng %s có mã kiểu %d chưa biết"
+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 (new_index)"
 
-#: object.c:263
-#, c-format
-msgid "unable to parse object: %s"
-msgstr "không thể phân tích đối tượng: “%s”"
+msgid "cannot do a partial commit during a merge."
+msgstr ""
+"không thể thực hiện việc chuyển giao cục bộ trong khi đang được hòa trộn."
 
-#: object.c:283 object.c:294
-#, c-format
-msgid "hash mismatch %s"
-msgstr "mã băm không khớp %s"
+msgid "cannot do a partial commit during a cherry-pick."
+msgstr ""
+"không thể thực hiện việc chuyển giao bộ phận trong khi đang cherry-pick."
 
-#: pack-bitmap.c:353
-msgid "multi-pack bitmap is missing required reverse index"
-msgstr "ánh xạ multi-pack thiếu mục lục để dành cần thiết"
+msgid "cannot do a partial commit during a rebase."
+msgstr ""
+"không thể thực hiện việc chuyển giao cục bộ trong khi đang thực hiện cải tổ."
 
-#: pack-bitmap.c:433
-msgid "load_reverse_index: could not open pack"
-msgstr "load_reverse_index: không thể mở gói"
+msgid "cannot read the index"
+msgstr "không đọc được bảng mục lục"
 
-#: pack-bitmap.c:1072 pack-bitmap.c:1078 builtin/pack-objects.c:2432
-#, c-format
-msgid "unable to get size of %s"
-msgstr "không thể lấy kích cỡ của %s"
+msgid "unable to write temporary index file"
+msgstr "không thể ghi tập tin lưu bảng mục lục tạm thời"
 
-#: pack-bitmap.c:1937
 #, c-format
-msgid "could not find %s in pack %s at offset %<PRIuMAX>"
-msgstr "không thể tìm thấy %s trong gói “%s” tại vị trí %<PRIuMAX>"
+msgid "commit '%s' lacks author header"
+msgstr "lần chuyển giao “%s” thiếu phần tác giả ở đầu"
 
-#: pack-bitmap.c:1973 builtin/rev-list.c:91
 #, c-format
-msgid "unable to get disk usage of %s"
-msgstr "không thể dung lượng đĩa đã dùng của %s"
+msgid "commit '%s' has malformed author line"
+msgstr "lần chuyển giao “%s” có phần tác giả ở đầu dị dạng"
 
-#: pack-revindex.c:221
-#, c-format
-msgid "reverse-index file %s is too small"
-msgstr "tập tin reverse-index %s quá nhỏ"
+msgid "malformed --author parameter"
+msgstr "đối số cho --author bị dị hình"
 
-#: pack-revindex.c:226
 #, c-format
-msgid "reverse-index file %s is corrupt"
-msgstr "tập tin reverse-index %s bị hỏng"
+msgid "invalid date format: %s"
+msgstr "ngày tháng không hợp lệ: %s"
 
-#: pack-revindex.c:234
-#, c-format
-msgid "reverse-index file %s has unknown signature"
-msgstr "tập tin reverse-index %s có chữ ký chưa biết"
+msgid ""
+"unable to select a comment character that is not used\n"
+"in the current commit message"
+msgstr ""
+"không thể chọn một ký tự ghi chú cái mà không được dùng\n"
+"trong phần ghi chú hiện tại"
 
-#: pack-revindex.c:238
 #, c-format
-msgid "reverse-index file %s has unsupported version %<PRIu32>"
-msgstr "tệp chỉ mục ngược %s có phiên bản không được hỗ trợ %<PRIu32>"
+msgid "could not lookup commit %s"
+msgstr "không thể tìm kiếm commit (lần chuyển giao) %s"
 
-#: pack-revindex.c:243
 #, c-format
-msgid "reverse-index file %s has unsupported hash id %<PRIu32>"
-msgstr "tệp chỉ mục ngược %s có id mã băm không được hỗ trợ %<PRIu32>"
+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"
 
-#: pack-write.c:251
-msgid "cannot both write and verify reverse index"
-msgstr "không thể cùng lúc đọc và xác minh được bảng mục lục đảo ngược"
+msgid "could not read log from standard input"
+msgstr "không thể đọc nhật ký từ đầu vào tiêu chuẩn"
 
-#: pack-write.c:270
 #, c-format
-msgid "could not stat: %s"
-msgstr "không thể lấy thông tin thống kê: %s"
+msgid "could not read log file '%s'"
+msgstr "không đọc được tệp nhật ký “%s”"
 
-#: pack-write.c:282
 #, c-format
-msgid "failed to make %s readable"
-msgstr "gặp lỗi làm cho %s đọc được"
+msgid "options '%s' and '%s:%s' cannot be used together"
+msgstr "tùy chọn '%s', và '%s:%s' không thể dùng cùng nhau"
 
-#: pack-write.c:521
-#, c-format
-msgid "could not write '%s' promisor file"
-msgstr "không thể ghi tập tin promisor “%s”"
+msgid "could not read SQUASH_MSG"
+msgstr "không thể đọc SQUASH_MSG"
 
-#: packfile.c:627
-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 à?)"
+msgid "could not read MERGE_MSG"
+msgstr "không thể đọc MERGE_MSG"
 
-#: packfile.c:657
 #, c-format
-msgid "packfile %s cannot be mapped%s"
-msgstr "tập tin gói %s không thể được ánh xạ %s"
+msgid "could not open '%s'"
+msgstr "không thể mở “%s”"
 
-#: packfile.c:1924
-#, 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 à?)"
+msgid "could not write commit template"
+msgstr "không thể ghi mẫu chuyển giao"
 
-#: packfile.c:1928
 #, c-format
-msgid "offset beyond end of pack index for %s (truncated index?)"
+msgid ""
+"Please enter the commit message for your changes. Lines starting\n"
+"with '%c' will be ignored.\n"
 msgstr ""
-"vị trí tương đối vượt quá cuối của chỉ mục gói cho %s (mục lục bị cắt cụt à?)"
+"Hãy nhập vào các thông tin để giải thích các thay đổi của bạn. Những\n"
+"dòng được bắt đầu bằng “%c” sẽ được bỏ qua.\n"
 
-#: parse-options-cb.c:21 parse-options-cb.c:25 builtin/commit-graph.c:175
 #, c-format
-msgid "option `%s' expects a numerical value"
-msgstr "tùy chọn “%s” cần một giá trị bằng số"
+msgid ""
+"Please enter the commit message for your changes. Lines starting\n"
+"with '%c' will be ignored, and an empty message aborts the commit.\n"
+msgstr ""
+"Hãy nhập vào các thông tin để giải thích các thay đổi của bạn. Những dòng "
+"được\n"
+"bắt đầu bằng “%c” sẽ được bỏ qua, nếu phần chú thích rỗng sẽ hủy bỏ lần "
+"chuyển giao.\n"
 
-#: parse-options-cb.c:42
 #, c-format
-msgid "malformed expiration date '%s'"
-msgstr "ngày tháng hết hạn dị hình “%s”"
+msgid ""
+"Please enter the commit message for your changes. Lines starting\n"
+"with '%c' will be kept; you may remove them yourself if you want to.\n"
+msgstr ""
+"Hãy nhập vào các thông tin để giải thích các thay đổi của bạn. Những dòng "
+"được\n"
+"bắt đầu bằng “%c” sẽ được bỏ qua; bạn có thể xóa chúng đi nếu muốn thế.\n"
 
-#: parse-options-cb.c:55
 #, c-format
-msgid "option `%s' expects \"always\", \"auto\", or \"never\""
-msgstr "tùy chọn “%s” cần \"always\", \"auto\", hoặc \"never\""
+msgid ""
+"Please enter the commit message for your changes. Lines starting\n"
+"with '%c' will be kept; you may remove them yourself if you want to.\n"
+"An empty message aborts the commit.\n"
+msgstr ""
+"Hãy nhập vào các thông tin để giải thích các thay đổi của bạn. Những dòng "
+"được\n"
+"bắt đầu bằng “%c” sẽ được bỏ qua; bạn có thể xóa chúng đi nếu muốn thế.\n"
+"Phần chú thích này nếu trống rỗng sẽ hủy bỏ lần chuyển giao.\n"
 
-#: parse-options-cb.c:133 parse-options-cb.c:150
-#, c-format
-msgid "malformed object name '%s'"
-msgstr "tên đối tượng dị hình “%s”"
-
-#: parse-options-cb.c:307
-#, c-format
-msgid "option `%s' expects \"%s\" or \"%s\""
-msgstr "tùy chọn “%s” cần \"%s\" hoặc \"%s\""
-
-#: parse-options.c:58
-#, c-format
-msgid "%s requires a value"
-msgstr "“%s” yêu cầu một giá trị"
+msgid ""
+"\n"
+"It looks like you may be committing a merge.\n"
+"If this is not correct, please run\n"
+"\tgit update-ref -d MERGE_HEAD\n"
+"and try again.\n"
+msgstr ""
+"\n"
+"Nó trông giống với việc bạn đang chuyển giao một lần hòa trộn.\n"
+"Nếu không phải vậy, xin hãy chạy\n"
+"\tgit update-ref -d MERGE_HEAD\n"
+"và thử lại.\n"
 
-#: parse-options.c:93
-#, c-format
-msgid "%s is incompatible with %s"
-msgstr "%s là xung khắc với %s"
+msgid ""
+"\n"
+"It looks like you may be committing a cherry-pick.\n"
+"If this is not correct, please run\n"
+"\tgit update-ref -d CHERRY_PICK_HEAD\n"
+"and try again.\n"
+msgstr ""
+"\n"
+"Nó trông giống với việc bạn đang chuyển giao một lần cherry-pick.\n"
+"Nếu không phải vậy, xin hãy chạy\n"
+"\tgit update-ref -d CHERRY_PICK_HEAD\n"
+"và thử lại.\n"
 
-#: parse-options.c:98
 #, c-format
-msgid "%s : incompatible with something else"
-msgstr "%s : xung khắc với các cái khác"
+msgid "%sAuthor:    %.*s <%.*s>"
+msgstr "%sTác giả:           %.*s <%.*s>"
 
-#: parse-options.c:112 parse-options.c:116
 #, c-format
-msgid "%s takes no value"
-msgstr "%s k nhận giá trị"
+msgid "%sDate:      %s"
+msgstr "%sNgày tháng:        %s"
 
-#: parse-options.c:114
 #, c-format
-msgid "%s isn't available"
-msgstr "%s không sẵn có"
+msgid "%sCommitter: %.*s <%.*s>"
+msgstr "%sNgười chuyển giao: %.*s <%.*s>"
 
-#: parse-options.c:237
-#, c-format
-msgid "%s expects a non-negative integer value with an optional k/m/g suffix"
-msgstr "%s cần một giá trị dạng số không âm với một hậu tố tùy chọn k/m/g"
+msgid "Cannot read index"
+msgstr "Không đọc được bảng mục lục"
 
-#: parse-options.c:393
-#, c-format
-msgid "ambiguous option: %s (could be --%s%s or --%s%s)"
-msgstr "tùy chọn chưa rõ rang: %s (nên là --%s%s hay --%s%s)"
+msgid "unable to pass trailers to --trailers"
+msgstr "không thể chuyển phần đuôi cho “--trailers”"
 
-#: parse-options.c:428 parse-options.c:436
-#, c-format
-msgid "did you mean `--%s` (with two dashes)?"
-msgstr "có phải ý bạn là “--%s“ (với hai dấu gạch ngang)?"
+msgid "Error building trees"
+msgstr "Gặp lỗi khi xây dựng cây"
 
-#: parse-options.c:678 parse-options.c:1054
 #, c-format
-msgid "alias of --%s"
-msgstr "bí danh của --%s"
+msgid "Please supply the message using either -m or -F option.\n"
+msgstr "Xin hãy cung cấp lời chú giải hoặc là dùng tùy chọn -m hoặc là -F.\n"
 
-#: parse-options.c:892
 #, c-format
-msgid "unknown option `%s'"
-msgstr "không hiểu tùy chọn “%s”"
+msgid "--author '%s' is not 'Name <email>' and matches no existing author"
+msgstr ""
+"--author “%s” không phải là “Họ và tên <thư điện tửl>” và không khớp bất kỳ "
+"tác giả nào sẵn có"
 
-#: parse-options.c:894
 #, c-format
-msgid "unknown switch `%c'"
-msgstr "không hiểu tùy chọn “%c”"
+msgid "Invalid ignored mode '%s'"
+msgstr "Chế độ bỏ qua không hợp lệ “%s”"
 
-#: parse-options.c:896
 #, c-format
-msgid "unknown non-ascii option in string: `%s'"
-msgstr "không hiểu tùy chọn non-ascii trong chuỗi: “%s”"
-
-#: parse-options.c:920
-msgid "..."
-msgstr "…"
+msgid "Invalid untracked files mode '%s'"
+msgstr "Chế độ cho các tập tin chưa được theo dõi không hợp lệ “%s”"
 
-#: parse-options.c:934
-#, c-format
-msgid "usage: %s"
-msgstr "cách dùng: %s"
+msgid "You are in the middle of a merge -- cannot reword."
+msgstr ""
+"Bạn đang ở giữa của quá trình hòa trộn -- không thể thực hiện việc “reword”."
 
-#. TRANSLATORS: the colon here should align with the
-#. one in "usage: %s" translation.
-#.
-#: parse-options.c:949
-#, c-format
-msgid "   or: %s"
-msgstr "     hoặc: %s"
+msgid "You are in the middle of a cherry-pick -- cannot reword."
+msgstr ""
+"Bạn đang ở giữa của quá trình cherry-pick -- không thể thực hiện việc "
+"“reword”."
 
-#. TRANSLATORS: You should only need to translate this format
-#. string if your language is a RTL language (e.g. Arabic,
-#. Hebrew etc.), not if it's a LTR language (e.g. German,
-#. Russian, Chinese etc.).
-#. *
-#. When a translated usage string has an embedded "\n" it's
-#. because options have wrapped to the next line. The line
-#. after the "\n" will then be padded to align with the
-#. command name, such as N_("git cmd [opt]\n<8
-#. spaces>[opt2]"), where the 8 spaces are the same length as
-#. "git cmd ".
-#. *
-#. This format string prints out that already-translated
-#. line. The "%*s" is whitespace padding to account for the
-#. padding at the start of the line that we add in this
-#. function. The "%s" is a line in the (hopefully already
-#. translated) N_() usage string, which contained embedded
-#. newlines before we split it up.
-#.
-#: parse-options.c:970
 #, c-format
-msgid "%*s%s"
-msgstr "%*s%s"
+msgid "reword option of '%s' and path '%s' cannot be used together"
+msgstr ""
+"không thể tổ hợp tùy chọn \"reword\" của '%s' với đường dẫn '%s' cùng nhau"
 
-#: parse-options.c:993
 #, c-format
-msgid "    %s"
-msgstr "    %s"
-
-#: parse-options.c:1040
-msgid "-NUM"
-msgstr "-SỐ"
+msgid "reword option of '%s' and '%s' cannot be used together"
+msgstr "không thể tổ hợp tùy chọn \"reword\" của '%s' với '%s' cùng nhau"
 
-#: path.c:922
-#, c-format
-msgid "Could not make %s writable by group"
-msgstr "Không thể làm %s được ghi bởi nhóm"
+msgid "You have nothing to amend."
+msgstr "Không có gì để mà “tu bổ” cả."
 
-#: pathspec.c:150
-msgid "Escape character '\\' not allowed as last character in attr value"
+msgid "You are in the middle of a merge -- cannot amend."
 msgstr ""
-"Ký tự thoát chuỗi “\\” không được phép là ký tự cuối trong giá trị thuộc tính"
-
-#: pathspec.c:168
-msgid "Only one 'attr:' specification is allowed."
-msgstr "Chỉ có một đặc tả “attr:” là được phép."
-
-#: pathspec.c:171
-msgid "attr spec must not be empty"
-msgstr "đặc tả attr phải không được để trống"
-
-#: pathspec.c:214
-#, c-format
-msgid "invalid attribute name %s"
-msgstr "tên thuộc tính không hợp lệ %s"
+"Bạn đang ở giữa của quá trình hòa trộn -- không thể thực hiện việc “tu bổ”."
 
-#: pathspec.c:279
-msgid "global 'glob' and 'noglob' pathspec settings are incompatible"
+msgid "You are in the middle of a cherry-pick -- cannot amend."
 msgstr ""
-"các cài đặt đặc tả đường dẫn “glob” và “noglob” toàn cục là xung khắc nhau"
+"Bạn đang ở giữa của quá trình cherry-pick -- không thể thực hiện việc “tu "
+"bổ”."
 
-#: pathspec.c:286
-msgid ""
-"global 'literal' pathspec setting is incompatible with all other global "
-"pathspec settings"
+msgid "You are in the middle of a rebase -- cannot amend."
 msgstr ""
-"cài đặt đặc tả đường dẫn “literal” toàn cục là xung khắc với các cài đặt đặc "
-"tả đường dẫn toàn cục khác"
-
-#: pathspec.c:326
-msgid "invalid parameter for pathspec magic 'prefix'"
-msgstr "tham số không hợp lệ cho “tiền tố” màu nhiệm đặc tả đường đẫn"
+"Bạn đang ở giữa của quá trình cải tổ -- nên không thể thực hiện việc “tu bổ”."
 
-#: pathspec.c:347
-#, c-format
-msgid "Invalid pathspec magic '%.*s' in '%s'"
-msgstr "Số màu nhiệm đặc tả đường dẫn không hợp lệ “%.*s” trong “%s”"
+msgid "--reset-author can be used only with -C, -c or --amend."
+msgstr ""
+"--reset-author chỉ có thể được sử dụng với tùy chọn -C, -c hay --amend."
 
-#: pathspec.c:352
 #, c-format
-msgid "Missing ')' at the end of pathspec magic in '%s'"
-msgstr "Thiếu “)” tại cuối của số màu nhiệm đặc tả đường dẫn trong “%s”"
+msgid "unknown option: --fixup=%s:%s"
+msgstr "không hiểu tùy chọn: --fixup=%s:%s"
 
-#: pathspec.c:390
 #, c-format
-msgid "Unimplemented pathspec magic '%c' in '%s'"
-msgstr "Chưa viết mã cho số màu nhiệm đặc tả đường dẫn “%c” trong “%s”"
+msgid "paths '%s ...' with -a does not make sense"
+msgstr "các đường dẫn “%s …” với tùy chọn -a không hợp lý"
 
-#: pathspec.c:449
-#, c-format
-msgid "%s: 'literal' and 'glob' are incompatible"
-msgstr "%s: “literal” và “glob” xung khắc nhau"
+msgid "show status concisely"
+msgstr "hiển thị trạng thái ở dạng súc tích"
 
-#: pathspec.c:465
-#, c-format
-msgid "%s: '%s' is outside repository at '%s'"
-msgstr "%s: “%s” ngoài một kho chứa tại “%s”"
+msgid "show branch information"
+msgstr "hiển thị thông tin nhánh"
 
-#: pathspec.c:541
-#, c-format
-msgid "'%s' (mnemonic: '%c')"
-msgstr "“%s” (mnemonic: “%c”)"
+msgid "show stash information"
+msgstr "hiển thị thông tin về tạm cất"
 
-#: pathspec.c:551
-#, c-format
-msgid "%s: pathspec magic not supported by this command: %s"
-msgstr "%s: số mầu nhiệm đặc tả đường dẫn chưa được hỗ trợ bởi lệnh này: %s"
+msgid "compute full ahead/behind values"
+msgstr "tính đầy đủ giá trị trước/sau"
 
-#: pathspec.c:618
-#, c-format
-msgid "pathspec '%s' is beyond a symbolic link"
-msgstr "đặc tả đường dẫn “%s” vượt ra ngoài liên kết mềm"
+msgid "version"
+msgstr "phiên bản"
 
-#: pathspec.c:663
-#, c-format
-msgid "line is badly quoted: %s"
-msgstr "dòng được trích dẫn sai: %s"
+msgid "machine-readable output"
+msgstr "kết xuất dạng máy-có-thể-đọc"
 
-#: pkt-line.c:92
-msgid "unable to write flush packet"
-msgstr "không thể đẩy dữ liệu của gói lên đĩa"
+msgid "show status in long format (default)"
+msgstr "hiển thị trạng thái ở định dạng dài (mặc định)"
 
-#: pkt-line.c:99
-msgid "unable to write delim packet"
-msgstr "không thể ghi gói delim"
+msgid "terminate entries with NUL"
+msgstr "chấm dứt các mục bằng NUL"
 
-#: pkt-line.c:106
-msgid "unable to write response end packet"
-msgstr "không thể ghi gói cuối trả về"
+msgid "mode"
+msgstr "chế độ"
 
-#: pkt-line.c:113
-msgid "flush packet write failed"
-msgstr "gặp lỗi khi ghi vào tập tin gói lúc đẩy dữ liệu lên bộ nhớ"
+msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
+msgstr ""
+"hiển thị các tập tin chưa được theo dõi  dấu vết, các chế độ tùy chọn:  all, "
+"normal, no. (Mặc định: all)"
 
-#: pkt-line.c:153
-msgid "protocol error: impossibly long line"
-msgstr "lỗi giao thức: không thể làm được dòng dài"
+msgid ""
+"show ignored files, optional modes: traditional, matching, no. (Default: "
+"traditional)"
+msgstr ""
+"hiển thị các tập tin bị bỏ qua, các chế độ tùy chọn: traditional, matching, "
+"no. (Mặc định: traditional)"
 
-#: pkt-line.c:169 pkt-line.c:171
-msgid "packet write with format failed"
-msgstr "gặp lỗi khi ghi gói có định dạng"
+msgid "when"
+msgstr "khi"
 
-#: pkt-line.c:204 pkt-line.c:252
-msgid "packet write failed - data exceeds max packet size"
-msgstr "gặp lỗi khi ghi gói - dữ liệu vượt quá cỡ vói tối đa"
+msgid ""
+"ignore changes to submodules, optional when: all, dirty, untracked. "
+"(Default: all)"
+msgstr ""
+"bỏ qua các thay đổi trong mô-đun-con, tùy chọn khi: all, dirty, untracked. "
+"(Mặc định: all)"
 
-#: pkt-line.c:222
-#, c-format
-msgid "packet write failed: %s"
-msgstr "gặp lỗi khi ghi gói: %s"
+msgid "list untracked files in columns"
+msgstr "hiển thị danh sách các tập-tin chưa được theo dõi trong các cột"
 
-#: pkt-line.c:349 pkt-line.c:350
-msgid "read error"
-msgstr "lỗi đọc"
+msgid "do not detect renames"
+msgstr "không dò tìm các tên thay đổi"
 
-#: pkt-line.c:360 pkt-line.c:361
-msgid "the remote end hung up unexpectedly"
-msgstr "máy chủ bị treo bất ngờ"
-
-#: pkt-line.c:417 pkt-line.c:419
-#, c-format
-msgid "protocol error: bad line length character: %.4s"
-msgstr "lỗi giao thức: ký tự chiều dài dòng bị sai: %.4s"
-
-#: pkt-line.c:434 pkt-line.c:436 pkt-line.c:442 pkt-line.c:444
-#, c-format
-msgid "protocol error: bad line length %d"
-msgstr "lỗi giao thức: chiều dài dòng bị sai %d"
+msgid "detect renames, optionally set similarity index"
+msgstr "dò các tên thay đổi, tùy ý đặt mục lục tương tự"
 
-#: pkt-line.c:472 sideband.c:165
-#, c-format
-msgid "remote error: %s"
-msgstr "lỗi máy chủ: %s"
+msgid "Unsupported combination of ignored and untracked-files arguments"
+msgstr ""
+"Không hỗ trỡ tổ hợp các tham số các tập tin bị bỏ qua và không được theo dõi"
 
-#: preload-index.c:125
-msgid "Refreshing index"
-msgstr "Làm mới bảng mục lục"
+msgid "suppress summary after successful commit"
+msgstr "không hiển thị tổng kết sau khi chuyển giao thành công"
 
-#: preload-index.c:144
-#, c-format
-msgid "unable to create threaded lstat: %s"
-msgstr "không thể tạo tuyến trình lstat: %s"
+msgid "show diff in commit message template"
+msgstr "hiển thị sự khác biệt trong mẫu tin nhắn chuyển giao"
 
-#: pretty.c:1051
-msgid "unable to parse --pretty format"
-msgstr "không thể phân tích định dạng --pretty"
+msgid "Commit message options"
+msgstr "Các tùy chọn ghi chú commit"
 
-#: promisor-remote.c:31
-msgid "promisor-remote: unable to fork off fetch subprocess"
-msgstr "promisor-remote: không thể rẽ nhánh tuyến trình con fetch"
+msgid "read message from file"
+msgstr "đọc chú thích từ tập tin"
 
-#: promisor-remote.c:38 promisor-remote.c:40
-msgid "promisor-remote: could not write to fetch subprocess"
-msgstr "promisor-remote: không thể ghi tiến trình con fetch"
+msgid "author"
+msgstr "tác giả"
 
-#: promisor-remote.c:44
-msgid "promisor-remote: could not close stdin to fetch subprocess"
-msgstr ""
-"promisor-remote: không thể đóng đầu vào tiêu chuẩn tiến trình con fetch"
+msgid "override author for commit"
+msgstr "ghi đè tác giả cho commit"
 
-#: promisor-remote.c:54
-#, 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"
+msgid "date"
+msgstr "ngày tháng"
 
-#: protocol-caps.c:103
-msgid "object-info: expected flush after arguments"
-msgstr "object-info: cần đẩy dữ liệu lên đĩa sau các tham số"
+msgid "override date for commit"
+msgstr "ghi đè ngày tháng cho lần chuyển giao"
 
-#: prune-packed.c:35
-msgid "Removing duplicate objects"
-msgstr "Đang gỡ các đối tượng trùng lặp"
+msgid "commit"
+msgstr "lần_chuyển_giao"
 
-#: range-diff.c:68
-msgid "could not start `log`"
-msgstr "không thể lấy thông tin thống kê về “log“"
+msgid "reuse and edit message from specified commit"
+msgstr "dùng lại các ghi chú từ lần chuyển giao đã cho nhưng có cho sửa chữa"
 
-#: range-diff.c:70
-msgid "could not read `log` output"
-msgstr "không thể đọc kết xuất “log”"
+msgid "reuse message from specified commit"
+msgstr "dùng lại các ghi chú từ lần chuyển giao đã cho"
 
-#: range-diff.c:98 sequencer.c:5575
-#, c-format
-msgid "could not parse commit '%s'"
-msgstr "không thể phân tích lần chuyển giao “%s”"
+#. TRANSLATORS: Leave "[(amend|reword):]" as-is,
+#. and only translate <commit>.
+#.
+msgid "[(amend|reword):]commit"
+msgstr "[(amend|reword):]commit"
 
-#: range-diff.c:109
-#, c-format
 msgid ""
-"could not parse first line of `log` output: did not start with 'commit ': "
-"'%s'"
+"use autosquash formatted message to fixup or amend/reword specified commit"
 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”"
-
-#: range-diff.c:132
-#, 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:300
-msgid "failed to generate diff"
-msgstr "gặp lỗi khi tạo khác biệt"
-
-#: range-diff.c:558 range-diff.c:560
-#, c-format
-msgid "could not parse log for '%s'"
-msgstr "không thể phân tích nhật ký cho “%s”"
+"dùng ghi chú có định dạng autosquash để sửa chữa hoặc tu bổ/reword lần "
+"chuyển giao đã chỉ ra"
 
-#: read-cache.c:737
-#, c-format
-msgid "will not add file alias '%s' ('%s' already exists in index)"
+msgid "use autosquash formatted message to squash specified commit"
 msgstr ""
-"sẽ không thêm các bí danh “%s” (“%s” đã có từ trước trong bảng mục lục)"
-
-#: read-cache.c:753
-msgid "cannot create an empty blob in the object database"
-msgstr "không thể tạo một blob rỗng trong cơ sở dữ liệu đối tượng"
+"dùng lời nhắn có định dạng tự động nén để nén lại các lần chuyển giao đã chỉ "
+"ra"
 
-#: read-cache.c:775
-#, c-format
-msgid "%s: can only add regular files, symbolic links or git-directories"
+msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr ""
-"%s: chỉ có thể thêm tập tin thông thường, liên kết mềm hoặc git-directories"
+"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)"
 
-#: read-cache.c:780 builtin/submodule--helper.c:3359
-#, c-format
-msgid "'%s' does not have a commit checked out"
-msgstr "“%s” không có một lần chuyển giao nào được lấy ra"
+msgid "trailer"
+msgstr "bộ dò vết"
 
-#: read-cache.c:832
-#, c-format
-msgid "unable to index file '%s'"
-msgstr "không thể đánh mục lục tập tin “%s”"
+msgid "add custom trailer(s)"
+msgstr "thêm đuôi tự chọn"
 
-#: read-cache.c:851
-#, c-format
-msgid "unable to add '%s' to index"
-msgstr "không thể thêm %s vào bảng mục lục"
+msgid "add a Signed-off-by trailer"
+msgstr "thêm dòng Signed-off-by vào cuối"
 
-#: read-cache.c:862
-#, c-format
-msgid "unable to stat '%s'"
-msgstr "không thể lấy thống kê “%s”"
+msgid "use specified template file"
+msgstr "sử dụng tập tin mẫu đã cho"
 
-#: read-cache.c:1404
-#, c-format
-msgid "'%s' appears as both a file and as a directory"
-msgstr "%s có vẻ không phải là tập tin và cũng chẳng phải là một thư mục"
+msgid "force edit of commit"
+msgstr "ép buộc sửa lần commit"
 
-#: read-cache.c:1619
-msgid "Refresh index"
-msgstr "Làm tươi mới bảng mục lục"
+msgid "include status in commit message template"
+msgstr "bao gồm các trạng thái trong mẫu ghi chú chuyển giao"
 
-#: read-cache.c:1751
-#, c-format
-msgid ""
-"index.version set, but the value is invalid.\n"
-"Using version %i"
-msgstr ""
-"index.version được đặt, nhưng giá trị của nó lại không hợp lệ.\n"
-"Dùng phiên bản %i"
+msgid "Commit contents options"
+msgstr "Các tùy nội dung ghi chú commit"
 
-#: read-cache.c:1761
-#, c-format
-msgid ""
-"GIT_INDEX_VERSION set, but the value is invalid.\n"
-"Using version %i"
-msgstr ""
-"GIT_INDEX_VERSION được đặt, nhưng giá trị của nó lại không hợp lệ.\n"
-"Dùng phiên bản %i"
+msgid "commit all changed files"
+msgstr "chuyển giao tất cả các tập tin có thay đổi"
 
-#: read-cache.c:1817
-#, c-format
-msgid "bad signature 0x%08x"
-msgstr "chữ ký sai 0x%08x"
+msgid "add specified files to index for commit"
+msgstr "thêm các tập tin đã chỉ ra vào bảng mục lục để chuyển giao"
 
-#: read-cache.c:1820
-#, c-format
-msgid "bad index version %d"
-msgstr "phiên bản mục lục sai %d"
+msgid "interactively add files"
+msgstr "thêm các tập-tin bằng tương tác"
 
-#: read-cache.c:1829
-msgid "bad index file sha1 signature"
-msgstr "chữ ký dạng sha1 cho tập tin mục lục không đúng"
+msgid "interactively add changes"
+msgstr "thêm các thay đổi bằng tương tác"
 
-#: read-cache.c:1863
-#, c-format
-msgid "index uses %.4s extension, which we do not understand"
-msgstr "mục lục dùng phần mở rộng %.4s, cái mà chúng tôi không hiểu được"
+msgid "commit only specified files"
+msgstr "chỉ chuyển giao các tập tin đã chỉ ra"
 
-#: read-cache.c:1865
-#, c-format
-msgid "ignoring %.4s extension"
-msgstr "đang lờ đi phần mở rộng %.4s"
+msgid "bypass pre-commit and commit-msg hooks"
+msgstr "vòng qua móc (hook) pre-commit và commit-msg"
 
-#: read-cache.c:1902
-#, c-format
-msgid "unknown index entry format 0x%08x"
-msgstr "không hiểu định dạng mục lục 0x%08x"
+msgid "show what would be committed"
+msgstr "hiển thị xem cái gì có thể được chuyển giao"
 
-#: read-cache.c:1918
-#, c-format
-msgid "malformed name field in the index, near path '%s'"
-msgstr "trường tên sai sạng trong mục lục, gần đường dẫn “%s”"
+msgid "amend previous commit"
+msgstr "“tu bổ” (amend) lần commit trước"
 
-#: read-cache.c:1975
-msgid "unordered stage entries in index"
-msgstr "các mục tin stage không đúng thứ tự trong mục lục"
+msgid "bypass post-rewrite hook"
+msgstr "vòng qua móc (hook) post-rewrite"
 
-#: read-cache.c:1978
-#, c-format
-msgid "multiple stage entries for merged file '%s'"
-msgstr "nhiều mục stage cho tập tin hòa trộn “%s”"
+msgid "ok to record an empty change"
+msgstr "ok để ghi lại một thay đổi trống rỗng"
 
-#: read-cache.c:1981
-#, c-format
-msgid "unordered stage entries for '%s'"
-msgstr "các mục tin stage không đúng thứ tự cho “%s”"
+msgid "ok to record a change with an empty message"
+msgstr "ok để ghi các thay đổi với lời nhắn trống rỗng"
 
-#: read-cache.c:2096 read-cache.c:2402 rerere.c:549 rerere.c:583 rerere.c:1096
-#: submodule.c:1831 builtin/add.c:586 builtin/check-ignore.c:183
-#: builtin/checkout.c:532 builtin/checkout.c:724 builtin/clean.c:1016
-#: builtin/commit.c:379 builtin/diff-tree.c:122 builtin/grep.c:521
-#: builtin/mv.c:148 builtin/reset.c:506 builtin/rm.c:293
-#: builtin/submodule--helper.c:335 builtin/submodule--helper.c:3319
-msgid "index file corrupt"
-msgstr "tập tin ghi bảng mục lục bị hỏng"
+msgid "could not parse HEAD commit"
+msgstr "không thể phân tích commit (lần chuyển giao) HEAD"
 
-#: read-cache.c:2240
 #, c-format
-msgid "unable to create load_cache_entries thread: %s"
-msgstr "không thể tạo tuyến load_cache_entries: %s"
+msgid "Corrupt MERGE_HEAD file (%s)"
+msgstr "Tập tin MERGE_HEAD sai hỏng (%s)"
 
-#: read-cache.c:2253
-#, c-format
-msgid "unable to join load_cache_entries thread: %s"
-msgstr "không thể gia nhập tuyến load_cache_entries: %s"
+msgid "could not read MERGE_MODE"
+msgstr "không thể đọc MERGE_MODE"
 
-#: read-cache.c:2286
 #, c-format
-msgid "%s: index file open failed"
-msgstr "%s: mở tập tin mục lục gặp lỗi"
+msgid "could not read commit message: %s"
+msgstr "không thể đọc phần chú thích (message) của lần chuyển giao: %s"
 
-#: read-cache.c:2290
 #, c-format
-msgid "%s: cannot stat the open index"
-msgstr "%s: không thể lấy thống kê bảng mục lục đã mở"
+msgid "Aborting commit due to empty commit message.\n"
+msgstr "Bãi bỏ việc chuyển giao bởi vì phần chú thích của nó trống rỗng.\n"
 
-#: read-cache.c:2294
 #, c-format
-msgid "%s: index file smaller than expected"
-msgstr "%s: tập tin mục lục nhỏ hơn mong đợi"
+msgid "Aborting commit; you did not edit the message.\n"
+msgstr ""
+"Đang bỏ qua việc chuyển giao; bạn đã không biên soạn phần chú thích "
+"(message).\n"
 
-#: read-cache.c:2298
 #, c-format
-msgid "%s: unable to map index file%s"
-msgstr "%s: không thể ánh xạ tập tin mục lục%s"
+msgid "Aborting commit due to empty commit message body.\n"
+msgstr ""
+"Bãi bỏ việc chuyển giao bởi vì phần thân chú thích của nó trống rỗng.\n"
 
-#: read-cache.c:2341
-#, c-format
-msgid "unable to create load_index_extensions thread: %s"
-msgstr "không thể tạo tuyến load_index_extensions: %s"
+msgid ""
+"repository has been updated, but unable to write\n"
+"new_index file. Check that disk is not full and quota is\n"
+"not exceeded, and then \"git restore --staged :/\" to recover."
+msgstr ""
+"kho chứa đã được cập nhật, nhưng không thể ghi vào\n"
+"tập tin new_index (bảng mục lục mới). Hãy kiểm tra xem đĩa\n"
+"có bị đầy quá hay quota (hạn nghạch đĩa cứng) bị vượt quá,\n"
+"và sau đó \"git restore --staged :/\" để khắc phục."
 
-#: read-cache.c:2368
-#, c-format
-msgid "unable to join load_index_extensions thread: %s"
-msgstr "không thể gia nhập tuyến load_index_extensions: %s"
+msgid "git config [<options>]"
+msgstr "git config [<các tùy chọn>]"
 
-#: read-cache.c:2414
 #, c-format
-msgid "could not freshen shared index '%s'"
-msgstr "không thể làm tươi mới mục lục đã chia sẻ “%s”"
+msgid "unrecognized --type argument, %s"
+msgstr "đối số không được thừa nhận --type, %s"
 
-#: read-cache.c:2473
-#, c-format
-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"
+msgid "only one type at a time"
+msgstr "chỉ một kiểu một lần"
 
-#: read-cache.c:3032
-msgid "cannot write split index for a sparse index"
-msgstr "không thể ghi mục lục chia tách cho \"sparse index\""
+msgid "Config file location"
+msgstr "Vị trí tập tin cấu hình"
 
-#: read-cache.c:3114 strbuf.c:1192 wrapper.c:717 builtin/merge.c:1156
-#, c-format
-msgid "could not close '%s'"
-msgstr "không thể đóng “%s”"
+msgid "use global config file"
+msgstr "dùng tập tin cấu hình toàn cục"
 
-#: read-cache.c:3157
-msgid "failed to convert to a sparse-index"
-msgstr "gặp lỗi khi chuyển đổi sang \"sparse-index\""
+msgid "use system config file"
+msgstr "sử dụng tập tin cấu hình hệ thống"
+
+msgid "use repository config file"
+msgstr "dùng tập tin cấu hình của kho"
+
+msgid "use per-worktree config file"
+msgstr "dùng tập tin cấu hình per-worktree"
+
+msgid "use given config file"
+msgstr "sử dụng tập tin cấu hình đã cho"
+
+msgid "blob-id"
+msgstr "blob-id"
+
+msgid "read config from given blob object"
+msgstr "đọc cấu hình từ đối tượng blob đã cho"
+
+msgid "Action"
+msgstr "Hành động"
+
+msgid "get value: name [value-pattern]"
+msgstr "lấy giá trị: tên [value-pattern]"
+
+msgid "get all values: key [value-pattern]"
+msgstr "lấy tất cả giá trị: khóa [value-pattern]"
+
+msgid "get values for regexp: name-regex [value-pattern]"
+msgstr "lấy giá trị cho regexp: name-regex [value-pattern]"
+
+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 "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]"
+
+msgid "add a new variable: name value"
+msgstr "thêm biến mới: tên giá-trị"
+
+msgid "remove a variable: name [value-pattern]"
+msgstr "gỡ bỏ biến: tên [value-pattern]"
+
+msgid "remove all matches: name [value-pattern]"
+msgstr "gỡ bỏ mọi cái khớp: tên [value-pattern]"
+
+msgid "rename section: old-name new-name"
+msgstr "đổi tên phần: tên-cũ tên-mới"
+
+msgid "remove a section: name"
+msgstr "gỡ bỏ phần: tên"
+
+msgid "list all"
+msgstr "liệt kê tất"
+
+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”"
+
+msgid "open an editor"
+msgstr "mở một trình biên soạn"
+
+msgid "find the color configured: slot [default]"
+msgstr "tìm cấu hình màu sắc: slot [mặc định]"
+
+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]"
+
+msgid "Type"
+msgstr "Kiểu"
+
+msgid "type"
+msgstr "kiểu"
+
+msgid "value is given this type"
+msgstr "giá trị được đưa kiểu này"
+
+msgid "value is \"true\" or \"false\""
+msgstr "giá trị là \"true\" hoặc \"false\""
+
+msgid "value is decimal number"
+msgstr "giá trị ở dạng số thập phân"
+
+msgid "value is --bool or --int"
+msgstr "giá trị là --bool hoặc --int"
+
+msgid "value is --bool or string"
+msgstr "giá trị là --bool hoặc chuỗi"
+
+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)"
+
+msgid "value is an expiry date"
+msgstr "giá trị là một ngày hết hạn"
+
+msgid "Other"
+msgstr "Khác"
+
+msgid "terminate values with NUL byte"
+msgstr "chấm dứt giá trị với byte NUL"
+
+msgid "show variable names only"
+msgstr "chỉ hiển thị các tên biến"
+
+msgid "respect include directives on lookup"
+msgstr "tôn trọng kể cà các hướng trong tìm kiếm"
+
+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)"
+
+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)"
+
+msgid "value"
+msgstr "giá trị"
+
+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"
 
-#: read-cache.c:3228
 #, c-format
-msgid "could not stat '%s'"
-msgstr "không thể lấy thông tin thống kê về “%s”"
+msgid "wrong number of arguments, should be %d"
+msgstr "sai số lượng tham số, phải là %d"
 
-#: read-cache.c:3241
 #, c-format
-msgid "unable to open git dir: %s"
-msgstr "không thể mở thư mục git: %s"
+msgid "wrong number of arguments, should be from %d to %d"
+msgstr "sai số lượng tham số, phải từ %d đến %d"
 
-#: read-cache.c:3253
 #, c-format
-msgid "unable to unlink: %s"
-msgstr "không thể bỏ liên kết (unlink): “%s”"
+msgid "invalid key pattern: %s"
+msgstr "mẫu khóa không hợp lệ: %s"
 
-#: read-cache.c:3282
 #, c-format
-msgid "cannot fix permission bits on '%s'"
-msgstr "không thể sửa các bít phân quyền trên “%s”"
+msgid "invalid pattern: %s"
+msgstr "mẫu không hợp lệ: %s"
 
-#: read-cache.c:3439
 #, c-format
-msgid "%s: cannot drop to stage #0"
-msgstr "%s: không thể xóa bỏ stage #0"
+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"
 
-#: rebase-interactive.c:11
-msgid ""
-"You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
-"continue'.\n"
-"Or you can abort the rebase with 'git rebase --abort'.\n"
-msgstr ""
-"Bạn có thể sửa nó bằng “git rebase --edit-todo” và sau đó chạy “git rebase --"
-"continue”.\n"
-"Hoặc là bạn có thể bãi bỏ việc cải tổ bằng “git rebase --abort”.\n"
+#, c-format
+msgid "cannot parse color '%s'"
+msgstr "không thể phân tích màu “%s”"
+
+msgid "unable to parse default color value"
+msgstr "không thể phân tích giá trị màu mặc định"
+
+msgid "not in a git directory"
+msgstr "không trong thư mục git"
+
+msgid "writing to stdin is not supported"
+msgstr "việc ghi ra đầu ra tiêu chuẩn là không được hỗ trợ"
+
+msgid "writing config blobs is not supported"
+msgstr "không hỗ trợ ghi cấu hình các blob"
 
-#: rebase-interactive.c:33
 #, c-format
 msgid ""
-"unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
+"# This is Git's per-user configuration file.\n"
+"[user]\n"
+"# Please adapt and uncomment the following lines:\n"
+"#\tname = %s\n"
+"#\temail = %s\n"
 msgstr ""
-"không nhận ra cài đặt %s cho tùy chọn rebase.missingCommitsCheck. Nên bỏ qua."
+"# Đây là tập tin cấu hình cho từng người dùng Git.\n"
+"[user]\n"
+"# Vui lòng sửa lại cho thích hợp và bỏ dấu ghi chú các dòng sau:\n"
+"#\tname = %s\n"
+"#\temail = %s\n"
 
-#: rebase-interactive.c:42
-msgid ""
-"\n"
-"Commands:\n"
-"p, pick <commit> = use commit\n"
-"r, reword <commit> = use commit, but edit the commit message\n"
-"e, edit <commit> = use commit, but stop for amending\n"
-"s, squash <commit> = use commit, but meld into previous commit\n"
-"f, fixup [-C | -c] <commit> = like \"squash\" but keep only the previous\n"
-"                   commit's log message, unless -C is used, in which case\n"
-"                   keep only this commit's message; -c is same as -C but\n"
-"                   opens the editor\n"
-"x, exec <command> = run command (the rest of the line) using shell\n"
-"b, break = stop here (continue rebase later with 'git rebase --continue')\n"
-"d, drop <commit> = remove commit\n"
-"l, label <label> = label current HEAD with a name\n"
-"t, reset <label> = reset HEAD to a label\n"
-"m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]\n"
-".       create a merge commit using the original merge commit's\n"
-".       message (or the oneline, if no original merge commit was\n"
-".       specified); use -c <commit> to reword the commit message\n"
-"\n"
-"These lines can be re-ordered; they are executed from top to bottom.\n"
-msgstr ""
-"\n"
-"Các lệnh:\n"
-"p, pick <commit> = dùng lần chuyển giao\n"
-"r, reword <commit> = dùng lần chuyển giao, nhưng sửa lại phần chú thích\n"
-"e, edit <commit> = dùng lần chuyển giao, nhưng dừng lại để tu bổ (amend)\n"
-"s, squash <commit> = dùng lần chuyển giao, nhưng trộn vào lần chuyển giao kế "
-"trước\n"
-"f, fixup [-C | -c] <commit> = giống như \"squash\", nhưng chỉ giữ lại phần "
-"lời nhắn\n"
-"                   nhật ký của lần chuyển giao kế trước, trừ phi -C được "
-"dùng, trong trường hợp\n"
-"                   chỉ giữ ghi chú của lần chuyển giao này; -c giống như -C "
-"nhưng\n"
-"                   mở trình biên soạn\n"
-"x, exec <commit> = chạy lệnh (phần còn lại của dòng) dùng hệ vỏ\n"
-"b, break = dừng tại đây (tiếp tục cải tổ sau này bằng “git rebase --"
-"continue”)\n"
-"d, drop <commit> = xóa bỏ lần chuyển giao\n"
-"l, label <label> = đánh nhãn HEAD hiện tại bằng một tên\n"
-"t, reset <label> = đặt lại HEAD thành một nhãn\n"
-"m, merge [-C <commit> | -c <commit>] <nhãn> [# <một_dòng>]\n"
-".       tạo một lần chuyển giao hòa trộn sử dụng chú thích của lần chuyển\n"
-".       giao hòa trộn gốc (hoặc một_dòng, nếu không chỉ định lần chuyển giao "
-"hòa\n"
-".       trộn gốc). Dùng -c <commit> để reword chú thích của lần chuyển "
-"giao.\n"
-"\n"
-"Những dòng này có thể được thay đổi thứ tự; chúng chạy từ trên đỉnh xuống "
-"dưới đáy.\n"
+msgid "only one config file at a time"
+msgstr "chỉ một tập tin cấu hình một lần"
 
-#: rebase-interactive.c:66
-#, c-format
-msgid "Rebase %s onto %s (%d command)"
-msgid_plural "Rebase %s onto %s (%d commands)"
-msgstr[0] "Cải tổ %s vào %s (%d lệnh )"
+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"
+
+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"
+
+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"
+
+msgid "$HOME not set"
+msgstr "Chưa đặt biến môi trường $HOME"
 
-#: rebase-interactive.c:75
 msgid ""
-"\n"
-"Do not remove any line. Use 'drop' explicitly to remove a commit.\n"
+"--worktree cannot be used with multiple working trees unless the config\n"
+"extension worktreeConfig is enabled. Please read \"CONFIGURATION FILE\"\n"
+"section in \"git help worktree\" for details"
 msgstr ""
-"\n"
-"Đừng xóa bất kỳ dòng nào. Dùng “drop” một cách rõ ràng để xóa bỏ một lần "
-"chuyển giao.\n"
+"--worktree không thể dùng với nhiều cây làm việc trừ khi cấu hình mở rộng\n"
+"worktreeConfig được bật. Vui lòng đọc phần \"CONFIGURATION FILE\"\n"
+"trong \"git help worktree\" để biết thêm chi tiết"
+
+msgid "--get-color and variable type are incoherent"
+msgstr "--get-color và kiểu biến là không mạch lạc"
+
+msgid "only one action at a time"
+msgstr "chỉ một thao tác mỗi lần"
+
+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"
 
-#: rebase-interactive.c:78
 msgid ""
-"\n"
-"If you remove a line here THAT COMMIT WILL BE LOST.\n"
+"--show-origin is only applicable to --get, --get-all, --get-regexp, and --"
+"list"
 msgstr ""
-"\n"
-"Nếu bạn xóa bỏ một dòng ở đây thì LẦN CHUYỂN GIAO ĐÓ SẼ MẤT.\n"
+"--show-origin chỉ được áp dụng cho --get, --get-all, --get-regexp, hoặc --"
+"list"
 
-#: rebase-interactive.c:84
-msgid ""
-"\n"
-"You are editing the todo file of an ongoing interactive rebase.\n"
-"To continue rebase after editing, run:\n"
-"    git rebase --continue\n"
-"\n"
-msgstr ""
-"\n"
-"Bạn đang sửa tập tin todo của một lần cải tổ tương tác đang thực hiện.\n"
-"Để tiếp tục cải tổ sau khi sửa, chạy:\n"
-"    git rebase --continue\n"
-"\n"
+msgid "--default is only applicable to --get"
+msgstr "--default chỉ được áp dụng cho --get"
 
-#: rebase-interactive.c:89
-msgid ""
-"\n"
-"However, if you remove everything, the rebase will be aborted.\n"
-"\n"
-msgstr ""
-"\n"
-"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"
+msgid "--fixed-value only applies with 'value-pattern'"
+msgstr "--fixed-value chỉ áp dụng với “value-pattern”"
 
-#: rebase-interactive.c:113 rerere.c:469 rerere.c:677 sequencer.c:3879
-#: sequencer.c:3905 sequencer.c:5681 builtin/fsck.c:328 builtin/gc.c:1791
-#: builtin/rebase.c:191
 #, c-format
-msgid "could not write '%s'"
-msgstr "không thể ghi “%s”"
+msgid "unable to read config file '%s'"
+msgstr "không thể đọc tập tin cấu hình “%s”"
+
+msgid "error processing config file(s)"
+msgstr "gặp lỗi khi xử lý các tập tin cấu hình"
+
+msgid "editing stdin is not supported"
+msgstr "sửa chữa đầu ra tiêu chuẩn là không được hỗ trợ"
+
+msgid "editing blobs is not supported"
+msgstr "việc sửa chữa các blob là không được hỗ trợ"
 
-#: rebase-interactive.c:119
 #, c-format
-msgid "could not write '%s'."
-msgstr "không thể ghi “%s”."
+msgid "cannot create configuration file %s"
+msgstr "không thể tạo tập tin cấu hình “%s”"
 
-#: rebase-interactive.c:196
 #, c-format
 msgid ""
-"Warning: some commits may have been dropped accidentally.\n"
-"Dropped commits (newer to older):\n"
+"cannot overwrite multiple values with a single value\n"
+"       Use a regexp, --add or --replace-all to change %s."
 msgstr ""
-"Cảnh báo: một số lần chuyển giao có lẽ đã bị xóa một cách tình cờ.\n"
-"Các lần chuyển giao bị xóa (từ mới đến cũ):\n"
+"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."
+
+#, c-format
+msgid "no such section: %s"
+msgstr "không có đoạn: %s"
+
+msgid "print sizes in human readable format"
+msgstr "hiển thị kích cỡ theo định dạng dành cho người đọc"
 
-#: rebase-interactive.c:203
 #, c-format
 msgid ""
-"To avoid this message, use \"drop\" to explicitly remove a commit.\n"
-"\n"
-"Use 'git config rebase.missingCommitsCheck' to change the level of "
-"warnings.\n"
-"The possible behaviours are: ignore, warn, error.\n"
+"The permissions on your socket directory are too loose; other\n"
+"users may be able to read your cached credentials. Consider running:\n"
 "\n"
+"\tchmod 0700 %s"
 msgstr ""
-"Để tránh thông báo này, dùng \"drop\" một cách rõ ràng để xóa bỏ một lần "
-"chuyển giao.\n"
-"\n"
-"Dùng “git config rebase.missingCommitsCheck” để thay đổi mức độ của cảnh "
-"báo.\n"
-"Cánh ứng xử có thể là: ignore, warn, error.\n"
+"Quyền hạn trên thư mục gói mạng của bạn không chính xác; người dùng\n"
+"khác có lẽ có thể đọc được chứng thư được lưu đệm của bạn. Cân nhắc chạy:\n"
 "\n"
+"\tchmod 0700 %s"
 
-#: rebase.c:29
-#, c-format
-msgid "%s: 'preserve' superseded by 'merges'"
-msgstr "%s: “preserve” bị cấm bởi “merges”"
+msgid "print debugging messages to stderr"
+msgstr "in thông tin gỡ lỗi ra đầu ra lỗi tiêu chuẩn"
 
-#: ref-filter.c:42 wt-status.c:2057
-msgid "gone"
-msgstr "đã ra đi"
+msgid "credential-cache--daemon unavailable; no unix socket support"
+msgstr "credential-cache--daemon không sẵn có; không hỗ trợ unix socket"
 
-#: ref-filter.c:43
-#, c-format
-msgid "ahead %d"
-msgstr "phía trước %d"
+msgid "credential-cache unavailable; no unix socket support"
+msgstr "credential-cache không sẵn có; không hỗ trợ unix socket"
 
-#: ref-filter.c:44
 #, c-format
-msgid "behind %d"
-msgstr "đằng sau %d"
+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"
 
-#: ref-filter.c:45
-#, c-format
-msgid "ahead %d, behind %d"
-msgstr "trước %d, sau %d"
+msgid "git describe [<options>] [<commit-ish>...]"
+msgstr "git describe [<các tùy chọn>] <commit-ish>*"
 
-#: ref-filter.c:235
-#, c-format
-msgid "expected format: %%(color:<color>)"
-msgstr "cần định dạng: %%(color:<color>)"
+msgid "git describe [<options>] --dirty"
+msgstr "git describe [<các tùy chọn>] --dirty"
 
-#: ref-filter.c:237
-#, c-format
-msgid "unrecognized color: %%(color:%s)"
-msgstr "không nhận ra màu: %%(color:%s)"
+msgid "head"
+msgstr "phía trước"
 
-#: ref-filter.c:259
-#, c-format
-msgid "Integer value expected refname:lstrip=%s"
-msgstr "Giá trị nguyên cần tên tham chiếu:lstrip=%s"
+msgid "lightweight"
+msgstr "hạng nhẹ"
 
-#: ref-filter.c:263
-#, c-format
-msgid "Integer value expected refname:rstrip=%s"
-msgstr "Giá trị nguyên cần tên tham chiếu:rstrip=%s"
+msgid "annotated"
+msgstr "có diễn giải"
 
-#: ref-filter.c:265 ref-filter.c:344 ref-filter.c:377 ref-filter.c:431
-#: ref-filter.c:443 ref-filter.c:462 ref-filter.c:534 ref-filter.c:560
 #, c-format
-msgid "unrecognized %%(%s) argument: %s"
-msgstr "đối số không được thừa nhận %%(%s): %s"
+msgid "annotated tag %s not available"
+msgstr "thẻ đã được ghi chú %s không sẵn để dùng"
 
-#: ref-filter.c:320
 #, c-format
-msgid "%%(objecttype) does not take arguments"
-msgstr "%%(objecttype) không nhận các đối số"
+msgid "tag '%s' is externally known as '%s'"
+msgstr "ở bên ngoài, thẻ “%s” đã được biết đến là “%s”"
 
-#: ref-filter.c:352
 #, c-format
-msgid "%%(deltabase) does not take arguments"
-msgstr "%%(deltabase) không nhận các đối số"
+msgid "no tag exactly matches '%s'"
+msgstr "không có thẻ nào khớp chính xác với “%s”"
 
-#: ref-filter.c:364
 #, c-format
-msgid "%%(body) does not take arguments"
-msgstr "%%(body) không nhận các đối số"
+msgid "No exact match on refs or tags, searching to describe\n"
+msgstr "Không có tham chiếu hay thẻ khớp đúng, đang tìm kiếm mô tả\n"
 
-#: ref-filter.c:396
 #, c-format
-msgid "expected %%(trailers:key=<value>)"
-msgstr "cần %%(trailers:key=<giá trị>)"
+msgid "finished search at %s\n"
+msgstr "việc tìm kiếm đã kết thúc tại %s\n"
 
-#: ref-filter.c:398
 #, c-format
-msgid "unknown %%(trailers) argument: %s"
-msgstr "không hiểu tham số %%(trailers): %s"
+msgid ""
+"No annotated tags can describe '%s'.\n"
+"However, there were unannotated tags: try --tags."
+msgstr ""
+"Không có thẻ được chú giải nào được mô tả là “%s”.\n"
+"Tuy nhiên, ở đây có những thẻ không được chú giải: hãy thử --tags."
 
-#: ref-filter.c:429
 #, c-format
-msgid "positive value expected contents:lines=%s"
-msgstr "cần nội dung mang giá trị dương:lines=%s"
+msgid ""
+"No tags can describe '%s'.\n"
+"Try --always, or create some tags."
+msgstr ""
+"Không có thẻ có thể mô tả “%s”.\n"
+"Hãy thử --always, hoặc tạo một số thẻ."
 
-#: ref-filter.c:458
 #, c-format
-msgid "positive value expected '%s' in %%(%s)"
-msgstr "cần giá trị dương “%s” trong %%(%s)"
+msgid "traversed %lu commits\n"
+msgstr "đã xuyên %lu qua lần chuyển giao\n"
 
-#: ref-filter.c:476
 #, c-format
-msgid "unrecognized email option: %s"
-msgstr "không nhận ra tùy chọn thư điện tử: “%s”"
+msgid ""
+"more than %i tags found; listed %i most recent\n"
+"gave up search at %s\n"
+msgstr ""
+"tìm thấy nhiều hơn %i thẻ; đã liệt kê %i cái gần\n"
+"đây nhất bỏ đi tìm kiếm tại %s\n"
 
-#: ref-filter.c:506
 #, c-format
-msgid "expected format: %%(align:<width>,<position>)"
-msgstr "cần định dạng: %%(align:<width>,<position>)"
+msgid "describe %s\n"
+msgstr "mô tả %s\n"
 
-#: ref-filter.c:518
 #, c-format
-msgid "unrecognized position:%s"
-msgstr "vị trí không được thừa nhận:%s"
+msgid "Not a valid object name %s"
+msgstr "Không phải tên đối tượng %s hợp lệ"
 
-#: ref-filter.c:525
 #, c-format
-msgid "unrecognized width:%s"
-msgstr "chiều rộng không được thừa nhận:%s"
+msgid "%s is neither a commit nor blob"
+msgstr "%s không phải là một lần commit cũng không phải blob"
 
-#: ref-filter.c:542
-#, c-format
-msgid "positive width expected with the %%(align) atom"
-msgstr "cần giá trị độ rộng dương với nguyên tử %%(align)"
+msgid "find the tag that comes after the commit"
+msgstr "tìm các thẻ mà nó đến trước lần chuyển giao"
 
-#: ref-filter.c:568
-#, c-format
-msgid "%%(rest) does not take arguments"
-msgstr "%%(rest) không nhận các đối số"
+msgid "debug search strategy on stderr"
+msgstr "chiến lược tìm kiếm gỡ lỗi trên đầu ra lỗi chuẩn stderr"
 
-#: ref-filter.c:680
-#, c-format
-msgid "malformed field name: %.*s"
-msgstr "tên trường dị hình: %.*s"
+msgid "use any ref"
+msgstr "dùng ref bất kỳ"
 
-#: ref-filter.c:707
-#, c-format
-msgid "unknown field name: %.*s"
-msgstr "không hiểu tên trường: %.*s"
+msgid "use any tag, even unannotated"
+msgstr "dùng thẻ bất kỳ, cả khi “unannotated”"
 
-#: ref-filter.c:711
-#, c-format
-msgid ""
-"not a git repository, but the field '%.*s' requires access to object data"
-msgstr ""
-"không phải là một kho git, nhưng trường “%.*s” yêu cầu truy cập vào dữ liệu "
-"đối tượng"
+msgid "always use long format"
+msgstr "luôn dùng định dạng dài"
 
-#: ref-filter.c:844 ref-filter.c:910 ref-filter.c:946 ref-filter.c:948
-#, c-format
-msgid "format: %%(%s) atom used without a %%(%s) atom"
-msgstr "định dạng: nguyên tử %%(%s) được dùng mà không có nguyên tử %%(%s)"
+msgid "only follow first parent"
+msgstr "chỉ theo cha mẹ đầu tiên"
 
-#: ref-filter.c:912
-#, c-format
-msgid "format: %%(then) atom used more than once"
-msgstr "định dạng: nguyên tử %%(then) được dùng nhiều hơn một lần"
+msgid "only output exact matches"
+msgstr "chỉ xuất những gì khớp chính xác"
 
-#: ref-filter.c:914
-#, c-format
-msgid "format: %%(then) atom used after %%(else)"
-msgstr "định dạng: nguyên tử %%(then) được dùng sau %%(else)"
+msgid "consider <n> most recent tags (default: 10)"
+msgstr "coi như <n> thẻ gần đây nhất (mặc định: 10)"
 
-#: ref-filter.c:950
-#, c-format
-msgid "format: %%(else) atom used more than once"
-msgstr "định dạng: nguyên tử %%(else) được dùng nhiều hơn một lần"
+msgid "only consider tags matching <pattern>"
+msgstr "chỉ cân nhắc đến những thẻ khớp với <mẫu>"
+
+msgid "do not consider tags matching <pattern>"
+msgstr "không coi rằng các thẻ khớp với <mẫu>"
+
+msgid "show abbreviated commit object as fallback"
+msgstr "hiển thị đối tượng chuyển giao vắn tắt như là fallback"
+
+msgid "mark"
+msgstr "dấu"
+
+msgid "append <mark> on dirty working tree (default: \"-dirty\")"
+msgstr "thêm <dấu> trên cây thư mục làm việc bẩn (mặc định \"-dirty\")"
+
+msgid "append <mark> on broken working tree (default: \"-broken\")"
+msgstr "thêm <dấu> trên cây thư mục làm việc bị hỏng (mặc định \"-broken\")"
+
+msgid "No names found, cannot describe anything."
+msgstr "Không tìm thấy các tên, không thể mô tả gì cả."
 
-#: ref-filter.c:965
 #, c-format
-msgid "format: %%(end) atom used without corresponding atom"
-msgstr "định dạng: nguyên tử %%(end) được dùng mà không có nguyên tử tương ứng"
+msgid "option '%s' and commit-ishes cannot be used together"
+msgstr "tùy chọn '%s' và commit-ishes không thể dùng cùng nhau"
+
+msgid "--merge-base only works with two commits"
+msgstr "--merge-base chỉ hoạt động với hai lần chuyển giao"
 
-#: ref-filter.c:1027
 #, c-format
-msgid "malformed format string %s"
-msgstr "chuỗi định dạng dị hình %s"
+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"
 
-#: ref-filter.c:1033
 #, c-format
-msgid "this command reject atom %%(%.*s)"
-msgstr "lệnh này từ chối atom %%(%.*s)"
+msgid "invalid option: %s"
+msgstr "tùy chọn không hợp lệ: %s"
 
-#: ref-filter.c:1040
 #, c-format
-msgid "--format=%.*s cannot be used with --python, --shell, --tcl"
-msgstr "--format=%.*s không thể được dùng với --python, --shell, --tcl"
+msgid "%s...%s: no merge base"
+msgstr "%s…%s: không có cơ sở hòa trộn"
 
-#: ref-filter.c:1707
-#, c-format
-msgid "(no branch, rebasing %s)"
-msgstr "(không nhánh, đang cải tổ %s)"
+msgid "Not a git repository"
+msgstr "Không phải là kho git"
 
-#: ref-filter.c:1710
 #, c-format
-msgid "(no branch, rebasing detached HEAD %s)"
-msgstr "(không nhánh, đang cải tổ HEAD %s đã tách rời)"
+msgid "invalid object '%s' given."
+msgstr "đối tượng đã cho “%s” không hợp lệ."
 
-#: ref-filter.c:1713
 #, 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)"
+msgid "more than two blobs given: '%s'"
+msgstr "đã cho nhiều hơn hai đối tượng blob: “%s”"
 
-#: ref-filter.c:1717
 #, c-format
-msgid "(HEAD detached at %s)"
-msgstr "(HEAD được tách rời tại %s)"
+msgid "unhandled object '%s' given."
+msgstr "đã cho đối tượng không thể nắm giữ “%s”."
 
-#: ref-filter.c:1720
 #, c-format
-msgid "(HEAD detached from %s)"
-msgstr "(HEAD được tách rời khỏi %s)"
+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"
 
-#: ref-filter.c:1723
-msgid "(no branch)"
-msgstr "(không nhánh)"
+msgid "git difftool [<options>] [<commit> [<commit>]] [--] [<path>...]"
+msgstr ""
+"git difftool [<các tùy chọn>] [<lần_chuyển_giao> [<lần_chuyển_giao>]] [--] </"
+"đường/dẫn>…]"
 
-#: ref-filter.c:1755 ref-filter.c:1973
 #, c-format
-msgid "missing object %s for %s"
-msgstr "thiếu đối tượng %s cho %s"
+msgid "could not read symlink %s"
+msgstr "không thể đọc liên kết mềm %s"
 
-#: ref-filter.c:1765
 #, c-format
-msgid "parse_object_buffer failed on %s for %s"
-msgstr "parse_object_buffer gặp lỗi trên %s cho %s"
+msgid "could not read symlink file %s"
+msgstr "không đọc được tập tin liên kết mềm %s"
 
-#: ref-filter.c:2156
 #, c-format
-msgid "malformed object at '%s'"
-msgstr "đối tượng dị hình tại “%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"
 
-#: ref-filter.c:2246
-#, c-format
-msgid "ignoring ref with broken name %s"
-msgstr "đang lờ đi tham chiếu với tên hỏng %s"
+msgid ""
+"combined diff formats ('-c' and '--cc') are not supported in\n"
+"directory diff mode ('-d' and '--dir-diff')."
+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”)."
 
-#: ref-filter.c:2251 refs.c:672
 #, c-format
-msgid "ignoring broken ref %s"
-msgstr "đang lờ đi tham chiếu hỏng %s"
+msgid "both files modified: '%s' and '%s'."
+msgstr "cả hai tập tin đã bị sửa: “%s” và “%s”."
 
-#: ref-filter.c:2630
-#, c-format
-msgid "format: %%(end) atom missing"
-msgstr "định dạng: thiếu nguyên tử %%(end)"
+msgid "working tree file has been left."
+msgstr "cây làm việc ở bên trái."
 
-#: ref-filter.c:2741
 #, c-format
-msgid "malformed object name %s"
-msgstr "tên đối tượng dị hình %s"
+msgid "could not copy '%s' to '%s'"
+msgstr "không thể chép “%s” sang “%s”"
 
-#: ref-filter.c:2746
 #, 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"
+msgid "temporary files exist in '%s'."
+msgstr "các tập tin tạm đã sẵn có trong “%s”."
 
-#: reflog.c:407
-#, c-format
-msgid "not a reflog: %s"
-msgstr "không phải một reflog: %s"
+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."
 
-#: reflog.c:410
 #, c-format
-msgid "no reflog for '%s'"
-msgstr "không reflog cho “%s”"
+msgid "failed: %d"
+msgstr "gặp lỗi: %d"
 
-#: refs.c:262
-#, c-format
-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ả!"
+msgid "use `diff.guitool` instead of `diff.tool`"
+msgstr "dùng “diff.guitool“ thay vì dùng “diff.tool“"
+
+msgid "perform a full-directory diff"
+msgstr "thực hiện một diff toàn thư mục"
+
+msgid "do not prompt before launching a diff tool"
+msgstr "đừng nhắc khi khởi chạy công cụ diff"
+
+msgid "use symlinks in dir-diff mode"
+msgstr "dùng liên kết mềm trong diff-thư-mục"
+
+msgid "tool"
+msgstr "công cụ"
+
+msgid "use the specified diff tool"
+msgstr "dùng công cụ diff đã cho"
+
+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“"
 
-#: refs.c:561
-#, 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"
+"make 'git-difftool' exit when an invoked diff tool returns a non-zero exit "
+"code"
+msgstr "làm cho “git-difftool” thoát khi gọi công cụ diff trả về mã khác không"
 
-#: refs.c:583
-#, c-format
-msgid "could not retrieve `%s`"
-msgstr "không thể lấy về “%s”"
+msgid "specify a custom command for viewing diffs"
+msgstr "chỉ định một lệnh tùy ý để xem diff"
 
-#: refs.c:593
-#, c-format
-msgid "invalid branch name: %s = %s"
-msgstr "tên nhánh không hợp lệ: %s = %s"
+msgid "passed to `diff`"
+msgstr "chuyển cho “diff”"
 
-#: refs.c:670
-#, c-format
-msgid "ignoring dangling symref %s"
-msgstr "đang lờ đi tham chiếu mềm thừa %s"
+msgid "difftool requires worktree or --no-index"
+msgstr "difftool cần cây làm việc hoặc --no-index"
 
-#: refs.c:919
-#, 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"
+msgid "no <tool> given for --tool=<tool>"
+msgstr "chưa đưa ra <công_cụ> cho --tool=<công_cụ>"
 
-#: refs.c:926
-#, 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"
+msgid "no <cmd> given for --extcmd=<cmd>"
+msgstr "chưa đưa ra <lệnh> cho --extcmd=<lệnh>"
 
-#: refs.c:991
-#, c-format
-msgid "log for %s is empty"
-msgstr "nhật ký cho %s trống rỗng"
+msgid "git env--helper --type=[bool|ulong] <options> <env-var>"
+msgstr "git env--helper --type=[bool|ulong] <các tùy chọn> <env-var>"
 
-#: refs.c:1086
-#, 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”"
+msgid "default for git_env_*(...) to fall back on"
+msgstr "mặc định cho git_env_*(…) để quay về"
+
+msgid "be quiet only use git_env_*() value as exit code"
+msgstr "im lặng chỉ khi dung giá trị git_env_*() làm mã thoát"
 
-#: refs.c:1164
 #, c-format
-msgid "update_ref failed for ref '%s': %s"
-msgstr "update_ref bị lỗi cho ref “%s”: %s"
+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“"
 
-#: refs.c:2059
 #, 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”"
+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“"
 
-#: refs.c:2145
-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"
+msgid "git fast-export [<rev-list-opts>]"
+msgstr "git fast-export [<rev-list-opts>]"
 
-#: refs.c:2156
-msgid "ref updates aborted by hook"
-msgstr "các cập nhật tham chiếu bị bãi bỏ bởi móc"
+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."
 
-#: refs.c:2264 refs.c:2294
-#, c-format
-msgid "'%s' exists; cannot create '%s'"
-msgstr "“%s” sẵn có; không thể tạo “%s”"
+msgid "--anonymize-map token cannot be empty"
+msgstr "--anonymize-map thẻ không thể là rỗng"
 
-#: refs.c:2270 refs.c:2305
-#, 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"
+msgid "show progress after <n> objects"
+msgstr "hiển thị tiến triển sau <n> đối tượng"
 
-#: refs/files-backend.c:1295
-#, c-format
-msgid "could not remove reference %s"
-msgstr "không thể gỡ bỏ tham chiếu: %s"
+msgid "select handling of signed tags"
+msgstr "chọn điều khiển của thẻ đã ký"
 
-#: refs/files-backend.c:1310 refs/packed-backend.c:1565
-#: refs/packed-backend.c:1575
-#, c-format
-msgid "could not delete reference %s: %s"
-msgstr "không thể xóa bỏ tham chiếu %s: %s"
+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"
 
-#: refs/files-backend.c:1313 refs/packed-backend.c:1578
-#, c-format
-msgid "could not delete references: %s"
-msgstr "không thể xóa bỏ tham chiếu: %s"
+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ế"
 
-#: refspec.c:170
-#, c-format
-msgid "invalid refspec '%s'"
-msgstr "refspec không hợp lệ “%s”"
+msgid "dump marks to this file"
+msgstr "đổ các đánh dấu này vào tập-tin"
 
-#: remote.c:402
-#, c-format
-msgid "config remote shorthand cannot begin with '/': %s"
-msgstr "cấu hình viết tắt máy chủ không thể bắt đầu bằng “/”: %s"
+msgid "import marks from this file"
+msgstr "nhập vào đánh dấu từ tập tin này"
 
-#: remote.c:450
-msgid "more than one receivepack given, using the first"
-msgstr "đã đưa ra nhiều hơn một gói nhận về, đang sử dụng cái đầu tiên"
+msgid "import marks from this file if it exists"
+msgstr "nhập vào đánh dấu từ tập tin sẵn có"
 
-#: remote.c:458
-msgid "more than one uploadpack given, using the first"
-msgstr "đã đưa ra nhiều hơn một gói tải lên, đang sử dụng cái đầu tiên"
+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"
 
-#: remote.c:698
-#, c-format
-msgid "Cannot fetch both %s and %s to %s"
-msgstr "Không thể lấy về cả %s và %s cho %s"
+msgid "output full tree for each commit"
+msgstr "xuất ra toàn bộ cây cho mỗi lần chuyển giao"
 
-#: remote.c:702
-#, c-format
-msgid "%s usually tracks %s, not %s"
-msgstr "%s thường theo dõi %s, không phải %s"
+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"
 
-#: remote.c:706
-#, c-format
-msgid "%s tracks both %s and %s"
-msgstr "%s theo dõi cả %s và %s"
+msgid "skip output of blob data"
+msgstr "bỏ qua kết xuất của dữ liệu blob"
+
+msgid "refspec"
+msgstr "refspec"
 
-#: remote.c:774
-#, c-format
-msgid "key '%s' of pattern had no '*'"
-msgstr "khóa “%s” của mẫu k có “*”"
+msgid "apply refspec to exported refs"
+msgstr "áp dụng refspec cho refs đã xuất"
 
-#: remote.c:784
-#, c-format
-msgid "value '%s' of pattern has no '*'"
-msgstr "giá trị “%s” của mẫu k có “*”"
+msgid "anonymize output"
+msgstr "kết xuất anonymize"
 
-#: remote.c:1191
-#, c-format
-msgid "src refspec %s does not match any"
-msgstr "refspec %s nguồn không khớp bất kỳ cái gì"
+msgid "from:to"
+msgstr "từ:đến"
 
-#: remote.c:1196
-#, c-format
-msgid "src refspec %s matches more than one"
-msgstr "refspec %s nguồn khớp nhiều hơn một"
+msgid "convert <from> to <to> in anonymized output"
+msgstr "chuyển đổi <from> sang <to> đầu ra ẩn danh"
 
-#. TRANSLATORS: "matches '%s'%" is the <dst> part of "git push
-#. <remote> <src>:<dst>" push, and "being pushed ('%s')" is
-#. the <src>.
-#.
-#: remote.c:1211
-#, c-format
-msgid ""
-"The destination you provided is not a full refname (i.e.,\n"
-"starting with \"refs/\"). We tried to guess what you meant by:\n"
-"\n"
-"- Looking for a ref that matches '%s' on the remote side.\n"
-"- Checking if the <src> being pushed ('%s')\n"
-"  is a ref in \"refs/{heads,tags}/\". If so we add a corresponding\n"
-"  refs/{heads,tags}/ prefix on the remote side.\n"
-"\n"
-"Neither worked, so we gave up. You must fully qualify the ref."
+msgid "reference parents which are not in fast-export stream by object id"
 msgstr ""
-"Đích bạn đã cung cấp không phải tên tham chiếu đầy đủ (tức là\n"
-"bắt đầu bằng \"refs/\"). Chúng tôi đã cố suy luận rằng ý của bạn là:\n"
-"\n"
-"- Tìm kiếm một tham chiếu mà nó khớp “%s” bên phía máy chủ.\n"
-"- Kiểm tra xem <src> được đẩy lên (“%s”)\n"
-"  là một tham chiếu trong \"refs/{heads,tags}/\". Nếu thế chúng tôi thêm một "
-"tiền tố\n"
-"  refs/{heads,tags}/ tương ứng bên phía máy chủ.\n"
-"\n"
-"Nếu cả hai là không thể, thì chúng tôi cũng chịu thua. Bạn phải dùng tham "
-"chiếu dạng đầy đủ."
+"các cha mẹ tham chiếu cái mà không trong luồng dữ liệu fast-export bởi mã id "
+"đối tượng"
 
-#: remote.c:1231
-#, c-format
-msgid ""
-"The <src> part of the refspec is a commit object.\n"
-"Did you mean to create a new branch by pushing to\n"
-"'%s:refs/heads/%s'?"
-msgstr ""
-"Phần <src> của đặc tả đường dẫn là một đối tượng lần chuyển giao.\n"
-"Có phải ý bạn là một tạo một nhánh mới bằng cách đẩy lên\n"
-"“%s:refs/heads/%s”?"
+msgid "show original object ids of blobs/commits"
+msgstr "hiển thị các mã id nguyên gốc của blobs/commits"
 
-#: remote.c:1236
-#, c-format
-msgid ""
-"The <src> part of the refspec is a tag object.\n"
-"Did you mean to create a new tag by pushing to\n"
-"'%s:refs/tags/%s'?"
-msgstr ""
-"Phần <src> của đặc tả đường dẫn là một đối tượng thẻ.\n"
-"Có phải ý bạn là một tạo một thẻ mới bằng cách đẩy lên\n"
-"“%s:refs/tags/%s”?"
+msgid "label tags with mark ids"
+msgstr "gắn thẻ với các mã ID đánh dấu"
 
-#: remote.c:1241
 #, c-format
-msgid ""
-"The <src> part of the refspec is a tree object.\n"
-"Did you mean to tag a new tree by pushing to\n"
-"'%s:refs/tags/%s'?"
-msgstr ""
-"Phần <src> của đặc tả đường dẫn là một đối tượng cây.\n"
-"Có phải ý bạn là một tạo một cây mới bằng cách đẩy lên\n"
-"“%s:refs/tags/%s”?"
+msgid "Missing from marks for submodule '%s'"
+msgstr "Thiếu các đánh dấu cho mô-đun-con “%s”"
 
-#: remote.c:1246
 #, c-format
-msgid ""
-"The <src> part of the refspec is a blob object.\n"
-"Did you mean to tag a new blob by pushing to\n"
-"'%s:refs/tags/%s'?"
-msgstr ""
-"Phần <src> của đặc tả đường dẫn là một đối tượng blob.\n"
-"Có phải ý bạn là một tạo một blob mới bằng cách đẩy lên\n"
-"“%s:refs/tags/%s”?"
+msgid "Missing to marks for submodule '%s'"
+msgstr "Thiếu đánh dấu cho mô-đun-con “%s”"
 
-#: remote.c:1282
 #, c-format
-msgid "%s cannot be resolved to branch"
-msgstr "“%s” không thể được phân giải thành nhánh"
+msgid "Expected 'mark' command, got %s"
+msgstr "Cần lệnh “mark”, nhưng lại nhận được %s"
 
-#: remote.c:1293
 #, c-format
-msgid "unable to delete '%s': remote ref does not exist"
-msgstr "không thể xóa “%s”: tham chiếu trên máy chủ không tồn tại"
+msgid "Expected 'to' command, got %s"
+msgstr "Cần lệnh “to”, nhưng lại nhận được %s"
+
+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"
 
-#: remote.c:1305
 #, c-format
-msgid "dst refspec %s matches more than one"
-msgstr "dst refspec %s khớp nhiều hơn một"
+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"
 
-#: remote.c:1312
 #, c-format
-msgid "dst ref %s receives from more than one src"
-msgstr "dst ref %s nhận từ hơn một nguồn"
+msgid "Lockfile created but not reported: %s"
+msgstr "Tập tin khóa đã được tạo nhưng chưa được báo cáo: %s"
 
-#: remote.c:1833 remote.c:1940
-msgid "HEAD does not point to a branch"
-msgstr "HEAD không chỉ đến một nhánh nào cả"
+msgid "git fetch [<options>] [<repository> [<refspec>...]]"
+msgstr "git fetch [<các tùy chọn>] [<kho-chứa> [<refspec>…]]"
 
-#: remote.c:1842
-#, c-format
-msgid "no such branch: '%s'"
-msgstr "không có nhánh nào như thế: “%s”"
+msgid "git fetch [<options>] <group>"
+msgstr "git fetch [<các tùy chọn>] [<nhóm>"
 
-#: remote.c:1845
-#, 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”"
+msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
+msgstr "git fetch --multiple [<các tùy chọn>] [(<kho> | <nhóm>)…]"
 
-#: remote.c:1851
-#, 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ủ"
+msgid "git fetch --all [<options>]"
+msgstr "git fetch --all [<các tùy chọn>]"
 
-#: remote.c:1866
-#, 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ộ"
+msgid "fetch.parallel cannot be negative"
+msgstr "fetch.parallel không thể âm"
 
-#: remote.c:1881
-#, c-format
-msgid "branch '%s' has no remote for pushing"
-msgstr "nhánh “%s” không có máy chủ để đẩy lên"
+msgid "fetch from all remotes"
+msgstr "lấy về từ tất cả các máy chủ"
 
-#: remote.c:1891
-#, c-format
-msgid "push refspecs for '%s' do not include '%s'"
-msgstr "đẩy refspecs cho “%s” không bao gồm “%s”"
+msgid "set upstream for git pull/fetch"
+msgstr "đặt thượng nguồn cho git pull/fetch"
 
-#: remote.c:1904
-msgid "push has no destination (push.default is 'nothing')"
-msgstr "đẩy lên mà không có đích (push.default là “nothing”)"
+msgid "append to .git/FETCH_HEAD instead of overwriting"
+msgstr "nối thêm vào .git/FETCH_HEAD thay vì ghi đè lên nó"
 
-#: remote.c:1926
-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"
+msgid "use atomic transaction to update references"
+msgstr "sử dụng giao dịch hạt nhân bên phía máy chủ"
 
-#: remote.c:2059
-#, c-format
-msgid "couldn't find remote ref %s"
-msgstr "không thể tìm thấy tham chiếu máy chủ %s"
+msgid "path to upload pack on remote end"
+msgstr "đường dẫn đến gói tải lên trên máy chủ cuối"
 
-#: remote.c:2072
-#, c-format
-msgid "* Ignoring funny ref '%s' locally"
-msgstr "* Đang bỏ qua tham chiếu thú vị nội bộ “%s”"
+msgid "force overwrite of local reference"
+msgstr "ép buộc ghi đè lên tham chiếu nội bộ"
 
-#: remote.c:2235
-#, 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"
+msgid "fetch from multiple remotes"
+msgstr "lấy từ nhiều máy chủ cùng lúc"
 
-#: remote.c:2239
-msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
-msgstr "   (dùng \" git branch --unset-upstream\" để sửa)\n"
+msgid "fetch all tags and associated objects"
+msgstr "lấy tất cả các thẻ cùng với các đối tượng liên quan đến nó"
 
-#: remote.c:2242
-#, 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"
+msgid "do not fetch all tags (--no-tags)"
+msgstr "không lấy tất cả các thẻ (--no-tags)"
 
-#: remote.c:2246
-#, 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"
+msgid "number of submodules fetched in parallel"
+msgstr "số lượng mô-đun-con được lấy đồng thời"
 
-#: remote.c:2249
-#, c-format
-msgid "  (use \"%s\" for details)\n"
-msgstr "  (dùng \"%s\" để biết thêm chi tiết)\n"
+msgid "modify the refspec to place all refs within refs/prefetch/"
+msgstr ""
+"sửa đặc tả đường dẫn cho các tham chiếu mọi chỗ có trong refs/prefetch/"
 
-#: remote.c:2253
-#, 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"
+msgid "prune remote-tracking branches no longer on remote"
+msgstr ""
+"cắt cụt (prune) các nhánh “remote-tracking” không còn tồn tại trên máy chủ "
+"nữa"
 
-#: remote.c:2259
-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"
+msgid "prune local tags no longer on remote and clobber changed tags"
+msgstr "cắt xém các thẻ nội bộ không còn ở máy chủ và xóa các thẻ đã thay đổi"
 
-#: remote.c:2262
-#, c-format
-msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
-msgid_plural ""
-"Your branch is behind '%s' by %d commits, and can be fast-forwarded.\n"
-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"
+msgid "on-demand"
+msgstr "khi-cần"
 
-#: remote.c:2270
-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"
+msgid "control recursive fetching of submodules"
+msgstr "điều khiển việc lấy về đệ quy trong các mô-đun-con"
 
-#: remote.c:2273
-#, c-format
-msgid ""
-"Your branch and '%s' have diverged,\n"
-"and have %d and %d different commit each, respectively.\n"
-msgid_plural ""
-"Your branch and '%s' have diverged,\n"
-"and have %d and %d different commits each, respectively.\n"
-msgstr[0] ""
-"Nhánh của bạn và “%s” bị phân kỳ,\n"
-"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"
+msgid "write fetched references to the FETCH_HEAD file"
+msgstr "ghi các tham chiếu lấy về vào tập tin FETCH_HEAD"
 
-#: remote.c:2283
-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"
+msgid "keep downloaded pack"
+msgstr "giữ lại gói đã tải về"
 
-#: remote.c:2475
-#, 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”"
+msgid "allow updating of HEAD ref"
+msgstr "cho phép cập nhật th.chiếu HEAD"
 
-#: replace-object.c:21
-#, c-format
-msgid "bad replace ref name: %s"
-msgstr "tên tham chiếu thay thế bị sai: %s"
+msgid "deepen history of shallow clone"
+msgstr "làm sâu hơn lịch sử của bản sao"
 
-#: replace-object.c:30
-#, c-format
-msgid "duplicate replace ref: %s"
-msgstr "tham chiếu thay thế bị trùng: %s"
+msgid "deepen history of shallow repository based on time"
+msgstr "làm sâu hơn lịch sử của kho bản sao shallow dựa trên thời gian"
 
-#: replace-object.c:82
-#, c-format
-msgid "replace depth too high for object %s"
-msgstr "độ sâu thay thế quá cao cho đối tượng %s"
+msgid "convert to a complete repository"
+msgstr "chuyển đổi hoàn toàn sang kho git"
 
-#: rerere.c:201 rerere.c:210 rerere.c:213
-msgid "corrupt MERGE_RR"
-msgstr "MERGE_RR sai hỏng"
+msgid "re-fetch without negotiating common commits"
+msgstr "re-fetch mà không dàn xếp các lần chuyển giao chung"
 
-#: rerere.c:248 rerere.c:253
-msgid "unable to write rerere record"
-msgstr "không thể ghi bản ghi rerere"
+msgid "prepend this to submodule path output"
+msgstr "soạn sẵn cái này cho kết xuất đường dẫn mô-đun-con"
 
-#: rerere.c:479
-#, c-format
-msgid "there were errors while writing '%s' (%s)"
-msgstr "gặp lỗi đọc khi đang ghi “%s” (%s)"
+msgid ""
+"default for recursive fetching of submodules (lower priority than config "
+"files)"
+msgstr ""
+"mặc định cho việc lấy đệ quy các mô-đun-con (có mức ưu tiên thấp hơn các tập "
+"tin cấu hình config)"
 
-#: rerere.c:482 builtin/gc.c:2263 builtin/gc.c:2298
-#, c-format
-msgid "failed to flush '%s'"
-msgstr "gặp lỗi khi đẩy dữ liệu “%s” lên đĩa"
+msgid "accept refs that update .git/shallow"
+msgstr "chấp nhận tham chiếu cập nhật .git/shallow"
 
-#: rerere.c:487 rerere.c:1024
-#, c-format
-msgid "could not parse conflict hunks in '%s'"
-msgstr "không thể phân tích các mảnh xung đột trong “%s”"
+msgid "refmap"
+msgstr "refmap"
 
-#: rerere.c:669
-#, c-format
-msgid "failed utime() on '%s'"
-msgstr "gặp lỗi utime() trên “%s”"
+msgid "specify fetch refmap"
+msgstr "chỉ ra refmap cần lấy về"
 
-#: rerere.c:679
-#, c-format
-msgid "writing '%s' failed"
-msgstr "gặp lỗi khi đang ghi “%s”"
+msgid "report that we have only objects reachable from this object"
+msgstr ""
+"báo cáo rằng chúng ta chỉ có các đối tượng tiếp cận được từ đối tượng này"
 
-#: rerere.c:699
-#, c-format
-msgid "Staged '%s' using previous resolution."
-msgstr "Đã tạm cất “%s” sử dụng cách phân giải kế trước."
+msgid "do not fetch a packfile; instead, print ancestors of negotiation tips"
+msgstr ""
+"không lấy về một packfile; thay vào đó, hãy in tổ tiên của đỉnh đàm phán"
 
-#: rerere.c:738
-#, c-format
-msgid "Recorded resolution for '%s'."
-msgstr "Cách giải quyết đã ghi lại cho “%s”."
+msgid "run 'maintenance --auto' after fetching"
+msgstr "chạy “maintenance --auto” sau khi lấy về"
 
-#: rerere.c:773
-#, c-format
-msgid "Resolved '%s' using previous resolution."
-msgstr "Đã phân giải giải “%s” sử dụng cách giải quyết kế trước."
+msgid "check for forced-updates on all updated branches"
+msgstr "kiểm cho các-cập-nhật-bắt-buộc trên mọi nhánh đã cập nhật"
 
-#: rerere.c:788
-#, c-format
-msgid "cannot unlink stray '%s'"
-msgstr "không thể unlink stray “%s”"
+msgid "write the commit-graph after fetching"
+msgstr "ghi ra đồ thị các lần chuyển giao sau khi lấy về"
 
-#: rerere.c:792
-#, c-format
-msgid "Recorded preimage for '%s'"
-msgstr "Preimage đã được ghi lại cho “%s”"
+msgid "accept refspecs from stdin"
+msgstr "chấp nhận tham chiếu từ đầu vào tiêu chuẩn"
 
-#: rerere.c:866 submodule.c:2290 builtin/log.c:2042
-#: builtin/submodule--helper.c:1786 builtin/submodule--helper.c:1833
-#, c-format
-msgid "could not create directory '%s'"
-msgstr "không thể tạo thư mục “%s”"
+msgid "couldn't find remote ref HEAD"
+msgstr "không thể tìm thấy HEAD tham chiếu máy chủ"
 
-#: rerere.c:1042
 #, c-format
-msgid "failed to update conflicted state in '%s'"
-msgstr "gặp lỗi khi chạy cập nhật trạng thái bị xung đột trong “%s”"
+msgid "object %s not found"
+msgstr "không tìm thấy đối tượng %s"
 
-#: rerere.c:1053 rerere.c:1060
-#, c-format
-msgid "no remembered resolution for '%s'"
-msgstr "đừng nhó các giải quyết cho “%s”"
+msgid "[up to date]"
+msgstr "[đã cập nhật]"
 
-#: rerere.c:1062
-#, c-format
-msgid "cannot unlink '%s'"
-msgstr "không thể unlink “%s”"
+msgid "[rejected]"
+msgstr "[Bị từ chối]"
 
-#: rerere.c:1072
-#, c-format
-msgid "Updated preimage for '%s'"
-msgstr "Đã cập nhật preimage cho “%s”"
+msgid "can't fetch in current branch"
+msgstr "không thể fetch (lấy) về nhánh hiện hành"
 
-#: rerere.c:1081
-#, c-format
-msgid "Forgot resolution for '%s'\n"
-msgstr "Quên phân giải cho “%s”\n"
+msgid "checked out in another worktree"
+msgstr "lấy ra trong cây làm việc khác"
 
-#: rerere.c:1192
-msgid "unable to open rr-cache directory"
-msgstr "không thể mở thư mục rr-cache"
+msgid "[tag update]"
+msgstr "[cập nhật thẻ]"
 
-#: reset.c:112
-msgid "could not determine HEAD revision"
-msgstr "không thể dò tìm điểm xét duyệt HEAD"
+msgid "unable to update local ref"
+msgstr "không thể cập nhật tham chiếu nội bộ"
 
-#: reset.c:141 reset.c:147 sequencer.c:3696
-#, c-format
-msgid "failed to find tree of %s"
-msgstr "gặp lỗi khi tìm cây của %s"
+msgid "would clobber existing tag"
+msgstr "nên xóa chồng các thẻ có sẵn"
 
-#: revision.c:2358
-msgid "--unpacked=<packfile> no longer supported"
-msgstr "--unpacked=<packfile> không còn được hỗ trợ nữa"
+msgid "[new tag]"
+msgstr "[thẻ mới]"
 
-#: revision.c:2712
-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"
+msgid "[new branch]"
+msgstr "[nhánh mới]"
 
-#: revision.c:2715
-#, 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ả"
+msgid "[new ref]"
+msgstr "[ref (tham chiếu) mới]"
 
-#: revision.c:2901
-msgid "object filtering requires --objects"
-msgstr "lọc đối tượng yêu cầu --objects"
+msgid "forced update"
+msgstr "cưỡng bức cập nhật"
 
-#: revision.c:2918
-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"
+msgid "non-fast-forward"
+msgstr "không-phải-chuyển-tiếp-nhanh"
 
-#: run-command.c:1262
 #, c-format
-msgid "cannot create async thread: %s"
-msgstr "không thể tạo tuyến trình async: %s"
+msgid "cannot open '%s'"
+msgstr "không mở được “%s”"
 
-#: send-pack.c:150
-msgid "unexpected flush packet while reading remote unpack status"
+msgid ""
+"fetch normally indicates which branches had a forced update,\n"
+"but that check has been disabled; to re-enable, use '--show-forced-updates'\n"
+"flag or run 'git config fetch.showForcedUpdates true'"
 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ủ"
+"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”."
 
-#: send-pack.c:152
 #, 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"
+msgid ""
+"it took %.2f seconds to check forced updates; you can use\n"
+"'--no-show-forced-updates' or run 'git config fetch.showForcedUpdates "
+"false'\n"
+"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"
+"để tránh kiểm tra này\n"
 
-#: send-pack.c:154
 #, c-format
-msgid "remote unpack failed: %s"
-msgstr "máy chủ gặp lỗi unpack: %s"
-
-#: send-pack.c:378
-msgid "failed to sign the push certificate"
-msgstr "gặp lỗi khi ký chứng thực đẩy"
-
-#: send-pack.c:435
-msgid "send-pack: unable to fork off fetch subprocess"
-msgstr "send-pack: không thể rẽ nhánh tuyến trình con fetch"
-
-#: send-pack.c:457
-msgid "push negotiation failed; proceeding anyway with push"
-msgstr "đẩy đàm phán thất bại; vẫn tiếp tục xử lý bằng lệnh đẩy"
+msgid "%s did not send all necessary objects\n"
+msgstr "%s đã không gửi tất cả các đối tượng cần thiết\n"
 
-#: send-pack.c:528
-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"
+#, c-format
+msgid "rejected %s because shallow roots are not allowed to be updated"
+msgstr "từ chối %s bởi vì các gốc nông thì không được phép cập nhật"
 
-#: send-pack.c:537
-msgid "the receiving end does not support --signed push"
-msgstr "kết thúc nhận không hỗ trợ đẩy --signed"
+#, c-format
+msgid "From %.*s\n"
+msgstr "Từ %.*s\n"
 
-#: send-pack.c:539
+#, c-format
 msgid ""
-"not sending a push certificate since the receiving end does not support --"
-"signed push"
+"some local refs could not be updated; try running\n"
+" 'git remote prune %s' to remove any old, conflicting branches"
 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"
+"một số tham chiếu nội bộ không thể được cập nhật; hãy thử chạy\n"
+" “git remote prune %s” để bỏ đi những nhánh cũ, hay bị xung đột"
 
-#: send-pack.c:546
-msgid "the receiving end does not support --atomic push"
-msgstr "kết thúc nhận không hỗ trợ đẩy --atomic"
+#, c-format
+msgid "   (%s will become dangling)"
+msgstr "   (%s sẽ trở thành không đầu (không được quản lý))"
 
-#: send-pack.c:551
-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"
+#, c-format
+msgid "   (%s has become dangling)"
+msgstr "   (%s đã trở thành không đầu (không được quản lý))"
+
+msgid "[deleted]"
+msgstr "[đã xóa]"
+
+msgid "(none)"
+msgstr "(không)"
 
-#: sequencer.c:197
 #, 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”"
+msgid "refusing to fetch into branch '%s' checked out at '%s'"
+msgstr "từ chối lấy về vào nhánh “%s” đã được lấy ra tại “%s”"
 
-#: sequencer.c:325
 #, c-format
-msgid "could not delete '%s'"
-msgstr "không thể xóa bỏ “%s”"
+msgid "option \"%s\" value \"%s\" is not valid for %s"
+msgstr "tùy chọn \"%s\" có giá trị \"%s\" là không hợp lệ cho %s"
 
-#: sequencer.c:345 sequencer.c:4724 builtin/rebase.c:564 builtin/rebase.c:1326
-#: builtin/rm.c:409
 #, c-format
-msgid "could not remove '%s'"
-msgstr "không thể gỡ bỏ “%s”"
+msgid "option \"%s\" is ignored for %s\n"
+msgstr "tùy chọn \"%s\" bị bỏ qua với %s\n"
 
-#: sequencer.c:355
-msgid "revert"
-msgstr "hoàn nguyên"
+#, c-format
+msgid "%s is not a valid object"
+msgstr "%s không phải là một đối tượng hợp lệ"
 
-#: sequencer.c:357
-msgid "cherry-pick"
-msgstr "cherry-pick"
+#, c-format
+msgid "the object %s does not exist"
+msgstr "đối tượng “%s” không tồn tại"
 
-#: sequencer.c:359
-msgid "rebase"
-msgstr "rebase"
+msgid "multiple branches detected, incompatible with --set-upstream"
+msgstr "phát hiện nhiều nhánh, không tương thích với --set-upstream"
 
-#: sequencer.c:361
 #, c-format
-msgid "unknown action: %d"
-msgstr "không nhận ra thao tác: %d"
-
-#: sequencer.c:420
 msgid ""
-"after resolving the conflicts, mark the corrected paths\n"
-"with 'git add <paths>' or 'git rm <paths>'"
+"could not set upstream of HEAD to '%s' from '%s' when it does not point to "
+"any branch."
 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>”"
+"không thể đặt thượng nguồn của HEAD thành '%s' từ '%s' khi mà nó chẳng chỉ "
+"đến nhánh nào cả."
 
-#: sequencer.c:423
-msgid ""
-"After resolving the conflicts, mark them with\n"
-"\"git add/rm <pathspec>\", then run\n"
-"\"git cherry-pick --continue\".\n"
-"You can instead skip this commit with \"git cherry-pick --skip\".\n"
-"To abort and get back to the state before \"git cherry-pick\",\n"
-"run \"git cherry-pick --abort\"."
-msgstr ""
-"Sau khi giải quyết vấn đề xung đột, hãy đánh dấu bằng\n"
-"\"git add/rm <pathspec>\", sai đó chạy\n"
-"\"git cherry-pick --continue\".\n"
-"Bạn có thể bỏ qua lần chuyển giao này với \"git cherry-pick --skip\".\n"
-"Để bãi bỏ và quay trở lại trạng thái trước khi \"git cherry-pick\",\n"
-"chạy \"git cherry-pick --abort\"."
+msgid "not setting upstream for a remote remote-tracking branch"
+msgstr "không cài đặt thượng nguồn cho một nhánh được theo dõi trên máy chủ"
+
+msgid "not setting upstream for a remote tag"
+msgstr "không cài đặt thượng nguồn cho một thẻ nhánh trên máy chủ"
+
+msgid "unknown branch type"
+msgstr "không hiểu kiểu nhánh"
 
-#: sequencer.c:430
 msgid ""
-"After resolving the conflicts, mark them with\n"
-"\"git add/rm <pathspec>\", then run\n"
-"\"git revert --continue\".\n"
-"You can instead skip this commit with \"git revert --skip\".\n"
-"To abort and get back to the state before \"git revert\",\n"
-"run \"git revert --abort\"."
+"no source branch found;\n"
+"you need to specify exactly one branch with the --set-upstream option"
 msgstr ""
-"Sau khi giải quyết vấn đề này, hãy đánh dấu chúng bằng\n"
-"\"git add/rm <đặc_tả_đường_dẫn_xung_đột>\", sau đó chạy\n"
-"\"git revert --continue\".\n"
-"Bạn có thể bỏ qua lần chuyển giao này với \"git rebase --skip\".\n"
-"Để bãi bỏ và quay trở lại trạng thái trước \"git revert\",\n"
-"chạy \"git revert --abort\"."
+"không tìm thấy nhánh nguồn.\n"
+"bạn cần phải chỉ định chính xác một nhánh với tùy chọn --set-upstream"
 
-#: sequencer.c:448 sequencer.c:3288
 #, c-format
-msgid "could not lock '%s'"
-msgstr "không thể khóa “%s”"
+msgid "Fetching %s\n"
+msgstr "Đang lấy “%s” về\n"
 
-#: sequencer.c:450 sequencer.c:3087 sequencer.c:3292 sequencer.c:3306
-#: sequencer.c:3557 sequencer.c:5591 strbuf.c:1189 wrapper.c:715
 #, c-format
-msgid "could not write to '%s'"
-msgstr "không thể ghi vào “%s”"
+msgid "could not fetch %s"
+msgstr "không thể lấy “%s” về"
 
-#: sequencer.c:455
 #, c-format
-msgid "could not write eol to '%s'"
-msgstr "không thể ghi eol vào “%s”"
+msgid "could not fetch '%s' (exit code: %d)\n"
+msgstr "không thể lấy “%s” (mã thoát: %d)\n"
 
-#: sequencer.c:460 sequencer.c:3092 sequencer.c:3294 sequencer.c:3308
-#: sequencer.c:3565
-#, c-format
-msgid "failed to finalize '%s'"
-msgstr "gặp lỗi khi hoàn thành “%s”"
+msgid ""
+"no remote repository specified; please specify either a URL or a\n"
+"remote name from which new revisions should be fetched"
+msgstr ""
+"chưa chỉ ra kho chứa máy chủ; xin hãy chỉ định hoặc là URL hoặc\n"
+"tên máy chủ từ cái mà những điểm xét duyệt mới có thể được fetch (lấy về)"
 
-#: sequencer.c:473 sequencer.c:1930 sequencer.c:3112 sequencer.c:3547
-#: sequencer.c:3675 builtin/am.c:290 builtin/commit.c:837 builtin/merge.c:1154
-#, c-format
-msgid "could not read '%s'"
-msgstr "không thể đọc “%s”"
+msgid "you need to specify a tag name"
+msgstr "bạn cần chỉ định một tên thẻ"
 
-#: sequencer.c:499
-#, 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."
+msgid "--negotiate-only needs one or more --negotiation-tip=*"
+msgstr "--negotiate-only cần một hay nhiều --negotiation-tip=* hơn"
 
-#: sequencer.c:503
-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ý."
+msgid "negative depth in --deepen is not supported"
+msgstr "mức sâu là số âm trong --deepen là không được hỗ trợ"
 
-#: sequencer.c:535
-#, c-format
-msgid "%s: fast-forward"
-msgstr "%s: chuyển-tiếp-nhanh"
+msgid "--unshallow on a complete repository does not make sense"
+msgstr "--unshallow trên kho hoàn chỉnh là không hợp lý"
 
-#: sequencer.c:574 builtin/tag.c:615
-#, c-format
-msgid "Invalid cleanup mode %s"
-msgstr "Chế độ dọn dẹp không hợp lệ %s"
+msgid "fetch --all does not take a repository argument"
+msgstr "lệnh lấy về \"fetch --all\" không lấy đối số kho chứa"
+
+msgid "fetch --all does not make sense with refspecs"
+msgstr "lệnh lấy về \"fetch --all\" không hợp lý với refspecs"
 
-#. TRANSLATORS: %s will be "revert", "cherry-pick" or
-#. "rebase".
-#.
-#: sequencer.c:685
 #, 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"
+msgid "no such remote or remote group: %s"
+msgstr "không có nhóm máy chủ hay máy chủ như thế: %s"
 
-#: sequencer.c:699
-msgid "unable to update cache tree"
-msgstr "không thể cập nhật cây bộ nhớ đệm"
+msgid "fetching a group and specifying refspecs does not make sense"
+msgstr "việc lấy về một nhóm và chỉ định refspecs là không hợp lý"
 
-#: sequencer.c:713
-msgid "could not resolve HEAD commit"
-msgstr "không thể phân giải lần chuyển giao HEAD"
+msgid "must supply remote when using --negotiate-only"
+msgstr "phải cung cấp máy chủ khi sử dụng --negotiate-only"
 
-#: sequencer.c:793
-#, c-format
-msgid "no key present in '%.*s'"
-msgstr "không có khóa hiện diện trong “%.*s”"
+msgid "protocol does not support --negotiate-only, exiting"
+msgstr "giao thức không hỗ trợ --negotiate-only, nên thoát"
 
-#: sequencer.c:804
-#, c-format
-msgid "unable to dequote value of '%s'"
-msgstr "không thể giải trích dẫn giá trị của “%s”"
+msgid ""
+"--filter can only be used with the remote configured in extensions."
+"partialclone"
+msgstr ""
+"--filter chỉ có thể được dùng với máy chủ được cấu hình bằng extensions."
+"partialclone"
 
-#: sequencer.c:841 wrapper.c:219 wrapper.c:389 builtin/am.c:757
-#: builtin/am.c:849 builtin/rebase.c:699
-#, c-format
-msgid "could not open '%s' for reading"
-msgstr "không thể mở “%s” để đọc"
+msgid "--atomic can only be used when fetching from one remote"
+msgstr "--atomic chỉ có thể dùng khi lấy về từ một máy chủ"
 
-#: sequencer.c:851
-msgid "'GIT_AUTHOR_NAME' already given"
-msgstr "“GIT_AUTHOR_NAME” đã sẵn đưa ra rồi"
+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ủ"
 
-#: sequencer.c:856
-msgid "'GIT_AUTHOR_EMAIL' already given"
-msgstr "“GIT_AUTHOR_EMAIL” đã sẵn đưa ra rồi"
+msgid ""
+"git fmt-merge-msg [-m <message>] [--log[=<n>] | --no-log] [--file <file>]"
+msgstr ""
+"git fmt-merge-msg [-m <chú_thích>] [--log[=<n>] | --no-log] [--file <tập-"
+"tin>]"
 
-#: sequencer.c:861
-msgid "'GIT_AUTHOR_DATE' already given"
-msgstr "“GIT_AUTHOR_DATE” đã sẵn đưa ra rồi"
+msgid "populate log with at most <n> entries from shortlog"
+msgstr "gắn nhật ký với ít nhất <n> mục từ lệnh “shortlog”"
 
-#: sequencer.c:865
-#, c-format
-msgid "unknown variable '%s'"
-msgstr "không hiểu biến “%s”"
+msgid "alias for --log (deprecated)"
+msgstr "bí danh cho --log (không được dùng)"
 
-#: sequencer.c:870
-msgid "missing 'GIT_AUTHOR_NAME'"
-msgstr "thiếu “GIT_AUTHOR_NAME”"
+msgid "text"
+msgstr "văn bản"
 
-#: sequencer.c:872
-msgid "missing 'GIT_AUTHOR_EMAIL'"
-msgstr "thiếu “GIT_AUTHOR_EMAIL”"
+msgid "use <text> as start of message"
+msgstr "dùng <văn bản thường> để bắt đầu ghi chú"
 
-#: sequencer.c:874
-msgid "missing 'GIT_AUTHOR_DATE'"
-msgstr "thiếu “GIT_AUTHOR_DATE”"
+msgid "use <name> instead of the real target branch"
+msgstr "dùng <tên> thay cho nhánh đích thật"
 
-#: sequencer.c:939
-#, c-format
-msgid ""
-"you have staged changes in your working tree\n"
-"If these changes are meant to be squashed into the previous commit, run:\n"
-"\n"
-"  git commit --amend %s\n"
-"\n"
-"If they are meant to go into a new commit, run:\n"
-"\n"
-"  git commit %s\n"
-"\n"
-"In both cases, once you're done, continue with:\n"
-"\n"
-"  git rebase --continue\n"
-msgstr ""
-"bạn có các thay đổi so với trong bệ phóng trong thư mục làm việc của bạn.\n"
-"Nếu các thay đổi này là muốn squash vào lần chuyển giao kế trước, chạy:\n"
-"\n"
-"  git commit --amend %s\n"
-"\n"
-"Nếu chúng có ý là đi đến lần chuyển giao mới, thì chạy:\n"
-"\n"
-"  git commit %s\n"
-"\n"
-"Trong cả hai trường hợp, một khi bạn làm xong, tiếp tục bằng:\n"
-"\n"
-"  git rebase --continue\n"
+msgid "file to read from"
+msgstr "tập tin để đọc dữ liệu từ đó"
 
-#: sequencer.c:1225
-msgid "'prepare-commit-msg' hook failed"
-msgstr "móc “prepare-commit-msg” bị lỗi"
+msgid "git for-each-ref [<options>] [<pattern>]"
+msgstr "git for-each-ref [<các tùy chọn>] [<mẫu>]"
 
-#: sequencer.c:1231
-msgid ""
-"Your name and email address were configured automatically based\n"
-"on your username and hostname. Please check that they are accurate.\n"
-"You can suppress this message by setting them explicitly. Run the\n"
-"following command and follow the instructions in your editor to edit\n"
-"your configuration file:\n"
-"\n"
-"    git config --global --edit\n"
-"\n"
-"After doing this, you may fix the identity used for this commit with:\n"
-"\n"
-"    git commit --amend --reset-author\n"
+msgid "git for-each-ref [--points-at <object>]"
+msgstr "git for-each-ref [--points-at <đối tượng>]"
+
+msgid "git for-each-ref [--merged [<commit>]] [--no-merged [<commit>]]"
 msgstr ""
-"Tên và địa chỉ thư điện tử của bạn được cấu hình một cách tự động trên cơ "
-"sở\n"
-"tài khoản và địa chỉ máy chủ của bạn. Xin hãy kiểm tra xem chúng có chính "
-"xác không.\n"
-"Bạn có thể chặn những thông báo kiểu này bằng cách cài đặt các thông tin "
-"trên\n"
-"một cách rõ ràng. Chạy lệnh sau đây là theo các hướng dẫn trong bộ soạn "
-"thảo\n"
-"để chỉnh sửa tập tin cấu hình của mình:\n"
-"\n"
-"    git config --global --edit\n"
-"\n"
-"Sau khi thực hiện xong, bạn có thể sửa chữa định danh được sử dụng cho\n"
-"lần chuyển giao này với lệnh:\n"
-"\n"
-"    git commit --amend --reset-author\n"
+"git for-each-ref [--merged [<lần-chuyển-giao>]] [--no-merged [<lần-chuyển-"
+"giao>]]"
 
-#: sequencer.c:1244
-msgid ""
-"Your name and email address were configured automatically based\n"
-"on your username and hostname. Please check that they are accurate.\n"
-"You can suppress this message by setting them explicitly:\n"
-"\n"
-"    git config --global user.name \"Your Name\"\n"
-"    git config --global user.email you@example.com\n"
-"\n"
-"After doing this, you may fix the identity used for this commit with:\n"
-"\n"
-"    git commit --amend --reset-author\n"
+msgid "git for-each-ref [--contains [<commit>]] [--no-contains [<commit>]]"
 msgstr ""
-"Tên và địa chỉ thư điện tử của bạn được cấu hình một cách tự động trên cơ "
-"sở\n"
-"tài khoản và địa chỉ máy chủ của bạn. Xin hãy kiểm tra xem chúng có chính "
-"xác không.\n"
-"Bạn có thể chặn những thông báo kiểu này bằng cách cài đặt các thông tin "
-"trên một cách rõ ràng:\n"
-"\n"
-"    git config --global user.name \"Tên của bạn\"\n"
-"    git config --global user.email you@example.com\n"
-"\n"
-"Sau khi thực hiện xong, bạn có thể sửa chữa định danh được sử dụng cho lần "
-"chuyển giao này với lệnh:\n"
-"\n"
-"    git commit --amend --reset-author\n"
+"git for-each-ref [--contains [<lần-chuyển-giao>]] [--no-contains [<lần-"
+"chuyển-giao>]]"
 
-#: sequencer.c:1287
-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"
+msgid "quote placeholders suitably for shells"
+msgstr "trích dẫn để phù hợp cho hệ vỏ (shell)"
 
-#: sequencer.c:1289
-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"
+msgid "quote placeholders suitably for perl"
+msgstr "trích dẫn để phù hợp cho perl"
 
-#: sequencer.c:1336
-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"
+msgid "quote placeholders suitably for python"
+msgstr "trích dẫn để phù hợp cho python"
+
+msgid "quote placeholders suitably for Tcl"
+msgstr "trích dẫn để phù hợp cho Tcl"
+
+msgid "show only <n> matched refs"
+msgstr "hiển thị chỉ <n> tham chiếu khớp"
+
+msgid "respect format colors"
+msgstr "các màu định dạng lưu tâm"
+
+msgid "print only refs which points at the given object"
+msgstr "chỉ hiển thị các tham chiếu mà nó chỉ đến đối tượng đã cho"
+
+msgid "print only refs that are merged"
+msgstr "chỉ hiển thị những tham chiếu mà nó được hòa trộn"
+
+msgid "print only refs that are not merged"
+msgstr "chỉ hiển thị những tham chiếu mà nó không được hòa trộn"
 
-#: sequencer.c:1338
-msgid "detached HEAD"
-msgstr "đã rời khỏi HEAD"
+msgid "print only refs which contain the commit"
+msgstr "chỉ hiển thị những tham chiếu mà nó chứa lần chuyển giao"
 
-#: sequencer.c:1342
-msgid " (root-commit)"
-msgstr " (root-commit)"
+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"
 
-#: sequencer.c:1363
-msgid "could not parse HEAD"
-msgstr "không thể phân tích HEAD"
+msgid "git for-each-repo --config=<config> <command-args>"
+msgstr "git for-each-repo --config=<config> <command-args>"
 
-#: sequencer.c:1365
-#, c-format
-msgid "HEAD %s is not a commit!"
-msgstr "HEAD %s không phải là một lần chuyển giao!"
+msgid "config"
+msgstr "config"
 
-#: sequencer.c:1369 sequencer.c:1447 builtin/commit.c:1707
-msgid "could not parse HEAD commit"
-msgstr "không thể phân tích commit (lần chuyển giao) HEAD"
+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ữ"
 
-#: sequencer.c:1425 sequencer.c:2310
-msgid "unable to parse commit author"
-msgstr "không thể phân tích tác giả của lần chuyển giao"
+msgid "missing --config=<config>"
+msgstr "thiếu --config=<config>"
 
-#: sequencer.c:1436 builtin/am.c:1644 builtin/merge.c:710
-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"
+msgid "unknown"
+msgstr "không hiểu"
 
-#: sequencer.c:1469 sequencer.c:1589
+#. TRANSLATORS: e.g. error in tree 01bfda: <more explanation>
 #, c-format
-msgid "unable to read commit message from '%s'"
-msgstr "không thể đọc phần chú thích (message) từ “%s”"
+msgid "error in %s %s: %s"
+msgstr "lỗi trong %s %s: %s"
 
-#: sequencer.c:1500 sequencer.c:1532
+#. TRANSLATORS: e.g. warning in tree 01bfda: <more explanation>
 #, c-format
-msgid "invalid author identity '%s'"
-msgstr "định danh tác giả không hợp lệ “%s”"
+msgid "warning in %s %s: %s"
+msgstr "có cảnh báo trong %s %s: %s"
 
-#: sequencer.c:1506
-msgid "corrupt author: missing date information"
-msgstr "tác giả sai hỏng: thiếu thông tin ngày tháng"
+#, c-format
+msgid "broken link from %7s %s"
+msgstr "liên kết gãy từ %7s %s"
 
-#: sequencer.c:1545 builtin/am.c:1671 builtin/commit.c:1821 builtin/merge.c:921
-#: builtin/merge.c:946 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"
+msgid "wrong object type in link"
+msgstr "kiểu đối tượng sai trong liên kết"
 
-#: sequencer.c:1572 sequencer.c:4496 t/helper/test-fast-rebase.c:199
-#: t/helper/test-fast-rebase.c:217
 #, c-format
-msgid "could not update %s"
-msgstr "không thể cập nhật %s"
+msgid ""
+"broken link from %7s %s\n"
+"              to %7s %s"
+msgstr ""
+"liên kết gãy từ %7s %s \n"
+"              tới %7s %s"
 
-#: sequencer.c:1621
-#, c-format
-msgid "could not parse commit %s"
-msgstr "không thể phân tích lần chuyển giao %s"
+msgid "Checking connectivity"
+msgstr "Đang kiểm tra kết nối"
 
-#: sequencer.c:1626
 #, 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”"
+msgid "missing %s %s"
+msgstr "thiếu %s %s"
 
-#: sequencer.c:1709 sequencer.c:1990
 #, c-format
-msgid "unknown command: %d"
-msgstr "không hiểu câu lệnh %d"
-
-#: sequencer.c:1751
-msgid "This is the 1st commit message:"
-msgstr "Đây là chú thích cho lần chuyển giao thứ nhất:"
+msgid "unreachable %s %s"
+msgstr "không tiếp cận được %s %s"
 
-#: sequencer.c:1752
 #, c-format
-msgid "This is the commit message #%d:"
-msgstr "Đây là chú thích cho lần chuyển giao thứ #%d:"
+msgid "dangling %s %s"
+msgstr "dangling %s %s"
 
-#: sequencer.c:1753
-msgid "The 1st commit message will be skipped:"
-msgstr "Chú thích cho lần chuyển giao thứ nhất sẽ bị bỏ qua:"
+msgid "could not create lost-found"
+msgstr "không thể tạo lost-found"
 
-#: sequencer.c:1754
 #, 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:"
+msgid "could not write '%s'"
+msgstr "không thể ghi “%s”"
 
-#: sequencer.c:1755
 #, c-format
-msgid "This is a combination of %d commits."
-msgstr "Đây là tổ hợp của %d lần chuyển giao."
+msgid "could not finish '%s'"
+msgstr "không thể hoàn thành “%s”"
 
-#: sequencer.c:1902 sequencer.c:1959
 #, c-format
-msgid "cannot write '%s'"
-msgstr "không thể ghi “%s”"
+msgid "Checking %s"
+msgstr "Đang kiểm tra %s"
 
-#: sequencer.c:1949
-msgid "need a HEAD to fixup"
-msgstr "cần một HEAD để sửa"
+#, c-format
+msgid "Checking connectivity (%d objects)"
+msgstr "Đang kiểm tra kết nối (%d đối tượng)"
 
-#: sequencer.c:1951 sequencer.c:3592
-msgid "could not read HEAD"
-msgstr "không thể đọc HEAD"
+#, c-format
+msgid "Checking %s %s"
+msgstr "Đang kiểm tra %s %s"
 
-#: sequencer.c:1953
-msgid "could not read HEAD's commit message"
-msgstr "không thể đọc phần chú thích (message) của HEAD"
+msgid "broken links"
+msgstr "các liên kết bị gẫy"
 
-#: sequencer.c:1977
 #, 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:2087
-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."
+msgid "root %s"
+msgstr "gốc %s"
 
-#: sequencer.c:2094
-msgid "cannot fixup root commit"
-msgstr "không thể sửa chữa lần chuyển giao gốc"
+#, c-format
+msgid "tagged %s %s (%s) in %s"
+msgstr "đã đánh thẻ %s %s (%s) trong %s"
 
-#: sequencer.c:2113
 #, 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."
+msgid "%s: object corrupt or missing"
+msgstr "%s: đối tượng thiếu hay hỏng"
 
-#: sequencer.c:2121 sequencer.c:2129
 #, c-format
-msgid "commit %s does not have parent %d"
-msgstr "lần chuyển giao %s không có cha mẹ %d"
+msgid "%s: invalid reflog entry %s"
+msgstr "%s: mục reflog không hợp lệ %s"
 
-#: sequencer.c:2135
 #, c-format
-msgid "cannot get commit message for %s"
-msgstr "không thể lấy ghi chú lần chuyển giao cho %s"
+msgid "Checking reflog %s->%s"
+msgstr "Đang kiểm tra việc đổi tên của “%s” thành “%s”"
 
-#. TRANSLATORS: The first %s will be a "todo" command like
-#. "revert" or "pick", the second %s a SHA1.
-#: sequencer.c:2154
 #, 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"
+msgid "%s: invalid sha1 pointer %s"
+msgstr "%s: con trỏ sha1 không hợp lệ %s"
 
-#: sequencer.c:2220
 #, c-format
-msgid "could not rename '%s' to '%s'"
-msgstr "không thể đổi tên “%s” thành “%s”"
+msgid "%s: not a commit"
+msgstr "%s: không phải là một lần chuyển giao"
+
+msgid "notice: No default references"
+msgstr "cảnh báo: Không có các tham chiếu mặc định"
 
-#: sequencer.c:2280
 #, c-format
-msgid "could not revert %s... %s"
-msgstr "không thể hoàn nguyên %s… %s"
+msgid "%s: hash-path mismatch, found at: %s"
+msgstr "%s: đường dẫn mã băm không khớp, tìm thấy tại: %s"
 
-#: sequencer.c:2281
 #, c-format
-msgid "could not apply %s... %s"
-msgstr "không thể áp dụng miếng vá %s… %s"
+msgid "%s: object corrupt or missing: %s"
+msgstr "%s: thiếu đối tượng hoặc hỏng: %s"
 
-#: sequencer.c:2302
 #, 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"
+msgid "%s: object is of unknown type '%s': %s"
+msgstr "%s: đối tượng có kiểu chưa biết “%s”: %s"
 
-#: sequencer.c:2360
 #, c-format
-msgid "git %s: failed to read the index"
-msgstr "git %s: gặp lỗi đọc bảng mục lục"
+msgid "%s: object could not be parsed: %s"
+msgstr "%s: không thể phân tích cú đối tượng: %s"
 
-#: sequencer.c:2368
 #, 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"
+msgid "bad sha1 file: %s"
+msgstr "tập tin sha1 sai: %s"
+
+msgid "Checking object directory"
+msgstr "Đang kiểm tra thư mục đối tượng"
+
+msgid "Checking object directories"
+msgstr "Đang kiểm tra các thư mục đối tượng"
 
-#: sequencer.c:2448
 #, c-format
-msgid "%s does not accept arguments: '%s'"
-msgstr "%s không nhận các đối số: “%s”"
+msgid "Checking %s link"
+msgstr "Đang lấy liên kết %s"
 
-#: sequencer.c:2457
 #, c-format
-msgid "missing arguments for %s"
-msgstr "thiếu đối số cho %s"
+msgid "invalid %s"
+msgstr "%s không hợp lệ"
 
-#: sequencer.c:2500
 #, c-format
-msgid "could not parse '%s'"
-msgstr "không thể phân tích cú pháp “%s”"
+msgid "%s points to something strange (%s)"
+msgstr "%s chỉ đến thứ gì đó xa lạ (%s)"
 
-#: sequencer.c:2561
 #, c-format
-msgid "invalid line %d: %.*s"
-msgstr "dòng không hợp lệ %d: %.*s"
+msgid "%s: detached HEAD points at nothing"
+msgstr "%s: HEAD đã tách rời không chỉ vào đâu cả"
 
-#: sequencer.c:2572
 #, 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"
+msgid "notice: %s points to an unborn branch (%s)"
+msgstr "chú ý: %s chỉ đến một nhánh chưa sinh (%s)"
+
+msgid "Checking cache tree"
+msgstr "Đang kiểm tra cây nhớ tạm"
 
-#: sequencer.c:2620 builtin/rebase.c:185
 #, c-format
-msgid "could not read '%s'."
-msgstr "không thể đọc “%s”."
+msgid "%s: invalid sha1 pointer in cache-tree"
+msgstr "%s: con trỏ sha1 không hợp lệ trong cache-tree"
 
-#: sequencer.c:2658
-msgid "cancelling a cherry picking in progress"
-msgstr "đang hủy bỏ thao tác cherry pick đang thực hiện"
+msgid "non-tree in cache-tree"
+msgstr "non-tree trong cache-tree"
 
-#: sequencer.c:2667
-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"
+msgid "git fsck [<options>] [<object>...]"
+msgstr "git fsck [<các tùy chọn>] [<đối-tượng>…]"
 
-#: sequencer.c:2707
-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”."
+msgid "show unreachable objects"
+msgstr "hiển thị các đối tượng không thể đọc được"
 
-#: sequencer.c:2709
-#, c-format
-msgid "unusable instruction sheet: '%s'"
-msgstr "bảng chỉ thị không thể dùng được: %s"
+msgid "show dangling objects"
+msgstr "hiển thị các đối tượng không được quản lý"
 
-#: sequencer.c:2714
-msgid "no commits parsed."
-msgstr "không có lần chuyển giao nào được phân tích."
+msgid "report tags"
+msgstr "báo cáo các thẻ"
 
-#: sequencer.c:2725
-msgid "cannot cherry-pick during a revert."
-msgstr "không thể cherry-pick trong khi hoàn nguyên."
+msgid "report root nodes"
+msgstr "báo cáo node gốc"
 
-#: sequencer.c:2727
-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."
+msgid "make index objects head nodes"
+msgstr "tạo “index objects head nodes”"
 
-#: sequencer.c:2914
-msgid "unusable squash-onto"
-msgstr "squash-onto không dùng được"
+msgid "make reflogs head nodes (default)"
+msgstr "tạo “reflogs head nodes” (mặc định)"
 
-#: sequencer.c:2934
-#, c-format
-msgid "malformed options sheet: '%s'"
-msgstr "bảng tùy chọn dị hình: “%s”"
+msgid "also consider packs and alternate objects"
+msgstr "cũng cân nhắc đến các đối tượng gói và thay thế"
 
-#: sequencer.c:3029 sequencer.c:4875
-msgid "empty commit set passed"
-msgstr "lần chuyển giao trống rỗng đặt là hợp quy cách"
+msgid "check only connectivity"
+msgstr "chỉ kiểm tra kết nối"
 
-#: sequencer.c:3046
-msgid "revert is already in progress"
-msgstr "có thao tác hoàn nguyên đang được thực hiện"
+msgid "enable more strict checking"
+msgstr "cho phép kiểm tra hạn chế hơn"
 
-#: sequencer.c:3048
-#, c-format
-msgid "try \"git revert (--continue | %s--abort | --quit)\""
-msgstr "hãy thử \"git revert (--continue | %s--abort | --quit)\""
+msgid "write dangling objects in .git/lost-found"
+msgstr "ghi các đối tượng không được quản lý trong .git/lost-found"
 
-#: sequencer.c:3051
-msgid "cherry-pick is already in progress"
-msgstr "có thao tác “cherry-pick” đang được thực hiện"
+msgid "show progress"
+msgstr "hiển thị quá trình"
+
+msgid "show verbose names for reachable objects"
+msgstr "hiển thị tên chi tiết cho các đối tượng đọc được"
+
+msgid "Checking objects"
+msgstr "Đang kiểm tra các đối tượng"
 
-#: sequencer.c:3053
 #, c-format
-msgid "try \"git cherry-pick (--continue | %s--abort | --quit)\""
-msgstr "hãy thử \"git cherry-pick (--continue | %s--abort | --quit)\""
+msgid "%s: object missing"
+msgstr "%s: thiếu đối tượng"
 
-#: sequencer.c:3067
 #, c-format
-msgid "could not create sequencer directory '%s'"
-msgstr "không thể tạo thư mục xếp dãy “%s”"
+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”"
 
-#: sequencer.c:3082
-msgid "could not lock HEAD"
-msgstr "không thể khóa HEAD"
+msgid "git fsmonitor--daemon start [<options>]"
+msgstr "git fsmonitor--daemon start [<các tùy chọn>]"
 
-#: sequencer.c:3142 sequencer.c:4585
-msgid "no cherry-pick or revert in progress"
-msgstr "không cherry-pick hay hoàn nguyên trong tiến trình"
+msgid "git fsmonitor--daemon run [<options>]"
+msgstr "git fsmonitor--daemon run [<các tùy chọn>]"
 
-#: sequencer.c:3144 sequencer.c:3155
-msgid "cannot resolve HEAD"
-msgstr "không thể phân giải HEAD"
+msgid "git fsmonitor--daemon stop"
+msgstr "git fsmonitor--daemon stop"
 
-#: sequencer.c:3146 sequencer.c:3190
-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"
+msgid "git fsmonitor--daemon status"
+msgstr "git fsmonitor--daemon status"
 
-#: sequencer.c:3176 builtin/fetch.c:1030 builtin/fetch.c:1457
-#: builtin/grep.c:774
 #, c-format
-msgid "cannot open '%s'"
-msgstr "không mở được “%s”"
+msgid "value of '%s' out of range: %d"
+msgstr "siá trị '%s' ngoài phạm vi cho phép: %d"
 
-#: sequencer.c:3178
 #, c-format
-msgid "cannot read '%s': %s"
-msgstr "không thể đọc “%s”: %s"
-
-#: sequencer.c:3179
-msgid "unexpected end of file"
-msgstr "gặp kết thúc tập tin đột xuất"
+msgid "value of '%s' not bool or int: %d"
+msgstr "giá trị của '%s' không là bool hoặc int: %d"
 
-#: sequencer.c:3185
 #, 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"
+msgid "fsmonitor-daemon is watching '%s'\n"
+msgstr "fsmonitor-daemon đang theo dõi '%s'\n"
 
-#: sequencer.c:3196
-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!"
+#, c-format
+msgid "fsmonitor-daemon is not watching '%s'\n"
+msgstr "fsmonitor-daemon hiện không theo dõi '%s'\n"
 
-#: sequencer.c:3237
-msgid "no revert in progress"
-msgstr "không có tiến trình hoàn nguyên nào"
+#, c-format
+msgid "could not create fsmonitor cookie '%s'"
+msgstr "không thể tạo fsmonitor cookie “%s”"
 
-#: sequencer.c:3246
-msgid "no cherry-pick in progress"
-msgstr "không có cherry-pick đang được thực hiện"
+#, c-format
+msgid "fsmonitor: cookie_result '%d' != SEEN"
+msgstr "fsmonitor: cookie_result '%d' != SEEN"
 
-#: sequencer.c:3256
-msgid "failed to skip the commit"
-msgstr "gặp lỗi khi bỏ qua đối tượng chuyển giao"
+#, c-format
+msgid "could not start IPC thread pool on '%s'"
+msgstr "không thể khởi chạy bể tiến trình IPC trêm “%s”"
 
-#: sequencer.c:3263
-msgid "there is nothing to skip"
-msgstr "ở đây không có gì để mà bỏ qua cả"
+msgid "could not start fsmonitor listener thread"
+msgstr "không thể lấy thông tin thống kê về tuyến trình lắng nghe fsmonitor"
 
-#: sequencer.c:3266
-#, c-format
-msgid ""
-"have you committed already?\n"
-"try \"git %s --continue\""
+msgid "could not start fsmonitor health thread"
 msgstr ""
-"bạn đã sẵn sàng chuyển giao chưa?\n"
-"thử \"git %s --continue\""
+"không thể lấy thông tin thống kê về tuyến trình theo dõi sức khỏe fsmonitor"
 
-#: sequencer.c:3428 sequencer.c:4476
-msgid "cannot read HEAD"
-msgstr "không thể đọc HEAD"
+msgid "could not initialize listener thread"
+msgstr "không thể khởi tạo tuyến trình lắng nghe"
 
-#: sequencer.c:3445
-#, c-format
-msgid "unable to copy '%s' to '%s'"
-msgstr "không thể chép “%s” sang “%s”"
+msgid "could not initialize health thread"
+msgstr "không thể khởi tạo tuyến trình sức "
 
-#: sequencer.c:3453
 #, c-format
-msgid ""
-"You can amend the commit now, with\n"
-"\n"
-"  git commit --amend %s\n"
-"\n"
-"Once you are satisfied with your changes, run\n"
-"\n"
-"  git rebase --continue\n"
-msgstr ""
-"Bạn có thể tu bổ lần chuyển giao ngay bây giờ bằng:\n"
-"\n"
-"  git commit --amend %s\n"
-"\n"
-"Một khi đã hài lòng với những thay đổi của mình, thì chạy:\n"
-"\n"
-"  git rebase --continue\n"
+msgid "could not cd home '%s'"
+msgstr "không thể chuyển đến thư mục cá nhân “%s”"
 
-#: sequencer.c:3463
 #, c-format
-msgid "Could not apply %s... %.*s"
-msgstr "Không thể áp dụng %s… %.*s"
+msgid "fsmonitor--daemon is already running '%s'"
+msgstr "fsmonitor--daemon hiện đang chạy rồi '%s'"
 
-#: sequencer.c:3470
 #, c-format
-msgid "Could not merge %.*s"
-msgstr "Không hòa trộn %.*s"
+msgid "running fsmonitor-daemon in '%s'\n"
+msgstr "chạy fsmonitor-daemon trong '%s'\n"
 
-#: sequencer.c:3484 sequencer.c:3488 builtin/difftool.c:633
 #, c-format
-msgid "could not copy '%s' to '%s'"
-msgstr "không thể chép “%s” sang “%s”"
+msgid "starting fsmonitor-daemon in '%s'\n"
+msgstr "đang khởi chạy fsmonitor-daemon trong “%s”\n"
 
-#: sequencer.c:3499
-#, c-format
-msgid "Executing: %s\n"
-msgstr "Đang thực thi: %s\n"
+msgid "daemon failed to start"
+msgstr "gặp lỗi khi khởi chạy dịch vụ chạy ngầm"
 
-#: sequencer.c:3510
-#, c-format
-msgid ""
-"execution failed: %s\n"
-"%sYou can fix the problem, and then run\n"
-"\n"
-"  git rebase --continue\n"
-"\n"
-msgstr ""
-"thực thi gặp lỗi: %s\n"
-"%sBạn có thể sửa các trục trặc, và sau đó chạy lệnh\n"
-"\n"
-"  git rebase --continue\n"
-"\n"
+msgid "daemon not online yet"
+msgstr "ứng dụng chạy ngầm hiện chưa trực tuyến"
 
-#: sequencer.c:3516
-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"
+msgid "daemon terminated"
+msgstr "dịch vụ chạy ngầm đã bị dừng"
 
-#: sequencer.c:3522
-#, c-format
-msgid ""
-"execution succeeded: %s\n"
-"but left changes to the index and/or the working tree\n"
-"Commit or stash your changes, and then run\n"
-"\n"
-"  git rebase --continue\n"
-"\n"
-msgstr ""
-"thực thi thành công: %s\n"
-"nhưng còn các thay đổi trong mục lục và/hoặc cây làm việc\n"
-"Chuyển giao hay tạm cất các thay đổi này đi, rồi chạy\n"
-"\n"
-"  git rebase --continue\n"
-"\n"
+msgid "detach from console"
+msgstr "tách rời khỏi bảng điều khiển"
 
-#: sequencer.c:3582
-#, c-format
-msgid "illegal label name: '%.*s'"
-msgstr "tên nhãn dị hình: “%.*s”"
+msgid "use <n> ipc worker threads"
+msgstr "dùng <n> tuyến trình làm việc ipc"
 
-#: sequencer.c:3655
-msgid "writing fake root commit"
-msgstr "ghi lần chuyển giao gốc giả"
+msgid "max seconds to wait for background daemon startup"
+msgstr "số giây chờ tối đa khi khởi động dịch vụ chạy nền"
 
-#: sequencer.c:3660
-msgid "writing squash-onto"
-msgstr "đang ghi squash-onto"
+#, c-format
+msgid "invalid 'ipc-threads' value (%d)"
+msgstr "giá trị 'ipc-threads' không hợp lệ (%d)"
 
-#: sequencer.c:3739
 #, c-format
-msgid "could not resolve '%s'"
-msgstr "không thể phân giải “%s”"
+msgid "Unhandled subcommand '%s'"
+msgstr "Lệnh con không được xử lý '%s'"
 
-#: sequencer.c:3771
-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"
+msgid "fsmonitor--daemon not supported on this platform"
+msgstr "fsmonitor--daemon không hỗ trợ trên nền tảng này"
 
-#: sequencer.c:3793
-#, c-format
-msgid "unable to parse '%.*s'"
-msgstr "không thể phân tích “%.*s”"
+msgid "git gc [<options>]"
+msgstr "git gc [<các tùy chọn>]"
 
-#: sequencer.c:3802
 #, c-format
-msgid "nothing to merge: '%.*s'"
-msgstr "chẳng có gì để hòa trộn: “%.*s”"
+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"
 
-#: sequencer.c:3814
-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]"
+#, c-format
+msgid "failed to parse '%s' value '%s'"
+msgstr "gặp lỗi khi phân tích “%s” giá trị “%s”"
 
-#: sequencer.c:3869
 #, 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”"
+msgid "cannot stat '%s'"
+msgstr "không thể lấy thông tin thống kê về “%s”"
 
-#: sequencer.c:4013
 #, c-format
-msgid "could not even attempt to merge '%.*s'"
-msgstr "không thể ngay cả khi thử hòa trộn “%.*s”"
+msgid ""
+"The last gc run reported the following. Please correct the root cause\n"
+"and remove %s\n"
+"Automatic cleanup will not be performed until the file is removed.\n"
+"\n"
+"%s"
+msgstr ""
+"Lần chạy gc cuối đã báo cáo các vấn đề sau đây. Vui lòng sửa nguyên nhân\n"
+"tận gốc và xóa bỏ %s.\n"
+"Việc tự động dọn dẹp sẽ không thực thi cho đến khi tập tin được xóa bỏ.\n"
+"\n"
+"%s"
 
-#: sequencer.c:4029
-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"
+msgid "prune unreferenced objects"
+msgstr "xóa bỏ các đối tượng không được tham chiếu"
 
-#: sequencer.c:4110
-msgid "Cannot autostash"
-msgstr "Không thể autostash"
+msgid "pack unreferenced objects separately"
+msgstr "đóng gói riêng các đối tượng không được tham chiếu"
 
-#: sequencer.c:4113
-#, c-format
-msgid "Unexpected stash response: '%s'"
-msgstr "Gặp đáp ứng stash không cần: “%s”"
+msgid "be more thorough (increased runtime)"
+msgstr "cẩn thận hơn nữa (tăng thời gian chạy)"
 
-#: sequencer.c:4119
-#, c-format
-msgid "Could not create directory for '%s'"
-msgstr "Không thể tạo thư mục cho “%s”"
+msgid "enable auto-gc mode"
+msgstr "bật chế độ auto-gc"
 
-#: sequencer.c:4122
-#, c-format
-msgid "Created autostash: %s\n"
-msgstr "Đã tạo autostash: %s\n"
+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"
 
-#: sequencer.c:4124
-msgid "could not reset --hard"
-msgstr "không thể reset --hard"
+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"
 
-#: sequencer.c:4148
 #, c-format
-msgid "Applied autostash.\n"
-msgstr "Đã áp dụng autostash.\n"
+msgid "failed to parse gc.logExpiry value %s"
+msgstr "gặp lỗi khi phân tích giá trị gc.logExpiry %s"
 
-#: sequencer.c:4160
 #, c-format
-msgid "cannot store %s"
-msgstr "không thử lưu “%s”"
+msgid "failed to parse prune expiry value %s"
+msgstr "gặp lỗi khi phân tích giá trị prune %s"
 
-#: sequencer.c:4163
 #, c-format
-msgid ""
-"%s\n"
-"Your changes are safe in the stash.\n"
-"You can run \"git stash pop\" or \"git stash drop\" at any time.\n"
+msgid "Auto packing the repository in background for optimum performance.\n"
 msgstr ""
-"%s\n"
-"Các thay đổi của bạn an toàn trong stash (tạm cất đi).\n"
-"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:4168
-msgid "Applying autostash resulted in conflicts."
-msgstr "Áp dụng autostash có hiệu quả trong các xung đột."
-
-#: sequencer.c:4169
-msgid "Autostash exists; creating a new stash entry."
-msgstr "Autostash đã sẵn có; nên tạo một mục stash mới."
+"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"
 
-#: sequencer.c:4225
-msgid "could not detach HEAD"
-msgstr "không thể tách rời HEAD"
+#, 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"
 
-#: sequencer.c:4240
 #, c-format
-msgid "Stopped at HEAD\n"
-msgstr "Dừng lại ở HEAD\n"
+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"
 
-#: sequencer.c:4242
 #, c-format
-msgid "Stopped at %s\n"
-msgstr "Dừng lại ở %s\n"
+msgid ""
+"gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
+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ế)"
 
-#: sequencer.c:4274
-#, c-format
 msgid ""
-"Could not execute the todo command\n"
-"\n"
-"    %.*s\n"
-"It has been rescheduled; To edit the command before continuing, please\n"
-"edit the todo list first:\n"
-"\n"
-"    git rebase --edit-todo\n"
-"    git rebase --continue\n"
+"There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
-"Không thể thực thi lệnh todo\n"
-"\n"
-"    %.*s\n"
-"Nó đã được lên lịch lại: Để sửa lệnh trước khi tiếp tục, vui lòng\n"
-"sửa danh sách todo trước:\n"
-"\n"
-"    git rebase --edit-todo\n"
-"    git rebase --continue\n"
+"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."
 
-#: sequencer.c:4320
-#, c-format
-msgid "Rebasing (%d/%d)%s"
-msgstr "Đang cải tổ (%d/%d)%s"
+msgid ""
+"git maintenance run [--auto] [--[no-]quiet] [--task=<task>] [--schedule]"
+msgstr ""
+"git maintenance run [--auto] [--[no-]quiet] [--task=<nhiệm vụ>] [--schedule]"
 
-#: sequencer.c:4366
-#, c-format
-msgid "Stopped at %s...  %.*s\n"
-msgstr "Dừng lại ở %s…  %.*s\n"
+msgid "--no-schedule is not allowed"
+msgstr "--no-schedule không được phép"
 
-#: sequencer.c:4436
 #, c-format
-msgid "unknown command %d"
-msgstr "không hiểu câu lệnh %d"
-
-#: sequencer.c:4484
-msgid "could not read orig-head"
-msgstr "không thể đọc orig-head"
+msgid "unrecognized --schedule argument '%s'"
+msgstr "đối số --schedule không được thừa nhận %s"
 
-#: sequencer.c:4489
-msgid "could not read 'onto'"
-msgstr "không thể đọc “onto”."
+msgid "failed to write commit-graph"
+msgstr "gặp lỗi khi ghi đồ thị các lần chuyển giao"
 
-#: sequencer.c:4503
-#, c-format
-msgid "could not update HEAD to %s"
-msgstr "không thể cập nhật HEAD thành %s"
+msgid "failed to prefetch remotes"
+msgstr "gặp lỗi khi tải trước các máy chủ"
 
-#: sequencer.c:4563
-#, 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"
+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”"
 
-#: sequencer.c:4615
-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."
+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”"
 
-#: sequencer.c:4624
-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"
+msgid "failed to write multi-pack-index"
+msgstr "gặp lỗi khi ghi multi-pack-index"
 
-#: sequencer.c:4626
-#, c-format
-msgid "invalid file: '%s'"
-msgstr "tập tin không hợp lệ: “%s”"
+msgid "'git multi-pack-index expire' failed"
+msgstr "gặp lỗi khi chạy “git multi-pack-index expire”"
 
-#: sequencer.c:4628
-#, c-format
-msgid "invalid contents: '%s'"
-msgstr "nội dung không hợp lệ: “%s”"
+msgid "'git multi-pack-index repack' failed"
+msgstr "gặp lỗi khi chạy “git multi-pack-index repack”"
 
-#: sequencer.c:4631
 msgid ""
-"\n"
-"You have uncommitted changes in your working tree. Please, commit them\n"
-"first and then run 'git rebase --continue' again."
-msgstr ""
-"\n"
-"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."
+"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"
 
-#: sequencer.c:4667 sequencer.c:4706
 #, c-format
-msgid "could not write file: '%s'"
-msgstr "không thể ghi tập tin: “%s”"
-
-#: sequencer.c:4722
-msgid "could not remove CHERRY_PICK_HEAD"
-msgstr "không thể xóa bỏ CHERRY_PICK_HEAD"
+msgid "lock file '%s' exists, skipping maintenance"
+msgstr "đã có khóa của tập tin “%s”, bỏ qua bảo trì"
 
-#: sequencer.c:4732
-msgid "could not commit staged changes."
-msgstr "không thể chuyển giao các thay đổi đã đưa lên bệ phóng."
+#, c-format
+msgid "task '%s' failed"
+msgstr "gặp lỗi khi thực hiện nhiệm vụ “%s”"
 
-#: sequencer.c:4852
 #, c-format
-msgid "%s: can't cherry-pick a %s"
-msgstr "%s: không thể cherry-pick một %s"
+msgid "'%s' is not a valid task"
+msgstr "“%s” không phải một nhiệm vụ hợp lệ"
 
-#: sequencer.c:4856
 #, c-format
-msgid "%s: bad revision"
-msgstr "%s: điểm xét duyệt sai"
+msgid "task '%s' cannot be selected multiple times"
+msgstr "nhiệm vụ “%s” không được chọn nhiều lần"
 
-#: sequencer.c:4891
-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"
+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"
 
-#: sequencer.c:5162 sequencer.c:5391
-#, c-format
-msgid "skipped previously applied commit %s"
-msgstr "bỏ qua lần chuyển giao được áp dụng kế trước %s"
+msgid "frequency"
+msgstr "tần số"
 
-#: sequencer.c:5232 sequencer.c:5407
-msgid "use --reapply-cherry-picks to include skipped commits"
-msgstr ""
-"dùng --reapply-cherry-picks để bao gồm các lần chuyển giao đã bị bỏ qua"
+msgid "run tasks based on frequency"
+msgstr "chạy nhiệm vụ dựa trên tần suất"
 
-#: sequencer.c:5378
-msgid "make_script: unhandled options"
-msgstr "make_script: các tùy chọn được không xử lý"
+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"
 
-#: sequencer.c:5381
-msgid "make_script: error preparing revisions"
-msgstr "make_script: lỗi chuẩn bị điểm hiệu chỉnh"
+msgid "task"
+msgstr "tác vụ"
 
-#: sequencer.c:5639 sequencer.c:5656
-msgid "nothing to do"
-msgstr "không có gì để làm"
+msgid "run a specific task"
+msgstr "chạy một nhiệm vụ cụ thể"
 
-#: sequencer.c:5675
-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"
+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>"
 
-#: sequencer.c:5775
-msgid "the script was already rearranged."
-msgstr "văn lệnh đã sẵn được sắp đặt rồi."
+msgid "failed to run 'git config'"
+msgstr "gặp lỗi khi chạy “git config”"
 
-#: setup.c:135
 #, c-format
-msgid "'%s' is outside repository at '%s'"
-msgstr "“%s” ngoài một kho chứa tại “%s”"
+msgid "failed to expand path '%s'"
+msgstr "gặp lỗi khi khai triển đường dẫn “%s”"
 
-#: setup.c:187
-#, c-format
-msgid ""
-"%s: no such path in the working tree.\n"
-"Use 'git <command> -- <path>...' to specify paths that do not exist locally."
-msgstr ""
-"%s: không có đường dẫn nào như thế ở trong cây làm việc.\n"
-"Dùng “git <lệnh> -- <đường/dẫn>…” để chỉ định đường dẫn mà nó không tồn tại "
-"một cách nội bộ."
+msgid "failed to start launchctl"
+msgstr "gặp lỗi khi khởi chạy launchctl"
 
-#: setup.c:200
 #, c-format
-msgid ""
-"ambiguous argument '%s': unknown revision or path not in the working tree.\n"
-"Use '--' to separate paths from revisions, like this:\n"
-"'git <command> [<revision>...] -- [<file>...]'"
-msgstr ""
-"tham số chưa rõ ràng “%s”: chưa biết điểm xem xét hay đường dẫn không trong "
-"cây làm việc.\n"
-"Dùng “--” để ngăn cách các đường dẫn khỏi điểm xem xét, như thế này:\n"
-"“git <lệnh> [<điểm xem xét>…] -- [<tập tin>…]”"
+msgid "failed to create directories for '%s'"
+msgstr "gặp lỗi khi tạo thư mục cho \"%s\""
 
-#: setup.c:266
 #, c-format
-msgid "option '%s' must come before non-option arguments"
-msgstr "tùy chọn “%s” phải trước các đối số đầu tiên không có tùy chọn"
+msgid "failed to bootstrap service %s"
+msgstr "gặp lỗi khi mồi dịch vụ %s"
 
-#: setup.c:285
-#, c-format
-msgid ""
-"ambiguous argument '%s': both revision and filename\n"
-"Use '--' to separate paths from revisions, like this:\n"
-"'git <command> [<revision>...] -- [<file>...]'"
+msgid "failed to create temp xml file"
+msgstr "gặp lỗi khi tạo tập tin xml tạm thời"
+
+msgid "failed to start schtasks"
+msgstr "gặp lỗi khi lấy thông tin thống kê về schtasks"
+
+msgid "failed to run 'crontab -l'; your system might not support 'cron'"
 msgstr ""
-"tham số chưa rõ ràng “%s”: cả điểm xem xét và tên tập tin.\n"
-"Dùng “--” để ngăn cách các đường dẫn khỏi điểm xem xét, như thế này:\n"
-"“git <lệnh> [<điểm xem xét>…] -- [<tập tin>…]”"
+"gặp lỗi khi chạy “crontab -l”; hệ thống của bạn có thể không hỗ trợ “cron”"
 
-#: setup.c:421
-msgid "unable to set up work tree using invalid config"
-msgstr "không thể cài đặt thư mục làm việc sử dụng cấu hình không hợp lệ"
+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”"
 
-#: setup.c:425 builtin/rev-parse.c:895
-msgid "this operation must be run in a work tree"
-msgstr "thao tác này phải được thực hiện trong thư mục làm việc"
+msgid "failed to open stdin of 'crontab'"
+msgstr "gặp lỗi khi mở đầu vào tiêu chuẩn của “crontab”"
 
-#: setup.c:724
-#, c-format
-msgid "Expected git repo version <= %d, found %d"
-msgstr "Cần phiên bản kho git <= %d, nhưng lại nhận được %d"
+msgid "'crontab' died"
+msgstr "“crontab” đã chết"
 
-#: setup.c:732
-msgid "unknown repository extension found:"
-msgid_plural "unknown repository extensions found:"
-msgstr[0] "tìm thấy phần mở rộng kho chưa biết:"
+msgid "failed to start systemctl"
+msgstr "gặp lỗi khi khởi chạy systemctl"
 
-#: setup.c:746
-msgid "repo version is 0, but v1-only extension found:"
-msgid_plural "repo version is 0, but v1-only extensions found:"
-msgstr[0] "phiên bản kho là 0, nhưng lại tìm thấy phần mở rộng chỉ v1:"
+msgid "failed to run systemctl"
+msgstr "gặp lỗi khi chạy systemctl"
 
-#: setup.c:767
 #, c-format
-msgid "error opening '%s'"
-msgstr "gặp lỗi khi mở “%s”"
+msgid "failed to delete '%s'"
+msgstr "gặp lỗi khi xóa “%s”"
 
-#: setup.c:769
 #, c-format
-msgid "too large to be a .git file: '%s'"
-msgstr "tập tin .git là quá lớn: “%s”"
+msgid "failed to flush '%s'"
+msgstr "gặp lỗi khi đẩy dữ liệu “%s” lên đĩa"
 
-#: setup.c:771
 #, c-format
-msgid "error reading %s"
-msgstr "gặp lỗi khi đọc %s"
+msgid "unrecognized --scheduler argument '%s'"
+msgstr "đối số --scheduler không được thừa nhận “%s”"
+
+msgid "neither systemd timers nor crontab are available"
+msgstr "hoặc là bộ lập lịch systemd hoặc là crontab không sẵn có"
 
-#: setup.c:773
 #, c-format
-msgid "invalid gitfile format: %s"
-msgstr "định dạng tập tin git không hợp lệ: %s"
+msgid "%s scheduler is not available"
+msgstr "bộ lên lịch %s không sẵn có"
+
+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ì"
+
+msgid "git maintenance start [--scheduler=<scheduler>]"
+msgstr "git maintenance start [--scheduler=<bộ lên lịch>]"
+
+msgid "scheduler"
+msgstr "bộ lên lịch"
+
+msgid "scheduler to trigger git maintenance run"
+msgstr "bộ lên lịch để kích hoạt chạy chương trình bảo trì git"
+
+msgid "failed to add repo to global config"
+msgstr "gặp lỗi khi thêm cấu hình toàn cục"
+
+msgid "git maintenance <subcommand> [<options>]"
+msgstr "git maintenance run <lệnh_con> [<các tùy chọn>]"
 
-#: setup.c:775
 #, c-format
-msgid "no path in gitfile: %s"
-msgstr "không có đường dẫn trong tập tin git: %s"
+msgid "invalid subcommand: %s"
+msgstr "lện con không hợp lệ: %s"
+
+msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
+msgstr "git grep [<các tùy chọn>] [-e] <mẫu> [<rev>…] [[--] </đường/dẫn>…]"
 
-#: setup.c:777
 #, c-format
-msgid "not a git repository: %s"
-msgstr "không phải là kho git: %s"
+msgid "grep: failed to create thread: %s"
+msgstr "grep: gặp lỗi tạo tuyến (thread): %s"
 
-#: setup.c:879
 #, c-format
-msgid "'$%s' too big"
-msgstr "“$%s” quá lớn"
+msgid "invalid number of threads specified (%d) for %s"
+msgstr "số tuyến đã cho không hợp lệ (%d) cho %s"
 
-#: setup.c:893
+#. #-#-#-#-#  grep.c.po  #-#-#-#-#
+#. TRANSLATORS: %s is the configuration
+#. variable for tweaking threads, currently
+#. grep.threads
+#.
 #, c-format
-msgid "not a git repository: '%s'"
-msgstr "không phải là kho git: “%s”"
+msgid "no threads support, ignoring %s"
+msgstr "không hỗ trợ đa tuyến, bỏ qua %s"
 
-#: setup.c:922 setup.c:924 setup.c:955
 #, c-format
-msgid "cannot chdir to '%s'"
-msgstr "không thể chdir (chuyển đổi thư mục) sang “%s”"
-
-#: setup.c:927 setup.c:983 setup.c:993 setup.c:1032 setup.c:1040
-msgid "cannot come back to cwd"
-msgstr "không thể quay lại cwd"
+msgid "unable to read tree (%s)"
+msgstr "không thể đọc cây (%s)"
 
-#: setup.c:1054
 #, c-format
-msgid "failed to stat '%*s%s%s'"
-msgstr "gặp lỗi khi lấy thống kê về “%*s%s%s”"
-
-#: setup.c:1338
-msgid "Unable to read current working directory"
-msgstr "Không thể đọc thư mục làm việc hiện hành"
+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"
 
-#: setup.c:1347 setup.c:1353
 #, c-format
-msgid "cannot change to '%s'"
-msgstr "không thể chuyển sang “%s”"
+msgid "switch `%c' expects a numerical value"
+msgstr "chuyển đến “%c” cần một giá trị bằng số"
 
-#: setup.c:1358
-#, c-format
-msgid "not a git repository (or any of the parent directories): %s"
-msgstr "không phải là kho git (hoặc bất kỳ thư mục cha mẹ nào): %s"
+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"
 
-#: setup.c:1364
-#, c-format
-msgid ""
-"not a git repository (or any parent up to mount point %s)\n"
-"Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set)."
-msgstr ""
-"không phải là kho git (hay bất kỳ cha mẹ nào đến tận điểm gắn kết %s)\n"
-"Dừng tại biên của hệ thống tập tin (GIT_DISCOVERY_ACROSS_FILESYSTEM chưa "
-"đặt)."
+msgid "find in contents not managed by git"
+msgstr "tìm trong nội dung không được quản lý bởi git"
 
-#: setup.c:1374
-#, c-format
-msgid ""
-"unsafe repository ('%s' is owned by someone else)\n"
-"To add an exception for this directory, call:\n"
-"\n"
-"\tgit config --global --add safe.directory %s"
-msgstr ""
-"kho lưu trữ không an toàn ('%s' thuộc sở hữu của người khác)\n"
-"Để thêm ngoại lệ cho thư mục này, hãy gọi:\n"
-"\n"
-"\tgit config --global --add safe.directory %s"
+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"
 
-#: setup.c:1502
-#, c-format
-msgid ""
-"problem with core.sharedRepository filemode value (0%.3o).\n"
-"The owner of files must always have read and write permissions."
-msgstr ""
-"gặp vấn đề với giá trị chế độ tập tin core.sharedRepository (0%.3o).\n"
-"người sở hữu tập tin phải luôn có quyền đọc và ghi."
+msgid "ignore files specified via '.gitignore'"
+msgstr "các tập tin bị bỏ qua được chỉ định thông qua “.gitignore”"
 
-#: setup.c:1564
-msgid "fork failed"
-msgstr "gặp lỗi khi rẽ nhánh tiến trình"
+msgid "recursively search in each submodule"
+msgstr "tìm kiếm đệ quy trong từng mô-đun-con"
 
-#: setup.c:1569
-msgid "setsid failed"
-msgstr "setsid gặp lỗi"
+msgid "show non-matching lines"
+msgstr "hiển thị những dòng không khớp với mẫu"
 
-#: sparse-index.c:285
-#, c-format
-msgid "index entry is a directory, but not sparse (%08x)"
-msgstr "mục tin mục lục là một thư mục, nhưng không \"sparse\" (%08x)"
+msgid "case insensitive matching"
+msgstr "phân biệt HOA/thường"
 
-#: split-index.c:9
-msgid "cannot use split index with a sparse index"
-msgstr "không thể sử dụng bảng mục lục chia tách với một \"sparse index\""
+msgid "match patterns only at word boundaries"
+msgstr "chỉ khớp mẫu tại đường ranh giới từ"
 
-#. TRANSLATORS: IEC 80000-13:2008 gibibyte
-#: strbuf.c:851
-#, c-format
-msgid "%u.%2.2u GiB"
-msgstr "%u.%2.2u GiB"
+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"
 
-#. TRANSLATORS: IEC 80000-13:2008 gibibyte/second
-#: strbuf.c:853
-#, c-format
-msgid "%u.%2.2u GiB/s"
-msgstr "%u.%2.2u GiB/giây"
+msgid "don't match patterns in binary files"
+msgstr "không khớp mẫu trong các tập tin nhị phân"
 
-#. TRANSLATORS: IEC 80000-13:2008 mebibyte
-#: strbuf.c:861
-#, c-format
-msgid "%u.%2.2u MiB"
-msgstr "%u.%2.2u MiB"
+msgid "process binary files with textconv filters"
+msgstr "xử lý tập tin nhị phân với các bộ lọc “textconv”"
 
-#. TRANSLATORS: IEC 80000-13:2008 mebibyte/second
-#: strbuf.c:863
-#, c-format
-msgid "%u.%2.2u MiB/s"
-msgstr "%u.%2.2u MiB/giây"
+msgid "search in subdirectories (default)"
+msgstr "tìm kiếm trong thư mục con (mặc định)"
 
-#. TRANSLATORS: IEC 80000-13:2008 kibibyte
-#: strbuf.c:870
-#, c-format
-msgid "%u.%2.2u KiB"
-msgstr "%u.%2.2u KiB"
+msgid "descend at most <depth> levels"
+msgstr "hạ xuống ít nhất là mức <sâu>"
 
-#. TRANSLATORS: IEC 80000-13:2008 kibibyte/second
-#: strbuf.c:872
-#, c-format
-msgid "%u.%2.2u KiB/s"
-msgstr "%u.%2.2u KiB/giây"
+msgid "use extended POSIX regular expressions"
+msgstr "dùng biểu thức chính qui POSIX có mở rộng"
 
-#. TRANSLATORS: IEC 80000-13:2008 byte
-#: strbuf.c:878
-#, c-format
-msgid "%u byte"
-msgid_plural "%u bytes"
-msgstr[0] "%u byte"
+msgid "use basic POSIX regular expressions (default)"
+msgstr "sử dụng biểu thức chính quy kiểu POSIX (mặc định)"
 
-#. TRANSLATORS: IEC 80000-13:2008 byte/second
-#: strbuf.c:880
-#, c-format
-msgid "%u byte/s"
-msgid_plural "%u bytes/s"
-msgstr[0] "%u byte/giây"
+msgid "interpret patterns as fixed strings"
+msgstr "diễn dịch các mẫu như là chuỗi cố định"
 
-#: strbuf.c:1187 wrapper.c:217 wrapper.c:387 builtin/am.c:766
-#: builtin/rebase.c:653
-#, c-format
-msgid "could not open '%s' for writing"
-msgstr "không thể mở “%s” để ghi"
+msgid "use Perl-compatible regular expressions"
+msgstr "sử dụng biểu thức chính quy tương thích Perl"
 
-#: strbuf.c:1196
-#, c-format
-msgid "could not edit '%s'"
-msgstr "không thể sửa “%s”"
+msgid "show line numbers"
+msgstr "hiển thị số của dòng"
 
-#: submodule-config.c:238
-#, c-format
-msgid "ignoring suspicious submodule name: %s"
-msgstr "đang lờ đi tên mô-đun-con mập mờ: %s"
+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"
 
-#: submodule-config.c:305
-msgid "negative values not allowed for submodule.fetchjobs"
-msgstr "không cho phép giá trị âm ở submodule.fetchjobs"
+msgid "don't show filenames"
+msgstr "không hiển thị tên tập tin"
 
-#: submodule-config.c:403
-#, c-format
-msgid "ignoring '%s' which may be interpreted as a command-line option: %s"
-msgstr ""
-"đang bỏ qua “%s” cái mà có thể được phiên dịch như là một tùy chọn dòng "
-"lệnh: %s"
+msgid "show filenames"
+msgstr "hiển thị các tên tập tin"
 
-#: submodule-config.c:500 builtin/push.c:489 builtin/send-pack.c:148
-#, c-format
-msgid "invalid value for '%s'"
-msgstr "giá trị cho '%s' không hợp lệ"
+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)"
 
-#: submodule-config.c:828
-#, c-format
-msgid "Could not update .gitmodules entry %s"
-msgstr "Không thể cập nhật mục .gitmodules %s"
+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"
 
-#: submodule.c:115 submodule.c:144
-msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
-msgstr ""
-"Không thể thay đổi .gitmodules chưa hòa trộn, hãy giải quyết xung đột trộn "
-"trước"
+msgid "synonym for --files-with-matches"
+msgstr "đồng nghĩa với --files-with-matches"
 
-#: submodule.c:119 submodule.c:148
-#, c-format
-msgid "Could not find section in .gitmodules where path=%s"
-msgstr "Không thể tìm thấy phần trong .gitmodules nơi mà đường_dẫn=%s"
+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"
 
-#: submodule.c:155
-#, c-format
-msgid "Could not remove .gitmodules entry for %s"
-msgstr "Không thể gỡ bỏ mục .gitmodules dành cho %s"
+msgid "print NUL after filenames"
+msgstr "thêm NUL vào sau tên tập tin"
 
-#: submodule.c:166
-msgid "staging updated .gitmodules failed"
-msgstr "gặp lỗi khi tổ chức .gitmodules đã cập nhật"
+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"
 
-#: submodule.c:346
-#, c-format
-msgid "in unpopulated submodule '%s'"
-msgstr "trong mô-đun-con không có gì “%s”"
+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"
 
-#: submodule.c:377
-#, c-format
-msgid "Pathspec '%s' is in submodule '%.*s'"
-msgstr "Đặc tả đường dẫn “%s” thì ở trong mô-đun-con “%.*s”"
+msgid "highlight matches"
+msgstr "tô sáng phần khớp mẫu"
 
-#: submodule.c:454
-#, c-format
-msgid "bad --ignore-submodules argument: %s"
-msgstr "đối số --ignore-submodules sai: %s"
+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"
 
-#: submodule.c:866
-#, c-format
-msgid ""
-"Submodule in commit %s at path: '%s' collides with a submodule named the "
-"same. Skipping it."
+msgid "show filename only once above matches from same file"
 msgstr ""
-"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ó."
+"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"
 
-#: submodule.c:987
-#, c-format
-msgid "submodule entry '%s' (%s) is a %s, not a commit"
-msgstr ""
-"mục tin mô-đun-con “%s” (%s) là một %s, không phải là một lần chuyển giao"
+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"
 
-#: submodule.c:1069
-#, c-format
-msgid ""
-"Could not run 'git rev-list <commits> --not --remotes -n 1' command in "
-"submodule %s"
-msgstr ""
-"Không thể chạy lệnh “git rev-list <các lần chuyển giao> --not --remotes -n "
-"1” trong mô-đun-con “%s”"
+msgid "show <n> context lines before matches"
+msgstr "hiển thị <n> dòng nội dung trước khớp"
 
-#: submodule.c:1192
-#, c-format
-msgid "process for submodule '%s' failed"
-msgstr "xử lý cho mô-đun-con “%s” gặp lỗi"
+msgid "show <n> context lines after matches"
+msgstr "hiển thị <n> dòng nội dung sau khớp"
 
-#: submodule.c:1221 builtin/branch.c:714 builtin/submodule--helper.c:2827
-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ệ."
+msgid "use <n> worker threads"
+msgstr "dùng <n> tuyến trình làm việc"
 
-#: submodule.c:1232
-#, c-format
-msgid "Pushing submodule '%s'\n"
-msgstr "Đẩy lên mô-đun-con “%s”\n"
+msgid "shortcut for -C NUM"
+msgstr "dạng viết tắt của -C SỐ"
 
-#: submodule.c:1235
-#, c-format
-msgid "Unable to push submodule '%s'\n"
-msgstr "Không thể đẩy lên mô-đun-con “%s”\n"
+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"
+
+msgid "show the surrounding function"
+msgstr "hiển thị hàm bao quanh"
+
+msgid "read patterns from file"
+msgstr "đọc mẫu từ tập-tin"
 
-#: submodule.c:1567
-#, c-format
-msgid "Fetching submodule %s%s\n"
-msgstr "Đang lấy về mô-đun-con %s%s\n"
+msgid "match <pattern>"
+msgstr "match <mẫu>"
 
-#: submodule.c:1589
-#, c-format
-msgid "Could not access submodule '%s'\n"
-msgstr "Không thể truy cập mô-đun-con “%s”\n"
+msgid "combine patterns specified with -e"
+msgstr "tổ hợp mẫu được chỉ ra với tùy chọn -e"
 
-#: submodule.c:1618
-#, c-format
-msgid "Could not access submodule '%s' at commit %s\n"
-msgstr "Không thể truy cập mô-đun-con “%s” ở lần chuyển giao %s\n"
+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"
 
-#: submodule.c:1629
-#, c-format
-msgid "Fetching submodule %s%s at commit %s\n"
-msgstr "Đang lấy về mô-đun-con %s%s tại lần chuyển giao %s\n"
+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"
 
-#: submodule.c:1849
-#, c-format
-msgid ""
-"Errors during submodule fetch:\n"
-"%s"
-msgstr ""
-"Có lỗi khi lấy về mô-đun-con:\n"
-" “%s”"
+msgid "pager"
+msgstr "dàn trang"
 
-#: submodule.c:1874
-#, c-format
-msgid "'%s' not recognized as a git repository"
-msgstr "không nhận ra “%s” là một kho git"
+msgid "show matching files in the pager"
+msgstr "hiển thị các tập tin khớp trong trang giấy"
 
-#: submodule.c:1891
-#, c-format
-msgid "Could not run 'git status --porcelain=2' in submodule %s"
-msgstr "Không thể chạy “git status --porcelain=2” trong mô-đun-con “%s”"
+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)"
 
-#: submodule.c:1932
-#, c-format
-msgid "'git status --porcelain=2' failed in submodule %s"
-msgstr "“git status --porcelain=2” gặp lỗi trong mô-đun-con “%s”"
+msgid "no pattern given"
+msgstr "chưa chỉ ra mẫu"
 
-#: submodule.c:2007
-#, c-format
-msgid "could not start 'git status' in submodule '%s'"
-msgstr "không thể lấy thống kê “git status” trong mô-đun-con “%s”"
+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"
 
-#: submodule.c:2020
 #, c-format
-msgid "could not run 'git status' in submodule '%s'"
-msgstr "không thể chạy “git status” trong mô-đun-con “%s”"
+msgid "unable to resolve revision: %s"
+msgstr "không thể phân giải điểm xét duyệt: %s"
 
-#: submodule.c:2037
-#, c-format
-msgid "Could not unset core.worktree setting in submodule '%s'"
-msgstr "Không thể đặt core.worktree trong mô-đun-con “%s”"
+msgid "--untracked not supported with --recurse-submodules"
+msgstr "tùy chọn --untracked không được hỗ trợ với --recurse-submodules"
 
-#: submodule.c:2064 submodule.c:2379
-#, c-format
-msgid "could not recurse into submodule '%s'"
-msgstr "không thể đệ quy vào trong mô-đun-con “%s”"
+msgid "invalid option combination, ignoring --threads"
+msgstr "tổ hợp tùy chọn không hợp lệ, bỏ qua --threads"
 
-#: submodule.c:2086
-msgid "could not reset submodule index"
-msgstr "không thể đặt lại mục lục của mô-đun-con"
+msgid "no threads support, ignoring --threads"
+msgstr "không hỗ trợ đa tuyến, bỏ qua --threads"
 
-#: submodule.c:2128
 #, c-format
-msgid "submodule '%s' has dirty index"
-msgstr "mô-đun-con “%s” có mục lục còn bẩn"
+msgid "invalid number of threads specified (%d)"
+msgstr "số tuyến chỉ ra không hợp lệ (%d)"
 
-#: submodule.c:2182
-#, c-format
-msgid "Submodule '%s' could not be updated."
-msgstr "Mô-đun-con “%s” không thể được cập nhật."
+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"
 
-#: submodule.c:2250
-#, 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”"
+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"
+
+msgid "both --cached and trees are given"
+msgstr "cả hai --cached và các cây phải được chỉ ra"
 
-#: submodule.c:2271
-#, c-format
 msgid ""
-"relocate_gitdir for submodule '%s' with more than one worktree not supported"
+"git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
+"[--] <file>..."
 msgstr ""
-"relocate_gitdir cho mô-đun-con “%s” với nhiều hơn một cây làm việc là chưa "
-"được hỗ trợ"
+"git hash-object [-t <kiểu>] [-w] [--path=<tập-tin> | --no-filters] [--stdin] "
+"[--] <tập-tin>…"
 
-#: submodule.c:2283 submodule.c:2343
-#, c-format
-msgid "could not lookup name for submodule '%s'"
-msgstr "không thể tìm kiếm tên cho mô-đun-con “%s”"
+msgid "object type"
+msgstr "kiểu đối tượng"
 
-#: submodule.c:2287
-#, 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ó"
+msgid "write the object into the object database"
+msgstr "ghi đối tượng vào dữ liệu đối tượng"
 
-#: submodule.c:2293
-#, c-format
-msgid ""
-"Migrating git directory of '%s%s' from\n"
-"'%s' to\n"
-"'%s'\n"
-msgstr ""
-"Di cư thư mục git của “%s%s” từ\n"
-"“%s” sang\n"
-"“%s”\n"
+msgid "read the object from stdin"
+msgstr "đọc đối tượng từ đầu vào tiêu chuẩn stdin"
 
-#: submodule.c:2424
-msgid "could not start ls-files in .."
-msgstr "không thể lấy thông tin thống kê về ls-files trong .."
+msgid "store file as is without filters"
+msgstr "lưu các tập tin mà nó không có các bộ lọc"
 
-#: submodule.c:2464
-#, c-format
-msgid "ls-tree returned unexpected return code %d"
-msgstr "ls-tree trả về mã không như mong đợi %d"
+msgid ""
+"just hash any random garbage to create corrupt objects for debugging Git"
+msgstr "chỉ cần băm rác ngẫu nhiên để tạo một đối tượng hỏng để mà gỡ lỗi Git"
 
-#: symlinks.c:244
-#, c-format
-msgid "failed to lstat '%s'"
-msgstr "gặp lỗi khi lstat “%s”"
+msgid "process file as it were from this path"
+msgstr "xử lý tập tin như là nó đang ở thư mục này"
 
-#: trailer.c:244
-#, c-format
-msgid "running trailer command '%s' failed"
-msgstr "chạy lệnh kéo theo “%s” gặp lỗi"
+msgid "print all available commands"
+msgstr "hiển thị danh sách các câu lệnh người dùng có thể sử dụng"
 
-#: trailer.c:493 trailer.c:498 trailer.c:503 trailer.c:562 trailer.c:566
-#: trailer.c:570
-#, c-format
-msgid "unknown value '%s' for key '%s'"
-msgstr "không hiểu giá trị “%s” cho khóa “%s”"
+msgid "show external commands in --all"
+msgstr "hiển thị các lệnh bên ngoài trong --all"
 
-#: trailer.c:547 trailer.c:552 trailer.c:557 builtin/remote.c:300
-#: builtin/remote.c:328
-#, c-format
-msgid "more than one %s"
-msgstr "nhiều hơn một %s"
+msgid "show aliases in --all"
+msgstr "hiển thị các bí danh trong --all"
 
-#: trailer.c:743
-#, c-format
-msgid "empty trailer token in trailer '%.*s'"
-msgstr "thẻ thừa trống rỗng trong phần thừa “%.*s”"
+msgid "exclude guides"
+msgstr "hướng dẫn loại trừ"
 
-#: trailer.c:763
-#, c-format
-msgid "could not read input file '%s'"
-msgstr "không đọc được tập tin đầu vào “%s”"
+msgid "show man page"
+msgstr "hiển thị trang man"
 
-#: trailer.c:766 builtin/mktag.c:88 imap-send.c:1563
-msgid "could not read from stdin"
-msgstr "không thể đọc từ đầu vào tiêu chuẩn"
+msgid "show manual in web browser"
+msgstr "hiển thị hướng dẫn sử dụng trong trình duyệt web"
 
-#: trailer.c:1024 wrapper.c:760
-#, c-format
-msgid "could not stat %s"
-msgstr "không thể lấy thông tin thống kê về %s"
+msgid "show info page"
+msgstr "hiển thị trang info"
 
-#: trailer.c:1026
-#, c-format
-msgid "file %s is not a regular file"
-msgstr "\"%s\" không phải là tập tin bình thường"
+msgid "print command description"
+msgstr "hiển thị mô tả lệnh"
 
-#: trailer.c:1028
-#, c-format
-msgid "file %s is not writable by user"
-msgstr "tập tin %s người dùng không thể ghi được"
+msgid "print list of useful guides"
+msgstr "hiển thị danh sách các hướng dẫn hữu dụng"
 
-#: trailer.c:1040
-msgid "could not open temporary file"
-msgstr "không thể tạo tập tin tạm thời"
+msgid "print all configuration variable names"
+msgstr "in ra tất cả các tên biến cấu hình"
+
+msgid "git help [[-i|--info] [-m|--man] [-w|--web]] [<command>]"
+msgstr "git help [[-i|--info] [-m|--man] [-w|--web]] [<lệnh>]"
 
-#: trailer.c:1080
 #, c-format
-msgid "could not rename temporary file to %s"
-msgstr "không thể đổi tên tập tin tạm thời thành %s"
+msgid "unrecognized help format '%s'"
+msgstr "không nhận ra định dạng trợ giúp “%s”"
 
-#: transport-helper.c:62 transport-helper.c:91
-msgid "full write to remote helper failed"
-msgstr "ghi đầy đủ lên bộ hỗ trợ máy chủ gặp lỗi"
+msgid "Failed to start emacsclient."
+msgstr "Gặp lỗi khi khởi chạy emacsclient."
+
+msgid "Failed to parse emacsclient version."
+msgstr "Gặp lỗi khi phân tích phiên bản emacsclient."
 
-#: transport-helper.c:145
 #, c-format
-msgid "unable to find remote helper for '%s'"
-msgstr "không thể tìm thấy bộ hỗ trợ máy chủ cho “%s”"
+msgid "emacsclient version '%d' too old (< 22)."
+msgstr "phiên bản của emacsclient “%d” quá cũ (< 22)."
 
-#: transport-helper.c:161 transport-helper.c:575
-msgid "can't dup helper output fd"
-msgstr "không thể nhân đôi fd dầu ra bộ hỗ trợ"
+#, c-format
+msgid "failed to exec '%s'"
+msgstr "gặp lỗi khi thực thi “%s”"
 
-#: transport-helper.c:214
 #, c-format
 msgid ""
-"unknown mandatory capability %s; this remote helper probably needs newer "
-"version of Git"
+"'%s': path for unsupported man viewer.\n"
+"Please consider using 'man.<tool>.cmd' instead."
 msgstr ""
-"không hiểu capability bắt buộc %s; bộ hỗ trợ máy chủ này gần như chắc chắn "
-"là cần phiên bản Git mới hơn"
-
-#: transport-helper.c:220
-msgid "this remote helper should implement refspec capability"
-msgstr "bộ hỗ trợ máy chủ này cần phải thực thi capability đặc tả tham chiếu"
+"“%s”: đường dẫn không hỗ trợ bộ trình chiếu man.\n"
+"Hãy cân nhắc đến việc sử dụng “man.<tool>.cmd” để thay thế."
 
-#: transport-helper.c:287 transport-helper.c:429
 #, c-format
-msgid "%s unexpectedly said: '%s'"
-msgstr "%s said bất ngờ: “%s”"
+msgid ""
+"'%s': cmd for supported man viewer.\n"
+"Please consider using 'man.<tool>.path' instead."
+msgstr ""
+"“%s”: cmd (lệnh) hỗ trợ bộ trình chiếu man.\n"
+"Hãy cân nhắc đến việc sử dụng “man.<tool>.path” để thay thế."
 
-#: transport-helper.c:417
 #, c-format
-msgid "%s also locked %s"
-msgstr "%s cũng khóa %s"
+msgid "'%s': unknown man viewer."
+msgstr "“%s”: không rõ chương trình xem man."
 
-#: transport-helper.c:497
-msgid "couldn't run fast-import"
-msgstr "không thể chạy fast-import"
+msgid "no man viewer handled the request"
+msgstr "không có trình xem trợ giúp dạng manpage tiếp hợp với yêu cầu"
 
-#: transport-helper.c:520
-msgid "error while running fast-import"
-msgstr "gặp lỗi trong khi chạy fast-import"
+msgid "no info viewer handled the request"
+msgstr "không có trình xem trợ giúp dạng info tiếp hợp với yêu cầu"
 
-#: transport-helper.c:549 transport-helper.c:1254
 #, c-format
-msgid "could not read ref %s"
-msgstr "không thể đọc tham chiếu %s"
+msgid "'%s' is aliased to '%s'"
+msgstr "“%s” được đặt bí danh thành “%s”"
 
-#: transport-helper.c:594
 #, c-format
-msgid "unknown response to connect: %s"
-msgstr "không hiểu đáp ứng để kết nối: %s"
-
-#: transport-helper.c:616
-msgid "setting remote service path not supported by protocol"
-msgstr "giao thức này không hỗ trợ cài đặt đường dẫn dịch vụ máy chủ"
+msgid "bad alias.%s string: %s"
+msgstr "chuỗi alias.%s sai: %s"
 
-#: transport-helper.c:618
-msgid "invalid remote service path"
-msgstr "đường dẫn dịch vụ máy chủ không hợp lệ"
+#, c-format
+msgid "the '%s' option doesn't take any non-option arguments"
+msgstr "tùy chọn '%s' không nhận bất kỳ tham số không phải tùy chọn nào khác"
 
-#: transport-helper.c:661 transport.c:1496
-msgid "operation not supported by protocol"
-msgstr "thao tác không được gia thức hỗ trợ"
+msgid ""
+"the '--no-[external-commands|aliases]' options can only be used with '--all'"
+msgstr ""
+"tùy chọn '--no-[external-commands|aliases]' chỉ có thể sử dụng cùng với '--"
+"all'"
 
-#: transport-helper.c:664
 #, c-format
-msgid "can't connect to subservice %s"
-msgstr "không thể kết nối đến dịch vụ phụ %s"
+msgid "usage: %s%s"
+msgstr "cách dùng: %s%s"
 
-#: transport-helper.c:693 transport.c:415
-msgid "--negotiate-only requires protocol v2"
-msgstr "--negotiate-only cần giao thức v2"
+msgid "'git help config' for more information"
+msgstr "Chạy lệnh “git help config” để có thêm thông tin"
 
-#: transport-helper.c:758
-msgid "'option' without a matching 'ok/error' directive"
-msgstr "“option” không có chỉ thị “ok/error” tương ứng"
+msgid "git hook run [--ignore-missing] <hook-name> [-- <hook-args>]"
+msgstr "git hook run [--ignore-missing] <tên-móc> [-- <các tham số cho móc>]"
 
-#: transport-helper.c:801
-#, c-format
-msgid "expected ok/error, helper said '%s'"
-msgstr "cần ok/error, nhưng bộ hỗ trợ lại nói “%s”"
+msgid "silently ignore missing requested <hook-name>"
+msgstr "bỏ qua âm thầm các <hook-name> đã yêu cầu còn thiếu"
 
-#: transport-helper.c:862
 #, 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"
+msgid "object type mismatch at %s"
+msgstr "kiểu đối tượng không khớp tại %s"
 
-#: transport-helper.c:945
 #, c-format
-msgid "helper %s does not support dry-run"
-msgstr "helper %s không hỗ trợ dry-run"
+msgid "did not receive expected object %s"
+msgstr "không thể lấy về đối tượng cần %s"
 
-#: transport-helper.c:948
 #, c-format
-msgid "helper %s does not support --signed"
-msgstr "helper %s không hỗ trợ --signed"
+msgid "object %s: expected type %s, found %s"
+msgstr "đối tượng %s: cần kiểu %s nhưng lại nhận được %s"
 
-#: transport-helper.c:951
 #, c-format
-msgid "helper %s does not support --signed=if-asked"
-msgstr "helper %s không hỗ trợ --signed=if-asked"
+msgid "cannot fill %d byte"
+msgid_plural "cannot fill %d bytes"
+msgstr[0] "không thể điền thêm vào %d byte"
 
-#: transport-helper.c:956
-#, c-format
-msgid "helper %s does not support --atomic"
-msgstr "helper %s không hỗ trợ --atomic"
+msgid "early EOF"
+msgstr "gặp kết thúc tập tin EOF quá sớm"
 
-#: transport-helper.c:960
-#, c-format
-msgid "helper %s does not support --%s"
-msgstr "helper %s không hỗ trợ --%s"
+msgid "read error on input"
+msgstr "lỗi đọc ở đầu vào"
 
-#: transport-helper.c:967
-#, c-format
-msgid "helper %s does not support 'push-option'"
-msgstr "helper %s không hỗ trợ “push-option”"
+msgid "used more bytes than were available"
+msgstr "sử dụng nhiều hơn số lượng byte mà nó sẵn có"
 
-#: transport-helper.c:1067
-msgid "remote-helper doesn't support push; refspec needed"
-msgstr "remote-helper không hỗ trợ push; cần đặc tả tham chiếu"
+msgid "pack too large for current definition of off_t"
+msgstr "gói quá lớn so với định nghĩa hiện tại của kiểu off_t"
 
-#: transport-helper.c:1072
 #, c-format
-msgid "helper %s does not support 'force'"
-msgstr "helper %s không hỗ trợ “force”"
-
-#: transport-helper.c:1119
-msgid "couldn't run fast-export"
-msgstr "không thể chạy fast-export"
+msgid "pack exceeds maximum allowed size (%s)"
+msgstr "gói đã vượt quá cỡ tối đa được phép (%s)"
 
-#: transport-helper.c:1124
-msgid "error while running fast-export"
-msgstr "gặp lỗi trong khi chạy fast-export"
+msgid "pack signature mismatch"
+msgstr "chữ ký cho gói không khớp"
 
-#: transport-helper.c:1149
 #, c-format
-msgid ""
-"No refs in common and none specified; doing nothing.\n"
-"Perhaps you should specify a branch.\n"
-msgstr ""
-"Không có các tham chiếu trong phần chung và chưa chỉ định; nên không làm gì "
-"cả.\n"
-"Tuy nhiên bạn nên chỉ định một nhánh.\n"
+msgid "pack version %<PRIu32> unsupported"
+msgstr "không hỗ trợ phiên bản gói %<PRIu32>"
 
-#: transport-helper.c:1231
 #, c-format
-msgid "unsupported object format '%s'"
-msgstr "không hỗ trợ định dạng đối tượng “%s”"
+msgid "pack has bad object at offset %<PRIuMAX>: %s"
+msgstr "gói có đối tượng sai tại khoảng bù %<PRIuMAX>: %s"
 
-#: transport-helper.c:1240
 #, c-format
-msgid "malformed response in ref list: %s"
-msgstr "đáp ứng sai dạng trong danh sách tham chiếu: %s"
+msgid "inflate returned %d"
+msgstr "xả nén trả về %d"
+
+msgid "offset value overflow for delta base object"
+msgstr "tràn giá trị khoảng bù cho đối tượng delta cơ sở"
+
+msgid "delta base offset is out of bound"
+msgstr "khoảng bù cơ sở cho delta nằm ngoài phạm vi"
 
-#: transport-helper.c:1392
 #, c-format
-msgid "read(%s) failed"
-msgstr "read(%s) gặp lỗi"
+msgid "unknown object type %d"
+msgstr "không hiểu kiểu đối tượng %d"
+
+msgid "cannot pread pack file"
+msgstr "không thể chạy hàm pread cho tập tin gói"
 
-#: transport-helper.c:1419
 #, c-format
-msgid "write(%s) failed"
-msgstr "write(%s) gặp lỗi"
+msgid "premature end of pack file, %<PRIuMAX> byte missing"
+msgid_plural "premature end of pack file, %<PRIuMAX> bytes missing"
+msgstr[0] "tập tin gói bị kết thúc sớm, thiếu %<PRIuMAX> byte"
+
+msgid "serious inflate inconsistency"
+msgstr "sự mâu thuẫn xả nén nghiêm trọng"
 
-#: transport-helper.c:1468
 #, c-format
-msgid "%s thread failed"
-msgstr "tuyến trình %s gặp lỗi"
+msgid "SHA1 COLLISION FOUND WITH %s !"
+msgstr "SỰ VA CHẠM SHA1 ĐàXẢY RA VỚI %s!"
 
-#: transport-helper.c:1472
 #, c-format
-msgid "%s thread failed to join: %s"
-msgstr "tuyến trình %s gặp lỗi khi gia nhập: %s"
+msgid "unable to read %s"
+msgstr "không thể đọc %s"
 
-#: transport-helper.c:1491 transport-helper.c:1495
 #, 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"
+msgid "cannot read existing object info %s"
+msgstr "không thể đọc thông tin đối tượng sẵn có %s"
 
-#: transport-helper.c:1532
 #, c-format
-msgid "%s process failed to wait"
-msgstr "xử lý %s gặp lỗi khi đợi"
+msgid "cannot read existing object %s"
+msgstr "không thể đọc đối tượng đã tồn tại %s"
 
-#: transport-helper.c:1536
 #, c-format
-msgid "%s process failed"
-msgstr "xử lý %s gặp lỗi"
+msgid "invalid blob object %s"
+msgstr "đối tượng blob không hợp lệ %s"
 
-#: transport-helper.c:1554 transport-helper.c:1563
-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"
+msgid "fsck error in packed object"
+msgstr "lỗi fsck trong đối tượng đóng gói"
 
-#: transport.c:116
 #, c-format
-msgid "Would set upstream of '%s' to '%s' of '%s'\n"
-msgstr "Không thể đặt thượng nguồn của “%s” thành “%s” của “%s”\n"
+msgid "Not all child objects of %s are reachable"
+msgstr "Không phải tất cả các đối tượng con của %s là có thể với tới được"
 
-#: transport.c:138
-#, c-format
-msgid "could not read bundle '%s'"
-msgstr "không thể đọc bó “%s”"
+msgid "failed to apply delta"
+msgstr "gặp lỗi khi áp dụng delta"
 
-#: transport.c:234
-#, c-format
-msgid "transport: invalid depth option '%s'"
-msgstr "vận chuyển: tùy chọn độ sâu “%s” không hợp lệ"
+msgid "Receiving objects"
+msgstr "Đang nhận về các đối tượng"
 
-#: transport.c:289
-msgid "see protocol.version in 'git help config' for more details"
-msgstr "xem protocol.version trong “git help config” để có thêm thông tin"
+msgid "Indexing objects"
+msgstr "Các đối tượng bảng mục lục"
 
-#: transport.c:290
-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"
+msgid "pack is corrupted (SHA1 mismatch)"
+msgstr "gói bị sai hỏng (SHA1 không khớp)"
 
-#: transport.c:418
-msgid "server does not support wait-for-done"
-msgstr "máy chủ không hỗ trợ wait-for-done"
+msgid "cannot fstat packfile"
+msgstr "không thể lấy thông tin thống kê packfile"
 
-#: transport.c:770
-msgid "could not parse transport.color.* config"
-msgstr "không thể phân tích cú pháp cấu hình transport.color.*"
+msgid "pack has junk at the end"
+msgstr "pack có phần thừa ở cuối"
 
-#: transport.c:845
-msgid "support for protocol v2 not implemented yet"
-msgstr "việc hỗ trợ giao thức v2 chưa được thực hiện"
+msgid "confusion beyond insanity in parse_pack_objects()"
+msgstr "lộn xộn hơn cả điên rồ khi chạy hàm parse_pack_objects()"
+
+msgid "Resolving deltas"
+msgstr "Đang phân giải các delta"
 
-#: transport.c:978
 #, c-format
-msgid "unknown value for config '%s': %s"
-msgstr "không hiểu giá trị cho cho cấu hình “%s”: %s"
+msgid "unable to create thread: %s"
+msgstr "không thể tạo tuyến: %s"
+
+msgid "confusion beyond insanity"
+msgstr "lộn xộn hơn cả điên rồ"
 
-#: transport.c:1044
 #, c-format
-msgid "transport '%s' not allowed"
-msgstr "không cho phép phương thức vận chuyển “%s”"
+msgid "completed with %d local object"
+msgid_plural "completed with %d local objects"
+msgstr[0] "đầy đủ với %d đối tượng nội bộ"
 
-#: transport.c:1093
-msgid "git-over-rsync is no longer supported"
-msgstr "git-over-rsync không còn được hỗ trợ nữa"
+#, c-format
+msgid "Unexpected tail checksum for %s (disk corruption?)"
+msgstr "Gặp tổng kiểm tra tail không cần cho %s (đĩa hỏng?)"
 
-#: transport.c:1196
 #, c-format
-msgid ""
-"The following submodule paths contain changes that can\n"
-"not be found on any remote:\n"
-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"
+msgid "pack has %d unresolved delta"
+msgid_plural "pack has %d unresolved deltas"
+msgstr[0] "gói có %d delta chưa được giải quyết"
 
-#: transport.c:1200
 #, c-format
-msgid ""
-"\n"
-"Please try\n"
-"\n"
-"\tgit push --recurse-submodules=on-demand\n"
-"\n"
-"or cd to the path and use\n"
-"\n"
-"\tgit push\n"
-"\n"
-"to push them to a remote.\n"
-"\n"
-msgstr ""
-"\n"
-"Hãy thử\n"
-"\n"
-"\tgit push --recurse-submodules=on-demand\n"
-"\n"
-"hoặc cd đến đường dẫn và dùng\n"
-"\n"
-"\tgit push\n"
-"\n"
-"để đẩy chúng lên máy phục vụ.\n"
-"\n"
+msgid "unable to deflate appended object (%d)"
+msgstr "không thể xả nén đối tượng nối thêm (%d)"
 
-#: transport.c:1208
-msgid "Aborting."
-msgstr "Bãi bỏ."
+#, c-format
+msgid "local object %s is corrupt"
+msgstr "đối tượng nội bộ %s bị hỏng"
 
-#: transport.c:1354
-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"
+#, c-format
+msgid "packfile name '%s' does not end with '.%s'"
+msgstr "tên tập tin tập tin gói “%s” không được kết thúc “.%s”"
 
-#: tree-walk.c:33
-msgid "too-short tree object"
-msgstr "đối tượng cây quá ngắn"
+#, c-format
+msgid "cannot write %s file '%s'"
+msgstr "không thể ghi %s tập tin “%s”"
 
-#: tree-walk.c:39
-msgid "malformed mode in tree entry"
-msgstr "chế độ dị hình trong đề mục cây"
+#, c-format
+msgid "cannot close written %s file '%s'"
+msgstr "không thể đóng tập tin được ghi %s “%s”"
 
-#: tree-walk.c:43
-msgid "empty filename in tree entry"
-msgstr "tên tập tin trống rỗng trong mục tin cây"
+#, c-format
+msgid "unable to rename temporary '*.%s' file to '%s'"
+msgstr "không thể đổi tên tập tin tạm thời “*.%s” thành “%s”"
 
-#: tree-walk.c:118
-msgid "too-short tree file"
-msgstr "tập tin cây quá ngắn"
+msgid "error while closing pack file"
+msgstr "gặp lỗi trong khi đóng tập tin gói"
 
-#: unpack-trees.c:118
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by checkout:\n"
-"%%sPlease commit your changes or stash them before you switch branches."
-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 "
-"checkout:\n"
-"%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn "
-"chuyển nhánh."
+msgid "bad pack.indexVersion=%<PRIu32>"
+msgstr "sai pack.indexVersion=%<PRIu32>"
 
-#: unpack-trees.c:120
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by checkout:\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 "
-"checkout:\n"
-"%%s"
+msgid "Cannot open existing pack file '%s'"
+msgstr "Không thể mở tập tin gói đã sẵn có “%s”"
 
-#: unpack-trees.c:123
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by merge:\n"
-"%%sPlease commit your changes or stash them before you merge."
-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"
-"%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn hòa "
-"trộn."
+msgid "Cannot open existing pack idx file for '%s'"
+msgstr "Không thể mở tập tin idx của gói cho “%s”"
 
-#: unpack-trees.c:125
 #, 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"
+msgid "non delta: %d object"
+msgid_plural "non delta: %d objects"
+msgstr[0] "không delta: %d đối tượng"
 
-#: unpack-trees.c:128
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by %s:\n"
-"%%sPlease commit your changes or stash them before you %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 "
-"%s:\n"
-"%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn %s."
+msgid "chain length = %d: %lu object"
+msgid_plural "chain length = %d: %lu objects"
+msgstr[0] "chiều dài xích = %d: %lu đối tượng"
+
+msgid "Cannot come back to cwd"
+msgstr "Không thể quay lại cwd"
 
-#: unpack-trees.c:130
 #, c-format
-msgid ""
-"Your local changes to the following files would be overwritten by %s:\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 "
-"%s:\n"
-"%%s"
+msgid "bad %s"
+msgstr "%s sai"
 
-#: unpack-trees.c:135
 #, c-format
-msgid ""
-"Updating the following directories would lose untracked files in them:\n"
-"%s"
-msgstr ""
-"Việc cập nhật các thư mục sau đây có thể làm mất các tập tin chưa theo dõi "
-"trong nó:\n"
-"%s"
+msgid "unknown hash algorithm '%s'"
+msgstr "không hiểu thuật toán băm dữ liệu “%s”"
+
+msgid "--stdin requires a git repository"
+msgstr "--stdin cần một kho git"
+
+msgid "--verify with no packfile name given"
+msgstr "dùng tùy chọn --verify mà không đưa ra tên packfile"
+
+msgid "fsck error in pack objects"
+msgstr "lỗi fsck trong các đối tượng gói"
 
-#: unpack-trees.c:138
 #, c-format
-msgid ""
-"Refusing to remove the current working directory:\n"
-"%s"
-msgstr ""
-"Từ chối gỡ bỏ thư mục làm việc hiện tại:\n"
-"%s"
+msgid "cannot stat template '%s'"
+msgstr "không thể lấy thông tin thống kê về mẫu “%s”"
 
-#: unpack-trees.c:142
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by checkout:\n"
-"%%sPlease move or remove them before you switch branches."
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi lệnh "
-"checkout:\n"
-"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn chuyển nhánh."
+msgid "cannot opendir '%s'"
+msgstr "không thể opendir() “%s”"
 
-#: unpack-trees.c:144
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by checkout:\n"
-"%%s"
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi lệnh "
-"checkout:\n"
-"%%s"
+msgid "cannot readlink '%s'"
+msgstr "không thể readlink “%s”"
 
-#: unpack-trees.c:147
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by merge:\n"
-"%%sPlease move or remove them before you merge."
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi lệnh hòa "
-"trộn:\n"
-"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn hòa trộn."
+msgid "cannot symlink '%s' '%s'"
+msgstr "không thể tạo liên kết mềm (symlink) “%s” “%s”"
 
-#: unpack-trees.c:149
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by merge:\n"
-"%%s"
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi lệnh hòa "
-"trộn:\n"
-"%%s"
+msgid "cannot copy '%s' to '%s'"
+msgstr "không thể sao chép “%s” sang “%s”"
 
-#: unpack-trees.c:152
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by %s:\n"
-"%%sPlease move or remove them before you %s."
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi %s:\n"
-"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn %s."
+msgid "ignoring template %s"
+msgstr "đang lờ đi mẫu “%s”"
 
-#: unpack-trees.c:154
 #, c-format
-msgid ""
-"The following untracked working tree files would be removed by %s:\n"
-"%%s"
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi %s:\n"
-"%%s"
+msgid "templates not found in %s"
+msgstr "các mẫu không được tìm thấy trong %s"
 
-#: unpack-trees.c:160
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by "
-"checkout:\n"
-"%%sPlease move or remove them before you switch branches."
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
-"checkout:\n"
-"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn chuyển nhánh."
+msgid "not copying templates from '%s': %s"
+msgstr "không sao chép các mẫu từ “%s”: %s"
 
-#: unpack-trees.c:162
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by "
-"checkout:\n"
-"%%s"
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
-"checkout:\n"
-"%%s"
+msgid "invalid initial branch name: '%s'"
+msgstr "tên nhánh khởi tạo không hợp lệ: “%s”"
 
-#: unpack-trees.c:165
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by merge:\n"
-"%%sPlease move or remove them before you merge."
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
-"hòa trộn:\n"
-"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn hòa trộn."
+msgid "unable to handle file type %d"
+msgstr "không thể xử lý (handle) tập tin kiểu %d"
 
-#: unpack-trees.c:167
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by merge:\n"
-"%%s"
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
-"hòa trộn:\n"
-"%%s"
+msgid "unable to move %s to %s"
+msgstr "không di chuyển được %s vào %s"
+
+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"
 
-#: unpack-trees.c:170
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by %s:\n"
-"%%sPlease move or remove them before you %s."
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
-"%s:\n"
-"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn %s."
+msgid "%s already exists"
+msgstr "%s đã có từ trước rồi"
 
-#: unpack-trees.c:172
 #, c-format
-msgid ""
-"The following untracked working tree files would be overwritten by %s:\n"
-"%%s"
-msgstr ""
-"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
-"%s:\n"
-"%%s"
+msgid "re-init: ignored --initial-branch=%s"
+msgstr "re-init: --initial-branch=%s bị bỏ qua"
 
-#: unpack-trees.c:180
 #, c-format
-msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
-msgstr "Mục “%s” đè lên “%s”. Không thể buộc."
+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"
 
-#: unpack-trees.c:183
 #, c-format
-msgid ""
-"Cannot update submodule:\n"
-"%s"
-msgstr ""
-"Không thể cập nhật mô-đun-con:\n"
-"%s"
+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"
 
-#: unpack-trees.c:186
 #, c-format
-msgid ""
-"The following paths are not up to date and were left despite sparse "
-"patterns:\n"
-"%s"
-msgstr ""
-"Các đường dẫn sau đây không được cập nhật và vẫn được để lại bất chấp các "
-"mẫu sparse:\n"
-"%s"
+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"
 
-#: unpack-trees.c:188
 #, 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"
+
 msgid ""
-"The following paths are unmerged and were left despite sparse patterns:\n"
-"%s"
+"git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
+"shared[=<permissions>]] [<directory>]"
 msgstr ""
-"Các đường dẫn theo sau đây chưa được hòa trộn và để bất chấp các mẫu "
-"sparse:\n"
-"%s"
+"git init [-q | --quiet] [--bare] [--template=<thư-mục-tạm>] [--shared[=<các-"
+"quyền>]] [thư-mục]"
+
+msgid "permissions"
+msgstr "các quyền"
+
+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"
+
+msgid "override the name of the initial branch"
+msgstr "ghi đè lên tên của nhánh khởi tạo"
+
+msgid "hash"
+msgstr "băm"
+
+msgid "specify the hash algorithm to use"
+msgstr "chỉ định thuật toán băm dữ liệu muốn dùng"
 
-#: unpack-trees.c:190
 #, c-format
-msgid ""
-"The following paths were already present and thus not updated despite sparse "
-"patterns:\n"
-"%s"
-msgstr ""
-"Các đường dẫn sau đây đã sẵn hiện diện và như vậy không được cập nhật bất "
-"cấp các mẫu sparse:\n"
-"%s"
+msgid "cannot mkdir %s"
+msgstr "không thể mkdir (tạo thư mục): %s"
 
-#: unpack-trees.c:270
 #, c-format
-msgid "Aborting\n"
-msgstr "Bãi bỏ\n"
+msgid "cannot chdir to %s"
+msgstr "không thể chdir (chuyển đổi thư mục) sang %s"
 
-#: unpack-trees.c:297
 #, c-format
 msgid ""
-"After fixing the above paths, you may want to run `git sparse-checkout "
-"reapply`.\n"
+"%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
+"dir=<directory>)"
 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"
+"%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>)"
+
+#, c-format
+msgid "Cannot access work tree '%s'"
+msgstr "Không thể truy cập cây (tree) làm việc “%s”"
 
-#: unpack-trees.c:358
-msgid "Updating files"
-msgstr "Đang cập nhật các tập tin"
+msgid "--separate-git-dir incompatible with bare repository"
+msgstr "--separate-git-dir xung khắc với kho thuần"
 
-#: unpack-trees.c:390
 msgid ""
-"the following paths have collided (e.g. case-sensitive paths\n"
-"on a case-insensitive filesystem) and only one from the same\n"
-"colliding group is in the working tree:\n"
+"git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
+"<token>[(=|:)<value>])...] [<file>...]"
 msgstr ""
-"các đường dẫn sau đây có xung đột(vd: các đường dẫn phân biệt\n"
-"HOA/thường trên một hệ thống tập tin không phân biệt HOA/thường)\n"
-"và chỉ một từ cùng một nhóm xung đột là trong cây làm việc hiện tại:\n"
-
-#: unpack-trees.c:1664
-msgid "Updating index flags"
-msgstr "Đang cập nhật các cờ mục lục"
+"git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
+"<thẻ>[(=|:)<giá-trị>])…] [<tập-tin>…]"
 
-#: unpack-trees.c:2925
-#, c-format
-msgid "worktree and untracked commit have duplicate entries: %s"
-msgstr ""
-"cây làm việc và lần chuyển giao không được theo dõi có các mục trùng lặp: %s"
+msgid "edit files in place"
+msgstr "sửa các tập tin tại chỗ"
 
-#: upload-pack.c:1579
-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"
+msgid "trim empty trailers"
+msgstr "bộ dò vết cắt bỏ phần trống rỗng"
 
-#: urlmatch.c:163
-msgid "invalid URL scheme name or missing '://' suffix"
-msgstr "tên lược đồ URL không hợp lệ, hoặc thiếu hậu tố “://”"
+msgid "where to place the new trailer"
+msgstr "đặt phần đuôi mới ở đâu"
 
-#: urlmatch.c:187 urlmatch.c:346 urlmatch.c:405
-#, c-format
-msgid "invalid %XX escape sequence"
-msgstr "thoát chuỗi %XX không hợp lệ"
+msgid "action if trailer already exists"
+msgstr "thao tác khi đã có phần đuôi"
 
-#: urlmatch.c:215
-msgid "missing host and scheme is not 'file:'"
-msgstr "thiếu máy chủ và lược đồ thì không phải là giao thức “file:”"
+msgid "action if trailer is missing"
+msgstr "thao tác khi thiếu phần đuôi"
 
-#: urlmatch.c:232
-msgid "a 'file:' URL may not have a port number"
-msgstr "một URL kiểu “file:” không được chứa cổng"
+msgid "output only the trailers"
+msgstr "chỉ xuất phần đuôi"
 
-#: urlmatch.c:247
-msgid "invalid characters in host name"
-msgstr "có các ký tự không hợp lệ trong tên máy"
+msgid "do not apply config rules"
+msgstr "đừng áp dụng các quy tắc cấu hình"
 
-#: urlmatch.c:292 urlmatch.c:303
-msgid "invalid port number"
-msgstr "tên cổng không hợp lệ"
+msgid "join whitespace-continued values"
+msgstr "nối các giá trị khoảng-trắng-liên-tiếp"
 
-#: urlmatch.c:371
-msgid "invalid '..' path segment"
-msgstr "đoạn đường dẫn “..” không hợp lệ"
+msgid "set parsing options"
+msgstr "đặt các tùy chọn phân tích cú pháp"
 
-#: walker.c:170
-msgid "Fetching objects"
-msgstr "Đang lấy về các đối tượng"
+msgid "do not treat --- specially"
+msgstr "không coi --- là đặc biệt"
 
-#: worktree.c:237 builtin/am.c:2210 builtin/bisect--helper.c:156
-#, c-format
-msgid "failed to read '%s'"
-msgstr "gặp lỗi khi đọc “%s”"
+msgid "trailer(s) to add"
+msgstr "bộ dò vết cần thêm"
 
-#: worktree.c:304
-#, c-format
-msgid "'%s' at main working tree is not the repository directory"
-msgstr "“%s” tại cây làm việc chình không phải là thư mục kho"
+msgid "--trailer with --only-input does not make sense"
+msgstr "--trailer cùng với --only-input không hợp lý"
 
-#: worktree.c:315
-#, c-format
-msgid "'%s' file does not contain absolute path to the working tree location"
-msgstr ""
-"tập tin “%s” không chứa đường dẫn tuyệt đối đến vị trí cây làm việc hiện"
+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ỗ"
 
-#: worktree.c:327
-#, c-format
-msgid "'%s' does not exist"
-msgstr "\"%s\" không tồn tại"
+msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
+msgstr "git log [<các tùy chọn>] [<vùng-xem-xét>] [[--] </đường/dẫn>…]"
 
-#: worktree.c:333
-#, c-format
-msgid "'%s' is not a .git file, error code %d"
-msgstr "“%s” không phải là tập tin .git, mã lỗi %d"
+msgid "git show [<options>] <object>..."
+msgstr "git show [<các tùy chọn>] <đối-tượng>…"
 
-#: worktree.c:342
 #, c-format
-msgid "'%s' does not point back to '%s'"
-msgstr "“%s” không chỉ ngược đến “%s”"
+msgid "invalid --decorate option: %s"
+msgstr "tùy chọn --decorate không hợp lệ: %s"
 
-#: worktree.c:600
-msgid "not a directory"
-msgstr "không phải thư mục"
+msgid "suppress diff output"
+msgstr "chặn mọi kết xuất từ diff"
 
-#: worktree.c:609
-msgid ".git is not a file"
-msgstr ".git không phải là một tập tin"
+msgid "show source"
+msgstr "hiển thị mã nguồn"
 
-#: worktree.c:611
-msgid ".git file broken"
-msgstr "tệp .git bị hỏng"
+msgid "use mail map file"
+msgstr "sử dụng tập tin ánh xạ thư"
 
-#: worktree.c:613
-msgid ".git file incorrect"
-msgstr "tập tin .git không chính xác"
+msgid "only decorate refs that match <pattern>"
+msgstr "chỉ tô sáng các tham chiếu khớp với <mẫu>"
 
-#: worktree.c:719
-msgid "not a valid path"
-msgstr "không phải là một đường dẫn hợp lệ"
+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>"
 
-#: worktree.c:725
-msgid "unable to locate repository; .git is not a file"
-msgstr "không thể phân bổ kho chứa; .git không phải là một tập tin"
+msgid "decorate options"
+msgstr "các tùy chọn trang trí"
 
-#: worktree.c:729
-msgid "unable to locate repository; .git file does not reference a repository"
-msgstr "không thể phân bổ kho chứa; tập tin .git tham chiếu đến một kho"
+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>"
 
-#: worktree.c:733
-msgid "unable to locate repository; .git file broken"
-msgstr "không thể phân bổ kho chứa; tập tin .git bị hỏng"
+#, c-format
+msgid "unrecognized argument: %s"
+msgstr "đối số không được thừa nhận: %s"
 
-#: worktree.c:739
-msgid "gitdir unreadable"
-msgstr "gitdir không thể đọc được"
+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"
 
-#: worktree.c:743
-msgid "gitdir incorrect"
-msgstr "gitdir không chính xác"
+#, c-format
+msgid "Final output: %d %s\n"
+msgstr "Kết xuất cuối cùng: %d %s\n"
 
-#: worktree.c:768
-msgid "not a valid directory"
-msgstr "không phải thư mục hợp lệ"
+msgid "unable to create temporary object directory"
+msgstr "không thể tạo thư mục đối tượng tạm thời"
 
-#: worktree.c:774
-msgid "gitdir file does not exist"
-msgstr "tập tin gitdir không tồn tại"
+#, c-format
+msgid "git show %s: bad file"
+msgstr "git show %s: sai tập tin"
 
-#: worktree.c:779 worktree.c:788
 #, c-format
-msgid "unable to read gitdir file (%s)"
-msgstr "không thể đọc tập tin gitdir (%s)"
+msgid "could not read object %s"
+msgstr "không thể đọc đối tượng %s"
 
-#: worktree.c:798
 #, c-format
-msgid "short read (expected %<PRIuMAX> bytes, read %<PRIuMAX>)"
-msgstr "đọc ngắn (cần %<PRIuMAX> byte, đọc %<PRIuMAX>)"
+msgid "unknown type: %d"
+msgstr "không nhận ra kiểu: %d"
 
-#: worktree.c:806
-msgid "invalid gitdir file"
-msgstr "tập tin gitdir (thư mục git) không hợp lệ"
+#, c-format
+msgid "%s: invalid cover from description mode"
+msgstr "%s: bao bọc không hợp lệ từ chế độ mô tả"
 
-#: worktree.c:814
-msgid "gitdir file points to non-existent location"
-msgstr "tập tin gitdir chỉ đến vị trí không tồn tại"
+msgid "format.headers without value"
+msgstr "format.headers không có giá trị cụ thể"
 
-#: worktree.c:830
 #, c-format
-msgid "unable to set %s in '%s'"
-msgstr "không thể đặt %s trong “%s”"
+msgid "cannot open patch file %s"
+msgstr "không thể mở tập tin miếng vá: %s"
 
-#: worktree.c:832
-#, c-format
-msgid "unable to unset %s in '%s'"
-msgstr "không thể bỏ đặt %s trong '%s'"
+msgid "need exactly one range"
+msgstr "cần chính xác một vùng"
 
-#: worktree.c:852
-msgid "failed to set extensions.worktreeConfig setting"
-msgstr "gặp lỗi khi đặt cài đặt extensions.worktreeConfig"
+msgid "not a range"
+msgstr "không phải là một vùng"
 
-#: wrapper.c:161
-#, c-format
-msgid "could not setenv '%s'"
-msgstr "không thể setenv “%s”"
+msgid "cover letter needs email format"
+msgstr "“cover letter” cần cho định dạng thư"
+
+msgid "failed to create cover-letter file"
+msgstr "gặp lỗi khi tạo các tập tin cover-letter"
 
-#: wrapper.c:213
 #, c-format
-msgid "unable to create '%s'"
-msgstr "không thể tạo “%s”"
+msgid "insane in-reply-to: %s"
+msgstr "in-reply-to điên rồ: %s"
+
+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>]"
+
+msgid "two output directories?"
+msgstr "hai thư mục kết xuất?"
 
-#: wrapper.c:215 wrapper.c:385
 #, c-format
-msgid "could not open '%s' for reading and writing"
-msgstr "không thể mở “%s” để đọc và ghi"
+msgid "unknown commit %s"
+msgstr "không hiểu lần chuyển giao %s"
 
-#: wrapper.c:416 wrapper.c:683
 #, c-format
-msgid "unable to access '%s'"
-msgstr "không thể truy cập “%s”"
+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ệ"
 
-#: wrapper.c:691
-msgid "unable to get current working directory"
-msgstr "không thể lấy thư mục làm việc hiện hành"
+msgid "could not find exact merge base"
+msgstr "không tìm thấy nền hòa trộn chính xác"
 
-#: wt-status.c:158
-msgid "Unmerged paths:"
-msgstr "Những đường dẫn chưa được hòa trộn:"
+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"
+"Or you could specify base commit by --base=<base-commit-id> manually"
+msgstr ""
+"gặp lỗi khi lấy thượng nguồn, nếu bạn muốn ghi lại lần chuyển giao nền một\n"
+"cách tự động, vui lòng dùng \"git branch --set-upstream-to\" để theo dõi\n"
+"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"
 
-#: wt-status.c:187 wt-status.c:219
-msgid "  (use \"git restore --staged <file>...\" to unstage)"
-msgstr "  (dùng \"git restore --staged <tập-tin>…\" để bỏ ra khỏi bệ phóng)"
+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"
 
-#: wt-status.c:190 wt-status.c:222
-#, c-format
-msgid "  (use \"git restore --source=%s --staged <file>...\" to unstage)"
-msgstr ""
-"  (dùng \"git restore --source=%s --staged <tập-tin>…\" để bỏ ra khỏi bệ "
-"phóng)"
+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"
 
-#: wt-status.c:193 wt-status.c:225
-msgid "  (use \"git rm --cached <file>...\" to unstage)"
-msgstr "  (dùng \"git rm --cached <tập-tin>…\" để bỏ ra khỏi bệ phóng)"
+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"
 
-#: wt-status.c:197
-msgid "  (use \"git add <file>...\" to mark resolution)"
-msgstr "  (dùng \"git add <tập-tin>…\" để đánh dấu là cần giải quyết)"
+msgid "cannot get patch id"
+msgstr "không thể lấy mã miếng vá"
 
-#: wt-status.c:199 wt-status.c:203
-msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
+msgid "failed to infer range-diff origin of current series"
 msgstr ""
-"  (dùng \"git add/rm <tập-tin>…\" như là một cách thích hợp để đánh dấu là "
-"cần được giải quyết)"
+"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"
 
-#: wt-status.c:201
-msgid "  (use \"git rm <file>...\" to mark resolution)"
-msgstr "  (dùng \"git rm <tập-tin>…\" để đánh dấu là cần giải quyết)"
+#, 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"
+
+msgid "use [PATCH n/m] even with a single patch"
+msgstr "dùng [PATCH n/m] ngay cả với miếng vá đơn"
+
+msgid "use [PATCH] even with multiple patches"
+msgstr "dùng [VÁ] ngay cả với các miếng vá phức tạp"
+
+msgid "print patches to standard out"
+msgstr "hiển thị miếng vá ra đầu ra chuẩn"
+
+msgid "generate a cover letter"
+msgstr "tạo bì thư"
 
-#: wt-status.c:211 wt-status.c:1140
-msgid "Changes to be committed:"
-msgstr "Những thay đổi sẽ được chuyển giao:"
+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"
 
-#: wt-status.c:234 wt-status.c:1149
-msgid "Changes not staged for commit:"
-msgstr "Các thay đổi chưa được đặt lên bệ phóng để chuyển giao:"
+msgid "sfx"
+msgstr "sfx"
 
-#: wt-status.c:238
-msgid "  (use \"git add <file>...\" to update what will be committed)"
-msgstr "  (dùng \"git add <tập-tin>…\" để cập nhật những gì sẽ chuyển giao)"
+msgid "use <sfx> instead of '.patch'"
+msgstr "sử dụng <sfx> thay cho “.patch”"
 
-#: wt-status.c:240
-msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
-msgstr ""
-"  (dùng \"git add/rm <tập-tin>…\" để cập nhật những gì sẽ được chuyển giao)"
+msgid "start numbering patches at <n> instead of 1"
+msgstr "bắt đầu đánh số miếng vá từ <n> thay vì 1"
 
-#: wt-status.c:241
-msgid ""
-"  (use \"git restore <file>...\" to discard changes in working directory)"
-msgstr ""
-"  (dùng \"git restore <tập-tin>…\" để loại bỏ các thay đổi trong thư mục làm "
-"việc)"
+msgid "reroll-count"
+msgstr "đếm reroll"
 
-#: wt-status.c:243
-msgid "  (commit or discard the untracked or modified content in submodules)"
-msgstr ""
-"  (chuyển giao hoặc là loại bỏ các nội dung chưa được theo dõi hay đã sửa "
-"chữa trong mô-đun-con)"
+msgid "mark the series as Nth re-roll"
+msgstr "đánh dấu chuỗi nối tiếp dạng thứ-N re-roll"
 
-#: wt-status.c:254
-#, c-format
-msgid "  (use \"git %s <file>...\" to include in what will be committed)"
-msgstr ""
-"  (dùng \"git %s <tập-tin>…\" để thêm vào những gì cần được chuyển giao)"
+msgid "max length of output filename"
+msgstr "chiều dài tên tập tin đầu ra tối đa"
 
-#: wt-status.c:266
-msgid "both deleted:"
-msgstr "bị xóa bởi cả hai:"
+msgid "use [RFC PATCH] instead of [PATCH]"
+msgstr "dùng [VÁ RFC] thay cho [VÁ]"
 
-#: wt-status.c:268
-msgid "added by us:"
-msgstr "được thêm vào bởi chúng ta:"
+msgid "cover-from-description-mode"
+msgstr "cover-from-description-mode"
 
-#: wt-status.c:270
-msgid "deleted by them:"
-msgstr "bị xóa đi bởi họ:"
+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"
 
-#: wt-status.c:272
-msgid "added by them:"
-msgstr "được thêm vào bởi họ:"
+msgid "use [<prefix>] instead of [PATCH]"
+msgstr "dùng [<tiền-tố>] thay cho [VÁ]"
 
-#: wt-status.c:274
-msgid "deleted by us:"
-msgstr "bị xóa bởi chúng ta:"
+msgid "store resulting files in <dir>"
+msgstr "lưu các tập tin kết quả trong <t.mục>"
 
-#: wt-status.c:276
-msgid "both added:"
-msgstr "được thêm vào bởi cả hai:"
+msgid "don't strip/add [PATCH]"
+msgstr "không strip/add [VÁ]"
 
-#: wt-status.c:278
-msgid "both modified:"
-msgstr "bị sửa bởi cả hai:"
+msgid "don't output binary diffs"
+msgstr "không kết xuất diff (những khác biệt) nhị phân"
 
-#: wt-status.c:288
-msgid "new file:"
-msgstr "tập tin mới:"
+msgid "output all-zero hash in From header"
+msgstr "xuất mọi mã băm all-zero trong phần đầu From"
 
-#: wt-status.c:290
-msgid "copied:"
-msgstr "đã chép:"
+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"
 
-#: wt-status.c:292
-msgid "deleted:"
-msgstr "đã xóa:"
+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ê)"
 
-#: wt-status.c:294
-msgid "modified:"
-msgstr "đã sửa:"
+msgid "Messaging"
+msgstr "Lời nhắn"
 
-#: wt-status.c:296
-msgid "renamed:"
-msgstr "đã đổi tên:"
+msgid "header"
+msgstr "đầu đề thư"
 
-#: wt-status.c:298
-msgid "typechange:"
-msgstr "đổi-kiểu:"
+msgid "add email header"
+msgstr "thêm đầu đề thư"
 
-#: wt-status.c:300
-msgid "unknown:"
-msgstr "không hiểu:"
+msgid "email"
+msgstr "thư điện tử"
 
-#: wt-status.c:302
-msgid "unmerged:"
-msgstr "chưa hòa trộn:"
+msgid "add To: header"
+msgstr "thêm To: đầu đề thư"
 
-#: wt-status.c:382
-msgid "new commits, "
-msgstr "lần chuyển giao mới, "
+msgid "add Cc: header"
+msgstr "thêm Cc: đầu đề thư"
 
-#: wt-status.c:384
-msgid "modified content, "
-msgstr "nội dung bị sửa đổi, "
+msgid "ident"
+msgstr "thụt lề"
 
-#: wt-status.c:386
-msgid "untracked content, "
-msgstr "nội dung chưa được theo dõi, "
+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)"
 
-#: wt-status.c:973
-#, c-format
-msgid "Your stash currently has %d entry"
-msgid_plural "Your stash currently has %d entries"
-msgstr[0] "Bạn hiện nay ở trong phần cất đi đang có %d mục"
+msgid "message-id"
+msgstr "message-id"
 
-#: wt-status.c:1004
-msgid "Submodules changed but not updated:"
-msgstr "Những mô-đun-con đã bị thay đổi nhưng chưa được cập nhật:"
+msgid "make first mail a reply to <message-id>"
+msgstr "dùng thư đầu tiên để trả lời <message-id>"
 
-#: wt-status.c:1006
-msgid "Submodule changes to be committed:"
-msgstr "Những mô-đun-con thay đổi đã được chuyển giao:"
+msgid "boundary"
+msgstr "ranh giới"
 
-#: wt-status.c:1088
-msgid ""
-"Do not modify or remove the line above.\n"
-"Everything below it will be ignored."
-msgstr ""
-"Không sửa hay xóa bỏ đường ở trên.\n"
-"Mọi thứ phía dưới sẽ được xóa bỏ."
+msgid "attach the patch"
+msgstr "đính kèm miếng vá"
 
-#: wt-status.c:1180
-#, c-format
-msgid ""
-"\n"
-"It took %.2f seconds to compute the branch ahead/behind values.\n"
-"You can use '--no-ahead-behind' to avoid this.\n"
-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"
+msgid "inline the patch"
+msgstr "dùng miếng vá làm nội dung"
 
-#: wt-status.c:1210
-msgid "You have unmerged paths."
-msgstr "Bạn có những đường dẫn chưa được hòa trộn."
+msgid "enable message threading, styles: shallow, deep"
+msgstr "cho phép luồng lời nhắn, kiểu: “shallow”, “deep”"
 
-#: wt-status.c:1213
-msgid "  (fix conflicts and run \"git commit\")"
-msgstr "  (sửa các xung đột rồi chạy \"git commit\")"
+msgid "signature"
+msgstr "chữ ký"
 
-#: wt-status.c:1215
-msgid "  (use \"git merge --abort\" to abort the merge)"
-msgstr "  (dùng \"git merge --abort\" để bãi bỏ việc hòa trộn)"
+msgid "add a signature"
+msgstr "thêm chữ ký"
 
-#: wt-status.c:1219
-msgid "All conflicts fixed but you are still merging."
-msgstr "Tất cả các xung đột đã được giải quyết nhưng bạn vẫn đang hòa trộn."
+msgid "base-commit"
+msgstr "lần_chuyển_giao_nền"
 
-#: wt-status.c:1222
-msgid "  (use \"git commit\" to conclude merge)"
-msgstr "  (dùng \"git commit\" để hoàn tất việc hòa trộn)"
+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á"
 
-#: wt-status.c:1233
-msgid "You are in the middle of an am session."
-msgstr "Bạn đang ở giữa của một phiên “am”."
+msgid "add a signature from a file"
+msgstr "thêm chữ ký từ một tập tin"
 
-#: wt-status.c:1236
-msgid "The current patch is empty."
-msgstr "Miếng vá hiện tại bị trống rỗng."
+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á"
 
-#: wt-status.c:1241
-msgid "  (fix conflicts and then run \"git am --continue\")"
-msgstr "  (sửa các xung đột và sau đó chạy lệnh \"git am --continue\")"
+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á"
 
-#: wt-status.c:1243
-msgid "  (use \"git am --skip\" to skip this patch)"
-msgstr "  (dùng \"git am --skip\" để bỏ qua miếng vá này)"
+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"
 
-#: wt-status.c:1246
-msgid ""
-"  (use \"git am --allow-empty\" to record this patch as an empty commit)"
+msgid "show changes against <refspec> in cover letter or single patch"
 msgstr ""
-"  (dùng \"git am --allow-empty\" ghi miếng vá này như một lần chuyển giao "
-"rỗng)"
+"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"
 
-#: wt-status.c:1248
-msgid "  (use \"git am --abort\" to restore the original branch)"
-msgstr "  (dùng \"git am --abort\" để phục hồi lại nhánh nguyên thủy)"
+msgid "percentage by which creation is weighted"
+msgstr "tỷ lệ phần trăm theo cái tạo là weighted"
 
-#: wt-status.c:1381
-msgid "git-rebase-todo is missing."
-msgstr "thiếu git-rebase-todo."
+#, c-format
+msgid "invalid ident line: %s"
+msgstr "dòng định danh không hợp lệ: %s"
 
-#: wt-status.c:1383
-msgid "No commands done."
-msgstr "Không thực hiện lệnh nào."
+msgid "--name-only does not make sense"
+msgstr "--name-only không hợp lý"
 
-#: wt-status.c:1386
-#, c-format
-msgid "Last command done (%<PRIuMAX> command done):"
-msgid_plural "Last commands done (%<PRIuMAX> commands done):"
-msgstr[0] "Lệnh thực hiện cuối (%<PRIuMAX> lệnh được thực thi):"
+msgid "--name-status does not make sense"
+msgstr "--name-status không hợp lý"
 
-#: wt-status.c:1397
-#, c-format
-msgid "  (see more in file %s)"
-msgstr "  (xem thêm trong %s)"
+msgid "--check does not make sense"
+msgstr "--check không hợp lý"
 
-#: wt-status.c:1402
-msgid "No commands remaining."
-msgstr "Không có lệnh nào còn lại."
+msgid "--remerge-diff does not make sense"
+msgstr "--remerge-diff không hợp lý"
 
-#: wt-status.c:1405
 #, c-format
-msgid "Next command to do (%<PRIuMAX> remaining command):"
-msgid_plural "Next commands to do (%<PRIuMAX> remaining commands):"
-msgstr[0] "Lệnh cần làm kế tiếp (%<PRIuMAX> lệnh còn lại):"
+msgid "could not create directory '%s'"
+msgstr "không thể tạo thư mục “%s”"
 
-#: wt-status.c:1413
-msgid "  (use \"git rebase --edit-todo\" to view and edit)"
-msgstr "  (dùng lệnh \"git rebase --edit-todo\" để xem và sửa)"
+msgid "--interdiff requires --cover-letter or single patch"
+msgstr "--interdiff cần --cover-letter hoặc vá đơn"
+
+msgid "Interdiff:"
+msgstr "Interdiff:"
 
-#: wt-status.c:1425
 #, c-format
-msgid "You are currently rebasing branch '%s' on '%s'."
-msgstr "Bạn hiện nay đang thực hiện việc “rebase” nhánh “%s” trên “%s”."
+msgid "Interdiff against v%d:"
+msgstr "Interdiff dựa trên v%d:"
 
-#: wt-status.c:1430
-msgid "You are currently rebasing."
-msgstr "Bạn hiện nay đang thực hiện việc “rebase” (cải tổ)."
+msgid "--range-diff requires --cover-letter or single patch"
+msgstr "--range-diff yêu cầu --cover-letter hoặc miếng vá đơn"
 
-#: wt-status.c:1443
-msgid "  (fix conflicts and then run \"git rebase --continue\")"
-msgstr ""
-"  (sửa các xung đột và sau đó chạy lệnh “cải tổ” \"git rebase --continue\")"
+msgid "Range-diff:"
+msgstr "Range-diff:"
 
-#: wt-status.c:1445
-msgid "  (use \"git rebase --skip\" to skip this patch)"
-msgstr "  (dùng lệnh “cải tổ” \"git rebase --skip\" để bỏ qua lần vá này)"
+#, c-format
+msgid "Range-diff against v%d:"
+msgstr "Range-diff dựa trên v%d:"
 
-#: wt-status.c:1447
-msgid "  (use \"git rebase --abort\" to check out the original branch)"
-msgstr ""
-"  (dùng lệnh “cải tổ” \"git rebase --abort\" để check-out nhánh nguyên thủy)"
+#, c-format
+msgid "unable to read signature file '%s'"
+msgstr "không thể đọc tập tin chữ ký “%s”"
+
+msgid "Generating patches"
+msgstr "Đang tạo các miếng vá"
+
+msgid "failed to create output files"
+msgstr "gặp lỗi khi tạo các tập tin kết xuất"
 
-#: wt-status.c:1454
-msgid "  (all conflicts fixed: run \"git rebase --continue\")"
-msgstr ""
-"  (khi tất cả các xung đột đã sửa xong: chạy lệnh “cải tổ” \"git rebase --"
-"continue\")"
+msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
+msgstr "git cherry [-v] [<thượng-nguồn> [<đầu> [<giới-hạn>]]]"
 
-#: wt-status.c:1458
 #, c-format
 msgid ""
-"You are currently splitting a commit while rebasing branch '%s' on '%s'."
+"Could not find a tracked remote branch, please specify <upstream> manually.\n"
 msgstr ""
-"Bạn hiện nay đang thực hiện việc chia tách một lần chuyển giao trong khi "
-"đang “rebase” nhánh “%s” trên “%s”."
+"Không tìm thấy nhánh mạng được theo dõi, hãy chỉ định <thượng-nguồn> một "
+"cách thủ công.\n"
 
-#: wt-status.c:1463
-msgid "You are currently splitting a commit during a rebase."
-msgstr ""
-"Bạn hiện tại đang cắt đôi một lần chuyển giao trong khi đang thực hiện việc "
-"rebase."
+msgid "git ls-files [<options>] [<file>...]"
+msgstr "git ls-files [<các tùy chọn>] [<tập-tin>…]"
 
-#: wt-status.c:1466
-msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
-msgstr ""
-"  (Một khi thư mục làm việc của bạn đã gọn gàng, chạy lệnh “cải tổ” \"git "
-"rebase --continue\")"
+msgid "separate paths with the NUL character"
+msgstr "các đường dẫn được ngăn cách bởi ký tự NULL"
 
-#: wt-status.c:1470
-#, c-format
-msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
-msgstr ""
-"Bạn hiện nay đang thực hiện việc sửa chữa một lần chuyển giao trong khi đang "
-"rebase nhánh “%s” trên “%s”."
+msgid "identify the file status with tags"
+msgstr "nhận dạng các trạng thái tập tin với thẻ"
 
-#: wt-status.c:1475
-msgid "You are currently editing a commit during a rebase."
-msgstr "Bạn hiện đang sửa một lần chuyển giao trong khi bạn thực hiện rebase."
+msgid "use lowercase letters for 'assume unchanged' files"
+msgstr ""
+"dùng chữ cái viết thường cho các tập tin “assume unchanged” (giả định không "
+"thay đổi)"
 
-#: wt-status.c:1478
-msgid "  (use \"git commit --amend\" to amend the current commit)"
-msgstr "  (dùng \"git commit --amend\" để “tu bổ” lần chuyển giao hiện tại)"
+msgid "use lowercase letters for 'fsmonitor clean' files"
+msgstr "dùng chữ cái viết thường cho các tập tin “fsmonitor clean”"
 
-#: wt-status.c:1480
-msgid ""
-"  (use \"git rebase --continue\" once you are satisfied with your changes)"
-msgstr ""
-"  (chạy lệnh “cải tổ” \"git rebase --continue\" một khi bạn cảm thấy hài "
-"lòng về những thay đổi của mình)"
+msgid "show cached files in the output (default)"
+msgstr "hiển thị các tập tin được nhớ tạm vào đầu ra (mặc định)"
 
-#: wt-status.c:1491
-msgid "Cherry-pick currently in progress."
-msgstr "Cherry-pick hiện tại đang được thực hiện."
+msgid "show deleted files in the output"
+msgstr "hiển thị các tập tin đã xóa trong kết xuất"
 
-#: wt-status.c:1494
-#, c-format
-msgid "You are currently cherry-picking commit %s."
-msgstr "Bạn hiện nay đang thực hiện việc cherry-pick lần chuyển giao %s."
+msgid "show modified files in the output"
+msgstr "hiển thị các tập tin đã bị sửa đổi ra kết xuất"
 
-#: wt-status.c:1501
-msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
-msgstr ""
-"  (sửa các xung đột và sau đó chạy lệnh \"git cherry-pick --continue\")"
+msgid "show other files in the output"
+msgstr "hiển thị các tập tin khác trong kết xuất"
 
-#: wt-status.c:1504
-msgid "  (run \"git cherry-pick --continue\" to continue)"
-msgstr "  (chạy lệnh \"git cherry-pick --continue\" để tiếp tục)"
+msgid "show ignored files in the output"
+msgstr "hiển thị các tập tin bị bỏ qua trong kết xuất"
 
-#: wt-status.c:1507
-msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
-msgstr ""
-"  (khi tất cả các xung đột đã sửa xong: chạy lệnh \"git cherry-pick --"
-"continue\")"
+msgid "show staged contents' object name in the output"
+msgstr "hiển thị tên đối tượng của nội dung được đặt lên bệ phóng ra kết xuất"
 
-#: wt-status.c:1509
-msgid "  (use \"git cherry-pick --skip\" to skip this patch)"
-msgstr "  (dùng \"git cherry-pick --skip\" để bỏ qua miếng vá này)"
+msgid "show files on the filesystem that need to be removed"
+msgstr "hiển thị các tập tin trên hệ thống tập tin mà nó cần được gỡ bỏ"
 
-#: wt-status.c:1511
-msgid "  (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
-msgstr "  (dùng \"git cherry-pick --abort\" để hủy bỏ thao tác cherry-pick)"
+msgid "show 'other' directories' names only"
+msgstr "chỉ hiển thị tên của các thư mục “khác”"
 
-#: wt-status.c:1521
-msgid "Revert currently in progress."
-msgstr "Hoàn nguyên hiện tại đang thực hiện."
+msgid "show line endings of files"
+msgstr "hiển thị kết thúc dòng của các tập tin"
 
-#: wt-status.c:1524
-#, c-format
-msgid "You are currently reverting commit %s."
-msgstr "Bạn hiện nay đang thực hiện thao tác hoàn nguyên lần chuyển giao “%s”."
+msgid "don't show empty directories"
+msgstr "không hiển thị thư mục rỗng"
 
-#: wt-status.c:1530
-msgid "  (fix conflicts and run \"git revert --continue\")"
-msgstr "  (sửa các xung đột và sau đó chạy lệnh \"git revert --continue\")"
+msgid "show unmerged files in the output"
+msgstr "hiển thị các tập tin chưa hòa trộn trong kết xuất"
 
-#: wt-status.c:1533
-msgid "  (run \"git revert --continue\" to continue)"
-msgstr "  (chạy lệnh \"git revert --continue\" để tiếp tục)"
+msgid "show resolve-undo information"
+msgstr "hiển thị thông tin resolve-undo"
 
-#: wt-status.c:1536
-msgid "  (all conflicts fixed: run \"git revert --continue\")"
-msgstr ""
-"  (khi tất cả các xung đột đã sửa xong: chạy lệnh \"git revert --continue\")"
+msgid "skip files matching pattern"
+msgstr "bỏ qua những tập tin khớp với một mẫu"
 
-#: wt-status.c:1538
-msgid "  (use \"git revert --skip\" to skip this patch)"
-msgstr "  (dùng lệnh \"git revert --skip\" để bỏ qua lần vá này)"
+msgid "read exclude patterns from <file>"
+msgstr "đọc mẫu cần loại trừ từ <tập-tin>"
 
-#: wt-status.c:1540
-msgid "  (use \"git revert --abort\" to cancel the revert operation)"
-msgstr "  (dùng \"git revert --abort\" để hủy bỏ thao tác hoàn nguyên)"
+msgid "read additional per-directory exclude patterns in <file>"
+msgstr "đọc thêm các mẫu ngoại trừ mỗi thư mục trong <tập tin>"
 
-#: wt-status.c:1550
-#, c-format
-msgid "You are currently bisecting, started from branch '%s'."
-msgstr ""
-"Bạn hiện nay đang thực hiện thao tác di chuyển nửa bước (bisect), bắt đầu từ "
-"nhánh “%s”."
+msgid "add the standard git exclusions"
+msgstr "thêm loại trừ tiêu chuẩn kiểu git"
 
-#: wt-status.c:1554
-msgid "You are currently bisecting."
-msgstr "Bạn hiện tại đang thực hiện việc bisect (di chuyển nửa bước)."
+msgid "make the output relative to the project top directory"
+msgstr "làm cho kết xuất liên quan đến thư mục ở mức cao nhất (gốc) của dự án"
 
-#: wt-status.c:1557
-msgid "  (use \"git bisect reset\" to get back to the original branch)"
-msgstr "  (dùng \"git bisect reset\" để quay trở lại nhánh nguyên thủy)"
+msgid "if any <file> is not in the index, treat this as an error"
+msgstr "nếu <tập tin> bất kỳ không ở trong bảng mục lục, xử lý nó như một lỗi"
 
-#: wt-status.c:1568
-msgid "You are in a sparse checkout."
-msgstr "Bạn đang trong lần lấy ra sparse."
+msgid "tree-ish"
+msgstr "tree-ish"
 
-#: wt-status.c:1571
-#, c-format
-msgid "You are in a sparse checkout with %d%% of tracked files present."
+msgid "pretend that paths removed since <tree-ish> are still present"
 msgstr ""
-"Bạn đang ở trong lần lấy ra sparser %d%% của các tập tin được theo dõi hiện "
-"tại."
-
-#: wt-status.c:1815
-msgid "On branch "
-msgstr "Trên nhánh "
+"giả định rằng các đường dẫn đã bị gỡ bỏ kể từ <tree-ish> nay vẫn hiện diện"
 
-#: wt-status.c:1822
-msgid "interactive rebase in progress; onto "
-msgstr "rebase ở chế độ tương tác đang được thực hiện; lên trên "
+msgid "show debugging data"
+msgstr "hiển thị dữ liệu gỡ lỗi"
 
-#: wt-status.c:1824
-msgid "rebase in progress; onto "
-msgstr "rebase đang được thực hiện: lên trên "
+msgid "suppress duplicate entries"
+msgstr "chặn các mục tin trùng lặp"
 
-#: wt-status.c:1829
-msgid "HEAD detached at "
-msgstr "HEAD được tách rời tại "
+msgid "show sparse directories in the presence of a sparse index"
+msgstr "hiển thị thư mục \"sparse\" trong sự có mặt của mục lục \"sparse\""
 
-#: wt-status.c:1831
-msgid "HEAD detached from "
-msgstr "HEAD được tách rời từ "
+msgid ""
+"git ls-remote [--heads] [--tags] [--refs] [--upload-pack=<exec>]\n"
+"              [-q | --quiet] [--exit-code] [--get-url]\n"
+"              [--symref] [<repository> [<refs>...]]"
+msgstr ""
+"git ls-remote [--heads] [--tags] [--refs] [--upload-pack=<exec>]\n"
+"              [-q | --quiet] [--exit-code] [--get-url]\n"
+"              [--symref] [<kho> [<các tham chiếu>…]]"
 
-#: wt-status.c:1834
-msgid "Not currently on any branch."
-msgstr "Hiện tại chẳng ở nhánh nào cả."
+msgid "do not print remote URL"
+msgstr "không hiển thị URL máy chủ"
 
-#: wt-status.c:1851
-msgid "Initial commit"
-msgstr "Lần chuyển giao khởi tạo"
+msgid "exec"
+msgstr "thực thi"
 
-#: wt-status.c:1852
-msgid "No commits yet"
-msgstr "Vẫn chưa chuyển giao"
+msgid "path of git-upload-pack on the remote host"
+msgstr "đường dẫn của git-upload-pack trên máy chủ"
 
-#: wt-status.c:1866
-msgid "Untracked files"
-msgstr "Những tập tin chưa được theo dõi"
+msgid "limit to tags"
+msgstr "giới hạn tới các thẻ"
 
-#: wt-status.c:1868
-msgid "Ignored files"
-msgstr "Những tập tin bị lờ đi"
+msgid "limit to heads"
+msgstr "giới hạn cho các đầu"
 
-#: wt-status.c:1872
-#, c-format
-msgid ""
-"It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
-"may speed it up, but you have to be careful not to forget to add\n"
-"new files yourself (see 'git help status')."
-msgstr ""
-"Cần %.2f giây để liệt kê tất cả các tập tin chưa được theo dõi. “status -"
-"uno”\n"
-"có lẽ làm nó nhanh hơn, nhưng bạn phải cẩn thận đừng quên mình phải\n"
-"tự thêm các tập tin mới (xem “git help status”.."
+msgid "do not show peeled tags"
+msgstr "không hiển thị thẻ bị peel (gọt bỏ)"
 
-#: wt-status.c:1878
-#, c-format
-msgid "Untracked files not listed%s"
-msgstr "Những tập tin chưa được theo dõi không được liệt kê ra %s"
+msgid "take url.<base>.insteadOf into account"
+msgstr "lấy url.<base>.insteadOf vào trong tài khoản"
 
-#: wt-status.c:1880
-msgid " (use -u option to show untracked files)"
-msgstr " (dùng tùy chọn -u để hiển thị các tập tin chưa được theo dõi)"
+msgid "exit with exit code 2 if no matching refs are found"
+msgstr "thoát với mã là 2 nếu không tìm thấy tham chiếu nào khớp"
 
-#: wt-status.c:1886
-msgid "No changes"
-msgstr "Không có thay đổi nào"
+msgid "show underlying ref in addition to the object pointed by it"
+msgstr "hiển thị tham chiếu nằm dưới để thêm vào đối tượng được chỉ bởi nó"
 
-#: wt-status.c:1891
-#, c-format
-msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
-msgstr ""
-"không có thay đổi nào được thêm vào để chuyển giao (dùng \"git add\" và/hoặc "
-"\"git commit -a\")\n"
+msgid "git ls-tree [<options>] <tree-ish> [<path>...]"
+msgstr "git ls-tree [<các tùy chọn>] <tree-ish> [</đường/dẫn>…]"
 
-#: wt-status.c:1895
 #, c-format
-msgid "no changes added to commit\n"
-msgstr "không có thay đổi nào được thêm vào để chuyển giao\n"
+msgid "could not get object info about '%s'"
+msgstr "không thể lấy thông tin đối tượng về “%s”"
 
-#: wt-status.c:1899
 #, c-format
-msgid ""
-"nothing added to commit but untracked files present (use \"git add\" to "
-"track)\n"
-msgstr ""
-"không có gì được thêm vào lần chuyển giao nhưng có những tập tin chưa được "
-"theo dõi hiện diện (dùng \"git add\" để đưa vào theo dõi)\n"
+msgid "bad ls-tree format: element '%s' does not start with '('"
+msgstr "định dạng ls-tree sai: phần tử “%s” không bắt đầu bằng “(”"
 
-#: wt-status.c:1903
 #, c-format
-msgid "nothing added to commit but untracked files present\n"
-msgstr ""
-"không có gì được thêm vào lần chuyển giao nhưng có những tập tin chưa được "
-"theo dõi hiện diện\n"
+msgid "bad ls-tree format: element '%s' does not end in ')'"
+msgstr "định dạng ls-tree sai: phần tử “%s” không bắt kết thúc bằng “)”"
 
-#: wt-status.c:1907
 #, c-format
-msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
-msgstr ""
-"không có gì để chuyển giao (tạo/sao-chép các tập tin và dùng \"git add\" để "
-"đưa vào theo dõi)\n"
+msgid "bad ls-tree format: %%%.*s"
+msgstr "định dạng ls-tree sai: %%%.*s"
 
-#: wt-status.c:1911 wt-status.c:1917
-#, c-format
-msgid "nothing to commit\n"
-msgstr "không có gì để chuyển giao\n"
+msgid "only show trees"
+msgstr "chỉ hiển thị các tree"
 
-#: wt-status.c:1914
-#, c-format
-msgid "nothing to commit (use -u to show untracked files)\n"
-msgstr ""
-"không có gì để chuyển giao (dùng -u xem các tập tin chưa được theo dõi)\n"
+msgid "recurse into subtrees"
+msgstr "đệ quy vào các thư mục con"
 
-#: wt-status.c:1919
-#, c-format
-msgid "nothing to commit, working tree clean\n"
-msgstr "không có gì để chuyển giao, thư mục làm việc sạch sẽ\n"
+msgid "show trees when recursing"
+msgstr "hiển thị cây khi đệ quy"
 
-#: wt-status.c:2024
-msgid "No commits yet on "
-msgstr "Vẫn không thực hiện lệnh chuyển giao nào "
+msgid "terminate entries with NUL byte"
+msgstr "chấm dứt mục tin với byte NUL"
 
-#: wt-status.c:2028
-msgid "HEAD (no branch)"
-msgstr "HEAD (không nhánh)"
+msgid "include object size"
+msgstr "gồm cả kích thước đối tượng"
 
-#: wt-status.c:2059
-msgid "different"
-msgstr "khác"
+msgid "list only filenames"
+msgstr "chỉ liệt kê tên tập tin"
 
-#: wt-status.c:2061 wt-status.c:2069
-msgid "behind "
-msgstr "đằng sau "
+msgid "list only objects"
+msgstr "chỉ liệt kê các đối tượng"
 
-#: wt-status.c:2064 wt-status.c:2067
-msgid "ahead "
-msgstr "phía trước "
+msgid "use full path names"
+msgstr "dùng tên đường dẫn đầy đủ"
 
-#. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2605
-#, c-format
-msgid "cannot %s: You have unstaged changes."
-msgstr "không thể %s: Bạn có các thay đổi chưa được đưa lên bệ phóng."
+msgid "list entire tree; not just current directory (implies --full-name)"
+msgstr "liệt kê cây mục tin; không chỉ thư mục hiện hành (ngụ ý --full-name)"
 
-#: wt-status.c:2611
-msgid "additionally, your index contains uncommitted changes."
+msgid "--format can't be combined with other format-altering options"
 msgstr ""
-"thêm vào đó, bảng mục lục của bạn có chứa các thay đổi chưa được chuyển giao."
+"--format không thể được tổ hợp cùng với các tùy chọn format-alterin khác"
 
-#: wt-status.c:2613
-#, c-format
-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."
+#. TRANSLATORS: keep <> in "<" mail ">" info.
+msgid "git mailinfo [<options>] <msg> <patch> < mail >info"
+msgstr "git mailinfo [<các tùy chọn>] <msg> <patch> < mail >info"
 
-#: compat/simple-ipc/ipc-unix-socket.c:205
-msgid "could not send IPC command"
-msgstr "không thể gửi lệnh IPC"
+msgid "keep subject"
+msgstr "giữ lại phần chủ đề"
 
-#: compat/simple-ipc/ipc-unix-socket.c:212
-msgid "could not read IPC response"
-msgstr "không thể đọc đáp ứng IPC"
+msgid "keep non patch brackets in subject"
+msgstr "giữ không dấu ngoặc vá trong chủ đề"
 
-#: compat/simple-ipc/ipc-unix-socket.c:892
-#, c-format
-msgid "could not start accept_thread '%s'"
-msgstr "không thể khởi chạy accept_thread “%s”"
+msgid "copy Message-ID to the end of commit message"
+msgstr "sao chép Message-ID vào cuối của ghi chú lần chuyển giao"
 
-#: compat/simple-ipc/ipc-unix-socket.c:904
-#, c-format
-msgid "could not start worker[0] for '%s'"
-msgstr "không thể khởi chạy bộ làm việc worker[0] cho “%s”"
+msgid "re-code metadata to i18n.commitEncoding"
+msgstr "mã hóa lại siêu dữ liệu thành i18n.commitEncoding"
 
-#: compat/precompose_utf8.c:58 builtin/clone.c:353
-#, c-format
-msgid "failed to unlink '%s'"
-msgstr "gặp lỗi khi bỏ liên kết (unlink) “%s”"
+msgid "disable charset re-coding of metadata"
+msgstr "vô hiệu hóa mã hóa lại bộ ký tự của siêu dữ liệu"
 
-#: compat/fsmonitor/fsm-listen-darwin.c:355
-msgid "Unable to create FSEventStream."
-msgstr "Không thể tạo FSEventStream."
+msgid "encoding"
+msgstr "bảng mã"
 
-#: compat/fsmonitor/fsm-listen-darwin.c:403
-msgid "Failed to start the FSEventStream"
-msgstr "Gặp lỗi khi khởi chạy FSEventStream"
+msgid "re-code metadata to this encoding"
+msgstr "mã hóa lại siêu dữ liệu vào bảng mã này"
 
-#: builtin/add.c:26
-msgid "git add [<options>] [--] <pathspec>..."
-msgstr "git add [<các tùy chọn>] [--]  <pathspec>…"
+msgid "use scissors"
+msgstr "dùng \"scissor\""
 
-#: builtin/add.c:63
-#, c-format
-msgid "cannot chmod %cx '%s'"
-msgstr "không thể chmod %cx “%s”"
+msgid "<action>"
+msgstr "<hành động>"
 
-#: builtin/add.c:105
-#, c-format
-msgid "unexpected diff status %c"
-msgstr "trạng thái lệnh diff không như mong đợi %c"
+msgid "action when quoted CR is found"
+msgstr "hành động khi CR được trích dẫn được tìm thấy"
 
-#: builtin/add.c:110 builtin/commit.c:299
-msgid "updating files failed"
-msgstr "cập nhật tập tin gặp lỗi"
+msgid "use headers in message's body"
+msgstr "sử dụng phần đầu trong nội dung thư"
 
-#: builtin/add.c:120
-#, c-format
-msgid "remove '%s'\n"
-msgstr "gỡ bỏ “%s”\n"
+msgid "reading patches from stdin/tty..."
+msgstr "đọc các miếng vá từ đầu vào tiêu chuẩn stdin/tty..."
 
-#: builtin/add.c:204
-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:"
+#, c-format
+msgid "empty mbox: '%s'"
+msgstr "mbox trống rỗng: “%s”"
 
-#: builtin/add.c:312 builtin/rev-parse.c:993
-msgid "Could not read the index"
-msgstr "Không thể đọc bảng mục lục"
+msgid "git merge-base [-a | --all] <commit> <commit>..."
+msgstr "git merge-base [-a | --all] <lần_chuyển_giao> <lần_chuyển_giao>…"
 
-#: builtin/add.c:325
-msgid "Could not write patch"
-msgstr "Không thể ghi ra miếng vá"
+msgid "git merge-base [-a | --all] --octopus <commit>..."
+msgstr "git merge-base [-a | --all] --octopus <lần_chuyển_giao>…"
 
-#: builtin/add.c:328
-msgid "editing patch failed"
-msgstr "gặp lỗi khi sửa miếng vá"
+msgid "git merge-base --independent <commit>..."
+msgstr "git merge-base --independent <lần_chuyển_giao>…"
 
-#: builtin/add.c:331
-#, c-format
-msgid "Could not stat '%s'"
-msgstr "Không thể lấy thông tin thống kê về “%s”"
+msgid "git merge-base --is-ancestor <commit> <commit>"
+msgstr "git merge-base --is-ancestor <commit> <lần_chuyển_giao>"
 
-#: builtin/add.c:333
-msgid "Empty patch. Aborted."
-msgstr "Miếng vá trống rỗng. Nên bỏ qua."
+msgid "git merge-base --fork-point <ref> [<commit>]"
+msgstr "git merge-base --fork-point <tham-chiếu> [<lần_chuyển_giao>]"
 
-#: builtin/add.c:339
-#, c-format
-msgid "Could not apply '%s'"
-msgstr "Không thể áp dụng miếng vá “%s”"
+msgid "output all common ancestors"
+msgstr "xuất ra tất cả các ông bà, tổ tiên chung"
 
-#: builtin/add.c:347
-msgid "The following paths are ignored by one of your .gitignore files:\n"
-msgstr ""
-"Các đường dẫn theo sau đây sẽ bị lờ đi bởi một trong các tập tin .gitignore "
-"của bạn:\n"
+msgid "find ancestors for a single n-way merge"
+msgstr "tìm tổ tiên của hòa trộn n-way đơn"
 
-#: builtin/add.c:367 builtin/clean.c:927 builtin/fetch.c:175 builtin/mv.c:124
-#: builtin/prune-packed.c:14 builtin/pull.c:208 builtin/push.c:550
-#: builtin/remote.c:1454 builtin/rm.c:244 builtin/send-pack.c:194
-msgid "dry run"
-msgstr "chạy thử"
+msgid "list revs not reachable from others"
+msgstr "liệt kê các “rev” mà nó không thể đọc được từ cái khác"
 
-#: builtin/add.c:368 builtin/check-ignore.c:22 builtin/commit.c:1483
-#: builtin/count-objects.c:98 builtin/fsck.c:789 builtin/log.c:2338
-#: builtin/mv.c:123 builtin/read-tree.c:120
-msgid "be verbose"
-msgstr "chi tiết"
+msgid "is the first one ancestor of the other?"
+msgstr "là cha mẹ đầu tiên của cái khác?"
 
-#: builtin/add.c:370
-msgid "interactive picking"
-msgstr "sửa bằng cách tương tác"
+msgid "find where <commit> forked from reflog of <ref>"
+msgstr "tìm xem <commit> được rẽ nhánh ở đâu từ reflog của <th.chiếu>"
 
-#: builtin/add.c:371 builtin/checkout.c:1599 builtin/reset.c:417
-msgid "select hunks interactively"
-msgstr "chọn “hunks” theo kiểu tương tác"
+msgid ""
+"git merge-file [<options>] [-L <name1> [-L <orig> [-L <name2>]]] <file1> "
+"<orig-file> <file2>"
+msgstr ""
+"git merge-file [<các tùy chọn>] [-L <tên1> [-L <gốc> [-L <tên2>]]] <tập-"
+"tin1> <tập-tin-gốc> <tập-tin2>"
 
-#: builtin/add.c:372
-msgid "edit current diff and apply"
-msgstr "sửa diff hiện nay và áp dụng nó"
+msgid "send results to standard output"
+msgstr "gửi kết quả vào đầu ra tiêu chuẩn"
 
-#: builtin/add.c:373
-msgid "allow adding otherwise ignored files"
-msgstr "cho phép thêm các tập tin bị bỏ qua khác"
+msgid "use a diff3 based merge"
+msgstr "dùng kiểu hòa dựa trên diff3"
 
-#: builtin/add.c:374
-msgid "update tracked files"
-msgstr "cập nhật các tập tin được theo dõi"
+msgid "use a zealous diff3 based merge"
+msgstr "dùng kiểu hòa trộn dựa trên 'zealous diff3'"
 
-#: builtin/add.c:375
-msgid "renormalize EOL of tracked files (implies -u)"
-msgstr "thường hóa lại EOL của các tập tin được theo dõi (ý là -u)"
+msgid "for conflicts, use our version"
+msgstr "để tránh xung đột, sử dụng phiên bản của chúng ta"
 
-#: builtin/add.c:376
-msgid "record only the fact that the path will be added later"
-msgstr "chỉ ghi lại sự việc mà đường dẫn sẽ được thêm vào sau"
+msgid "for conflicts, use their version"
+msgstr "để tránh xung đột, sử dụng phiên bản của họ"
 
-#: builtin/add.c:377
-msgid "add changes from all tracked and untracked files"
-msgstr ""
-"thêm các thay đổi từ tất cả các tập tin có cũng như không được theo dõi dấu "
-"vết"
+msgid "for conflicts, use a union version"
+msgstr "để tránh xung đột, sử dụng phiên bản kết hợp"
 
-#: builtin/add.c:380
-msgid "ignore paths removed in the working tree (same as --no-all)"
-msgstr ""
-"lờ đi các đường dẫn bị gỡ bỏ trong cây thư mục làm việc (giống với --no-all)"
+msgid "for conflicts, use this marker size"
+msgstr "để tránh xung đột, hãy sử dụng kích thước bộ tạo này"
 
-#: builtin/add.c:382
-msgid "don't add, only refresh the index"
-msgstr "không thêm, chỉ làm tươi mới bảng mục lục"
+msgid "do not warn about conflicts"
+msgstr "không cảnh báo về các xung đột xảy ra"
 
-#: builtin/add.c:383
-msgid "just skip files which cannot be added because of errors"
-msgstr "chie bỏ qua những tập tin mà nó không thể được thêm vào bởi vì gặp lỗi"
+msgid "set labels for file1/orig-file/file2"
+msgstr "đặt nhãn cho tập-tin-1/tập-tin-gốc/tập-tin-2"
 
-#: builtin/add.c:384
-msgid "check if - even missing - files are ignored in dry run"
-msgstr ""
-"kiểm tra xem - thậm chí thiếu - tập tin bị bỏ qua trong quá trình chạy thử"
+#, c-format
+msgid "unknown option %s"
+msgstr "không hiểu tùy chọn %s"
 
-#: builtin/add.c:385 builtin/mv.c:128 builtin/rm.c:251
-msgid "allow updating entries outside of the sparse-checkout cone"
-msgstr "cho phép cập nhật các mục ở ngoài “sparse-checkout cone”"
+#, c-format
+msgid "could not parse object '%s'"
+msgstr "không thể phân tích đối tượng “%s”"
 
-#: builtin/add.c:387 builtin/update-index.c:1023
-msgid "override the executable bit of the listed files"
-msgstr "ghi đè lên bít thi hành của các tập tin được liệt kê"
+#, c-format
+msgid "cannot handle more than %d base. Ignoring %s."
+msgid_plural "cannot handle more than %d bases. Ignoring %s."
+msgstr[0] "không thể xử lý nhiều hơn %d nền. Bỏ qua %s."
 
-#: builtin/add.c:389
-msgid "warn when adding an embedded repository"
-msgstr "cảnh báo khi thêm một kho nhúng"
+msgid "not handling anything other than two heads merge."
+msgstr "không xử lý gì ngoài hai head hòa trộn."
 
-#: builtin/add.c:407
 #, c-format
-msgid ""
-"You've added another git repository inside your current repository.\n"
-"Clones of the outer repository will not contain the contents of\n"
-"the embedded repository and will not know how to obtain it.\n"
-"If you meant to add a submodule, use:\n"
-"\n"
-"\tgit submodule add <url> %s\n"
-"\n"
-"If you added this path by mistake, you can remove it from the\n"
-"index with:\n"
-"\n"
-"\tgit rm --cached %s\n"
-"\n"
-"See \"git help submodule\" for more information."
-msgstr ""
-"Bạn vừa thêm một kho git vào bên trong kho hiện tại của bạn.\n"
-"Các bản sao của kho ngoài sẽ không chứa các nội dung của\n"
-"kho nhúng và sẽ không biết làm thế nào để lấy nó.\n"
-"Nếu ý bạn là thêm một mô-đun-con, hãy chạy:\n"
-"\n"
-"\tgit submodule add <url> %s\n"
-"\n"
-"Nếu bạn đã thêm miếng vá này chỉ là sai sót, bạn có thể xóa bỏ\n"
-"nó khỏi mục lục bằng:\n"
-"\n"
-"\tgit rm --cached %s\n"
-"\n"
-"Xem \"git help submodule\" để biết thêm chi tiết."
+msgid "could not resolve ref '%s'"
+msgstr "không thể phân giải tham chiếu %s"
 
-#: builtin/add.c:436
 #, c-format
-msgid "adding embedded git repository: %s"
-msgstr "thêm cần một kho git nhúng: %s"
+msgid "Merging %s with %s\n"
+msgstr "Đang hòa trộn %s với %s\n"
 
-#: builtin/add.c:456
-msgid ""
-"Use -f if you really want to add them.\n"
-"Turn this message off by running\n"
-"\"git config advice.addIgnoredFile false\""
-msgstr ""
-"Sử dụng -f nếu bạn thực sự muốn thêm chúng.\n"
-"Tắt thông báo này bằng cách chạy lệnh\n"
-"\"git config advice.addIgnoredFile false\""
+msgid "git merge [<options>] [<commit>...]"
+msgstr "git merge [<các tùy chọn>] [<commit>…]"
 
-#: builtin/add.c:471
-msgid "adding files failed"
-msgstr "thêm tập tin gặp lỗi"
+msgid "switch `m' requires a value"
+msgstr "switch “m” yêu cầu một giá trị"
+
+#, c-format
+msgid "option `%s' requires a value"
+msgstr "tùy chọn “%s” yêu cầu một giá trị"
 
-#: builtin/add.c:534
 #, c-format
-msgid "--chmod param '%s' must be either -x or +x"
-msgstr "--chmod tham số “%s” phải hoặc là -x hay +x"
+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/add.c:555 builtin/checkout.c:1770 builtin/commit.c:365
-#: builtin/reset.c:436 builtin/rm.c:275 builtin/stash.c:1702
 #, c-format
-msgid "'%s' and pathspec arguments cannot be used together"
-msgstr "'%s' và các tham số đặc tả đường dẫn không thể dùng cùng nhau"
+msgid "Available strategies are:"
+msgstr "Các chiến lược sẵn sàng là:"
 
-#: builtin/add.c:566
 #, c-format
-msgid "Nothing specified, nothing added.\n"
-msgstr "Không có gì được chỉ ra, không có gì được thêm vào.\n"
+msgid "Available custom strategies are:"
+msgstr "Các chiến lược tùy chỉnh sẵn sàng là:"
 
-#: builtin/add.c:568
-msgid ""
-"Maybe you wanted to say 'git add .'?\n"
-"Turn this message off by running\n"
-"\"git config advice.addEmptyPathspec false\""
-msgstr ""
-"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\""
+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/am.c:393
-msgid "could not parse author script"
-msgstr "không thể phân tích cú pháp văn lệnh tác giả"
+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/am.c:483
-#, c-format
-msgid "'%s' was deleted by the applypatch-msg hook"
-msgstr "“%s” bị xóa bởi móc applypatch-msg"
+msgid "(synonym to --stat)"
+msgstr "(đồng nghĩa với --stat)"
 
-#: builtin/am.c:525
-#, c-format
-msgid "Malformed input line: '%s'."
-msgstr "Dòng đầu vào dị hình: “%s”."
+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/am.c:563
-#, 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”"
+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/am.c:589
-msgid "fseek failed"
-msgstr "fseek gặp lỗi"
+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/am.c:777
-#, c-format
-msgid "could not parse patch '%s'"
-msgstr "không thể phân tích cú pháp “%s”"
+msgid "edit message before committing"
+msgstr "sửa chú thích trước khi chuyển giao"
 
-#: builtin/am.c:842
-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"
+msgid "allow fast-forward (default)"
+msgstr "cho phép chuyển-tiếp-nhanh (mặc định)"
 
-#: builtin/am.c:890
-msgid "invalid timestamp"
-msgstr "dấu thời gian không hợp lệ"
+msgid "abort if fast-forward is not possible"
+msgstr "bỏ qua nếu chuyển-tiếp-nhanh không thể được"
 
-#: builtin/am.c:895 builtin/am.c:907
-msgid "invalid Date line"
-msgstr "dòng Ngày tháng không hợp lệ"
+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/am.c:902
-msgid "invalid timezone offset"
-msgstr "độ lệch múi giờ không hợp lệ"
+msgid "strategy"
+msgstr "chiến lược"
 
-#: builtin/am.c:995
-msgid "Patch format detection failed."
-msgstr "Dò tìm định dạng miếng vá gặp lỗi."
+msgid "merge strategy to use"
+msgstr "chiến lược hòa trộn sẽ dùng"
+
+msgid "option=value"
+msgstr "tùy_chọn=giá_trị"
+
+msgid "option for selected merge strategy"
+msgstr "tùy chọn cho chiến lược hòa trộn đã chọn"
+
+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)"
+
+msgid "use <name> instead of the real target"
+msgstr "dùng <tên> thay cho đích thật"
+
+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"
+
+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"
+
+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"
+
+msgid "allow merging unrelated histories"
+msgstr "cho phép hòa trộn lịch sử không liên quan"
+
+msgid "bypass pre-merge-commit and commit-msg hooks"
+msgstr "vòng qua móc (hook) pre-merge-commit và commit-msg"
+
+msgid "could not run stash."
+msgstr "không thể chạy stash."
+
+msgid "stash failed"
+msgstr "lệnh tạm cất gặp lỗi"
 
-#: builtin/am.c:1000 builtin/clone.c:306
 #, c-format
-msgid "failed to create directory '%s'"
-msgstr "tạo thư mục \"%s\" gặp lỗi"
+msgid "not a valid object: %s"
+msgstr "không phải là một đối tượng hợp lệ: %s"
 
-#: builtin/am.c:1005
-msgid "Failed to split patches."
-msgstr "Gặp lỗi khi chia nhỏ các miếng vá."
+msgid "read-tree failed"
+msgstr "read-tree gặp lỗi"
+
+msgid "Already up to date. (nothing to squash)"
+msgstr "Đã cập nhật rồi. (không có gì để squash)"
+
+msgid "Already up to date."
+msgstr "Đã cập nhật rồi."
 
-#: builtin/am.c:1154
 #, 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\"."
+msgid "Squash commit -- not updating HEAD\n"
+msgstr "Squash commit -- không cập nhật HEAD\n"
 
-#: builtin/am.c:1155
 #, 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ế."
+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/am.c:1160
 #, c-format
-msgid "To record the empty patch as an empty commit, run \"%s --allow-empty\"."
-msgstr ""
-"Để ghi một miếng vá trống rỗng như một lần chuyển giao rông, \"%s --allow-"
-"empty\"."
+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/am.c:1162
 #, 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\"."
+msgid "Bad branch.%s.mergeoptions string: %s"
+msgstr "Chuỗi branch.%s.mergeoptions sai: %s"
 
-#: builtin/am.c:1257
-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."
+msgid "Unable to write index."
+msgstr "Không thể ghi bảng mục lục."
+
+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/am.c:1345
 #, c-format
-msgid "missing author line in commit %s"
-msgstr "thiếu dòng tác giả trong lần chuyển gia %s"
+msgid "unknown strategy option: -X%s"
+msgstr "không hiểu chiến lược: -X%s"
 
-#: builtin/am.c:1348
 #, c-format
-msgid "invalid ident line: %.*s"
-msgstr "dòng định danh không hợp lệ: %.*s"
+msgid "unable to write %s"
+msgstr "không thể ghi %s"
 
-#: builtin/am.c:1567
-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”."
+#, c-format
+msgid "Could not read from '%s'"
+msgstr "Không thể đọc từ “%s”"
 
-#: builtin/am.c:1569
-msgid "Using index info to reconstruct a base tree..."
+#, c-format
+msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 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ở…"
+"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/am.c:1588
 msgid ""
-"Did you hand edit your patch?\n"
-"It does not apply to blobs recorded in its index."
+"Please enter a commit message to explain why this merge is necessary,\n"
+"especially if it merges an updated upstream into a topic branch.\n"
+"\n"
 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ó."
+"Hãy nhập vào các thông tin để giải thích tại sao sự hòa trộn này là cần "
+"thiết,\n"
+"đặc biệt là khi nó hòa trộn thượng nguồn đã cập nhật vào trong một nhánh "
+"topic.\n"
+"\n"
 
-#: builtin/am.c:1594
-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”…"
+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/am.c:1620
-msgid "Failed to merge in the changes."
-msgstr "Gặp lỗi khi trộn vào các thay đổi."
+#, c-format
+msgid ""
+"Lines starting with '%c' will be ignored, and an empty message aborts\n"
+"the commit.\n"
+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/am.c:1652
-msgid "applying to an empty history"
-msgstr "áp dụng vào một lịch sử trống rỗng"
+msgid "Empty commit message."
+msgstr "Chú thích của lần commit (chuyển giao) bị trống rỗng."
 
-#: builtin/am.c:1704 builtin/am.c:1708
 #, 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:1726
-msgid "Commit Body is:"
-msgstr "Thân của lần chuyển giao là:"
+msgid "Wonderful.\n"
+msgstr "Tuyệt vời.\n"
 
-#. TRANSLATORS: Make sure to include [y], [n], [e], [v] and [a]
-#. in your translation. The program will only accept English
-#. input at this point.
-#.
-#: builtin/am.c:1736
 #, c-format
-msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
+msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 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]: "
+"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/am.c:1782 builtin/commit.c:410
-msgid "unable to write index file"
-msgstr "không thể ghi tập tin lưu mục lục"
+msgid "No current branch."
+msgstr "Không phải nhánh hiện hành."
 
-#: builtin/am.c:1786
-#, 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)"
+msgid "No remote for the current branch."
+msgstr "Không có máy chủ cho nhánh hiện hành."
+
+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/am.c:1828
 #, c-format
-msgid "Skipping: %.*s"
-msgstr "Đang bỏ qua: %.*s"
+msgid "No remote-tracking branch for %s from %s"
+msgstr "Không nhánh mạng theo dõi cho %s từ %s"
 
-#: builtin/am.c:1833
 #, c-format
-msgid "Creating an empty commit: %.*s"
-msgstr "Đang tạo một lần chuyển giao trống rỗng: %.*s"
+msgid "Bad value '%s' in environment '%s'"
+msgstr "Giá trị sai “%s” trong biến môi trường “%s”"
 
-#: builtin/am.c:1837
-msgid "Patch is empty."
-msgstr "Miếng vá trống rỗng."
+#, c-format
+msgid "could not close '%s'"
+msgstr "không thể đóng “%s”"
 
-#: builtin/am.c:1848 builtin/am.c:1917
 #, c-format
-msgid "Applying: %.*s"
-msgstr "Áp dụng: %.*s"
+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/am.c:1865
-msgid "No changes -- Patch already applied."
-msgstr "Không thay đổi gì cả -- Miếng vá đã được áp dụng rồi."
+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/am.c:1871
-#, c-format
-msgid "Patch failed at %s %.*s"
-msgstr "Gặp lỗi khi vá tại %s %.*s"
+msgid "--abort expects no arguments"
+msgstr "--abort không nhận các đối số"
+
+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/am.c:1875
-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"
+msgid "--quit expects no arguments"
+msgstr "--quit không nhận các đối số"
 
-#: builtin/am.c:1921
-msgid "No changes - recorded it as an empty commit."
-msgstr "Không có thay đổi nào - được ghi thành một lần chuyển giao rỗng."
+msgid "--continue expects no arguments"
+msgstr "--continue không nhận đối số"
+
+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/am.c:1923
 msgid ""
-"No changes - did you forget to use 'git add'?\n"
-"If there is nothing left to stage, chances are that something else\n"
-"already introduced the same changes; you might want to skip this patch."
+"You have not concluded your merge (MERGE_HEAD exists).\n"
+"Please, commit your changes before you merge."
 msgstr ""
-"Không có thay đổi nào - bạn đã quên sử dụng lệnh “git add” à?\n"
-"Nếu ở đây không có gì còn lại stage, tình cờ là có một số thứ khác\n"
-"đã 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."
+"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/am.c:1931
 msgid ""
-"You still have unmerged paths in your index.\n"
-"You should 'git add' each file with resolved conflicts to mark them as "
-"such.\n"
-"You might run `git rm` on a file to accept \"deleted by them\" for it."
+"You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
+"Please, commit your changes before you merge."
 msgstr ""
-"Bạn vẫn có những đường dẫn chưa hòa trộn trong chỉ mục của bạn.\n"
-"Bạn nên “git add” từng tập tin với các xung đột đã được giải quyết để đánh "
-"dấu chúng là thế.\n"
-"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ó."
+"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/am.c:2039 builtin/am.c:2043 builtin/am.c:2055 builtin/reset.c:455
-#: builtin/reset.c:463
-#, c-format
-msgid "Could not parse object '%s'."
-msgstr "Không thể phân tích đối tượng “%s”."
+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/am.c:2091 builtin/am.c:2167
-msgid "failed to clean index"
-msgstr "gặp lỗi khi dọn bảng mục lục"
+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/am.c:2135
-msgid ""
-"You seem to have moved HEAD since the last 'am' failure.\n"
-"Not rewinding to ORIG_HEAD"
+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ợ"
+
+msgid "Non-fast-forward commit does not make sense into an empty head"
 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"
+"Chuyển giao không-chuyển-tiếp-nhanh không hợp lý ở trong một head trống rỗng"
 
-#: builtin/am.c:2292
 #, c-format
-msgid "options '%s=%s' and '%s=%s' cannot be used together"
-msgstr "tùy chọn '%s=%s' và '%s=%s' không thể dùng cùng nhau"
+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/am.c:2323
-msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
-msgstr "git am [<các tùy chọn>] [(<mbox>|<Maildir>)…]"
+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/am.c:2324
-msgid "git am [<options>] (--continue | --skip | --abort)"
-msgstr "git am [<các tùy chọn>] (--continue | --skip | --abort)"
+msgid "refusing to merge unrelated histories"
+msgstr "từ chối hòa trộn lịch sử không liên quan"
 
-#: builtin/am.c:2330
-msgid "run interactively"
-msgstr "chạy kiểu tương tác"
+#, c-format
+msgid "Updating %s..%s\n"
+msgstr "Đang cập nhật %s..%s\n"
 
-#: builtin/am.c:2332
-msgid "historical option -- no-op"
-msgstr "tùy chọn lịch sử -- không-toán-tử"
+#, c-format
+msgid "Trying really trivial in-index merge...\n"
+msgstr "Đang thử hòa trộn kiểu “trivial in-index”…\n"
 
-#: builtin/am.c:2334
-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"
+#, c-format
+msgid "Nope.\n"
+msgstr "Không.\n"
 
-#: builtin/am.c:2335 builtin/init-db.c:547 builtin/prune-packed.c:16
-#: builtin/repack.c:646 builtin/stash.c:946
-msgid "be quiet"
-msgstr "im lặng"
+#, 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/am.c:2337
-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"
+#, c-format
+msgid "Trying merge strategy %s...\n"
+msgstr "Đang thử chiến lược hòa trộn %s…\n"
 
-#: builtin/am.c:2340
-msgid "recode into utf8 (default)"
-msgstr "chuyển mã thành utf8 (mặc định)"
+#, 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/am.c:2342
-msgid "pass -k flag to git-mailinfo"
-msgstr "chuyển cờ -k cho git-mailinfo"
+#, 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/am.c:2344
-msgid "pass -b flag to git-mailinfo"
-msgstr "chuyển cờ -b cho git-mailinfo"
+#, c-format
+msgid "Using the %s strategy to prepare resolving by hand.\n"
+msgstr "Sử dụng chiến lược %s để chuẩn bị giải quyết bằng tay.\n"
 
-#: builtin/am.c:2346
-msgid "pass -m flag to git-mailinfo"
-msgstr "chuyển cờ -m cho git-mailinfo"
+#, c-format
+msgid "Automatic merge went well; stopped before committing as requested\n"
+msgstr ""
+"Hòa trộn tự động đã trở nên tốt; bị dừng trước khi việc chuyển giao được yêu "
+"cầu\n"
 
-#: builtin/am.c:2348
-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"
+#, c-format
+msgid "warning: tag input does not pass fsck: %s"
+msgstr "cảnh báo: đầu vào thẻ không qua kiểm tra fsck: %s"
 
-#: builtin/am.c:2351
-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"
+#, c-format
+msgid "error: tag input does not pass fsck: %s"
+msgstr "lỗi: đầu vào thẻ không vượt qua fsck: %s"
 
-#: builtin/am.c:2354
-msgid "strip everything before a scissors line"
-msgstr "cắt mọi thứ trước dòng scissors"
+#, c-format
+msgid "%d (FSCK_IGNORE?) should never trigger this callback"
+msgstr "%d (FSCK_IGNORE?) không bao giờ nên kích hoạt cuộc gọi ngược này"
 
-#: builtin/am.c:2356
-msgid "pass it through git-mailinfo"
-msgstr "chuyển nó qua git-mailinfo"
+#, c-format
+msgid "could not read tagged object '%s'"
+msgstr "không thể đọc đối tượng được đánh thẻ %s"
 
-#: builtin/am.c:2359 builtin/am.c:2362 builtin/am.c:2365 builtin/am.c:2368
-#: builtin/am.c:2371 builtin/am.c:2374 builtin/am.c:2377 builtin/am.c:2380
-#: builtin/am.c:2386
-msgid "pass it through git-apply"
-msgstr "chuyển nó qua git-apply"
+#, c-format
+msgid "object '%s' tagged as '%s', but is a '%s' type"
+msgstr "đối tượng %s được đánh thẻ là %s, không phải là kiểu %s"
 
-#: builtin/am.c:2376 builtin/commit.c:1514 builtin/fmt-merge-msg.c:18
-#: builtin/fmt-merge-msg.c:21 builtin/grep.c:920 builtin/merge.c:263
-#: builtin/pull.c:142 builtin/pull.c:204 builtin/pull.c:221
-#: builtin/rebase.c:1074 builtin/repack.c:657 builtin/repack.c:661
-#: builtin/repack.c:663 builtin/show-branch.c:650 builtin/show-ref.c:172
-#: builtin/tag.c:446 parse-options.h:159 parse-options.h:180
-#: parse-options.h:348
-msgid "n"
-msgstr "n"
+msgid "could not read from stdin"
+msgstr "không thể đọc từ đầu vào tiêu chuẩn"
 
-#: builtin/am.c:2382 builtin/branch.c:695 builtin/bugreport.c:109
-#: builtin/cat-file.c:848 builtin/cat-file.c:852 builtin/cat-file.c:856
-#: builtin/for-each-ref.c:41 builtin/ls-tree.c:357 builtin/replace.c:555
-#: builtin/tag.c:480 builtin/verify-tag.c:38
-msgid "format"
-msgstr "định dạng"
+msgid "tag on stdin did not pass our strict fsck check"
+msgstr ""
+"thẻ trên stdin đã không vượt qua kiểm tra fsck nghiêm ngặt của chúng tôi"
 
-#: builtin/am.c:2383
-msgid "format the patch(es) are in"
-msgstr "định dạng (các) miếng vá theo"
+msgid "tag on stdin did not refer to a valid object"
+msgstr ""
+"thẻ trên đầu vào tiêu chuẩn không chỉ đến một lần chuyển giao hợp lệ nào cả"
 
-#: builtin/am.c:2389
-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"
+msgid "unable to write tag file"
+msgstr "không thể ghi vào tập tin lưu thẻ"
 
-#: builtin/am.c:2391
-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"
+msgid "input is NUL terminated"
+msgstr "đầu vào được chấm dứt bởi NUL"
 
-#: builtin/am.c:2394
-msgid "synonyms for --continue"
-msgstr "đồng nghĩa với --continue"
+msgid "allow missing objects"
+msgstr "cho phép thiếu đối tượng"
 
-#: builtin/am.c:2397
-msgid "skip the current patch"
-msgstr "bỏ qua miếng vá hiện hành"
+msgid "allow creation of more than one tree"
+msgstr "cho phép tạo nhiều hơn một cây"
 
-#: builtin/am.c:2400
-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á"
+msgid ""
+"git multi-pack-index [<options>] write [--preferred-pack=<pack>][--refs-"
+"snapshot=<path>]"
+msgstr ""
+"git multi-pack-index [<các tùy chọn>] write [--preferred-pack=<gói>][--refs-"
+"snapshot=</đường/dẫn>]"
 
-#: builtin/am.c:2403
-msgid "abort the patching operation but keep HEAD where it is"
-msgstr "bỏ qua thao tác vá nhưng vẫn giữ HEAD nơi nó chỉ đến"
+msgid "git multi-pack-index [<options>] verify"
+msgstr "git multi-pack-index [<các tùy chọn>] verify"
 
-#: builtin/am.c:2407
-msgid "show the patch being applied"
-msgstr "hiển thị miếng vá đã được áp dụng rồi"
+msgid "git multi-pack-index [<options>] expire"
+msgstr "git multi-pack-index [<các tùy chọn>] expire"
 
-#: builtin/am.c:2411
-msgid "record the empty patch as an empty commit"
-msgstr "ghi lại miếng vá trống rỗng như là một lần chuyển giao trống"
+msgid "git multi-pack-index [<options>] repack [--batch-size=<size>]"
+msgstr "git multi-pack-index [<các-tùy-chọn>] repack [--batch-size=<cỡ>]"
 
-#: builtin/am.c:2415
-msgid "lie about committer date"
-msgstr "nói dối về ngày chuyển giao"
+msgid "directory"
+msgstr "thư mục"
 
-#: builtin/am.c:2417
-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ả"
+msgid "object directory containing set of packfile and pack-index pairs"
+msgstr "thư mục đối tượng có chứa một bộ các tập tin gói và cặp pack-index"
 
-#: builtin/am.c:2419 builtin/commit-tree.c:118 builtin/commit.c:1642
-#: builtin/merge.c:302 builtin/pull.c:179 builtin/rebase.c:1127
-#: builtin/revert.c:117 builtin/tag.c:461
-msgid "key-id"
-msgstr "mã-số-khóa"
+msgid "preferred-pack"
+msgstr "preferred-pack"
 
-#: builtin/am.c:2420 builtin/rebase.c:1128
-msgid "GPG-sign commits"
-msgstr "Các lần chuyển giao ký-GPG"
+msgid "pack for reuse when computing a multi-pack bitmap"
+msgstr "gói được sử dụng khi tính toán một \"multi-pack bitmap\""
 
-#: builtin/am.c:2423
-msgid "how to handle empty patches"
-msgstr "xử lý các miếng vá trống rỗng như thế nào"
+msgid "write multi-pack bitmap"
+msgstr "ghi multi-pack bitmap"
 
-#: builtin/am.c:2426
-msgid "(internal use for git-rebase)"
-msgstr "(dùng nội bộ cho git-rebase)"
+msgid "write multi-pack index containing only given indexes"
+msgstr "ghi mục lục multi-pack chỉ chứa các mục lục đã cho"
+
+msgid "refs snapshot for selecting bitmap commits"
+msgstr "ảnh chụp nhanh refs để chọn các lần chuyển giao ánh xạ"
 
-#: builtin/am.c:2444
 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."
+"during repack, collect pack-files of smaller size into a batch that is "
+"larger than this size"
 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."
+"trong suốt quá trình đóng gói lại, gom các tập tin gói có kích cỡ nhỏ hơn "
+"vào một bó cái mà lớn hơn kích thước này"
 
-#: builtin/am.c:2451
-msgid "failed to read the index"
-msgstr "gặp lỗi đọc bảng mục lục"
+msgid "git mv [<options>] <source>... <destination>"
+msgstr "git mv [<các tùy chọn>] <nguồn>… <đích>"
 
-#: builtin/am.c:2466
 #, 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."
+msgid "Directory %s is in index and no submodule?"
+msgstr "Thư mục “%s” có ở trong chỉ mục mà không có mô-đun con?"
 
-#: builtin/am.c:2490
-#, c-format
-msgid ""
-"Stray %s directory found.\n"
-"Use \"git am --abort\" to remove it."
+msgid "Please stage your changes to .gitmodules or stash them to proceed"
 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:2496
-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:2506
-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"
+"Hãy đưa các thay đổi của bạn vào .gitmodules hay tạm cất chúng đi để xử lý"
 
-#: builtin/apply.c:8
-msgid "git apply [<options>] [<patch>...]"
-msgstr "git apply [<các tùy chọn>] [<miếng-vá>…]"
+#, c-format
+msgid "%.*s is in index"
+msgstr "%.*s trong bảng mục lục"
 
-#: builtin/archive.c:18
-msgid "could not redirect output"
-msgstr "không thể chuyển hướng kết xuất"
+msgid "force move/rename even if target exists"
+msgstr "ép buộc di chuyển hay đổi tên thậm chí cả khi đích đã tồn tại"
 
-#: builtin/archive.c:35
-msgid "git archive: Remote with no URL"
-msgstr "git archive: Máy chủ không có địa chỉ URL"
+msgid "skip move/rename errors"
+msgstr "bỏ qua các lỗi liên quan đến di chuyển, đổi tên"
 
-#: builtin/archive.c:59
-msgid "git archive: expected ACK/NAK, got a flush packet"
-msgstr "git archive: cần ACK/NAK, nhưng lại nhận được gói flush"
+#, c-format
+msgid "destination '%s' is not a directory"
+msgstr "có đích “%s” nhưng đây không phải là một thư mục"
 
-#: builtin/archive.c:62
 #, c-format
-msgid "git archive: NACK %s"
-msgstr "git archive: NACK %s"
+msgid "Checking rename of '%s' to '%s'\n"
+msgstr "Đang kiểm tra việc đổi tên của “%s” thành “%s”\n"
 
-#: builtin/archive.c:63
-msgid "git archive: protocol error"
-msgstr "git archive: lỗi giao thức"
+msgid "bad source"
+msgstr "nguồn sai"
 
-#: builtin/archive.c:67
-msgid "git archive: expected a flush"
-msgstr "git archive: cần một flush (đẩy dữ liệu lên đĩa)"
+msgid "can not move directory into itself"
+msgstr "không thể di chuyển một thư mục vào trong chính nó được"
 
-#: builtin/bisect--helper.c:24
-msgid "git bisect--helper --bisect-reset [<commit>]"
-msgstr "git bisect--helper --bisect-reset [<lần_chuyển_giao>]"
+msgid "cannot move directory over file"
+msgstr "không di chuyển được thư mục thông qua tập tin"
 
-#: builtin/bisect--helper.c:26
-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>…]"
+msgid "source directory is empty"
+msgstr "thư mục nguồn là trống rỗng"
 
-#: builtin/bisect--helper.c:29
-msgid "git bisect--helper --bisect-state (bad|new) [<rev>]"
-msgstr "git bisect--helper --bisect-state (bad|new) [<lần_chuyển_giao>]"
+msgid "not under version control"
+msgstr "không nằm dưới sự quản lý mã nguồn"
 
-#: builtin/bisect--helper.c:30
-msgid "git bisect--helper --bisect-state (good|old) [<rev>...]"
-msgstr "git bisect--helper --bisect-state (good|old) [<lần_chuyển_giao>…]"
+msgid "conflicted"
+msgstr "bị xung đột"
 
-#: builtin/bisect--helper.c:31
-msgid "git bisect--helper --bisect-replay <filename>"
-msgstr "git bisect--helper --bisect-replay <tên_tập_tin>"
+msgid "destination exists"
+msgstr "đích đã tồn tại sẵn rồi"
 
-#: builtin/bisect--helper.c:32
-msgid "git bisect--helper --bisect-skip [(<rev>|<range>)...]"
-msgstr "git bisect--helper --bisect-skip [(<rev>|<vùng>)…]"
+#, c-format
+msgid "overwriting '%s'"
+msgstr "đang ghi đè lên “%s”"
 
-#: builtin/bisect--helper.c:34
-msgid "git bisect--helper --bisect-run <cmd>..."
-msgstr "git bisect--helper --bisect-run <lệnh>…"
+msgid "Cannot overwrite"
+msgstr "Không thể ghi đè"
 
-#: builtin/bisect--helper.c:109
-#, c-format
-msgid "cannot open file '%s' in mode '%s'"
-msgstr "không thể mở tập tin “%s” ở chế độ “%s”"
+msgid "multiple sources for the same target"
+msgstr "nhiều nguồn cho cùng một đích"
 
-#: builtin/bisect--helper.c:116
-#, c-format
-msgid "could not write to file '%s'"
-msgstr "không thể ghi vào tập tin “%s”"
+msgid "destination directory does not exist"
+msgstr "thư mục đích không tồn tại"
 
-#: builtin/bisect--helper.c:154
 #, c-format
-msgid "cannot open file '%s' for reading"
-msgstr "không thể mở tập tin “%s” để đọc"
+msgid "%s, source=%s, destination=%s"
+msgstr "%s, nguồn=%s, đích=%s"
 
-#: builtin/bisect--helper.c:170
 #, c-format
-msgid "'%s' is not a valid term"
-msgstr "“%s” không phải một thời hạn hợp lệ"
+msgid "Renaming %s to %s\n"
+msgstr "Đổi tên %s thành %s\n"
 
-#: builtin/bisect--helper.c:174
 #, 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ỳ"
+msgid "renaming '%s' failed"
+msgstr "gặp lỗi khi đổi tên “%s”"
 
-#: builtin/bisect--helper.c:184
-#, 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”"
+msgid "git name-rev [<options>] <commit>..."
+msgstr "git name-rev [<các tùy chọn>] <commit>…"
 
-#: builtin/bisect--helper.c:194
-msgid "please use two different terms"
-msgstr "vui lòng dùng hai thời kỳ khác nhau"
+msgid "git name-rev [<options>] --all"
+msgstr "git name-rev [<các tùy chọn>] --all"
 
-#: builtin/bisect--helper.c:210
-#, c-format
-msgid "We are not bisecting.\n"
-msgstr "Chúng tôi đang không bisect.\n"
+msgid "git name-rev [<options>] --annotate-stdin"
+msgstr "git name-rev [<các tùy chọn>] --annotate-stdin"
 
-#: builtin/bisect--helper.c:218
-#, 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ệ"
+msgid "print only ref-based names (no object names)"
+msgstr "chỉ hiển thị các tham chiếu cơ sở (không phải các tên đối tượng)"
 
-#: builtin/bisect--helper.c:227
-#, c-format
-msgid ""
-"could not check out original HEAD '%s'. Try 'git bisect reset <commit>'."
+msgid "only use tags to name the commits"
+msgstr "chỉ dùng các thẻ để đặt tên cho các lần chuyển giao"
+
+msgid "only use refs matching <pattern>"
+msgstr "chỉ sử dụng các tham chiếu khớp với <mẫu>"
+
+msgid "ignore refs matching <pattern>"
+msgstr "bỏ qua các tham chiếu khớp với <mẫu>"
+
+msgid "list all commits reachable from all refs"
 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>”."
+"liệt kê tất cả các lần chuyển giao có thể đọc được từ tất cả các tham chiếu"
 
-#: builtin/bisect--helper.c:271
-#, c-format
-msgid "Bad bisect_write argument: %s"
-msgstr "Đối số bisect_write sai: %s"
+msgid "deprecated: use --annotate-stdin instead"
+msgstr "đã lạc hậu: hãy dùng --annotate-stdin để thay thế"
 
-#: builtin/bisect--helper.c:276
-#, 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”"
+msgid "annotate text from stdin"
+msgstr "chú giải chữ từ đầu vào tiêu chuẩn stdin"
 
-#: builtin/bisect--helper.c:288
-#, c-format
-msgid "couldn't open the file '%s'"
-msgstr "không thể mở tập tin “%s”"
+msgid "allow to print `undefined` names (default)"
+msgstr "cho phép in các tên “chưa định nghĩa” (mặc định)"
 
-#: builtin/bisect--helper.c:314
-#, 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"
+msgid "dereference tags in the input (internal use)"
+msgstr "bãi bỏ tham chiếu các thẻ trong đầu vào (dùng nội bộ)"
+
+msgid "git notes [--ref <notes-ref>] [list [<object>]]"
+msgstr "git notes [--ref <notes-ref>] [list [<đối-tượng>]]"
 
-#: builtin/bisect--helper.c:341
-#, c-format
 msgid ""
-"You need to give me at least one %s and %s revision.\n"
-"You can use \"git bisect %s\" and \"git bisect %s\" for that."
+"git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <msg> | -F <file> "
+"| (-c | -C) <object>] [<object>]"
 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 đó."
+"git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <lời-nhắn> | -F "
+"<tập-tin> | (-c | -C) <đối-tượng>] [<đối-tượng>]"
+
+msgid "git notes [--ref <notes-ref>] copy [-f] <from-object> <to-object>"
+msgstr "git notes [--ref <notes-ref>] copy [-f] <từ-đối-tượng> <đến-đối-tượng>"
 
-#: builtin/bisect--helper.c:345
-#, c-format
 msgid ""
-"You need to start by \"git bisect start\".\n"
-"You then need to give me at least one %s and %s revision.\n"
-"You can use \"git bisect %s\" and \"git bisect %s\" for that."
+"git notes [--ref <notes-ref>] append [--allow-empty] [-m <msg> | -F <file> | "
+"(-c | -C) <object>] [<object>]"
 msgstr ""
-"Bạn cần bắt đầu bằng lệnh \"git bisect start\".\n"
-"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:365
-#, 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"
+"git notes [--ref <notes-ref>] append [--allow-empty] [-m <lời-nhắn> | -F "
+"<tập-tin> | (-c | -C) <đối-tượng>] [<đối-tượng>]"
 
-#. TRANSLATORS: Make sure to include [Y] and [n] in your
-#. translation. The program will only accept English input
-#. at this point.
-#.
-#: builtin/bisect--helper.c:373
-msgid "Are you sure [Y/n]? "
-msgstr "Bạn có chắc chắn chưa [Y/n]? "
+msgid "git notes [--ref <notes-ref>] edit [--allow-empty] [<object>]"
+msgstr "git notes [--ref <notes-ref>] edit [--allow-empty] [<đối-tượng>]"
 
-#: builtin/bisect--helper.c:434
-msgid "no terms defined"
-msgstr "chưa định nghĩa thời kỳ nào"
+msgid "git notes [--ref <notes-ref>] show [<object>]"
+msgstr "git notes [--ref <notes-ref>] show [<đối-tượng>]"
 
-#: builtin/bisect--helper.c:437
-#, c-format
 msgid ""
-"Your current terms are %s for the old state\n"
-"and %s for the new state.\n"
+"git notes [--ref <notes-ref>] merge [-v | -q] [-s <strategy>] <notes-ref>"
 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"
+"git notes [--ref <notes-ref>] merge [-v | -q] [-s <chiến-lược> ] <notes-ref>"
 
-#: builtin/bisect--helper.c:447
-#, c-format
-msgid ""
-"invalid argument %s for 'git bisect terms'.\n"
-"Supported options are: --term-good|--term-old and --term-bad|--term-new."
-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."
+msgid "git notes [--ref <notes-ref>] remove [<object>...]"
+msgstr "git notes [--ref <notes-ref>] remove [<đối-tượng>…]"
 
-#: builtin/bisect--helper.c:514 builtin/bisect--helper.c:1038
-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"
+msgid "git notes [--ref <notes-ref>] prune [-n] [-v]"
+msgstr "git notes [--ref <notes-ref>] prune [-n] [-v]"
 
-#: builtin/bisect--helper.c:536
-#, c-format
-msgid "could not open '%s' for appending"
-msgstr "không thể mở “%s” để nối thêm"
+msgid "git notes [--ref <notes-ref>] get-ref"
+msgstr "git notes [--ref <notes-ref>] get-ref"
 
-#: builtin/bisect--helper.c:655 builtin/bisect--helper.c:668
-msgid "'' is not a valid term"
-msgstr "” không phải một thời hạn hợp lệ"
+msgid "git notes [list [<object>]]"
+msgstr "git notes [list [<đối tượng>]]"
 
-#: builtin/bisect--helper.c:678
-#, c-format
-msgid "unrecognized option: '%s'"
-msgstr "tùy chọn không được thừa nhận: “%s”"
+msgid "git notes add [<options>] [<object>]"
+msgstr "git notes add [<các tùy chọn>] [<đối-tượng>]"
 
-#: builtin/bisect--helper.c:682
-#, 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ệ"
+msgid "git notes copy [<options>] <from-object> <to-object>"
+msgstr "git notes copy [<các tùy chọn>] <từ-đối-tượng> <đến-đối-tượng>"
 
-#: builtin/bisect--helper.c:713
-msgid "bad HEAD - I need a HEAD"
-msgstr "sai HEAD - Tôi cần một HEAD"
+msgid "git notes copy --stdin [<from-object> <to-object>]..."
+msgstr "git notes copy --stdin [<từ-đối-tượng> <đến-đối-tượng>]…"
 
-#: builtin/bisect--helper.c:728
-#, 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ệ>\"."
+msgid "git notes append [<options>] [<object>]"
+msgstr "git notes append [<các tùy chọn>] [<đối-tượng>]"
 
-#: builtin/bisect--helper.c:749
-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"
+msgid "git notes edit [<object>]"
+msgstr "git notes edit [<đối tượng>]"
 
-#: builtin/bisect--helper.c:752
-msgid "bad HEAD - strange symbolic ref"
-msgstr "sai HEAD - tham chiếu mềm kỳ lạ"
+msgid "git notes show [<object>]"
+msgstr "git notes show [<đối tượng>]"
 
-#: builtin/bisect--helper.c:772
-#, c-format
-msgid "invalid ref: '%s'"
-msgstr "refspec không hợp lệ: “%s”"
+msgid "git notes merge [<options>] <notes-ref>"
+msgstr "git notes merge [<các tùy chọn>] <notes-ref>"
 
-#: builtin/bisect--helper.c:830
-msgid "You need to start by \"git bisect start\"\n"
-msgstr "Bạn cần khởi đầu bằng \"git bisect start\"\n"
+msgid "git notes merge --commit [<options>]"
+msgstr "git notes merge --commit [<các tùy chọn>]"
 
-#. TRANSLATORS: Make sure to include [Y] and [n] in your
-#. translation. The program will only accept English input
-#. at this point.
-#.
-#: builtin/bisect--helper.c:841
-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]? "
+msgid "git notes merge --abort [<options>]"
+msgstr "git notes merge --abort [<các tùy chọn>]"
 
-#: builtin/bisect--helper.c:859
-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ố"
+msgid "git notes remove [<object>]"
+msgstr "git notes remove [<đối tượng>]"
 
-#: builtin/bisect--helper.c:872
-#, c-format
-msgid "'git bisect %s' can take only one argument."
-msgstr "“git bisect %s” có thể lấy chỉ một đối số."
+msgid "git notes prune [<options>]"
+msgstr "git notes prune [<các tùy chọn>]"
+
+msgid "Write/edit the notes for the following object:"
+msgstr "Ghi hay sửa ghi chú cho đối tượng sau đây:"
 
-#: builtin/bisect--helper.c:884 builtin/bisect--helper.c:897
 #, c-format
-msgid "Bad rev input: %s"
-msgstr "Đầu vào rev sai: %s"
+msgid "unable to start 'show' for object '%s'"
+msgstr "không thể khởi chạy “show” cho đối tượng “%s”"
+
+msgid "could not read 'show' output"
+msgstr "không thể đọc kết xuất “show”"
 
-#: builtin/bisect--helper.c:904
 #, c-format
-msgid "Bad rev input (not a commit): %s"
-msgstr "Đầu vào rev sai (không phải là lần chuyển giao): %s"
+msgid "failed to finish 'show' for object '%s'"
+msgstr "gặp lỗi khi hoàn thành “show” cho đối tượng “%s”"
 
-#: builtin/bisect--helper.c:936
-msgid "We are not bisecting."
-msgstr "Chúng tôi không bisect."
+msgid "please supply the note contents using either -m or -F option"
+msgstr ""
+"xin hãy áp dụng nội dung của ghi chú sử dụng hoặc là tùy chọn -m hoặc là -F"
 
-#: builtin/bisect--helper.c:986
-#, c-format
-msgid "'%s'?? what are you talking about?"
-msgstr "“%s”?? bạn đang nói gì thế?"
+msgid "unable to write note object"
+msgstr "không thể ghi đối tượng ghi chú (note)"
 
-#: builtin/bisect--helper.c:998
 #, c-format
-msgid "cannot read file '%s' for replaying"
-msgstr "không thể đọc tập tin “%s” để thao diễn lại"
+msgid "the note contents have been left in %s"
+msgstr "nội dung ghi chú còn lại %s"
 
-#: builtin/bisect--helper.c:1120 builtin/bisect--helper.c:1152
 #, c-format
-msgid "running %s\n"
-msgstr "đang chạy %s\n"
-
-#: builtin/bisect--helper.c:1145 builtin/bisect--helper.c:1335
-msgid "bisect run failed: no command provided."
-msgstr "bisect chạy gặp lỗi: không đưa ra lệnh."
+msgid "could not open or read '%s'"
+msgstr "không thể mở hay đọc “%s”"
 
-#: builtin/bisect--helper.c:1166
 #, c-format
-msgid "unable to verify '%s' on good revision"
-msgstr "không thể xác nhận “%s” trên điểm xét duyệt tốt"
+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/bisect--helper.c:1172
 #, c-format
-msgid "bogus exit code %d for good revision"
-msgstr "mã thoát giả %d cho điểm xét duyệt tốt"
+msgid "failed to read object '%s'."
+msgstr "gặp lỗi khi đọc đối tượng “%s”."
 
-#: builtin/bisect--helper.c:1180
 #, c-format
-msgid "bisect run failed: exit code %d from '%s' is < 0 or >= 128"
-msgstr "chạy bisect gặp lỗi: mã trả về %d từ lệnh “%s” là < 0 hoặc >= 128"
+msgid "cannot read note data from non-blob object '%s'."
+msgstr "không thể đọc dữ liệu ghi chú từ đối tượng không-blob “%s”."
 
-#: builtin/bisect--helper.c:1195
 #, c-format
-msgid "cannot open file '%s' for writing"
-msgstr "không thể mở “%s” để ghi"
-
-#: builtin/bisect--helper.c:1213
-msgid "bisect run cannot continue any more"
-msgstr "bisect không thể tiếp tục thêm được nữa"
+msgid "malformed input line: '%s'."
+msgstr "dòng đầu vào dị hình: “%s”."
 
-#: builtin/bisect--helper.c:1215
 #, c-format
-msgid "bisect run success"
-msgstr "bisect chạy thành công"
+msgid "failed to copy notes from '%s' to '%s'"
+msgstr "gặp lỗi khi sao chép ghi chú (note) từ “%s” sang “%s”"
 
-#: builtin/bisect--helper.c:1218
+#. TRANSLATORS: the first %s will be replaced by a git
+#. notes command: 'add', 'merge', 'remove', etc.
+#.
 #, c-format
-msgid "bisect found first bad commit"
-msgstr "bisect tìm thấy lần chuyển giao sai đầu tiên"
+msgid "refusing to %s notes in %s (outside of refs/notes/)"
+msgstr "từ chối %s ghi chú trong %s (nằm ngoài refs/notes/)"
 
-#: builtin/bisect--helper.c:1221
 #, c-format
-msgid ""
-"bisect run failed: 'git bisect--helper --bisect-state %s' exited with error "
-"code %d"
-msgstr ""
-"chạy bisect gặp lỗi: “git bisect--helper --bisect-state %s” đã thoát ra với "
-"mã lỗi %d"
-
-#: builtin/bisect--helper.c:1253
-msgid "reset the bisection state"
-msgstr "đặt lại trạng di chuyển nửa bước"
-
-#: builtin/bisect--helper.c:1255
-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:1257
-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:1259
-msgid "start the bisect session"
-msgstr "bắt đầu phiên di chuyển nửa bước"
-
-#: builtin/bisect--helper.c:1261
-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:1263
-msgid "mark the state of ref (or refs)"
-msgstr "đánh dấu trạng thái ref (hoặc refs)"
+msgid "no note found for object %s."
+msgstr "không tìm thấy ghi chú cho đối tượng %s."
 
-#: builtin/bisect--helper.c:1265
-msgid "list the bisection steps so far"
-msgstr "liệt kê các bước bisection đi quá xa"
+msgid "note contents as a string"
+msgstr "nội dung ghi chú (note) nằm trong một chuỗi"
 
-#: builtin/bisect--helper.c:1267
-msgid "replay the bisection process from the given file"
-msgstr "phát lại quá trình bisection từ tệp đã cho"
+msgid "note contents in a file"
+msgstr "nội dung ghi chú (note) nằm trong một tập tin"
 
-#: builtin/bisect--helper.c:1269
-msgid "skip some commits for checkout"
-msgstr "bỏ qua một số lần chuyển giao để lấy ra"
+msgid "reuse and edit specified note object"
+msgstr "dùng lại nhưng có sửa chữa đối tượng note đã chỉ ra"
 
-#: builtin/bisect--helper.c:1271
-msgid "visualize the bisection"
-msgstr "trực quan việc di chuyển nửa bước"
+msgid "reuse specified note object"
+msgstr "dùng lại đối tượng ghi chú (note) đã chỉ ra"
 
-#: builtin/bisect--helper.c:1273
-msgid "use <cmd>... to automatically bisect"
-msgstr "dùng <cmd>… để bisect một cách tự động"
+msgid "allow storing empty note"
+msgstr "cho lưu trữ ghi chú trống rỗng"
 
-#: builtin/bisect--helper.c:1275
-msgid "no log for BISECT_WRITE"
-msgstr "không có nhật ký cho BISECT_WRITE"
+msgid "replace existing notes"
+msgstr "thay thế ghi chú trước"
 
-#: builtin/bisect--helper.c:1290
-msgid "--bisect-reset requires either no argument or a commit"
+#, c-format
+msgid ""
+"Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
+"existing notes"
 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:1295
-msgid "--bisect-terms requires 0 or 1 argument"
-msgstr "--bisect-terms cần 0 hoặc 1 tham số"
+"Không thể thêm các ghi chú. Đã tìm thấy các ghi chú đã có sẵn cho đối tượng "
+"%s. Sử dụng tùy chọn “-f” để ghi đè lên các ghi chú cũ"
 
-#: builtin/bisect--helper.c:1304
-msgid "--bisect-next requires 0 arguments"
-msgstr "--bisect-next cần 0 tham số"
+#, c-format
+msgid "Overwriting existing notes for object %s\n"
+msgstr "Đang ghi đè lên ghi chú cũ cho đối tượng %s\n"
 
-#: builtin/bisect--helper.c:1315
-msgid "--bisect-log requires 0 arguments"
-msgstr "--bisect-log cần 0 tham số"
+#, c-format
+msgid "Removing note for object %s\n"
+msgstr "Đang gỡ bỏ ghi chú (note) cho đối tượng %s\n"
 
-#: builtin/bisect--helper.c:1320
-msgid "no logfile given"
-msgstr "chưa chỉ ra tập tin ghi nhật ký"
+msgid "read objects from stdin"
+msgstr "đọc các đối tượng từ đầu vào tiêu chuẩn"
 
-#: 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>"
+msgid "load rewriting config for <command> (implies --stdin)"
+msgstr "tải cấu hình chép lại cho <lệnh> (ngầm định là --stdin)"
 
-#: builtin/blame.c:37
-msgid "<rev-opts> are documented in git-rev-list(1)"
-msgstr "<rev-opts> được mô tả trong tài liệu git-rev-list(1)"
+msgid "too few arguments"
+msgstr "quá ít đối số"
 
-#: builtin/blame.c:406
 #, c-format
-msgid "expecting a color: %s"
-msgstr "cần một màu: %s"
-
-#: builtin/blame.c:413
-msgid "must end with a color"
-msgstr "phải kết thúc bằng một màu"
+msgid ""
+"Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
+"existing notes"
+msgstr ""
+"Không thể sao chép các ghi chú. Đã tìm thấy các ghi chú đã có sẵn cho đối "
+"tượng %s. Sử dụng tùy chọn “-f” để ghi đè lên các ghi chú cũ"
 
-#: builtin/blame.c:842
 #, 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:864
-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"
+msgid "missing notes on source object %s. Cannot copy."
+msgstr "thiếu ghi chú trên đối tượng nguồn %s. Không thể sao chép."
 
-#: builtin/blame.c:865
-msgid "do not show object names of boundary commits (Default: off)"
+#, c-format
+msgid ""
+"The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
+"Please use 'git notes add -f -m/-F/-c/-C' instead.\n"
 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)"
+"Các tùy chọn -m/-F/-c/-C đã cổ không còn dùng nữa cho lệnh con “edit”.\n"
+"Xin hãy sử dụng lệnh sau để thay thế: “git notes add -f -m/-F/-c/-C”.\n"
 
-#: builtin/blame.c:866
-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)"
+msgid "failed to delete ref NOTES_MERGE_PARTIAL"
+msgstr "gặp lỗi khi xóa tham chiếu NOTES_MERGE_PARTIAL"
 
-#: builtin/blame.c:867
-msgid "show work cost statistics"
-msgstr "hiển thị thống kê công sức làm việc"
+msgid "failed to delete ref NOTES_MERGE_REF"
+msgstr "gặp lỗi khi xóa tham chiếu NOTES_MERGE_REF"
 
-#: builtin/blame.c:868 builtin/checkout.c:1554 builtin/clone.c:98
-#: builtin/commit-graph.c:75 builtin/commit-graph.c:228 builtin/fetch.c:181
-#: builtin/merge.c:301 builtin/multi-pack-index.c:103
-#: builtin/multi-pack-index.c:154 builtin/multi-pack-index.c:180
-#: builtin/multi-pack-index.c:208 builtin/pull.c:120 builtin/push.c:566
-#: builtin/remote.c:683 builtin/send-pack.c:202
-msgid "force progress reporting"
-msgstr "ép buộc báo cáo tiến triển công việc"
+msgid "failed to remove 'git notes merge' worktree"
+msgstr "gặp lỗi khi gỡ bỏ cây làm việc “git notes merge”"
 
-#: builtin/blame.c:869
-msgid "show output score for blame entries"
-msgstr "hiển thị kết xuất điểm số cho các mục tin “blame”"
+msgid "failed to read ref NOTES_MERGE_PARTIAL"
+msgstr "gặp lỗi khi đọc tham chiếu NOTES_MERGE_PARTIAL"
 
-#: builtin/blame.c:870
-msgid "show original filename (Default: auto)"
-msgstr "hiển thị tên tập tin gốc (Mặc định: auto)"
+msgid "could not find commit from NOTES_MERGE_PARTIAL."
+msgstr "không thể tìm thấy lần chuyển giao từ NOTES_MERGE_PARTIAL."
 
-#: builtin/blame.c:871
-msgid "show original linenumber (Default: off)"
-msgstr "hiển thị số dòng gốc (Mặc định: off)"
+msgid "could not parse commit from NOTES_MERGE_PARTIAL."
+msgstr "không thể phân tích cú pháp lần chuyển giao từ NOTES_MERGE_PARTIAL."
 
-#: builtin/blame.c:872
-msgid "show in a format designed for machine consumption"
-msgstr "hiển thị ở định dạng đã thiết kế cho dùng bằng máy"
+msgid "failed to resolve NOTES_MERGE_REF"
+msgstr "gặp lỗi khi phân giải NOTES_MERGE_REF"
 
-#: builtin/blame.c:873
-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"
+msgid "failed to finalize notes merge"
+msgstr "gặp lỗi khi hoàn thành hòa trộn ghi chú"
 
-#: builtin/blame.c:874
-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)"
+#, c-format
+msgid "unknown notes merge strategy %s"
+msgstr "không hiểu chiến lược hòa trộn ghi chú %s"
 
-#: builtin/blame.c:875
-msgid "show raw timestamp (Default: off)"
-msgstr "hiển thị dấu vết thời gian dạng thô (Mặc định: off)"
+msgid "General options"
+msgstr "Tùy chọn chung"
 
-#: builtin/blame.c:876
-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)"
+msgid "Merge options"
+msgstr "Tùy chọn về hòa trộn"
 
-#: builtin/blame.c:877
-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)"
+msgid ""
+"resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
+"cat_sort_uniq)"
+msgstr ""
+"phân giải các xung đột “notes” sử dụng chiến lược đã đưa ra (manual/ours/"
+"theirs/union/cat_sort_uniq)"
 
-#: builtin/blame.c:878
-msgid "show author email instead of name (Default: off)"
-msgstr "hiển thị thư điện tử của tác giả thay cho tên (Mặc định: off)"
+msgid "Committing unmerged notes"
+msgstr "Chuyển giao các note chưa được hòa trộn"
 
-#: builtin/blame.c:879
-msgid "ignore whitespace differences"
-msgstr "bỏ qua các khác biệt do khoảng trắng gây ra"
+msgid "finalize notes merge by committing unmerged notes"
+msgstr ""
+"các note cuối cùng được hòa trộn bởi các note chưa hòa trộn của lần chuyển "
+"giao"
 
-#: builtin/blame.c:880 builtin/log.c:1857
-msgid "rev"
-msgstr "rev"
+msgid "Aborting notes merge resolution"
+msgstr "Hủy bỏ phân giải ghi chú (note) hòa trộn"
 
-#: builtin/blame.c:880
-msgid "ignore <rev> when blaming"
-msgstr "bỏ qua <rev> khi blame"
+msgid "abort notes merge"
+msgstr "bỏ qua hòa trộn các ghi chú (note)"
 
-#: builtin/blame.c:881
-msgid "ignore revisions from <file>"
-msgstr "bỏ qua các điểm xét duyệt từ <tập tin>"
+msgid "cannot mix --commit, --abort or -s/--strategy"
+msgstr "không thể trộn lẫn --commit, --abort hay -s/--strategy"
 
-#: builtin/blame.c:882
-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"
+msgid "must specify a notes ref to merge"
+msgstr "bạn phải chỉ định tham chiếu ghi chú để hòa trộn"
 
-#: builtin/blame.c:883
-msgid "color lines by age"
-msgstr "các dòng màu theo tuổi"
+#, c-format
+msgid "unknown -s/--strategy: %s"
+msgstr "không hiểu -s/--strategy: %s"
 
-#: builtin/blame.c:884
-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"
+#, c-format
+msgid "a notes merge into %s is already in-progress at %s"
+msgstr "một ghi chú hòa trộn vào %s đã sẵn trong quá trình xử lý tại %s"
 
-#: builtin/blame.c:885
-msgid "use revisions from <file> instead of calling git-rev-list"
+#, c-format
+msgid "failed to store link to current notes ref (%s)"
+msgstr "gặp lỗi khi lưu liên kết đến tham chiếu ghi chú hiện tại (%s)"
+
+#, c-format
+msgid ""
+"Automatic notes merge failed. Fix conflicts in %s and commit the result with "
+"'git notes merge --commit', or abort the merge with 'git notes merge --"
+"abort'.\n"
 msgstr ""
-"sử dụng các điểm xét duyệt (revision) từ <tập tin> thay vì gọi “git-rev-list”"
+"Gặp lỗi khi hòa trộn các ghi chú tự động. Sửa các xung đột này trong %s và "
+"chuyển giao kết quả bằng “git notes merge --commit”, hoặc bãi bỏ việc hòa "
+"trộn bằng “git notes merge --abort”.\n"
 
-#: builtin/blame.c:886
-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"
+#, 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/blame.c:887 builtin/blame.c:888
-msgid "score"
-msgstr "Ä\91iá»\83m sá»\91"
+#, c-format
+msgid "Object %s has no note\n"
+msgstr "Ä\90á»\91i tượng %s không có ghi chú (note)\n"
 
-#: builtin/blame.c:887
-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"
+msgid "attempt to remove non-existent note is not an error"
+msgstr "cố gắng gỡ bỏ một note chưa từng tồn tại không phải là một lỗi"
 
-#: builtin/blame.c:888
-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"
+msgid "read object names from the standard input"
+msgstr "đọc tên đối tượng từ thiết bị nhập chuẩn"
 
-#: builtin/blame.c:889
-msgid "range"
-msgstr "vùng"
+msgid "do not remove, show only"
+msgstr "không gỡ bỏ, chỉ hiển thị"
 
-#: builtin/blame.c:890
-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>"
+msgid "report pruned notes"
+msgstr "báo cáo các đối tượng đã prune"
 
-#: builtin/blame.c:949
-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"
+msgid "notes-ref"
+msgstr "notes-ref"
 
-#. TRANSLATORS: This string is used to tell us the
-#. maximum display width for a relative timestamp in
-#. "git blame" output.  For C locale, "4 years, 11
-#. months ago", which takes 22 places, is the longest
-#. among various forms of relative timestamps, but
-#. your language may need more or fewer display
-#. columns.
-#.
-#: builtin/blame.c:1000
-msgid "4 years, 11 months ago"
-msgstr "4 năm, 11 tháng trước"
+msgid "use notes from <notes-ref>"
+msgstr "dùng “notes” từ <notes-ref>"
 
-#: builtin/blame.c:1116
 #, 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"
+msgid "unknown subcommand: %s"
+msgstr "không hiểu câu lệnh con: %s"
 
-#: builtin/blame.c:1161
-msgid "Blaming lines"
-msgstr "Các dòng blame"
+msgid ""
+"git pack-objects --stdout [<options>...] [< <ref-list> | < <object-list>]"
+msgstr ""
+"git pack-objects --stdout [các tùy chọn…] [< <danh-sách-tham-chiếu> | < "
+"<danh-sách-đối-tượng>]"
 
-#: builtin/branch.c:29
-msgid "git branch [<options>] [-r | -a] [--merged] [--no-merged]"
-msgstr "git branch [<các tùy chọn>] [-r | -a] [--merged] [ --no-merged]"
+msgid ""
+"git pack-objects [<options>...] <base-name> [< <ref-list> | < <object-list>]"
+msgstr ""
+"git pack-objects [các tùy chọn…] <base-name> [< <danh-sách-ref> | < <danh-"
+"sách-đối-tượng>]"
 
-#: builtin/branch.c:30
+#, c-format
 msgid ""
-"git branch [<options>] [-f] [--recurse-submodules] <branch-name> [<start-"
-"point>]"
+"write_reuse_object: could not locate %s, expected at offset %<PRIuMAX> in "
+"pack %s"
 msgstr ""
-"git branch [<các tùy chọn>] [-f] [--recurse-submodules] <tên-nhánh> [<điểm-"
-"đầu>]"
+"write_reuse_object: không thể phân bổ %s, cần tại vị trí bù %<PRIuMAX> trong "
+"gói %s"
 
-#: builtin/branch.c:31
-msgid "git branch [<options>] [-l] [<pattern>...]"
-msgstr "git branch [<các tùy chọn>] [-l] [<mẫu>...]"
+#, c-format
+msgid "bad packed object CRC for %s"
+msgstr "CRC của đối tượng gói sai với %s"
 
-#: builtin/branch.c:32
-msgid "git branch [<options>] [-r] (-d | -D) <branch-name>..."
-msgstr "git branch [<các tùy chọn>] [-r] (-d | -D) <tên-nhánh> …"
+#, c-format
+msgid "corrupt packed object for %s"
+msgstr "đối tượng đã đóng gói sai hỏng cho %s"
 
-#: builtin/branch.c:33
-msgid "git branch [<options>] (-m | -M) [<old-branch>] <new-branch>"
-msgstr "git branch [<các tùy chọn>] (-m | -M) [<nhánh-cũ>] <nhánh-mới>"
+#, c-format
+msgid "recursive delta detected for object %s"
+msgstr "dò thấy delta đệ quy cho đối tượng %s"
 
-#: builtin/branch.c:34
-msgid "git branch [<options>] (-c | -C) [<old-branch>] <new-branch>"
-msgstr "git branch [<các tùy chọn>] (-c | -C) [<nhánh-cũ>] <nhánh-mới>"
+#, c-format
+msgid "ordered %u objects, expected %<PRIu32>"
+msgstr "đã sắp xếp %u đối tượng, cần %<PRIu32>"
 
-#: builtin/branch.c:35
-msgid "git branch [<options>] [-r | -a] [--points-at]"
-msgstr "git branch [<các tùy chọn>] [-r | -a] [--points-at]"
+#, c-format
+msgid "expected object at offset %<PRIuMAX> in pack %s"
+msgstr "cần đối tượng tại khoảng bù %<PRIuMAX> trong gói: %s"
 
-#: builtin/branch.c:36
-msgid "git branch [<options>] [-r | -a] [--format]"
-msgstr "git branch [<các tùy chọn>] [-r | -a] [--format]"
+msgid "disabling bitmap writing, packs are split due to pack.packSizeLimit"
+msgstr "tắt ghi bitmap, các gói bị chia nhỏ bởi vì pack.packSizeLimit"
+
+msgid "Writing objects"
+msgstr "Đang ghi lại các đối tượng"
 
-#: builtin/branch.c:165
 #, c-format
-msgid ""
-"deleting branch '%s' that has been merged to\n"
-"         '%s', but not yet merged to HEAD."
-msgstr ""
-"đang xóa nhánh “%s” mà nó lại đã được hòa trộn vào\n"
-"         “%s”, nhưng vẫn chưa được hòa trộn vào HEAD."
+msgid "failed to stat %s"
+msgstr "gặp lỗi khi lấy thông tin thống kê về %s"
 
-#: builtin/branch.c:169
 #, c-format
-msgid ""
-"not deleting branch '%s' that is not yet merged to\n"
-"         '%s', even though it is merged to HEAD."
-msgstr ""
-"không xóa nhánh “%s” cái mà chưa được hòa trộn vào\n"
-"         “%s”, cho dù là nó đã được hòa trộn vào HEAD."
+msgid "failed utime() on %s"
+msgstr "gặp lỗi utime() trên “%s”"
+
+msgid "failed to write bitmap index"
+msgstr "gặp lỗi khi ghi mục lục ánh xạ"
 
-#: builtin/branch.c:183
 #, c-format
-msgid "Couldn't look up commit object for '%s'"
-msgstr "Không thể tìm kiếm đối tượng chuyển giao cho “%s”"
+msgid "wrote %<PRIu32> objects while expecting %<PRIu32>"
+msgstr "đã ghi %<PRIu32> đối tượng trong khi cần %<PRIu32>"
+
+msgid "disabling bitmap writing, as some objects are not being packed"
+msgstr "tắt ghi bitmap, như vậy một số đối tượng sẽ không được đóng gói"
 
-#: builtin/branch.c:187
 #, c-format
-msgid ""
-"The branch '%s' is not fully merged.\n"
-"If you are sure you want to delete it, run 'git branch -D %s'."
-msgstr ""
-"Nhánh “%s” không được trộn một cách đầy đủ.\n"
-"Nếu bạn thực sự muốn xóa nó, thì chạy lệnh “git branch -D %s”."
+msgid "delta base offset overflow in pack for %s"
+msgstr "khoảng bù cơ sở cho delta bị tràn trong gói cho %s"
 
-#: builtin/branch.c:200
-msgid "Update of config-file failed"
-msgstr "Cập nhật tập tin cấu hình gặp lỗi"
+#, c-format
+msgid "delta base offset out of bound for %s"
+msgstr "khoảng bù cơ sở cho delta nằm ngoài phạm cho %s"
 
-#: builtin/branch.c:235
-msgid "cannot use -a with -d"
-msgstr "không thể dùng tùy chọn -a với -d"
+msgid "Counting objects"
+msgstr "Đang đếm các đối tượng"
 
-#: builtin/branch.c:242
-msgid "Couldn't look up commit object for HEAD"
-msgstr "Không thể tìm kiếm đối tượng chuyển giao cho HEAD"
+#, c-format
+msgid "unable to get size of %s"
+msgstr "không thể lấy kích cỡ của %s"
 
-#: builtin/branch.c:259
 #, c-format
-msgid "Cannot delete branch '%s' checked out at '%s'"
-msgstr "Không thể xóa nhánh “%s” đã được lấy ra tại “%s”"
+msgid "unable to parse object header of %s"
+msgstr "không thể phân tích phần đầu đối tượng của “%s”"
 
-#: builtin/branch.c:274
 #, c-format
-msgid "remote-tracking branch '%s' not found."
-msgstr "không tìm thấy nhánh theo dõi máy chủ “%s”."
+msgid "object %s cannot be read"
+msgstr "không thể đọc đối tượng %s"
 
-#: builtin/branch.c:275
 #, c-format
-msgid "branch '%s' not found."
-msgstr "không tìm thấy nhánh “%s”."
+msgid "object %s inconsistent object length (%<PRIuMAX> vs %<PRIuMAX>)"
+msgstr ""
+"đối tượng %s không nhất quán về chiều dài đối tượng (%<PRIuMAX> so với "
+"%<PRIuMAX>)"
+
+msgid "suboptimal pack - out of memory"
+msgstr "suboptimal pack - hết bộ nhớ"
 
-#: builtin/branch.c:306
 #, c-format
-msgid "Deleted remote-tracking branch %s (was %s).\n"
-msgstr "Đã xóa nhánh theo dõi máy chủ \"%s\" (từng là %s).\n"
+msgid "Delta compression using up to %d threads"
+msgstr "Nén delta dùng tới %d tuyến trình"
 
-#: builtin/branch.c:307
 #, c-format
-msgid "Deleted branch %s (was %s).\n"
-msgstr "Nhánh “%s” đã bị xóa (từng là %s)\n"
+msgid "unable to pack objects reachable from tag %s"
+msgstr "không thể đóng gói các đối tượng tiếp cận được từ thẻ “%s”"
 
-#: builtin/branch.c:457 builtin/tag.c:64
-msgid "unable to parse format string"
-msgstr "không thể phân tích chuỗi định dạng"
+#, c-format
+msgid "unable to get type of object %s"
+msgstr "không thể lấy kiểu của đối tượng “%s”"
 
-#: builtin/branch.c:488
-msgid "could not resolve HEAD"
-msgstr "không thể phân giải HEAD"
+msgid "Compressing objects"
+msgstr "Đang nén các đối tượng"
 
-#: builtin/branch.c:494
-#, c-format
-msgid "HEAD (%s) points outside of refs/heads/"
-msgstr "HEAD (%s) chỉ bên ngoài của refs/heads/"
+msgid "inconsistency with delta count"
+msgstr "mâu thuẫn với số lượng delta"
 
-#: builtin/branch.c:509
 #, c-format
-msgid "Branch %s is being rebased at %s"
-msgstr "Nhánh %s đang được cải tổ lại tại %s"
+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”)"
 
-#: builtin/branch.c:513
 #, c-format
-msgid "Branch %s is being bisected at %s"
-msgstr "Nhánh %s đang được di chuyển phân đôi (bisect) tại %s"
+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”)"
 
-#: builtin/branch.c:530
-msgid "cannot copy the current branch while not on any."
-msgstr "không thể sao chép nhánh hiện hành trong khi nó chẳng ở đâu cả."
+#, c-format
+msgid "could not get type of object %s in pack %s"
+msgstr "không thể lấy kiểu của đối tượng “%s” trong gói “%s”"
 
-#: builtin/branch.c:532
-msgid "cannot rename the current branch while not on any."
-msgstr "không thể đổi tên nhánh hiện hành trong khi nó chẳng ở đâu cả."
+#, c-format
+msgid "could not find pack '%s'"
+msgstr "không thể tìm thấy gói “%s”"
 
-#: builtin/branch.c:543
 #, c-format
-msgid "Invalid branch name: '%s'"
-msgstr "Tên nhánh không hợp lệ: “%s”"
+msgid "packfile %s cannot be accessed"
+msgstr "tập tin gói %s không thể được truy "
 
-#: builtin/branch.c:572
-msgid "Branch rename failed"
-msgstr "Gặp lỗi khi đổi tên nhánh"
+msgid "Enumerating cruft objects"
+msgstr "Đánh số các đối tượng cruft"
 
-#: builtin/branch.c:574
-msgid "Branch copy failed"
-msgstr "Gặp lỗi khi sao chép nhánh"
+msgid "unable to add cruft objects"
+msgstr "không thể thêm các đối tượng cruft"
+
+msgid "Traversing cruft objects"
+msgstr "Đang duyệt các đối tượng cruft"
 
-#: builtin/branch.c:578
 #, 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”"
+msgid ""
+"expected edge object ID, got garbage:\n"
+" %s"
+msgstr ""
+"cần ID đối tượng cạnh, nhận được rác:\n"
+" %s"
+
+#, c-format
+msgid ""
+"expected object ID, got garbage:\n"
+" %s"
+msgstr ""
+"cần ID đối tượng, nhận được rác:\n"
+" %s"
 
-#: builtin/branch.c:581
-#, c-format
-msgid "Renamed a misnamed branch '%s' away"
-msgstr "Đã đổi tên nhánh khuyết danh “%s” đi"
+msgid "could not load cruft pack .mtimes"
+msgstr "không thể tải cruft pack .mtimes"
+
+msgid "cannot open pack index"
+msgstr "không thể mở mục lục của gói"
 
-#: builtin/branch.c:587
 #, 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!"
+msgid "loose object at %s could not be examined"
+msgstr "đối tượng mất tại %s không thể đã kiểm tra"
 
-#: builtin/branch.c:596
-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"
+msgid "unable to force loose object"
+msgstr "không thể buộc mất đối tượng"
 
-#: builtin/branch.c:598
-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"
+#, c-format
+msgid "not a rev '%s'"
+msgstr "không phải một rev “%s”"
 
-#: builtin/branch.c:614
 #, c-format
-msgid ""
-"Please edit the description for the branch\n"
-"  %s\n"
-"Lines starting with '%c' will be stripped.\n"
-msgstr ""
-"Viết các ghi chú cho nhánh:\n"
-"  %s\n"
-"Những dòng được bắt đầu bằng “%c” sẽ được cắt bỏ.\n"
+msgid "bad revision '%s'"
+msgstr "điểm xem xét sai “%s”"
 
-#: builtin/branch.c:651
-msgid "Generic options"
-msgstr "Tùy chọn chung"
+msgid "unable to add recent objects"
+msgstr "không thể thêm các đối tượng mới dùng"
 
-#: builtin/branch.c:653
-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"
+#, c-format
+msgid "unsupported index version %s"
+msgstr "phiên bản mục lục không được hỗ trợ %s"
 
-#: builtin/branch.c:654
-msgid "suppress informational messages"
-msgstr "không xuất các thông tin"
+#, c-format
+msgid "bad index version '%s'"
+msgstr "phiên bản mục lục sai “%s”"
 
-#: builtin/branch.c:656 builtin/checkout.c:1571
-#: builtin/submodule--helper.c:3077
-msgid "set branch tracking configuration"
-msgstr "đặt cấu hình thao dõi nhánh"
+msgid "<version>[,<offset>]"
+msgstr "<phiên bản>[,offset]"
 
-#: builtin/branch.c:659
-msgid "do not use"
-msgstr "không dùng"
+msgid "write the pack index file in the specified idx format version"
+msgstr "ghi tập tin bảng mục lục gói (pack) ở phiên bản định dạng idx đã cho"
 
-#: builtin/branch.c:661
-msgid "upstream"
-msgstr "thượng nguồn"
+msgid "maximum size of each output pack file"
+msgstr "kcíh thước tối đa cho tập tin gói được tạo"
 
-#: builtin/branch.c:661
-msgid "change the upstream info"
-msgstr "thay đổi thông tin thượng nguồn"
+msgid "ignore borrowed objects from alternate object store"
+msgstr "bỏ qua các đối tượng vay mượn từ kho đối tượng thay thế"
 
-#: builtin/branch.c:662
-msgid "unset the upstream info"
-msgstr "bỏ đặt thông tin thượng nguồn"
+msgid "ignore packed objects"
+msgstr "bỏ qua các đối tượng đóng gói"
 
-#: builtin/branch.c:663
-msgid "use colored output"
-msgstr "tô màu kết xuất"
+msgid "limit pack window by objects"
+msgstr "giới hạn cửa sổ đóng gói theo đối tượng"
 
-#: builtin/branch.c:664
-msgid "act on remote-tracking branches"
-msgstr "thao tác trên nhánh “remote-tracking”"
+msgid "limit pack window by memory in addition to object limit"
+msgstr "giới hạn cửa sổ đóng gói theo bộ nhớ cộng thêm với giới hạn đối tượng"
 
-#: builtin/branch.c:666 builtin/branch.c:668
-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"
+msgid "maximum length of delta chain allowed in the resulting pack"
+msgstr "độ dài tối đa của chuỗi móc xích “delta” được phép trong gói kết quả"
 
-#: builtin/branch.c:667 builtin/branch.c:669
-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"
+msgid "reuse existing deltas"
+msgstr "dùng lại các delta sẵn có"
 
-#: builtin/branch.c:672
-msgid "Specific git-branch actions:"
-msgstr "Hành động git-branch:"
+msgid "reuse existing objects"
+msgstr "dùng lại các đối tượng sẵn có"
 
-#: builtin/branch.c:673
-msgid "list both remote-tracking and local branches"
-msgstr "liệt kê cả nhánh “remote-tracking” và nội bộ"
+msgid "use OFS_DELTA objects"
+msgstr "dùng các đối tượng OFS_DELTA"
 
-#: builtin/branch.c:675
-msgid "delete fully merged branch"
-msgstr "xóa một toàn bộ nhánh đã hòa trộn"
+msgid "use threads when searching for best delta matches"
+msgstr "sử dụng các tuyến trình khi tìm kiếm cho các mẫu khớp delta tốt nhất"
 
-#: builtin/branch.c:676
-msgid "delete branch (even if not merged)"
-msgstr "xóa nhánh (cho dù là chưa được hòa trộn)"
+msgid "do not create an empty pack output"
+msgstr "không thể tạo kết xuất gói trống rỗng"
 
-#: builtin/branch.c:677
-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ó"
+msgid "read revision arguments from standard input"
+msgstr "đọc tham số “revision” từ thiết bị nhập chuẩn"
 
-#: builtin/branch.c:678
-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"
+msgid "limit the objects to those that are not yet packed"
+msgstr "giới hạn các đối tượng thành những cái mà chúng vẫn chưa được đóng gói"
 
-#: builtin/branch.c:679
-msgid "copy a branch and its reflog"
-msgstr "sao chép một nhánh và reflog của nó"
+msgid "include objects reachable from any reference"
+msgstr "bao gồm các đối tượng có thể đọc được từ bất kỳ tham chiếu nào"
 
-#: builtin/branch.c:680
-msgid "copy a branch, even if target exists"
-msgstr "sao chép một nhánh ngay cả khi đích đã có sẵn"
+msgid "include objects referred by reflog entries"
+msgstr "bao gồm các đối tượng được tham chiếu bởi các mục reflog"
 
-#: builtin/branch.c:681
-msgid "list branch names"
-msgstr "liệt kê các tên nhánh"
+msgid "include objects referred to by the index"
+msgstr "bao gồm các đối tượng được tham chiếu bởi mục lục"
 
-#: builtin/branch.c:682
-msgid "show current branch name"
-msgstr "hiển thị nhánh hiện hành"
+msgid "read packs from stdin"
+msgstr "đọc các gói từ đầu vào tiêu chuẩn"
 
-#: builtin/branch.c:683 builtin/submodule--helper.c:3075
-msgid "create the branch's reflog"
-msgstr "tạo reflog của nhánh"
+msgid "output pack to stdout"
+msgstr "xuất gói ra đầu ra tiêu chuẩn"
 
-#: builtin/branch.c:685
-msgid "edit the description for the branch"
-msgstr "sửa mô tả cho nhánh"
+msgid "include tag objects that refer to objects to be packed"
+msgstr "bao gồm các đối tượng tham chiếu đến các đối tượng được đóng gói"
 
-#: builtin/branch.c:686
-msgid "force creation, move/rename, deletion"
-msgstr "buộc tạo, di chuyển/đổi tên, xóa"
+msgid "keep unreachable objects"
+msgstr "giữ lại các đối tượng không thể đọc được"
 
-#: builtin/branch.c:687
-msgid "print only branches that are merged"
-msgstr "chỉ hiển thị những nhánh mà nó được hòa trộn"
+msgid "pack loose unreachable objects"
+msgstr "pack mất các đối tượng không thể đọc được"
 
-#: builtin/branch.c:688
-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"
+msgid "unpack unreachable objects newer than <time>"
+msgstr ""
+"xả nén (gỡ khỏi gói) các đối tượng không thể đọc được mới hơn <thời-gian>"
 
-#: builtin/branch.c:689
-msgid "list branches in columns"
-msgstr "liệt kê các nhánh trong các cột"
+msgid "create a cruft pack"
+msgstr "tạo gói cruft"
 
-#: builtin/branch.c:691 builtin/for-each-ref.c:45 builtin/notes.c:413
-#: builtin/notes.c:416 builtin/notes.c:579 builtin/notes.c:582
-#: builtin/tag.c:476
-msgid "object"
-msgstr "đối tượng"
+msgid "expire cruft objects older than <time>"
+msgstr "các đối tượng cruft hết hạn cũ hơn khoảng <thời gian>"
 
-#: builtin/branch.c:692
-msgid "print only branches of the object"
-msgstr "chỉ hiển thị các nhánh của đối tượng"
+msgid "use the sparse reachability algorithm"
+msgstr "sử dụng thuật toán “sparse reachability”"
 
-#: builtin/branch.c:693 builtin/for-each-ref.c:51 builtin/tag.c:483
-msgid "sorting and filtering are case insensitive"
-msgstr "sắp xếp và lọc là phân biệt HOA thường"
+msgid "create thin packs"
+msgstr "tạo gói nhẹ"
 
-#: builtin/branch.c:694 builtin/ls-files.c:667
-msgid "recurse through submodules"
-msgstr "đệ quy xuyên qua mô-đun con"
+msgid "create packs suitable for shallow fetches"
+msgstr "tạo gói để phù hợp cho lấy về nông (shallow)"
 
-#: builtin/branch.c:695 builtin/for-each-ref.c:41 builtin/ls-tree.c:358
-#: builtin/tag.c:481 builtin/verify-tag.c:38
-msgid "format to use for the output"
-msgstr "định dạng sẽ dùng cho đầu ra"
+msgid "ignore packs that have companion .keep file"
+msgstr "bỏ qua các gói mà nó có tập tin .keep đi kèm"
 
-#: builtin/branch.c:718 builtin/clone.c:684
-msgid "HEAD not found below refs/heads!"
-msgstr "Không tìm thấy HEAD ở dưới refs/heads!"
+msgid "ignore this pack"
+msgstr "bỏ qua gói này"
 
-#: builtin/branch.c:739
-msgid ""
-"branch with --recurse-submodules can only be used if submodule."
-"propagateBranches is enabled"
-msgstr ""
-"nhánh với --recurse-submodules chỉ có thể được sử dụng nếu submodule."
-"propagateBranches được kích hoạt"
+msgid "pack compression level"
+msgstr "mức nén gói"
 
-#: builtin/branch.c:741
-msgid "--recurse-submodules can only be used to create branches"
-msgstr "--recurse-submodules chỉ có thể được sử dụng để tạo ra các nhánh"
+msgid "do not hide commits by grafts"
+msgstr "không ẩn các lần chuyển giao bởi “grafts”"
 
-#: builtin/branch.c:770 builtin/branch.c:826 builtin/branch.c:835
-msgid "branch name required"
-msgstr "cần chỉ ra tên nhánh"
+msgid "use a bitmap index if available to speed up counting objects"
+msgstr "dùng mục lục ánh xạ nếu có thể được để nâng cao tốc độ đếm đối tượng"
 
-#: builtin/branch.c:802
-msgid "Cannot give description to detached HEAD"
-msgstr "Không thể đưa ra mô tả HEAD đã tách rời"
+msgid "write a bitmap index together with the pack index"
+msgstr "ghi một mục lục ánh xạ cùng với mục lục gói"
 
-#: builtin/branch.c:807
-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"
+msgid "write a bitmap index if possible"
+msgstr "ghi mục lục ánh xạ nếu được"
 
-#: builtin/branch.c:814
-#, c-format
-msgid "No commit on branch '%s' yet."
-msgstr "Vẫn chưa chuyển giao trên nhánh “%s”."
+msgid "handling for missing objects"
+msgstr "xử lý cho thiếu đối tượng"
 
-#: builtin/branch.c:817
-#, c-format
-msgid "No branch named '%s'."
-msgstr "Không có nhánh nào có tên “%s”."
+msgid "do not pack objects in promisor packfiles"
+msgstr "không thể đóng gói các đối tượng trong các tập tin gói hứa hẹn"
 
-#: builtin/branch.c:832
-msgid "too many branches for a copy operation"
-msgstr "quá nhiều nhánh dành cho thao tác sao chép"
+msgid "respect islands during delta compression"
+msgstr "tôn trọng island trong suốt quá trình nén “delta”"
 
-#: builtin/branch.c:841
-msgid "too many arguments for a rename operation"
-msgstr "quá nhiều tham số cho thao tác đổi tên"
+msgid "protocol"
+msgstr "giao thức"
 
-#: builtin/branch.c:846
-msgid "too many arguments to set new upstream"
-msgstr "quá nhiều tham số để đặt thượng nguồn mới"
+msgid "exclude any configured uploadpack.blobpackfileuri with this protocol"
+msgstr "loại trừ bất kỳ cấu hình uploadpack.blobpackfileuri với giao thức này"
 
-#: builtin/branch.c:850
 #, c-format
-msgid ""
-"could not set upstream of HEAD to %s when it does not point to any branch."
-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ả."
+msgid "delta chain depth %d is too deep, forcing %d"
+msgstr "mức sau xích delta %d là quá sâu, buộc dùng %d"
 
-#: builtin/branch.c:853 builtin/branch.c:873
 #, c-format
-msgid "no such branch '%s'"
-msgstr "không có nhánh nào như thế “%s”"
+msgid "pack.deltaCacheLimit is too high, forcing %d"
+msgstr "pack.deltaCacheLimit là quá cao, ép dùng %d"
 
-#: builtin/branch.c:857
 #, c-format
-msgid "branch '%s' does not exist"
-msgstr "chưa có nhánh “%s”"
+msgid "bad pack compression level %d"
+msgstr "mức nén gói %d không hợp lệ"
 
-#: builtin/branch.c:867
-msgid "too many arguments to unset upstream"
-msgstr "quá nhiều tham số để bỏ đặt thượng nguồn"
+msgid "--max-pack-size cannot be used to build a pack for transfer"
+msgstr ""
+"--max-pack-size không thể được sử dụng để xây dựng một gói để vận chuyển"
 
-#: builtin/branch.c:871
-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ả."
+msgid "minimum pack size limit is 1 MiB"
+msgstr "giới hạn kích thước tối thiểu của gói là 1 MiB"
 
-#: builtin/branch.c:877
-#, c-format
-msgid "Branch '%s' has no upstream information"
-msgstr "Nhánh “%s” không có thông tin thượng nguồn"
+msgid "--thin cannot be used to build an indexable pack"
+msgstr "--thin không thể được dùng để xây dựng gói đánh mục lục được"
 
-#: builtin/branch.c:890
-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>?"
-msgstr ""
-"Hai tùy chọn -a và -r áp dụng cho lệnh “git branch” không nhận một tên "
-"nhánh.\n"
-"Có phải ý bạn là dùng: -a|-r --list <mẫu>?"
+msgid "cannot use --filter without --stdout"
+msgstr "không thể dùng tùy chọn --filter mà không có --stdout"
 
-#: builtin/branch.c:894
-msgid ""
-"the '--set-upstream' option is no longer supported. Please use '--track' or "
-"'--set-upstream-to' instead."
-msgstr ""
-"tùy chọn --set-upstream đã không còn được hỗ trợ nữa. Vui lòng dùng “--"
-"track” hoặc “--set-upstream-to” để thay thế."
+msgid "cannot use --filter with --stdin-packs"
+msgstr "không thể dùng tùy chọn --filter với --stdin-packs"
 
-#: builtin/bugreport.c:16
-msgid "git version:\n"
-msgstr "phiên bản git:\n"
+msgid "cannot use internal rev list with --stdin-packs"
+msgstr "không thể dùng danh sách rev bên trong với --stdin-packs"
 
-#: builtin/bugreport.c:22
-#, c-format
-msgid "uname() failed with error '%s' (%d)\n"
-msgstr "uname() gặp lỗi “%s” (%d)\n"
+msgid "cannot use internal rev list with --cruft"
+msgstr "không thể dùng danh sách rev bên trong với --cruft"
 
-#: builtin/bugreport.c:32
-msgid "compiler info: "
-msgstr "thông tin trình biên dịch: "
+msgid "cannot use --stdin-packs with --cruft"
+msgstr "không thể dùng tùy chọn --stdin-packs  với --cruft"
 
-#: builtin/bugreport.c:35
-msgid "libc info: "
-msgstr "thông tin libc: "
+msgid "cannot use --max-pack-size with --cruft"
+msgstr "không thể dùng tùy chọn --max-pack-size với --cruft"
 
-#: builtin/bugreport.c:49
-msgid "not run from a git repository - no hooks to show\n"
-msgstr "không chạy từ một kho git - nên chẳng có móc nào để mà hiển thị cả\n"
+msgid "Enumerating objects"
+msgstr "Đánh số các đối tượng"
 
-#: builtin/bugreport.c:62
-msgid "git bugreport [-o|--output-directory <file>] [-s|--suffix <format>]"
+#, c-format
+msgid ""
+"Total %<PRIu32> (delta %<PRIu32>), reused %<PRIu32> (delta %<PRIu32>), pack-"
+"reused %<PRIu32>"
 msgstr ""
-"git bugreport [-o|--output-directory <tập_tin>] [-s|--suffix <định_dạng>]"
+"Tổng %<PRIu32> (delta %<PRIu32>), dùng lại %<PRIu32> (delta %<PRIu32>), pack-"
+"reused %<PRIu32>"
 
-#: builtin/bugreport.c:69
 msgid ""
-"Thank you for filling out a Git bug report!\n"
-"Please answer the following questions to help us understand your issue.\n"
-"\n"
-"What did you do before the bug happened? (Steps to reproduce your issue)\n"
-"\n"
-"What did you expect to happen? (Expected behavior)\n"
-"\n"
-"What happened instead? (Actual behavior)\n"
-"\n"
-"What's different between what you expected and what actually happened?\n"
-"\n"
-"Anything else you want to add:\n"
-"\n"
-"Please review the rest of the bug report below.\n"
-"You can delete any lines you don't wish to share.\n"
+"'git pack-redundant' is nominated for removal.\n"
+"If you still use this command, please add an extra\n"
+"option, '--i-still-use-this', on the command line\n"
+"and let us know you still use it by sending an e-mail\n"
+"to <git@vger.kernel.org>.  Thanks.\n"
 msgstr ""
-"Cảm ơn bạn đã tạo một báo cáo lỗi Git!\n"
-"Vui lòng trả lời các câu hỏi sau để giúp chúng tôi hiểu vấn đề của bạn.\n"
-"\n"
-"Bạn đã làm gì trước khi lỗi xảy ra? (Các bước để tái tạo sự cố của bạn)\n"
-"\n"
-"Điều bạn mong muốn xảy ra? (Hành vi dự kiến)\n"
-"\n"
-"Điều gì đã xảy ra thay thế? (Hành vi thực tế)\n"
-"\n"
-"Có gì khác biệt giữa những gì bạn mong đợi và những gì thực sự xảy ra?\n"
-"\n"
-"Bất kỳ thứ gì khác bạn muốn thêm:\n"
-"\n"
-"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"
+"“git pack-redundant” được đề cử để loại bỏ.\n"
+"Nếu bạn vẫn sử dụng lệnh này, vui lòng bổ sung\n"
+"thêm một tùy chọn, “--i-still-use-this”, trên dòng lệnh\n"
+"và cho chúng tôi biết bạn vẫn sử dụng nó bằng cách gửi e-mail\n"
+"đến <git@vger.kernel.org>.  Cảm ơn.\n"
 
-#: builtin/bugreport.c:108
-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"
+msgid "git pack-refs [<options>]"
+msgstr "git pack-refs [<các tùy chọn>]"
 
-#: builtin/bugreport.c:110
-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"
+msgid "pack everything"
+msgstr "đóng gói mọi thứ"
 
-#: builtin/bugreport.c:132
-#, 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”"
+msgid "prune loose refs (default)"
+msgstr "prune (cắt cụt) những tham chiếu bị mất (mặc định)"
 
-#: builtin/bugreport.c:139
-msgid "System Info"
-msgstr "Thông tin hệ thống"
+msgid "git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]"
+msgstr "git prune [-n] [-v] [--progress] [--expire <thời-gian>] [--] [<head>…]"
 
-#: builtin/bugreport.c:142
-msgid "Enabled Hooks"
-msgstr "Các Móc đã được bật"
+msgid "report pruned objects"
+msgstr "báo cáo các đối tượng đã prune"
 
-#: builtin/bugreport.c:149
-#, c-format
-msgid "unable to write to %s"
-msgstr "không thể ghi vào %s"
+msgid "expire objects older than <time>"
+msgstr "các đối tượng hết hạn cũ hơn khoảng <thời gian>"
 
-#: builtin/bugreport.c:159
-#, c-format
-msgid "Created new report at '%s'.\n"
-msgstr "Đã tạo báo cáo mới tại “%s”\n"
+msgid "limit traversal to objects outside promisor packfiles"
+msgstr "giới hạn giao đến các đối tượng nằm ngoài các tập tin gói hứa hẹn"
 
-#: builtin/bundle.c:15 builtin/bundle.c:23
-msgid "git bundle create [<options>] <file> <git-rev-list args>"
-msgstr "git bundle create [<các tùy chọn>] <tập_tin> <git-rev-list args>"
+msgid "cannot prune in a precious-objects repo"
+msgstr "không thể tỉa bớt trong một kho đối_tượng_vĩ_đại"
 
-#: builtin/bundle.c:16 builtin/bundle.c:28
-msgid "git bundle verify [<options>] <file>"
-msgstr "git bundle verify [<các tùy chọn>] <tập-tin>"
+msgid "git pull [<options>] [<repository> [<refspec>...]]"
+msgstr "git pull [<các tùy chọn>] [<kho-chứa> [<refspec>…]]"
 
-#: 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>…]"
+msgid "control for recursive fetching of submodules"
+msgstr "điều khiển việc lấy về đệ quy của các mô-đun-con"
 
-#: 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>…]"
+msgid "Options related to merging"
+msgstr "Các tùy chọn liên quan đến hòa trộn"
 
-#: builtin/bundle.c:65 builtin/pack-objects.c:3899
-msgid "do not show progress meter"
-msgstr "không hiển thị bộ đo tiến trình"
+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/bundle.c:67 builtin/bundle.c:168 builtin/pack-objects.c:3901
-msgid "show progress meter"
-msgstr "hiển thị bộ đo tiến trình"
+msgid "allow fast-forward"
+msgstr "cho phép chuyển-tiếp-nhanh"
 
-#: builtin/bundle.c:69 builtin/pack-objects.c:3903
-msgid "show progress meter during object writing phase"
-msgstr "hiển thị bộ đo tiến triển trong suốt pha ghi đối tượng"
+msgid "control use of pre-merge-commit and commit-msg hooks"
+msgstr "điều khiển cách dùng các móc (hook) pre-merge-commit và commit-msg"
 
-#: builtin/bundle.c:72 builtin/pack-objects.c:3906
-msgid "similar to --all-progress when progress meter is shown"
-msgstr "tương tự --all-progress khi bộ đo tiến trình được xuất hiện"
+msgid "automatically stash/stash pop before and after"
+msgstr "tự động stash/stash pop trước và sau"
 
-#: builtin/bundle.c:74
-msgid "specify bundle format version"
-msgstr "chỉ điịnh định dạng cho bundle"
+msgid "Options related to fetching"
+msgstr "Các tùy chọn liên quan đến lệnh lấy về"
 
-#: builtin/bundle.c:94
-msgid "Need a repository to create a bundle."
-msgstr "Cần một kho chứa để có thể tạo một bundle."
+msgid "force overwrite of local branch"
+msgstr "ép buộc ghi đè lên nhánh nội bộ"
 
-#: builtin/bundle.c:108
-msgid "do not show bundle details"
-msgstr "không hiển thị chi tiết bundle (bó)"
+msgid "number of submodules pulled in parallel"
+msgstr "số lượng mô-đun-con được đẩy lên đồng thời"
 
-#: builtin/bundle.c:127
-#, c-format
-msgid "%s is okay\n"
-msgstr "“%s” tốt\n"
+msgid ""
+"There is no candidate for rebasing against among the refs that you just "
+"fetched."
+msgstr ""
+"Ở đây không có ứng cử nào để cải tổ lại trong số các tham chiếu mà bạn vừa "
+"lấy về."
 
-#: builtin/bundle.c:183
-msgid "Need a repository to unbundle."
-msgstr "Cần một kho chứa để có thể giải nén một bundle."
+msgid ""
+"There are no candidates for merging among the refs that you just fetched."
+msgstr ""
+"Ở đây không có ứng cử nào để hòa trộn trong số các tham chiếu mà bạn vừa lấy "
+"về."
 
-#: builtin/bundle.c:186
-msgid "Unbundling objects"
-msgstr "Tháo rời các đối tượng"
+msgid ""
+"Generally this means that you provided a wildcard refspec which had no\n"
+"matches on the remote end."
+msgstr ""
+"Đại thể điều này có nghĩa là bạn đã cung cấp đặc tả đường dẫn dạng dùng ký "
+"tự\n"
+"đại diện mà nó lại không khớp trên điểm cuối máy phục vụ."
 
-#: builtin/bundle.c:220 builtin/remote.c:1758
 #, c-format
-msgid "Unknown subcommand: %s"
-msgstr "Không hiểu câu lệnh con: %s"
+msgid ""
+"You asked to pull from the remote '%s', but did not specify\n"
+"a branch. Because this is not the default configured remote\n"
+"for your current branch, you must specify a branch on the command line."
+msgstr ""
+"Bạn yêu cầu pull từ máy dịch vụ “%s”, nhưng lại chưa chỉ định\n"
+"nhánh nào. Bởi vì đây không phải là máy dịch vụ được cấu hình\n"
+"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/cat-file.c:568
-msgid "flush is only for --buffer mode"
-msgstr "flush chỉ dành cho chế độ --buffer"
+msgid "You are not currently on a branch."
+msgstr "Hiện tại bạn chẳng ở nhánh nào cả."
 
-#: builtin/cat-file.c:612
-msgid "empty command in input"
-msgstr "lệnh thực thi trống rỗng trong đầu vào"
+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/cat-file.c:614
-#, c-format
-msgid "whitespace before command: '%s'"
-msgstr "có khoảng trắng trước lệnh: '%s'"
+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."
 
-#: builtin/cat-file.c:623
-#, c-format
-msgid "%s requires arguments"
-msgstr "%s cần các tham số"
+msgid "See git-pull(1) for details."
+msgstr "Xem git-pull(1) để biết thêm chi tiết."
+
+msgid "<remote>"
+msgstr "<máy chủ>"
+
+msgid "<branch>"
+msgstr "<nhánh>"
+
+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."
+
+msgid ""
+"If you wish to set tracking information for this branch you can do so with:"
+msgstr ""
+"Nếu bạn muốn theo dõi thông tin cho nhánh này bạn có thể thực hiện bằng lệnh:"
 
-#: builtin/cat-file.c:628
 #, c-format
-msgid "%s takes no arguments"
-msgstr "%s không nhận tham số"
+msgid ""
+"Your configuration specifies to merge with the ref '%s'\n"
+"from the remote, but no such ref was fetched."
+msgstr ""
+"Các đặc tả cấu hình của bạn để hòa trộn với tham chiếu “%s”\n"
+"từ máy dịch vụ, nhưng không có nhánh nào như thế được lấy về."
 
-#: builtin/cat-file.c:636
 #, c-format
-msgid "unknown command: '%s'"
-msgstr "không hiểu câu lệnh: '%s'"
+msgid "unable to access commit %s"
+msgstr "không thể truy cập lần chuyển giao “%s”"
 
-#: builtin/cat-file.c:795
-msgid "only one batch option may be specified"
-msgstr "chỉ một tùy chọn batch được chỉ ra"
+msgid "ignoring --verify-signatures for rebase"
+msgstr "bỏ qua --verify-signatures khi rebase"
 
-#: builtin/cat-file.c:824
-msgid "git cat-file <type> <object>"
-msgstr "git cat-file <kiểu> <đối tượng>"
+msgid ""
+"You have divergent branches and need to specify how to reconcile them.\n"
+"You can do so by running one of the following commands sometime before\n"
+"your next pull:\n"
+"\n"
+"  git config pull.rebase false  # merge\n"
+"  git config pull.rebase true   # rebase\n"
+"  git config pull.ff only       # fast-forward only\n"
+"\n"
+"You can replace \"git config\" with \"git config --global\" to set a "
+"default\n"
+"preference for all repositories. You can also pass --rebase, --no-rebase,\n"
+"or --ff-only on the command line to override the configured default per\n"
+"invocation.\n"
+msgstr ""
+"Bạn có các nhánh phân kỳ và cần chỉ định cách hòa hợp chúng.\n"
+"Bạn có thể làm như vậy bằng cách chạy một trong những lệnh sau đây\n"
+"thỉnh thoảng trước khi thực hiện lệnh pull tiếp theo của bạn:\n"
+"\n"
+"  git config pull.rebase false  # merge\n"
+"  git config pull.rebase true   # rebase\n"
+"  git config pull.ff only       # chỉ fast-forward\n"
+"\n"
+"Bạn có thể thay thế \"git config\" với \"git config --global\" để thiết lập "
+"mặc định\n"
+"ưu tiên cho tất cả các kho. Bạn cũng có thể chuyển qua --rebase, --no-"
+"rebase,\n"
+"hoặc --ff-only trên dòng lệnh để ghi đè các mặc định đã cấu hình cho mỗi\n"
+"lần gọi.\n"
+
+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/cat-file.c:825
-msgid "git cat-file (-e | -p) <object>"
-msgstr "git cat-file (-e | -p) <đối tượng>"
+msgid "pull with rebase"
+msgstr "pull với rebase"
 
-#: builtin/cat-file.c:826
-msgid "git cat-file (-t | -s) [--allow-unknown-type] <object>"
-msgstr "git cat-file (-t | -s) [--allow-unknown-type] <đối_tượng>"
+msgid "please commit or stash them."
+msgstr "xin hãy chuyển giao hoặc tạm cất (stash) chúng."
 
-#: builtin/cat-file.c:827
+#, c-format
 msgid ""
-"git cat-file (--batch | --batch-check | --batch-command) [--batch-all-"
-"objects]\n"
-"             [--buffer] [--follow-symlinks] [--unordered]\n"
-"             [--textconv | --filters]"
+"fetch updated the current branch head.\n"
+"fast-forwarding your working tree from\n"
+"commit %s."
 msgstr ""
-"git cat-file (--batch | --batch-check | --batch-command) [--batch-all-"
-"objects]\n"
-"             [--buffer] [--follow-symlinks] [--unordered]\n"
-"             [--textconv | --filters]"
+"fetch đã cập nhật head nhánh hiện tại.\n"
+"đ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/cat-file.c:830
+#, c-format
 msgid ""
-"git cat-file (--textconv | --filters)\n"
-"             [<rev>:<path|tree-ish> | --path=<path|tree-ish> <rev>]"
+"Cannot fast-forward your working tree.\n"
+"After making sure that you saved anything precious from\n"
+"$ git diff %s\n"
+"output, run\n"
+"$ git reset --hard\n"
+"to recover."
 msgstr ""
-"git cat-file (--textconv | --filters)\n"
-"             [<rev>:<path|tree-ish> | --path=<path|tree-ish> <rev>]"
-
-#: builtin/cat-file.c:836
-msgid "Check object existence or emit object contents"
-msgstr "Kiểm tra đối tượng có sẵn hay không hoặc phát nội dung của đối tượng"
-
-#: builtin/cat-file.c:838
-msgid "check if <object> exists"
-msgstr "không tra xem <đối tượng> có sẵn hay không"
-
-#: builtin/cat-file.c:839
-msgid "pretty-print <object> content"
-msgstr "in nội dung <đối tượng> dạng dễ đọc"
+"Không thể chuyển tiếp nhanh cây làm việc của bạn.\n"
+"Sau khi chắc chắn rằng mình đã ghi lại mọi thứ\n"
+"quý báu từ kết xuất của lệnh\n"
+"$ git diff %s\n"
+"chạy\n"
+"$ git reset --hard\n"
+"để khôi phục lại."
 
-#: builtin/cat-file.c:841
-msgid "Emit [broken] object attributes"
-msgstr "Phát các thuộc tính đối tượng [hỏng]"
+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/cat-file.c:842
-msgid "show object type (one of 'blob', 'tree', 'commit', 'tag', ...)"
-msgstr ""
-"hiển thị kiểu của đối tượng (là một trong số 'blob', 'tree', 'commit', "
-"'tag', ...)"
+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/cat-file.c:843
-msgid "show object size"
-msgstr "hiển thị kích thước đối tượng"
+msgid "Cannot fast-forward to multiple branches."
+msgstr "Không thể thực hiện chuyển tiếp nhanh trên nhiều nhánh."
 
-#: builtin/cat-file.c:845
-msgid "allow -s and -t to work with broken/corrupt objects"
-msgstr "cho phép -s và -t để làm việc với các đối tượng sai/hỏng"
+msgid "Need to specify how to reconcile divergent branches."
+msgstr "Caanfchir định làm thế nào để giải quyết các nhánh phân kỳ."
 
-#: builtin/cat-file.c:847
-msgid "Batch objects requested on stdin (or --batch-all-objects)"
+msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
-"Đã yêu cầu các đối tượng batch trên đầu vào tiêu chuẩn stdin (hoặc --batch-"
-"all-objects)"
+"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ộ"
 
-#: builtin/cat-file.c:849
-msgid "show full <object> or <rev> contents"
-msgstr "hiển thị đầy đủ nội dung <object> hay <rev>"
+msgid "git push [<options>] [<repository> [<refspec>...]]"
+msgstr "git push [<các tùy chọn>] [<kho-chứa> [<refspec>…]]"
 
-#: builtin/cat-file.c:853
-msgid "like --batch, but don't emit <contents>"
-msgstr "giống --batch, nhưng không phát ra <contents>"
+msgid "tag shorthand without <tag>"
+msgstr "dùng tốc ký thẻ không có <thẻ>"
 
-#: builtin/cat-file.c:857
-msgid "read commands from stdin"
-msgstr "đọc các lệnh từ đầu vào tiêu chuẩn"
+msgid "--delete only accepts plain target ref names"
+msgstr "--delete chỉ chấp nhận các tên tham chiếu dạng thường"
 
-#: builtin/cat-file.c:861
-msgid "with --batch[-check]: ignores stdin, batches all known objects"
+msgid ""
+"\n"
+"To choose either option permanently, see push.default in 'git help config'.\n"
 msgstr ""
-"với --batch[-check]: bỏ qua đầu vào tiêu chuẩn stdin, batch mọi đối tượng đã "
-"biết"
+"\n"
+"Để chọn mỗi tùy chọn một cách cố định, xem push.default trong “git help "
+"config”.\n"
 
-#: builtin/cat-file.c:863
-msgid "Change or optimize batch output"
-msgstr "Thay đổi hay tối ưu hóa đầu ra batch"
+msgid ""
+"\n"
+"To avoid automatically configuring upstream branches when their name\n"
+"doesn't match the local branch, see option 'simple' of branch."
+"autoSetupMerge\n"
+"in 'git help config'.\n"
+msgstr ""
+"\n"
+"Để tránh tự động cấu hình nhánh thượng nguồn khi tên của chúng\n"
+"không khớp với nhánh nội bộ, xem tùy chọn 'simple' của branch."
+"autoSetupMerge\n"
+"trong 'git help config'.\n"
 
-#: builtin/cat-file.c:864
-msgid "buffer --batch output"
-msgstr "đệm kết xuất --batch"
+#, c-format
+msgid ""
+"The upstream branch of your current branch does not match\n"
+"the name of your current branch.  To push to the upstream branch\n"
+"on the remote, use\n"
+"\n"
+"    git push %s HEAD:%s\n"
+"\n"
+"To push to the branch of the same name on the remote, use\n"
+"\n"
+"    git push %s HEAD\n"
+"%s%s"
+msgstr ""
+"Nhánh thượng nguồn của nhánh hiện tại của bạn không khớp\n"
+"với tên của nhánh hiện tại của bạn.  Để đẩy lên đến nhánh\n"
+"thượng nguồn trên máy chủ, sử dụng\n"
+"\n"
+"    git push %s HEAD:%s\n"
+"\n"
+"Để đẩy tới nhánh cùng tên trên máy chủ, sử dụng\n"
+"\n"
+"    git push %s HEAD\n"
+"%s%s"
 
-#: builtin/cat-file.c:866
-msgid "follow in-tree symlinks"
-msgstr "theo liên kết mềm trong-cây"
+#, c-format
+msgid ""
+"You are not currently on a branch.\n"
+"To push the history leading to the current (detached HEAD)\n"
+"state now, use\n"
+"\n"
+"    git push %s HEAD:<name-of-remote-branch>\n"
+msgstr ""
+"Bạn hiện nay không ở một nhánh.\n"
+"Để đẩy lịch sử lên trên trạng thái hiện hành (HEAD đã bị tách rời)\n"
+"ngay bây giờ, sử dụng\n"
+"\n"
+"    git push %s HEAD:<tên-của-nhánh-máy-chủ>\n"
 
-#: builtin/cat-file.c:868
-msgid "do not order objects before emitting them"
-msgstr "đừng sắp xếp các đối tượng trước khi phát chúng"
+msgid ""
+"\n"
+"To have this happen automatically for branches without a tracking\n"
+"upstream, see 'push.autoSetupRemote' in 'git help config'.\n"
+msgstr ""
+"\n"
+"Để việc này xảy ra tự động cho các nhánh mà không có thượng nguồn\n"
+"theo dõi, xem 'push.autoSetupRemote' trong 'git help config'.\n"
 
-#: builtin/cat-file.c:870
+#, c-format
 msgid ""
-"Emit object (blob or tree) with conversion or filter (stand-alone, or with "
-"batch)"
+"The current branch %s has no upstream branch.\n"
+"To push the current branch and set the remote as upstream, use\n"
+"\n"
+"    git push --set-upstream %s %s\n"
+"%s"
 msgstr ""
-"Phát đối tượng (blob hoặc cây) với bộ chuyển đổi hoặc bộ lọc (stand-alone, "
-"hoặc với batch)"
+"Nhánh hiện tại %s không có nhánh thượng nguồn nào.\n"
+"Để push (đẩy lên) nhánh hiện tại và đặt máy chủ này làm thượng nguồn "
+"(upstream), sử dụng\n"
+"\n"
+"    git push --set-upstream %s %s\n"
+"%s"
 
-#: builtin/cat-file.c:872
-msgid "run textconv on object's content"
-msgstr "chạy lệnh textconv trên nội dung của đối tượng"
+#, c-format
+msgid "The current branch %s has multiple upstream branches, refusing to push."
+msgstr "Nhánh hiện tại %s có nhiều nhánh thượng nguồn, từ chối push."
 
-#: builtin/cat-file.c:874
-msgid "run filters on object's content"
-msgstr "chạy các bộ lọc nội dung của đối tượng"
+msgid ""
+"You didn't specify any refspecs to push, and push.default is \"nothing\"."
+msgstr ""
+"Bạn đã không chỉ ra một refspecs nào để đẩy lên, và push.default là \"không "
+"là gì cả\"."
 
-#: builtin/cat-file.c:875
-msgid "blob|tree"
-msgstr "blob|tree"
+#, c-format
+msgid ""
+"You are pushing to remote '%s', which is not the upstream of\n"
+"your current branch '%s', without telling me what to push\n"
+"to update which remote branch."
+msgstr ""
+"Bạn đang push (đẩy lên) máy chủ “%s”, mà nó không phải là thượng nguồn "
+"(upstream) của\n"
+"nhánh hiện tại “%s” của bạn, mà không báo cho tôi biết là cái gì được push\n"
+"để cập nhật nhánh máy chủ nào."
 
-#: builtin/cat-file.c:876
-msgid "use a <path> for (--textconv | --filters); Not with 'batch'"
+msgid ""
+"Updates were rejected because the tip of your current branch is behind\n"
+"its remote counterpart. Integrate the remote changes (e.g.\n"
+"'git pull ...') before pushing again.\n"
+"See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
-"dùng một </đường/dẫn/> rõ ràng cho (--textconv/--filters); Không với 'batch'"
+"Việc cập nhật bị từ chối bởi vì đầu mút của nhánh hiện tại của bạn nằm đằng\n"
+"sau bộ phận tương ứng của máy chủ. Hòa trộn với các thay đổi từ máy chủ\n"
+"(v.d. \"git pull …\") trước khi đẩy lên lần nữa.\n"
+"Xem “Note about fast-forwards” trong “git push --help” để có thông tin chi "
+"tiết."
 
-#: builtin/cat-file.c:894
-#, c-format
-msgid "'%s=<%s>' needs '%s' or '%s'"
-msgstr "'%s=<%s>' cần '%s' hoặc '%s'"
+msgid ""
+"Updates were rejected because a pushed branch tip is behind its remote\n"
+"counterpart. Check out this branch and integrate the remote changes\n"
+"(e.g. 'git pull ...') before pushing again.\n"
+"See the 'Note about fast-forwards' in 'git push --help' for details."
+msgstr ""
+"Việc cập nhật bị từ chối bởi vì đầu mút của nhánh đã đẩy lên nằm đằng sau "
+"bộ\n"
+"phận tương ứng của máy chủ. Checkou nhánh này và hòa trộn với các thay đổi\n"
+"từ máy chủ (v.d. “git pull …”) trước khi lại push lần nữa.\n"
+"Xem “Note about fast-forwards” trong “git push --help” để có thông tin chi "
+"tiết."
 
-#: builtin/cat-file.c:896
-msgid "path|tree-ish"
-msgstr "path|tree-ish"
+msgid ""
+"Updates were rejected because the remote contains work that you do\n"
+"not have locally. This is usually caused by another repository pushing\n"
+"to the same ref. You may want to first integrate the remote changes\n"
+"(e.g., 'git pull ...') before pushing again.\n"
+"See the 'Note about fast-forwards' in 'git push --help' for details."
+msgstr ""
+"Việc cập nhật bị từ chối bởi vì máy chủ có chứa công việc mà bạn không\n"
+"có ở máy nội bộ của mình. Lỗi này thường có nguyên nhân bởi kho khác đẩy\n"
+"dữ liệu lên cùng một tham chiếu. Bạn có lẽ muốn hòa trộn với các thay đổi\n"
+"từ máy chủ (v.d. “git pull…”) trước khi lại push lần nữa.\n"
+"Xem “Note about fast-forwards” trong “git push --help” để có thông tin chi "
+"tiết."
 
-#: builtin/cat-file.c:903 builtin/cat-file.c:906 builtin/cat-file.c:909
-#, c-format
-msgid "'%s' requires a batch mode"
-msgstr "“%s” cần một chế độ batch"
+msgid "Updates were rejected because the tag already exists in the remote."
+msgstr "Việc cập nhật bị từ chối bởi vì thẻ đã sẵn có từ trước trên máy chủ."
 
-#: builtin/cat-file.c:921
-#, c-format
-msgid "'-%c' is incompatible with batch mode"
-msgstr "'-%c' là xung khắc với chế độ batch"
+msgid ""
+"You cannot update a remote ref that points at a non-commit object,\n"
+"or update a remote ref to make it point at a non-commit object,\n"
+"without using the '--force' option.\n"
+msgstr ""
+"Không thể cập nhật một tham chiếu trên máy chủ mà nó chỉ đến đối tượng "
+"không\n"
+"phải là lần chuyển giao, hoặc cập nhật một tham chiếu máy chủ để nó chỉ đến "
+"đối tượng\n"
+"không phải chuyển giao, mà không sử dụng tùy chọn “--force”.\n"
 
-#: builtin/cat-file.c:924
-msgid "batch modes take no arguments"
-msgstr "chế độ batch không nhận các đối số"
+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/cat-file.c:932 builtin/cat-file.c:935
 #, c-format
-msgid "<rev> required with '%s'"
-msgstr "cần <rev> với '%s'"
+msgid "Pushing to %s\n"
+msgstr "Đang đẩy lên %s\n"
 
-#: builtin/cat-file.c:938
 #, c-format
-msgid "<object> required with '-%c'"
-msgstr "cần <object> với '-%c'"
-
-#: builtin/cat-file.c:943 builtin/notes.c:374 builtin/notes.c:429
-#: builtin/notes.c:507 builtin/notes.c:519 builtin/notes.c:596
-#: builtin/notes.c:663 builtin/notes.c:813 builtin/notes.c:965
-#: builtin/notes.c:987 builtin/prune-packed.c:25 builtin/receive-pack.c:2489
-#: builtin/tag.c:592
-msgid "too many arguments"
-msgstr "có quá nhiều đối số"
+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/cat-file.c:947
 #, c-format
-msgid "only two arguments allowed in <type> <object> mode, not %d"
-msgstr "chỉ hai đối số được phép trong chế độ <type> <object>, không phải %d"
-
-#: builtin/check-attr.c:13
-msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
-msgstr "git check-attr [-a | --all | <attr>…] [--] tên-đường-dẫn…"
-
-#: builtin/check-attr.c:14
-msgid "git check-attr --stdin [-z] [-a | --all | <attr>...]"
-msgstr "git check-attr --stdin [-z] [-a | --all | <attr>…]"
-
-#: builtin/check-attr.c:21
-msgid "report all attributes set on file"
-msgstr "báo cáo tất cả các thuộc tính đặt trên tập tin"
-
-#: builtin/check-attr.c:22
-msgid "use .gitattributes only from the index"
-msgstr "chỉ dùng .gitattributes từ bảng mục lục"
-
-#: builtin/check-attr.c:23 builtin/check-ignore.c:25 builtin/hash-object.c:101
-msgid "read file names from stdin"
-msgstr "đọc tên tập tin từ đầu vào tiêu chuẩn"
-
-#: builtin/check-attr.c:25 builtin/check-ignore.c:27
-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:1550 builtin/gc.c:550
-#: builtin/worktree.c:565
-msgid "suppress progress reporting"
-msgstr "chặn các báo cáo tiến trình hoạt động"
+msgid "invalid value for '%s'"
+msgstr "giá trị cho '%s' không hợp lệ"
 
-#: builtin/check-ignore.c:29
-msgid "show non-matching input paths"
-msgstr "hiển thị những đường dẫn đầu vào không khớp với mẫu"
+msgid "repository"
+msgstr "kho"
 
-#: builtin/check-ignore.c:31
-msgid "ignore index when checking"
-msgstr "bỏ qua mục lục khi kiểm tra"
+msgid "push all refs"
+msgstr "đẩy tất cả các tham chiếu"
 
-#: builtin/check-ignore.c:165
-msgid "cannot specify pathnames with --stdin"
-msgstr "không thể chỉ định các tên đường dẫn với --stdin"
+msgid "mirror all refs"
+msgstr "mirror tất cả các tham chiếu"
 
-#: builtin/check-ignore.c:168
-msgid "-z only makes sense with --stdin"
-msgstr "-z chỉ hợp lý với --stdin"
+msgid "delete refs"
+msgstr "xóa các tham chiếu"
 
-#: builtin/check-ignore.c:170
-msgid "no path specified"
-msgstr "chưa chỉ ra đường dẫn"
+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/check-ignore.c:174
-msgid "--quiet is only valid with a single pathname"
-msgstr "--quiet chỉ hợp lệ với tên đường dẫn đơn"
+msgid "force updates"
+msgstr "ép buộc cập nhật"
 
-#: builtin/check-ignore.c:176
-msgid "cannot have both --quiet and --verbose"
-msgstr "không thể dùng cả hai tùy chọn --quiet và --verbose"
+msgid "<refname>:<expect>"
+msgstr "<tên-tham-chiếu>:<cần>"
 
-#: builtin/check-ignore.c:179
-msgid "--non-matching is only valid with --verbose"
-msgstr "tùy-chọn --non-matching chỉ hợp lệ khi dùng với --verbose"
+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/check-mailmap.c:9
-msgid "git check-mailmap [<options>] <contact>..."
-msgstr "git check-mailmap [<các tùy chọn>] <danh-bạ>…"
+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/check-mailmap.c:14
-msgid "also read contacts from stdin"
-msgstr "đồng thời đọc các danh bạ từ đầu vào tiêu chuẩn"
+msgid "control recursive pushing of submodules"
+msgstr "điều khiển việc đẩy lên (push) đệ qui của mô-đun-con"
 
-#: builtin/check-mailmap.c:25
-#, c-format
-msgid "unable to parse contact: %s"
-msgstr "không thể phân tích danh bạ: “%s”"
+msgid "use thin pack"
+msgstr "tạo gói nhẹ"
 
-#: builtin/check-mailmap.c:48
-msgid "no contacts specified"
-msgstr "chưa chỉ ra danh bạ"
+msgid "receive pack program"
+msgstr "chương trình nhận gói"
 
-#: builtin/checkout--worker.c:110
-msgid "git checkout--worker [<options>]"
-msgstr "git checkout--worker [<các tùy chọn>]"
+msgid "set upstream for git pull/status"
+msgstr "đặt thượng nguồn cho git pull/status"
 
-#: builtin/checkout--worker.c:118 builtin/checkout-index.c:235
-#: builtin/column.c:31 builtin/column.c:32 builtin/submodule--helper.c:1878
-#: builtin/submodule--helper.c:1881 builtin/submodule--helper.c:1889
-#: builtin/submodule--helper.c:2716 builtin/worktree.c:563
-#: builtin/worktree.c:808
-msgid "string"
-msgstr "chuỗi"
+msgid "prune locally removed refs"
+msgstr "xén tỉa những tham chiếu bị gỡ bỏ"
 
-#: builtin/checkout--worker.c:119 builtin/checkout-index.c:236
-msgid "when creating files, prepend <string>"
-msgstr "khi tạo các tập tin, nối thêm <chuỗi>"
+msgid "bypass pre-push hook"
+msgstr "vòng qua móc tiền-đẩy (pre-push)"
 
-#: builtin/checkout-index.c:184
-msgid "git checkout-index [<options>] [--] [<file>...]"
-msgstr "git checkout-index [<các tùy chọn>] [--] [<tập-tin>…]"
+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/checkout-index.c:201
-msgid "stage should be between 1 and 3 or all"
-msgstr "stage nên giữa 1 và 3 hay all"
+msgid "GPG sign the push"
+msgstr "ký lần đẩy dùng GPG"
 
-#: builtin/checkout-index.c:219
-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"
+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/checkout-index.c:221
-msgid "do not skip files with skip-worktree set"
-msgstr "đừng bỏ qua các tập tin với skip-worktree được đặt"
+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/checkout-index.c:222
-msgid "force overwrite of existing files"
-msgstr "ép buộc ghi đè lên tập tin đã sẵn có từ trước"
+#, c-format
+msgid "bad repository '%s'"
+msgstr "repository (kho) sai “%s”"
 
-#: builtin/checkout-index.c:224
-msgid "no warning for existing files and files not in index"
+msgid ""
+"No configured push destination.\n"
+"Either specify the URL from the command-line or configure a remote "
+"repository using\n"
+"\n"
+"    git remote add <name> <url>\n"
+"\n"
+"and then push using the remote name\n"
+"\n"
+"    git push <name>\n"
 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:226
-msgid "don't checkout new files"
-msgstr "không checkout các tập tin mới"
-
-#: builtin/checkout-index.c:228
-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:232
-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:234
-msgid "write the content to temporary files"
-msgstr "ghi nội dung vào tập tin tạm"
-
-#: builtin/checkout-index.c:238
-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"
+"Chưa cấu hình đích để đẩy lên.\n"
+"Hoặc là chỉ ra URL từ dòng lệnh hoặc là cấu hình một kho máy chủ sử dụng\n"
+"\n"
+"    git remote add <tên> <url>\n"
+"\n"
+"và sau đó đẩy lên sử dụng tên máy chủ\n"
+"\n"
+"    git push <tên>\n"
 
-#: builtin/checkout.c:34
-msgid "git checkout [<options>] <branch>"
-msgstr "git checkout [<các tùy chọn>] <nhánh>"
+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/checkout.c:35
-msgid "git checkout [<options>] [<branch>] -- <file>..."
-msgstr "git checkout [<các tùy chọn>] [<nhánh>] -- <tập-tin>…"
+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/checkout.c:40
-msgid "git switch [<options>] [<branch>]"
-msgstr "git switch [<các tùy chọn>] [<nhánh>]"
+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"
 
-#: builtin/checkout.c:45
-msgid "git restore [<options>] [--source=<branch>] <file>..."
-msgstr "git restore [<các tùy chọn>] [--source=<nhánh>] <tập tin>…"
+msgid "git range-diff [<options>] <old-base>..<old-tip> <new-base>..<new-tip>"
+msgstr ""
+"git range-diff [<các tùy chọn>] <old-base>..<old-tip> <new-base>..<new-tip>"
 
-#: builtin/checkout.c:199 builtin/checkout.c:238
-#, c-format
-msgid "path '%s' does not have our version"
-msgstr "đường dẫn “%s” không có các phiên bản của chúng ta"
+msgid "git range-diff [<options>] <old-tip>...<new-tip>"
+msgstr "git range-diff [<các tùy chọn>] <old-tip>…<new-tip>"
 
-#: builtin/checkout.c:201 builtin/checkout.c:240
-#, c-format
-msgid "path '%s' does not have their version"
-msgstr "đường dẫn “%s” không có các phiên bản của chúng"
+msgid "git range-diff [<options>] <base> <old-tip> <new-tip>"
+msgstr "git range-diff [<các tùy chọn>] <base> <old-tip> <new-tip>"
 
-#: builtin/checkout.c:217
-#, c-format
-msgid "path '%s' does not have all necessary versions"
-msgstr "đường dẫn “%s” không có tất cả các phiên bản cần thiết"
+msgid "use simple diff colors"
+msgstr "dùng màu diff đơn giản"
 
-#: builtin/checkout.c:271
-#, c-format
-msgid "path '%s' does not have necessary versions"
-msgstr "đường dẫn “%s” không có các phiên bản cần thiết"
+msgid "notes"
+msgstr "ghi chú"
 
-#: builtin/checkout.c:291
-#, c-format
-msgid "path '%s': cannot merge"
-msgstr "đường dẫn “%s”: không thể hòa trộn"
+msgid "passed to 'git log'"
+msgstr "chuyển cho “git log”"
 
-#: builtin/checkout.c:307
-#, c-format
-msgid "Unable to add merge result for '%s'"
-msgstr "Không thể thêm kết quả hòa trộn cho “%s”"
+msgid "only emit output related to the first range"
+msgstr "chỉ phát ra kết xuất liên quan đến vùng đầu tiên"
 
-#: builtin/checkout.c:424
-#, c-format
-msgid "Recreated %d merge conflict"
-msgid_plural "Recreated %d merge conflicts"
-msgstr[0] "Đã tạo lại %d xung đột hòa trộn"
+msgid "only emit output related to the second range"
+msgstr "chỉ phát ra kết xuất liên quan đến vùng thứ hai"
 
-#: builtin/checkout.c:429
 #, c-format
-msgid "Updated %d path from %s"
-msgid_plural "Updated %d paths from %s"
-msgstr[0] "Đã cập nhật đường dẫn %d từ %s"
+msgid "not a commit range: '%s'"
+msgstr "không phải là vùng chuyển giao: “%s”"
 
-#: builtin/checkout.c:436
-#, c-format
-msgid "Updated %d path from the index"
-msgid_plural "Updated %d paths from the index"
-msgstr[0] "Đã cập nhật đường dẫn %d từ mục lục"
+msgid "single arg format must be symmetric range"
+msgstr "định dạng đối số đơn phải là một vùng đối xứng"
 
-#: builtin/checkout.c:459 builtin/checkout.c:462 builtin/checkout.c:465
-#: builtin/checkout.c:469
-#, c-format
-msgid "'%s' cannot be used with updating paths"
-msgstr "không được dùng “%s” với các đường dẫn cập nhật"
+msgid "need two commit ranges"
+msgstr "cần hai vùng lần chuyển giao"
 
-#: builtin/checkout.c:479
-#, c-format
-msgid "Cannot update paths and switch to branch '%s' at the same time."
+msgid ""
+"git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>) "
+"[-u | -i]] [--no-sparse-checkout] [--index-output=<file>] (--empty | <tree-"
+"ish1> [<tree-ish2> [<tree-ish3>]])"
 msgstr ""
-"Không thể cập nhật các đường dẫn và chuyển đến nhánh “%s” cùng một lúc."
-
-#: builtin/checkout.c:483
-#, c-format
-msgid "neither '%s' or '%s' is specified"
-msgstr "không chỉ định “%s” cũng không “%s”"
+"git read-tree [(-m [--trivial] [--aggressive] | --reset | --"
+"prefix=<tiền_tố>) [-u | -i]] [--no-sparse-checkout] [--index-"
+"output=<tập_tin>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
 
-#: builtin/checkout.c:487
-#, c-format
-msgid "'%s' must be used when '%s' is not specified"
-msgstr "phải có “%s” khi không chỉ định “%s”"
+msgid "write resulting index to <file>"
+msgstr "ghi mục lục kết quả vào <tập-tin>"
 
-#: builtin/checkout.c:492 builtin/checkout.c:497
-#, 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"
+msgid "only empty the index"
+msgstr "chỉ với bảng mục lục trống rỗng"
 
-#: builtin/checkout.c:571 builtin/checkout.c:578
-#, c-format
-msgid "path '%s' is unmerged"
-msgstr "đường dẫn “%s” không được hòa trộn"
+msgid "Merging"
+msgstr "Hòa trộn"
 
-#: builtin/checkout.c:753
-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 đã"
+msgid "perform a merge in addition to a read"
+msgstr "thực hiện một hòa trộn thêm vào việc đọc"
 
-#: builtin/checkout.c:809
-#, c-format
-msgid ""
-"cannot continue with staged changes in the following files:\n"
-"%s"
+msgid "3-way merge if no file level merging required"
 msgstr ""
-"không thể tiếp tục với các thay đổi đã được đưa lên bệ phóng trong các dòng "
-"sau:\n"
-"%s"
-
-#: builtin/checkout.c:902
-#, c-format
-msgid "Can not do reflog for '%s': %s\n"
-msgstr "Không thể thực hiện reflog cho “%s”: %s\n"
+"hòa trộn kiểu “3-way” nếu không có tập tin mức hòa trộn nào được yêu cầu"
 
-#: builtin/checkout.c:947
-msgid "HEAD is now at"
-msgstr "HEAD hiện giờ tại"
+msgid "3-way merge in presence of adds and removes"
+msgstr "hòa trộn 3-way trong sự hiện diện của “adds” và “removes”"
 
-#: builtin/checkout.c:951 builtin/clone.c:615 t/helper/test-fast-rebase.c:203
-msgid "unable to update HEAD"
-msgstr "không thể cập nhật HEAD"
+msgid "same as -m, but discard unmerged entries"
+msgstr "giống với -m, nhưng bỏ qua các mục chưa được hòa trộn"
 
-#: builtin/checkout.c:955
-#, c-format
-msgid "Reset branch '%s'\n"
-msgstr "Đặt lại nhánh “%s”\n"
+msgid "<subdirectory>/"
+msgstr "<thư-mục-con>/"
 
-#: builtin/checkout.c:958
-#, c-format
-msgid "Already on '%s'\n"
-msgstr "Đã sẵn sàng trên “%s”\n"
+msgid "read the tree into the index under <subdirectory>/"
+msgstr "đọc cây vào trong bảng mục lục dưới <thư_mục_con>/"
 
-#: builtin/checkout.c:962
-#, c-format
-msgid "Switched to and reset branch '%s'\n"
-msgstr "Đã chuyển tới và đặt lại nhánh “%s”\n"
+msgid "update working tree with merge result"
+msgstr "cập nhật cây làm việc với kết quả hòa trộn"
 
-#: builtin/checkout.c:964 builtin/checkout.c:1398
-#, c-format
-msgid "Switched to a new branch '%s'\n"
-msgstr "Đã chuyển đến nhánh mới “%s”\n"
+msgid "gitignore"
+msgstr "gitignore"
 
-#: builtin/checkout.c:966
-#, c-format
-msgid "Switched to branch '%s'\n"
-msgstr "Đã chuyển đến nhánh “%s”\n"
+msgid "allow explicitly ignored files to be overwritten"
+msgstr "cho phép các tập tin rõ ràng bị lờ đi được ghi đè"
 
-#: builtin/checkout.c:1017
-#, c-format
-msgid " ... and %d more.\n"
-msgstr " … và nhiều hơn %d.\n"
+msgid "don't check the working tree after merging"
+msgstr "không kiểm tra cây làm việc sau hòa trộn"
 
-#: builtin/checkout.c:1023
-#, c-format
-msgid ""
-"Warning: you are leaving %d commit behind, not connected to\n"
-"any of your branches:\n"
-"\n"
-"%s\n"
-msgid_plural ""
-"Warning: you are leaving %d commits behind, not connected to\n"
-"any of your branches:\n"
-"\n"
-"%s\n"
-msgstr[0] ""
-"Cảnh báo: bạn đã rời bỏ %d lần chuyển giao lại đằng sau, không được kết nối "
-"đến\n"
-"bất kỳ nhánh nào của bạn:\n"
-"\n"
-"%s\n"
+msgid "don't update the index or the work tree"
+msgstr "không cập nhật bảng mục lục hay cây làm việc"
 
-#: builtin/checkout.c:1042
-#, c-format
-msgid ""
-"If you want to keep it by creating a new branch, this may be a good time\n"
-"to do so with:\n"
-"\n"
-" git branch <new-branch-name> %s\n"
-"\n"
-msgid_plural ""
-"If you want to keep them by creating a new branch, this may be a good time\n"
-"to do so with:\n"
-"\n"
-" git branch <new-branch-name> %s\n"
-"\n"
-msgstr[0] ""
-"Nếu bạn muốn giữ (chúng) nó bằng cách tạo ra một nhánh mới, đây có lẽ là\n"
-"một thời điểm thích hợp để làm thế bằng lệnh:\n"
-"\n"
-" git branch <tên_nhánh_mới> %s\n"
-"\n"
+msgid "skip applying sparse checkout filter"
+msgstr "bỏ qua áp dụng bộ lọc lấy ra (checkout) thưa thớt"
 
-#: builtin/checkout.c:1077
-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"
+msgid "debug unpack-trees"
+msgstr "gỡ lỗi “unpack-trees”"
 
-#: builtin/checkout.c:1081
-msgid "Previous HEAD position was"
-msgstr "Vị trí trước kia của HEAD là"
+msgid "suppress feedback messages"
+msgstr "không xuất các thông tin phản hồi"
 
-#: builtin/checkout.c:1124 builtin/checkout.c:1393
-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"
+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:1206
-#, c-format
 msgid ""
-"'%s' could be both a local file and a tracking branch.\n"
-"Please use -- (and optionally --no-guess) to disambiguate"
+"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase> | --keep-base] "
+"[<upstream> [<branch>]]"
 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"
+"git rebase [-i] [các tùy chọn] [--exec <lệnh>] [--onto <newbase> | --keep-"
+"base] [<upstream>] [<nhánh>]]"
 
-#: builtin/checkout.c:1213
 msgid ""
-"If you meant to check out a remote tracking branch on, e.g. 'origin',\n"
-"you can do so by fully qualifying the name with the --track option:\n"
-"\n"
-"    git checkout --track origin/<name>\n"
-"\n"
-"If you'd like to always have checkouts of an ambiguous <name> prefer\n"
-"one remote, e.g. the 'origin' remote, consider setting\n"
-"checkout.defaultRemote=origin in your config."
+"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]"
 msgstr ""
-"Nếu ý bạn là lấy ra nhánh máy chủ được theo dõi, ví dụ “origin”,\n"
-"bạn có thể làm như vậy bằng cách chỉ định đầy đủ tên với tùy chọn --track:\n"
-"\n"
-"    git checkout --track origin/<tên>\n"
-"\n"
-"Nếu bạn muốn luôn lấy ra từ một <tên> một máy chủ ưa thích\n"
-"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."
+"git rebase [-i] [các tùy chọn] [--exec <lệnh>] [--onto <newbase>] --root "
+"[<nhánh>]"
 
-#: builtin/checkout.c:1223
 #, 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:1289
-msgid "only one reference expected"
-msgstr "chỉ cần một tham chiếu"
+msgid "could not read '%s'."
+msgstr "không thể đọc “%s”."
 
-#: builtin/checkout.c:1306
 #, 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."
+msgid "could not create temporary %s"
+msgstr "không thể tạo %s tạm thời"
 
-#: builtin/checkout.c:1352 builtin/worktree.c:338 builtin/worktree.c:508
-#, c-format
-msgid "invalid reference: %s"
-msgstr "tham chiếu không hợp lệ: %s"
+msgid "could not mark as interactive"
+msgstr "không thể đánh dấu là tương tác"
+
+msgid "could not generate todo list"
+msgstr "không thể tạo danh sách cần làm"
+
+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/checkout.c:1365 builtin/checkout.c:1744
 #, c-format
-msgid "reference is not a tree: %s"
-msgstr "tham chiếu không phải là một cây:%s"
+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/checkout.c:1413
 #, 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”"
+msgid "could not get 'onto': '%s'"
+msgstr "không thể đặt lấy “onto”: “%s”"
 
-#: builtin/checkout.c:1415
 #, 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”"
+msgid "invalid orig-head: '%s'"
+msgstr "orig-head không hợp lệ: “%s”"
 
-#: builtin/checkout.c:1417 builtin/checkout.c:1426
 #, c-format
-msgid "a branch is expected, got '%s'"
-msgstr "cần một nhánh, nhưng lại nhận được “%s”"
+msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
+msgstr "đang bỏ qua allow_rerere_autoupdate không hợp lệ: “%s”"
 
-#: builtin/checkout.c:1420
 #, 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”"
+msgid "could not remove '%s'"
+msgstr "không thể gỡ bỏ “%s”"
 
-#: builtin/checkout.c:1429
 msgid ""
-"If you want to detach HEAD at the commit, try again with the --detach option."
+"Resolve all conflicts manually, mark them as resolved with\n"
+"\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
+"You can instead skip this commit: run \"git rebase --skip\".\n"
+"To abort and get back to the state before \"git rebase\", run \"git rebase --"
+"abort\"."
 msgstr ""
-"Nếu bạn muốn tách rời HEAD ở lần chuyển giao, hay thử lại với tùy chọn --"
-"detach."
+"Giải quyết vấn đề này thủ công, hãy đanh dấu chúng đã được giải quyết bằng\n"
+"hãy chạy lệnh \"git add/rm <các_tập_tin_xung_đột>\", sau đó chạy \"git "
+"rebase --continue\".\n"
+"Bạn có thể bỏ qua miếng vá, chạy \"git rebase --skip\".\n"
+"Để bãi bỏ và quay trở lại trạng thái trước \"git rebase\", chạy \"git rebase "
+"--abort\"."
 
-#: builtin/checkout.c:1442
+#, c-format
 msgid ""
-"cannot switch branch while merging\n"
-"Consider \"git merge --quit\" or \"git worktree add\"."
+"\n"
+"git encountered an error while preparing the patches to replay\n"
+"these revisions:\n"
+"\n"
+"    %s\n"
+"\n"
+"As a result, git cannot rebase them."
 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\"."
+"\n"
+"git chạm trán một lỗi trong khi đang chuẩn bị các miếng vá để diễn lại\n"
+"những điểm xét duyệt này:\n"
+"\n"
+"    %s\n"
+"\n"
+"Kết quả là git không thể cải tổ lại chúng."
 
-#: builtin/checkout.c:1446
-msgid ""
-"cannot switch branch in the middle of an am session\n"
-"Consider \"git am --quit\" or \"git worktree add\"."
-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\"."
+#, c-format
+msgid "could not switch to %s"
+msgstr "không thể chuyển đến %s"
 
-#: builtin/checkout.c:1450
+#, c-format
 msgid ""
-"cannot switch branch while rebasing\n"
-"Consider \"git rebase --quit\" or \"git worktree add\"."
+"unrecognized empty type '%s'; valid values are \"drop\", \"keep\", and \"ask"
+"\"."
 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\"."
+"kiểu rỗng không được nhận dạng “%s”; giá trị hợp lệ là \"drop\", \"keep\", "
+"và \"ask\"."
 
-#: builtin/checkout.c:1454
+#, c-format
 msgid ""
-"cannot switch branch while cherry-picking\n"
-"Consider \"git cherry-pick --quit\" or \"git worktree add\"."
+"%s\n"
+"Please specify which branch you want to rebase against.\n"
+"See git-rebase(1) for details.\n"
+"\n"
+"    git rebase '<branch>'\n"
+"\n"
 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\"."
+"%s\n"
+"Vui lòng chỉ định nhánh nào bạn muốn cải tổ dựa vào.\n"
+"Xem git-rebase(1) để biết thêm chi tiết.\n"
+"\n"
+"    git rebase “<nhánh>”\n"
+"\n"
 
-#: builtin/checkout.c:1458
+#, c-format
 msgid ""
-"cannot switch branch while reverting\n"
-"Consider \"git revert --quit\" or \"git worktree add\"."
+"If you wish to set tracking information for this branch you can do so with:\n"
+"\n"
+"    git branch --set-upstream-to=%s/<branch> %s\n"
+"\n"
 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\"."
+"Nếu bạn muốn theo dõi thông tin cho nhánh này bạn có thể thực hiện bằng "
+"lệnh:\n"
+"\n"
+"    git branch --set-upstream-to=%s/<nhánh> %s\n"
+"\n"
 
-#: builtin/checkout.c:1462
-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"
+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/checkout.c:1469
-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"
+msgid "empty exec command"
+msgstr "lệnh thực thi trống rỗng"
 
-#: builtin/checkout.c:1472 builtin/checkout.c:1476 builtin/checkout.c:1480
-#, 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"
+msgid "rebase onto given branch instead of upstream"
+msgstr "cải tổ vào nhánh đã cho thay cho thượng nguồn"
 
-#: builtin/checkout.c:1484 builtin/checkout.c:1487 builtin/checkout.c:1490
-#: builtin/checkout.c:1495 builtin/checkout.c:1500
-#, c-format
-msgid "'%s' cannot be used with '%s'"
-msgstr "“%s” không thể được dùng với “%s”"
+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/checkout.c:1497
-#, c-format
-msgid "'%s' cannot take <start-point>"
-msgstr "“%s” không thể nhận <điểm-đầu>"
+msgid "allow pre-rebase hook to run"
+msgstr "cho phép móc (hook) pre-rebase được chạy"
 
-#: builtin/checkout.c:1505
-#, 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”"
+msgid "be quiet. implies --no-stat"
+msgstr "hãy im lặng. ý là --no-stat"
 
-#: builtin/checkout.c:1512
-msgid "missing branch or commit argument"
-msgstr "thiếu tham số là nhánh hoặc lần chuyển giao"
+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/checkout.c:1555
-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"
+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/checkout.c:1556 builtin/log.c:1844 parse-options.h:354
-msgid "style"
-msgstr "kiểu"
+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/checkout.c:1557
-msgid "conflict style (merge, diff3, or zdiff3)"
-msgstr "xung đột kiểu (hòa trộn, diff3 hoặc zdiff3)"
+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/checkout.c:1569 builtin/worktree.c:560
-msgid "detach HEAD at named commit"
-msgstr "rời bỏ HEAD tại lần chuyển giao theo tên"
+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/checkout.c:1574
-msgid "force checkout (throw away local modifications)"
-msgstr "ép buộc lấy ra (bỏ đi những thay đổi nội bộ)"
+msgid "synonym of --reset-author-date"
+msgstr "đồng nghĩa với --reset-author-date"
 
-#: builtin/checkout.c:1576
-msgid "new-branch"
-msgstr "nhánh-mới"
+msgid "passed to 'git apply'"
+msgstr "chuyển cho “git apply”"
 
-#: builtin/checkout.c:1576
-msgid "new unparented branch"
-msgstr "nhánh không cha mới"
+msgid "ignore changes in whitespace"
+msgstr "lờ đi sự thay đổi do khoảng trắng gây ra"
 
-#: builtin/checkout.c:1578 builtin/merge.c:305
-msgid "update ignored files (default)"
-msgstr "cập nhật các tập tin bị bỏ qua (mặc định)"
+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/checkout.c:1581
-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"
+msgid "continue"
+msgstr "tiếp tục"
 
-#: builtin/checkout.c:1594
-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"
+msgid "skip current patch and continue"
+msgstr "bỏ qua miếng vá hiện hành và tiếp tục"
 
-#: builtin/checkout.c:1597
-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"
+msgid "abort and check out the original branch"
+msgstr "bãi bỏ và lấy ra nhánh nguyên thủy"
 
-#: builtin/checkout.c:1601
-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"
+msgid "abort but keep HEAD where it is"
+msgstr "bãi bỏ nhưng vẫn vẫn giữ HEAD chỉ đến nó"
 
-#: builtin/checkout.c:1659
-#, c-format
-msgid "options '-%c', '-%c', and '%s' cannot be used together"
-msgstr "tùy chọn '-%c', '-%c' và '%s' không thể dùng cùng nhau"
+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/checkout.c:1700
-msgid "--track needs a branch name"
-msgstr "--track cần tên một nhánh"
+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/checkout.c:1705
-#, c-format
-msgid "missing branch name; try -%c"
-msgstr "thiếu tên nhánh; hãy thử -%c"
+msgid "use apply strategies to rebase"
+msgstr "dùng chiến lược áp dụng để cải tổ"
 
-#: builtin/checkout.c:1737
-#, c-format
-msgid "could not resolve %s"
-msgstr "không thể phân giải “%s”"
+msgid "use merging strategies to rebase"
+msgstr "dùng chiến lược hòa trộn để cải tổ"
 
-#: builtin/checkout.c:1753
-msgid "invalid path specification"
-msgstr "đường dẫn đã cho không hợp lệ"
+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/checkout.c:1760
-#, 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ừ đó"
+msgid "(REMOVED) was: try to recreate merges instead of ignoring them"
+msgstr "(ĐàBỊ XÓA BỎ) hãy thử tạo lại các hòa trộn thay vì bỏ qua chúng"
 
-#: builtin/checkout.c:1764
-#, 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”"
+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/checkout.c:1789
-msgid ""
-"git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
-"checking out of the index."
-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)."
+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/checkout.c:1794
-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"
+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/checkout.c:1819 builtin/checkout.c:1821 builtin/checkout.c:1873
-#: builtin/checkout.c:1875 builtin/clone.c:130 builtin/remote.c:171
-#: builtin/remote.c:173 builtin/submodule--helper.c:3038
-#: builtin/submodule--helper.c:3371 builtin/worktree.c:556
-#: builtin/worktree.c:558
-msgid "branch"
-msgstr "nhánh"
+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/checkout.c:1820
-msgid "create and checkout a new branch"
-msgstr "tạo và checkout một nhánh mới"
+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/checkout.c:1822
-msgid "create/reset and checkout a branch"
-msgstr "tạo/đặt_lại và checkout một nhánh"
+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/checkout.c:1823
-msgid "create reflog for new branch"
-msgstr "tạo reflog cho nhánh mới"
+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/checkout.c:1825
-msgid "second guess 'git checkout <no-such-branch>' (default)"
-msgstr "gợi ý thứ hai “git checkout <không-nhánh-nào-như-vậy>” (mặc định)"
+msgid "use the given merge strategy"
+msgstr "dùng chiến lược hòa trộn đã cho"
 
-#: builtin/checkout.c:1826
-msgid "use overlay mode (default)"
-msgstr "dùng chế độ che phủ (mặc định)"
+msgid "option"
+msgstr "tùy chọn"
 
-#: builtin/checkout.c:1874
-msgid "create and switch to a new branch"
-msgstr "tạo và chuyển đến một nhánh mới"
+msgid "pass the argument through to the merge strategy"
+msgstr "chuyển thao số đến chiến lược hòa trộn"
 
-#: builtin/checkout.c:1876
-msgid "create/reset and switch to a branch"
-msgstr "tạo/đặt_lại và chuyển đến một nhánh"
+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/checkout.c:1878
-msgid "second guess 'git switch <no-such-branch>'"
-msgstr "gợi ý thứ hai \"git switch <không-nhánh-nào-như-vậy>\""
+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/checkout.c:1880
-msgid "throw away local modifications"
-msgstr "vứt bỏ các sửa đổi địa phương"
+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/checkout.c:1916
-msgid "which tree-ish to checkout from"
-msgstr "lấy ra từ tree-ish nào"
+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/checkout.c:1918
-msgid "restore the index"
-msgstr "phục hồi bảng mục lục"
+msgid ""
+"`rebase --preserve-merges` (-p) is no longer supported.\n"
+"Use `git rebase --abort` to terminate current rebase.\n"
+"Or downgrade to v2.33, or earlier, to complete the rebase."
+msgstr ""
+"`rebase --preserve-merges` (-p) không còn được hỗ trợ nữa.\n"
+"Dùng `git rebase --abort` để chấm dứt việc cải tổ hiện tại.\n"
+"Hoặc là hạ phiên bản phần mềm xuống v2.33,\n"
+"hoặc trước nữa, để hoàn thành việc cải tổ."
 
-#: builtin/checkout.c:1920
-msgid "restore the working tree (default)"
-msgstr "phục hồi cây làm việc (mặc định)"
+msgid ""
+"--preserve-merges was replaced by --rebase-merges\n"
+"Note: Your `pull.rebase` configuration may also be set to 'preserve',\n"
+"which is no longer supported; use 'merges' instead"
+msgstr ""
+"--preserve-merges được thay bằng --rebase-merges\n"
+"Chú ý: Cấu hình `pull.rebase` của bạn cũng có thể được đặt thành "
+"'preserve',\n"
+"cái mà giờ không còn được hỗ trợ nữa; dùng 'merges' để thay thế"
 
-#: builtin/checkout.c:1922
-msgid "ignore unmerged entries"
-msgstr "bỏ qua những thứ chưa hòa trộn: %s"
+msgid "No rebase in progress?"
+msgstr "Không có tiến trình rebase nào phải không?"
 
-#: builtin/checkout.c:1923
-msgid "use overlay mode"
-msgstr "dùng chế độ che phủ"
+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."
+
+msgid "Cannot read HEAD"
+msgstr "Không thể đọc HEAD"
 
-#: builtin/clean.c:29
 msgid ""
-"git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <paths>..."
+"You must edit all merge conflicts and then\n"
+"mark them as resolved using git add"
 msgstr ""
-"git clean [-d] [-f] [-i] [-n] [-q] [-e <mẫu>] [-x | -X] [--] </các/đường/"
-"dẫn>…"
+"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/clean.c:33
-#, c-format
-msgid "Removing %s\n"
-msgstr "Đang gỡ bỏ %s\n"
+msgid "could not discard worktree changes"
+msgstr "không thể loại bỏ các thay đổi cây-làm-việc"
 
-#: builtin/clean.c:34
 #, c-format
-msgid "Would remove %s\n"
-msgstr "Có thể gỡ bỏ %s\n"
+msgid "could not move back to %s"
+msgstr "không thể quay trở lại %s"
 
-#: builtin/clean.c:35
 #, c-format
-msgid "Skipping repository %s\n"
-msgstr "Đang bỏ qua kho chứa %s\n"
+msgid ""
+"It seems that there is already a %s directory, and\n"
+"I wonder if you are in the middle of another rebase.  If that is the\n"
+"case, please try\n"
+"\t%s\n"
+"If that is not the case, please\n"
+"\t%s\n"
+"and run me again.  I am stopping in case you still have something\n"
+"valuable there.\n"
+msgstr ""
+"Hình như là ở đây sẵn có một thư mục %s, và\n"
+"Tôi tự hỏi có phải bạn đang ở giữa một lệnh rebase khác. Nếu đúng là\n"
+"như vậy, xin hãy thử\n"
+"\t%s\n"
+"Nếu không phải thế, hãy thử\n"
+"\t%s\n"
+"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/clean.c:36
-#, c-format
-msgid "Would skip repository %s\n"
-msgstr "Nên bỏ qua kho chứa %s\n"
+msgid "switch `C' expects a numerical value"
+msgstr "tùy chọn “%c” cần một giá trị bằng số"
 
-#: builtin/clean.c:38
 #, c-format
-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:39
-msgid "Refusing to remove current working directory\n"
-msgstr "Từ chối gỡ bỏ thư mục làm việc hiện tại\n"
+msgid "Unknown mode: %s"
+msgstr "Không hiểu chế độ: %s"
 
-#: builtin/clean.c:40
-msgid "Would refuse to remove current working directory\n"
-msgstr "Nên từ chối gỡ bỏ thư mục làm việc hiện tại\n"
+msgid "--strategy requires --merge or --interactive"
+msgstr "--strategy cần --merge hay --interactive"
 
-#: builtin/clean.c:326 git-add--interactive.perl:593
-#, c-format
-msgid ""
-"Prompt help:\n"
-"1          - select a numbered item\n"
-"foo        - select item based on unique prefix\n"
-"           - (empty) select nothing\n"
+msgid "apply options and merge options cannot be used together"
 msgstr ""
-"Trợ giúp về nhắc:\n"
-"1          - chọn một mục được đánh số\n"
-"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"
+"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 với nhau"
 
-#: builtin/clean.c:330 git-add--interactive.perl:602
 #, c-format
-msgid ""
-"Prompt help:\n"
-"1          - select a single item\n"
-"3-5        - select a range of items\n"
-"2-3,6-9    - select multiple ranges\n"
-"foo        - select item based on unique prefix\n"
-"-...       - unselect specified items\n"
-"*          - choose all items\n"
-"           - (empty) finish selecting\n"
-msgstr ""
-"Trợ giúp về nhắc:\n"
-"1          - chọn một mục đơn\n"
-"3-5        - chọn một vùng\n"
-"2-3,6-9    - chọn nhiều vùng\n"
-"foo        - chọn mục dựa trên tiền tố duy nhất\n"
-"-…         - không chọn các mục đã chỉ ra\n"
-"*          - chọn tất\n"
-"           - (để trống) kết thúc việc chọn\n"
+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/clean.c:545 git-add--interactive.perl:568
-#: git-add--interactive.perl:573
-#, c-format, perl-format
-msgid "Huh (%s)?\n"
-msgstr "Hả (%s)?\n"
+msgid "--reschedule-failed-exec requires --exec or --interactive"
+msgstr "--reschedule-failed-exec cần --exec hay --interactive"
 
-#: builtin/clean.c:685
 #, c-format
-msgid "Input ignore patterns>> "
-msgstr "Mẫu để lọc các tập tin đầu vào cần lờ đi>> "
+msgid "invalid upstream '%s'"
+msgstr "thượng nguồn không hợp lệ “%s”"
 
-#: builtin/clean.c:719
-#, c-format
-msgid "WARNING: Cannot find items matched by: %s"
-msgstr "CẢNH BÁO: Không tìm thấy các mục được khớp bởi: %s"
+msgid "Could not create new root commit"
+msgstr "Không thể tạo lần chuyển giao gốc mới"
 
-#: builtin/clean.c:740
-msgid "Select items to delete"
-msgstr "Chọn mục muốn xóa"
+#, c-format
+msgid "no such branch/commit '%s'"
+msgstr "không có nhánh/lần chuyển giao “%s” như thế"
 
-#. TRANSLATORS: Make sure to keep [y/N] as is
-#: builtin/clean.c:781
 #, c-format
-msgid "Remove %s [y/N]? "
-msgstr "Xóa bỏ “%s” [y/N]? "
+msgid "No such ref: %s"
+msgstr "Không có tham chiếu nào như thế: %s"
 
-#: builtin/clean.c:812
-msgid ""
-"clean               - start cleaning\n"
-"filter by pattern   - exclude items from deletion\n"
-"select by numbers   - select items to be deleted by numbers\n"
-"ask each            - confirm each deletion (like \"rm -i\")\n"
-"quit                - stop cleaning\n"
-"help                - this screen\n"
-"?                   - help for prompt selection"
-msgstr ""
-"clean               - bắt đầu dọn dẹp\n"
-"filter by pattern   - loại trừ các mục khỏi việc xóa\n"
-"select by numbers   - chọn các mục cần xóa bằng số\n"
-"ask each            - xác nhận trước mỗi lần xóa (giống như \"rm -i\")\n"
-"quit                - dừng việc dọn dẹp lại\n"
-"help                - hiển thị chính trợ giúp này\n"
-"?                   - trợ giúp dành cho chọn bằng cách nhắc"
+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/clean.c:848
-msgid "Would remove the following item:"
-msgid_plural "Would remove the following items:"
-msgstr[0] "Có muốn gỡ bỏ (các) mục sau đây không:"
+#, 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/clean.c:864
-msgid "No more files to clean, exiting."
-msgstr "Không còn tập-tin nào để dọn dẹp, đang thoát ra."
+#, 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/clean.c:926
-msgid "do not print names of files removed"
-msgstr "không hiển thị tên của các tập tin đã gỡ bỏ"
+#, 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/clean.c:928
-msgid "force"
-msgstr "ép buộc"
+msgid "Please commit or stash them."
+msgstr "Xin hãy chuyển giao hoặc tạm cất (stash) chúng."
 
-#: builtin/clean.c:929
-msgid "interactive cleaning"
-msgstr "dọn bằng kiểu tương tác"
+msgid "HEAD is up to date."
+msgstr "HEAD đã cập nhật."
 
-#: builtin/clean.c:931
-msgid "remove whole directories"
-msgstr "gỡ bỏ toàn bộ thư mục"
+#, 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/clean.c:932 builtin/describe.c:565 builtin/describe.c:567
-#: builtin/grep.c:938 builtin/log.c:185 builtin/log.c:187
-#: builtin/ls-files.c:651 builtin/name-rev.c:585 builtin/name-rev.c:587
-#: builtin/show-ref.c:179
-msgid "pattern"
-msgstr "mẫu"
+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/clean.c:933
-msgid "add <pattern> to ignore rules"
-msgstr "thêm <mẫu> vào trong qui tắc bỏ qua"
+#, 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/clean.c:934
-msgid "remove ignored files, too"
-msgstr "đồng thời gỡ bỏ cả các tập tin bị bỏ qua"
+msgid "The pre-rebase hook refused to rebase."
+msgstr "Móc (hook) pre-rebase từ chối rebase."
 
-#: builtin/clean.c:936
-msgid "remove only ignored files"
-msgstr "chỉ gỡ bỏ những tập tin bị bỏ qua"
+#, c-format
+msgid "Changes to %s:\n"
+msgstr "Thay đổi thành %s:\n"
 
-#: builtin/clean.c:951
-msgid ""
-"clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
-"clean"
-msgstr ""
-"clean.requireForce được đặt thành true và không đưa ra tùy chọn -i, -n mà "
-"cũng không -f; từ chối lệnh dọn dẹp (clean)"
+#, c-format
+msgid "Changes from %s to %s:\n"
+msgstr "Thay đổi từ %s thành %s:\n"
 
-#: builtin/clean.c:954
-msgid ""
-"clean.requireForce defaults to true and neither -i, -n, nor -f given; "
-"refusing to clean"
+#, c-format
+msgid "First, rewinding head to replay your work on top of it...\n"
 msgstr ""
-"clean.requireForce mặc định được đặt là true và không đưa ra tùy chọn -i, -n "
-"mà cũng không -f; từ chối lệnh dọn dẹp (clean)"
-
-#: builtin/clean.c:966
-msgid "-x and -X cannot be used together"
-msgstr "-x và -X không thể dùng cùng nhau"
-
-#: builtin/clone.c:47
-msgid "git clone [<options>] [--] <repo> [<dir>]"
-msgstr "git clone [<các tùy chọn>] [--] <kho> [<t.mục>]"
+"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/clone.c:100
-msgid "don't clone shallow repository"
-msgstr "đừng nhân bản từ kho nông"
+msgid "Could not detach HEAD"
+msgstr "Không thể tách rời HEAD"
 
-#: builtin/clone.c:102
-msgid "don't create a checkout"
-msgstr "không tạo một checkout"
+#, c-format
+msgid "Fast-forwarded %s to %s.\n"
+msgstr "Chuyển-tiếp-nhanh %s đến %s.\n"
 
-#: builtin/clone.c:103 builtin/clone.c:105 builtin/init-db.c:542
-msgid "create a bare repository"
-msgstr "tạo kho thuần"
+msgid "git receive-pack <git-dir>"
+msgstr "git receive-pack <thư-mục-git>"
 
-#: builtin/clone.c:107
-msgid "create a mirror repository (implies bare)"
-msgstr "tạo kho bản sao (ý là kho thuần)"
+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"
+"with what you pushed, and will require 'git reset --hard' to match\n"
+"the work tree to HEAD.\n"
+"\n"
+"You can set the 'receive.denyCurrentBranch' configuration variable\n"
+"to 'ignore' or 'warn' in the remote repository to allow pushing into\n"
+"its current branch; however, this is not recommended unless you\n"
+"arranged to update its work tree to match what you pushed in some\n"
+"other way.\n"
+"\n"
+"To squelch this message and still keep the default behaviour, set\n"
+"'receive.denyCurrentBranch' configuration variable to 'refuse'."
+msgstr ""
+"Theo mặc định, việc cập nhật nhánh hiện tại trong một kho không-thuần\n"
+"bị từ chối, bởi vì nó sẽ làm cho chỉ mục và cây làm việc mâu thuẫn với\n"
+"cái mà bạn đẩy lên, và sẽ yêu cầu lệnh “git reset --hard” để mà làm\n"
+"cho cây làm việc khớp với HEAD.\n"
+"\n"
+"Bạn có thể đặt biến cấu hình “receive.denyCurrentBranch” thành\n"
+"“ignore” hay “warn” trong kho máy chủ để cho phép đẩy lên nhánh\n"
+"hiện tại của nó; tuy nhiên, không nên làm như thế trừ phi bạn\n"
+"sắp đặt để cập nhật cây làm việc của nó tương ứng với cái mà bạn đẩy\n"
+"lên theo cách nào đó.\n"
+"\n"
+"Để 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/clone.c:109
-msgid "to clone from a local repository"
-msgstr "để nhân bản từ kho nội bộ"
+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"
+"\n"
+"You can set 'receive.denyDeleteCurrent' configuration variable to\n"
+"'warn' or 'ignore' in the remote repository to allow deleting the\n"
+"current branch, with or without a warning message.\n"
+"\n"
+"To squelch this message, you can set it to 'refuse'."
+msgstr ""
+"Theo mặc định, việc cập xóa nhánh hiện tại bị từ chối, bởi vì\n"
+"lệnh “git clone” tiếp theo sẽ không có tác dụng trong việc lấy\n"
+"ra bất kỳ tập tin nào, dẫn đến hỗn loạn\n"
+"\n"
+"Bạn có thể đặt biến cấu hình “receive.denyDeleteCurrent” thành\n"
+"“warn” hay “ignore” trong kho máy chủ để cho phép đẩy xóa nhánh\n"
+"hiện tại của nó có hoặc không cảnh báo.\n"
+"\n"
+"Để chấm dứt lời nhắn này, bạn hãy đặt nó thành “refuse”."
 
-#: builtin/clone.c:111
-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"
+msgid "quiet"
+msgstr "im lặng"
 
-#: builtin/clone.c:113
-msgid "setup as shared repository"
-msgstr "cài đặt đây là kho chia sẻ"
+msgid "you must specify a directory"
+msgstr "bạn phải chỉ định thư mục"
 
-#: builtin/clone.c:115
-msgid "pathspec"
-msgstr "đặc-tả-đường-dẫn"
+msgid "git reflog [show] [<log-options>] [<ref>]"
+msgstr "git reflog [show] [<các tùy chọn>] [<tham chiếu>]"
 
-#: builtin/clone.c:115
-msgid "initialize submodules in the clone"
-msgstr "khởi tạo mô-đun-con trong bản sao"
+msgid ""
+"git reflog expire [--expire=<time>] [--expire-unreachable=<time>]\n"
+"                  [--rewrite] [--updateref] [--stale-fix]\n"
+"                  [--dry-run | -n] [--verbose] [--all [--single-worktree] | "
+"<refs>...]"
+msgstr ""
+"git reflog expire [--expire=<time>] [--expire-unreachable=<time>]\n"
+"                  [--rewrite] [--updateref] [--stale-fix]\n"
+"                  [--dry-run | -n] [--verbose] [--all [--single-worktree] | "
+"<refs>...]"
 
-#: builtin/clone.c:119
-msgid "number of submodules cloned in parallel"
-msgstr "số lượng mô-đun-con được nhân bản đồng thời"
+msgid ""
+"git reflog delete [--rewrite] [--updateref]\n"
+"                  [--dry-run | -n] [--verbose] <ref>@{<specifier>}..."
+msgstr ""
+"git reflog delete [--rewrite] [--updateref]\n"
+"                  [--dry-run | -n] [--verbose] <ref>@{<specifier>}..."
 
-#: builtin/clone.c:120 builtin/init-db.c:539
-msgid "template-directory"
-msgstr "thư-mục-mẫu"
+msgid "git reflog exists <ref>"
+msgstr "git reflog exists <tham_chiếu>"
 
-#: builtin/clone.c:121 builtin/init-db.c:540
-msgid "directory from which templates will be used"
-msgstr "thư mục mà tại đó các mẫu sẽ được dùng"
+#, c-format
+msgid "invalid timestamp '%s' given to '--%s'"
+msgstr "dấu vết thời gian không hợp lệ '%s' đưa cho '--%s'"
 
-#: builtin/clone.c:123 builtin/clone.c:125 builtin/submodule--helper.c:1885
-#: builtin/submodule--helper.c:2719 builtin/submodule--helper.c:3378
-msgid "reference repository"
-msgstr "kho tham chiếu"
+msgid "do not actually prune any entries"
+msgstr "thực tế không cắt ngắn bất kỳ mục tin nào"
 
-#: builtin/clone.c:127 builtin/submodule--helper.c:1887
-#: builtin/submodule--helper.c:2721
-msgid "use --reference only while cloning"
-msgstr "chỉ dùng --reference khi nhân bản"
+msgid ""
+"rewrite the old SHA1 with the new SHA1 of the entry that now precedes it"
+msgstr "ghi lại SHA1 cũ bằng một SHA1 mới của mục tin mà giờ đứng trước nó"
 
-#: builtin/clone.c:128 builtin/column.c:27 builtin/fmt-merge-msg.c:27
-#: builtin/init-db.c:550 builtin/merge-file.c:48 builtin/merge.c:290
-#: builtin/pack-objects.c:3967 builtin/repack.c:669
-#: builtin/submodule--helper.c:3380 t/helper/test-simple-ipc.c:595
-#: t/helper/test-simple-ipc.c:597
-msgid "name"
-msgstr "tên"
+msgid "update the reference to the value of the top reflog entry"
+msgstr "cập nhật tham chiếu đến giá trị của mục tin reflog trên cùng"
 
-#: builtin/clone.c:129
-msgid "use <name> instead of 'origin' to track upstream"
-msgstr "dùng <tên> thay cho “origin” để theo dõi thượng nguồn"
+msgid "print extra information on screen"
+msgstr "xuất thông tin thêm trên màn hình"
 
-#: builtin/clone.c:131
-msgid "checkout <branch> instead of the remote's HEAD"
-msgstr "lấy ra <nhánh> thay cho HEAD của máy chủ"
+msgid "timestamp"
+msgstr "dấu vết thời gian"
 
-#: builtin/clone.c:133
-msgid "path to git-upload-pack on the remote"
-msgstr "đường dẫn đến git-upload-pack trên máy chủ"
+msgid "prune entries older than the specified time"
+msgstr "cắt cụt các mục tin cũ hơn khoảng thời gian đã cho"
 
-#: builtin/clone.c:134 builtin/fetch.c:182 builtin/grep.c:877
-#: builtin/pull.c:212
-msgid "depth"
-msgstr "độ-sâu"
+msgid ""
+"prune entries older than <time> that are not reachable from the current tip "
+"of the branch"
+msgstr ""
+"cắt cụt các mục tin cũ hơn <thời gian> cái mà không thể tiếp cận được từ "
+"đỉnh hiện tại của nhánh"
 
-#: builtin/clone.c:135
-msgid "create a shallow clone of that depth"
-msgstr "tạo bản sao không đầy đủ cho mức sâu đã cho"
+msgid "prune any reflog entries that point to broken commits"
+msgstr "cắt ngắn bất kỳ mục tin reflog cái mà chỉ đến lần chuyển giao hỏng"
 
-#: builtin/clone.c:136 builtin/fetch.c:184 builtin/pack-objects.c:3956
-#: builtin/pull.c:215
-msgid "time"
-msgstr "thời-gian"
+msgid "process the reflogs of all references"
+msgstr "xử lý các reflogs cho mọi tham chiếu"
 
-#: builtin/clone.c:137
-msgid "create a shallow clone since a specific time"
-msgstr "tạo bản sao không đầy đủ từ thời điểm đã cho"
+msgid "limits processing to reflogs from the current worktree only"
+msgstr "giới hạn xử lý với reflogs chỉ từ thư mục làm việc hiện tại"
 
-#: builtin/clone.c:138 builtin/fetch.c:186 builtin/fetch.c:212
-#: builtin/pull.c:218 builtin/pull.c:243 builtin/rebase.c:1050
-msgid "revision"
-msgstr "điểm xét duyệt"
+#, c-format
+msgid "Marking reachable objects..."
+msgstr "Đánh dấu các đối tượng tiếp cận được…"
 
-#: builtin/clone.c:139 builtin/fetch.c:187 builtin/pull.c:219
-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ừ"
+#, c-format
+msgid "%s points nowhere!"
+msgstr "%s chẳng chỉ đến đâu cả!"
 
-#: builtin/clone.c:141 builtin/submodule--helper.c:1897
-#: builtin/submodule--helper.c:2735
-msgid "clone only one branch, HEAD or --branch"
-msgstr "chỉ nhân bản một nhánh, HEAD hoặc --branch"
+msgid "no reflog specified to delete"
+msgstr "chưa chỉ ra reflog để xóa"
 
-#: builtin/clone.c:143
-msgid "don't clone any tags, and make later fetches not to follow them"
+#, c-format
+msgid "invalid ref format: %s"
+msgstr "định dạng tham chiếu không hợp lệ: %s"
+
+msgid ""
+"git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
+"mirror=<fetch|push>] <name> <url>"
 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"
+"git remote add [-t <nhánh>] [-m <master>] [-f] [--tags|--no-tags] [--"
+"mirror=<fetch|push>] <tên> <url>"
 
-#: builtin/clone.c:145
-msgid "any cloned submodules will be shallow"
-msgstr "mọi mô-đun-con nhân bản sẽ là shallow (nông)"
+msgid "git remote rename [--[no-]progress] <old> <new>"
+msgstr "git remote rename [--[no-]progress] <tên-cũ> <tên-mới>"
 
-#: builtin/clone.c:146 builtin/init-db.c:548
-msgid "gitdir"
-msgstr "gitdir"
+msgid "git remote remove <name>"
+msgstr "git remote remove <tên>"
 
-#: builtin/clone.c:147 builtin/init-db.c:549
-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"
+msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
+msgstr "git remote set-head <tên> (-a | --auto | -d | --delete | <nhánh>)"
 
-#: builtin/clone.c:148
-msgid "key=value"
-msgstr "khóa=giá_trị"
+msgid "git remote [-v | --verbose] show [-n] <name>"
+msgstr "git remote [-v | --verbose] show [-n] <tên>"
 
-#: builtin/clone.c:149
-msgid "set config inside the new repository"
-msgstr "đặt cấu hình bên trong một kho chứa mới"
+msgid "git remote prune [-n | --dry-run] <name>"
+msgstr "git remote prune [-n | --dry-run] <tên>"
 
-#: builtin/clone.c:151 builtin/fetch.c:207 builtin/ls-remote.c:77
-#: builtin/pull.c:234 builtin/push.c:575 builtin/send-pack.c:200
-msgid "server-specific"
-msgstr "đặc-tả-máy-phục-vụ"
+msgid ""
+"git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)...]"
+msgstr ""
+"git remote [-v | --verbose] update [-p | --prune] [(<nhóm> | <máy-chủ>)…]"
 
-#: builtin/clone.c:151 builtin/fetch.c:207 builtin/ls-remote.c:77
-#: builtin/pull.c:235 builtin/push.c:575 builtin/send-pack.c:201
-msgid "option to transmit"
-msgstr "tùy chọn để chuyển giao"
+msgid "git remote set-branches [--add] <name> <branch>..."
+msgstr "git remote set-branches [--add] <tên> <nhánh>…"
 
-#: builtin/clone.c:152 builtin/fetch.c:208 builtin/pull.c:238
-#: builtin/push.c:576
-msgid "use IPv4 addresses only"
-msgstr "chỉ dùng địa chỉ IPv4"
+msgid "git remote get-url [--push] [--all] <name>"
+msgstr "git remote set-url [--push] [--all] <tên>"
 
-#: builtin/clone.c:154 builtin/fetch.c:210 builtin/pull.c:241
-#: builtin/push.c:578
-msgid "use IPv6 addresses only"
-msgstr "chỉ dùng địa chỉ IPv6"
+msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
+msgstr "git remote set-url [--push] <tên> <url-mới> [<url-cũ>]"
 
-#: builtin/clone.c:158
-msgid "apply partial clone filters to submodules"
-msgstr "áp dụng các bộ lọc nhân bản một phần cho mô-đun-con"
+msgid "git remote set-url --add <name> <newurl>"
+msgstr "git remote set-url --add <tên> <url-mới>"
 
-#: builtin/clone.c:160
-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"
+msgid "git remote set-url --delete <name> <url>"
+msgstr "git remote set-url --delete <tên> <url>"
 
-#: builtin/clone.c:162
-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"
+msgid "git remote add [<options>] <name> <url>"
+msgstr "git remote add [<các tùy chọn>] <tên> <url>"
 
-#: builtin/clone.c:237
-#, 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"
+msgid "git remote set-branches <name> <branch>..."
+msgstr "git remote set-branches <tên> <nhánh>…"
 
-#: builtin/clone.c:310
-#, 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"
+msgid "git remote set-branches --add <name> <branch>..."
+msgstr "git remote set-branches --add <tên> <nhánh>…"
 
-#: builtin/clone.c:328
-#, c-format
-msgid "failed to start iterator over '%s'"
-msgstr "gặp lỗi khi bắt đầu lặp qua “%s”"
+msgid "git remote show [<options>] <name>"
+msgstr "git remote show [<các tùy chọn>] <tên>"
 
-#: builtin/clone.c:359
-#, c-format
-msgid "failed to create link '%s'"
-msgstr "gặp lỗi khi tạo được liên kết mềm %s"
+msgid "git remote prune [<options>] <name>"
+msgstr "git remote prune [<các tùy chọn>] <tên>"
 
-#: builtin/clone.c:363
-#, c-format
-msgid "failed to copy file to '%s'"
-msgstr "gặp lỗi khi sao chép tập tin và “%s”"
+msgid "git remote update [<options>] [<group> | <remote>]..."
+msgstr "git remote update [<các tùy chọn>] [<nhóm> | <máy-chủ>]…"
 
-#: builtin/clone.c:368
 #, c-format
-msgid "failed to iterate over '%s'"
-msgstr "gặp lỗi khi lặp qua “%s”"
+msgid "Updating %s"
+msgstr "Đang cập nhật %s"
 
-#: builtin/clone.c:395
 #, c-format
-msgid "done.\n"
-msgstr "hoàn tất.\n"
+msgid "Could not fetch %s"
+msgstr "Không thể lấy“%s” về"
 
-#: builtin/clone.c:409
 msgid ""
-"Clone succeeded, but checkout failed.\n"
-"You can inspect what was checked out with 'git status'\n"
-"and retry with 'git restore --source=HEAD :/'\n"
+"--mirror is dangerous and deprecated; please\n"
+"\t use --mirror=fetch or --mirror=push instead"
 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"
+"--mirror nguy hiểm và không dùng nữa; xin hãy\n"
+"\t sử dụng tùy chọn --mirror=fetch hoặc --mirror=push để thay thế"
 
-#: builtin/clone.c:486
 #, 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)."
+msgid "unknown mirror argument: %s"
+msgstr "không hiểu tham số máy bản sao (mirror): %s"
 
-#: builtin/clone.c:603
-#, c-format
-msgid "unable to update %s"
-msgstr "không thể cập nhật %s"
+msgid "fetch the remote branches"
+msgstr "lấy về các nhánh từ máy chủ"
 
-#: builtin/clone.c:651
-msgid "failed to initialize sparse-checkout"
-msgstr "gặp lỗi khi khởi tạo sparse-checkout"
+msgid "import all tags and associated objects when fetching"
+msgstr "nhập vào tất cả các đối tượng thẻ và thành phần liên quan khi lấy về"
 
-#: builtin/clone.c:674
-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"
+msgid "or do not fetch any tag at all (--no-tags)"
+msgstr "hoặc không lấy về bất kỳ thẻ nào (--no-tags)"
 
-#: builtin/clone.c:709
-msgid "unable to checkout working tree"
-msgstr "không thể lấy ra (checkout) cây làm việc"
+msgid "branch(es) to track"
+msgstr "các nhánh để theo dõi"
 
-#: builtin/clone.c:793
-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"
+msgid "master branch"
+msgstr "nhánh master"
 
-#: builtin/clone.c:856
-msgid "cannot repack to clean up"
-msgstr "không thể đóng gói để dọn dẹp"
+msgid "set up remote as a mirror to push to or fetch from"
+msgstr "đặt máy chủ (remote) như là một máy bản sao để push hay fetch từ đó"
 
-#: builtin/clone.c:858
-msgid "cannot unlink temporary alternates file"
-msgstr "không thể bỏ liên kết tập tin thay thế tạm thời"
+msgid "specifying a master branch makes no sense with --mirror"
+msgstr "đang chỉ định một nhánh master không hợp lý với tùy chọn --mirror"
 
-#: builtin/clone.c:901
-msgid "Too many arguments."
-msgstr "Có quá nhiều đối số."
+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/clone.c:905 contrib/scalar/scalar.c:413
-msgid "You must specify a repository to clone."
-msgstr "Bạn phải chỉ định một kho để mà nhân bản (clone)."
+#, c-format
+msgid "remote %s already exists."
+msgstr "máy chủ %s đã tồn tại rồi."
 
-#: builtin/clone.c:918
 #, c-format
-msgid "options '%s' and '%s %s' cannot be used together"
-msgstr "tùy chọn '%s', và '%s %s' không thể dùng cùng nhau"
+msgid "Could not setup master '%s'"
+msgstr "Không thể cài đặt nhánh master “%s”"
 
-#: builtin/clone.c:935
 #, c-format
-msgid "repository '%s' does not exist"
-msgstr "kho chứa “%s” chưa tồn tại"
+msgid "more than one %s"
+msgstr "nhiều hơn một %s"
 
-#: builtin/clone.c:939 builtin/fetch.c:2176
 #, 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"
+msgid "unhandled branch.%s.rebase=%s; assuming 'true'"
+msgstr "nhánh chưa được quản lý.%s.rebase=%s; giả định là “true”"
 
-#: builtin/clone.c:949
 #, 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."
+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"
+
+msgid "(matching)"
+msgstr "(khớp)"
+
+msgid "(delete)"
+msgstr "(xóa)"
 
-#: builtin/clone.c:955
 #, c-format
-msgid "repository path '%s' already exists and is not an empty directory."
+msgid "could not set '%s'"
+msgstr "không thể đặt “%s”"
+
+#, c-format
+msgid "could not unset '%s'"
+msgstr "không thể thôi đặt “%s”"
+
+#, c-format
+msgid ""
+"The %s configuration remote.pushDefault in:\n"
+"\t%s:%d\n"
+"now names the non-existent remote '%s'"
 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."
+"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”"
 
-#: builtin/clone.c:969
 #, c-format
-msgid "working tree '%s' already exists."
-msgstr "cây làm việc “%s” đã sẵn tồn tại rồi."
+msgid "No such remote: '%s'"
+msgstr "Không có máy chủ nào như vậy: “%s”"
 
-#: builtin/clone.c:984 builtin/clone.c:1005 builtin/difftool.c:256
-#: builtin/log.c:2037 builtin/worktree.c:350 builtin/worktree.c:382
 #, 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”"
+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/clone.c:989
 #, 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”"
+msgid ""
+"Not updating non-default fetch refspec\n"
+"\t%s\n"
+"\tPlease update the configuration manually if necessary."
+msgstr ""
+"Không cập nhật “non-default fetch respec”\n"
+"\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."
+
+msgid "Renaming remote references"
+msgstr "Đổi tên các tham chiếu máy chủ"
 
-#: builtin/clone.c:1009
 #, c-format
-msgid "Cloning into bare repository '%s'...\n"
-msgstr "Đang nhân bản thành kho chứa bare “%s”…\n"
+msgid "deleting '%s' failed"
+msgstr "gặp lỗi khi xóa “%s”"
 
-#: builtin/clone.c:1011
 #, c-format
-msgid "Cloning into '%s'...\n"
-msgstr "Đang nhân bản thành “%s”…\n"
+msgid "creating '%s' failed"
+msgstr "gặp lỗi khi tạo “%s”"
 
-#: builtin/clone.c:1040
 msgid ""
-"clone --recursive is not compatible with both --reference and --reference-if-"
-"able"
-msgstr ""
-"nhân bản --recursive không tương thích với cả hai --reference và --reference-"
-"if-able"
+"Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
+"to delete it, use:"
+msgid_plural ""
+"Note: Some branches outside the refs/remotes/ hierarchy were not removed;\n"
+"to delete them, use:"
+msgstr[0] ""
+"Chú ý: Một số nhánh nằm ngoài hệ thống refs/remotes/ đã không được gỡ bỏ "
+"đi;\n"
+"để xóa đi, sử dụng:"
 
-#: builtin/clone.c:1116 builtin/remote.c:201 builtin/remote.c:721
 #, c-format
-msgid "'%s' is not a valid remote name"
-msgstr "“%s” không phải tên máy chủ hợp lệ"
+msgid "Could not remove config section '%s'"
+msgstr "Không thể gỡ bỏ phần cấu hình “%s”"
 
-#: builtin/clone.c:1157
-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ế."
+#, 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/clone.c:1159
-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ế."
+msgid " tracked"
+msgstr " được theo dõi"
 
-#: builtin/clone.c:1161
-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ế."
+msgid " stale (use 'git remote prune' to remove)"
+msgstr " cũ rích (dùng “git remote prune” để gỡ bỏ)"
 
-#: builtin/clone.c:1163
-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ế."
+msgid " ???"
+msgstr " ???"
 
-#: builtin/clone.c:1168
-msgid "source repository is shallow, ignoring --local"
-msgstr "kho nguồn là nông, nên bỏ qua --local"
+#, 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/clone.c:1173
-msgid "--local is ignored"
-msgstr "--local bị lờ đi"
+#, 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/clone.c:1185
-msgid "cannot clone from filtered bundle"
-msgstr "không thể nhân bản từ bundle được lọc ra"
+#, 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/clone.c:1265 builtin/clone.c:1324
-msgid "remote transport reported error"
-msgstr "vận chuyển máy mạng đã báo cáo lỗi"
+#, c-format
+msgid "rebases onto remote %s"
+msgstr "thực hiện rebase trên máy chủ %s"
 
-#: builtin/clone.c:1277 builtin/clone.c:1289
 #, 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"
+msgid " merges with remote %s"
+msgstr " hòa trộn với máy chủ %s"
 
-#: builtin/clone.c:1292
-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."
+#, c-format
+msgid "merges with remote %s"
+msgstr "hòa trộn với máy chủ %s"
 
-#: builtin/column.c:10
-msgid "git column [<options>]"
-msgstr "git column [<các tùy chọn>]"
+#, c-format
+msgid "%-*s    and with remote %s\n"
+msgstr "%-*s    và với máy chủ %s\n"
 
-#: builtin/column.c:27
-msgid "lookup config vars"
-msgstr "tìm kiếm biến cấu hình"
+msgid "create"
+msgstr "tạo"
 
-#: builtin/column.c:28 builtin/column.c:29
-msgid "layout to use"
-msgstr "bố cục để dùng"
+msgid "delete"
+msgstr "xóa"
 
-#: builtin/column.c:30
-msgid "maximum width"
-msgstr "độ rộng tối đa"
+msgid "up to date"
+msgstr "đã cập nhật"
 
-#: builtin/column.c:31
-msgid "padding space on left border"
-msgstr "chèn thêm khoảng trống vào bên trái"
+msgid "fast-forwardable"
+msgstr "có-thể-chuyển-tiếp-nhanh"
 
-#: builtin/column.c:32
-msgid "padding space on right border"
-msgstr "chèn thêm khoảng trắng vào bên phải"
+msgid "local out of date"
+msgstr "dữ liệu nội bộ đã cũ"
 
-#: builtin/column.c:33
-msgid "padding space between columns"
-msgstr "chèn thêm khoảng trắng giữa các cột"
+#, c-format
+msgid "    %-*s forces to %-*s (%s)"
+msgstr "    %-*s ép buộc thành %-*s (%s)"
 
-#: builtin/column.c:51
-msgid "--command must be the first argument"
-msgstr "--command phải là đối số đầu tiên"
+#, c-format
+msgid "    %-*s pushes to %-*s (%s)"
+msgstr "    %-*s đẩy lên thành %-*s (%s)"
 
-#: builtin/commit-graph.c:13
-msgid ""
-"git commit-graph verify [--object-dir <objdir>] [--shallow] [--[no-]progress]"
-msgstr ""
-"git commit-graph verify [--object-dir </thư/mục/đối/tượng>] [--shallow] [--"
-"[no-]progress]"
+#, c-format
+msgid "    %-*s forces to %s"
+msgstr "    %-*s ép buộc thành %s"
 
-#: builtin/commit-graph.c:16
-msgid ""
-"git commit-graph write [--object-dir <objdir>] [--append] [--"
-"split[=<strategy>]] [--reachable|--stdin-packs|--stdin-commits] [--changed-"
-"paths] [--[no-]max-new-filters <n>] [--[no-]progress] <split options>"
-msgstr ""
-"git commit-graph write [--object-dir </thư/mục/đối/tượng>] [--append][--"
-"split[=<chiến lược>]] [--reachable|--stdin-packs|--stdin-commits][--changed-"
-"paths] [--[no-]max-new-filters <n>] [--[no-]progress] <các tùy chọn chia "
-"tách>"
+#, c-format
+msgid "    %-*s pushes to %s"
+msgstr "    %-*s đẩy lên thành %s"
 
-#: builtin/commit-graph.c:51 builtin/fetch.c:196 builtin/log.c:1813
-msgid "dir"
-msgstr "tmục"
+msgid "do not query remotes"
+msgstr "không truy vấn các máy chủ"
 
-#: builtin/commit-graph.c:52
-msgid "the object directory to store the graph"
-msgstr "thư mục đối tượng để lưu đồ thị"
+#, c-format
+msgid "* remote %s"
+msgstr "* máy chủ %s"
 
-#: builtin/commit-graph.c:73
-msgid "if the commit-graph is split, only verify the tip file"
-msgstr ""
-"nếu đồ-thị-các-lần-chuyển-giao bị chia cắt, thì chỉ thẩm tra tập tin đỉnh"
+#, c-format
+msgid "  Fetch URL: %s"
+msgstr "  URL để lấy về: %s"
+
+msgid "(no URL)"
+msgstr "(không có URL)"
 
-#: builtin/commit-graph.c:100
+#. TRANSLATORS: the colon ':' should align
+#. with the one in " Fetch URL: %s"
+#. translation.
+#.
 #, c-format
-msgid "Could not open commit-graph '%s'"
-msgstr "Không thể mở đồ thị chuyển giao “%s”"
+msgid "  Push  URL: %s"
+msgstr "  URL để đẩy lên: %s"
 
-#: builtin/commit-graph.c:137
 #, c-format
-msgid "unrecognized --split argument, %s"
-msgstr "đối số --split không được thừa nhận, %s"
+msgid "  HEAD branch: %s"
+msgstr "  Nhánh HEAD: %s"
+
+msgid "(not queried)"
+msgstr "(không yêu cầu)"
+
+msgid "(unknown)"
+msgstr "(không hiểu)"
 
-#: builtin/commit-graph.c:150
 #, c-format
-msgid "unexpected non-hex object ID: %s"
-msgstr "nhận được ID đối tượng không phải dạng hex không cần: %s"
+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/commit-graph.c:155
 #, c-format
-msgid "invalid object: %s"
-msgstr "đối tượng không hợp lệ: %s"
+msgid "  Remote branch:%s"
+msgid_plural "  Remote branches:%s"
+msgstr[0] "  Những nhánh trên máy chủ:%s"
 
-#: builtin/commit-graph.c:205
-msgid "start walk at all refs"
-msgstr "bắt đầu di chuyển tại mọi tham chiếu"
+msgid " (status not queried)"
+msgstr " (trạng thái không được yêu cầu)"
 
-#: builtin/commit-graph.c:207
-msgid "scan pack-indexes listed by stdin for commits"
-msgstr ""
-"quét dó các mục lục gói được liệt kê bởi đầu vào tiêu chuẩn cho các lần "
-"chuyển giao"
+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/commit-graph.c:209
-msgid "start walk at commits listed by stdin"
-msgstr ""
-"bắt đầu di chuyển tại các lần chuyển giao được liệt kê bởi đầu vào tiêu chuẩn"
+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/commit-graph.c:211
-msgid "include all commits already in the commit-graph file"
-msgstr ""
-"bao gồm mọi lần chuyển giao đã sẵn có trongười tập tin đồ-thị-các-lần-chuyển-"
-"giao"
+#, 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/commit-graph.c:213
-msgid "enable computation for changed paths"
-msgstr "cho phép tính toán các đường dẫn đã bị thay đổi"
+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/commit-graph.c:215
-msgid "allow writing an incremental commit-graph file"
-msgstr "cho phép ghi một tập tin đồ họa các lần chuyển giao lớn lên"
+msgid "delete refs/remotes/<name>/HEAD"
+msgstr "xóa refs/remotes/<tên>/HEAD"
 
-#: builtin/commit-graph.c:219
-msgid "maximum number of commits in a non-base split commit-graph"
-msgstr ""
-"số lượng tối đa của các lần chuyển giao trong một đồ-thị-các-lần-chuyển-giao "
-"chia cắt không-cơ-sở"
+msgid "Cannot determine remote HEAD"
+msgstr "Không thể xác định được HEAD máy chủ"
 
-#: builtin/commit-graph.c:221
-msgid "maximum ratio between two levels of a split commit-graph"
-msgstr "tỷ lệ tối đa giữa hai mức của một đồ-thị-các-lần-chuyển-giao chia cắt"
+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/commit-graph.c:223
-msgid "only expire files older than a given date-time"
-msgstr "chỉ làm hết hạn các tập tin khi nó cũ hơn khoảng <thời gian> đưa ra"
+#, c-format
+msgid "Could not delete %s"
+msgstr "Không thể xóa bỏ %s"
 
-#: builtin/commit-graph.c:225
-msgid "maximum number of changed-path Bloom filters to compute"
-msgstr "số tối đa các bộ lọc các đường dẫn thay đổi Bloom để tính toán"
+#, c-format
+msgid "Not a valid ref: %s"
+msgstr "Không phải là tham chiếu hợp lệ: %s"
 
-#: builtin/commit-graph.c:251
-msgid "use at most one of --reachable, --stdin-commits, or --stdin-packs"
-msgstr ""
-"không thể sử dụng hơn một --reachable, --stdin-commits, hay --stdin-packs"
+#, c-format
+msgid "Could not setup %s"
+msgstr "Không thể cài đặt %s"
 
-#: builtin/commit-graph.c:282
-msgid "Collecting commits from input"
-msgstr "Sưu tập các lần chuyển giao từ đầu vào"
+#, c-format
+msgid " %s will become dangling!"
+msgstr " %s sẽ trở thành không đầu (không được quản lý)!"
 
-#: builtin/commit-graph.c:328 builtin/multi-pack-index.c:259
 #, c-format
-msgid "unrecognized subcommand: %s"
-msgstr "không hiểu câu lệnh con: %s"
+msgid " %s has become dangling!"
+msgstr " %s đã trở thành không đầu (không được quản lý)!"
 
-#: builtin/commit-tree.c:18
-msgid ""
-"git commit-tree [(-p <parent>)...] [-S[<keyid>]] [(-m <message>)...] [(-F "
-"<file>)...] <tree>"
-msgstr ""
-"git commit-tree [(-p <cha>)…] [-S[<keyid>]] [(-m <ghi chú>)…] [(-F <tập tin>)"
-"…] <cây>"
+#, c-format
+msgid "Pruning %s"
+msgstr "Đang xén bớt %s"
 
-#: builtin/commit-tree.c:31
 #, c-format
-msgid "duplicate parent %s ignored"
-msgstr "cha mẹ bị trùng lặp %s đã bị bỏ qua"
+msgid "URL: %s"
+msgstr "URL: %s"
 
-#: builtin/commit-tree.c:56 builtin/commit-tree.c:134 builtin/log.c:590
 #, c-format
-msgid "not a valid object name %s"
-msgstr "không phải là tên đối tượng hợp lệ “%s”"
+msgid " * [would prune] %s"
+msgstr " * [nên xén bớt] %s"
 
-#: builtin/commit-tree.c:94
 #, c-format
-msgid "git commit-tree: failed to read '%s'"
-msgstr "git commit-tree: gặp lỗi khi đọc “%s”"
+msgid " * [pruned] %s"
+msgstr " * [đã bị xén] %s"
+
+msgid "prune remotes after fetching"
+msgstr "cắt máy chủ sau khi lấy về"
 
-#: builtin/commit-tree.c:96
 #, c-format
-msgid "git commit-tree: failed to close '%s'"
-msgstr "git commit-tree: gặp lỗi khi đóng “%s”"
+msgid "No such remote '%s'"
+msgstr "Không có máy chủ nào có tên “%s”"
 
-#: builtin/commit-tree.c:109
-msgid "parent"
-msgstr "cha-mẹ"
+msgid "add branch"
+msgstr "thêm nhánh"
 
-#: builtin/commit-tree.c:110
-msgid "id of a parent commit object"
-msgstr "mã số của đối tượng chuyển giao cha mẹ"
+msgid "no remote specified"
+msgstr "chưa chỉ ra máy chủ nào"
 
-#: builtin/commit-tree.c:112 builtin/commit.c:1626 builtin/merge.c:284
-#: builtin/notes.c:407 builtin/notes.c:573 builtin/stash.c:1666
-#: builtin/tag.c:455
-msgid "message"
-msgstr "chú thích"
+msgid "query push URLs rather than fetch URLs"
+msgstr "truy vấn đẩy URL thay vì lấy"
 
-#: builtin/commit-tree.c:113 builtin/commit.c:1626
-msgid "commit message"
-msgstr "chú thích của lần chuyển giao"
+msgid "return all URLs"
+msgstr "trả về mọi URL"
 
-#: builtin/commit-tree.c:116
-msgid "read commit log message from file"
-msgstr "đọc chú thích nhật ký lần chuyển giao từ tập tin"
+#, 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/commit-tree.c:119 builtin/commit.c:1643 builtin/merge.c:303
-#: builtin/pull.c:180 builtin/revert.c:118
-msgid "GPG sign commit"
-msgstr "Ký lần chuyển giao dùng GPG"
+msgid "manipulate push URLs"
+msgstr "đẩy các “URL” bằng tay"
 
-#: builtin/commit-tree.c:131
-msgid "must give exactly one tree"
-msgstr "phải đưa ra chính xác một cây"
+msgid "add URL"
+msgstr "thêm URL"
 
-#: builtin/commit-tree.c:138
-msgid "git commit-tree: failed to read"
-msgstr "git commit-tree: gặp lỗi khi đọc"
+msgid "delete URLs"
+msgstr "xóa URLs"
 
-#: builtin/commit.c:43
-msgid "git commit [<options>] [--] <pathspec>..."
-msgstr "git commit [<các tùy chọn>] [--] <pathspec>…"
+msgid "--add --delete doesn't make sense"
+msgstr "--add --delete không hợp lý"
 
-#: builtin/commit.c:48
-msgid "git status [<options>] [--] <pathspec>..."
-msgstr "git status [<các tùy chọn>] [--] <pathspec>…"
+#, c-format
+msgid "Invalid old URL pattern: %s"
+msgstr "Kiểu mẫu URL cũ không hợp lệ: %s"
 
-#: builtin/commit.c:53
-msgid ""
-"You asked to amend the most recent commit, but doing so would make\n"
-"it empty. You can repeat your command with --allow-empty, or you can\n"
-"remove the commit entirely with \"git reset HEAD^\".\n"
-msgstr ""
-"Bạn đã yêu cầu amend (“tu bổ”) phần lớn các lần chuyển giao gần đây, nhưng "
-"làm như thế\n"
-"có thể làm cho nó trở nên trống rỗng. Bạn có thể lặp lại lệnh của mình bằng "
-"--allow-empty,\n"
-"hoặc là bạn gỡ bỏ các lần chuyển giao một cách hoàn toàn bằng lệnh:\n"
-"\"git reset HEAD^\".\n"
+#, c-format
+msgid "No such URL found: %s"
+msgstr "Không tìm thấy URL như vậy: %s"
 
-#: builtin/commit.c:58
-msgid ""
-"The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
-"If you wish to commit it anyway, use:\n"
-"\n"
-"    git commit --allow-empty\n"
-"\n"
-msgstr ""
-"Lần cherry-pick trước hiện nay trống rỗng, có lẽ là bởi vì sự phân giải xung "
-"đột.\n"
-"Nếu bạn vẫn muốn chuyển giao nó cho dù thế nào đi nữa, hãy dùng:\n"
-"\n"
-"    git commit --allow-empty\n"
-"\n"
+msgid "Will not delete all non-push URLs"
+msgstr "Sẽ không xóa những địa chỉ URL không-push"
 
-#: builtin/commit.c:65
-msgid "Otherwise, please use 'git rebase --skip'\n"
-msgstr "Nếu không được thì dùng lệnh \"git rebase --skip\"\n"
+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/commit.c:68
-msgid "Otherwise, please use 'git cherry-pick --skip'\n"
-msgstr "Nếu không được thì dùng lệnh \"git cherry-pick --skip\"\n"
+msgid "git repack [<options>]"
+msgstr "git repack [<các tùy chọn>]"
 
-#: builtin/commit.c:71
 msgid ""
-"and then use:\n"
-"\n"
-"    git cherry-pick --continue\n"
-"\n"
-"to resume cherry-picking the remaining commits.\n"
-"If you wish to skip this commit, use:\n"
-"\n"
-"    git cherry-pick --skip\n"
-"\n"
+"Incremental repacks are incompatible with bitmap indexes.  Use\n"
+"--no-write-bitmap-index or disable the pack.writeBitmaps configuration."
 msgstr ""
-"và sau đó dùng:\n"
-"\n"
-"    git cherry-pick --continue\n"
-"\n"
-"để lại tiếp tục cherry-picking các lần chuyển giao còn lại.\n"
-"Nếu bạn muốn bỏ qua lần chuyển giao này thì dùng:\n"
-"\n"
-"    git cherry-pick --skip\n"
-"\n"
-
-#: builtin/commit.c:326
-msgid "failed to unpack HEAD tree object"
-msgstr "gặp lỗi khi tháo dỡ HEAD đối tượng cây"
-
-#: builtin/commit.c:376
-msgid "No paths with --include/--only does not make sense."
-msgstr "Không đường dẫn với các tùy chọn --include/--only không hợp lý."
-
-#: builtin/commit.c:388
-msgid "unable to create temporary index"
-msgstr "không thể tạo bảng mục lục tạm thời"
-
-#: builtin/commit.c:397
-msgid "interactive add failed"
-msgstr "gặp lỗi khi thêm bằng cách tương"
-
-#: builtin/commit.c:412
-msgid "unable to update temporary index"
-msgstr "không thể cập nhật bảng mục lục tạm thời"
+"Gia tăng các repack là không tương thích với chỉ mục bitmap. Dùng\n"
+"--no-write-bitmap-index hay tắt cấu hình pack.writeBitmaps."
 
-#: builtin/commit.c:414
-msgid "Failed to update main cache tree"
-msgstr "Gặp lỗi khi cập nhật cây bộ nhớ đệm"
-
-#: builtin/commit.c:439 builtin/commit.c:462 builtin/commit.c:510
-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 (new_index)"
-
-#: builtin/commit.c:491
-msgid "cannot do a partial commit during a merge."
+msgid "could not start pack-objects to repack promisor objects"
 msgstr ""
-"không thể thực hiện việc chuyển giao cục bộ trong khi đang được hòa trộn."
+"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/commit.c:493
-msgid "cannot do a partial commit during a cherry-pick."
+msgid "repack: Expecting full hex object ID lines only from pack-objects."
 msgstr ""
-"không thể thực hiện việc chuyển giao bộ phận trong khi đang cherry-pick."
+"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/commit.c:495
-msgid "cannot do a partial commit during a rebase."
-msgstr ""
-"không thể thực hiện việc chuyển giao cục bộ trong khi đang thực hiện cải tổ."
+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/commit.c:503
-msgid "cannot read the index"
-msgstr "không đọc được bảng mục lục"
+#, c-format
+msgid "cannot open index for %s"
+msgstr "không thể mở mục lục cho “%s”"
 
-#: builtin/commit.c:522
-msgid "unable to write temporary index file"
-msgstr "không thể ghi tập tin lưu bảng mục lục tạm thời"
+#, c-format
+msgid "pack %s too large to consider in geometric progression"
+msgstr "gói %s là quá lớn để được xem là trong tiến trình hình học"
 
-#: builtin/commit.c:620
 #, c-format
-msgid "commit '%s' lacks author header"
-msgstr "lần chuyển giao “%s” thiếu phần tác giả ở đầu"
+msgid "pack %s too large to roll up"
+msgstr "gói %s là quá lớn để được cuộn lại"
 
-#: builtin/commit.c:622
 #, c-format
-msgid "commit '%s' has malformed author line"
-msgstr "lần chuyển giao “%s” có phần tác giả ở đầu dị dạng"
+msgid "could not open tempfile %s for writing"
+msgstr "không thể mở tập tin tạm %s để ghi"
 
-#: builtin/commit.c:641
-msgid "malformed --author parameter"
-msgstr "đối số cho --author bị dị hình"
+msgid "could not close refs snapshot tempfile"
+msgstr "không thể đóng tập tin tạm thời chụp nhanh các tham chiếu"
 
-#: builtin/commit.c:694
-msgid ""
-"unable to select a comment character that is not used\n"
-"in the current commit message"
+msgid "pack everything in a single pack"
+msgstr "đóng gói mọi thứ trong một gói đơn"
+
+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"
+
+msgid "same as -a, pack unreachable cruft objects separately"
 msgstr ""
-"không thể chọn một ký tự ghi chú cái mà không được dùng\n"
-"trong phần ghi chú hiện tại"
+"giống với -a, đóng gói các đối tượng cruft không tiếp cận được riêng ra"
 
-#: builtin/commit.c:750 builtin/commit.c:784 builtin/commit.c:1170
-#, c-format
-msgid "could not lookup commit %s"
-msgstr "không thể tìm kiếm commit (lần chuyển giao) %s"
+msgid "approxidate"
+msgstr "ngày ước tính"
 
-#: builtin/commit.c:762 builtin/shortlog.c:417
-#, 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"
+msgid "with -C, expire objects older than this"
+msgstr "với -C, các đối tượng hết hạn cũ hơn khoảng này"
 
-#: builtin/commit.c:764
-msgid "could not read log from standard input"
-msgstr "không thể đọc nhật ký từ đầu vào tiêu chuẩn"
+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/commit.c:768
-#, c-format
-msgid "could not read log file '%s'"
-msgstr "không đọc được tệp nhật ký “%s”"
+msgid "pass --no-reuse-delta to git-pack-objects"
+msgstr "chuyển --no-reuse-delta cho git-pack-objects"
 
-#: builtin/commit.c:805
-#, c-format
-msgid "options '%s' and '%s:%s' cannot be used together"
-msgstr "tùy chọn '%s', và '%s:%s' không thể dùng cùng nhau"
+msgid "pass --no-reuse-object to git-pack-objects"
+msgstr "chuyển --no-reuse-object cho git-pack-objects"
 
-#: builtin/commit.c:817 builtin/commit.c:833
-msgid "could not read SQUASH_MSG"
-msgstr "không thể đọc SQUASH_MSG"
+msgid "do not run git-update-server-info"
+msgstr "không chạy git-update-server-info"
 
-#: builtin/commit.c:824
-msgid "could not read MERGE_MSG"
-msgstr "không thể đọc MERGE_MSG"
+msgid "pass --local to git-pack-objects"
+msgstr "chuyển --local cho git-pack-objects"
 
-#: builtin/commit.c:884
-msgid "could not write commit template"
-msgstr "không thể ghi mẫu chuyển giao"
+msgid "write bitmap index"
+msgstr "ghi mục lục ánh xạ"
 
-#: builtin/commit.c:897
-#, c-format
-msgid ""
-"Please enter the commit message for your changes. Lines starting\n"
-"with '%c' will be ignored.\n"
-msgstr ""
-"Hãy nhập vào các thông tin để giải thích các thay đổi của bạn. Những\n"
-"dòng được bắt đầu bằng “%c” sẽ được bỏ qua.\n"
+msgid "pass --delta-islands to git-pack-objects"
+msgstr "chuyển --delta-islands cho git-pack-objects"
 
-#: builtin/commit.c:899
-#, c-format
-msgid ""
-"Please enter the commit message for your changes. Lines starting\n"
-"with '%c' will be ignored, and an empty message aborts the commit.\n"
-msgstr ""
-"Hãy nhập vào các thông tin để giải thích các thay đổi của bạn. Những dòng "
-"được\n"
-"bắt đầu bằng “%c” sẽ được bỏ qua, nếu phần chú thích rỗng sẽ hủy bỏ lần "
-"chuyển giao.\n"
+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/commit.c:903
-#, c-format
-msgid ""
-"Please enter the commit message for your changes. Lines starting\n"
-"with '%c' will be kept; you may remove them yourself if you want to.\n"
-msgstr ""
-"Hãy nhập vào các thông tin để giải thích các thay đổi của bạn. Những dòng "
-"được\n"
-"bắt đầu bằng “%c” sẽ được bỏ qua; bạn có thể xóa chúng đi nếu muốn thế.\n"
+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/commit.c:907
-#, c-format
-msgid ""
-"Please enter the commit message for your changes. Lines starting\n"
-"with '%c' will be kept; you may remove them yourself if you want to.\n"
-"An empty message aborts the commit.\n"
-msgstr ""
-"Hãy nhập vào các thông tin để giải thích các thay đổi của bạn. Những dòng "
-"được\n"
-"bắt đầu bằng “%c” sẽ được bỏ qua; bạn có thể xóa chúng đi nếu muốn thế.\n"
-"Phần chú thích này nếu trống rỗng sẽ hủy bỏ lần chuyển giao.\n"
+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/commit.c:919
-msgid ""
-"\n"
-"It looks like you may be committing a merge.\n"
-"If this is not correct, please run\n"
-"\tgit update-ref -d MERGE_HEAD\n"
-"and try again.\n"
-msgstr ""
-"\n"
-"Nó trông giống với việc bạn đang chuyển giao một lần hòa trộn.\n"
-"Nếu không phải vậy, xin hãy chạy\n"
-"\tgit update-ref -d MERGE_HEAD\n"
-"và thử lại.\n"
+msgid "bytes"
+msgstr "byte"
 
-#: builtin/commit.c:924
-msgid ""
-"\n"
-"It looks like you may be committing a cherry-pick.\n"
-"If this is not correct, please run\n"
-"\tgit update-ref -d CHERRY_PICK_HEAD\n"
-"and try again.\n"
-msgstr ""
-"\n"
-"Nó trông giống với việc bạn đang chuyển giao một lần cherry-pick.\n"
-"Nếu không phải vậy, xin hãy chạy\n"
-"\tgit update-ref -d CHERRY_PICK_HEAD\n"
-"và thử lại.\n"
+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/commit.c:951
-#, c-format
-msgid "%sAuthor:    %.*s <%.*s>"
-msgstr "%sTác giả:           %.*s <%.*s>"
+msgid "limits the maximum delta depth"
+msgstr "giới hạn độ sâu tối đa của “delta”"
 
-#: builtin/commit.c:959
-#, c-format
-msgid "%sDate:      %s"
-msgstr "%sNgày tháng:        %s"
+msgid "limits the maximum number of threads"
+msgstr "giới hạn số lượng tối đa tuyến trình"
 
-#: builtin/commit.c:966
-#, c-format
-msgid "%sCommitter: %.*s <%.*s>"
-msgstr "%sNgười chuyển giao: %.*s <%.*s>"
+msgid "maximum size of each packfile"
+msgstr "kích thước tối đa cho từng tập tin gói"
 
-#: builtin/commit.c:984
-msgid "Cannot read index"
-msgstr "Không đọc được bảng mục lục"
+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/commit.c:1029
-msgid "unable to pass trailers to --trailers"
-msgstr "không thể chuyển phần đuôi cho “--trailers”"
+msgid "do not repack this pack"
+msgstr "đừng đóng gói lại gói này"
 
-#: builtin/commit.c:1069
-msgid "Error building trees"
-msgstr "Gặp lỗi khi xây dựng cây"
+msgid "find a geometric progression with factor <N>"
+msgstr "tìm một tiến trình hình học với hệ số <N>"
 
-#: builtin/commit.c:1083 builtin/tag.c:317
-#, c-format
-msgid "Please supply the message using either -m or -F option.\n"
-msgstr "Xin hãy cung cấp lời chú giải hoặc là dùng tùy chọn -m hoặc là -F.\n"
+msgid "write a multi-pack index of the resulting packs"
+msgstr "ghi mục lục “multi-pack” của các gói kết quả"
+
+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"
+
+msgid "Nothing new to pack."
+msgstr "Không có gì mới để mà đóng gói."
 
-#: builtin/commit.c:1128
 #, c-format
-msgid "--author '%s' is not 'Name <email>' and matches no existing author"
-msgstr ""
-"--author “%s” không phải là “Họ và tên <thư điện tửl>” và không khớp bất kỳ "
-"tác giả nào sẵn có"
+msgid "pack prefix %s does not begin with objdir %s"
+msgstr "tiền tố gói “%s” không được bắt đầu với objdir “.%s”"
 
-#: builtin/commit.c:1142
 #, c-format
-msgid "Invalid ignored mode '%s'"
-msgstr "Chế độ bỏ qua không hợp lệ “%s”"
+msgid "missing required file: %s"
+msgstr "thiếu tập tin cần thiết: %s"
 
-#: builtin/commit.c:1160 builtin/commit.c:1450
 #, c-format
-msgid "Invalid untracked files mode '%s'"
-msgstr "Chế độ cho các tập tin chưa được theo dõi không hợp lệ “%s”"
+msgid "could not unlink: %s"
+msgstr "không thể bỏ liên kết: %s"
 
-#: builtin/commit.c:1231
-msgid "You are in the middle of a merge -- cannot reword."
-msgstr ""
-"Bạn đang ở giữa của quá trình hòa trộn -- không thể thực hiện việc “reword”."
+msgid "git replace [-f] <object> <replacement>"
+msgstr "git replace [-f] <đối-tượng> <thay-thế>"
 
-#: builtin/commit.c:1233
-msgid "You are in the middle of a cherry-pick -- cannot reword."
-msgstr ""
-"Bạn đang ở giữa của quá trình cherry-pick -- không thể thực hiện việc "
-"“reword”."
+msgid "git replace [-f] --edit <object>"
+msgstr "git replace [-f] --edit <đối tượng>"
+
+msgid "git replace [-f] --graft <commit> [<parent>...]"
+msgstr "git replace [-f] --graft <lần_chuyển_giao> [<cha_mẹ>…]"
+
+msgid "git replace -d <object>..."
+msgstr "git replace -d <đối tượng>…"
+
+msgid "git replace [--format=<format>] [-l [<pattern>]]"
+msgstr "git replace [--format=<định_dạng>] [-l [<mẫu>]]"
 
-#: builtin/commit.c:1236
 #, c-format
-msgid "reword option of '%s' and path '%s' cannot be used together"
+msgid ""
+"invalid replace format '%s'\n"
+"valid formats are 'short', 'medium' and 'long'"
 msgstr ""
-"không thể tổ hợp tùy chọn \"reword\" của '%s' với đường dẫn '%s' cùng nhau"
+"định dạng thay thế không hợp lệ “%s”\n"
+"định dạng hợp lệ là “short”, “medium” và “long”"
 
-#: builtin/commit.c:1238
 #, c-format
-msgid "reword option of '%s' and '%s' cannot be used together"
-msgstr "không thể tổ hợp tùy chọn \"reword\" của '%s' với '%s' cùng nhau"
-
-#: builtin/commit.c:1263
-msgid "You have nothing to amend."
-msgstr "Không có gì để mà “tu bổ” cả."
+msgid "replace ref '%s' not found"
+msgstr "không tìm thấy tham chiếu thay thế “%s”"
 
-#: builtin/commit.c:1266
-msgid "You are in the middle of a merge -- cannot amend."
-msgstr ""
-"Bạn đang ở giữa của quá trình hòa trộn -- không thể thực hiện việc “tu bổ”."
+#, c-format
+msgid "Deleted replace ref '%s'"
+msgstr "Đã xóa tham chiếu thay thế “%s”"
 
-#: builtin/commit.c:1268
-msgid "You are in the middle of a cherry-pick -- cannot amend."
-msgstr ""
-"Bạn đang ở giữa của quá trình cherry-pick -- không thể thực hiện việc “tu "
-"bổ”."
+#, c-format
+msgid "'%s' is not a valid ref name"
+msgstr "“%s” không phải tên tham chiếu hợp lệ"
 
-#: builtin/commit.c:1270
-msgid "You are in the middle of a rebase -- cannot amend."
-msgstr ""
-"Bạn đang ở giữa của quá trình cải tổ -- nên không thể thực hiện việc “tu bổ”."
+#, c-format
+msgid "replace ref '%s' already exists"
+msgstr "tham chiếu thay thế “%s” đã tồn tại rồi"
 
-#: builtin/commit.c:1290
-msgid "--reset-author can be used only with -C, -c or --amend."
+#, c-format
+msgid ""
+"Objects must be of the same type.\n"
+"'%s' points to a replaced object of type '%s'\n"
+"while '%s' points to a replacement object of type '%s'."
 msgstr ""
-"--reset-author chỉ có thể được sử dụng với tùy chọn -C, -c hay --amend."
+"Các đối tượng phải cùng kiểu.\n"
+"“%s” chỉ đến đối tượng thay thế của kiểu “%s”\n"
+"trong khi “%s” chỉ đến đối tượng tham chiếu của kiểu “%s”."
 
-#: builtin/commit.c:1337
 #, c-format
-msgid "unknown option: --fixup=%s:%s"
-msgstr "không hiểu tùy chọn: --fixup=%s:%s"
+msgid "unable to open %s for writing"
+msgstr "không thể mở “%s” để ghi"
+
+msgid "cat-file reported failure"
+msgstr "cat-file đã báo cáo gặp lỗi nghiêm trọng"
 
-#: builtin/commit.c:1354
 #, c-format
-msgid "paths '%s ...' with -a does not make sense"
-msgstr "các đường dẫn “%s …” với tùy chọn -a không hợp lý"
+msgid "unable to open %s for reading"
+msgstr "không thể mở “%s” để đọc"
 
-#: builtin/commit.c:1485 builtin/commit.c:1654
-msgid "show status concisely"
-msgstr "hiển thị trạng thái ở dạng súc tích"
+msgid "unable to spawn mktree"
+msgstr "không thể sinh tiến trình con mktree"
 
-#: builtin/commit.c:1487 builtin/commit.c:1656
-msgid "show branch information"
-msgstr "hiển thị thông tin nhánh"
+msgid "unable to read from mktree"
+msgstr "không thể đọc từ mktree"
 
-#: builtin/commit.c:1489
-msgid "show stash information"
-msgstr "hiển thị thông tin về tạm cất"
+msgid "mktree reported failure"
+msgstr "mktree đã báo cáo gặp lỗi nghiêm trọng"
 
-#: builtin/commit.c:1491 builtin/commit.c:1658
-msgid "compute full ahead/behind values"
-msgstr "tính đầy đủ giá trị trước/sau"
+msgid "mktree did not return an object name"
+msgstr "mktree đã không trả về một tên đối tượng"
 
-#: builtin/commit.c:1493
-msgid "version"
-msgstr "phiên bản"
+#, c-format
+msgid "unable to fstat %s"
+msgstr "không thể fstat %s"
 
-#: builtin/commit.c:1493 builtin/commit.c:1660 builtin/push.c:551
-#: builtin/worktree.c:765
-msgid "machine-readable output"
-msgstr "kết xuất dạng máy-có-thể-đọc"
+msgid "unable to write object to database"
+msgstr "không thể ghi đối tượng vào cơ sở dữ liệu"
 
-#: builtin/commit.c:1496 builtin/commit.c:1662
-msgid "show status in long format (default)"
-msgstr "hiển thị trạng thái ở định dạng dài (mặc định)"
+#, c-format
+msgid "unable to get object type for %s"
+msgstr "không thể lấy kiểu đối tượng cho %s"
 
-#: builtin/commit.c:1499 builtin/commit.c:1665
-msgid "terminate entries with NUL"
-msgstr "chấm dứt các mục bằng NUL"
+msgid "editing object file failed"
+msgstr "việc sửa tập tin đối tượng gặp lỗi"
 
-#: builtin/commit.c:1501 builtin/commit.c:1505 builtin/commit.c:1668
-#: builtin/fast-export.c:1172 builtin/fast-export.c:1175
-#: builtin/fast-export.c:1178 builtin/rebase.c:1139 parse-options.h:368
-msgid "mode"
-msgstr "chế độ"
+#, c-format
+msgid "new object is the same as the old one: '%s'"
+msgstr "đối tượng mới là giống với cái cũ: “%s”"
 
-#: builtin/commit.c:1502 builtin/commit.c:1668
-msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
-msgstr ""
-"hiển thị các tập tin chưa được theo dõi  dấu vết, các chế độ tùy chọn:  all, "
-"normal, no. (Mặc định: all)"
+#, c-format
+msgid "could not parse %s as a commit"
+msgstr "không thể phân tích %s như là một lần chuyển giao"
 
-#: builtin/commit.c:1506
-msgid ""
-"show ignored files, optional modes: traditional, matching, no. (Default: "
-"traditional)"
-msgstr ""
-"hiển thị các tập tin bị bỏ qua, các chế độ tùy chọn: traditional, matching, "
-"no. (Mặc định: traditional)"
+#, c-format
+msgid "bad mergetag in commit '%s'"
+msgstr "thẻ hòa trộn sai trong lần chuyển giao “%s”"
 
-#: builtin/commit.c:1508 parse-options.h:197
-msgid "when"
-msgstr "khi"
+#, c-format
+msgid "malformed mergetag in commit '%s'"
+msgstr "thẻ hòa trộn không đúng dạng ở lần chuyển giao “%s”"
 
-#: builtin/commit.c:1509
+#, c-format
 msgid ""
-"ignore changes to submodules, optional when: all, dirty, untracked. "
-"(Default: all)"
+"original commit '%s' contains mergetag '%s' that is discarded; use --edit "
+"instead of --graft"
 msgstr ""
-"bỏ qua các thay đổi trong mô-đun-con, tùy chọn khi: all, dirty, untracked. "
-"(Mặc định: all)"
-
-#: builtin/commit.c:1511
-msgid "list untracked files in columns"
-msgstr "hiển thị danh sách các tập-tin chưa được theo dõi trong các cột"
-
-#: builtin/commit.c:1512
-msgid "do not detect renames"
-msgstr "không dò tìm các tên thay đổi"
-
-#: builtin/commit.c:1514
-msgid "detect renames, optionally set similarity index"
-msgstr "dò các tên thay đổi, tùy ý đặt mục lục tương tự"
+"lần chuyển giao gốc “%s” có chứa thẻ hòa trộn “%s” cái mà bị loại bỏ; dùng "
+"tùy chọn --edit thay cho --graft"
 
-#: builtin/commit.c:1537
-msgid "Unsupported combination of ignored and untracked-files arguments"
-msgstr ""
-"Không hỗ trỡ tổ hợp các tham số các tập tin bị bỏ qua và không được theo dõi"
+#, c-format
+msgid "the original commit '%s' has a gpg signature"
+msgstr "lần chuyển giao gốc “%s” có chữ ký GPG"
 
-#: builtin/commit.c:1619
-msgid "suppress summary after successful commit"
-msgstr "không hiển thị tổng kết sau khi chuyển giao thành công"
+msgid "the signature will be removed in the replacement commit!"
+msgstr "chữ ký sẽ được bỏ đi trong lần chuyển giao thay thế!"
 
-#: builtin/commit.c:1620
-msgid "show diff in commit message template"
-msgstr "hiển thị sự khác biệt trong mẫu tin nhắn chuyển giao"
+#, c-format
+msgid "could not write replacement commit for: '%s'"
+msgstr "không thể ghi lần chuyển giao thay thế cho: “%s”"
 
-#: builtin/commit.c:1622
-msgid "Commit message options"
-msgstr "Các tùy chọn ghi chú commit"
+#, c-format
+msgid "graft for '%s' unnecessary"
+msgstr "graft cho “%s” không cần thiết"
 
-#: builtin/commit.c:1623 builtin/merge.c:288 builtin/tag.c:457
-msgid "read message from file"
-msgstr "đọc chú thích từ tập tin"
+#, c-format
+msgid "new commit is the same as the old one: '%s'"
+msgstr "lần chuyển giao mới là giống với cái cũ: “%s”"
 
-#: builtin/commit.c:1624
-msgid "author"
-msgstr "tác giả"
+#, c-format
+msgid ""
+"could not convert the following graft(s):\n"
+"%s"
+msgstr ""
+"không thể chuyển đổi các graft sau đây:\n"
+"%s"
 
-#: builtin/commit.c:1624
-msgid "override author for commit"
-msgstr "ghi đè tác giả cho commit"
+msgid "list replace refs"
+msgstr "liệt kê các refs thay thế"
 
-#: builtin/commit.c:1625 builtin/gc.c:551
-msgid "date"
-msgstr "ngày tháng"
+msgid "delete replace refs"
+msgstr "xóa tham chiếu thay thế"
 
-#: builtin/commit.c:1625
-msgid "override date for commit"
-msgstr "ghi đè ngày tháng cho lần chuyển giao"
+msgid "edit existing object"
+msgstr "sửa đối tượng sẵn có"
 
-#: builtin/commit.c:1627 builtin/commit.c:1628 builtin/commit.c:1634
-#: parse-options.h:360 ref-filter.h:89
-msgid "commit"
-msgstr "lần_chuyển_giao"
+msgid "change a commit's parents"
+msgstr "thay đổi cha mẹ của lần chuyển giao"
 
-#: builtin/commit.c:1627
-msgid "reuse and edit message from specified commit"
-msgstr "dùng lại các ghi chú từ lần chuyển giao đã cho nhưng có cho sửa chữa"
+msgid "convert existing graft file"
+msgstr "chuyển đổi các tập tin graft sẵn có"
 
-#: builtin/commit.c:1628
-msgid "reuse message from specified commit"
-msgstr "dùng lại các ghi chú từ lần chuyển giao đã cho"
+msgid "replace the ref if it exists"
+msgstr "thay thế tham chiếu nếu nó đã sẵn có"
 
-#. TRANSLATORS: Leave "[(amend|reword):]" as-is,
-#. and only translate <commit>.
-#.
-#: builtin/commit.c:1633
-msgid "[(amend|reword):]commit"
-msgstr "[(amend|reword):]commit"
+msgid "do not pretty-print contents for --edit"
+msgstr "đừng in đẹp các nội dung cho --edit"
 
-#: builtin/commit.c:1633
-msgid ""
-"use autosquash formatted message to fixup or amend/reword specified commit"
-msgstr ""
-"dùng ghi chú có định dạng autosquash để sửa chữa hoặc tu bổ/reword lần "
-"chuyển giao đã chỉ ra"
+msgid "use this format"
+msgstr "dùng định dạng này"
 
-#: builtin/commit.c:1634
-msgid "use autosquash formatted message to squash specified commit"
-msgstr ""
-"dùng lời nhắn có định dạng tự động nén để nén lại các lần chuyển giao đã chỉ "
-"ra"
+msgid "--format cannot be used when not listing"
+msgstr "--format không thể được dùng khi không liệt kê gì"
 
-#: builtin/commit.c:1635
-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)"
+msgid "-f only makes sense when writing a replacement"
+msgstr "-f chỉ hợp lý khi ghi một cái thay thế"
 
-#: builtin/commit.c:1636 builtin/interpret-trailers.c:111
-msgid "trailer"
-msgstr "bộ dò vết"
+msgid "--raw only makes sense with --edit"
+msgstr "--raw chỉ hợp lý với --edit"
 
-#: builtin/commit.c:1636
-msgid "add custom trailer(s)"
-msgstr "thêm đuôi tự chọn"
+msgid "-d needs at least one argument"
+msgstr "-d cần ít nhất một tham số"
 
-#: builtin/commit.c:1637 builtin/log.c:1788 builtin/merge.c:306
-#: builtin/pull.c:146 builtin/revert.c:110
-msgid "add a Signed-off-by trailer"
-msgstr "thêm dòng Signed-off-by vào cuối"
+msgid "bad number of arguments"
+msgstr "số lượng đối số không đúng"
 
-#: builtin/commit.c:1638
-msgid "use specified template file"
-msgstr "sử dụng tập tin mẫu đã cho"
+msgid "-e needs exactly one argument"
+msgstr "-e cần chính các là một đối số"
 
-#: builtin/commit.c:1639
-msgid "force edit of commit"
-msgstr "ép buộc sửa lần commit"
+msgid "-g needs at least one argument"
+msgstr "-q cần ít nhất một tham số"
 
-#: builtin/commit.c:1641
-msgid "include status in commit message template"
-msgstr "bao gồm các trạng thái trong mẫu ghi chú chuyển giao"
+msgid "--convert-graft-file takes no argument"
+msgstr "--convert-graft-file không nhận đối số"
 
-#: builtin/commit.c:1646
-msgid "Commit contents options"
-msgstr "Các tùy nội dung ghi chú commit"
+msgid "only one pattern can be given with -l"
+msgstr "chỉ một mẫu được chỉ ra với tùy chọn -l"
 
-#: builtin/commit.c:1647
-msgid "commit all changed files"
-msgstr "chuyển giao tất cả các tập tin có thay đổi"
+msgid "git rerere [clear | forget <path>... | status | remaining | diff | gc]"
+msgstr ""
+"git rerere [clear | forget <đường dẫn>… | status | remaining | diff | gc]"
 
-#: builtin/commit.c:1648
-msgid "add specified files to index for commit"
-msgstr "thêm các tập tin đã chỉ ra vào bảng mục lục để chuyển giao"
+msgid "register clean resolutions in index"
+msgstr "sổ ghi dọn sạch các phân giải trong bản mục lục"
 
-#: builtin/commit.c:1649
-msgid "interactively add files"
-msgstr "thêm các tập-tin bằng tương tác"
+msgid "'git rerere forget' without paths is deprecated"
+msgstr "“git rerere forget” mà không có các đường dẫn là đã lạc hậu"
 
-#: builtin/commit.c:1650
-msgid "interactively add changes"
-msgstr "thêm các thay đổi bằng tương tác"
+#, c-format
+msgid "unable to generate diff for '%s'"
+msgstr "không thể tạo khác biệt cho “%s”"
 
-#: builtin/commit.c:1651
-msgid "commit only specified files"
-msgstr "chỉ chuyển giao các tập tin đã chỉ ra"
+msgid ""
+"git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
+msgstr ""
+"git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
 
-#: builtin/commit.c:1652
-msgid "bypass pre-commit and commit-msg hooks"
-msgstr "vòng qua móc (hook) pre-commit và commit-msg"
+msgid "git reset [-q] [<tree-ish>] [--] <pathspec>..."
+msgstr "git reset [-q] [<tree-ish>] [--] <đặc/tả/đường/dẫn>…"
 
-#: builtin/commit.c:1653
-msgid "show what would be committed"
-msgstr "hiển thị xem cái gì có thể được chuyển giao"
+msgid ""
+"git reset [-q] [--pathspec-from-file [--pathspec-file-nul]] [<tree-ish>]"
+msgstr ""
+"git reset [-q] [--pathspec-from-file [--pathspec-file-nul]] [<tree-ish>]"
 
-#: builtin/commit.c:1666
-msgid "amend previous commit"
-msgstr "“tu bổ” (amend) lần commit trước"
+msgid "git reset --patch [<tree-ish>] [--] [<pathspec>...]"
+msgstr "git reset --patch [<tree-ish>] [--] [<đặc/tả/đường/dẫn>…]"
 
-#: builtin/commit.c:1667
-msgid "bypass post-rewrite hook"
-msgstr "vòng qua móc (hook) post-rewrite"
+msgid "mixed"
+msgstr "pha trộn"
 
-#: builtin/commit.c:1674
-msgid "ok to record an empty change"
-msgstr "ok để ghi lại một thay đổi trống rỗng"
+msgid "soft"
+msgstr "mềm"
 
-#: builtin/commit.c:1676
-msgid "ok to record a change with an empty message"
-msgstr "ok để ghi các thay đổi với lời nhắn trống rỗng"
+msgid "hard"
+msgstr "cứng"
 
-#: builtin/commit.c:1752
-#, c-format
-msgid "Corrupt MERGE_HEAD file (%s)"
-msgstr "Tập tin MERGE_HEAD sai hỏng (%s)"
+msgid "merge"
+msgstr "hòa trộn"
 
-#: builtin/commit.c:1759
-msgid "could not read MERGE_MODE"
-msgstr "không thể đọc MERGE_MODE"
+msgid "keep"
+msgstr "giữ lại"
 
-#: builtin/commit.c:1780
-#, c-format
-msgid "could not read commit message: %s"
-msgstr "không thể đọc phần chú thích (message) của lần chuyển giao: %s"
+msgid "You do not have a valid HEAD."
+msgstr "Bạn không có HEAD nào hợp lệ."
 
-#: builtin/commit.c:1787
-#, c-format
-msgid "Aborting commit due to empty commit message.\n"
-msgstr "Bãi bỏ việc chuyển giao bởi vì phần chú thích của nó trống rỗng.\n"
+msgid "Failed to find tree of HEAD."
+msgstr "Gặp lỗi khi tìm cây của HEAD."
 
-#: builtin/commit.c:1792
 #, c-format
-msgid "Aborting commit; you did not edit the message.\n"
-msgstr ""
-"Đang bỏ qua việc chuyển giao; bạn đã không biên soạn phần chú thích "
-"(message).\n"
+msgid "Failed to find tree of %s."
+msgstr "Gặp lỗi khi tìm cây của %s."
 
-#: builtin/commit.c:1803
 #, c-format
-msgid "Aborting commit due to empty commit message body.\n"
-msgstr ""
-"Bãi bỏ việc chuyển giao bởi vì phần thân chú thích của nó trống rỗng.\n"
-
-#: builtin/commit.c:1839
-msgid ""
-"repository has been updated, but unable to write\n"
-"new_index file. Check that disk is not full and quota is\n"
-"not exceeded, and then \"git restore --staged :/\" to recover."
-msgstr ""
-"kho chứa đã được cập nhật, nhưng không thể ghi vào\n"
-"tập tin new_index (bảng mục lục mới). Hãy kiểm tra xem đĩa\n"
-"có bị đầy quá hay quota (hạn nghạch đĩa cứng) bị vượt quá,\n"
-"và sau đó \"git restore --staged :/\" để khắc phục."
-
-#: builtin/config.c:11
-msgid "git config [<options>]"
-msgstr "git config [<các tùy chọn>]"
+msgid "HEAD is now at %s"
+msgstr "HEAD hiện giờ tại %s"
 
-#: 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"
+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/config.c:121
-msgid "only one type at a time"
-msgstr "chỉ một kiểu một lần"
+msgid "be quiet, only report errors"
+msgstr "làm việc ở chế độ im lặng, chỉ hiển thị khi có lỗi"
 
-#: builtin/config.c:130
-msgid "Config file location"
-msgstr "Vị trí tập tin cấu hình"
+msgid "skip refreshing the index after reset"
+msgstr "bỏ qua làm tươi mục lục sau khi đặt lại"
 
-#: builtin/config.c:131
-msgid "use global config file"
-msgstr "dùng tập tin cấu hình toàn cục"
+msgid "reset HEAD and index"
+msgstr "đặt lại (reset) HEAD và bảng mục lục"
 
-#: builtin/config.c:132
-msgid "use system config file"
-msgstr "sử dụng tập tin cấu hình hệ thống"
+msgid "reset only HEAD"
+msgstr "chỉ đặt lại (reset) HEAD"
 
-#: builtin/config.c:133
-msgid "use repository config file"
-msgstr "dùng tập tin cấu hình của kho"
+msgid "reset HEAD, index and working tree"
+msgstr "đặt lại HEAD, bảng mục lục và cây làm việc"
 
-#: builtin/config.c:134
-msgid "use per-worktree config file"
-msgstr "dùng tập tin cấu hình per-worktree"
+msgid "reset HEAD but keep local changes"
+msgstr "đặt lại HEAD nhưng giữ lại các thay đổi nội bộ"
 
-#: builtin/config.c:135
-msgid "use given config file"
-msgstr "sử dụng tập tin cấu hình đã cho"
+msgid "record only the fact that removed paths will be added later"
+msgstr "chỉ ghi lại những đường dẫn thực sự sẽ được thêm vào sau này"
 
-#: builtin/config.c:136
-msgid "blob-id"
-msgstr "blob-id"
+#, c-format
+msgid "Failed to resolve '%s' as a valid revision."
+msgstr "Gặp lỗi khi phân giải “%s” như là điểm xét duyệt hợp lệ."
 
-#: builtin/config.c:136
-msgid "read config from given blob object"
-msgstr "đọc cấu hình từ đối tượng blob đã cho"
+#, c-format
+msgid "Failed to resolve '%s' as a valid tree."
+msgstr "Gặp lỗi khi phân giải “%s” như là một cây (tree) hợp lệ."
 
-#: builtin/config.c:137
-msgid "Action"
-msgstr "Hành động"
+msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
+msgstr ""
+"--mixed với các đường dẫn không còn dùng nữa; hãy thay thế bằng lệnh “git "
+"reset -- </các/đường/dẫn>”."
 
-#: builtin/config.c:138
-msgid "get value: name [value-pattern]"
-msgstr "lấy giá trị: tên [value-pattern]"
+#, c-format
+msgid "Cannot do %s reset with paths."
+msgstr "Không thể thực hiện lệnh %s reset với các đường dẫn."
 
-#: builtin/config.c:139
-msgid "get all values: key [value-pattern]"
-msgstr "lấy tất cả giá trị: khóa [value-pattern]"
+#, c-format
+msgid "%s reset is not allowed in a bare repository"
+msgstr "%s reset không được phép trên kho thuần"
 
-#: builtin/config.c:140
-msgid "get values for regexp: name-regex [value-pattern]"
-msgstr "lấy giá trị cho regexp: name-regex [value-pattern]"
+msgid "Unstaged changes after reset:"
+msgstr "Những thay đổi được đưa ra khỏi bệ phóng sau khi reset:"
 
-#: builtin/config.c:141
-msgid "get value specific for the URL: section[.var] URL"
-msgstr "lấy đặc tả giá trị cho URL: phần[.biến] URL"
+#, c-format
+msgid ""
+"It took %.2f seconds to refresh the index after reset.  You can use\n"
+"'--no-refresh' to avoid this."
+msgstr ""
+"Việc này cần %.2f giây để làm tươi mới mục lục sau khi đặt lại. Bạn có thể "
+"sử dụng\n"
+"“--no-refresh” tránh điều này."
 
-#: builtin/config.c:142
-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]"
+#, c-format
+msgid "Could not reset index file to revision '%s'."
+msgstr "Không thể đặt lại (reset) bảng mục lục thành điểm xét duyệt “%s”."
 
-#: builtin/config.c:143
-msgid "add a new variable: name value"
-msgstr "thêm biến mới: tên giá-trị"
+msgid "Could not write new index file."
+msgstr "Không thể ghi tập tin lưu bảng mục lục mới."
 
-#: builtin/config.c:144
-msgid "remove a variable: name [value-pattern]"
-msgstr "gỡ bỏ biến: tên [value-pattern]"
+#, c-format
+msgid "unable to get disk usage of %s"
+msgstr "không thể dung lượng đĩa đã dùng của %s"
 
-#: builtin/config.c:145
-msgid "remove all matches: name [value-pattern]"
-msgstr "gỡ bỏ mọi cái khớp: tên [value-pattern]"
+msgid "rev-list does not support display of notes"
+msgstr "rev-list không hỗ trợ hiển thị các ghi chú"
 
-#: builtin/config.c:146
-msgid "rename section: old-name new-name"
-msgstr "đổi tên phần: tên-cũ tên-mới"
+#, c-format
+msgid "marked counting and '%s' cannot be used together"
+msgstr "đánh dấu để đếm và '%s' không thể dùng cùng nhau"
 
-#: builtin/config.c:147
-msgid "remove a section: name"
-msgstr "gỡ bỏ phần: tên"
+msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
+msgstr "git rev-parse --parseopt [<các tùy chọn>] -- [<các tham số>…]"
 
-#: builtin/config.c:148
-msgid "list all"
-msgstr "liệt kê tất"
+msgid "keep the `--` passed as an arg"
+msgstr "giữ lại “--” chuyển sang làm tham số"
 
-#: 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”"
+msgid "stop parsing after the first non-option argument"
+msgstr "dừng phân tích sau đối số đầu tiên không có tùy chọn"
 
-#: builtin/config.c:150
-msgid "open an editor"
-msgstr "mở một trình biên soạn"
+msgid "output in stuck long form"
+msgstr "kết xuất trong định dạng gậy dài"
 
-#: 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]"
+msgid "premature end of input"
+msgstr "đầu vào chấm dứt bất thường"
 
-#: 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]"
+msgid "no usage string given before the `--' separator"
+msgstr "không có chuỗi cách dùng nào được đưa ra trước dấu phân cách “--”"
 
-#: builtin/config.c:153
-msgid "Type"
-msgstr "Kiểu"
+msgid "Needed a single revision"
+msgstr "Cần một điểm xét duyệt đơn"
 
-#: builtin/config.c:154 builtin/env--helper.c:42 builtin/hash-object.c:97
-msgid "type"
-msgstr "kiểu"
+msgid ""
+"git rev-parse --parseopt [<options>] -- [<args>...]\n"
+"   or: git rev-parse --sq-quote [<arg>...]\n"
+"   or: git rev-parse [<options>] [<arg>...]\n"
+"\n"
+"Run \"git rev-parse --parseopt -h\" for more information on the first usage."
+msgstr ""
+"git rev-parse --parseopt [<các tùy chọn>] -- [<các đối số>…]\n"
+"   hoặc: git rev-parse --sq-quote [<đ.số>…]\n"
+"   hoặc: git rev-parse [<các tùy chọn>] [<đ.số>…]\n"
+"\n"
+"Chạy lệnh \"git rev-parse --parseopt -h\" để có thêm thông tin về cách dùng."
 
-#: builtin/config.c:154 builtin/env--helper.c:43
-msgid "value is given this type"
-msgstr "giá trị được đưa kiểu này"
+msgid "--resolve-git-dir requires an argument"
+msgstr "--resolve-git-dir cần một tham số"
 
-#: builtin/config.c:155
-msgid "value is \"true\" or \"false\""
-msgstr "giá trị là \"true\" hoặc \"false\""
+#, c-format
+msgid "not a gitdir '%s'"
+msgstr "không phải một thư mục git “%s”"
 
-#: builtin/config.c:156
-msgid "value is decimal number"
-msgstr "giá trị ở dạng số thập phân"
+msgid "--git-path requires an argument"
+msgstr "--git-path cần một tham số"
 
-#: builtin/config.c:157
-msgid "value is --bool or --int"
-msgstr "giá trị là --bool hoặc --int"
+msgid "-n requires an argument"
+msgstr "-n cần một tham số"
 
-#: builtin/config.c:158
-msgid "value is --bool or string"
-msgstr "giá trị là --bool hoặc chuỗi"
+msgid "--path-format requires an argument"
+msgstr "--path-format cần một tham số"
 
-#: 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)"
+#, c-format
+msgid "unknown argument to --path-format: %s"
+msgstr "không hiểu tham số cho --path-format: %s"
 
-#: builtin/config.c:160
-msgid "value is an expiry date"
-msgstr "giá trị là một ngày hết hạn"
+msgid "--default requires an argument"
+msgstr "--default cần một tham số"
 
-#: builtin/config.c:161
-msgid "Other"
-msgstr "Khác"
+msgid "--prefix requires an argument"
+msgstr "--prefix cần một tham số"
 
-#: builtin/config.c:162
-msgid "terminate values with NUL byte"
-msgstr "chấm dứt giá trị với byte NUL"
+#, c-format
+msgid "unknown mode for --abbrev-ref: %s"
+msgstr "không hiểu chế độ cho --abbrev-ref: %s"
 
-#: builtin/config.c:163
-msgid "show variable names only"
-msgstr "chỉ hiển thị các tên biến"
+msgid "this operation must be run in a work tree"
+msgstr "thao tác này phải được thực hiện trong thư mục làm việc"
 
-#: 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"
+#, c-format
+msgid "unknown mode for --show-object-format: %s"
+msgstr "không hiểu chế độ cho --show-object-format: %s"
 
-#: 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)"
+msgid "git revert [<options>] <commit-ish>..."
+msgstr "git revert [<các tùy chọn>] <commit-ish>…"
 
-#: 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)"
+msgid "git revert <subcommand>"
+msgstr "git revert <lệnh-con>"
 
-#: builtin/config.c:167 builtin/env--helper.c:45
-msgid "value"
-msgstr "giá trị"
+msgid "git cherry-pick [<options>] <commit-ish>..."
+msgstr "git cherry-pick [<các tùy chọn>] <commit-ish>…"
 
-#: 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"
+msgid "git cherry-pick <subcommand>"
+msgstr "git cherry-pick <lệnh-con>"
 
-#: 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"
+msgid "option `%s' expects a number greater than zero"
+msgstr "tùy chọn “%s” cần một giá trị bằng số lớn hơn không"
 
-#: 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"
+msgid "%s: %s cannot be used with %s"
+msgstr "%s: %s không thể được sử dụng với %s"
 
-#: builtin/config.c:339
-#, c-format
-msgid "invalid key pattern: %s"
-msgstr "mẫu khóa không hợp lệ: %s"
+msgid "end revert or cherry-pick sequence"
+msgstr "kết thúc cherry-pick hay hoàn nguyên liên tiếp nhau"
 
-#: 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"
+msgid "resume revert or cherry-pick sequence"
+msgstr "phục hồi lại cherry-pick hay hoàn nguyên liên tiếp nhau"
 
-#: builtin/config.c:441
-#, c-format
-msgid "cannot parse color '%s'"
-msgstr "không thể phân tích màu “%s”"
+msgid "cancel revert or cherry-pick sequence"
+msgstr "không cherry-pick hay hoàn nguyên liên tiếp nhau"
 
-#: 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"
+msgid "skip current commit and continue"
+msgstr "bỏ qua lần chuyển giao hiện tại và tiếp tục"
 
-#: builtin/config.c:536 builtin/config.c:833
-msgid "not in a git directory"
-msgstr "không trong thư mục git"
+msgid "don't automatically commit"
+msgstr "đừng chuyển giao một cách tự động"
 
-#: 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ợ"
+msgid "edit the commit message"
+msgstr "sửa lại chú thích cho lần chuyển giao"
 
-#: builtin/config.c:542
-msgid "writing config blobs is not supported"
-msgstr "không hỗ trợ ghi cấu hình các blob"
+msgid "parent-number"
+msgstr "số-cha-mẹ"
 
-#: builtin/config.c:627
-#, c-format
-msgid ""
-"# This is Git's per-user configuration file.\n"
-"[user]\n"
-"# Please adapt and uncomment the following lines:\n"
-"#\tname = %s\n"
-"#\temail = %s\n"
-msgstr ""
-"# Đây là tập tin cấu hình cho từng người dùng Git.\n"
-"[user]\n"
-"# Vui lòng sửa lại cho thích hợp và bỏ dấu ghi chú các dòng sau:\n"
-"#\tname = %s\n"
-"#\temail = %s\n"
+msgid "select mainline parent"
+msgstr "chọn cha mẹ luồng chính"
 
-#: 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"
+msgid "merge strategy"
+msgstr "chiến lược hòa trộn"
 
-#: 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"
+msgid "option for merge strategy"
+msgstr "tùy chọn cho chiến lược hòa trộn"
 
-#: 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"
+msgid "append commit name"
+msgstr "nối thêm tên lần chuyển giao"
 
-#: 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"
+msgid "preserve initially empty commits"
+msgstr "cấm khởi tạo lần chuyển giao trống rỗng"
 
-#: builtin/config.c:684
-msgid "$HOME not set"
-msgstr "Chưa đặt biến môi trường $HOME"
+msgid "allow commits with empty messages"
+msgstr "chấp nhận chuyển giao mà không ghi chú gì"
 
-#: 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"
-"section in \"git help worktree\" for details"
-msgstr ""
-"--worktree không thể dùng với nhiều cây làm việc trừ khi cấu hình mở rộng\n"
-"worktreeConfig được bật. Vui lòng đọc phần \"CONFIGURATION FILE\"\n"
-"trong \"git help worktree\" để biết thêm chi tiết"
+msgid "keep redundant, empty commits"
+msgstr "giữ lại các lần chuyển giao dư thừa, rỗng"
 
-#: 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"
+msgid "use the 'reference' format to refer to commits"
+msgstr "dùng định dạng 'tham chiếu' để quy cho các lần chuyển giao"
 
-#: builtin/config.c:748
-msgid "only one action at a time"
-msgstr "chỉ một thao tác mỗi lần"
+msgid "revert failed"
+msgstr "hoàn nguyên gặp lỗi"
 
-#: 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"
+msgid "cherry-pick failed"
+msgstr "cherry-pick gặp lỗi"
+
+msgid "git rm [<options>] [--] <file>..."
+msgstr "git rm [<các tùy chọn>] [--] <tập-tin>…"
 
-#: builtin/config.c:767
 msgid ""
-"--show-origin is only applicable to --get, --get-all, --get-regexp, and --"
-"list"
+"the following file has staged content different from both the\n"
+"file and the HEAD:"
+msgid_plural ""
+"the following files have staged content different from both the\n"
+"file and the HEAD:"
+msgstr[0] ""
+"các tập tin sau đây có khác biệt nội dung đã đưa lên bệ phóng\n"
+"từ cả tập tin và cả HEAD:"
+
+msgid ""
+"\n"
+"(use -f to force removal)"
 msgstr ""
-"--show-origin chỉ được áp dụng cho --get, --get-all, --get-regexp, hoặc --"
-"list"
+"\n"
+"(dùng -f để buộc gỡ bỏ)"
 
-#: builtin/config.c:773
-msgid "--default is only applicable to --get"
-msgstr "--default chỉ được áp dụng cho --get"
+msgid "the following file has changes staged in the index:"
+msgid_plural "the following files have changes staged in the index:"
+msgstr[0] "các tập tin sau đây có thay đổi trạng thái trong bảng mục lục:"
+
+msgid ""
+"\n"
+"(use --cached to keep the file, or -f to force removal)"
+msgstr ""
+"\n"
+"(dùng tùy chọn --cached để giữ tập tin, hoặc -f để ép buộc gỡ bỏ)"
 
-#: builtin/config.c:806
-msgid "--fixed-value only applies with 'value-pattern'"
-msgstr "--fixed-value chỉ áp dụng với “value-pattern”"
+msgid "the following file has local modifications:"
+msgid_plural "the following files have local modifications:"
+msgstr[0] "những tập tin sau đây có những thay đổi nội bộ:"
 
-#: 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”"
+msgid "do not list removed files"
+msgstr "không liệt kê các tập tin đã gỡ bỏ"
 
-#: 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"
+msgid "only remove from the index"
+msgstr "chỉ gỡ bỏ từ mục lục"
 
-#: 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ợ"
+msgid "override the up-to-date check"
+msgstr "ghi đè lên kiểm tra cập nhật"
 
-#: 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ợ"
+msgid "allow recursive removal"
+msgstr "cho phép gỡ bỏ đệ qui"
 
-#: 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”"
+msgid "exit with a zero status even if nothing matched"
+msgstr "thoát ra với trạng thái khác không thậm chí nếu không có gì khớp"
 
-#: builtin/config.c:864
-#, c-format
-msgid ""
-"cannot overwrite multiple values with a single value\n"
-"       Use a regexp, --add or --replace-all to change %s."
+msgid "No pathspec was given. Which files should I remove?"
+msgstr "Không đưa ra đặc tả đường dẫn. Tôi nên loại bỏ các tập tin nào?"
+
+msgid "please stage your changes to .gitmodules or stash them to proceed"
 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."
+"hãy đưa các thay đổi của bạn vào .gitmodules hay tạm cất chúng đi để xử lý"
 
-#: builtin/config.c:943 builtin/config.c:954
 #, c-format
-msgid "no such section: %s"
-msgstr "không có đoạn: %s"
-
-#: builtin/count-objects.c:100
-msgid "print sizes in human readable format"
-msgstr "hiển thị kích cỡ theo định dạng dành cho người đọc"
+msgid "not removing '%s' recursively without -r"
+msgstr "không thể gỡ bỏ “%s” một cách đệ qui mà không có tùy chọn -r"
 
-#: builtin/credential-cache--daemon.c:227
 #, c-format
+msgid "git rm: unable to remove %s"
+msgstr "git rm: không thể gỡ bỏ %s"
+
 msgid ""
-"The permissions on your socket directory are too loose; other\n"
-"users may be able to read your cached credentials. Consider running:\n"
-"\n"
-"\tchmod 0700 %s"
+"git send-pack [--mirror] [--dry-run] [--force]\n"
+"              [--receive-pack=<git-receive-pack>]\n"
+"              [--verbose] [--thin] [--atomic]\n"
+"              [<host>:]<directory> (--all | <ref>...)"
 msgstr ""
-"Quyền hạn trên thư mục gói mạng của bạn không chính xác; người dùng\n"
-"khác có lẽ có thể đọc được chứng thư được lưu đệm của bạn. Cân nhắc chạy:\n"
-"\n"
-"\tchmod 0700 %s"
-
-#: builtin/credential-cache--daemon.c:276
-msgid "print debugging messages to stderr"
-msgstr "in thông tin gỡ lỗi ra đầu ra lỗi tiêu chuẩn"
+"git send-pack [--mirror] [--dry-run] [--force]\n"
+"              [--receive-pack=<git-receive-pack>]\n"
+"              [--verbose] [--thin] [--atomic]\n"
+"              [<host>:]<thư mục> (--all | <tham chiếu>…)"
 
-#: builtin/credential-cache--daemon.c:316
-msgid "credential-cache--daemon unavailable; no unix socket support"
-msgstr "credential-cache--daemon không sẵn có; không hỗ trợ unix socket"
+msgid "remote name"
+msgstr "tên máy dịch vụ"
 
-#: builtin/credential-cache.c:180
-msgid "credential-cache unavailable; no unix socket support"
-msgstr "credential-cache không sẵn có; không hỗ trợ unix socket"
+msgid "use stateless RPC protocol"
+msgstr "dùng giao thức RPC không ổn định"
 
-#: 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"
+msgid "read refs from stdin"
+msgstr "đọc tham chiếu từ đầu vào tiêu chuẩn"
 
-#: builtin/describe.c:26
-msgid "git describe [<options>] [<commit-ish>...]"
-msgstr "git describe [<các tùy chọn>] <commit-ish>*"
+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/describe.c:27
-msgid "git describe [<options>] --dirty"
-msgstr "git describe [<các tùy chọn>] --dirty"
+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/describe.c:63
-msgid "head"
-msgstr "phía trước"
+msgid "git log --pretty=short | git shortlog [<options>]"
+msgstr "git log --pretty=short | git shortlog [<các tùy chọn>]"
 
-#: builtin/describe.c:63
-msgid "lightweight"
-msgstr "hạng nhẹ"
+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/describe.c:63
-msgid "annotated"
-msgstr "có diễn giải"
+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/describe.c:277
 #, c-format
-msgid "annotated tag %s not available"
-msgstr "thẻ đã được ghi chú %s không sẵn để dùng"
+msgid "unknown group type: %s"
+msgstr "không nhận ra kiểu nhóm: %s"
 
-#: builtin/describe.c:281
-#, c-format
-msgid "tag '%s' is externally known as '%s'"
-msgstr "ở bên ngoài, thẻ “%s” đã được biết đến là “%s”"
+msgid "group by committer rather than author"
+msgstr "nhóm theo người chuyển giao thay vì tác giả"
 
-#: builtin/describe.c:328
-#, c-format
-msgid "no tag exactly matches '%s'"
-msgstr "không có thẻ nào khớp chính xác với “%s”"
+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/describe.c:330
-#, c-format
-msgid "No exact match on refs or tags, searching to describe\n"
-msgstr "Không có tham chiếu hay thẻ khớp đúng, đang tìm kiếm mô tả\n"
+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/describe.c:397
-#, c-format
-msgid "finished search at %s\n"
-msgstr "việc tìm kiếm đã kết thúc tại %s\n"
+msgid "show the email address of each author"
+msgstr "hiển thị thư điện tử cho từng tác giả"
 
-#: builtin/describe.c:424
-#, c-format
-msgid ""
-"No annotated tags can describe '%s'.\n"
-"However, there were unannotated tags: try --tags."
-msgstr ""
-"Không có thẻ được chú giải nào được mô tả là “%s”.\n"
-"Tuy nhiên, ở đây có những thẻ không được chú giải: hãy thử --tags."
+msgid "<w>[,<i1>[,<i2>]]"
+msgstr "<w>[,<i1>[,<i2>]]"
 
-#: builtin/describe.c:428
-#, c-format
-msgid ""
-"No tags can describe '%s'.\n"
-"Try --always, or create some tags."
-msgstr ""
-"Không có thẻ có thể mô tả “%s”.\n"
-"Hãy thử --always, hoặc tạo một số thẻ."
+msgid "linewrap output"
+msgstr "ngắt dòng khi quá dài"
 
-#: builtin/describe.c:458
-#, c-format
-msgid "traversed %lu commits\n"
-msgstr "đã xuyên %lu qua lần chuyển giao\n"
+msgid "field"
+msgstr "trường"
+
+msgid "group by field"
+msgstr "nhóm theo trường"
+
+msgid "too many arguments given outside repository"
+msgstr "quá nhiều tham số đưa ra ngoài kho chứa"
 
-#: builtin/describe.c:461
-#, c-format
 msgid ""
-"more than %i tags found; listed %i most recent\n"
-"gave up search at %s\n"
+"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
+"                [--current] [--color[=<when>] | --no-color] [--sparse]\n"
+"                [--more=<n> | --list | --independent | --merge-base]\n"
+"                [--no-name | --sha1-name] [--topics] [(<rev> | <glob>)...]"
 msgstr ""
-"tìm thấy nhiều hơn %i thẻ; đã liệt kê %i cái gần\n"
-"đây nhất bỏ đi tìm kiếm tại %s\n"
+"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
+"                [--current] [--color[=<when>] | --no-color] [--sparse]\n"
+"                [--more=<n> | --list | --independent | --merge-base]\n"
+"                [--no-name | --sha1-name] [--topics] [(<rev> | <glob>)…]"
 
-#: builtin/describe.c:529
-#, c-format
-msgid "describe %s\n"
-msgstr "mô tả %s\n"
+msgid "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<ref>]"
+msgstr "git show-branch (-g | --reflog)[=<n>[,<nền>]] [--list] [<ref>]"
 
-#: builtin/describe.c:532
 #, c-format
-msgid "Not a valid object name %s"
-msgstr "Không phải tên đối tượng %s hợp lệ"
+msgid "ignoring %s; cannot handle more than %d ref"
+msgid_plural "ignoring %s; cannot handle more than %d refs"
+msgstr[0] "đang bỏ qua %s; không thể xử lý nhiều hơn %d tham chiếu"
 
-#: builtin/describe.c:540
 #, c-format
-msgid "%s is neither a commit nor blob"
-msgstr "%s không phải là một lần commit cũng không phải blob"
-
-#: builtin/describe.c:554
-msgid "find the tag that comes after the commit"
-msgstr "tìm các thẻ mà nó đến trước lần chuyển giao"
-
-#: builtin/describe.c:555
-msgid "debug search strategy on stderr"
-msgstr "chiến lược tìm kiếm gỡ lỗi trên đầu ra lỗi chuẩn stderr"
-
-#: builtin/describe.c:556
-msgid "use any ref"
-msgstr "dùng ref bất kỳ"
+msgid "no matching refs with %s"
+msgstr "không tham chiếu nào khớp với %s"
 
-#: builtin/describe.c:557
-msgid "use any tag, even unannotated"
-msgstr "dùng thẻ bất kỳ, cả khi “unannotated”"
+msgid "show remote-tracking and local branches"
+msgstr "hiển thị các nhánh remote-tracking và nội bộ"
 
-#: builtin/describe.c:558
-msgid "always use long format"
-msgstr "luôn dùng định dạng dài"
+msgid "show remote-tracking branches"
+msgstr "hiển thị các nhánh remote-tracking"
 
-#: builtin/describe.c:559
-msgid "only follow first parent"
-msgstr "chỉ theo cha mẹ đầu tiên"
+msgid "color '*!+-' corresponding to the branch"
+msgstr "màu “*!+-” tương ứng với nhánh"
 
-#: builtin/describe.c:562
-msgid "only output exact matches"
-msgstr "chỉ xuất những gì khớp chính xác"
+msgid "show <n> more commits after the common ancestor"
+msgstr "hiển thị thêm <n> lần chuyển giao sau cha mẹ chung"
 
-#: builtin/describe.c:564
-msgid "consider <n> most recent tags (default: 10)"
-msgstr "coi như <n> thẻ gần đây nhất (mặc định: 10)"
+msgid "synonym to more=-1"
+msgstr "đồng nghĩa với more=-1"
 
-#: builtin/describe.c:566
-msgid "only consider tags matching <pattern>"
-msgstr "chỉ cân nhắc đến những thẻ khớp với <mẫu>"
+msgid "suppress naming strings"
+msgstr "chặn các chuỗi đặt tên"
 
-#: builtin/describe.c:568
-msgid "do not consider tags matching <pattern>"
-msgstr "không coi rằng các thẻ khớp với <mẫu>"
+msgid "include the current branch"
+msgstr "bao gồm nhánh hiện hành"
 
-#: builtin/describe.c:570 builtin/name-rev.c:595
-msgid "show abbreviated commit object as fallback"
-msgstr "hiển thị đối tượng chuyển giao vắn tắt như là fallback"
+msgid "name commits with their object names"
+msgstr "đặt tên các lần chuyển giao bằng các tên của đối tượng của chúng"
 
-#: builtin/describe.c:571 builtin/describe.c:574
-msgid "mark"
-msgstr "dấu"
+msgid "show possible merge bases"
+msgstr "hiển thị mọi cơ sở có thể dùng để hòa trộn"
 
-#: builtin/describe.c:572
-msgid "append <mark> on dirty working tree (default: \"-dirty\")"
-msgstr "thêm <dấu> trên cây thư mục làm việc bẩn (mặc định \"-dirty\")"
+msgid "show refs unreachable from any other ref"
+msgstr "hiển thị các tham chiếu không thể được đọc bởi bất kỳ tham chiếu khác"
 
-#: builtin/describe.c:575
-msgid "append <mark> on broken working tree (default: \"-broken\")"
-msgstr "thêm <dấu> trên cây thư mục làm việc bị hỏng (mặc định \"-broken\")"
+msgid "show commits in topological order"
+msgstr "hiển thị các lần chuyển giao theo thứ tự tôpô"
 
-#: builtin/describe.c:622
-msgid "No names found, cannot describe anything."
-msgstr "Không tìm thấy các tên, không thể mô tả gì cả."
+msgid "show only commits not on the first branch"
+msgstr "chỉ hiển thị các lần chuyển giao không nằm trên nhánh đầu tiên"
 
-#: builtin/describe.c:673 builtin/describe.c:675
-#, c-format
-msgid "option '%s' and commit-ishes cannot be used together"
-msgstr "tùy chọn '%s' và commit-ishes không thể dùng cùng nhau"
+msgid "show merges reachable from only one tip"
+msgstr "hiển thị các lần hòa trộn có thể đọc được chỉ từ một đầu mút"
 
-#: 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"
+msgid "topologically sort, maintaining date order where possible"
+msgstr "sắp xếp hình thái học, bảo trì thứ tự ngày nếu có thể"
 
-#: builtin/diff.c:92
-#, 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"
+msgid "<n>[,<base>]"
+msgstr "<n>[,<cơ_sở>]"
 
-#: builtin/diff.c:259
-#, c-format
-msgid "invalid option: %s"
-msgstr "tùy chọn không hợp lệ: %s"
+msgid "show <n> most recent ref-log entries starting at base"
+msgstr "hiển thị <n> các mục “ref-log” gần nhất kể từ nền (base)"
 
-#: builtin/diff.c:376
-#, c-format
-msgid "%s...%s: no merge base"
-msgstr "%s…%s: không có cơ sở hòa trộn"
+msgid "no branches given, and HEAD is not valid"
+msgstr "chưa đưa ra nhánh, và HEAD không hợp lệ"
 
-#: builtin/diff.c:491
-msgid "Not a git repository"
-msgstr "Không phải là kho git"
+msgid "--reflog option needs one branch name"
+msgstr "--reflog cần tên một nhánh"
 
-#: builtin/diff.c:537 builtin/grep.c:700
 #, c-format
-msgid "invalid object '%s' given."
-msgstr "đối tượng đã cho “%s” không hợp lệ."
+msgid "only %d entry can be shown at one time."
+msgid_plural "only %d entries can be shown at one time."
+msgstr[0] "chỉ có thể hiển thị cùng lúc %d hạng mục."
 
-#: builtin/diff.c:548
 #, c-format
-msgid "more than two blobs given: '%s'"
-msgstr "đã cho nhiều hơn hai đối tượng blob: “%s”"
+msgid "no such ref %s"
+msgstr "không có tham chiếu nào như thế %s"
 
-#: builtin/diff.c:553
 #, c-format
-msgid "unhandled object '%s' given."
-msgstr "đã cho đối tượng không thể nắm giữ “%s”."
+msgid "cannot handle more than %d rev."
+msgid_plural "cannot handle more than %d revs."
+msgstr[0] "không thể xử lý nhiều hơn %d điểm xét duyệt."
 
-#: builtin/diff.c:587
 #, 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"
-
-#: builtin/difftool.c:31
-msgid "git difftool [<options>] [<commit> [<commit>]] [--] [<path>...]"
-msgstr ""
-"git difftool [<các tùy chọn>] [<lần_chuyển_giao> [<lần_chuyển_giao>]] [--] </"
-"đường/dẫn>…]"
+msgid "'%s' is not a valid ref."
+msgstr "“%s” không phải tham chiếu hợp lệ."
 
-#: builtin/difftool.c:287
 #, c-format
-msgid "could not read symlink %s"
-msgstr "không thể đọc liên kết mềm %s"
+msgid "cannot find commit %s (%s)"
+msgstr "không thể tìm thấy lần chuyển giao %s (%s)"
 
-#: builtin/difftool.c:289
-#, c-format
-msgid "could not read symlink file %s"
-msgstr "không đọc được tập tin liên kết mềm %s"
+msgid "hash-algorithm"
+msgstr "thuật-toán-băm"
 
-#: builtin/difftool.c:297
-#, c-format
-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"
+msgid "Unknown hash algorithm"
+msgstr "Không hiểu thuật toán băm dữ liệu"
 
-#: builtin/difftool.c:421
 msgid ""
-"combined diff formats ('-c' and '--cc') are not supported in\n"
-"directory diff mode ('-d' and '--dir-diff')."
+"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
+"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
 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”)."
+"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
+"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<mẫu>…]"
 
-#: builtin/difftool.c:626
-#, c-format
-msgid "both files modified: '%s' and '%s'."
-msgstr "cả hai tập tin đã bị sửa: “%s” và “%s”."
+msgid "git show-ref --exclude-existing[=<pattern>]"
+msgstr "git show-ref --exclude-existing[=<mẫu>]"
 
-#: builtin/difftool.c:628
-msgid "working tree file has been left."
-msgstr "cây làm việc ở bên trái."
+msgid "only show tags (can be combined with heads)"
+msgstr "chỉ hiển thị thẻ (có thể tổ hợp cùng với đầu)"
 
-#: builtin/difftool.c:639
-#, c-format
-msgid "temporary files exist in '%s'."
-msgstr "các tập tin tạm đã sẵn có trong “%s”."
+msgid "only show heads (can be combined with tags)"
+msgstr "chỉ hiển thị đầu (có thể tổ hợp cùng với thẻ)"
 
-#: builtin/difftool.c:640
-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."
+msgid "stricter reference checking, requires exact ref path"
+msgstr ""
+"việc kiểm tra tham chiếu chính xác, đòi hỏi chính xác đường dẫn tham chiếu"
 
-#: builtin/difftool.c:645
-#, c-format
-msgid "failed: %d"
-msgstr "gặp lỗi: %d"
+msgid "show the HEAD reference, even if it would be filtered out"
+msgstr "hiển thị tham chiếu HEAD, ngay cả khi nó đã được lọc ra"
 
-#: builtin/difftool.c:690
-msgid "use `diff.guitool` instead of `diff.tool`"
-msgstr "dùng “diff.guitool“ thay vì dùng “diff.tool“"
+msgid "dereference tags into object IDs"
+msgstr "bãi bỏ tham chiếu các thẻ thành ra các ID đối tượng"
 
-#: builtin/difftool.c:692
-msgid "perform a full-directory diff"
-msgstr "thực hiện một diff toàn thư mục"
+msgid "only show SHA1 hash using <n> digits"
+msgstr "chỉ hiển thị mã băm SHA1 sử dụng <n> chữ số"
 
-#: builtin/difftool.c:694
-msgid "do not prompt before launching a diff tool"
-msgstr "đừng nhắc khi khởi chạy công cụ diff"
+msgid "do not print results to stdout (useful with --verify)"
+msgstr ""
+"không hiển thị kết quả ra đầu ra chuẩn (stdout) (chỉ hữu dụng với --verify)"
 
-#: builtin/difftool.c:699
-msgid "use symlinks in dir-diff mode"
-msgstr "dùng liên kết mềm trong diff-thư-mục"
+msgid "show refs from stdin that aren't in local repository"
+msgstr ""
+"hiển thị các tham chiếu từ đầu vào tiêu chuẩn (stdin) cái mà không ở kho nội "
+"bộ"
 
-#: builtin/difftool.c:700
-msgid "tool"
-msgstr "công cụ"
+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/difftool.c:701
-msgid "use the specified diff tool"
-msgstr "dùng công cụ diff đã cho"
+msgid "this worktree is not sparse"
+msgstr "cây làm việc này không phải là sparse"
 
-#: builtin/difftool.c:703
-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“"
+msgid "this worktree is not sparse (sparse-checkout file may not exist)"
+msgstr ""
+"không thể phân tích cú pháp cây làm việc này (tập tin sparse-checkout có lẽ "
+"không tồn tại)"
 
-#: builtin/difftool.c:706
+#, c-format
 msgid ""
-"make 'git-difftool' exit when an invoked diff tool returns a non-zero exit "
-"code"
-msgstr "làm cho “git-difftool” thoát khi gọi công cụ diff trả về mã khác không"
-
-#: builtin/difftool.c:709
-msgid "specify a custom command for viewing diffs"
-msgstr "chỉ định một lệnh tùy ý để xem diff"
+"directory '%s' contains untracked files, but is not in the sparse-checkout "
+"cone"
+msgstr ""
+"thư mục “%s” có chứa các tập tin chưa được theo dõi, nhưng lại không trong "
+"“sparse-checkout cone”"
 
-#: builtin/difftool.c:710
-msgid "passed to `diff`"
-msgstr "chuyển cho “diff”"
+#, c-format
+msgid "failed to remove directory '%s'"
+msgstr "gặp lỗi khi gỡ bỏ thư mục \"%s\""
 
-#: builtin/difftool.c:726
-msgid "difftool requires worktree or --no-index"
-msgstr "difftool cần cây làm việc hoặc --no-index"
+msgid "failed to create directory for sparse-checkout file"
+msgstr "gặp lỗi khi tạo thư mục cho tập tin sparse-checkout"
 
-#: builtin/difftool.c:745
-msgid "no <tool> given for --tool=<tool>"
-msgstr "chưa đưa ra <công_cụ> cho --tool=<công_cụ>"
+msgid "failed to initialize worktree config"
+msgstr "gặp lỗi khi khởi tạo cấu hình cây làm việc"
 
-#: builtin/difftool.c:752
-msgid "no <cmd> given for --extcmd=<cmd>"
-msgstr "chưa đưa ra <lệnh> cho --extcmd=<lệnh>"
+msgid "failed to modify sparse-index config"
+msgstr "gặp lỗi khi sửa cấu hình \"sparse-index\""
 
-#: builtin/env--helper.c:6
-msgid "git env--helper --type=[bool|ulong] <options> <env-var>"
-msgstr "git env--helper --type=[bool|ulong] <các tùy chọn> <env-var>"
+msgid "initialize the sparse-checkout in cone mode"
+msgstr "khởi tạo sparse-checkout trong chế độ nón"
 
-#: builtin/env--helper.c:46
-msgid "default for git_env_*(...) to fall back on"
-msgstr "mặc định cho git_env_*(…) để quay về"
+msgid "toggle the use of a sparse index"
+msgstr "bật tắt việc sử dụng một \"sparse index\""
 
-#: builtin/env--helper.c:48
-msgid "be quiet only use git_env_*() value as exit code"
-msgstr "im lặng chỉ khi dung giá trị git_env_*() làm mã thoát"
+#, 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”"
 
-#: builtin/env--helper.c:67
 #, 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“"
+msgid "failed to open '%s'"
+msgstr "gặp lỗi khi mở “%s”"
 
-#: builtin/env--helper.c:82
 #, c-format
-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“"
+msgid "could not normalize path %s"
+msgstr "không thể thường hóa đường dẫn “%s”"
 
-#: builtin/fast-export.c:29
-msgid "git fast-export [<rev-list-opts>]"
-msgstr "git fast-export [<rev-list-opts>]"
+#, c-format
+msgid "unable to unquote C-style string '%s'"
+msgstr "không thể bỏ trích dẫn chuỗi kiểu C “%s”"
 
-#: builtin/fast-export.c:843
-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."
+msgid "unable to load existing sparse-checkout patterns"
+msgstr "không thể tải các mẫu sparse-checkout"
 
-#: builtin/fast-export.c:1152
-msgid "--anonymize-map token cannot be empty"
-msgstr "--anonymize-map thẻ không thể là rỗng"
+msgid "existing sparse-checkout patterns do not use cone mode"
+msgstr "đặt các mẫu sparse-checkout sẵn có không sử dụng chế độ cone"
 
-#: builtin/fast-export.c:1171
-msgid "show progress after <n> objects"
-msgstr "hiển thị tiến triển sau <n> đối tượng"
+msgid "please run from the toplevel directory in non-cone mode"
+msgstr "vui lòng chạy từ thư mục mức cao nhất trong chế độ non-cone"
 
-#: builtin/fast-export.c:1173
-msgid "select handling of signed tags"
-msgstr "chọn điều khiển của thẻ đã ký"
+msgid "specify directories rather than patterns (no leading slash)"
+msgstr "chỉ định các thư mục thay mẫu (không có dấu gạch chéo đứng đầu)"
 
-#: builtin/fast-export.c:1176
-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"
+msgid ""
+"specify directories rather than patterns.  If your directory starts with a "
+"'!', pass --skip-checks"
+msgstr ""
+"chỉ định các thư mục thay mẫu. Nếu thư mục của bạn bắt đầu với một '!', "
+"chuyển qua --skip-checks"
 
-#: builtin/fast-export.c:1179
-msgid "select handling of commit messages in an alternate encoding"
+msgid ""
+"specify directories rather than patterns.  If your directory really has any "
+"of '*?[]\\' in it, pass --skip-checks"
 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ế"
+"chỉ định các thư mục thay mẫu. Nếu thư mục của bạn đã sẵn có chứa một trong "
+"số bất kỳ '*?[]\\', chuyển qua --skip-checks"
 
-#: builtin/fast-export.c:1182
-msgid "dump marks to this file"
-msgstr "đổ các đánh dấu này vào tập-tin"
+#, c-format
+msgid ""
+"'%s' is not a directory; to treat it as a directory anyway, rerun with --"
+"skip-checks"
+msgstr ""
+"'%s' không phải là một thư mục; để vẫn coi nó là một thư mục hãy chạy với --"
+"skip-checks"
 
-#: builtin/fast-export.c:1184
-msgid "import marks from this file"
-msgstr "nhập vào đánh dấu từ tập tin này"
+#, c-format
+msgid ""
+"pass a leading slash before paths such as '%s' if you want a single file "
+"(see NON-CONE PROBLEMS in the git-sparse-checkout manual)."
+msgstr ""
+"chuyển một dấu xổ chéo dẫn đầu đường dẫn như là '%s' nếu bạn muốn một tập "
+"tin đơn (xem NON-CONE PROBLEMS trong hướng dẫn sử dụng git-sparse-checkout)."
 
-#: builtin/fast-export.c:1188
-msgid "import marks from this file if it exists"
-msgstr "nhập vào đánh dấu từ tập tin sẵn có"
+msgid "git sparse-checkout add [--skip-checks] (--stdin | <patterns>)"
+msgstr "git sparse-checkout add [--skip-checks] (--stdin | <các mẫu>)"
 
-#: builtin/fast-export.c:1190
-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"
+msgid ""
+"skip some sanity checks on the given paths that might give false positives"
+msgstr ""
+"bỏ qua một số kiểm tra đúng mục trên đường dẫn đã cho cái mà có thể đưa ra "
+"xác thực sai"
 
-#: builtin/fast-export.c:1192
-msgid "output full tree for each commit"
-msgstr "xuất ra toàn bộ cây cho mỗi lần chuyển giao"
+msgid "read patterns from standard in"
+msgstr "đọc các mẫu từ đầu vào tiêu chuẩn"
 
-#: builtin/fast-export.c:1194
-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"
+msgid "no sparse-checkout to add to"
+msgstr "không có sparse-checkout để thêm vào"
 
-#: builtin/fast-export.c:1195
-msgid "skip output of blob data"
-msgstr "bỏ qua kết xuất của dữ liệu blob"
+msgid ""
+"git sparse-checkout set [--[no-]cone] [--[no-]sparse-index] [--skip-checks] "
+"(--stdin | <patterns>)"
+msgstr ""
+"git sparse-checkout set [--[no-]cone] [--[no-]sparse-index] [--skip-checks] "
+"(--stdin | <các mẫu>)"
 
-#: builtin/fast-export.c:1196 builtin/log.c:1860
-msgid "refspec"
-msgstr "refspec"
+msgid "must be in a sparse-checkout to reapply sparsity patterns"
+msgstr "phải trong một sparse-checkout để áp dụng lại các mẫu sparse"
 
-#: builtin/fast-export.c:1197
-msgid "apply refspec to exported refs"
-msgstr "áp dụng refspec cho refs đã xuất"
+msgid "error while refreshing working directory"
+msgstr "gặp lỗi khi đọc lại thư mục làm việc"
 
-#: builtin/fast-export.c:1198
-msgid "anonymize output"
-msgstr "kết xuất anonymize"
+msgid "git stash list [<options>]"
+msgstr "git stash list [<các tùy chọn>]"
 
-#: builtin/fast-export.c:1199
-msgid "from:to"
-msgstr "từ:đến"
+msgid "git stash show [<options>] [<stash>]"
+msgstr "git stash show [<các tùy chọn>] <stash>"
 
-#: builtin/fast-export.c:1200
-msgid "convert <from> to <to> in anonymized output"
-msgstr "chuyển đổi <from> sang <to> đầu ra ẩn danh"
+msgid "git stash drop [-q|--quiet] [<stash>]"
+msgstr "git stash drop [-q|--quiet] [<stash>]"
 
-#: builtin/fast-export.c:1203
-msgid "reference parents which are not in fast-export stream by object id"
-msgstr ""
-"các cha mẹ tham chiếu cái mà không trong luồng dữ liệu fast-export bởi mã id "
-"đối tượng"
+msgid "git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]"
+msgstr "git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]"
 
-#: builtin/fast-export.c:1205
-msgid "show original object ids of blobs/commits"
-msgstr "hiển thị các mã id nguyên gốc của blobs/commits"
+msgid "git stash branch <branchname> [<stash>]"
+msgstr "git stash branch <tên-nhánh> [<stash>]"
 
-#: builtin/fast-export.c:1207
-msgid "label tags with mark ids"
-msgstr "gắn thẻ với các mã ID đánh dấu"
+msgid ""
+"git stash [push [-p|--patch] [-S|--staged] [-k|--[no-]keep-index] [-q|--"
+"quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <message>]\n"
+"          [--pathspec-from-file=<file> [--pathspec-file-nul]]\n"
+"          [--] [<pathspec>...]]"
+msgstr ""
+"git stash [push [-p|--patch] [-S|--staged] [-k|--[no-]keep-index] [-q|--"
+"quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <ghi chú>]\n"
+"          [--pathspec-from-file=<tập_tin> [--pathspec-file-nul]]\n"
+"          [--] [<đặc/tả/đường/dẫn>…]]"
 
-#: builtin/fast-import.c:3097
-#, c-format
-msgid "Missing from marks for submodule '%s'"
-msgstr "Thiếu các đánh dấu cho mô-đun-con “%s”"
+msgid ""
+"git stash save [-p|--patch] [-S|--staged] [-k|--[no-]keep-index] [-q|--"
+"quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [<message>]"
+msgstr ""
+"git stash save [-p|--patch] [-S|--staged] [-k|--[no-]keep-index] [-q|--"
+"quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [<ghi chú>]"
 
-#: builtin/fast-import.c:3099
-#, c-format
-msgid "Missing to marks for submodule '%s'"
-msgstr "Thiếu đánh dấu cho mô-đun-con “%s”"
+msgid "git stash pop [--index] [-q|--quiet] [<stash>]"
+msgstr "git stash pop [--index] [-q|--quiet] [<stash>]"
 
-#: builtin/fast-import.c:3234
-#, c-format
-msgid "Expected 'mark' command, got %s"
-msgstr "Cần lệnh “mark”, nhưng lại nhận được %s"
+msgid "git stash apply [--index] [-q|--quiet] [<stash>]"
+msgstr "git stash apply [--index] [-q|--quiet] [<stash>]"
 
-#: builtin/fast-import.c:3239
-#, c-format
-msgid "Expected 'to' command, got %s"
-msgstr "Cần lệnh “to”, nhưng lại nhận được %s"
+msgid "git stash store [-m|--message <message>] [-q|--quiet] <commit>"
+msgstr "git stash store [-m|--message <ghi chú>] [-q|--quiet] <commit>"
 
-#: builtin/fast-import.c:3331
-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"
+msgid ""
+"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <message>]\n"
+"          [--] [<pathspec>...]]"
+msgstr ""
+"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <lời nhắn>]\n"
+"          [--] [<đặc/tả/đường/dẫn>…]]"
 
-#: builtin/fast-import.c:3386
-#, c-format
-msgid "feature '%s' forbidden in input without --allow-unsafe-features"
+msgid ""
+"git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"               [-u|--include-untracked] [-a|--all] [<message>]"
 msgstr ""
-"tính năng “%s” bị cấm chỉ trong đầu vào mà không có --allow-unsafe-features"
+"git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"               [-u|--include-untracked] [-a|--all] [<ghi chú>]"
 
-#: builtin/fetch-pack.c:246
 #, c-format
-msgid "Lockfile created but not reported: %s"
-msgstr "Tập tin khóa đã được tạo nhưng chưa được báo cáo: %s"
-
-#: builtin/fetch.c:36
-msgid "git fetch [<options>] [<repository> [<refspec>...]]"
-msgstr "git fetch [<các tùy chọn>] [<kho-chứa> [<refspec>…]]"
-
-#: builtin/fetch.c:37
-msgid "git fetch [<options>] <group>"
-msgstr "git fetch [<các tùy chọn>] [<nhóm>"
-
-#: builtin/fetch.c:38
-msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
-msgstr "git fetch --multiple [<các tùy chọn>] [(<kho> | <nhóm>)…]"
+msgid "'%s' is not a stash-like commit"
+msgstr "“%s” không phải là lần chuyển giao kiểu-stash (cất đi)"
 
-#: builtin/fetch.c:39
-msgid "git fetch --all [<options>]"
-msgstr "git fetch --all [<các tùy chọn>]"
+#, c-format
+msgid "Too many revisions specified:%s"
+msgstr "Chỉ ra quá nhiều điểm xét duyệt: %s"
 
-#: builtin/fetch.c:124
-msgid "fetch.parallel cannot be negative"
-msgstr "fetch.parallel không thể âm"
+msgid "No stash entries found."
+msgstr "Không tìm thấy các mục tạm cất (stash) nào."
 
-#: builtin/fetch.c:147 builtin/pull.c:189
-msgid "fetch from all remotes"
-msgstr "lấy về từ tất cả các máy chủ"
+#, c-format
+msgid "%s is not a valid reference"
+msgstr "“%s” không phải một tham chiếu hợp lệ"
 
-#: builtin/fetch.c:149 builtin/pull.c:249
-msgid "set upstream for git pull/fetch"
-msgstr "đặt thượng nguồn cho git pull/fetch"
+msgid "git stash clear with arguments is unimplemented"
+msgstr "git stash clear với các tham số là chưa được thực hiện"
 
-#: builtin/fetch.c:151 builtin/pull.c:192
-msgid "append to .git/FETCH_HEAD instead of overwriting"
-msgstr "nối thêm vào .git/FETCH_HEAD thay vì ghi đè lên nó"
+#, c-format
+msgid ""
+"WARNING: Untracked file in way of tracked file!  Renaming\n"
+"            %s -> %s\n"
+"         to make room.\n"
+msgstr ""
+"CẢNH BÁO: Tệp chưa được theo dõi theo cách của tệp được theo dõi!  Đổi tên\n"
+"            %s -> %s\n"
+"         để nhường chỗ.\n"
 
-#: builtin/fetch.c:153
-msgid "use atomic transaction to update references"
-msgstr "sử dụng giao dịch hạt nhân bên phía máy chủ"
+msgid "cannot apply a stash in the middle of a merge"
+msgstr "không thể áp dụng một stash ở giữa của quá trình hòa trộn"
 
-#: builtin/fetch.c:155 builtin/pull.c:195
-msgid "path to upload pack on remote end"
-msgstr "đường dẫn đến gói tải lên trên máy chủ cuối"
+#, c-format
+msgid "could not generate diff %s^!."
+msgstr "không thể tạo diff %s^!."
 
-#: builtin/fetch.c:156
-msgid "force overwrite of local reference"
-msgstr "ép buộc ghi đè lên tham chiếu nội bộ"
+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/fetch.c:158
-msgid "fetch from multiple remotes"
-msgstr "lấy từ nhiều máy chủ cùng lúc"
+msgid "could not save index tree"
+msgstr "không thể ghi lại cây chỉ mục"
 
-#: builtin/fetch.c:160 builtin/pull.c:199
-msgid "fetch all tags and associated objects"
-msgstr "lấy tất cả các thẻ cùng với các đối tượng liên quan đến nó"
+#, c-format
+msgid "Merging %s with %s"
+msgstr "Đang hòa trộn %s với %s"
 
-#: builtin/fetch.c:162
-msgid "do not fetch all tags (--no-tags)"
-msgstr "không lấy tất cả các thẻ (--no-tags)"
+msgid "Index was not unstashed."
+msgstr "Bảng mục lục đã không được bỏ stash."
 
-#: builtin/fetch.c:164
-msgid "number of submodules fetched in parallel"
-msgstr "số lượng mô-đun-con được lấy đồng thời"
+msgid "could not restore untracked files from stash"
+msgstr "không thể phục hồi các tập tin chưa theo dõi từ mục cất đi (stash)"
 
-#: builtin/fetch.c:166
-msgid "modify the refspec to place all refs within refs/prefetch/"
-msgstr ""
-"sửa đặc tả đường dẫn cho các tham chiếu mọi chỗ có trong refs/prefetch/"
+msgid "attempt to recreate the index"
+msgstr "gặp lỗi đọc bảng mục lục"
 
-#: builtin/fetch.c:168 builtin/pull.c:202
-msgid "prune remote-tracking branches no longer on remote"
-msgstr ""
-"cắt cụt (prune) các nhánh “remote-tracking” không còn tồn tại trên máy chủ "
-"nữa"
+#, c-format
+msgid "Dropped %s (%s)"
+msgstr "Đã xóa %s (%s)"
 
-#: builtin/fetch.c:170
-msgid "prune local tags no longer on remote and clobber changed tags"
-msgstr "cắt xém các thẻ nội bộ không còn ở máy chủ và xóa các thẻ đã thay đổi"
+#, c-format
+msgid "%s: Could not drop stash entry"
+msgstr "%s: Không thể xóa bỏ mục stash"
 
-#: builtin/fetch.c:171 builtin/fetch.c:199 builtin/pull.c:123
-msgid "on-demand"
-msgstr "khi-cần"
+#, c-format
+msgid "'%s' is not a stash reference"
+msgstr "”%s” không phải tham chiếu đến stash"
 
-#: builtin/fetch.c:172
-msgid "control recursive fetching of submodules"
-msgstr "điều khiển việc lấy về đệ quy trong các mô-đun-con"
+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/fetch.c:177
-msgid "write fetched references to the FETCH_HEAD file"
-msgstr "ghi các tham chiếu lấy về vào tập tin FETCH_HEAD"
+msgid "No branch name specified"
+msgstr "Chưa chỉ ra tên của nhánh"
 
-#: builtin/fetch.c:178 builtin/pull.c:210
-msgid "keep downloaded pack"
-msgstr "giữ lại gói đã tải về"
+msgid "failed to parse tree"
+msgstr "gặp lỗi khi phân tích cây"
 
-#: builtin/fetch.c:180
-msgid "allow updating of HEAD ref"
-msgstr "cho phép cập nhật th.chiếu HEAD"
+msgid "failed to unpack trees"
+msgstr "gặp lỗi khi tháo dỡ cây"
 
-#: builtin/fetch.c:183 builtin/fetch.c:189 builtin/pull.c:213
-#: builtin/pull.c:222
-msgid "deepen history of shallow clone"
-msgstr "làm sâu hơn lịch sử của bản sao"
+msgid "include untracked files in the stash"
+msgstr "bao gồm các tập tin không được theo dõi trong stash"
 
-#: builtin/fetch.c:185 builtin/pull.c:216
-msgid "deepen history of shallow repository based on time"
-msgstr "làm sâu hơn lịch sử của kho bản sao shallow dựa trên thời gian"
+msgid "only show untracked files in the stash"
+msgstr "chỉ hiển thị các tập tin không được theo dõi trong stash"
 
-#: builtin/fetch.c:191 builtin/pull.c:225
-msgid "convert to a complete repository"
-msgstr "chuyển đổi hoàn toàn sang kho git"
+#, c-format
+msgid "Cannot update %s with %s"
+msgstr "Không thể cập nhật %s với %s"
 
-#: builtin/fetch.c:194
-msgid "re-fetch without negotiating common commits"
-msgstr "re-fetch mà không dàn xếp các lần chuyển giao chung"
+msgid "stash message"
+msgstr "phần chú thích cho stash"
 
-#: builtin/fetch.c:197
-msgid "prepend this to submodule path output"
-msgstr "soạn sẵn cái này cho kết xuất đường dẫn mô-đun-con"
+msgid "\"git stash store\" requires one <commit> argument"
+msgstr "\"git stash store\" cần một đối số <lần chuyển giao>"
 
-#: builtin/fetch.c:200
-msgid ""
-"default for recursive fetching of submodules (lower priority than config "
-"files)"
-msgstr ""
-"mặc định cho việc lấy đệ quy các mô-đun-con (có mức ưu tiên thấp hơn các tập "
-"tin cấu hình config)"
+msgid "No staged changes"
+msgstr "Không có thay đổi đã được đưa lên bệ phóng"
 
-#: builtin/fetch.c:204 builtin/pull.c:228
-msgid "accept refs that update .git/shallow"
-msgstr "chấp nhận tham chiếu cập nhật .git/shallow"
+msgid "No changes selected"
+msgstr "Chưa có thay đổi nào được chọn"
 
-#: builtin/fetch.c:205 builtin/pull.c:230
-msgid "refmap"
-msgstr "refmap"
+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/fetch.c:206 builtin/pull.c:231
-msgid "specify fetch refmap"
-msgstr "chỉ ra refmap cần lấy về"
+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/fetch.c:213 builtin/pull.c:244
-msgid "report that we have only objects reachable from this object"
-msgstr ""
-"báo cáo rằng chúng ta chỉ có các đối tượng tiếp cận được từ đối tượng này"
+msgid "Cannot save the untracked files"
+msgstr "Không thể ghi lại các tập tin chưa theo dõi"
 
-#: builtin/fetch.c:215
-msgid "do not fetch a packfile; instead, print ancestors of negotiation tips"
-msgstr ""
-"không lấy về một packfile; thay vào đó, hãy in tổ tiên của đỉnh đàm phán"
+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/fetch.c:218 builtin/fetch.c:220
-msgid "run 'maintenance --auto' after fetching"
-msgstr "chạy “maintenance --auto” sau khi lấy về"
+msgid "Cannot save the current staged state"
+msgstr "Không thể ghi lại trạng thái bệ phóng hiện hành"
 
-#: builtin/fetch.c:222 builtin/pull.c:247
-msgid "check for forced-updates on all updated branches"
-msgstr "kiểm cho các-cập-nhật-bắt-buộc trên mọi nhánh đã cập nhật"
+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/fetch.c:224
-msgid "write the commit-graph after fetching"
-msgstr "ghi ra đồ thị các lần chuyển giao sau khi lấy về"
+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/fetch.c:226
-msgid "accept refspecs from stdin"
-msgstr "chấp nhận tham chiếu từ đầu vào tiêu chuẩn"
+msgid "Can't use --staged and --include-untracked or --all at the same time"
+msgstr "Không thể dùng --staged và --include-untracked hay --all cùng một lúc"
 
-#: builtin/fetch.c:618
-msgid "couldn't find remote ref HEAD"
-msgstr "không thể tìm thấy HEAD tham chiếu máy chủ"
+msgid "Did you forget to 'git add'?"
+msgstr "Có lẽ bạn đã quên “git add ” phải không?"
 
-#: builtin/fetch.c:893
-#, c-format
-msgid "object %s not found"
-msgstr "không tìm thấy đối tượng %s"
+msgid "No local changes to save"
+msgstr "Không có thay đổi nội bộ nào được ghi lại"
 
-#: builtin/fetch.c:897
-msgid "[up to date]"
-msgstr "[đã cập nhật]"
+msgid "Cannot initialize stash"
+msgstr "Không thể khởi tạo stash"
 
-#: builtin/fetch.c:909 builtin/fetch.c:927 builtin/fetch.c:999
-msgid "[rejected]"
-msgstr "[Bị từ chối]"
+msgid "Cannot save the current status"
+msgstr "Không thể ghi lại trạng thái hiện hành"
 
-#: builtin/fetch.c:911
-msgid "can't fetch in current branch"
-msgstr "không thể fetch (lấy) về nhánh hiện hành"
+#, 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/fetch.c:912
-msgid "checked out in another worktree"
-msgstr "lấy ra trong cây làm việc khác"
+msgid "Cannot remove worktree changes"
+msgstr "Không thể gỡ bỏ các thay đổi cây-làm-việc"
 
-#: builtin/fetch.c:922
-msgid "[tag update]"
-msgstr "[cập nhật thẻ]"
+msgid "keep index"
+msgstr "giữ nguyên bảng mục lục"
 
-#: builtin/fetch.c:923 builtin/fetch.c:960 builtin/fetch.c:982
-#: builtin/fetch.c:994
-msgid "unable to update local ref"
-msgstr "không thể cập nhật tham chiếu nội bộ"
+msgid "stash staged changes only"
+msgstr "chỉ tạm cất đi các thay đổi đã đưa lên bệ phóng"
 
-#: builtin/fetch.c:927
-msgid "would clobber existing tag"
-msgstr "nên xóa chồng các thẻ có sẵn"
+msgid "stash in patch mode"
+msgstr "cất đi ở chế độ miếng vá"
 
-#: builtin/fetch.c:949
-msgid "[new tag]"
-msgstr "[thẻ mới]"
+msgid "quiet mode"
+msgstr "chế độ im lặng"
 
-#: builtin/fetch.c:952
-msgid "[new branch]"
-msgstr "[nhánh mới]"
+msgid "include untracked files in stash"
+msgstr "bao gồm các tập tin không được theo dõi trong stash"
 
-#: builtin/fetch.c:955
-msgid "[new ref]"
-msgstr "[ref (tham chiếu) mới]"
+msgid "include ignore files"
+msgstr "bao gồm các tập tin bị bỏ qua"
 
-#: builtin/fetch.c:994
-msgid "forced update"
-msgstr "cưỡng bức cập nhật"
+msgid "skip and remove all lines starting with comment character"
+msgstr "giữ và xóa bỏ mọi dòng bắt đầu bằng ký tự ghi chú"
 
-#: builtin/fetch.c:999
-msgid "non-fast-forward"
-msgstr "không-phải-chuyển-tiếp-nhanh"
+msgid "prepend comment character and space to each line"
+msgstr "treo trước ký tự ghi chú và ký tự khoảng trắng cho từng dòng"
 
-#: builtin/fetch.c:1102
-msgid ""
-"fetch normally indicates which branches had a forced update,\n"
-"but that check has been disabled; to re-enable, use '--show-forced-updates'\n"
-"flag or run 'git config fetch.showForcedUpdates true'"
-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”."
+#, c-format
+msgid "Expecting a full ref name, got %s"
+msgstr "Cần tên tham chiếu dạng đầy đủ, nhưng lại nhận được %s"
 
-#: builtin/fetch.c:1106
 #, c-format
 msgid ""
-"it took %.2f seconds to check forced updates; you can use\n"
-"'--no-show-forced-updates' or run 'git config fetch.showForcedUpdates "
-"false'\n"
-"to avoid this check\n"
+"could not look up configuration '%s'. Assuming this repository is its own "
+"authoritative upstream."
 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"
-"để tránh kiểm tra này\n"
+"không thể tìm thấy cấu hình “%s”. Coi rằng đây là kho thượng nguồn có quyền "
+"sở hữu chính nó."
 
-#: builtin/fetch.c:1136
-#, c-format
-msgid "%s did not send all necessary objects\n"
-msgstr "%s đã không gửi tất cả các đối tượng cần thiết\n"
+msgid "alternative anchor for relative paths"
+msgstr "điểm neo thay thế cho các đường dẫn tương đối"
+
+msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
+msgstr "git submodule--helper list [--prefix=</đường/dẫn>] [</đường/dẫn>…]"
 
-#: builtin/fetch.c:1156
 #, c-format
-msgid "rejected %s because shallow roots are not allowed to be updated"
-msgstr "từ chối %s bởi vì các gốc nông thì không được phép cập nhật"
+msgid "No url found for submodule path '%s' in .gitmodules"
+msgstr "Không tìm thấy url cho đường dẫn mô-đun-con “%s” trong .gitmodules"
 
-#: builtin/fetch.c:1259 builtin/fetch.c:1418
 #, c-format
-msgid "From %.*s\n"
-msgstr "Từ %.*s\n"
+msgid "Entering '%s'\n"
+msgstr "Đang vào “%s”\n"
 
-#: builtin/fetch.c:1269
 #, c-format
 msgid ""
-"some local refs could not be updated; try running\n"
-" 'git remote prune %s' to remove any old, conflicting branches"
+"run_command returned non-zero status for %s\n"
+"."
 msgstr ""
-"một số tham chiếu nội bộ không thể được cập nhật; hãy thử chạy\n"
-" “git remote prune %s” để bỏ đi những nhánh cũ, hay bị xung đột"
+"run_command trả về trạng thái khác không cho %s\n"
+"."
 
-#: builtin/fetch.c:1377
 #, c-format
-msgid "   (%s will become dangling)"
-msgstr "   (%s sẽ trở thành không đầu (không được quản lý))"
+msgid ""
+"run_command returned non-zero status while recursing in the nested "
+"submodules of %s\n"
+"."
+msgstr ""
+"run_command trả về trạng thái khác không trong khi đệ quy trong các mô-đun-"
+"con lồng nhau của %s\n"
+"."
 
-#: builtin/fetch.c:1378
-#, c-format
-msgid "   (%s has become dangling)"
-msgstr "   (%s đã trở thành không đầu (không được quản lý))"
+msgid "suppress output of entering each submodule command"
+msgstr "chặn kết xuất của từng lệnh mô-đun-con"
 
-#: builtin/fetch.c:1421
-msgid "[deleted]"
-msgstr "[đã xóa]"
+msgid "recurse into nested submodules"
+msgstr "đệ quy vào trong mô-đun-con lồng nhau"
 
-#: builtin/fetch.c:1422 builtin/remote.c:1153
-msgid "(none)"
-msgstr "(không)"
+msgid "git submodule--helper foreach [--quiet] [--recursive] [--] <command>"
+msgstr "git submodule--helper foreach [--quiet] [--recursive] [--]  <lệnh>"
 
-#: builtin/fetch.c:1446
 #, c-format
-msgid "refusing to fetch into branch '%s' checked out at '%s'"
-msgstr "từ chối lấy về vào nhánh “%s” đã được lấy ra tại “%s”"
+msgid "Failed to register url for submodule path '%s'"
+msgstr "Gặp lỗi khi đăng ký url cho đường dẫn mô-đun-con “%s”"
 
-#: builtin/fetch.c:1466
 #, c-format
-msgid "option \"%s\" value \"%s\" is not valid for %s"
-msgstr "tùy chọn \"%s\" có giá trị \"%s\" là không hợp lệ cho %s"
+msgid "Submodule '%s' (%s) registered for path '%s'\n"
+msgstr "Mô-đun-con “%s” (%s) được đăng ký cho đường dẫn “%s”\n"
 
-#: builtin/fetch.c:1469
 #, c-format
-msgid "option \"%s\" is ignored for %s\n"
-msgstr "tùy chọn \"%s\" bị bỏ qua với %s\n"
+msgid "warning: command update mode suggested for submodule '%s'\n"
+msgstr "cảnh báo: chế độ lệnh cập nhật được gợi ý cho mô-đun-con “%s”\n"
 
-#: builtin/fetch.c:1496
 #, c-format
-msgid "the object %s does not exist"
-msgstr "đối tượng “%s” không tồn tại"
+msgid "Failed to register update mode for submodule path '%s'"
+msgstr "Gặp lỗi khi đăng ký chế độ cập nhật cho đường dẫn mô-đun-con “%s”"
 
-#: builtin/fetch.c:1748
-msgid "multiple branches detected, incompatible with --set-upstream"
-msgstr "phát hiện nhiều nhánh, không tương thích với --set-upstream"
+msgid "suppress output for initializing a submodule"
+msgstr "chặn kết xuất của khởi tạo một mô-đun-con"
+
+msgid "git submodule--helper init [<options>] [<path>]"
+msgstr "git submodule--helper init [<các tùy chọn>] [</đường/dẫn>]"
 
-#: builtin/fetch.c:1760
 #, c-format
-msgid ""
-"could not set upstream of HEAD to '%s' from '%s' when it does not point to "
-"any branch."
+msgid "no submodule mapping found in .gitmodules for path '%s'"
 msgstr ""
-"không thể đặt thượng nguồn của HEAD thành '%s' từ '%s' khi mà nó chẳng chỉ "
-"đến nhánh nào cả."
+"không tìm thấy ánh xạ (mapping) mô-đun-con trong .gitmodules cho đường dẫn "
+"“%s”"
 
-#: builtin/fetch.c:1773
-msgid "not setting upstream for a remote remote-tracking branch"
-msgstr "không cài đặt thượng nguồn cho một nhánh được theo dõi trên máy chủ"
+#, c-format
+msgid "could not resolve HEAD ref inside the submodule '%s'"
+msgstr "không thể phân giải tham chiếu HEAD bên trong mô-đun-con “%s”"
 
-#: builtin/fetch.c:1775
-msgid "not setting upstream for a remote tag"
-msgstr "không cài đặt thượng nguồn cho một thẻ nhánh trên máy chủ"
+#, c-format
+msgid "failed to recurse into submodule '%s'"
+msgstr "gặp lỗi khi đệ quy vào trong mô-đun-con “%s”"
 
-#: builtin/fetch.c:1777
-msgid "unknown branch type"
-msgstr "không hiểu kiểu nhánh"
+msgid "suppress submodule status output"
+msgstr "chặn kết xuất về tình trạng mô-đun-con"
 
-#: builtin/fetch.c:1779
 msgid ""
-"no source branch found;\n"
-"you need to specify exactly one branch with the --set-upstream option"
+"use commit stored in the index instead of the one stored in the submodule "
+"HEAD"
 msgstr ""
-"không tìm thấy nhánh nguồn.\n"
-"bạn cần phải chỉ định chính xác một nhánh với tùy chọn --set-upstream"
+"dùng lần chuyển giao lưu trong mục lục thay cho cái được lưu trong HEAD mô-"
+"đun-con"
+
+msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
+msgstr ""
+"git submodule status [--quiet] [--cached] [--recursive] [</đường/dẫn>…]"
+
+msgid "git submodule--helper name <path>"
+msgstr "git submodule--helper name </đường/dẫn>"
 
-#: builtin/fetch.c:1904 builtin/fetch.c:1967
 #, c-format
-msgid "Fetching %s\n"
-msgstr "Đang lấy “%s” về\n"
+msgid "* %s %s(blob)->%s(submodule)"
+msgstr ""
+"* %s %s(blob)->%s(\n"
+")"
 
-#: builtin/fetch.c:1914 builtin/fetch.c:1969
 #, c-format
-msgid "could not fetch %s"
-msgstr "không thể lấy “%s” về"
+msgid "* %s %s(submodule)->%s(blob)"
+msgstr "* %s %s(mô-đun-con)->%s(blob)"
 
-#: builtin/fetch.c:1926
 #, c-format
-msgid "could not fetch '%s' (exit code: %d)\n"
-msgstr "không thể lấy “%s” (mã thoát: %d)\n"
+msgid "%s"
+msgstr "%s"
 
-#: builtin/fetch.c:2030
-msgid ""
-"no remote repository specified; please specify either a URL or a\n"
-"remote name from which new revisions should be fetched"
-msgstr ""
-"chưa chỉ ra kho chứa máy chủ; xin hãy chỉ định hoặc là URL hoặc\n"
-"tên máy chủ từ cái mà những điểm xét duyệt mới có thể được fetch (lấy về)"
+#, c-format
+msgid "couldn't hash object from '%s'"
+msgstr "không thể băm đối tượng từ “%s”"
 
-#: builtin/fetch.c:2066
-msgid "you need to specify a tag name"
-msgstr "bạn cần chỉ định một tên thẻ"
+#, c-format
+msgid "unexpected mode %o\n"
+msgstr "gặp chế độ không như mong chờ %o\n"
 
-#: builtin/fetch.c:2156
-msgid "--negotiate-only needs one or more --negotiation-tip=*"
-msgstr "--negotiate-only cần một hay nhiều --negotiation-tip=* hơn"
+msgid "use the commit stored in the index instead of the submodule HEAD"
+msgstr "hùng lần chuyển giao đã lưu trong mục lục thay cho HEAD mô-đun-con"
 
-#: builtin/fetch.c:2160
-msgid "negative depth in --deepen is not supported"
-msgstr "mức sâu là số âm trong --deepen là không được hỗ trợ"
+msgid "compare the commit in the index with that in the submodule HEAD"
+msgstr "để so sánh lần trong mục lục với cái trong HEAD mô-đun-con"
 
-#: builtin/fetch.c:2169
-msgid "--unshallow on a complete repository does not make sense"
-msgstr "--unshallow trên kho hoàn chỉnh là không hợp lý"
+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”"
 
-#: builtin/fetch.c:2186
-msgid "fetch --all does not take a repository argument"
-msgstr "lệnh lấy về \"fetch --all\" không lấy đối số kho chứa"
+msgid "limit the summary size"
+msgstr "giới hạn kích cỡ tổng hợp"
 
-#: builtin/fetch.c:2188
-msgid "fetch --all does not make sense with refspecs"
-msgstr "lệnh lấy về \"fetch --all\" không hợp lý với refspecs"
+msgid "git submodule--helper summary [<options>] [<commit>] [--] [<path>]"
+msgstr ""
+"git submodule--helper summary [<các tùy chọn>] [<lần_chuyển_giao>] [--] [</"
+"đường/dẫn>]"
+
+msgid "could not fetch a revision for HEAD"
+msgstr "không thể lấy về một điểm xem xét cho HEAD"
 
-#: builtin/fetch.c:2197
 #, c-format
-msgid "no such remote or remote group: %s"
-msgstr "không có nhóm máy chủ hay máy chủ như thế: %s"
+msgid "Synchronizing submodule url for '%s'\n"
+msgstr "Url mô-đun-con đồng bộ hóa cho “%s”\n"
 
-#: builtin/fetch.c:2205
-msgid "fetching a group and specifying refspecs does not make sense"
-msgstr "việc lấy về một nhóm và chỉ định refspecs là không hợp lý"
+#, c-format
+msgid "failed to register url for submodule path '%s'"
+msgstr "gặp lỗi khi đăng ký url cho đường dẫn mô-đun-con “%s”"
+
+#, c-format
+msgid "failed to get the default remote for submodule '%s'"
+msgstr "gặp lỗi khi lấy máy chủ mặc định cho mô-đun-con “%s”"
 
-#: builtin/fetch.c:2221
-msgid "must supply remote when using --negotiate-only"
-msgstr "phải cung cấp máy chủ khi sử dụng --negotiate-only"
+#, c-format
+msgid "failed to update remote for submodule '%s'"
+msgstr "gặp lỗi khi cập nhật cho mô-đun-con “%s”"
 
-#: builtin/fetch.c:2226
-msgid "protocol does not support --negotiate-only, exiting"
-msgstr "giao thức không hỗ trợ --negotiate-only, nên thoát"
+msgid "suppress output of synchronizing submodule url"
+msgstr "chặn kết xuất của url mô-đun-con đồng bộ"
+
+msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
+msgstr "git submodule--helper sync [--quiet] [--recursive] [</đường/dẫn>]"
 
-#: builtin/fetch.c:2246
+#, c-format
 msgid ""
-"--filter can only be used with the remote configured in extensions."
-"partialclone"
+"Submodule work tree '%s' contains a .git directory. This will be replaced "
+"with a .git file by using absorbgitdirs."
 msgstr ""
-"--filter chỉ có thể được dùng với máy chủ được cấu hình bằng extensions."
-"partialclone"
-
-#: builtin/fetch.c:2250
-msgid "--atomic can only be used when fetching from one remote"
-msgstr "--atomic chỉ có thể dùng khi lấy về từ một máy chủ"
-
-#: builtin/fetch.c:2254
-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ủ"
+"Cây làm việc mô-đun-con “%s” có chứa thư mục .git. Việc này sẽ được thay thế "
+"với một tập tin .git bằng các sử dụng absorbgitdirs."
 
-#: builtin/fmt-merge-msg.c:7
+#, c-format
 msgid ""
-"git fmt-merge-msg [-m <message>] [--log[=<n>] | --no-log] [--file <file>]"
+"Submodule work tree '%s' contains local modifications; use '-f' to discard "
+"them"
 msgstr ""
-"git fmt-merge-msg [-m <chú_thích>] [--log[=<n>] | --no-log] [--file <tập-"
-"tin>]"
+"Cây làm việc mô-đun-con “%s” chứa các thay đổi nội bộ; hãy dùng “-f” để loại "
+"bỏ chúng đi"
 
-#: builtin/fmt-merge-msg.c:19
-msgid "populate log with at most <n> entries from shortlog"
-msgstr "gắn nhật ký với ít nhất <n> mục từ lệnh “shortlog”"
+#, c-format
+msgid "Cleared directory '%s'\n"
+msgstr "Đã xóa thư mục “%s”\n"
 
-#: builtin/fmt-merge-msg.c:22
-msgid "alias for --log (deprecated)"
-msgstr "bí danh cho --log (không được dùng)"
+#, c-format
+msgid "Could not remove submodule work tree '%s'\n"
+msgstr "Không thể gỡ bỏ cây làm việc mô-đun-con “%s”\n"
 
-#: builtin/fmt-merge-msg.c:25
-msgid "text"
-msgstr "văn bản"
+#, c-format
+msgid "could not create empty submodule directory %s"
+msgstr "không thể tạo thư mục mô-đun-con rỗng “%s”"
 
-#: builtin/fmt-merge-msg.c:26
-msgid "use <text> as start of message"
-msgstr "dùng <văn bản thường> để bắt đầu ghi chú"
+#, c-format
+msgid "Submodule '%s' (%s) unregistered for path '%s'\n"
+msgstr "Mô-đun-con “%s” (%s) được đăng ký cho đường dẫn “%s”\n"
 
-#: builtin/fmt-merge-msg.c:28
-msgid "use <name> instead of the real target branch"
-msgstr "dùng <tên> thay cho nhánh đích thật"
+msgid "remove submodule working trees even if they contain local changes"
+msgstr "gỡ bỏ cây làm việc của mô-đun-con ngay cả khi nó có thay đổi nội bộ"
 
-#: builtin/fmt-merge-msg.c:29
-msgid "file to read from"
-msgstr "tập tin để đọc dữ liệu từ đó"
+msgid "unregister all submodules"
+msgstr "bỏ đăng ký tất cả các trong mô-đun-con"
 
-#: builtin/for-each-ref.c:10
-msgid "git for-each-ref [<options>] [<pattern>]"
-msgstr "git for-each-ref [<các tùy chọn>] [<mẫu>]"
+msgid ""
+"git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
+msgstr ""
+"git submodule deinit [--quiet] [-f | --force] [--all | [--]  [</đường/dẫn>…]]"
 
-#: builtin/for-each-ref.c:11
-msgid "git for-each-ref [--points-at <object>]"
-msgstr "git for-each-ref [--points-at <đối tượng>]"
+msgid "Use '--all' if you really want to deinitialize all submodules"
+msgstr "Dùng “--all” nếu bạn thực sự muốn hủy khởi tạo mọi mô-đun-con"
 
-#: builtin/for-each-ref.c:12
-msgid "git for-each-ref [--merged [<commit>]] [--no-merged [<commit>]]"
+msgid ""
+"An alternate computed from a superproject's alternate is invalid.\n"
+"To allow Git to clone without an alternate in such a case, set\n"
+"submodule.alternateErrorStrategy to 'info' or, equivalently, clone with\n"
+"'--reference-if-able' instead of '--reference'."
 msgstr ""
-"git for-each-ref [--merged [<lần-chuyển-giao>]] [--no-merged [<lần-chuyển-"
-"giao>]]"
+"Một cái thay thế được tính toán từ một thay thế của siêu dự án là không hợp "
+"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 "
+"bằng\n"
+"“--reference-if-able” thay vì dùng “--reference”."
 
-#: builtin/for-each-ref.c:13
-msgid "git for-each-ref [--contains [<commit>]] [--no-contains [<commit>]]"
-msgstr ""
-"git for-each-ref [--contains [<lần-chuyển-giao>]] [--no-contains [<lần-"
-"chuyển-giao>]]"
+#, c-format
+msgid "submodule '%s' cannot add alternate: %s"
+msgstr "mô-đun-con “%s” không thể thêm thay thế: %s"
 
-#: builtin/for-each-ref.c:31
-msgid "quote placeholders suitably for shells"
-msgstr "trích dẫn để phù hợp cho hệ vỏ (shell)"
+#, c-format
+msgid "Value '%s' for submodule.alternateErrorStrategy is not recognized"
+msgstr "Giá trị “%s” cho submodule.alternateErrorStrategy không được thừa nhận"
 
-#: builtin/for-each-ref.c:33
-msgid "quote placeholders suitably for perl"
-msgstr "trích dẫn để phù hợp cho perl"
+#, c-format
+msgid "Value '%s' for submodule.alternateLocation is not recognized"
+msgstr "Giá trị “%s” cho submodule.alternateLocation không được thừa nhận"
 
-#: builtin/for-each-ref.c:35
-msgid "quote placeholders suitably for python"
-msgstr "trích dẫn để phù hợp cho python"
+#, 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"
 
-#: builtin/for-each-ref.c:37
-msgid "quote placeholders suitably for Tcl"
-msgstr "trích dẫn để phù hợp cho Tcl"
+#, c-format
+msgid "clone of '%s' into submodule path '%s' failed"
+msgstr "việc sao “%s” vào đường dẫn mô-đun-con “%s” gặp lỗi"
 
-#: builtin/for-each-ref.c:40
-msgid "show only <n> matched refs"
-msgstr "hiển thị chỉ <n> tham chiếu khớp"
+#, c-format
+msgid "directory not empty: '%s'"
+msgstr "thư mục không trống: “%s”"
 
-#: builtin/for-each-ref.c:42 builtin/tag.c:482
-msgid "respect format colors"
-msgstr "các màu định dạng lưu tâm"
+#, c-format
+msgid "could not get submodule directory for '%s'"
+msgstr "không thể lấy thư mục mô-đun-con cho “%s”"
 
-#: builtin/for-each-ref.c:45
-msgid "print only refs which points at the given object"
-msgstr "chỉ hiển thị các tham chiếu mà nó chỉ đến đối tượng đã cho"
+msgid "where the new submodule will be cloned to"
+msgstr "nhân bản mô-đun-con mới vào chỗ nào"
 
-#: builtin/for-each-ref.c:47
-msgid "print only refs that are merged"
-msgstr "chỉ hiển thị những tham chiếu mà nó được hòa trộn"
+msgid "name of the new submodule"
+msgstr "tên của mô-đun-con mới"
 
-#: builtin/for-each-ref.c:48
-msgid "print only refs that are not merged"
-msgstr "chỉ hiển thị những tham chiếu mà nó không được hòa trộn"
+msgid "url where to clone the submodule from"
+msgstr "url nơi mà nhân bản mô-đun-con từ đó"
 
-#: builtin/for-each-ref.c:49
-msgid "print only refs which contain the commit"
-msgstr "chỉ hiển thị những tham chiếu mà nó chứa lần chuyển giao"
+msgid "depth for shallow clones"
+msgstr "chiều sâu lịch sử khi tạo bản sao"
 
-#: builtin/for-each-ref.c:50
-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"
+msgid "force cloning progress"
+msgstr "ép buộc tiến trình nhân bản"
 
-#: builtin/for-each-repo.c:9
-msgid "git for-each-repo --config=<config> <command-args>"
-msgstr "git for-each-repo --config=<config> <command-args>"
+msgid "disallow cloning into non-empty directory"
+msgstr "làm đầy đủ dữ liệu cho bản sao vào trong một thư mục trống rỗng"
 
-#: builtin/for-each-repo.c:34
-msgid "config"
-msgstr "config"
+msgid ""
+"git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
+"<repository>] [--name <name>] [--depth <depth>] [--single-branch] [--filter "
+"<filter-spec>] --url <url> --path <path>"
+msgstr ""
+"git submodule--helper clone [--prefix=</đường/dẫn>] [--quiet] [--reference "
+"<kho>] [--name <tên>] [--depth <sâu>] [--single-branch] [--filter <filter-"
+"spec>] --url <url> --path </đường/dẫn>"
 
-#: builtin/for-each-repo.c:35
-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ữ"
+#, c-format
+msgid "Invalid update mode '%s' for submodule path '%s'"
+msgstr "Chế độ cập nhật “%s” không hợp lệ cho đường dẫn mô-đun-con “%s”"
 
-#: builtin/for-each-repo.c:43
-msgid "missing --config=<config>"
-msgstr "thiếu --config=<config>"
+#, c-format
+msgid "Invalid update mode '%s' configured for submodule path '%s'"
+msgstr ""
+"Chế độ cập nhật “%s” không hợp lệ được cấu hình cho đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:69 builtin/fsck.c:128 builtin/fsck.c:129
-msgid "unknown"
-msgstr "không hiểu"
+#, c-format
+msgid "Submodule path '%s' not initialized"
+msgstr "Đường dẫn mô-đun-con “%s” chưa được khởi tạo"
+
+msgid "Maybe you want to use 'update --init'?"
+msgstr "Có lẽ bạn là bạn muốn dùng \"update --init\" phải không?"
 
-#. TRANSLATORS: e.g. error in tree 01bfda: <more explanation>
-#: builtin/fsck.c:78 builtin/fsck.c:100
 #, c-format
-msgid "error in %s %s: %s"
-msgstr "lỗi trong %s %s: %s"
+msgid "Skipping unmerged submodule %s"
+msgstr "Bỏ qua các mô-đun-con chưa được hòa trộn %s"
 
-#. TRANSLATORS: e.g. warning in tree 01bfda: <more explanation>
-#: builtin/fsck.c:94
 #, c-format
-msgid "warning in %s %s: %s"
-msgstr "có cảnh báo trong %s %s: %s"
+msgid "Skipping submodule '%s'"
+msgstr "Bỏ qua mô-đun-con “%s”"
 
-#: builtin/fsck.c:124 builtin/fsck.c:127
 #, c-format
-msgid "broken link from %7s %s"
-msgstr "liên kết gãy từ %7s %s"
+msgid "Failed to clone '%s'. Retry scheduled"
+msgstr "Gặp lỗi khi nhân bản “%s”. Thử lại lịch trình"
 
-#: builtin/fsck.c:136
-msgid "wrong object type in link"
-msgstr "kiểu đối tượng sai trong liên kết"
+#, c-format
+msgid "Failed to clone '%s' a second time, aborting"
+msgstr "Gặp lỗi khi nhân bản “%s” lần thứ hai nên bãi bỏ"
 
-#: builtin/fsck.c:152
 #, c-format
-msgid ""
-"broken link from %7s %s\n"
-"              to %7s %s"
-msgstr ""
-"liên kết gãy từ %7s %s \n"
-"              tới %7s %s"
+msgid "Unable to checkout '%s' in submodule path '%s'"
+msgstr "Không thể lấy ra “%s” trong đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:264
 #, c-format
-msgid "missing %s %s"
-msgstr "thiếu %s %s"
+msgid "Unable to rebase '%s' in submodule path '%s'"
+msgstr "Không thể cải tổ “%s” trong đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:291
 #, c-format
-msgid "unreachable %s %s"
-msgstr "không tiếp cận được %s %s"
+msgid "Unable to merge '%s' in submodule path '%s'"
+msgstr "Không thể hòa trộn (merge) “%s” trong đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:311
 #, c-format
-msgid "dangling %s %s"
-msgstr "dangling %s %s"
+msgid "Execution of '%s %s' failed in submodule path '%s'"
+msgstr ""
+"Thực hiện không thành công lệnh “%s %s” trong đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:321
-msgid "could not create lost-found"
-msgstr "không thể tạo lost-found"
+#, c-format
+msgid "Submodule path '%s': checked out '%s'\n"
+msgstr "Đường dẫn mô-đun-con “%s”: đã checkout “%s”\n"
 
-#: builtin/fsck.c:332
 #, c-format
-msgid "could not finish '%s'"
-msgstr "không thể hoàn thành “%s”"
+msgid "Submodule path '%s': rebased into '%s'\n"
+msgstr "Đường dẫn mô-đun-con “%s”: được rebase vào trong “%s”\n"
 
-#: builtin/fsck.c:349
 #, c-format
-msgid "Checking %s"
-msgstr "Đang kiểm tra %s"
+msgid "Submodule path '%s': merged in '%s'\n"
+msgstr "Đường dẫn mô-đun-con “%s”: được hòa trộn vào “%s”\n"
 
-#: builtin/fsck.c:387
 #, c-format
-msgid "Checking connectivity (%d objects)"
-msgstr "Đang kiểm tra kết nối (%d đối tượng)"
+msgid "Submodule path '%s': '%s %s'\n"
+msgstr "Đường dẫn mô-đun-con “%s”: “%s %s”\n"
 
-#: builtin/fsck.c:406
 #, c-format
-msgid "Checking %s %s"
-msgstr "Đang kiểm tra %s %s"
+msgid "Unable to fetch in submodule path '%s'; trying to directly fetch %s:"
+msgstr ""
+"Không thể lấy về trong đường dẫn mô-đun-con “%s”; thử lấy về trực tiếp %s:"
 
-#: builtin/fsck.c:411
-msgid "broken links"
-msgstr "các liên kết bị gẫy"
+#, c-format
+msgid ""
+"Fetched in submodule path '%s', but it did not contain %s. Direct fetching "
+"of that commit failed."
+msgstr ""
+"Đã lấy về từ đường dẫn mô-đun con “%s”, nhưng nó không chứa %s. Lấy về trực "
+"tiếp lần chuyển giao gặp lỗi đó."
+
+#, c-format
+msgid ""
+"Submodule (%s) branch configured to inherit branch from superproject, but "
+"the superproject is not on any branch"
+msgstr ""
+"Nhánh mô-đun-con (%s) được cấu hình kế thừa nhánh từ siêu dự án, nhưng siêu "
+"dự án lại không trên bất kỳ nhánh nào"
 
-#: builtin/fsck.c:420
 #, c-format
-msgid "root %s"
-msgstr "gốc %s"
+msgid "could not get a repository handle for submodule '%s'"
+msgstr "không thể lấy thẻ quản kho cho mô-đun-con “%s”"
 
-#: builtin/fsck.c:428
 #, c-format
-msgid "tagged %s %s (%s) in %s"
-msgstr "đã đánh thẻ %s %s (%s) trong %s"
+msgid "Unable to find current revision in submodule path '%s'"
+msgstr ""
+"Không tìm thấy điểm xét duyệt hiện hành trong đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:457
 #, c-format
-msgid "%s: object corrupt or missing"
-msgstr "%s: đối tượng thiếu hay hỏng"
+msgid "Unable to fetch in submodule path '%s'"
+msgstr "Không thể lấy về trong đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:482
 #, c-format
-msgid "%s: invalid reflog entry %s"
-msgstr "%s: mục reflog không hợp lệ %s"
+msgid "Unable to find %s revision in submodule path '%s'"
+msgstr "Không tìm thấy điểm xét duyệt %s trong đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:496
 #, c-format
-msgid "Checking reflog %s->%s"
-msgstr "Đang kiểm tra việc đổi tên của “%s” thành “%s”"
+msgid "Failed to recurse into submodule path '%s'"
+msgstr "Gặp lỗi khi đệ quy vào trong đường dẫn mô-đun-con “%s”"
 
-#: builtin/fsck.c:530
-#, c-format
-msgid "%s: invalid sha1 pointer %s"
-msgstr "%s: con trỏ sha1 không hợp lệ %s"
+msgid "force checkout updates"
+msgstr "ép buộc lấy ra các cập nhật"
 
-#: builtin/fsck.c:537
-#, c-format
-msgid "%s: not a commit"
-msgstr "%s: không phải là một lần chuyển giao"
+msgid "initialize uninitialized submodules before update"
+msgstr "khởi tạo mô-đun-con chưa khởi tạo trước khi cập nhật"
 
-#: builtin/fsck.c:591
-msgid "notice: No default references"
-msgstr "cảnh báo: Không có các tham chiếu mặc định"
+msgid "use SHA-1 of submodule's remote tracking branch"
+msgstr "sử dụng SHA-1 của nhánh theo dõi máy chủ của mô-đun-con"
 
-#: builtin/fsck.c:621
-#, c-format
-msgid "%s: hash-path mismatch, found at: %s"
-msgstr "%s: đường dẫn mã băm không khớp, tìm thấy tại: %s"
+msgid "traverse submodules recursively"
+msgstr "đi theo mô-đun con một cách đệ quy"
 
-#: builtin/fsck.c:624
-#, c-format
-msgid "%s: object corrupt or missing: %s"
-msgstr "%s: thiếu đối tượng hoặc hỏng: %s"
+msgid "don't fetch new objects from the remote site"
+msgstr "đừng lấy các đối tượng mới từ địa chỉ trên mạng"
 
-#: builtin/fsck.c:628
-#, c-format
-msgid "%s: object is of unknown type '%s': %s"
-msgstr "%s: đối tượng có kiểu chưa biết “%s”: %s"
+msgid "path into the working tree"
+msgstr "đường dẫn đến cây làm việc"
 
-#: builtin/fsck.c:645
-#, c-format
-msgid "%s: object could not be parsed: %s"
-msgstr "%s: không thể phân tích cú đối tượng: %s"
+msgid "path into the working tree, across nested submodule boundaries"
+msgstr "đường dẫn đến cây làm việc, chéo biên giới mô-đun-con lồng nhau"
 
-#: builtin/fsck.c:665
-#, c-format
-msgid "bad sha1 file: %s"
-msgstr "tập tin sha1 sai: %s"
+msgid "rebase, merge, checkout or none"
+msgstr "rebase, merge, checkout hoặc không làm gì cả"
 
-#: builtin/fsck.c:686
-msgid "Checking object directory"
-msgstr "Đang kiểm tra thư mục đối tượng"
+msgid "create a shallow clone truncated to the specified number of revisions"
+msgstr ""
+"tạo một bản sao nông được cắt ngắn thành số lượng điểm xét duyệt đã cho"
 
-#: builtin/fsck.c:689
-msgid "Checking object directories"
-msgstr "Đang kiểm tra các thư mục đối tượng"
+msgid "parallel jobs"
+msgstr "công việc đồng thời"
 
-#: builtin/fsck.c:705
-#, c-format
-msgid "Checking %s link"
-msgstr "Đang lấy liên kết %s"
+msgid "whether the initial clone should follow the shallow recommendation"
+msgstr "nhân bản lần đầu có nên theo khuyến nghị là nông hay không"
 
-#: builtin/fsck.c:710 builtin/index-pack.c:862
-#, c-format
-msgid "invalid %s"
-msgstr "%s không hợp lệ"
+msgid "don't print cloning progress"
+msgstr "đừng in tiến trình nhân bản"
 
-#: builtin/fsck.c:717
-#, c-format
-msgid "%s points to something strange (%s)"
-msgstr "%s chỉ đến thứ gì đó xa lạ (%s)"
+msgid ""
+"git submodule [--quiet] update [--init [--filter=<filter-spec>]] [--remote] "
+"[-N|--no-fetch] [-f|--force] [--checkout|--merge|--rebase] [--[no-]recommend-"
+"shallow] [--reference <repository>] [--recursive] [--[no-]single-branch] "
+"[--] [<path>...]"
+msgstr ""
+"git submodule [--quiet] update [--init [--filter=<filter-spec>]] [--remote] "
+"[-N|--no-fetch] [-f|--force] [--checkout|--merge|--rebase] [--[no-]recommend-"
+"shallow] [--reference <kho>] [--recursive] [--[no-]single-branch] [--] [</"
+"đường/dẫn/>...]"
 
-#: builtin/fsck.c:723
-#, c-format
-msgid "%s: detached HEAD points at nothing"
-msgstr "%s: HEAD đã tách rời không chỉ vào đâu cả"
+msgid "bad value for update parameter"
+msgstr "giá trị cho  tham số cập nhật bị sai"
 
-#: builtin/fsck.c:727
-#, c-format
-msgid "notice: %s points to an unborn branch (%s)"
-msgstr "chú ý: %s chỉ đến một nhánh chưa sinh (%s)"
+msgid "recurse into submodules"
+msgstr "đệ quy vào trong mô-đun-con"
 
-#: builtin/fsck.c:739
-msgid "Checking cache tree"
-msgstr "Đang kiểm tra cây nhớ tạm"
+msgid "git submodule--helper absorb-git-dirs [<options>] [<path>...]"
+msgstr "git submodule--helper absorb-git-dirs [<các tùy chọn>] [</đường/dẫn>…]"
 
-#: builtin/fsck.c:744
-#, c-format
-msgid "%s: invalid sha1 pointer in cache-tree"
-msgstr "%s: con trỏ sha1 không hợp lệ trong cache-tree"
+msgid "check if it is safe to write to the .gitmodules file"
+msgstr "chọn nếu nó là an toàn để ghi vào tập tin .gitmodules"
 
-#: builtin/fsck.c:753
-msgid "non-tree in cache-tree"
-msgstr "non-tree trong cache-tree"
+msgid "unset the config in the .gitmodules file"
+msgstr "bỏ đặt cấu hình trong tập tin .gitmodules"
 
-#: builtin/fsck.c:784
-msgid "git fsck [<options>] [<object>...]"
-msgstr "git fsck [<các tùy chọn>] [<đối-tượng>…]"
+msgid "git submodule--helper config <name> [<value>]"
+msgstr "git submodule--helper config <tên> [<giá trị>]"
 
-#: builtin/fsck.c:790
-msgid "show unreachable objects"
-msgstr "hiển thị các đối tượng không thể đọc được"
+msgid "git submodule--helper config --unset <name>"
+msgstr "git submodule--helper config --unset <tên>"
 
-#: builtin/fsck.c:791
-msgid "show dangling objects"
-msgstr "hiển thị các đối tượng không được quản lý"
+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"
 
-#: builtin/fsck.c:792
-msgid "report tags"
-msgstr "báo cáo các thẻ"
+msgid "suppress output for setting url of a submodule"
+msgstr "chặn kết xuất cho cài đặt url của một mô-đun-con"
 
-#: builtin/fsck.c:793
-msgid "report root nodes"
-msgstr "báo cáo node gốc"
+msgid "git submodule--helper set-url [--quiet] <path> <newurl>"
+msgstr "git submodule--helper set-url [--quiet] </đường/dẫn> <url_mới>"
 
-#: builtin/fsck.c:794
-msgid "make index objects head nodes"
-msgstr "tạo “index objects head nodes”"
+msgid "set the default tracking branch to master"
+msgstr "đặt nhánh theo dõi mặc định thành master"
 
-#: builtin/fsck.c:795
-msgid "make reflogs head nodes (default)"
-msgstr "tạo “reflogs head nodes” (mặc định)"
+msgid "set the default tracking branch"
+msgstr "đặt nhánh theo dõi mặc định"
 
-#: builtin/fsck.c:796
-msgid "also consider packs and alternate objects"
-msgstr "cũng cân nhắc đến các đối tượng gói và thay thế"
+msgid "git submodule--helper set-branch [-q|--quiet] (-d|--default) <path>"
+msgstr ""
+"git submodule--helper set-branch [-q|--quiet](-d|--default)</đường/dẫn>"
 
-#: builtin/fsck.c:797
-msgid "check only connectivity"
-msgstr "chỉ kiểm tra kết nối"
+msgid ""
+"git submodule--helper set-branch [-q|--quiet] (-b|--branch) <branch> <path>"
+msgstr ""
+"git submodule--helper set-branch [-q|--quiet] (-b|--branch) <nhánh> </đường/"
+"dẫn>"
 
-#: builtin/fsck.c:798 builtin/mktag.c:75
-msgid "enable more strict checking"
-msgstr "cho phép kiểm tra hạn chế hơn"
+msgid "--branch or --default required"
+msgstr "cần --branch hoặc --default"
 
-#: builtin/fsck.c:800
-msgid "write dangling objects in .git/lost-found"
-msgstr "ghi các đối tượng không được quản lý trong .git/lost-found"
+msgid "print only error messages"
+msgstr "chỉ hiển thị các thông điệp báo lỗi"
 
-#: builtin/fsck.c:801 builtin/prune.c:146
-msgid "show progress"
-msgstr "hiển thị quá trình"
+msgid "force creation"
+msgstr "buộc tạo"
 
-#: builtin/fsck.c:802
-msgid "show verbose names for reachable objects"
-msgstr "hiển thị tên chi tiết cho các đối tượng đọc được"
+msgid "show whether the branch would be created"
+msgstr "hiển thị xem nhánh nào nên được tạo ra"
 
-#: builtin/fsck.c:862 builtin/index-pack.c:261
-msgid "Checking objects"
-msgstr "Đang kiểm tra các đối tượng"
+msgid ""
+"git submodule--helper create-branch [-f|--force] [--create-reflog] [-q|--"
+"quiet] [-t|--track] [-n|--dry-run] <name> <start-oid> <start-name>"
+msgstr ""
+"git submodule--helper create-branch [-f|--force] [--create-reflog] [-q|--"
+"quiet] [-t|--track] [-n|--dry-run] <tên> <start-oid> <start-name>"
 
-#: builtin/fsck.c:890
 #, c-format
-msgid "%s: object missing"
-msgstr "%s: thiếu đối tượng"
+msgid "creating branch '%s'"
+msgstr "đang tạo nhánh “%s”"
 
-#: builtin/fsck.c:901
 #, c-format
-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”"
+msgid "Adding existing repo at '%s' to the index\n"
+msgstr "Đang thêm repo có sẵn tại “%s” vào bảng mục lục\n"
 
-#: builtin/fsmonitor--daemon.c:13
-msgid "git fsmonitor--daemon start [<options>]"
-msgstr "git fsmonitor--daemon start [<các tùy chọn>]"
+#, c-format
+msgid "'%s' already exists and is not a valid git repo"
+msgstr "“%s” đã tồn tại từ trước và không phải là một kho git hợp lệ"
 
-#: builtin/fsmonitor--daemon.c:14
-msgid "git fsmonitor--daemon run [<options>]"
-msgstr "git fsmonitor--daemon run [<các tùy chọn>]"
+#, c-format
+msgid "A git directory for '%s' is found locally with remote(s):\n"
+msgstr "Thư mục git cho “%s” được tìm thấy một cách cục bộ với các máy chủ:\n"
 
-#: builtin/fsmonitor--daemon.c:15
-msgid "git fsmonitor--daemon stop"
-msgstr "git fsmonitor--daemon stop"
+#, c-format
+msgid ""
+"If you want to reuse this local git directory instead of cloning again from\n"
+"  %s\n"
+"use the '--force' option. If the local git directory is not the correct "
+"repo\n"
+"or you are unsure what this means choose another name with the '--name' "
+"option."
+msgstr ""
+"Nếu bạn muốn sử dụng lại thư mục git nội bộ này thay vì nhân bản lại lần nữa "
+"từ\n"
+"  %s\n"
+"dùng tùy chọn “--force”. Nếu thư mục git nội bộ không phải là một kho đúng "
+"hoặc\n"
+"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”."
 
-#: builtin/fsmonitor--daemon.c:16
-msgid "git fsmonitor--daemon status"
-msgstr "git fsmonitor--daemon status"
+#, c-format
+msgid "Reactivating local git directory for submodule '%s'\n"
+msgstr "Phục hồi sự hoạt động của thư mục git nội bộ cho mô-đun-con “%s”.\n"
 
-#: builtin/fsmonitor--daemon.c:38 builtin/fsmonitor--daemon.c:47
 #, c-format
-msgid "value of '%s' out of range: %d"
-msgstr "siá trị '%s' ngoài phạm vi cho phép: %d"
+msgid "unable to checkout submodule '%s'"
+msgstr "không thể lấy ra mô-đun-con “%s”"
+
+#, c-format
+msgid "Failed to add submodule '%s'"
+msgstr "Gặp lỗi khi thêm mô-đun-con “%s”"
+
+#, c-format
+msgid "Failed to register submodule '%s'"
+msgstr "Gặp lỗi khi đăng ký mô-đun-con “%s”"
+
+#, c-format
+msgid "'%s' already exists in the index"
+msgstr "”%s” thực sự đã tồn tại ở bảng mục lục rồi"
+
+#, c-format
+msgid "'%s' already exists in the index and is not a submodule"
+msgstr ""
+"”%s” 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"
+
+#, c-format
+msgid "'%s' does not have a commit checked out"
+msgstr "“%s” không có một lần chuyển giao nào được lấy ra"
+
+msgid "branch of repository to add as submodule"
+msgstr "nhánh của kho để thêm như là mô-đun-con"
+
+msgid "allow adding an otherwise ignored submodule path"
+msgstr "cho phép thêm một đường dẫn mô-đun-con bị bỏ qua khác"
+
+msgid "borrow the objects from reference repositories"
+msgstr "vay mượn các đối tượng từ kho thay thế"
+
+msgid ""
+"sets the submodule's name to the given string instead of defaulting to its "
+"path"
+msgstr ""
+"đặt tên của mô-đun-con bằng chuỗi đã cho thay vì mặc định là đường dẫn của nó"
 
-#: builtin/fsmonitor--daemon.c:57
-#, c-format
-msgid "value of '%s' not bool or int: %d"
-msgstr "giá trị của '%s' không là bool hoặc int: %d"
+msgid "git submodule--helper add [<options>] [--] <repository> [<path>]"
+msgstr "git submodule--helper add [<các tùy chọn>] [--] <kho> [</đường/dẫn>]"
 
-#: builtin/fsmonitor--daemon.c:99
-#, c-format
-msgid "fsmonitor-daemon is watching '%s'\n"
-msgstr "fsmonitor-daemon đang theo dõi '%s'\n"
+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"
 
-#: builtin/fsmonitor--daemon.c:104
 #, c-format
-msgid "fsmonitor-daemon is not watching '%s'\n"
-msgstr "fsmonitor-daemon hiện không theo dõi '%s'\n"
+msgid "repo URL: '%s' must be absolute or begin with ./|../"
+msgstr "repo URL: “%s” phải là đường dẫn tuyệt đối hoặc là bắt đầu bằng ./|../"
 
-#: builtin/fsmonitor--daemon.c:170
 #, c-format
-msgid "could not create fsmonitor cookie '%s'"
-msgstr "không thể tạo fsmonitor cookie “%s”"
+msgid "'%s' is not a valid submodule name"
+msgstr "“%s” không phải là một tên mô-đun-con hợp lệ"
 
-#: builtin/fsmonitor--daemon.c:753
 #, c-format
-msgid "fsmonitor: cookie_result '%d' != SEEN"
-msgstr "fsmonitor: cookie_result '%d' != SEEN"
+msgid "%s doesn't support --super-prefix"
+msgstr "%s không hỗ trợ --super-prefix"
 
-#: builtin/fsmonitor--daemon.c:1187
 #, c-format
-msgid "could not start IPC thread pool on '%s'"
-msgstr "không thể khởi chạy bể tiến trình IPC trêm “%s”"
+msgid "'%s' is not a valid submodule--helper subcommand"
+msgstr "“%s” không phải là lệnh con submodule--helper hợp lệ"
 
-#: builtin/fsmonitor--daemon.c:1199
-msgid "could not start fsmonitor listener thread"
-msgstr "không thể lấy thông tin thống kê về tuyến trình lắng nghe fsmonitor"
+msgid "git symbolic-ref [<options>] <name> [<ref>]"
+msgstr "git symbolic-ref [<các tùy chọn>] <tên> [<t.chiếu>]"
 
-#: builtin/fsmonitor--daemon.c:1297
-msgid "could not initialize listener thread"
-msgstr "không thể khởi tạo tuyến trình lắng nghe"
+msgid "git symbolic-ref -d [-q] <name>"
+msgstr "git symbolic-ref -d [-q] <tên>"
 
-#: builtin/fsmonitor--daemon.c:1328 builtin/fsmonitor--daemon.c:1383
-#, c-format
-msgid "fsmonitor--daemon is already running '%s'"
-msgstr "fsmonitor--daemon hiện đang chạy rồi '%s'"
+msgid "suppress error message for non-symbolic (detached) refs"
+msgstr "chặn các thông tin lỗi cho các tham chiếu “không-mềm” (bị tách ra)"
 
-#: builtin/fsmonitor--daemon.c:1332
-#, c-format
-msgid "running fsmonitor-daemon in '%s'\n"
-msgstr "chạy fsmonitor-daemon trong '%s'\n"
+msgid "delete symbolic ref"
+msgstr "xóa tham chiếu mềm"
 
-#: builtin/fsmonitor--daemon.c:1387
-#, c-format
-msgid "starting fsmonitor-daemon in '%s'\n"
-msgstr "đang khởi chạy fsmonitor-daemon trong “%s”\n"
+msgid "shorten ref output"
+msgstr "làm ngắn kết xuất ref (tham chiếu)"
 
-#: builtin/fsmonitor--daemon.c:1413
-msgid "daemon failed to start"
-msgstr "gặp lỗi khi khởi chạy dịch vụ chạy ngầm"
+msgid "reason"
+msgstr "lý do"
 
-#: builtin/fsmonitor--daemon.c:1416
-msgid "daemon not online yet"
-msgstr "ứng dụng chạy ngầm hiện chưa trực tuyến"
+msgid "reason of the update"
+msgstr "lý do cập nhật"
 
-#: builtin/fsmonitor--daemon.c:1419
-msgid "daemon terminated"
-msgstr "dịch vụ chạy ngầm đã bị dừng"
+msgid ""
+"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>]\n"
+"        <tagname> [<head>]"
+msgstr ""
+"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <tập-tin>]\n"
+"        <tên-thẻ> [<head>]"
 
-#: builtin/fsmonitor--daemon.c:1429
-msgid "detach from console"
-msgstr "tách rời khỏi bảng điều khiển"
+msgid "git tag -d <tagname>..."
+msgstr "git tag -d <tên-thẻ>…"
 
-#: builtin/fsmonitor--daemon.c:1432
-msgid "use <n> ipc worker threads"
-msgstr "dùng <n> tuyến trình làm việc ipc"
+msgid ""
+"git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit>] [--"
+"points-at <object>]\n"
+"        [--format=<format>] [--merged <commit>] [--no-merged <commit>] "
+"[<pattern>...]"
+msgstr ""
+"git tag -l [-n[<số>]] [--contains <lần_chuyển_giao>] [--no-contains "
+"<lần_chuyển_giao>] [--points-at <đối-tượng>]\n"
+"        [--format=<định_dạng>] [--merged <lần_chuyển_giao>] [--no-merged "
+"[<lần_chuyển_giao>]] [<mẫu>…]"
 
-#: builtin/fsmonitor--daemon.c:1435
-msgid "max seconds to wait for background daemon startup"
-msgstr "số giây chờ tối đa khi khởi động dịch vụ chạy nền"
+msgid "git tag -v [--format=<format>] <tagname>..."
+msgstr "git tag -v [--format=<định_dạng>]  <tên-thẻ>…"
 
-#: builtin/fsmonitor--daemon.c:1449
 #, c-format
-msgid "invalid 'ipc-threads' value (%d)"
-msgstr "giá trị 'ipc-threads' không hợp lệ (%d)"
+msgid "tag '%s' not found."
+msgstr "không tìm thấy tìm thấy thẻ “%s”."
 
-#: builtin/fsmonitor--daemon.c:1464
 #, c-format
-msgid "Unhandled subcommand '%s'"
-msgstr "Lệnh con không được xử lý '%s'"
-
-#: builtin/fsmonitor--daemon.c:1477
-msgid "fsmonitor--daemon not supported on this platform"
-msgstr "fsmonitor--daemon không hỗ trợ trên nền tảng này"
-
-#: builtin/gc.c:39
-msgid "git gc [<options>]"
-msgstr "git gc [<các tùy chọn>]"
+msgid "Deleted tag '%s' (was %s)\n"
+msgstr "Thẻ đã bị xóa “%s” (từng là %s)\n"
 
-#: builtin/gc.c:93
 #, 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"
+msgid ""
+"\n"
+"Write a message for tag:\n"
+"  %s\n"
+"Lines starting with '%c' will be ignored.\n"
+msgstr ""
+"\n"
+"Viết các ghi chú cho thẻ:\n"
+"  %s\n"
+"Những dòng được bắt đầu bằng “%c” sẽ được bỏ qua.\n"
 
-#: builtin/gc.c:129
 #, c-format
-msgid "failed to parse '%s' value '%s'"
-msgstr "gặp lỗi khi phân tích “%s” giá trị “%s”"
+msgid ""
+"\n"
+"Write a message for tag:\n"
+"  %s\n"
+"Lines starting with '%c' will be kept; you may remove them yourself if you "
+"want to.\n"
+msgstr ""
+"\n"
+"Viết các ghi chú cho thẻ:\n"
+"  %s\n"
+"Những dòng được bắt đầu bằng “%c” sẽ được giữ lại; bạn có thể xóa chúng đi "
+"nếu muốn.\n"
 
-#: builtin/gc.c:488 builtin/init-db.c:57
-#, c-format
-msgid "cannot stat '%s'"
-msgstr "không thể lấy thông tin thống kê về “%s”"
+msgid "unable to sign the tag"
+msgstr "không thể ký thẻ"
 
-#: builtin/gc.c:504
 #, c-format
 msgid ""
-"The last gc run reported the following. Please correct the root cause\n"
-"and remove %s\n"
-"Automatic cleanup will not be performed until the file is removed.\n"
+"You have created a nested tag. The object referred to by your new tag is\n"
+"already a tag. If you meant to tag the object that it points to, use:\n"
 "\n"
-"%s"
+"\tgit tag -f %s %s^{}"
 msgstr ""
-"Lần chạy gc cuối đã báo cáo các vấn đề sau đây. Vui lòng sửa nguyên nhân\n"
-"tận gốc và xóa bỏ %s.\n"
-"Việc tự động dọn dẹp sẽ không thực thi cho đến khi tập tin được xóa bỏ.\n"
+"Bạn đã tạo một thẻ lồng nhau. Đối tượng được chỉ đến thẻ mới của bạn là\n"
+"đã là một thẻ. Nếu ý bạn là gắn thẻ đối tượng mà nó trỏ đến, sử dụng:\n"
 "\n"
-"%s"
+"\tgit tag -f %s %s^{}"
 
-#: builtin/gc.c:552
-msgid "prune unreferenced objects"
-msgstr "xóa bỏ các đối tượng không được tham chiếu"
+msgid "bad object type."
+msgstr "kiểu đối tượng sai."
 
-#: builtin/gc.c:554
-msgid "be more thorough (increased runtime)"
-msgstr "cẩn thận hơn nữa (tăng thời gian chạy)"
+msgid "no tag message?"
+msgstr "không có chú thích gì cho cho thẻ à?"
 
-#: builtin/gc.c:555
-msgid "enable auto-gc mode"
-msgstr "bật chế độ auto-gc"
+#, c-format
+msgid "The tag message has been left in %s\n"
+msgstr "Nội dung ghi chú còn lại %s\n"
 
-#: builtin/gc.c:558
-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"
+msgid "list tag names"
+msgstr "chỉ liệt kê tên các thẻ"
 
-#: builtin/gc.c:561
-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"
+msgid "print <n> lines of each tag message"
+msgstr "hiển thị <n> dòng cho mỗi ghi chú"
 
-#: builtin/gc.c:577
-#, 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"
+msgid "delete tags"
+msgstr "xóa thẻ"
 
-#: builtin/gc.c:588
-#, c-format
-msgid "failed to parse prune expiry value %s"
-msgstr "gặp lỗi khi phân tích giá trị prune %s"
+msgid "verify tags"
+msgstr "thẩm tra thẻ"
 
-#: builtin/gc.c:608
-#, 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"
+msgid "Tag creation options"
+msgstr "Tùy chọn tạo thẻ"
 
-#: builtin/gc.c:610
-#, 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"
+msgid "annotated tag, needs a message"
+msgstr "để chú giải cho thẻ, cần một lời ghi chú"
 
-#: builtin/gc.c:611
-#, 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"
+msgid "tag message"
+msgstr "phần chú thích cho thẻ"
 
-#: builtin/gc.c:652
-#, c-format
-msgid ""
-"gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
-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ế)"
+msgid "force edit of tag message"
+msgstr "ép buộc sửa thẻ lần commit"
 
-#: builtin/gc.c:707
-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."
+msgid "annotated and GPG-signed tag"
+msgstr "thẻ chú giải và ký kiểu GPG"
 
-#: builtin/gc.c:717
-msgid ""
-"git maintenance run [--auto] [--[no-]quiet] [--task=<task>] [--schedule]"
-msgstr ""
-"git maintenance run [--auto] [--[no-]quiet] [--task=<nhiệm vụ>] [--schedule]"
+msgid "use another key to sign the tag"
+msgstr "dùng kháo khác để ký thẻ"
 
-#: builtin/gc.c:747
-msgid "--no-schedule is not allowed"
-msgstr "--no-schedule không được phép"
+msgid "replace the tag if exists"
+msgstr "thay thế nếu thẻ đó đã có trước"
 
-#: builtin/gc.c:752
-#, c-format
-msgid "unrecognized --schedule argument '%s'"
-msgstr "đối số --schedule không được thừa nhận %s"
+msgid "create a reflog"
+msgstr "tạo một reflog"
 
-#: builtin/gc.c:870
-msgid "failed to write commit-graph"
-msgstr "gặp lỗi khi ghi đồ thị các lần chuyển giao"
+msgid "Tag listing options"
+msgstr "Các tùy chọn liệt kê thẻ"
 
-#: builtin/gc.c:906
-msgid "failed to prefetch remotes"
-msgstr "gặp lỗi khi tải trước các máy chủ"
+msgid "show tag list in columns"
+msgstr "hiển thị danh sách thẻ trong các cột"
 
-#: builtin/gc.c:1022
-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”"
+msgid "print only tags that contain the commit"
+msgstr "chỉ hiển thị những nhánh mà nó chứa lần chuyển giao"
+
+msgid "print only tags that don't contain the commit"
+msgstr "chỉ hiển thị những thẻ mà nó không chứa lần chuyển giao"
+
+msgid "print only tags that are merged"
+msgstr "chỉ hiển thị những thẻ mà nó được hòa trộn"
+
+msgid "print only tags that are not merged"
+msgstr "chỉ hiển thị những thẻ mà nó không được hòa trộn"
+
+msgid "print only tags of the object"
+msgstr "chỉ hiển thị các thẻ của đối tượng"
+
+#, c-format
+msgid "the '%s' option is only allowed in list mode"
+msgstr "tùy chọn '%s' chỉ cho phép dùng trong chế độ liệt kê"
+
+#, c-format
+msgid "'%s' is not a valid tag name."
+msgstr "“%s” không phải thẻ hợp lệ."
 
-#: builtin/gc.c:1039
-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”"
+#, c-format
+msgid "tag '%s' already exists"
+msgstr "thẻ “%s” đã tồn tại rồi"
 
-#: builtin/gc.c:1090
-msgid "failed to write multi-pack-index"
-msgstr "gặp lỗi khi ghi multi-pack-index"
+#, c-format
+msgid "Invalid cleanup mode %s"
+msgstr "Chế độ dọn dẹp không hợp lệ %s"
 
-#: builtin/gc.c:1106
-msgid "'git multi-pack-index expire' failed"
-msgstr "gặp lỗi khi chạy “git multi-pack-index expire”"
+#, c-format
+msgid "Updated tag '%s' (was %s)\n"
+msgstr "Đã cập nhật thẻ “%s” (trước là %s)\n"
 
-#: builtin/gc.c:1165
-msgid "'git multi-pack-index repack' failed"
-msgstr "gặp lỗi khi chạy “git multi-pack-index repack”"
+msgid "pack exceeds maximum allowed size"
+msgstr "gói đã vượt quá cỡ tối đa được phép"
 
-#: builtin/gc.c:1174
-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"
+msgid "Unpacking objects"
+msgstr "Đang giải nén các đối tượng"
 
-#: builtin/gc.c:1278
 #, c-format
-msgid "lock file '%s' exists, skipping maintenance"
-msgstr "đã có khóa của tập tin “%s”, bỏ qua bảo trì"
+msgid "failed to create directory %s"
+msgstr "tạo thư mục \"%s\" gặp lỗi"
 
-#: builtin/gc.c:1308
 #, c-format
-msgid "task '%s' failed"
-msgstr "gặp lỗi khi thực hiện nhiệm vụ “%s”"
+msgid "failed to delete file %s"
+msgstr "gặp lỗi khi xóa tập tin %s"
 
-#: builtin/gc.c:1390
 #, c-format
-msgid "'%s' is not a valid task"
-msgstr "“%s” không phải một nhiệm vụ hợp lệ"
+msgid "failed to delete directory %s"
+msgstr "gặp lỗi khi xóa thư mục %s"
 
-#: builtin/gc.c:1395
 #, 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:1410
-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"
+msgid "Testing mtime in '%s' "
+msgstr "Đang kiểm thử mtime trong “%s” "
 
-#: builtin/gc.c:1411
-msgid "frequency"
-msgstr "tần số"
+msgid "directory stat info does not change after adding a new file"
+msgstr "thông tin thống kê thư mục không thay đổi sau khi thêm tập tin mới"
 
-#: builtin/gc.c:1412
-msgid "run tasks based on frequency"
-msgstr "chạy nhiệm vụ dựa trên tần suất"
+msgid "directory stat info does not change after adding a new directory"
+msgstr "thông tin thống kê thư mục không thay đổi sau khi thêm thư mục mới"
 
-#: builtin/gc.c:1415
-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"
+msgid "directory stat info changes after updating a file"
+msgstr "thông tin thống kê thư mục thay đổi sau khi cập nhật tập tin"
 
-#: builtin/gc.c:1416
-msgid "task"
-msgstr "tác vụ"
+msgid "directory stat info changes after adding a file inside subdirectory"
+msgstr ""
+"thông tin thống kê thư mục thay đổi sau khi thêm tập tin mới vào trong thư "
+"mục con"
 
-#: builtin/gc.c:1417
-msgid "run a specific task"
-msgstr "chạy một nhiệm vụ cụ thể"
+msgid "directory stat info does not change after deleting a file"
+msgstr "thông tin thống kê thư mục không thay đổi sau khi xóa tập tin"
 
-#: builtin/gc.c:1434
-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>"
+msgid "directory stat info does not change after deleting a directory"
+msgstr "thông tin thống kê thư mục không thay đổi sau khi xóa thư mục"
 
-#: builtin/gc.c:1477
-msgid "failed to run 'git config'"
-msgstr "gặp lỗi khi chạy “git config”"
+msgid " OK"
+msgstr " Đồng ý"
 
-#: builtin/gc.c:1629
-#, c-format
-msgid "failed to expand path '%s'"
-msgstr "gặp lỗi khi khai triển đường dẫn “%s”"
+msgid "git update-index [<options>] [--] [<file>...]"
+msgstr "git update-index [<các tùy chọn>] [--] [<tập-tin>…]"
 
-#: builtin/gc.c:1656 builtin/gc.c:1694
-msgid "failed to start launchctl"
-msgstr "gặp lỗi khi khởi chạy launchctl"
+msgid "continue refresh even when index needs update"
+msgstr "tiếp tục làm mới ngay cả khi bảng mục lục cần được cập nhật"
 
-#: builtin/gc.c:1769 builtin/gc.c:2237
-#, c-format
-msgid "failed to create directories for '%s'"
-msgstr "gặp lỗi khi tạo thư mục cho \"%s\""
+msgid "refresh: ignore submodules"
+msgstr "refresh: lờ đi mô-đun-con"
 
-#: builtin/gc.c:1796
-#, c-format
-msgid "failed to bootstrap service %s"
-msgstr "gặp lỗi khi mồi dịch vụ %s"
+msgid "do not ignore new files"
+msgstr "không bỏ qua các tập tin mới tạo"
 
-#: builtin/gc.c:1889
-msgid "failed to create temp xml file"
-msgstr "gặp lỗi khi tạo tập tin xml tạm thời"
+msgid "let files replace directories and vice-versa"
+msgstr "để các tập tin thay thế các thư mục và “vice-versa”"
 
-#: builtin/gc.c:1979
-msgid "failed to start schtasks"
-msgstr "gặp lỗi khi lấy thông tin thống kê về schtasks"
+msgid "notice files missing from worktree"
+msgstr "thông báo các tập-tin thiếu trong thư-mục làm việc"
 
-#: builtin/gc.c:2063
-msgid "failed to run 'crontab -l'; your system might not support 'cron'"
+msgid "refresh even if index contains unmerged entries"
 msgstr ""
-"gặp lỗi khi chạy “crontab -l”; hệ thống của bạn có thể không hỗ trợ “cron”"
+"làm tươi mới thậm chí khi bảng mục lục chứa các mục tin chưa được hòa trộn"
 
-#: builtin/gc.c:2080
-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”"
+msgid "refresh stat information"
+msgstr "lấy lại thông tin thống kê"
 
-#: builtin/gc.c:2084
-msgid "failed to open stdin of 'crontab'"
-msgstr "gặp lỗi khi mở đầu vào tiêu chuẩn của “crontab”"
+msgid "like --refresh, but ignore assume-unchanged setting"
+msgstr "giống --refresh, nhưng bỏ qua các cài đặt “assume-unchanged”"
 
-#: builtin/gc.c:2126
-msgid "'crontab' died"
-msgstr "“crontab” đã chết"
+msgid "<mode>,<object>,<path>"
+msgstr "<chế_độ>,<đối_tượng>,<đường_dẫn>"
 
-#: builtin/gc.c:2191
-msgid "failed to start systemctl"
-msgstr "gặp lỗi khi khởi chạy systemctl"
+msgid "add the specified entry to the index"
+msgstr "thêm các tập tin đã chỉ ra vào bảng mục lục"
 
-#: builtin/gc.c:2201
-msgid "failed to run systemctl"
-msgstr "gặp lỗi khi chạy systemctl"
+msgid "mark files as \"not changing\""
+msgstr "đánh dấu các tập tin là \"không thay đổi\""
 
-#: builtin/gc.c:2210 builtin/gc.c:2215 builtin/worktree.c:63
-#: builtin/worktree.c:1024
-#, c-format
-msgid "failed to delete '%s'"
-msgstr "gặp lỗi khi xóa “%s”"
+msgid "clear assumed-unchanged bit"
+msgstr "xóa bít assumed-unchanged (giả định là không thay đổi)"
 
-#: builtin/gc.c:2395
-#, c-format
-msgid "unrecognized --scheduler argument '%s'"
-msgstr "đối số --scheduler không được thừa nhận “%s”"
+msgid "mark files as \"index-only\""
+msgstr "đánh dấu các tập tin là “chỉ-đọc”"
 
-#: builtin/gc.c:2420
-msgid "neither systemd timers nor crontab are available"
-msgstr "hoặc là bộ lập lịch systemd hoặc là crontab không sẵn có"
+msgid "clear skip-worktree bit"
+msgstr "xóa bít skip-worktree"
 
-#: builtin/gc.c:2435
-#, c-format
-msgid "%s scheduler is not available"
-msgstr "bộ lên lịch %s không sẵn có"
+msgid "do not touch index-only entries"
+msgstr "đừng động vào các mục index-only"
 
-#: builtin/gc.c:2449
-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ì"
+msgid "add to index only; do not add content to object database"
+msgstr ""
+"chỉ thêm vào bảng mục lục; không thêm nội dung vào cơ sở dữ liệu đối tượng"
 
-#: builtin/gc.c:2471
-msgid "git maintenance start [--scheduler=<scheduler>]"
-msgstr "git maintenance start [--scheduler=<bộ lên lịch>]"
+msgid "remove named paths even if present in worktree"
+msgstr ""
+"gỡ bỏ các đường dẫn được đặt tên thậm chí cả khi nó hiện diện trong thư mục "
+"làm việc"
 
-#: builtin/gc.c:2480
-msgid "scheduler"
-msgstr "bộ lên lịch"
+msgid "with --stdin: input lines are terminated by null bytes"
+msgstr "với tùy chọn --stdin: các dòng đầu vào được chấm dứt bởi ký tự null"
 
-#: builtin/gc.c:2481
-msgid "scheduler to trigger git maintenance run"
-msgstr "bộ lên lịch để kích hoạt chạy chương trình bảo trì git"
+msgid "read list of paths to be updated from standard input"
+msgstr "đọc danh sách đường dẫn cần cập nhật từ đầu vào tiêu chuẩn"
 
-#: builtin/gc.c:2495
-msgid "failed to add repo to global config"
-msgstr "gặp lỗi khi thêm cấu hình toàn cục"
+msgid "add entries from standard input to the index"
+msgstr "không thể đọc các mục từ đầu vào tiêu chuẩn vào bảng mục lục"
 
-#: builtin/gc.c:2504
-msgid "git maintenance <subcommand> [<options>]"
-msgstr "git maintenance run <lệnh_con> [<các tùy chọn>]"
+msgid "repopulate stages #2 and #3 for the listed paths"
+msgstr "phục hồi các trạng thái #2 và #3 cho các đường dẫn được liệt kê"
 
-#: builtin/gc.c:2523
-#, c-format
-msgid "invalid subcommand: %s"
-msgstr "lện con không hợp lệ: %s"
+msgid "only update entries that differ from HEAD"
+msgstr "chỉ cập nhật các mục tin mà nó khác biệt so với HEAD"
 
-#: builtin/grep.c:32
-msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
-msgstr "git grep [<các tùy chọn>] [-e] <mẫu> [<rev>…] [[--] </đường/dẫn>…]"
+msgid "ignore files missing from worktree"
+msgstr "bỏ qua các tập-tin thiếu trong thư-mục làm việc"
 
-#: builtin/grep.c:241
-#, c-format
-msgid "grep: failed to create thread: %s"
-msgstr "grep: gặp lỗi tạo tuyến (thread): %s"
+msgid "report actions to standard output"
+msgstr "báo cáo các thao tác ra thiết bị xuất chuẩn"
 
-#: builtin/grep.c:295
-#, c-format
-msgid "invalid number of threads specified (%d) for %s"
-msgstr "số tuyến đã cho không hợp lệ (%d) cho %s"
+msgid "(for porcelains) forget saved unresolved conflicts"
+msgstr "(cho “porcelains”) quên các xung đột chưa được giải quyết đã ghi"
 
-#. TRANSLATORS: %s is the configuration
-#. variable for tweaking threads, currently
-#. grep.threads
-#.
-#: builtin/grep.c:303 builtin/index-pack.c:1587 builtin/index-pack.c:1791
-#: builtin/pack-objects.c:3150
-#, c-format
-msgid "no threads support, ignoring %s"
-msgstr "không hỗ trợ đa tuyến, bỏ qua %s"
+msgid "write index in this format"
+msgstr "ghi mục lục ở định dạng này"
 
-#: builtin/grep.c:490 builtin/grep.c:619 builtin/grep.c:659
-#, c-format
-msgid "unable to read tree (%s)"
-msgstr "không thể đọc cây (%s)"
+msgid "enable or disable split index"
+msgstr "bật/tắt chia cắt bảng mục lục"
 
-#: builtin/grep.c:674
-#, c-format
-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"
+msgid "enable/disable untracked cache"
+msgstr "bật/tắt bộ đệm không theo vết"
 
-#: builtin/grep.c:754
-#, c-format
-msgid "switch `%c' expects a numerical value"
-msgstr "chuyển đến “%c” cần một giá trị bằng số"
+msgid "test if the filesystem supports untracked cache"
+msgstr "kiểm tra xem hệ thống tập tin có hỗ trợ đệm không theo dõi hay không"
 
-#: builtin/grep.c:852
-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"
+msgid "enable untracked cache without testing the filesystem"
+msgstr "bật bộ đệm không theo vết mà không kiểm tra hệ thống tập tin"
 
-#: builtin/grep.c:854
-msgid "find in contents not managed by git"
-msgstr "tìm trong nội dung không được quản lý bởi git"
+msgid "write out the index even if is not flagged as changed"
+msgstr "ghi ra mục lục ngay cả khi không được đánh cờ là có thay đổi"
 
-#: builtin/grep.c:856
-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"
+msgid "enable or disable file system monitor"
+msgstr "bật/tắt theo dõi hệ thống tập tin"
 
-#: builtin/grep.c:858
-msgid "ignore files specified via '.gitignore'"
-msgstr "các tập tin bị bỏ qua được chỉ định thông qua “.gitignore”"
+msgid "mark files as fsmonitor valid"
+msgstr "đánh dấu các tập tin là hợp lệ fsmonitor"
 
-#: builtin/grep.c:860
-msgid "recursively search in each submodule"
-msgstr "tìm kiếm đệ quy trong từng mô-đun-con"
+msgid "clear fsmonitor valid bit"
+msgstr "xóa bít hợp lệ fsmonitor"
+
+msgid ""
+"core.splitIndex is set to false; remove or change it, if you really want to "
+"enable split index"
+msgstr ""
+"core.splitIndex được đặt là sai; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
+"muốn bật chia tách mục lục"
+
+msgid ""
+"core.splitIndex is set to true; remove or change it, if you really want to "
+"disable split index"
+msgstr ""
+"core.splitIndex được đặt là đúng; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
+"muốn tắt chia tách mục lục"
+
+msgid ""
+"core.untrackedCache is set to true; remove or change it, if you really want "
+"to disable the untracked cache"
+msgstr ""
+"core.untrackedCache được đặt là đúng; xóa bỏ hay thay đổi nó, nếu bạn thực "
+"sự muốn tắt bộ đệm chưa theo dõi"
 
-#: builtin/grep.c:863
-msgid "show non-matching lines"
-msgstr "hiển thị những dòng không khớp với mẫu"
+msgid "Untracked cache disabled"
+msgstr "Nhớ đệm không theo vết bị tắt"
 
-#: builtin/grep.c:865
-msgid "case insensitive matching"
-msgstr "phân biệt HOA/thường"
+msgid ""
+"core.untrackedCache is set to false; remove or change it, if you really want "
+"to enable the untracked cache"
+msgstr ""
+"core.untrackedCache được đặt là sai; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
+"muốn bật bộ đệm chưa theo dõi"
 
-#: builtin/grep.c:867
-msgid "match patterns only at word boundaries"
-msgstr "chỉ khớp mẫu tại đường ranh giới từ"
+#, c-format
+msgid "Untracked cache enabled for '%s'"
+msgstr "Nhớ đệm không theo vết được bật cho “%s”"
 
-#: builtin/grep.c:869
-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"
+msgid "core.fsmonitor is unset; set it if you really want to enable fsmonitor"
+msgstr ""
+"core.fsmonitor chưa được đặt; đặt nó nếu bạn thực sự muốn bật theo dõi hệ "
+"thống tập tin"
 
-#: builtin/grep.c:871
-msgid "don't match patterns in binary files"
-msgstr "không khớp mẫu trong các tập tin nhị phân"
+msgid "fsmonitor enabled"
+msgstr "fsmonitor được bật"
 
-#: builtin/grep.c:874
-msgid "process binary files with textconv filters"
-msgstr "xử lý tập tin nhị phân với các bộ lọc “textconv”"
+msgid ""
+"core.fsmonitor is set; remove it if you really want to disable fsmonitor"
+msgstr ""
+"core.fsmonitor đã được đặt; bỏ đặt nó nếu bạn thực sự muốn bật theo dõi hệ "
+"thống tập tin"
 
-#: builtin/grep.c:876
-msgid "search in subdirectories (default)"
-msgstr "tìm kiếm trong thư mục con (mặc định)"
+msgid "fsmonitor disabled"
+msgstr "fsmonitor bị tắt"
 
-#: builtin/grep.c:878
-msgid "descend at most <depth> levels"
-msgstr "hạ xuống ít nhất là mức <sâu>"
+msgid "git update-ref [<options>] -d <refname> [<old-val>]"
+msgstr "git update-ref [<các tùy chọn>] -d <refname> [<biến-cũ>]"
 
-#: builtin/grep.c:882
-msgid "use extended POSIX regular expressions"
-msgstr "dùng biểu thức chính qui POSIX có mở rộng"
+msgid "git update-ref [<options>]    <refname> <new-val> [<old-val>]"
+msgstr "git update-ref [<các tùy chọn>]    <refname> <biến-mới> [<biến-cũ>]"
 
-#: builtin/grep.c:885
-msgid "use basic POSIX regular expressions (default)"
-msgstr "sử dụng biểu thức chính quy kiểu POSIX (mặc định)"
+msgid "git update-ref [<options>] --stdin [-z]"
+msgstr "git update-ref [<các tùy chọn>] --stdin [-z]"
 
-#: builtin/grep.c:888
-msgid "interpret patterns as fixed strings"
-msgstr "diễn dịch các mẫu như là chuỗi cố định"
+msgid "delete the reference"
+msgstr "xóa tham chiếu"
 
-#: builtin/grep.c:891
-msgid "use Perl-compatible regular expressions"
-msgstr "sử dụng biểu thức chính quy tương thích Perl"
+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/grep.c:894
-msgid "show line numbers"
-msgstr "hiển thị số của dòng"
+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/grep.c:895
-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"
+msgid "read updates from stdin"
+msgstr "đọc cập nhật từ đầu vào tiêu chuẩn"
 
-#: builtin/grep.c:896
-msgid "don't show filenames"
-msgstr "không hiển thị tên tập tin"
+msgid "update the info files from scratch"
+msgstr "cập nhật các tập tin thông tin từ điểm xuất phát"
 
-#: builtin/grep.c:897
-msgid "show filenames"
-msgstr "hiển thị các tên tập tin"
+msgid "git upload-pack [<options>] <dir>"
+msgstr "git upload-pack [<các tùy chọn>] </đường/dẫn>"
 
-#: builtin/grep.c:899
-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)"
+msgid "quit after a single request/response exchange"
+msgstr "thoát sau khi một trao đổi yêu cầu hay trả lời đơn"
 
-#: builtin/grep.c:901
-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"
+msgid "serve up the info/refs for git-http-backend"
+msgstr "phục vụ info/refs (thông tin/tham chiếu) cho git-http-backend"
 
-#: builtin/grep.c:903
-msgid "synonym for --files-with-matches"
-msgstr "đồng nghĩa với --files-with-matches"
+msgid "do not try <directory>/.git/ if <directory> is no Git directory"
+msgstr "đừng thử <thư_mục>/.git/ nếu <thư_mục> không phải là thư mục Git"
 
-#: builtin/grep.c:906
-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"
+msgid "interrupt transfer after <n> seconds of inactivity"
+msgstr "ngắt truyền thông sau <n> giây không hoạt động"
 
-#: builtin/grep.c:908
-msgid "print NUL after filenames"
-msgstr "thêm NUL vào sau tên tập tin"
+msgid "git verify-commit [-v | --verbose] <commit>..."
+msgstr "git verify-commit [-v | --verbose] <lần_chuyển_giao>…"
 
-#: builtin/grep.c:911
-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"
+msgid "print commit contents"
+msgstr "hiển thị nội dung của lần chuyển giao"
 
-#: builtin/grep.c:913
-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"
+msgid "print raw gpg status output"
+msgstr "in kết xuất trạng thái gpg dạng thô"
 
-#: builtin/grep.c:914
-msgid "highlight matches"
-msgstr "tô sáng phần khớp mẫu"
+msgid "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
+msgstr "git verify-pack [-v | --verbose] [-s | --stat-only] <gói>…"
 
-#: builtin/grep.c:916
-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"
+msgid "verbose"
+msgstr "chi tiết"
 
-#: builtin/grep.c:918
-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"
+msgid "show statistics only"
+msgstr "chỉ hiển thị thống kê"
 
-#: builtin/grep.c:921
-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"
+msgid "git verify-tag [-v | --verbose] [--format=<format>] <tag>..."
+msgstr "git verify-tag [-v | --verbose] [--format=<định_dạng>] <thẻ>…"
 
-#: builtin/grep.c:924
-msgid "show <n> context lines before matches"
-msgstr "hiển thị <n> dòng nội dung trước khớp"
+msgid "print tag contents"
+msgstr "hiển thị nội dung của thẻ"
 
-#: builtin/grep.c:926
-msgid "show <n> context lines after matches"
-msgstr "hiển thị <n> dòng nội dung sau khớp"
+msgid "git worktree add [<options>] <path> [<commit-ish>]"
+msgstr "git worktree add [<các tùy chọn>] </đường/dẫn> [<commit-ish>]"
 
-#: builtin/grep.c:928
-msgid "use <n> worker threads"
-msgstr "dùng <n> tuyến trình làm việc"
+msgid "git worktree list [<options>]"
+msgstr "git worktree list [<các tùy chọn>]"
 
-#: builtin/grep.c:929
-msgid "shortcut for -C NUM"
-msgstr "dạng viết tắt của -C SỐ"
+msgid "git worktree lock [<options>] <path>"
+msgstr "git worktree lock [<các tùy chọn>] </đường/dẫn>"
 
-#: builtin/grep.c:932
-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"
+msgid "git worktree move <worktree> <new-path>"
+msgstr "git worktree move <worktree> </đường/dẫn/mới>"
 
-#: builtin/grep.c:934
-msgid "show the surrounding function"
-msgstr "hiển thị hàm bao quanh"
+msgid "git worktree prune [<options>]"
+msgstr "git worktree prune [<các tùy chọn>]"
 
-#: builtin/grep.c:937
-msgid "read patterns from file"
-msgstr "đọc mẫu từ tập-tin"
+msgid "git worktree remove [<options>] <worktree>"
+msgstr "git worktree remove [<các tùy chọn>] <worktree>"
 
-#: builtin/grep.c:939
-msgid "match <pattern>"
-msgstr "match <mẫu>"
+msgid "git worktree repair [<path>...]"
+msgstr "git worktree repair [</đường/dẫn/>...]"
 
-#: builtin/grep.c:941
-msgid "combine patterns specified with -e"
-msgstr "tổ hợp mẫu được chỉ ra với tùy chọn -e"
+msgid "git worktree unlock <path>"
+msgstr "git worktree unlock </đường/dẫn>"
 
-#: builtin/grep.c:953
-msgid "indicate hit with exit status without output"
-msgstr "Ä\91Æ°a ra gợi Ã½ vá»\9bi trạng thái thoát mà không có kết xuất"
+#, c-format
+msgid "Removing %s/%s: %s"
+msgstr "Ä\90ang xóa %s/%s: %s"
 
-#: builtin/grep.c:955
-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"
+msgid "report pruned working trees"
+msgstr "báo cáo các cây làm việc đã prune"
 
-#: builtin/grep.c:958
-msgid "pager"
-msgstr "dàn trang"
+msgid "expire working trees older than <time>"
+msgstr "các cây làm việc hết hạn cũ hơn khoảng <thời gian>"
 
-#: builtin/grep.c:958
-msgid "show matching files in the pager"
-msgstr "hiển thị các tập tin khớp trong trang giấy"
+#, c-format
+msgid "'%s' already exists"
+msgstr "“%s” đã có từ trước rồi"
 
-#: builtin/grep.c:962
-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)"
+#, c-format
+msgid "unusable worktree destination '%s'"
+msgstr "đích cây làm việc không sử dụng được “%s”"
 
-#: builtin/grep.c:1028
-msgid "no pattern given"
-msgstr "chưa chỉ ra mẫu"
+#, c-format
+msgid ""
+"'%s' is a missing but locked worktree;\n"
+"use '%s -f -f' to override, or 'unlock' and 'prune' or 'remove' to clear"
+msgstr ""
+"“%s” bị mất nhưng cây làm việc bị khóa;\n"
+"dùng “%s -f -f” để ghi đè, hoặc “unlock” và “prune” hay “remove” để xóa"
 
-#: builtin/grep.c:1064
-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"
+#, c-format
+msgid ""
+"'%s' is a missing but already registered worktree;\n"
+"use '%s -f' to override, or 'prune' or 'remove' to clear"
+msgstr ""
+"“%s” bị mất nhưng cây làm việc đã được đăng ký;\n"
+"dùng “%s -f” để ghi đè, hoặc “prune” hay “remove” để xóa"
 
-#: builtin/grep.c:1072
 #, c-format
-msgid "unable to resolve revision: %s"
-msgstr "không thể phân giải điểm xét duyệt: %s"
+msgid "failed to copy '%s' to '%s'; sparse-checkout may not work correctly"
+msgstr "gặp lỗi khi sao chép '%s' sang '%s'; không thể làm việc đúng được"
 
-#: builtin/grep.c:1102
-msgid "--untracked not supported with --recurse-submodules"
-msgstr "tùy chọn --untracked không được hỗ trợ với --recurse-submodules"
+#, c-format
+msgid "failed to copy worktree config from '%s' to '%s'"
+msgstr "gặp lỗi khi sao chép cấu hình cây làm việc từ “%s” sang “%s”"
 
-#: builtin/grep.c:1106
-msgid "invalid option combination, ignoring --threads"
-msgstr "tổ hợp tùy chọn không hợp lệ, bỏ qua --threads"
+#, c-format
+msgid "failed to unset '%s' in '%s'"
+msgstr "gặp lỗi bỏ đặt “%s” trong “%s”"
 
-#: builtin/grep.c:1109 builtin/pack-objects.c:4084
-msgid "no threads support, ignoring --threads"
-msgstr "không hỗ trợ đa tuyến, bỏ qua --threads"
+#, c-format
+msgid "could not create directory of '%s'"
+msgstr "không thể tạo thư mục của “%s”"
+
+msgid "initializing"
+msgstr "khởi tạo"
 
-#: builtin/grep.c:1112 builtin/index-pack.c:1584 builtin/pack-objects.c:3147
 #, c-format
-msgid "invalid number of threads specified (%d)"
-msgstr "số tuyến chỉ ra không hợp lệ (%d)"
+msgid "Preparing worktree (new branch '%s')"
+msgstr "Đang chuẩn bị cây làm việc (nhánh mới “%s”)"
 
-#: builtin/grep.c:1146
-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"
+#, c-format
+msgid "Preparing worktree (resetting branch '%s'; was at %s)"
+msgstr "Đang chuẩn bị cây làm việc (đang cài đặt nhánh “%s”, trước đây tại %s)"
 
-#: builtin/grep.c:1179
-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"
+#, c-format
+msgid "Preparing worktree (checking out '%s')"
+msgstr "Đang chuẩn bị cây làm việc (đang lấy ra “%s”)"
 
-#: builtin/grep.c:1187
-msgid "both --cached and trees are given"
-msgstr "cả hai --cached và các cây phải được chỉ ra"
+#, c-format
+msgid "Preparing worktree (detached HEAD %s)"
+msgstr "Đang chuẩn bị cây làm việc (HEAD đã tách rời “%s”)"
 
-#: builtin/hash-object.c:83
-msgid ""
-"git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
-"[--] <file>..."
-msgstr ""
-"git hash-object [-t <kiểu>] [-w] [--path=<tập-tin> | --no-filters] [--stdin] "
-"[--] <tập-tin>…"
+msgid "checkout <branch> even if already checked out in other worktree"
+msgstr "lấy ra <nhánh> ngay cả khi nó đã được lấy ra ở cây làm việc khác"
 
-#: builtin/hash-object.c:97
-msgid "object type"
-msgstr "kiểu đối tượng"
+msgid "create a new branch"
+msgstr "tạo nhánh mới"
 
-#: builtin/hash-object.c:98
-msgid "write the object into the object database"
-msgstr "ghi đối tượng vào dữ liệu đối tượng"
+msgid "create or reset a branch"
+msgstr "tạo hay đặt lại một nhánh"
 
-#: builtin/hash-object.c:100
-msgid "read the object from stdin"
-msgstr "đọc đối tượng từ đầu vào tiêu chuẩn stdin"
+msgid "populate the new working tree"
+msgstr "di chuyển cây làm việc mới"
 
-#: builtin/hash-object.c:102
-msgid "store file as is without filters"
-msgstr "lưu các tập tin mà nó không có các bộ lọc"
+msgid "keep the new working tree locked"
+msgstr "giữ cây làm việc mới bị khóa"
 
-#: builtin/hash-object.c:103
-msgid ""
-"just hash any random garbage to create corrupt objects for debugging Git"
-msgstr "chỉ cần băm rác ngẫu nhiên để tạo một đối tượng hỏng để mà gỡ lỗi Git"
+msgid "reason for locking"
+msgstr "lý do khóa"
 
-#: builtin/hash-object.c:104
-msgid "process file as it were from this path"
-msgstr "xử lý tập tin như là nó đang ở thư mục này"
+msgid "set up tracking mode (see git-branch(1))"
+msgstr "cài đặt chế độ theo dõi (xem git-branch(1))"
 
-#: builtin/help.c:57
-msgid "print all available commands"
-msgstr "hiển thị danh sách các câu lệnh người dùng có thể sử dụng"
+msgid "try to match the new branch name with a remote-tracking branch"
+msgstr "có khớp tên tên nhánh mới với một nhánh theo dõi máy chủ"
 
-#: builtin/help.c:60
-msgid "show external commands in --all"
-msgstr "hiển thị các lệnh bên ngoài trong --all"
+#, c-format
+msgid "options '%s', '%s', and '%s' cannot be used together"
+msgstr "tùy chọn '%s', '%s' và '%s' không thể dùng cùng nhau"
 
-#: builtin/help.c:61
-msgid "show aliases in --all"
-msgstr "hiển thị các bí danh trong --all"
+msgid "added with --lock"
+msgstr "được thêm với --lock"
 
-#: builtin/help.c:62
-msgid "exclude guides"
-msgstr "hướng dẫn loại trừ"
+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/help.c:63
-msgid "show man page"
-msgstr "hiển thị trang man"
+msgid "show extended annotations and reasons, if available"
+msgstr "hiển thị chú thích và lý do mở rộng, nếu có"
 
-#: builtin/help.c:64
-msgid "show manual in web browser"
-msgstr "hiển thị hướng dẫn sử dụng trong trình duyệt web"
+msgid "add 'prunable' annotation to worktrees older than <time>"
+msgstr ""
+"thêm chú thích kiểu “prunable” cho các cây làm việc hết hạn cũ hơn khoảng "
+"<thời gian>"
 
-#: builtin/help.c:66
-msgid "show info page"
-msgstr "hiển thị trang info"
+msgid "terminate records with a NUL character"
+msgstr "chấm dứt các bản ghi bằng ký tự NULL"
 
-#: builtin/help.c:68
-msgid "print command description"
-msgstr "hiển thị mô tả lệnh"
+#, c-format
+msgid "'%s' is not a working tree"
+msgstr "%s không phải là cây làm việc"
 
-#: builtin/help.c:70
-msgid "print list of useful guides"
-msgstr "hiển thị danh sách các hướng dẫn hữu dụng"
+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/help.c:72
-msgid "print all configuration variable names"
-msgstr "in ra tất cả các tên biến cấu hình"
+#, c-format
+msgid "'%s' is already locked, reason: %s"
+msgstr "“%s” đã được khóa rồi, lý do: %s"
 
-#: builtin/help.c:84
-msgid "git help [[-i|--info] [-m|--man] [-w|--web]] [<command>]"
-msgstr "git help [[-i|--info] [-m|--man] [-w|--web]] [<lệnh>]"
+#, c-format
+msgid "'%s' is already locked"
+msgstr "“%s” đã được khóa rồi"
 
-#: builtin/help.c:201
 #, c-format
-msgid "unrecognized help format '%s'"
-msgstr "không nhận ra định dạng trợ giúp “%s”"
+msgid "'%s' is not locked"
+msgstr "“%s” chưa bị khóa"
 
-#: builtin/help.c:227
-msgid "Failed to start emacsclient."
-msgstr "Gặp lỗi khi khởi chạy emacsclient."
+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/help.c:240
-msgid "Failed to parse emacsclient version."
-msgstr "Gặp lỗi khi phân tích phiên bản emacsclient."
+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/help.c:248
 #, c-format
-msgid "emacsclient version '%d' too old (< 22)."
-msgstr "phiên bản của emacsclient “%d” quá cũ (< 22)."
+msgid "'%s' is a main working tree"
+msgstr "“%s” là cây làm việc chính"
 
-#: builtin/help.c:266 builtin/help.c:288 builtin/help.c:298 builtin/help.c:306
 #, c-format
-msgid "failed to exec '%s'"
-msgstr "gặp lỗi khi thực thi “%s”"
+msgid "could not figure out destination name from '%s'"
+msgstr "không thể phác họa ra tên đích đến “%s”"
 
-#: builtin/help.c:344
 #, c-format
 msgid ""
-"'%s': path for unsupported man viewer.\n"
-"Please consider using 'man.<tool>.cmd' instead."
+"cannot move a locked working tree, lock reason: %s\n"
+"use 'move -f -f' to override or unlock first"
 msgstr ""
-"“%s”: đường dẫn không hỗ trợ bộ trình chiếu man.\n"
-"Hãy cân nhắc đến việc sử dụng “man.<tool>.cmd” để thay thế."
+"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/help.c:356
-#, c-format
 msgid ""
-"'%s': cmd for supported man viewer.\n"
-"Please consider using 'man.<tool>.path' instead."
+"cannot move a locked working tree;\n"
+"use 'move -f -f' to override or unlock first"
 msgstr ""
-"“%s”: cmd (lệnh) hỗ trợ bộ trình chiếu man.\n"
-"Hãy cân nhắc đến việc sử dụng “man.<tool>.path” để thay thế."
+"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/help.c:471
 #, c-format
-msgid "'%s': unknown man viewer."
-msgstr "“%s”: không rõ chương trình xem man."
+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/help.c:487
-msgid "no man viewer handled the request"
-msgstr "không có trình xem trợ giúp dạng manpage tiếp hợp với yêu cầu"
+#, c-format
+msgid "failed to move '%s' to '%s'"
+msgstr "gặp lỗi khi chuyển “%s” sang “%s”"
 
-#: builtin/help.c:494
-msgid "no info viewer handled the request"
-msgstr "không có trình xem trợ giúp dạng info tiếp hợp với yêu cầu"
+#, c-format
+msgid "failed to run 'git status' on '%s'"
+msgstr "gặp lỗi khi chạy “git status” vào “%s”"
 
-#: builtin/help.c:555 builtin/help.c:566 git.c:348
 #, c-format
-msgid "'%s' is aliased to '%s'"
-msgstr "“%s” được đặt bí danh thành “%s”"
+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/help.c:569 git.c:380
 #, c-format
-msgid "bad alias.%s string: %s"
-msgstr "chuỗi alias.%s sai: %s"
+msgid "failed to run 'git status' on '%s', code %d"
+msgstr "gặp lỗi khi chạy “git status” trong “%s”, mã %d"
+
+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/help.c:611
 #, c-format
-msgid "the '%s' option doesn't take any non-option arguments"
-msgstr "tùy chọn '%s' không nhận bất kỳ tham số không phải tùy chọn nào khác"
+msgid ""
+"cannot remove a locked working tree, lock reason: %s\n"
+"use 'remove -f -f' to override or unlock first"
+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/help.c:631
 msgid ""
-"the '--no-[external-commands|aliases]' options can only be used with '--all'"
+"cannot remove a locked working tree;\n"
+"use 'remove -f -f' to override or unlock first"
 msgstr ""
-"tùy chọn '--no-[external-commands|aliases]' chỉ có thể sử dụng cùng với '--"
-"all'"
+"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/help.c:643 builtin/help.c:671
 #, c-format
-msgid "usage: %s%s"
-msgstr "cách dùng: %s%s"
+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/help.c:666
-msgid "'git help config' for more information"
-msgstr "Chạy lệnh “git help config” để có thêm thông tin"
+#, c-format
+msgid "repair: %s: %s"
+msgstr "sửa chữa: %s: %s"
 
-#: builtin/hook.c:10
-msgid "git hook run [--ignore-missing] <hook-name> [-- <hook-args>]"
-msgstr "git hook run [--ignore-missing] <tên-móc> [-- <các tham số cho móc>]"
+#, c-format
+msgid "error: %s: %s"
+msgstr "lỗi: %s: %s"
 
-#: builtin/hook.c:30
-msgid "silently ignore missing requested <hook-name>"
-msgstr "bỏ qua âm thầm các <hook-name> đã yêu cầu còn thiếu"
+msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
+msgstr "git write-tree [--missing-ok] [--prefix=<tiền-tố>/]"
+
+msgid "<prefix>/"
+msgstr "<tiền tố>/"
+
+msgid "write tree object for a subdirectory <prefix>"
+msgstr "ghi đối tượng cây (tree) cho <tiền tố> thư mục con"
+
+msgid "only useful for debugging"
+msgstr "chỉ hữu ích khi cần gỡ lỗi"
 
-#: builtin/index-pack.c:221
 #, c-format
-msgid "object type mismatch at %s"
-msgstr "kiểu đối tượng không khớp tại %s"
+msgid "unrecognized bundle hash algorithm: %s"
+msgstr "không hiểu thuật toán băm dữ liệu bundle: %s"
 
-#: builtin/index-pack.c:241
 #, c-format
-msgid "did not receive expected object %s"
-msgstr "không thể lấy về đối tượng cần %s"
+msgid "unknown capability '%s'"
+msgstr "không hiểu dung lượng “%s”"
 
-#: builtin/index-pack.c:244
 #, c-format
-msgid "object %s: expected type %s, found %s"
-msgstr "đối tượng %s: cần kiểu %s nhưng lại nhận được %s"
+msgid "'%s' does not look like a v2 or v3 bundle file"
+msgstr "“%s” không giống như tập tin v2 hay v3 bundle (định dạng dump của git)"
 
-#: builtin/index-pack.c:294
 #, c-format
-msgid "cannot fill %d byte"
-msgid_plural "cannot fill %d bytes"
-msgstr[0] "không thể điền thêm vào %d byte"
+msgid "unrecognized header: %s%s (%d)"
+msgstr "phần đầu không được thừa nhận: %s%s (%d)"
 
-#: builtin/index-pack.c:304
-msgid "early EOF"
-msgstr "gặp kết thúc tập tin EOF quá sớm"
+msgid "Repository lacks these prerequisite commits:"
+msgstr "Kho chứa thiếu những lần chuyển giao tiên quyết này:"
 
-#: builtin/index-pack.c:305
-msgid "read error on input"
-msgstr "lỗi đọc ở đầu vào"
+msgid "need a repository to verify a bundle"
+msgstr "cần một kho chứa để thẩm tra một bundle"
 
-#: builtin/index-pack.c:317
-msgid "used more bytes than were available"
-msgstr "sử dụng nhiều hơn số lượng byte mà nó sẵn có"
+#, c-format
+msgid "The bundle contains this ref:"
+msgid_plural "The bundle contains these %<PRIuMAX> refs:"
+msgstr[0] "Bó dữ liệu chứa %<PRIuMAX> tham chiếu:"
 
-#: builtin/index-pack.c:324 builtin/pack-objects.c:754
-msgid "pack too large for current definition of off_t"
-msgstr "gói quá lớn so với định nghĩa hiện tại của kiểu off_t"
+msgid "The bundle records a complete history."
+msgstr "Lệnh bundle ghi lại toàn bộ lịch sử."
 
-#: builtin/index-pack.c:329
 #, c-format
-msgid "pack exceeds maximum allowed size (%s)"
-msgstr "gói đã vượt quá cỡ tối đa được phép (%s)"
+msgid "The bundle requires this ref:"
+msgid_plural "The bundle requires these %<PRIuMAX> refs:"
+msgstr[0] "Lệnh bundle yêu cầu %<PRIuMAX> tham chiếu này:"
 
-#: builtin/index-pack.c:362
-msgid "pack signature mismatch"
-msgstr "chữ ký cho gói không khớp"
+msgid "unable to dup bundle descriptor"
+msgstr "không thể nhân đôi bộ mô tả bundle"
 
-#: builtin/index-pack.c:364
-#, c-format
-msgid "pack version %<PRIu32> unsupported"
-msgstr "không hỗ trợ phiên bản gói %<PRIu32>"
+msgid "Could not spawn pack-objects"
+msgstr "Không thể sản sinh đối tượng gói"
 
-#: builtin/index-pack.c:380
-#, c-format
-msgid "pack has bad object at offset %<PRIuMAX>: %s"
-msgstr "gói có đối tượng sai tại khoảng bù %<PRIuMAX>: %s"
+msgid "pack-objects died"
+msgstr "đối tượng gói đã chết"
 
-#: builtin/index-pack.c:485
 #, c-format
-msgid "inflate returned %d"
-msgstr "xả nén trả về %d"
-
-#: builtin/index-pack.c:534
-msgid "offset value overflow for delta base object"
-msgstr "tràn giá trị khoảng bù cho đối tượng delta cơ sở"
+msgid "ref '%s' is excluded by the rev-list options"
+msgstr "th.chiếu “%s” bị loại trừ bởi các tùy chọn rev-list"
 
-#: builtin/index-pack.c:542
-msgid "delta base offset is out of bound"
-msgstr "khoảng bù cơ sở cho delta nằm ngoài phạm vi"
+#, c-format
+msgid "unsupported bundle version %d"
+msgstr "phiên bản bundle %d không được hỗ trợ"
 
-#: builtin/index-pack.c:550
 #, c-format
-msgid "unknown object type %d"
-msgstr "không hiểu kiểu đối tượng %d"
+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"
 
-#: builtin/index-pack.c:581
-msgid "cannot pread pack file"
-msgstr "không thể chạy hàm pread cho tập tin gói"
+msgid "Refusing to create empty bundle."
+msgstr "Từ chối tạo một bó dữ liệu trống rỗng."
 
-#: builtin/index-pack.c:583
 #, c-format
-msgid "premature end of pack file, %<PRIuMAX> byte missing"
-msgid_plural "premature end of pack file, %<PRIuMAX> bytes missing"
-msgstr[0] "tập tin gói bị kết thúc sớm, thiếu %<PRIuMAX> byte"
+msgid "cannot create '%s'"
+msgstr "không thể tạo “%s”"
 
-#: builtin/index-pack.c:609
-msgid "serious inflate inconsistency"
-msgstr "sự mâu thuẫn xả nén nghiêm trọng"
+msgid "index-pack died"
+msgstr "mục lục gói đã chết"
+
+msgid "terminating chunk id appears earlier than expected"
+msgstr "mã mảnh kết thúc sớm hơn bình thường"
 
-#: builtin/index-pack.c:754 builtin/index-pack.c:760 builtin/index-pack.c:784
-#: builtin/index-pack.c:823 builtin/index-pack.c:832
 #, c-format
-msgid "SHA1 COLLISION FOUND WITH %s !"
-msgstr "SỰ VA CHẠM SHA1 ĐàXẢY RA VỚI %s!"
+msgid "improper chunk offset(s) %<PRIx64> and %<PRIx64>"
+msgstr "bù mảnh không đúng cách %<PRIx64> và %<PRIx64>"
 
-#: builtin/index-pack.c:757 builtin/pack-objects.c:290
-#: builtin/pack-objects.c:350 builtin/pack-objects.c:456
 #, c-format
-msgid "unable to read %s"
-msgstr "không thể đọc %s"
+msgid "duplicate chunk ID %<PRIx32> found"
+msgstr "tìm thấy ID của mảnh bị trùng lặp %<PRIx32>"
 
-#: builtin/index-pack.c:821
 #, c-format
-msgid "cannot read existing object info %s"
-msgstr "không thể đọc thông tin đối tượng sẵn có %s"
+msgid "final chunk has non-zero id %<PRIx32>"
+msgstr "mảnh cuối cùng có id không bằng không %<PRIx32>"
 
-#: builtin/index-pack.c:829
-#, c-format
-msgid "cannot read existing object %s"
-msgstr "không thể đọc đối tượng đã tồn tại %s"
+msgid "invalid hash version"
+msgstr "phiên bản băm không hợp lệ"
 
-#: builtin/index-pack.c:843
 #, c-format
-msgid "invalid blob object %s"
-msgstr "đối tượng blob không hợp lệ %s"
+msgid "invalid color value: %.*s"
+msgstr "giá trị màu không hợp lệ: %.*s"
 
-#: builtin/index-pack.c:846 builtin/index-pack.c:865
-msgid "fsck error in packed object"
-msgstr "lỗi fsck trong đối tượng đóng gói"
+msgid "Add file contents to the index"
+msgstr "Thêm nội dung tập tin vào bảng mục lục"
 
-#: builtin/index-pack.c:867
-#, c-format
-msgid "Not all child objects of %s are reachable"
-msgstr "Không phải tất cả các đối tượng con của %s là có thể với tới được"
+msgid "Apply a series of patches from a mailbox"
+msgstr "Áp dụng một chuỗi các miếng và từ một mailbox"
 
-#: builtin/index-pack.c:928 builtin/index-pack.c:975
-msgid "failed to apply delta"
-msgstr "gặp lỗi khi áp dụng delta"
+msgid "Annotate file lines with commit information"
+msgstr "Các dòng diễn giải tập tin với thông tin chuyển giao"
 
-#: builtin/index-pack.c:1161
-msgid "Receiving objects"
-msgstr "Đang nhận về các đối tượng"
+msgid "Apply a patch to files and/or to the index"
+msgstr ""
+"Áp dụng một miếng vá cho các tập tin đã chỉ ra và/hoặc vào bảng mục lục"
 
-#: builtin/index-pack.c:1161
-msgid "Indexing objects"
-msgstr "Các đối tượng bảng mục lục"
+msgid "Import a GNU Arch repository into Git"
+msgstr "Nhập một kho GNU Arch vào một kho Git"
 
-#: builtin/index-pack.c:1195
-msgid "pack is corrupted (SHA1 mismatch)"
-msgstr "gói bị sai hỏng (SHA1 không khớp)"
+msgid "Create an archive of files from a named tree"
+msgstr "Tạo một kho nén các tập tin từ cây làm việc có tên"
 
-#: builtin/index-pack.c:1200
-msgid "cannot fstat packfile"
-msgstr "không thể lấy thông tin thống kê packfile"
+msgid "Use binary search to find the commit that introduced a bug"
+msgstr "Tìm kiếm dạng nhị phân để tìm ra lần chuyển giao nào đưa ra lỗi"
 
-#: builtin/index-pack.c:1203
-msgid "pack has junk at the end"
-msgstr "pack có phần thừa ở cuối"
+msgid "Show what revision and author last modified each line of a file"
+msgstr ""
+"Hiển thị số hiệu phiên bản và tác giả sửa đổi cuối cho từng dòng của một tập "
+"tin"
 
-#: builtin/index-pack.c:1215
-msgid "confusion beyond insanity in parse_pack_objects()"
-msgstr "lộn xộn hơn cả điên rồ khi chạy hàm parse_pack_objects()"
+msgid "List, create, or delete branches"
+msgstr "Liệt kê, tạo hay là xóa các nhánh"
 
-#: builtin/index-pack.c:1238
-msgid "Resolving deltas"
-msgstr "Đang phân giải các delta"
+msgid "Collect information for user to file a bug report"
+msgstr "Sưu tập thông tin người dùng để báo cáo lỗi"
 
-#: builtin/index-pack.c:1249 builtin/pack-objects.c:2913
-#, c-format
-msgid "unable to create thread: %s"
-msgstr "không thể tạo tuyến: %s"
+msgid "Move objects and refs by archive"
+msgstr "Di chuyển các đối tượng và tham chiếu theo kho lưu"
 
-#: builtin/index-pack.c:1282
-msgid "confusion beyond insanity"
-msgstr "lộn xộn hơn cả điên rồ"
+msgid "Provide content or type and size information for repository objects"
+msgstr "Cung cấp nội dung hoặc thông tin về kiểu và cỡ cho các đối tượng kho"
 
-#: builtin/index-pack.c:1288
-#, c-format
-msgid "completed with %d local object"
-msgid_plural "completed with %d local objects"
-msgstr[0] "đầy đủ với %d đối tượng nội bộ"
+msgid "Display gitattributes information"
+msgstr "Hiển thị thông tin gitattributes"
 
-#: builtin/index-pack.c:1300
-#, c-format
-msgid "Unexpected tail checksum for %s (disk corruption?)"
-msgstr "Gặp tổng kiểm tra tail không cần cho %s (đĩa hỏng?)"
+msgid "Debug gitignore / exclude files"
+msgstr "Gỡ lỗi các tập tin gitignore / exclude"
 
-#: builtin/index-pack.c:1304
-#, c-format
-msgid "pack has %d unresolved delta"
-msgid_plural "pack has %d unresolved deltas"
-msgstr[0] "gói có %d delta chưa được giải quyết"
+msgid "Show canonical names and email addresses of contacts"
+msgstr "Hiển thị tên và địa chỉ thư điện tử của các liên hệ dạng chuẩn hóa"
 
-#: builtin/index-pack.c:1328
-#, c-format
-msgid "unable to deflate appended object (%d)"
-msgstr "không thể xả nén đối tượng nối thêm (%d)"
+msgid "Ensures that a reference name is well formed"
+msgstr "Đảm bảo rằng một tên tham chiếu ở dạng thức tốt"
 
-#: builtin/index-pack.c:1423
-#, c-format
-msgid "local object %s is corrupt"
-msgstr "đối tượng nội bộ %s bị hỏng"
+msgid "Switch branches or restore working tree files"
+msgstr "Chuyển các nhánh hoặc phục hồi lại các tập tin cây làm việc"
 
-#: builtin/index-pack.c:1445
-#, c-format
-msgid "packfile name '%s' does not end with '.%s'"
-msgstr "tên tập tin tập tin gói “%s” không được kết thúc “.%s”"
+msgid "Copy files from the index to the working tree"
+msgstr "Sao chép các tập tin từ mục lục ra cây làm việc"
 
-#: builtin/index-pack.c:1469
-#, c-format
-msgid "cannot write %s file '%s'"
-msgstr "không thể ghi %s tập tin “%s”"
+msgid "Find commits yet to be applied to upstream"
+msgstr "Tìm những lần chuyển giao còn chưa được áp dụng lên thượng nguồn"
 
-#: builtin/index-pack.c:1477
-#, c-format
-msgid "cannot close written %s file '%s'"
-msgstr "không thể đóng tập tin được ghi %s “%s”"
+msgid "Apply the changes introduced by some existing commits"
+msgstr "Áp dụng các thay đổi được đưa ra bởi một số lần chuyển giao sẵn có"
 
-#: builtin/index-pack.c:1494
-#, c-format
-msgid "unable to rename temporary '*.%s' file to '%s'"
-msgstr "không thể đổi tên tập tin tạm thời “*.%s” thành “%s”"
+msgid "Graphical alternative to git-commit"
+msgstr "Tương tác đồ họa với git-commit"
 
-#: builtin/index-pack.c:1519
-msgid "error while closing pack file"
-msgstr "gặp lỗi trong khi đóng tập tin gói"
+msgid "Remove untracked files from the working tree"
+msgstr "Gỡ bỏ các tập tin không được theo dõi từ cây làm việc"
 
-#: builtin/index-pack.c:1578 builtin/pack-objects.c:3158
-#, c-format
-msgid "bad pack.indexversion=%<PRIu32>"
-msgstr "sai pack.indexversion=%<PRIu32>"
+msgid "Clone a repository into a new directory"
+msgstr "Nhân bản một kho chứa đến một thư mục mới"
 
-#: builtin/index-pack.c:1648
-#, c-format
-msgid "Cannot open existing pack file '%s'"
-msgstr "Không thể mở tập tin gói đã sẵn có “%s”"
+msgid "Display data in columns"
+msgstr "Hiển thị dữ liệu dạng các cột"
 
-#: builtin/index-pack.c:1650
-#, c-format
-msgid "Cannot open existing pack idx file for '%s'"
-msgstr "Không thể mở tập tin idx của gói cho “%s”"
+msgid "Record changes to the repository"
+msgstr "Ghi các thay đổi vào kho chứa"
 
-#: builtin/index-pack.c:1698
-#, c-format
-msgid "non delta: %d object"
-msgid_plural "non delta: %d objects"
-msgstr[0] "không delta: %d đối tượng"
+msgid "Write and verify Git commit-graph files"
+msgstr "Ghi và thẩm tra các tập tin đồ họa các lần chuyển giao Git"
 
-#: builtin/index-pack.c:1705
-#, c-format
-msgid "chain length = %d: %lu object"
-msgid_plural "chain length = %d: %lu objects"
-msgstr[0] "chiều dài xích = %d: %lu đối tượng"
+msgid "Create a new commit object"
+msgstr "Tạo một đối tượng chuyển giao"
 
-#: builtin/index-pack.c:1748
-msgid "Cannot come back to cwd"
-msgstr "Không thể quay lại cwd"
+msgid "Get and set repository or global options"
+msgstr "Lấy và đặt kho hoặc các tùy chọn toàn cục"
 
-#: builtin/index-pack.c:1802 builtin/index-pack.c:1805
-#: builtin/index-pack.c:1825 builtin/index-pack.c:1829
-#, c-format
-msgid "bad %s"
-msgstr "%s sai"
+msgid "Count unpacked number of objects and their disk consumption"
+msgstr ""
+"Đếm số lượng đối tượng chưa được đóng gói và mức tiêu dùng đĩa của chúng"
 
-#: builtin/index-pack.c:1835 builtin/init-db.c:379 builtin/init-db.c:614
-#, c-format
-msgid "unknown hash algorithm '%s'"
-msgstr "không hiểu thuật toán băm dữ liệu “%s”"
+msgid "Retrieve and store user credentials"
+msgstr "Nhận và lưu chứng nhận của người dùng"
 
-#: builtin/index-pack.c:1856
-msgid "--stdin requires a git repository"
-msgstr "--stdin cần một kho git"
+msgid "Helper to temporarily store passwords in memory"
+msgstr "Bộ hỗ trợ để lưu mật khẩu tạm thời trong bộ nhớ"
 
-#: builtin/index-pack.c:1873
-msgid "--verify with no packfile name given"
-msgstr "dùng tùy chọn --verify mà không đưa ra tên packfile"
+msgid "Helper to store credentials on disk"
+msgstr "Bộ hỗ trợ để lưu chứng nhận vào đĩa"
 
-#: builtin/index-pack.c:1939 builtin/unpack-objects.c:584
-msgid "fsck error in pack objects"
-msgstr "lỗi fsck trong các đối tượng gói"
+msgid "Export a single commit to a CVS checkout"
+msgstr "Xuất một lần chuyển giao thành một lần lấy ra CVS"
 
-#: builtin/init-db.c:63
-#, c-format
-msgid "cannot stat template '%s'"
-msgstr "không thể lấy thông tin thống kê về mẫu “%s”"
+msgid "Salvage your data out of another SCM people love to hate"
+msgstr "Xem xét giá trị dữ liệu của bạn khỏi người khác yêu SCM để ghét"
 
-#: builtin/init-db.c:68
-#, c-format
-msgid "cannot opendir '%s'"
-msgstr "không thể opendir() “%s”"
+msgid "A CVS server emulator for Git"
+msgstr "Một bộ mô phỏng máy dịch vụ CVS cho Git"
 
-#: builtin/init-db.c:80
-#, c-format
-msgid "cannot readlink '%s'"
-msgstr "không thể readlink “%s”"
+msgid "A really simple server for Git repositories"
+msgstr "Một máy phục vụ thực sự đơn giản dành cho kho Git"
 
-#: builtin/init-db.c:82
-#, c-format
-msgid "cannot symlink '%s' '%s'"
-msgstr "không thể tạo liên kết mềm (symlink) “%s” “%s”"
+msgid "Give an object a human readable name based on an available ref"
+msgstr ""
+"Đưa ra một đối tượng dựa trên một tên ở dạng con người đọc được trên một "
+"tham chiếu sẵn có"
 
-#: builtin/init-db.c:88
-#, c-format
-msgid "cannot copy '%s' to '%s'"
-msgstr "không thể sao chép “%s” sang “%s”"
+msgid "Show changes between commits, commit and working tree, etc"
+msgstr ""
+"Hiển thị các thay đổi giữa những lần chuyển giao, giữa một lần chuyển giao "
+"và cây làm việc, v.v.."
 
-#: builtin/init-db.c:92
-#, c-format
-msgid "ignoring template %s"
-msgstr "đang lờ đi mẫu “%s”"
+msgid "Compares files in the working tree and the index"
+msgstr "So sánh các tập tin trong cây làm việc và bảng mục lục"
 
-#: builtin/init-db.c:123
-#, c-format
-msgid "templates not found in %s"
-msgstr "các mẫu không được tìm thấy trong %s"
+msgid "Compare a tree to the working tree or index"
+msgstr "So sánh các cây trong cây làm việc hoặc bảng mục lục"
 
-#: builtin/init-db.c:138
-#, c-format
-msgid "not copying templates from '%s': %s"
-msgstr "không sao chép các mẫu từ “%s”: %s"
+msgid "Compares the content and mode of blobs found via two tree objects"
+msgstr ""
+"So sánh nội dung và chế độ của các blob tìm thấy thông qua hai đối tượng cây"
 
-#: builtin/init-db.c:263
-#, c-format
-msgid "invalid initial branch name: '%s'"
-msgstr "tên nhánh khởi tạo không hợp lệ: “%s”"
+msgid "Show changes using common diff tools"
+msgstr "Hiển thị các thay đổi sử dụng các công cụ diff chung"
 
-#: builtin/init-db.c:354
-#, c-format
-msgid "unable to handle file type %d"
-msgstr "không thể xử lý (handle) tập tin kiểu %d"
+msgid "Git data exporter"
+msgstr "Bộ xuất dữ liệu Git"
 
-#: builtin/init-db.c:357
-#, c-format
-msgid "unable to move %s to %s"
-msgstr "không di chuyển được %s vào %s"
+msgid "Backend for fast Git data importers"
+msgstr "Ứng dụng chạy phía sau cho bộ nhập nhanh dữ liệu Git"
 
-#: builtin/init-db.c:373
-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"
+msgid "Download objects and refs from another repository"
+msgstr "Tải về các đối tượng và tham chiếu từ kho chứa khác"
 
-#: builtin/init-db.c:397 builtin/init-db.c:400
-#, c-format
-msgid "%s already exists"
-msgstr "%s đã có từ trước rồi"
+msgid "Receive missing objects from another repository"
+msgstr "Tải về các đối tượng còn thiếu từ kho chứa khác"
 
-#: builtin/init-db.c:432
-#, c-format
-msgid "re-init: ignored --initial-branch=%s"
-msgstr "re-init: --initial-branch=%s bị bỏ qua"
+msgid "Rewrite branches"
+msgstr "Những nhánh ghi lại"
+
+msgid "Produce a merge commit message"
+msgstr "Sản sinh một ghi chú lần chuyển giao hòa trộn"
+
+msgid "Output information on each ref"
+msgstr "Xuất thông tin cho từng tham chiếu"
 
-#: builtin/init-db.c:463
-#, 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"
+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"
 
-#: builtin/init-db.c:464
-#, 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"
+msgid "Prepare patches for e-mail submission"
+msgstr "Chuẩn bị các miếng vá để gửi qua thư điện tử"
 
-#: builtin/init-db.c:468
-#, 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"
+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"
 
-#: builtin/init-db.c:469
-#, 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"
+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ộ"
 
-#: builtin/init-db.c:518
-msgid ""
-"git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
-"shared[=<permissions>]] [<directory>]"
+msgid "Extract commit ID from an archive created using git-archive"
 msgstr ""
-"git init [-q | --quiet] [--bare] [--template=<thư-mục-tạm>] [--shared[=<các-"
-"quyền>]] [thư-mục]"
+"Rút trích mã số lần chuyển giao từ một kho nén đã được tạo bởi git-archive"
 
-#: builtin/init-db.c:544
-msgid "permissions"
-msgstr "các quyền"
+msgid "Print lines matching a pattern"
+msgstr "In ra những dòng khớp với một mẫu"
 
-#: builtin/init-db.c:545
-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"
+msgid "A portable graphical interface to Git"
+msgstr "Một giao diện đồ họa khả chuyển cho Git"
 
-#: builtin/init-db.c:551
-msgid "override the name of the initial branch"
-msgstr "ghi đè lên tên của nhánh khởi tạo"
+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"
 
-#: builtin/init-db.c:552 builtin/verify-pack.c:74
-msgid "hash"
-msgstr "băm"
+msgid "Display help information about Git"
+msgstr "Hiển thị thông tin trợ giúp về Git"
 
-#: builtin/init-db.c:553 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"
+msgid "Run git hooks"
+msgstr "Chạy các móc git"
 
-#: builtin/init-db.c:591 builtin/init-db.c:596
-#, c-format
-msgid "cannot mkdir %s"
-msgstr "không thể mkdir (tạo thư mục): %s"
+msgid "Server side implementation of Git over HTTP"
+msgstr "Thi hành phía máy chủ của Git qua HTTP"
 
-#: builtin/init-db.c:600 builtin/init-db.c:655
-#, c-format
-msgid "cannot chdir to %s"
-msgstr "không thể chdir (chuyển đổi thư mục) sang %s"
+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"
 
-#: builtin/init-db.c:627
-#, c-format
-msgid ""
-"%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
-"dir=<directory>)"
+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"
+
+msgid "Send a collection of patches from stdin to an IMAP folder"
 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>)"
+"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"
 
-#: builtin/init-db.c:679
-#, c-format
-msgid "Cannot access work tree '%s'"
-msgstr "Không thể truy cập cây (tree) làm việc “%s”"
+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ó"
 
-#: builtin/init-db.c:684
-msgid "--separate-git-dir incompatible with bare repository"
-msgstr "--separate-git-dir xung khắc với kho thuần"
+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"
 
-#: builtin/interpret-trailers.c:16
-msgid ""
-"git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
-"<token>[(=|:)<value>])...] [<file>...]"
-msgstr ""
-"git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
-"<thẻ>[(=|:)<giá-trị>])…] [<tập-tin>…]"
+msgid "Instantly browse your working repository in gitweb"
+msgstr "Duyệt ngay kho làm việc của bạn trong gitweb"
 
-#: builtin/interpret-trailers.c:95
-msgid "edit files in place"
-msgstr "sửa các tập tin tại chỗ"
+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"
 
-#: builtin/interpret-trailers.c:96
-msgid "trim empty trailers"
-msgstr "bộ dò vết cắt bỏ phần trống rỗng"
+msgid "Show commit logs"
+msgstr "Hiển thị nhật ký các lần chuyển giao"
 
-#: builtin/interpret-trailers.c:99
-msgid "where to place the new trailer"
-msgstr "đặt phần đuôi mới ở đâu"
+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"
 
-#: builtin/interpret-trailers.c:101
-msgid "action if trailer already exists"
-msgstr "thao tác khi đã có phần đuôi"
+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"
 
-#: builtin/interpret-trailers.c:103
-msgid "action if trailer is missing"
-msgstr "thao tác khi thiếu phần đuôi"
+msgid "List the contents of a tree object"
+msgstr "Liệt kê nội dung của đối tượng cây"
 
-#: builtin/interpret-trailers.c:105
-msgid "output only the trailers"
-msgstr "chỉ xuất phần đuôi"
+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"
 
-#: builtin/interpret-trailers.c:106
-msgid "do not apply config rules"
-msgstr "đừng áp dụng các quy tắc cấu hình"
+msgid "Simple UNIX mbox splitter program"
+msgstr "Chương trình phân tách UNIX mbox đơn giản"
 
-#: builtin/interpret-trailers.c:107
-msgid "join whitespace-continued values"
-msgstr "nối các giá trị khoảng-trắng-liên-tiếp"
+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"
 
-#: builtin/interpret-trailers.c:108
-msgid "set parsing options"
-msgstr "đặt các tùy chọn phân tích cú pháp"
+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"
 
-#: builtin/interpret-trailers.c:110
-msgid "do not treat --- specially"
-msgstr "không coi --- là đặc biệt"
+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"
 
-#: builtin/interpret-trailers.c:112
-msgid "trailer(s) to add"
-msgstr "bộ dò vết cần thêm"
+msgid "Run a three-way file merge"
+msgstr "Chạy một hòa trộn tập tin “3-đường”"
 
-#: builtin/interpret-trailers.c:123
-msgid "--trailer with --only-input does not make sense"
-msgstr "--trailer cùng với --only-input không hợp lý"
+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"
 
-#: builtin/interpret-trailers.c:133
-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ỗ"
+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"
 
-#: builtin/log.c:60
-msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
-msgstr "git log [<các tùy chọn>] [<vùng-xem-xét>] [[--] </đường/dẫn>…]"
+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"
 
-#: builtin/log.c:61
-msgid "git show [<options>] <object>..."
-msgstr "git show [<các tùy chọn>] <đối-tượng>…"
+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"
 
-#: builtin/log.c:114
-#, c-format
-msgid "invalid --decorate option: %s"
-msgstr "tùy chọn --decorate không hợp lệ: %s"
+msgid "Creates a tag object with extra validation"
+msgstr "Tạo một đối tượng thẻ với kiểm tra mở rộng"
 
-#: builtin/log.c:181
-msgid "show source"
-msgstr "hiển thị mã nguồn"
+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"
 
-#: builtin/log.c:182
-msgid "use mail map file"
-msgstr "sử dụng tập tin ánh xạ thư"
+msgid "Write and verify multi-pack-indexes"
+msgstr "Ghi và thẩm tra các multi-pack-indexes"
 
-#: builtin/log.c:185
-msgid "only decorate refs that match <pattern>"
-msgstr "chỉ tô sáng các tham chiếu khớp với <mẫu>"
+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"
 
-#: builtin/log.c:187
-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>"
+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"
 
-#: builtin/log.c:188
-msgid "decorate options"
-msgstr "các tùy chọn trang trí"
+msgid "Add or inspect object notes"
+msgstr "Thêm hoặc điều tra đối tượng ghi chú"
 
-#: builtin/log.c:191
-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>"
+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"
 
-#: builtin/log.c:214
-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"
+msgid "Create a packed archive of objects"
+msgstr "Tạo một kho lưu được đóng gói cho các đối"
 
-#: builtin/log.c:322
-#, c-format
-msgid "Final output: %d %s\n"
-msgstr "Kết xuất cuối cùng: %d %s\n"
+msgid "Find redundant pack files"
+msgstr "Tìm các tập tin gói dư thừa"
 
-#: builtin/log.c:429
-msgid "unable to create temporary object directory"
-msgstr "không thể tạo thư mục đối tượng tạm thời"
+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"
 
-#: builtin/log.c:599
-#, c-format
-msgid "git show %s: bad file"
-msgstr "git show %s: sai tập tin"
+msgid "Compute unique ID for a patch"
+msgstr "Tính toán ID duy nhất cho một miếng vá"
 
-#: builtin/log.c:614 builtin/log.c:706
-#, c-format
-msgid "could not read object %s"
-msgstr "không thể đọc đối tượng %s"
+msgid "Prune all unreachable objects from the object database"
+msgstr ""
+"Xén bớt tất các các đối tượng không tiếp cận được từ cơ sở dữ liệu đối tượng"
 
-#: builtin/log.c:731
-#, c-format
-msgid "unknown type: %d"
-msgstr "không nhận ra kiểu: %d"
+msgid "Remove extra objects that are already in pack files"
+msgstr "Xóa bỏ các đối tượng mở rộng cái mà đã sẵn có trong các tập tin gói"
 
-#: builtin/log.c:880
-#, c-format
-msgid "%s: invalid cover from description mode"
-msgstr "%s: bao bọc không hợp lệ từ chế độ mô tả"
+msgid "Fetch from and integrate with another repository or a local branch"
+msgstr "Lấy về và hợp nhất với kho khác hay một nhánh nội bộ"
 
-#: builtin/log.c:887
-msgid "format.headers without value"
-msgstr "format.headers không có giá trị cụ thể"
+msgid "Update remote refs along with associated objects"
+msgstr "Cập nhật th.chiếu máy chủ cùng với các đối tượng liên quan đến nó"
 
-#: builtin/log.c:1016
-#, c-format
-msgid "cannot open patch file %s"
-msgstr "không thể mở tập tin miếng vá: %s"
+msgid "Applies a quilt patchset onto the current branch"
+msgstr "Ấp dụng một bộ miếng vá quilt vào trong nhánh hiện hành"
 
-#: builtin/log.c:1033
-msgid "need exactly one range"
-msgstr "cần chính xác một vùng"
+msgid "Compare two commit ranges (e.g. two versions of a branch)"
+msgstr "So sánh hai vùng chuyển giao (vd: hai phiên bản của một nhánh)"
 
-#: builtin/log.c:1043
-msgid "not a range"
-msgstr "không phải là một vùng"
+msgid "Reads tree information into the index"
+msgstr "Đọc thông tin cây vào trong mục lục"
 
-#: builtin/log.c:1207
-msgid "cover letter needs email format"
-msgstr "“cover letter” cần cho định dạng thư"
+msgid "Reapply commits on top of another base tip"
+msgstr "Thu hoạch các lần chuyển giao trên đỉnh của đầu mút cơ sở khác"
 
-#: builtin/log.c:1213
-msgid "failed to create cover-letter file"
-msgstr "gặp lỗi khi tạo các tập tin cover-letter"
+msgid "Receive what is pushed into the repository"
+msgstr "Nhận cái mà được đẩy vào trong kho"
 
-#: builtin/log.c:1300
-#, c-format
-msgid "insane in-reply-to: %s"
-msgstr "in-reply-to điên rồ: %s"
+msgid "Manage reflog information"
+msgstr "Quản lý thông tin reflog"
+
+msgid "Manage set of tracked repositories"
+msgstr "Quản lý tập hợp các kho chứa đã được theo dõi"
+
+msgid "Pack unpacked objects in a repository"
+msgstr "Đóng gói các đối tượng chưa đóng gói ở một kho chứa"
+
+msgid "Create, list, delete refs to replace objects"
+msgstr "Tạo, liệt kê, xóa các tham chiếu để thay thế các đối tượng"
 
-#: builtin/log.c:1327
-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>]"
+msgid "Generates a summary of pending changes"
+msgstr "Tạo ra một tóm tắt các thay đổi còn treo"
 
-#: builtin/log.c:1385
-msgid "two output directories?"
-msgstr "hai thư mục kết xuất?"
+msgid "Reuse recorded resolution of conflicted merges"
+msgstr "Dùng lại các giải pháp đã ghi lại của các hòa trộn bị xung đột"
 
-#: builtin/log.c:1536 builtin/log.c:2369 builtin/log.c:2371 builtin/log.c:2383
-#, c-format
-msgid "unknown commit %s"
-msgstr "không hiểu lần chuyển giao %s"
+msgid "Reset current HEAD to the specified state"
+msgstr "Đặt lại HEAD hiện hành thành trạng thái đã cho"
 
-#: builtin/log.c:1547 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ệ"
+msgid "Restore working tree files"
+msgstr "Hoàn nguyên các tập tin cây làm việc"
 
-#: builtin/log.c:1556
-msgid "could not find exact merge base"
-msgstr "không tìm thấy nền hòa trộn chính xác"
+msgid "Lists commit objects in reverse chronological order"
+msgstr "Liệt kê các đối tượng chuyển giao theo thứ tự tôpô đảo ngược"
 
-#: builtin/log.c:1566
-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"
-"Or you could specify base commit by --base=<base-commit-id> manually"
-msgstr ""
-"gặp lỗi khi lấy thượng nguồn, nếu bạn muốn ghi lại lần chuyển giao nền một\n"
-"cách tự động, vui lòng dùng \"git branch --set-upstream-to\" để theo dõi\n"
-"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"
+msgid "Pick out and massage parameters"
+msgstr "Cậy ra và xử lý các tham số"
 
-#: builtin/log.c:1589
-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"
+msgid "Revert some existing commits"
+msgstr "Hoàn lại một số lần chuyển giao sẵn có"
 
-#: builtin/log.c:1606
-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"
+msgid "Remove files from the working tree and from the index"
+msgstr "Gỡ bỏ các tập tin từ cây làm việc và từ bảng mục lục"
 
-#: builtin/log.c:1616
-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"
+msgid "Send a collection of patches as emails"
+msgstr "Gửi một tập hợp của các miếng vá ở dạng thư điện tử"
 
-#: builtin/log.c:1674
-msgid "cannot get patch id"
-msgstr "không thể lấy mã miếng vá"
+msgid "Push objects over Git protocol to another repository"
+msgstr "Đẩy các đối tượng lên thông qua giao thức Git đến kho chứa khác"
 
-#: builtin/log.c:1737
-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"
+msgid "Git's i18n setup code for shell scripts"
+msgstr "Mã cài đặt quốc tế hóa của Git cho văn lệnh hệ vỏ"
 
-#: builtin/log.c:1739
-#, 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"
+msgid "Common Git shell script setup code"
+msgstr "Mã cài đặt văn lệnh hệ vỏ Git chung"
 
-#: builtin/log.c:1783
-msgid "use [PATCH n/m] even with a single patch"
-msgstr "dùng [PATCH n/m] ngay cả với miếng vá đơn"
+msgid "Restricted login shell for Git-only SSH access"
+msgstr "Hệ vỏ đăng nhập có hạn chế cho truy cập SSH chỉ-Git"
 
-#: builtin/log.c:1786
-msgid "use [PATCH] even with multiple patches"
-msgstr "dùng [VÁ] ngay cả với các miếng vá phức tạp"
+msgid "Summarize 'git log' output"
+msgstr "Kết xuất “git log” dạng tóm tắt"
 
-#: builtin/log.c:1790
-msgid "print patches to standard out"
-msgstr "hiển thị miếng vá ra đầu ra chuẩn"
+msgid "Show various types of objects"
+msgstr "Hiển thị các kiểu khác nhau của các đối tượng"
 
-#: builtin/log.c:1792
-msgid "generate a cover letter"
-msgstr "tạo bì thư"
+msgid "Show branches and their commits"
+msgstr "Hiển thị những nhánh và các lần chuyển giao của chúng"
 
-#: builtin/log.c:1794
-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"
+msgid "Show packed archive index"
+msgstr "Hiển thị các muc lục kho nén đã đóng gói"
 
-#: builtin/log.c:1795
-msgid "sfx"
-msgstr "sfx"
+msgid "List references in a local repository"
+msgstr "Liệt kê các tham chiếu trong một kho nội bộ"
 
-#: builtin/log.c:1796
-msgid "use <sfx> instead of '.patch'"
-msgstr "sử dụng <sfx> thay cho “.patch”"
+msgid "Reduce your working tree to a subset of tracked files"
+msgstr ""
+"Giảm lược cây làm việc của bạn thành tập hợp con của các tập tin được theo "
+"dõi"
 
-#: builtin/log.c:1798
-msgid "start numbering patches at <n> instead of 1"
-msgstr "bắt đầu đánh số miếng vá từ <n> thay vì 1"
+msgid "Add file contents to the staging area"
+msgstr "Thêm nội dung tập tin vào vùng bệ phóng"
 
-#: builtin/log.c:1799
-msgid "reroll-count"
-msgstr "đếm reroll"
+msgid "Stash the changes in a dirty working directory away"
+msgstr "Tạm cất đi các thay đổi trong một thư mục làm việc bẩn"
 
-#: builtin/log.c:1800
-msgid "mark the series as Nth re-roll"
-msgstr "đánh dấu chuỗi nối tiếp dạng thứ-N re-roll"
+msgid "Show the working tree status"
+msgstr "Hiển thị trạng thái cây làm việc"
 
-#: builtin/log.c:1802
-msgid "max length of output filename"
-msgstr "chiều dài tên tập tin đầu ra tối đa"
+msgid "Remove unnecessary whitespace"
+msgstr "Xóa bỏ các khoảng trắng không cần thiết"
 
-#: builtin/log.c:1804
-msgid "use [RFC PATCH] instead of [PATCH]"
-msgstr "dùng [VÁ RFC] thay cho [VÁ]"
+msgid "Initialize, update or inspect submodules"
+msgstr "Khởi tạo, cập nhật hay điều tra các mô-đun-con"
 
-#: builtin/log.c:1807
-msgid "cover-from-description-mode"
-msgstr "cover-from-description-mode"
+msgid "Bidirectional operation between a Subversion repository and Git"
+msgstr "Thao tác hai hướng giữ hai kho Subversion và Git"
 
-#: builtin/log.c:1808
-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"
+msgid "Switch branches"
+msgstr "Các nhánh chuyển"
 
-#: builtin/log.c:1810
-msgid "use [<prefix>] instead of [PATCH]"
-msgstr "dùng [<tiền-tố>] thay cho [VÁ]"
+msgid "Read, modify and delete symbolic refs"
+msgstr "Đọc, sửa và xóa tham chiếu mềm"
 
-#: builtin/log.c:1813
-msgid "store resulting files in <dir>"
-msgstr "lưu các tập tin kết quả trong <t.mục>"
+msgid "Create, list, delete or verify a tag object signed with GPG"
+msgstr "Tạo, liệt kê, xóa hay xác thực một đối tượng thẻ được ký bằng GPG"
 
-#: builtin/log.c:1816
-msgid "don't strip/add [PATCH]"
-msgstr "không strip/add [VÁ]"
+msgid "Creates a temporary file with a blob's contents"
+msgstr "Tạo một tập tin tạm với nội dung của blob"
 
-#: builtin/log.c:1819
-msgid "don't output binary diffs"
-msgstr "không kết xuất diff (những khác biệt) nhị phân"
+msgid "Unpack objects from a packed archive"
+msgstr "Gỡ các đối tượng khỏi một kho lưu đã đóng gói"
 
-#: builtin/log.c:1821
-msgid "output all-zero hash in From header"
-msgstr "xuất mọi mã băm all-zero trong phần đầu From"
+msgid "Register file contents in the working tree to the index"
+msgstr "Đăng ký nội dung tập tin từ cây làm việc đến bảng mục lục"
 
-#: builtin/log.c:1823
-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"
+msgid "Update the object name stored in a ref safely"
+msgstr "Cập nhật tên đối tượng được lưu trong một tham chiếu một cách an toàn"
 
-#: builtin/log.c:1825
-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ê)"
+msgid "Update auxiliary info file to help dumb servers"
+msgstr "Cập nhật tập tin thông tin phụ trợ để giúp đỡ các dịch vụ dumb"
 
-#: builtin/log.c:1827
-msgid "Messaging"
-msgstr "Lời nhắn"
+msgid "Send archive back to git-archive"
+msgstr "Gửi kho lưu trở lại cho git-archive"
 
-#: builtin/log.c:1828
-msgid "header"
-msgstr "đầu đề thư"
+msgid "Send objects packed back to git-fetch-pack"
+msgstr "Gửi các đối tượng đã đóng gói trở lại cho git-fetch-pack"
 
-#: builtin/log.c:1829
-msgid "add email header"
-msgstr "thêm đầu đề thư"
+msgid "Show a Git logical variable"
+msgstr "Hiển thị một biến Git luận lý"
 
-#: builtin/log.c:1830 builtin/log.c:1831
-msgid "email"
-msgstr "thư điện tử"
+msgid "Check the GPG signature of commits"
+msgstr "Kiểm tra ký lần chuyển giao dùng GPG"
 
-#: builtin/log.c:1830
-msgid "add To: header"
-msgstr "thêm To: đầu đề thư"
+msgid "Validate packed Git archive files"
+msgstr "Kiểm tra lại các tập tin kho (lưu trữ, nén) Git đã được đóng gói"
 
-#: builtin/log.c:1831
-msgid "add Cc: header"
-msgstr "thêm Cc: đầu đề thư"
+msgid "Check the GPG signature of tags"
+msgstr "Kiểm tra chữ ký GPG của các thẻ"
 
-#: builtin/log.c:1832
-msgid "ident"
-msgstr "thụt lề"
+msgid "Show logs with difference each commit introduces"
+msgstr "Hiển thị các nhật ký với từng lần chuyển giao khác nhau đưa ra"
 
-#: builtin/log.c:1833
-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)"
+msgid "Manage multiple working trees"
+msgstr "Quản lý nhiều cây làm việc"
 
-#: builtin/log.c:1835
-msgid "message-id"
-msgstr "message-id"
+msgid "Create a tree object from the current index"
+msgstr "Tạo một đối tượng cây từ đầu vào tiêu chuẩn stdin hiện tại"
 
-#: builtin/log.c:1836
-msgid "make first mail a reply to <message-id>"
-msgstr "dùng thư đầu tiên để trả lời <message-id>"
+msgid "Defining attributes per path"
+msgstr "Định nghĩa các thuộc tính cho mỗi đường dẫn"
 
-#: builtin/log.c:1837 builtin/log.c:1840
-msgid "boundary"
-msgstr "ranh giới"
+msgid "Git command-line interface and conventions"
+msgstr "Giao diện dòng lệnh Git và quy ước"
 
-#: builtin/log.c:1838
-msgid "attach the patch"
-msgstr "đính kèm miếng vá"
+msgid "A Git core tutorial for developers"
+msgstr "Hướng dẫn Git cơ bản cho nhà phát triển"
 
-#: builtin/log.c:1841
-msgid "inline the patch"
-msgstr "dùng miếng vá làm nội dung"
+msgid "Providing usernames and passwords to Git"
+msgstr "Cung cấp tài khoản và mật khẩu cho Git"
 
-#: builtin/log.c:1845
-msgid "enable message threading, styles: shallow, deep"
-msgstr "cho phép luồng lời nhắn, kiểu: “shallow”, “deep”"
+msgid "Git for CVS users"
+msgstr "Git dành cho những người dùng CVS"
 
-#: builtin/log.c:1847
-msgid "signature"
-msgstr "chữ ký"
+msgid "Tweaking diff output"
+msgstr "Chỉnh kết xuất diff"
 
-#: builtin/log.c:1848
-msgid "add a signature"
-msgstr "thêm chữ ký"
+msgid "A useful minimum set of commands for Everyday Git"
+msgstr "Một tập hợp lệnh hữu dụng tối thiểu để dùng Git hàng ngày"
 
-#: builtin/log.c:1849
-msgid "base-commit"
-msgstr "lần_chuyển_giao_nền"
+msgid "Frequently asked questions about using Git"
+msgstr "Các câu hỏi thường gặp về cách sử dụng Git"
 
-#: builtin/log.c:1850
-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á"
+msgid "A Git Glossary"
+msgstr "Thuật ngữ chuyên môn Git"
 
-#: builtin/log.c:1853
-msgid "add a signature from a file"
-msgstr "thêm chữ ký từ một tập tin"
+msgid "Hooks used by Git"
+msgstr "Các móc được sử dụng bởi Git"
 
-#: builtin/log.c:1854
-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á"
+msgid "Specifies intentionally untracked files to ignore"
+msgstr "Chỉ định các tập tin không cần theo dõi"
 
-#: builtin/log.c:1856
-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á"
+msgid "The Git repository browser"
+msgstr "Bộ duyện kho Git"
 
-#: builtin/log.c:1858
-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"
+msgid "Map author/committer names and/or E-Mail addresses"
+msgstr "Ánh xạ tên tác giả/người chuyển giao và/hoặc địa chỉ E-Mail"
 
-#: builtin/log.c:1861
-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"
+msgid "Defining submodule properties"
+msgstr "Định nghĩa thuộc tính mô-đun-con"
 
-#: builtin/log.c:1863 builtin/range-diff.c:28
-msgid "percentage by which creation is weighted"
-msgstr "tỷ lệ phần trăm theo cái tạo là weighted"
+msgid "Git namespaces"
+msgstr "Không gian tên Git"
 
-#: builtin/log.c:1953
-#, c-format
-msgid "invalid ident line: %s"
-msgstr "dòng định danh không hợp lệ: %s"
+msgid "Helper programs to interact with remote repositories"
+msgstr "Các chương trình hỗ trợ để tương tác với các kho chứa trên máy chủ"
 
-#: builtin/log.c:1978
-msgid "--name-only does not make sense"
-msgstr "--name-only không hợp lý"
+msgid "Git Repository Layout"
+msgstr "Bố cục kho Git"
 
-#: builtin/log.c:1980
-msgid "--name-status does not make sense"
-msgstr "--name-status không hợp lý"
+msgid "Specifying revisions and ranges for Git"
+msgstr "Chỉ định điểm xét duyệt và vùng cho Git"
 
-#: builtin/log.c:1982
-msgid "--check does not make sense"
-msgstr "--check không hợp lý"
+msgid "Mounting one repository inside another"
+msgstr "Gắn một kho chứa vào trong một cái khác"
 
-#: builtin/log.c:1984
-msgid "--remerge-diff does not make sense"
-msgstr "--remerge-diff không hợp lý"
+msgid "A tutorial introduction to Git"
+msgstr "Hướng dẫn cách dùng Git"
 
-#: builtin/log.c:2129
-msgid "--interdiff requires --cover-letter or single patch"
-msgstr "--interdiff cần --cover-letter hoặc vá đơn"
+msgid "A tutorial introduction to Git: part two"
+msgstr "Hướng dẫn cách dùng Git: phần hai"
 
-#: builtin/log.c:2133
-msgid "Interdiff:"
-msgstr "Interdiff:"
+msgid "Git web interface (web frontend to Git repositories)"
+msgstr "Giao diện Git trên nền web (ứng dụng web chạy trên kho Git)"
 
-#: builtin/log.c:2134
-#, c-format
-msgid "Interdiff against v%d:"
-msgstr "Interdiff dựa trên v%d:"
+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"
 
-#: builtin/log.c:2144
-msgid "--range-diff requires --cover-letter or single patch"
-msgstr "--range-diff yêu cầu --cover-letter hoặc miếng vá đơn"
+msgid "commit-graph file is too small"
+msgstr "tập tin đồ-thị-các-lần-chuyển-giao quá nhỏ"
 
-#: builtin/log.c:2152
-msgid "Range-diff:"
-msgstr "Range-diff:"
+#, c-format
+msgid "commit-graph signature %X does not match signature %X"
+msgstr "chữ ký đồ-thị-các-lần-chuyển-giao %X không khớp chữ ký %X"
 
-#: builtin/log.c:2153
 #, c-format
-msgid "Range-diff against v%d:"
-msgstr "Range-diff dựa trên v%d:"
+msgid "commit-graph version %X does not match version %X"
+msgstr "phiên bản đồ-thị-các-lần-chuyển-giao %X không khớp phiên bản %X"
 
-#: builtin/log.c:2164
 #, c-format
-msgid "unable to read signature file '%s'"
-msgstr "không thể đọc tập tin chữ ký “%s”"
+msgid "commit-graph hash version %X does not match version %X"
+msgstr "phiên bản đồ-thị-các-lần-chuyển-giao %X không khớp phiên bản %X"
 
-#: builtin/log.c:2200
-msgid "Generating patches"
-msgstr "Đang tạo các miếng vá"
+#, c-format
+msgid "commit-graph file is too small to hold %u chunks"
+msgstr "tập tin đồ-thị-các-lần-chuyển-giao quá nhỏ để giữ %u mảnh dữ liệu"
 
-#: builtin/log.c:2244
-msgid "failed to create output files"
-msgstr "gặp lỗi khi tạo các tập tin kết xuất"
+msgid "commit-graph has no base graphs chunk"
+msgstr "đồ-thị-các-lần-chuyển-giao có không có mảnh các đồ họa cơ sở"
 
-#: builtin/log.c:2304
-msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
-msgstr "git cherry [-v] [<thượng-nguồn> [<đầu> [<giới-hạn>]]]"
+msgid "commit-graph chain does not match"
+msgstr "móc xích đồ-thị-các-lần-chuyển-giao không khớp"
 
-#: builtin/log.c:2358
 #, c-format
-msgid ""
-"Could not find a tracked remote branch, please specify <upstream> manually.\n"
+msgid "invalid commit-graph chain: line '%s' not a hash"
 msgstr ""
-"Không tìm thấy nhánh mạng được theo dõi, hãy chỉ định <thượng-nguồn> một "
-"cách thủ công.\n"
-
-#: builtin/ls-files.c:564
-msgid "git ls-files [<options>] [<file>...]"
-msgstr "git ls-files [<các tùy chọn>] [<tập-tin>…]"
-
-#: builtin/ls-files.c:618
-msgid "separate paths with the NUL character"
-msgstr "các đường dẫn được ngăn cách bởi ký tự NULL"
+"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"
 
-#: builtin/ls-files.c:620
-msgid "identify the file status with tags"
-msgstr "nhận dạng các trạng thái tập tin với thẻ"
+msgid "unable to find all commit-graph files"
+msgstr "không thể tìm thấy tất cả các tập tin đồ-thị-các-lần-chuyển-giao"
 
-#: builtin/ls-files.c:622
-msgid "use lowercase letters for 'assume unchanged' files"
+msgid "invalid commit position. commit-graph is likely corrupt"
 msgstr ""
-"dùng chữ cái viết thường cho các tập tin “assume unchanged” (giả định không "
-"thay đổi)"
-
-#: builtin/ls-files.c:624
-msgid "use lowercase letters for 'fsmonitor clean' files"
-msgstr "dùng chữ cái viết thường cho các tập tin “fsmonitor clean”"
+"vị trí lần chuyển giao không hợp lệ. đồ-thị-các-lần-chuyển-giao có vẻ như đã "
+"bị hỏng"
 
-#: builtin/ls-files.c:626
-msgid "show cached files in the output (default)"
-msgstr "hiển thị các tập tin được nhớ tạm vào đầu ra (mặc định)"
+#, c-format
+msgid "could not find commit %s"
+msgstr "không thể tìm thấy lần chuyển giao %s"
 
-#: builtin/ls-files.c:628
-msgid "show deleted files in the output"
-msgstr "hiển thị các tập tin đã xóa trong kết xuất"
+msgid "commit-graph requires overflow generation data but has none"
+msgstr "commit-graph yêu cầu dữ liệu tạo tràn nhưng không có"
 
-#: builtin/ls-files.c:630
-msgid "show modified files in the output"
-msgstr "hiển thị các tập tin đã bị sửa đổi ra kết xuất"
+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"
 
-#: builtin/ls-files.c:632
-msgid "show other files in the output"
-msgstr "hiển thị các tập tin khác trong kết xuất"
+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"
 
-#: builtin/ls-files.c:634
-msgid "show ignored files in the output"
-msgstr "hiển thị các tập tin bị bỏ qua trong kết xuất"
+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"
 
-#: builtin/ls-files.c:637
-msgid "show staged contents' object name in the output"
-msgstr "hiển thị tên đối tượng của nội dung được đặt lên bệ phóng ra kết xuất"
+msgid "Computing commit graph topological levels"
+msgstr "Đang tính mức hình học tô-pô tạo đồ thị các lần chuyển giao"
 
-#: builtin/ls-files.c:639
-msgid "show files on the filesystem that need to be removed"
-msgstr "hiển thị các tập tin trên hệ thống tập tin mà nó cần được gỡ bỏ"
+msgid "Computing commit graph generation numbers"
+msgstr "Đang tính toán số tạo đồ thị các lần chuyển giao"
 
-#: builtin/ls-files.c:641
-msgid "show 'other' directories' names only"
-msgstr "chỉ hiển thị tên của các thư mục “khác”"
+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"
 
-#: builtin/ls-files.c:643
-msgid "show line endings of files"
-msgstr "hiển thị kết thúc dòng của các tập tin"
+msgid "Collecting referenced commits"
+msgstr "Đang sưu tập các lần chuyển giao được tham chiếu"
 
-#: builtin/ls-files.c:645
-msgid "don't show empty directories"
-msgstr "không hiển thị thư mục rỗng"
+#, c-format
+msgid "Finding commits for commit graph in %<PRIuMAX> pack"
+msgid_plural "Finding commits for commit graph in %<PRIuMAX> packs"
+msgstr[0] ""
+"Đang tìm các lần chuyển giao cho đồ thị lần chuyển giao trong %<PRIuMAX> gói"
 
-#: builtin/ls-files.c:648
-msgid "show unmerged files in the output"
-msgstr "hiển thị các tập tin chưa hòa trộn trong kết xuất"
+#, c-format
+msgid "error adding pack %s"
+msgstr "gặp lỗi thêm gói %s"
 
-#: builtin/ls-files.c:650
-msgid "show resolve-undo information"
-msgstr "hiển thị thông tin resolve-undo"
+#, c-format
+msgid "error opening index for %s"
+msgstr "gặp lỗi khi mở mục lục cho “%s”"
 
-#: builtin/ls-files.c:652
-msgid "skip files matching pattern"
-msgstr "bỏ qua những tập tin khớp với một mẫu"
+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"
 
-#: builtin/ls-files.c:655
-msgid "read exclude patterns from <file>"
-msgstr "đọc mẫu cần loại trừ từ <tập-tin>"
+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"
 
-#: builtin/ls-files.c:658
-msgid "read additional per-directory exclude patterns in <file>"
-msgstr "đọc thêm các mẫu ngoại trừ mỗi thư mục trong <tập tin>"
+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ở"
 
-#: builtin/ls-files.c:660
-msgid "add the standard git exclusions"
-msgstr "thêm loại trừ tiêu chuẩn kiểu git"
+msgid "unable to create temporary graph layer"
+msgstr "không thể tạo lớp sơ đồ tạm thời"
 
-#: builtin/ls-files.c:664
-msgid "make the output relative to the project top directory"
-msgstr "làm cho kết xuất liên quan đến thư mục ở mức cao nhất (gốc) của dự án"
+#, 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”"
 
-#: builtin/ls-files.c:669
-msgid "if any <file> is not in the index, treat this as an error"
-msgstr "nếu <tập tin> bất kỳ không ở trong bảng mục lục, xử lý nó như một lỗi"
+#, 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"
 
-#: builtin/ls-files.c:670
-msgid "tree-ish"
-msgstr "tree-ish"
+msgid "unable to open commit-graph chain file"
+msgstr "không thể mở tập tin mắt xích đồ thị chuyển giao"
 
-#: builtin/ls-files.c:671
-msgid "pretend that paths removed since <tree-ish> are still present"
-msgstr ""
-"giả định rằng các đường dẫn đã bị gỡ bỏ kể từ <tree-ish> nay vẫn hiện diện"
+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"
 
-#: builtin/ls-files.c:673
-msgid "show debugging data"
-msgstr "hiển thị dữ liệu gỡ lỗi"
+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"
 
-#: builtin/ls-files.c:675
-msgid "suppress duplicate entries"
-msgstr "chặn các mục tin trùng lặp"
+msgid "Scanning merged commits"
+msgstr "Đang quét các lần chuyển giao đã hòa trộn"
 
-#: builtin/ls-files.c:677
-msgid "show sparse directories in the presence of a sparse index"
-msgstr "hiển thị thư mục \"sparse\" trong sự có mặt của mục lục \"sparse\""
+msgid "Merging commit-graph"
+msgstr "Đang hòa trộn đồ-thị-các-lần-chuyển-giao"
 
-#: builtin/ls-remote.c:9
-msgid ""
-"git ls-remote [--heads] [--tags] [--refs] [--upload-pack=<exec>]\n"
-"              [-q | --quiet] [--exit-code] [--get-url]\n"
-"              [--symref] [<repository> [<refs>...]]"
+msgid "attempting to write a commit-graph, but 'core.commitGraph' is disabled"
 msgstr ""
-"git ls-remote [--heads] [--tags] [--refs] [--upload-pack=<exec>]\n"
-"              [-q | --quiet] [--exit-code] [--get-url]\n"
-"              [--symref] [<kho> [<các tham chiếu>…]]"
+"cố gắng để ghi một đồ thị các lần chuyển giao, nhưng “core.commitGraph” bị "
+"vô hiệu hóa"
 
-#: builtin/ls-remote.c:60
-msgid "do not print remote URL"
-msgstr "không hiển thị URL máy chủ"
+msgid "too many commits to write graph"
+msgstr "có quá nhiều lần chuyển giao để ghi đồ thị"
 
-#: builtin/ls-remote.c:61 builtin/ls-remote.c:63 builtin/rebase.c:1131
-msgid "exec"
-msgstr "thực thi"
+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"
 
-#: builtin/ls-remote.c:62 builtin/ls-remote.c:64
-msgid "path of git-upload-pack on the remote host"
-msgstr "đường dẫn của git-upload-pack trên máy chủ"
+#, 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"
 
-#: builtin/ls-remote.c:66
-msgid "limit to tags"
-msgstr "giới hạn tới các thẻ"
+#, 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"
 
-#: builtin/ls-remote.c:67
-msgid "limit to heads"
-msgstr "giới hạn cho các đầu"
+#, 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"
 
-#: builtin/ls-remote.c:68
-msgid "do not show peeled tags"
-msgstr "không hiển thị thẻ bị peel (gọt bỏ)"
+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"
 
-#: builtin/ls-remote.c:70
-msgid "take url.<base>.insteadOf into account"
-msgstr "lấy url.<base>.insteadOf vào trong tài khoản"
+#, 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"
 
-#: builtin/ls-remote.c:73
-msgid "exit with exit code 2 if no matching refs are found"
-msgstr "thoát với mã là 2 nếu không tìm thấy tham chiếu nào khớp"
+#, 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"
 
-#: builtin/ls-remote.c:76
-msgid "show underlying ref in addition to the object pointed by it"
-msgstr "hiển thị tham chiếu nằm dưới để thêm vào đối tượng được chỉ bởi nó"
+#, 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"
 
-#: builtin/ls-tree.c:36
-msgid "git ls-tree [<options>] <tree-ish> [<path>...]"
-msgstr "git ls-tree [<các tùy chọn>] <tree-ish> [</đường/dẫn>…]"
+#, 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"
+
+#, 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"
 
-#: builtin/ls-tree.c:54
 #, c-format
-msgid "could not get object info about '%s'"
-msgstr "không thể lấy thông tin đối tượng về “%s”"
+msgid ""
+"commit-graph has generation number zero for commit %s, but non-zero elsewhere"
+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"
 
-#: builtin/ls-tree.c:79
 #, c-format
-msgid "bad ls-tree format: element '%s' does not start with '('"
-msgstr "định dạng ls-tree sai: phần tử “%s” không bắt đầu bằng “(”"
+msgid ""
+"commit-graph has non-zero generation number for commit %s, but zero elsewhere"
+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"
 
-#: builtin/ls-tree.c:83
 #, c-format
-msgid "bad ls-tree format: element '%s' does not end in ')'"
-msgstr "định dạng ls-tree sai: phần tử “%s” không bắt kết thúc bằng “)”"
+msgid "commit-graph generation for commit %s is %<PRIuMAX> < %<PRIuMAX>"
+msgstr ""
+"tạo đồ-thị-các-lần-chuyển-giao cho lần chuyển giao %s là %<PRIuMAX> < "
+"%<PRIuMAX>"
 
-#: builtin/ls-tree.c:109
 #, c-format
-msgid "bad ls-tree format: %%%.*s"
-msgstr "định dạng ls-tree sai: %%%.*s"
-
-#: builtin/ls-tree.c:336
-msgid "only show trees"
-msgstr "chỉ hiển thị các tree"
-
-#: builtin/ls-tree.c:338
-msgid "recurse into subtrees"
-msgstr "đệ quy vào các thư mục con"
-
-#: builtin/ls-tree.c:340
-msgid "show trees when recursing"
-msgstr "hiển thị cây khi đệ quy"
+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>"
 
-#: builtin/ls-tree.c:343
-msgid "terminate entries with NUL byte"
-msgstr "chấm dứt mục tin với byte NUL"
+#, c-format
+msgid "%s %s is not a commit!"
+msgstr "%s %s không phải là một lần chuyển giao!"
 
-#: builtin/ls-tree.c:344
-msgid "include object size"
-msgstr "gồm cả kích thước đối tượng"
+msgid ""
+"Support for <GIT_DIR>/info/grafts is deprecated\n"
+"and will be removed in a future Git version.\n"
+"\n"
+"Please use \"git replace --convert-graft-file\"\n"
+"to convert the grafts into replace refs.\n"
+"\n"
+"Turn this message off by running\n"
+"\"git config advice.graftFileDeprecated false\""
+msgstr ""
+"Việc hỗ trợ cho <GIT_DIR>/info/grafts đã lạc hậu\n"
+"và sẽ bị xóa bỏ ở phiên bản Git tương lai.\n"
+"\n"
+"Vui lòng dùng \"git replace --convert-graft-file\"\n"
+"để chuyển đổi các graft thành các tham chiếu thay thế.\n"
+"\n"
+"Tắt lời nhắn này bằng cách chạy\n"
+"\"git config advice.graftFileDeprecated false\""
 
-#: builtin/ls-tree.c:346 builtin/ls-tree.c:348
-msgid "list only filenames"
-msgstr "chỉ liệt kê tên tập tin"
+#, c-format
+msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
+msgstr ""
+"Lần chuyển giao %s có một chữ ký GPG không đáng tin, được cho là bởi %s."
 
-#: builtin/ls-tree.c:350
-msgid "list only objects"
-msgstr "chỉ liệt kê các đối tượng"
+#, c-format
+msgid "Commit %s has a bad GPG signature allegedly by %s."
+msgstr "Lần chuyển giao %s có một chữ ký GPG sai, được cho là bởi %s."
 
-#: builtin/ls-tree.c:353
-msgid "use full path names"
-msgstr "dùng tên đường dẫn đầy đủ"
+#, c-format
+msgid "Commit %s does not have a GPG signature."
+msgstr "Lần chuyển giao %s không có chữ ký GPG."
 
-#: builtin/ls-tree.c:355
-msgid "list entire tree; not just current directory (implies --full-name)"
-msgstr "liệt kê cây mục tin; không chỉ thư mục hiện hành (ngụ ý --full-name)"
+#, c-format
+msgid "Commit %s has a good GPG signature by %s\n"
+msgstr "Lần chuyển giao %s có một chữ ký GPG tốt bởi %s\n"
 
-#: builtin/ls-tree.c:391
-msgid "--format can't be combined with other format-altering options"
+msgid ""
+"Warning: commit message did not conform to UTF-8.\n"
+"You may want to amend it after fixing the message, or set the config\n"
+"variable i18n.commitEncoding to the encoding your project uses.\n"
 msgstr ""
-"--format không thể được tổ hợp cùng với các tùy chọn format-alterin khác"
+"Cảnh báo: ghi chú cho lần chuyển giao không hợp chuẩn UTF-8.\n"
+"Bạn có lẽ muốn tu bổ nó sau khi sửa lời chú thích, hoặc là đặt biến\n"
+"cấu hình i18n.commitEncoding thành bảng mã mà dự án của bạn muốn dùng.\n"
 
-#. TRANSLATORS: keep <> in "<" mail ">" info.
-#: builtin/mailinfo.c:14
-msgid "git mailinfo [<options>] <msg> <patch> < mail >info"
-msgstr "git mailinfo [<các tùy chọn>] <msg> <patch> < mail >info"
+msgid "no compiler information available\n"
+msgstr "hiện không có thông tin về trình biên dịch\n"
 
-#: builtin/mailinfo.c:58
-msgid "keep subject"
-msgstr "giữ lại phần chủ đề"
+msgid "no libc information available\n"
+msgstr "không có thông tin về libc\n"
 
-#: builtin/mailinfo.c:60
-msgid "keep non patch brackets in subject"
-msgstr "giữ không dấu ngoặc vá trong chủ đề"
+#, c-format
+msgid "[GLE %ld] health thread could not open '%ls'"
+msgstr "[GLE %ld] không thể mở tuyến trình sức khỏe '%ls'"
 
-#: builtin/mailinfo.c:62
-msgid "copy Message-ID to the end of commit message"
-msgstr "sao chép Message-ID vào cuối của ghi chú lần chuyển giao"
+#, c-format
+msgid "[GLE %ld] health thread getting BHFI for '%ls'"
+msgstr "[GLE %ld] tuyến trình sức khỏe lấy BHFI cho '%ls'"
 
-#: builtin/mailinfo.c:64
-msgid "re-code metadata to i18n.commitEncoding"
-msgstr "mã hóa lại siêu dữ liệu thành i18n.commitEncoding"
+#, c-format
+msgid "could not convert to wide characters: '%s'"
+msgstr "không thể chuyển đổi các ký tự rộng: '%s'"
 
-#: builtin/mailinfo.c:67
-msgid "disable charset re-coding of metadata"
-msgstr "vô hiệu hóa mã hóa lại bộ ký tự của siêu dữ liệu"
+#, c-format
+msgid "BHFI changed '%ls'"
+msgstr "BHFI đã thay  '%ls'"
 
-#: builtin/mailinfo.c:69
-msgid "encoding"
-msgstr "bảng mã"
+#, c-format
+msgid "unhandled case in 'has_worktree_moved': %d"
+msgstr "có trường hợp không được xử lý trong  'has_worktree_moved': %d"
 
-#: builtin/mailinfo.c:70
-msgid "re-code metadata to this encoding"
-msgstr "mã hóa lại siêu dữ liệu vào bảng mã này"
+#, c-format
+msgid "health thread wait failed [GLE %ld]"
+msgstr "gặp lỗi khi chờ tiến trình sức khỏe [GLE %ld]"
 
-#: builtin/mailinfo.c:72
-msgid "use scissors"
-msgstr "dùng \"scissor\""
+msgid "Unable to create FSEventStream."
+msgstr "Không thể tạo FSEventStream."
 
-#: builtin/mailinfo.c:73
-msgid "<action>"
-msgstr "<hành động>"
+msgid "Failed to start the FSEventStream"
+msgstr "Gặp lỗi khi khởi chạy FSEventStream"
 
-#: builtin/mailinfo.c:74
-msgid "action when quoted CR is found"
-msgstr "hành động khi CR được trích dẫn được tìm thấy"
+#, c-format
+msgid "[GLE %ld] could not convert path to UTF-8: '%.*ls'"
+msgstr "[GLE %ld] không thể chuyển đổi đường dẫn sang UTF-8: '%.*ls'"
 
-#: builtin/mailinfo.c:77
-msgid "use headers in message's body"
-msgstr "sử dụng phần đầu trong nội dung thư"
+#, c-format
+msgid "[GLE %ld] could not watch '%s'"
+msgstr "[GLE %ld] không thể theo dõi '%s'"
 
-#: builtin/mailsplit.c:227
-msgid "reading patches from stdin/tty..."
-msgstr "đọc các miếng vá từ đầu vào tiêu chuẩn stdin/tty..."
+#, c-format
+msgid "[GLE %ld] could not get longname of '%s'"
+msgstr "[GLE %ld] không thể lấy tên dài cho '%s'"
 
-#: builtin/mailsplit.c:242
 #, c-format
-msgid "empty mbox: '%s'"
-msgstr "mbox trống rỗng: “%s”"
+msgid "ReadDirectoryChangedW failed on '%s' [GLE %ld]"
+msgstr "ReadDirectoryChangedW gặp lỗi trên '%s' [GLE %ld]"
 
-#: builtin/merge-base.c:32
-msgid "git merge-base [-a | --all] <commit> <commit>..."
-msgstr "git merge-base [-a | --all] <lần_chuyển_giao> <lần_chuyển_giao>…"
+#, c-format
+msgid "GetOverlappedResult failed on '%s' [GLE %ld]"
+msgstr "GetOverlappedResult gặp lỗi trên '%s' [GLE %ld]"
 
-#: builtin/merge-base.c:33
-msgid "git merge-base [-a | --all] --octopus <commit>..."
-msgstr "git merge-base [-a | --all] --octopus <lần_chuyển_giao>…"
+#, c-format
+msgid "could not read directory changes [GLE %ld]"
+msgstr "không thể đọc các thay đổi thư mục [GLE %ld]"
 
-#: builtin/merge-base.c:34
-msgid "git merge-base --independent <commit>..."
-msgstr "git merge-base --independent <lần_chuyển_giao>…"
+#, c-format
+msgid "failed to copy SID (%ld)"
+msgstr "gặp lỗi khi sao chép SID (%ld)"
 
-#: builtin/merge-base.c:35
-msgid "git merge-base --is-ancestor <commit> <commit>"
-msgstr "git merge-base --is-ancestor <commit> <lần_chuyển_giao>"
+#, c-format
+msgid "failed to get owner for '%s' (%ld)"
+msgstr "gặp lỗi khi lấy chủ sở hữu cho '%s' (%ld)"
 
-#: builtin/merge-base.c:36
-msgid "git merge-base --fork-point <ref> [<commit>]"
-msgstr "git merge-base --fork-point <tham-chiếu> [<lần_chuyển_giao>]"
+msgid "memory exhausted"
+msgstr "hết bộ nhớ"
 
-#: builtin/merge-base.c:144
-msgid "output all common ancestors"
-msgstr "xuất ra tất cả các ông bà, tổ tiên chung"
+msgid "Success"
+msgstr "Thành công"
 
-#: builtin/merge-base.c:146
-msgid "find ancestors for a single n-way merge"
-msgstr "tìm tổ tiên của hòa trộn n-way đơn"
+msgid "No match"
+msgstr "Không tìm thấy"
 
-#: builtin/merge-base.c:148
-msgid "list revs not reachable from others"
-msgstr "liệt kê các “rev” mà nó không thể đọc được từ cái khác"
+msgid "Invalid regular expression"
+msgstr "Biểu thức chính quy không hợp lệ"
 
-#: builtin/merge-base.c:150
-msgid "is the first one ancestor of the other?"
-msgstr "là cha mẹ đầu tiên của cái khác?"
+msgid "Invalid collation character"
+msgstr "Ký tự đối chiếu không hợp lệ"
 
-#: builtin/merge-base.c:152
-msgid "find where <commit> forked from reflog of <ref>"
-msgstr "tìm xem <commit> được rẽ nhánh ở đâu từ reflog của <th.chiếu>"
+msgid "Invalid character class name"
+msgstr "Tên lớp ký tự không hợp lệ"
 
-#: builtin/merge-file.c:9
-msgid ""
-"git merge-file [<options>] [-L <name1> [-L <orig> [-L <name2>]]] <file1> "
-"<orig-file> <file2>"
-msgstr ""
-"git merge-file [<các tùy chọn>] [-L <tên1> [-L <gốc> [-L <tên2>]]] <tập-"
-"tin1> <tập-tin-gốc> <tập-tin2>"
+msgid "Trailing backslash"
+msgstr "Có dấu gạch ngược theo sau"
 
-#: builtin/merge-file.c:35
-msgid "send results to standard output"
-msgstr "gửi kết quả vào đầu ra tiêu chuẩn"
+msgid "Invalid back reference"
+msgstr "Tham chiếu ngược không hợp lệ"
 
-#: builtin/merge-file.c:36
-msgid "use a diff3 based merge"
-msgstr "dùng kiểu hòa dựa trên diff3"
+msgid "Unmatched [ or [^"
+msgstr "Chưa khớp [ hay [^"
 
-#: builtin/merge-file.c:37
-msgid "use a zealous diff3 based merge"
-msgstr "dùng kiểu hòa trộn dựa trên 'zealous diff3'"
+msgid "Unmatched ( or \\("
+msgstr "Chưa khớp ( hay \\("
 
-#: builtin/merge-file.c:39
-msgid "for conflicts, use our version"
-msgstr "để tránh xung đột, sử dụng phiên bản của chúng ta"
+msgid "Unmatched \\{"
+msgstr "Chưa khớp cặp “\\{”"
 
-#: builtin/merge-file.c:41
-msgid "for conflicts, use their version"
-msgstr "để tránh xung đột, sử dụng phiên bản của họ"
+msgid "Invalid content of \\{\\}"
+msgstr "Nội dung của \\{\\} không hợp lệ"
 
-#: builtin/merge-file.c:43
-msgid "for conflicts, use a union version"
-msgstr "để tránh xung đột, sử dụng phiên bản kết hợp"
+msgid "Invalid range end"
+msgstr "Sai kết thúc phạm vi"
 
-#: builtin/merge-file.c:46
-msgid "for conflicts, use this marker size"
-msgstr "để tránh xung đột, hãy sử dụng kích thước bộ tạo này"
+msgid "Memory exhausted"
+msgstr "Hết bộ nhớ"
 
-#: builtin/merge-file.c:47
-msgid "do not warn about conflicts"
-msgstr "không cảnh báo về các xung đột xảy ra"
+msgid "Invalid preceding regular expression"
+msgstr "Biểu thức chính quy nằm trước không hợp lệ"
 
-#: builtin/merge-file.c:49
-msgid "set labels for file1/orig-file/file2"
-msgstr "đặt nhãn cho tập-tin-1/tập-tin-gốc/tập-tin-2"
+msgid "Premature end of regular expression"
+msgstr "Biểu thức chính quy kết thúc quá sớm"
 
-#: builtin/merge-recursive.c:47
-#, c-format
-msgid "unknown option %s"
-msgstr "không hiểu tùy chọn %s"
+msgid "Regular expression too big"
+msgstr "Biểu thức chính quy quá lớn"
 
-#: builtin/merge-recursive.c:53
-#, c-format
-msgid "could not parse object '%s'"
-msgstr "không thể phân tích đối tượng “%s”"
+msgid "Unmatched ) or \\)"
+msgstr "Chưa khớp ) hay \\)"
 
-#: builtin/merge-recursive.c:57
-#, c-format
-msgid "cannot handle more than %d base. Ignoring %s."
-msgid_plural "cannot handle more than %d bases. Ignoring %s."
-msgstr[0] "không thể xử lý nhiều hơn %d nền. Bỏ qua %s."
+msgid "No previous regular expression"
+msgstr "Không có biểu thức chính quy nằm trước"
 
-#: builtin/merge-recursive.c:65
-msgid "not handling anything other than two heads merge."
-msgstr "không xử lý gì ngoài hai head hòa trộn."
+msgid "could not send IPC command"
+msgstr "không thể gửi lệnh IPC"
 
-#: builtin/merge-recursive.c:74 builtin/merge-recursive.c:76
-#, c-format
-msgid "could not resolve ref '%s'"
-msgstr "không thể phân giải tham chiếu %s"
+msgid "could not read IPC response"
+msgstr "không thể đọc đáp ứng IPC"
 
-#: builtin/merge-recursive.c:82
 #, c-format
-msgid "Merging %s with %s\n"
-msgstr "Đang hòa trộn %s với %s\n"
-
-#: builtin/merge.c:59
-msgid "git merge [<options>] [<commit>...]"
-msgstr "git merge [<các tùy chọn>] [<commit>…]"
-
-#: builtin/merge.c:125
-msgid "switch `m' requires a value"
-msgstr "switch “m” yêu cầu một giá trị"
+msgid "could not start accept_thread '%s'"
+msgstr "không thể khởi chạy accept_thread “%s”"
 
-#: builtin/merge.c:148
 #, c-format
-msgid "option `%s' requires a value"
-msgstr "tùy chọn “%s” yêu cầu một giá trị"
+msgid "could not start worker[0] for '%s'"
+msgstr "không thể khởi chạy bộ làm việc worker[0] cho “%s”"
 
-#: builtin/merge.c:201
 #, 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"
+msgid "ConnectNamedPipe failed for '%s' (%lu)"
+msgstr "ConnectNamedPipe gặp lỗi  '%s' (%lu)"
 
-#: builtin/merge.c:202
 #, c-format
-msgid "Available strategies are:"
-msgstr "Các chiến lược sẵn sàng là:"
+msgid "could not create fd from pipe for '%s'"
+msgstr "không thể tạo mô tả tập tin từ đường ống cho '%s'"
 
-#: builtin/merge.c:207
 #, 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:258 builtin/pull.c:134
-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:261 builtin/pull.c:137
-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"
+msgid "could not start thread[0] for '%s'"
+msgstr "không thể khởi chạy tiến trình[0] cho “%s”"
 
-#: builtin/merge.c:262 builtin/pull.c:140
-msgid "(synonym to --stat)"
-msgstr "(đồng nghĩa với --stat)"
+#, c-format
+msgid "wait for hEvent failed for '%s'"
+msgstr "chờ cho hEvent gặp lỗi với “%s”"
 
-#: builtin/merge.c:264 builtin/pull.c:143
-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"
+msgid "cannot resume in the background, please use 'fg' to resume"
+msgstr ""
+"không thể khôi phục lại trong nền hệ thống, vui lòng sử dụng 'fg' để khôi "
+"phục lại"
 
-#: builtin/merge.c:267 builtin/pull.c:149
-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"
+msgid "cannot restore terminal settings"
+msgstr "không thể phục hồi lại các cài đặt thiết bị cuối"
 
-#: builtin/merge.c:269 builtin/pull.c:152
-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)"
+#, c-format
+msgid ""
+"exceeded maximum include depth (%d) while including\n"
+"\t%s\n"
+"from\n"
+"\t%s\n"
+"This might be due to circular includes."
+msgstr ""
+"vượt quá độ sâu bao gồm tối đa (%d) trong khi bao gồm\n"
+"\t%s\n"
+"từ\n"
+"\t%s\n"
+"Nguyên nhân có thể là gồm quẩn vòng."
 
-#: builtin/merge.c:271 builtin/pull.c:155
-msgid "edit message before committing"
-msgstr "sửa chú thích trước khi chuyển giao"
+#, c-format
+msgid "could not expand include path '%s'"
+msgstr "không thể khai triển đường dẫn “%s”"
 
-#: builtin/merge.c:273
-msgid "allow fast-forward (default)"
-msgstr "cho phép chuyển-tiếp-nhanh (mặc định)"
+msgid "relative config includes must come from files"
+msgstr "các bao gồm cấu hình liên quan phải đến từ các tập tin"
 
-#: builtin/merge.c:275 builtin/pull.c:162
-msgid "abort if fast-forward is not possible"
-msgstr "bỏ qua nếu chuyển-tiếp-nhanh không thể được"
+msgid "relative config include conditionals must come from files"
+msgstr "các điều kiện bao gồm cấu hình liên quan phải đến từ các tập tin"
 
-#: builtin/merge.c:279 builtin/pull.c:168
-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"
+msgid ""
+"remote URLs cannot be configured in file directly or indirectly included by "
+"includeIf.hasconfig:remote.*.url"
+msgstr ""
+"các URL máy chủ không thể được cấu hình trong tệp trực tiếp hoặc gián tiếp "
+"được bao gồm bởi includeIf.hasconfig:remote.*.url"
 
-#: builtin/merge.c:280 builtin/notes.c:785 builtin/pull.c:172
-#: builtin/rebase.c:1145 builtin/revert.c:114
-msgid "strategy"
-msgstr "chiến lược"
+#, c-format
+msgid "invalid config format: %s"
+msgstr "định dạng cấu hình không hợp lệ: %s"
 
-#: builtin/merge.c:281 builtin/pull.c:173
-msgid "merge strategy to use"
-msgstr "chiến lược hòa trộn sẽ dùng"
+#, c-format
+msgid "missing environment variable name for configuration '%.*s'"
+msgstr "thiếu tên biến môi trường cho cấu hình “%.*s”"
 
-#: builtin/merge.c:282 builtin/pull.c:176
-msgid "option=value"
-msgstr "tùy_chọn=giá_trị"
+#, c-format
+msgid "missing environment variable '%s' for configuration '%.*s'"
+msgstr "thiếu biến môi trường “%s” cho cấu hình “%.*s”"
 
-#: builtin/merge.c:283 builtin/pull.c:177
-msgid "option for selected merge strategy"
-msgstr "tùy chọn cho chiến lược hòa trộn đã chọn"
+#, c-format
+msgid "key does not contain a section: %s"
+msgstr "khóa không chứa một phần: %s"
 
-#: builtin/merge.c:285
-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)"
+#, c-format
+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"
 
-#: builtin/merge.c:291
-msgid "use <name> instead of the real target"
-msgstr "dùng <tên> thay cho đích thật"
+#, c-format
+msgid "invalid key: %s"
+msgstr "khóa không đúng: %s"
 
-#: builtin/merge.c:294
-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"
+#, c-format
+msgid "invalid key (newline): %s"
+msgstr "khóa không hợp lệ (dòng mới): %s"
 
-#: builtin/merge.c:296
-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"
+msgid "empty config key"
+msgstr "khóa cấu hình trống rỗng"
 
-#: builtin/merge.c:298
-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"
+#, c-format
+msgid "bogus config parameter: %s"
+msgstr "tham số cấu hình không có thực: %s"
 
-#: builtin/merge.c:300 builtin/pull.c:184
-msgid "allow merging unrelated histories"
-msgstr "cho phép hòa trộn lịch sử không liên quan"
+#, c-format
+msgid "bogus format in %s"
+msgstr "định dạng không có thực trong %s"
 
-#: builtin/merge.c:307
-msgid "bypass pre-merge-commit and commit-msg hooks"
-msgstr "vòng qua móc (hook) pre-merge-commit và commit-msg"
+#, c-format
+msgid "bogus count in %s"
+msgstr "số lượng không có thực trong %s"
 
-#: builtin/merge.c:323
-msgid "could not run stash."
-msgstr "không thể chạy stash."
+#, c-format
+msgid "too many entries in %s"
+msgstr "quá nhiều mục tin trong %s"
 
-#: builtin/merge.c:328
-msgid "stash failed"
-msgstr "lệnh tạm cất gặp lỗi"
+#, c-format
+msgid "missing config key %s"
+msgstr "thiếu khóa cấu hình “%s”"
 
-#: builtin/merge.c:333
 #, c-format
-msgid "not a valid object: %s"
-msgstr "không phải là một đối tượng hợp lệ: %s"
+msgid "missing config value %s"
+msgstr "thiếu giá trị cấu hình “%s”"
 
-#: builtin/merge.c:355 builtin/merge.c:372
-msgid "read-tree failed"
-msgstr "read-tree gặp lỗi"
+#, c-format
+msgid "bad config line %d in blob %s"
+msgstr "tập tin cấu hình sai tại dòng %d trong blob %s"
 
-#: builtin/merge.c:403
-msgid "Already up to date. (nothing to squash)"
-msgstr "Đã cập nhật rồi. (không có gì để squash)"
+#, c-format
+msgid "bad config line %d in file %s"
+msgstr "cấu hình sai tại dòng %d trong tập tin %s"
 
-#: builtin/merge.c:417
 #, c-format
-msgid "Squash commit -- not updating HEAD\n"
-msgstr "Squash commit -- không cập nhật HEAD\n"
+msgid "bad config line %d in standard input"
+msgstr "cấu hình sai tại dòng %d trong đầu vào tiêu chuẩn"
 
-#: builtin/merge.c:467
 #, 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"
+msgid "bad config line %d in submodule-blob %s"
+msgstr "cấu hình sai tại dòng %d trong blob-mô-đun-con %s"
 
-#: builtin/merge.c:517
 #, 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ả"
+msgid "bad config line %d in command line %s"
+msgstr "cấu hình sai tại dòng %d trong dòng lệnh %s"
 
-#: builtin/merge.c:605
 #, c-format
-msgid "Bad branch.%s.mergeoptions string: %s"
-msgstr "Chuỗi branch.%s.mergeoptions sai: %s"
+msgid "bad config line %d in %s"
+msgstr "cấu hình sai tại dòng %d trong %s"
 
-#: builtin/merge.c:732
-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."
+msgid "out of range"
+msgstr "nằm ngoài phạm vi"
 
-#: builtin/merge.c:745
-#, c-format
-msgid "unknown strategy option: -X%s"
-msgstr "không hiểu chiến lược: -X%s"
+msgid "invalid unit"
+msgstr "đơn vị không hợp lệ"
 
-#: builtin/merge.c:764 t/helper/test-fast-rebase.c:223
 #, c-format
-msgid "unable to write %s"
-msgstr "không thể ghi %s"
+msgid "bad numeric config value '%s' for '%s': %s"
+msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s”: %s"
 
-#: builtin/merge.c:816
 #, c-format
-msgid "Could not read from '%s'"
-msgstr "Không thể đọc từ “%s”"
+msgid "bad numeric config value '%s' for '%s' in blob %s: %s"
+msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong blob %s: %s"
 
-#: builtin/merge.c:825
 #, 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"
+msgid "bad numeric config value '%s' for '%s' in file %s: %s"
+msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong tập tin %s: %s"
 
-#: builtin/merge.c:831
-msgid ""
-"Please enter a commit message to explain why this merge is necessary,\n"
-"especially if it merges an updated upstream into a topic branch.\n"
-"\n"
+#, c-format
+msgid "bad numeric config value '%s' for '%s' in standard input: %s"
 msgstr ""
-"Hãy nhập vào các thông tin để giải thích tại sao sự hòa trộn này là cần "
-"thiết,\n"
-"đặc biệt là khi nó hòa trộn thượng nguồn đã cập nhật vào trong một nhánh "
-"topic.\n"
-"\n"
-
-#: builtin/merge.c:836
-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"
+"sai giá trị bằng số của cấu hình “%s” cho “%s” trong đầu vào tiêu chuẩn: %s"
 
-#: builtin/merge.c:839
 #, c-format
-msgid ""
-"Lines starting with '%c' will be ignored, and an empty message aborts\n"
-"the commit.\n"
+msgid "bad numeric config value '%s' for '%s' in submodule-blob %s: %s"
 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"
+"sai giá trị bằng số của cấu hình “%s” cho “%s” trong submodule-blob %s: %s"
 
-#: builtin/merge.c:900
-msgid "Empty commit message."
-msgstr "Chú thích của lần commit (chuyển giao) bị trống rỗng."
+#, c-format
+msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
+msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong dòng lệnh %s: %s"
 
-#: builtin/merge.c:915
 #, c-format
-msgid "Wonderful.\n"
-msgstr "Tuyệt vời.\n"
+msgid "bad numeric config value '%s' for '%s' in %s: %s"
+msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong %s: %s"
 
-#: builtin/merge.c:976
 #, 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"
+msgid "invalid value for variable %s"
+msgstr "giá trị không hợp lệ cho biến %s"
 
-#: builtin/merge.c:1015
-msgid "No current branch."
-msgstr "Không phải nhánh hiện hành."
+#, c-format
+msgid "ignoring unknown core.fsync component '%s'"
+msgstr "bỏ qua thành phần core.fsync chưa biết '%s'"
 
-#: builtin/merge.c:1017
-msgid "No remote for the current branch."
-msgstr "Không có máy chủ cho nhánh hiện hành."
+#, c-format
+msgid "bad boolean config value '%s' for '%s'"
+msgstr "sai giá trị kiểu lô-gíc của cấu hình “%s” cho “%s”"
 
-#: builtin/merge.c:1019
-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."
+#, c-format
+msgid "failed to expand user dir in: '%s'"
+msgstr "gặp lỗi mở rộng thư mục người dùng trong: “%s”"
 
-#: builtin/merge.c:1024
 #, 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"
+msgid "'%s' for '%s' is not a valid timestamp"
+msgstr "“%s” dành cho “%s” không phải là dấu vết thời gian hợp lệ"
 
-#: builtin/merge.c:1081
 #, c-format
-msgid "Bad value '%s' in environment '%s'"
-msgstr "Giá trị sai “%s” trong biến môi trường “%s”"
+msgid "abbrev length out of range: %d"
+msgstr "chiều dài abbrev nằm ngoài phạm vi: %d"
 
-#: builtin/merge.c:1183
 #, 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"
+msgid "bad zlib compression level %d"
+msgstr "mức nén zlib %d là sai"
 
-#: builtin/merge.c:1217
-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"
+msgid "core.commentChar should only be one character"
+msgstr "core.commentChar chỉ được có một ký tự"
 
-#: builtin/merge.c:1330
-msgid "--abort expects no arguments"
-msgstr "--abort không nhận các đối số"
+#, c-format
+msgid "ignoring unknown core.fsyncMethod value '%s'"
+msgstr "bỏ qua giá trị core.fsyncMethod chưa biết '%s'"
 
-#: builtin/merge.c:1334
-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)."
+msgid "core.fsyncObjectFiles is deprecated; use core.fsync instead"
+msgstr "core.fsyncObjectFiles đã lạc hậu; hãy dùng core.fsync để thay thế"
 
-#: builtin/merge.c:1352
-msgid "--quit expects no arguments"
-msgstr "--quit không nhận các đối số"
+#, c-format
+msgid "invalid mode for object creation: %s"
+msgstr "chế độ không hợp lệ đối với việc tạo đối tượng: %s"
 
-#: builtin/merge.c:1365
-msgid "--continue expects no arguments"
-msgstr "--continue không nhận đối số"
+#, c-format
+msgid "malformed value for %s"
+msgstr "giá trị cho %s sai dạng"
 
-#: builtin/merge.c:1369
-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)."
+#, c-format
+msgid "malformed value for %s: %s"
+msgstr "giá trị cho %s sai dạng: %s"
 
-#: builtin/merge.c:1385
-msgid ""
-"You have not concluded your merge (MERGE_HEAD exists).\n"
-"Please, commit your changes before you merge."
-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."
+msgid "must be one of nothing, matching, simple, upstream or current"
+msgstr "phải là một trong số nothing, matching, simple, upstream hay current"
 
-#: builtin/merge.c:1392
-msgid ""
-"You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
-"Please, commit your changes before you merge."
-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."
+#, c-format
+msgid "unable to load config blob object '%s'"
+msgstr "không thể tải đối tượng blob cấu hình “%s”"
 
-#: builtin/merge.c:1395
-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)."
+#, c-format
+msgid "reference '%s' does not point to a blob"
+msgstr "tham chiếu “%s” không chỉ đến một blob nào cả"
 
-#: builtin/merge.c:1427
-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."
+#, c-format
+msgid "unable to resolve config blob '%s'"
+msgstr "không thể phân giải điểm xét duyệt “%s”"
 
-#: builtin/merge.c:1444
-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ợ"
+#, c-format
+msgid "failed to parse %s"
+msgstr "gặp lỗi khi phân tích cú pháp %s"
 
-#: builtin/merge.c:1446
-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"
+msgid "unable to parse command-line config"
+msgstr "không thể phân tích cấu hình dòng lệnh"
+
+msgid "unknown error occurred while reading the configuration files"
+msgstr "đã có lỗi chưa biết xảy ra trong khi đọc các tập tin cấu hình"
 
-#: builtin/merge.c:1451
 #, 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"
+msgid "Invalid %s: '%s'"
+msgstr "%s không hợp lệ: “%s”"
 
-#: builtin/merge.c:1453
-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"
+#, c-format
+msgid "splitIndex.maxPercentChange value '%d' should be between 0 and 100"
+msgstr "giá trị splitIndex.maxPercentChange “%d” phải nằm giữa 0 và 100"
 
-#: builtin/merge.c:1540
-msgid "refusing to merge unrelated histories"
-msgstr "từ chối hòa trộn lịch sử không liên quan"
+#, c-format
+msgid "unable to parse '%s' from command-line config"
+msgstr "không thể phân tích “%s” từ cấu hình dòng lệnh"
 
-#: builtin/merge.c:1559
 #, c-format
-msgid "Updating %s..%s\n"
-msgstr "Đang cập nhật %s..%s\n"
+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"
 
-#: builtin/merge.c:1606
 #, c-format
-msgid "Trying really trivial in-index merge...\n"
-msgstr "Đang thử hòa trộn kiểu “trivial in-index”…\n"
+msgid "invalid section name '%s'"
+msgstr "tên của phần không hợp lệ “%s”"
 
-#: builtin/merge.c:1613
 #, c-format
-msgid "Nope.\n"
-msgstr "Không.\n"
+msgid "%s has multiple values"
+msgstr "%s có đa giá trị"
 
-#: builtin/merge.c:1671 builtin/merge.c:1737
 #, c-format
-msgid "Rewinding the tree to pristine...\n"
-msgstr "Đang tua lại cây thành thời xa xưa…\n"
+msgid "failed to write new configuration file %s"
+msgstr "gặp lỗi khi ghi tập tin cấu hình “%s”"
 
-#: builtin/merge.c:1675
 #, c-format
-msgid "Trying merge strategy %s...\n"
-msgstr "Đang thử chiến lược hòa trộn %s…\n"
+msgid "could not lock config file %s"
+msgstr "không thể khóa tập tin cấu hình %s"
 
-#: builtin/merge.c:1727
 #, 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"
+msgid "opening %s"
+msgstr "đang mở “%s”"
 
-#: builtin/merge.c:1729
 #, 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"
+msgid "invalid config file %s"
+msgstr "tập tin cấu hình “%s” không hợp lệ"
 
-#: builtin/merge.c:1739
 #, c-format
-msgid "Using the %s strategy to prepare resolving by hand.\n"
-msgstr "Sử dụng chiến lược %s để chuẩn bị giải quyết bằng tay.\n"
+msgid "fstat on %s failed"
+msgstr "fstat trên %s gặp lỗi"
 
-#: builtin/merge.c:1753
 #, c-format
-msgid "Automatic merge went well; stopped before committing as requested\n"
-msgstr ""
-"Hòa trộn tự động đã trở nên tốt; bị dừng trước khi việc chuyển giao được yêu "
-"cầu\n"
+msgid "unable to mmap '%s'%s"
+msgstr "không thể mmap “%s”%s"
 
-#: builtin/mktag.c:27
 #, c-format
-msgid "warning: tag input does not pass fsck: %s"
-msgstr "cảnh báo: đầu vào thẻ không qua kiểm tra fsck: %s"
+msgid "chmod on %s failed"
+msgstr "chmod trên %s gặp lỗi"
 
-#: builtin/mktag.c:38
 #, c-format
-msgid "error: tag input does not pass fsck: %s"
-msgstr "lỗi: đầu vào thẻ không vượt qua fsck: %s"
+msgid "could not write config file %s"
+msgstr "không thể ghi tập tin cấu hình “%s”"
 
-#: builtin/mktag.c:41
 #, c-format
-msgid "%d (FSCK_IGNORE?) should never trigger this callback"
-msgstr "%d (FSCK_IGNORE?) không bao giờ nên kích hoạt cuộc gọi ngược này"
+msgid "could not set '%s' to '%s'"
+msgstr "không thể đặt “%s” thành “%s”"
 
-#: builtin/mktag.c:56
 #, c-format
-msgid "could not read tagged object '%s'"
-msgstr "không thể đọc đối tượng được đánh thẻ %s"
+msgid "invalid section name: %s"
+msgstr "tên của phần không hợp lệ: %s"
 
-#: builtin/mktag.c:59
 #, c-format
-msgid "object '%s' tagged as '%s', but is a '%s' type"
-msgstr "đối tượng %s được đánh thẻ là %s, không phải là kiểu %s"
+msgid "missing value for '%s'"
+msgstr "thiếu giá trị cho cho “%s”"
 
-#: builtin/mktag.c:97
-msgid "tag on stdin did not pass our strict fsck check"
-msgstr ""
-"thẻ trên stdin đã không vượt qua kiểm tra fsck nghiêm ngặt của chúng tôi"
+msgid "the remote end hung up upon initial contact"
+msgstr "máy chủ bị treo trên lần tiếp xúc đầu tiên"
 
-#: builtin/mktag.c:100
-msgid "tag on stdin did not refer to a valid object"
+msgid ""
+"Could not read from remote repository.\n"
+"\n"
+"Please make sure you have the correct access rights\n"
+"and the repository exists."
 msgstr ""
-"thẻ trên đầu vào tiêu chuẩn không chỉ đến một lần chuyển giao hợp lệ nào cả"
+"Không thể đọc từ kho trên mạng.\n"
+"\n"
+"Vui lòng chắc chắn là bạn có đủ thẩm quyền truy cập\n"
+"và kho chứa đã sẵn có."
 
-#: builtin/mktag.c:103 builtin/tag.c:243
-msgid "unable to write tag file"
-msgstr "không thể ghi vào tập tin lưu thẻ"
+#, c-format
+msgid "server doesn't support '%s'"
+msgstr "máy chủ không hỗ trợ “%s”"
 
-#: builtin/mktree.c:154
-msgid "input is NUL terminated"
-msgstr "đầu vào được chấm dứt bởi NUL"
+#, c-format
+msgid "server doesn't support feature '%s'"
+msgstr "máy chủ không hỗ trợ tính năng “%s”"
 
-#: builtin/mktree.c:155 builtin/write-tree.c:26
-msgid "allow missing objects"
-msgstr "cho phép thiếu đối tượng"
+msgid "expected flush after capabilities"
+msgstr "cần đẩy dữ liệu lên đĩa sau các capabilities"
 
-#: builtin/mktree.c:156
-msgid "allow creation of more than one tree"
-msgstr "cho phép tạo nhiều hơn một cây"
+#, c-format
+msgid "ignoring capabilities after first line '%s'"
+msgstr "bỏ qua capabilities sau dòng đầu tiên “%s”"
 
-#: builtin/multi-pack-index.c:10
-msgid ""
-"git multi-pack-index [<options>] write [--preferred-pack=<pack>][--refs-"
-"snapshot=<path>]"
-msgstr ""
-"git multi-pack-index [<các tùy chọn>] write [--preferred-pack=<gói>][--refs-"
-"snapshot=</đường/dẫn>]"
+msgid "protocol error: unexpected capabilities^{}"
+msgstr "lỗi giao thức: không cần capabilities^{}"
 
-#: builtin/multi-pack-index.c:14
-msgid "git multi-pack-index [<options>] verify"
-msgstr "git multi-pack-index [<các tùy chọn>] verify"
+#, c-format
+msgid "protocol error: expected shallow sha-1, got '%s'"
+msgstr "lỗi giao thức: cần sha-1 shallow, nhưng lại nhận được “%s”"
 
-#: builtin/multi-pack-index.c:17
-msgid "git multi-pack-index [<options>] expire"
-msgstr "git multi-pack-index [<các tùy chọn>] expire"
+msgid "repository on the other end cannot be shallow"
+msgstr "kho đã ở điểm cuối khoác nên không thể được shallow"
 
-#: builtin/multi-pack-index.c:20
-msgid "git multi-pack-index [<options>] repack [--batch-size=<size>]"
-msgstr "git multi-pack-index [<các-tùy-chọn>] repack [--batch-size=<cỡ>]"
+msgid "invalid packet"
+msgstr "gói không hợp lệ"
 
-#: builtin/multi-pack-index.c:57
-msgid "object directory containing set of packfile and pack-index pairs"
-msgstr "thư mục đối tượng có chứa một bộ các tập tin gói và cặp pack-index"
+#, c-format
+msgid "protocol error: unexpected '%s'"
+msgstr "lỗi giao thức: không cần “%s”"
 
-#: builtin/multi-pack-index.c:98
-msgid "preferred-pack"
-msgstr "preferred-pack"
+#, 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ụ"
 
-#: builtin/multi-pack-index.c:99
-msgid "pack for reuse when computing a multi-pack bitmap"
-msgstr "gói được sử dụng khi tính toán một \"multi-pack bitmap\""
+#, c-format
+msgid "invalid ls-refs response: %s"
+msgstr "trả về của ls-refs không hợp lệ: %s"
 
-#: builtin/multi-pack-index.c:100
-msgid "write multi-pack bitmap"
-msgstr "ghi multi-pack bitmap"
+msgid "expected flush after ref listing"
+msgstr "cần đẩy dữ liệu lên đĩa sau khi liệt kê tham chiếu"
 
-#: builtin/multi-pack-index.c:105
-msgid "write multi-pack index containing only given indexes"
-msgstr "ghi mục lục multi-pack chỉ chứa các mục lục đã cho"
+msgid "expected response end packet after ref listing"
+msgstr "cần nhận được trả lời là kết thúc gói sau khi liệt kê tham chiếu"
 
-#: builtin/multi-pack-index.c:107
-msgid "refs snapshot for selecting bitmap commits"
-msgstr "ảnh chụp nhanh refs để chọn các lần chuyển giao ánh xạ"
+#, c-format
+msgid "protocol '%s' is not supported"
+msgstr "giao thức “%s” chưa được hỗ trợ"
 
-#: builtin/multi-pack-index.c:206
-msgid ""
-"during repack, collect pack-files of smaller size into a batch that is "
-"larger than this size"
-msgstr ""
-"trong suốt quá trình đóng gói lại, gom các tập tin gói có kích cỡ nhỏ hơn "
-"vào một bó cái mà lớn hơn kích thước này"
+msgid "unable to set SO_KEEPALIVE on socket"
+msgstr "không thể đặt SO_KEEPALIVE trên ổ cắm"
 
-#: builtin/mv.c:18
-msgid "git mv [<options>] <source>... <destination>"
-msgstr "git mv [<các tùy chọn>] <nguồn>… <đích>"
+#, c-format
+msgid "Looking up %s ... "
+msgstr "Đang tìm kiếm %s … "
 
-#: builtin/mv.c:83
 #, c-format
-msgid "Directory %s is in index and no submodule?"
-msgstr "Thư mục “%s” có ở trong chỉ mục mà không có mô-đun con?"
+msgid "unable to look up %s (port %s) (%s)"
+msgstr "không tìm được %s (cổng %s) (%s)"
 
-#: builtin/mv.c:85
-msgid "Please stage your changes to .gitmodules or stash them to proceed"
+#. TRANSLATORS: this is the end of "Looking up %s ... "
+#, c-format
+msgid ""
+"done.\n"
+"Connecting to %s (port %s) ... "
 msgstr ""
-"Hãy đưa các thay đổi của bạn vào .gitmodules hay tạm cất chúng đi để xử lý"
+"xong.\n"
+"Đang kết nối đến %s (cổng %s) … "
 
-#: builtin/mv.c:103
 #, c-format
-msgid "%.*s is in index"
-msgstr "%.*s trong bảng mục lục"
-
-#: builtin/mv.c:125
-msgid "force move/rename even if target exists"
-msgstr "ép buộc di chuyển hay đổi tên thậm chí cả khi đích đã tồn tại"
+msgid ""
+"unable to connect to %s:\n"
+"%s"
+msgstr ""
+"không thể kết nối đến %s:\n"
+"%s"
 
-#: builtin/mv.c:127
-msgid "skip move/rename errors"
-msgstr "bỏ qua các lỗi liên quan đến di chuyển, đổi tên"
+#. TRANSLATORS: this is the end of "Connecting to %s (port %s) ... "
+msgid "done."
+msgstr "hoàn tất."
 
-#: builtin/mv.c:172
 #, c-format
-msgid "destination '%s' is not a directory"
-msgstr "có đích “%s” nhưng đây không phải là một thư mục"
+msgid "unable to look up %s (%s)"
+msgstr "không thể tìm thấy %s (%s)"
 
-#: builtin/mv.c:184
 #, c-format
-msgid "Checking rename of '%s' to '%s'\n"
-msgstr "Đang kiểm tra việc đổi tên của “%s” thành “%s”\n"
+msgid "unknown port %s"
+msgstr "không hiểu cổng %s"
 
-#: builtin/mv.c:190
-msgid "bad source"
-msgstr "nguồn sai"
+#, c-format
+msgid "strange hostname '%s' blocked"
+msgstr "đã khóa tên máy lạ “%s”"
 
-#: builtin/mv.c:193
-msgid "can not move directory into itself"
-msgstr "không thể di chuyển một thư mục vào trong chính nó được"
+#, c-format
+msgid "strange port '%s' blocked"
+msgstr "đã khóa cổng lạ “%s”"
 
-#: builtin/mv.c:196
-msgid "cannot move directory over file"
-msgstr "không di chuyển được thư mục thông qua tập tin"
+#, c-format
+msgid "cannot start proxy %s"
+msgstr "không thể khởi chạy ủy nhiệm “%s”"
 
-#: builtin/mv.c:205
-msgid "source directory is empty"
-msgstr "thư mục nguồn là trống rỗng"
+msgid "no path specified; see 'git help pull' for valid url syntax"
+msgstr "chưa chỉ định đường dẫn; xem'git help pull” để biết cú pháp url hợp lệ"
 
-#: builtin/mv.c:231
-msgid "not under version control"
-msgstr "không nằm dưới sự quản lý mã nguồn"
+msgid "newline is forbidden in git:// hosts and repo paths"
+msgstr "newline bị cấm trong các git:// máy chủ và đường dẫn repo"
 
-#: builtin/mv.c:233
-msgid "conflicted"
-msgstr "bị xung đột"
+msgid "ssh variant 'simple' does not support -4"
+msgstr "ssh biến thể “simple” không hỗ trợ -4"
 
-#: builtin/mv.c:236
-msgid "destination exists"
-msgstr "đích đã tồn tại sẵn rồi"
+msgid "ssh variant 'simple' does not support -6"
+msgstr "ssh biến thể “simple” không hỗ trợ -6"
 
-#: builtin/mv.c:244
-#, c-format
-msgid "overwriting '%s'"
-msgstr "đang ghi đè lên “%s”"
+msgid "ssh variant 'simple' does not support setting port"
+msgstr "ssh biến thể “simple” không hỗ trợ đặt cổng"
 
-#: builtin/mv.c:247
-msgid "Cannot overwrite"
-msgstr "Không thể ghi đè"
+#, c-format
+msgid "strange pathname '%s' blocked"
+msgstr "đã khóa tên đường dẫn lạ “%s”"
 
-#: builtin/mv.c:250
-msgid "multiple sources for the same target"
-msgstr "nhiều nguồn cho cùng một đích"
+msgid "unable to fork"
+msgstr "không thể rẽ nhánh tiến trình con"
 
-#: builtin/mv.c:252
-msgid "destination directory does not exist"
-msgstr "thư mục đích không tồn tại"
+msgid "Could not run 'git rev-list'"
+msgstr "Không thể chạy “git rev-list”"
 
-#: builtin/mv.c:280
-#, c-format
-msgid "%s, source=%s, destination=%s"
-msgstr "%s, nguồn=%s, đích=%s"
+msgid "failed write to rev-list"
+msgstr "gặp lỗi khi ghi vào rev-list"
 
-#: builtin/mv.c:308
-#, c-format
-msgid "Renaming %s to %s\n"
-msgstr "Đổi tên %s thành %s\n"
+msgid "failed to close rev-list's stdin"
+msgstr "gặp lỗi khi đóng đầu vào chuẩn stdin của rev-list"
 
-#: builtin/mv.c:314 builtin/remote.c:812 builtin/repack.c:861
 #, c-format
-msgid "renaming '%s' failed"
-msgstr "gặp lỗi khi đổi tên “%s”"
+msgid "'%s' does not exist"
+msgstr "\"%s\" không tồn tại"
 
-#: builtin/name-rev.c:524
-msgid "git name-rev [<options>] <commit>..."
-msgstr "git name-rev [<các tùy chọn>] <commit>…"
+msgid "need a working directory"
+msgstr "cần một thư mục làm việc"
 
-#: builtin/name-rev.c:525
-msgid "git name-rev [<options>] --all"
-msgstr "git name-rev [<các tùy chọn>] --all"
+msgid "could not find enlistment root"
+msgstr "không tìm thấy gốc enlistment"
 
-#: builtin/name-rev.c:526
-msgid "git name-rev [<options>] --annotate-stdin"
-msgstr "git name-rev [<các tùy chọn>] --annotate-stdin"
+#, c-format
+msgid "could not switch to '%s'"
+msgstr "không thể chuyển đến '%s'"
 
-#: builtin/name-rev.c:583
-msgid "print only ref-based names (no object names)"
-msgstr "chỉ hiển thị các tham chiếu cơ sở (không phải các tên đối tượng)"
+#, c-format
+msgid "could not configure %s=%s"
+msgstr "không thể đóng cấu hình %s=%s"
 
-#: builtin/name-rev.c:584
-msgid "only use tags to name the commits"
-msgstr "chỉ dùng các thẻ để đặt tên cho các lần chuyển giao"
+msgid "could not configure log.excludeDecoration"
+msgstr "không thể cấu hình log.excludeDecoration"
 
-#: builtin/name-rev.c:586
-msgid "only use refs matching <pattern>"
-msgstr "chỉ sử dụng các tham chiếu khớp với <mẫu>"
+msgid "Scalar enlistments require a worktree"
+msgstr "'Scalar enlistments' cần một cây làm việc"
 
-#: builtin/name-rev.c:588
-msgid "ignore refs matching <pattern>"
-msgstr "bỏ qua các tham chiếu khớp với <mẫu>"
+#, c-format
+msgid "could not open directory '%s'"
+msgstr "không thể mở thư mục “%s”"
 
-#: builtin/name-rev.c:590
-msgid "list all commits reachable from all refs"
+#, c-format
+msgid "skipping '%s', which is neither file nor directory"
 msgstr ""
-"liệt kê tất cả các lần chuyển giao có thể đọc được từ tất cả các tham chiếu"
+"đang bỏ qua “%s”, cái không phải là một tập tin, cũng không phải thư mục"
 
-#: builtin/name-rev.c:591
-msgid "deprecated: use annotate-stdin instead"
-msgstr "đã lạc hậu: hãy dùng annotate-stdin để thay thế"
+#, c-format
+msgid "could not determine free disk size for '%s'"
+msgstr "không thể dò tìm chỗ trống trên đĩa  cho “%s”"
 
-#: builtin/name-rev.c:592
-msgid "annotate text from stdin"
-msgstr "chú giải chữ từ đầu vào tiêu chuẩn stdin"
+#, c-format
+msgid "could not get info for '%s'"
+msgstr "không thể lấy thông tin cho “%s”"
 
-#: builtin/name-rev.c:593
-msgid "allow to print `undefined` names (default)"
-msgstr "cho phép in các tên “chưa định nghĩa” (mặc định)"
+#, c-format
+msgid "remote HEAD is not a branch: '%.*s'"
+msgstr "HEAD của máy chủ không phải một nhánh: '%.*s'"
 
-#: builtin/name-rev.c:599
-msgid "dereference tags in the input (internal use)"
-msgstr "bãi bỏ tham chiếu các thẻ trong đầu vào (dùng nội bộ)"
+msgid "failed to get default branch name from remote; using local default"
+msgstr "gặp lỗi khi lấy tên nhánh mặc định từ máy chủ; sử dụng mặc định nội bộ"
 
-#: builtin/notes.c:28
-msgid "git notes [--ref <notes-ref>] [list [<object>]]"
-msgstr "git notes [--ref <notes-ref>] [list [<đối-tượng>]]"
+msgid "failed to get default branch name"
+msgstr "gặp lỗi khi lấy tên nhánh mặc định"
 
-#: builtin/notes.c:29
-msgid ""
-"git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <msg> | -F <file> "
-"| (-c | -C) <object>] [<object>]"
-msgstr ""
-"git notes [--ref <notes-ref>] add [-f] [--allow-empty] [-m <lời-nhắn> | -F "
-"<tập-tin> | (-c | -C) <đối-tượng>] [<đối-tượng>]"
+msgid "failed to unregister repository"
+msgstr "gặp lỗi khi hủy đăng ký kho chứa"
 
-#: builtin/notes.c:30
-msgid "git notes [--ref <notes-ref>] copy [-f] <from-object> <to-object>"
-msgstr "git notes [--ref <notes-ref>] copy [-f] <từ-đối-tượng> <đến-đối-tượng>"
+msgid "failed to delete enlistment directory"
+msgstr "gặp lỗi khi xóa thư mục dành được"
 
-#: builtin/notes.c:31
-msgid ""
-"git notes [--ref <notes-ref>] append [--allow-empty] [-m <msg> | -F <file> | "
-"(-c | -C) <object>] [<object>]"
-msgstr ""
-"git notes [--ref <notes-ref>] append [--allow-empty] [-m <lời-nhắn> | -F "
-"<tập-tin> | (-c | -C) <đối-tượng>] [<đối-tượng>]"
+msgid "branch to checkout after clone"
+msgstr "nhánh để lấy ra sau khi nhân bản"
 
-#: builtin/notes.c:32
-msgid "git notes [--ref <notes-ref>] edit [--allow-empty] [<object>]"
-msgstr "git notes [--ref <notes-ref>] edit [--allow-empty] [<đối-tượng>]"
+msgid "when cloning, create full working directory"
+msgstr "khi nhân bản, tạo đầy đủ thư mục làm việc"
 
-#: builtin/notes.c:33
-msgid "git notes [--ref <notes-ref>] show [<object>]"
-msgstr "git notes [--ref <notes-ref>] show [<đối-tượng>]"
+msgid "only download metadata for the branch that will be checked out"
+msgstr "chỉ siêu dữ liệu tải về cho nhánh mà sẽ được lấy ra"
 
-#: builtin/notes.c:34
-msgid ""
-"git notes [--ref <notes-ref>] merge [-v | -q] [-s <strategy>] <notes-ref>"
-msgstr ""
-"git notes [--ref <notes-ref>] merge [-v | -q] [-s <chiến-lược> ] <notes-ref>"
+msgid "scalar clone [<options>] [--] <repo> [<dir>]"
+msgstr "scalar clone [<các tùy chọn>] [--] <kho> [<t.mục>]"
 
-#: builtin/notes.c:37
-msgid "git notes [--ref <notes-ref>] remove [<object>...]"
-msgstr "git notes [--ref <notes-ref>] remove [<đối-tượng>…]"
+#, c-format
+msgid "cannot deduce worktree name from '%s'"
+msgstr "không thể suy diễn tên cây làm việc từ '%s'"
 
-#: builtin/notes.c:38
-msgid "git notes [--ref <notes-ref>] prune [-n] [-v]"
-msgstr "git notes [--ref <notes-ref>] prune [-n] [-v]"
+#, c-format
+msgid "directory '%s' exists already"
+msgstr "thư mục '%s' đã sẵn có"
 
-#: builtin/notes.c:39
-msgid "git notes [--ref <notes-ref>] get-ref"
-msgstr "git notes [--ref <notes-ref>] get-ref"
+#, c-format
+msgid "failed to get default branch for '%s'"
+msgstr "gặp lỗi khi lấy nhánh mặc định cho '%s'"
 
-#: builtin/notes.c:44
-msgid "git notes [list [<object>]]"
-msgstr "git notes [list [<đối tượng>]]"
+#, c-format
+msgid "could not configure remote in '%s'"
+msgstr "không thể cấu hình máy chủ trong '%s'"
 
-#: builtin/notes.c:49
-msgid "git notes add [<options>] [<object>]"
-msgstr "git notes add [<các tùy chọn>] [<đối-tượng>]"
+#, c-format
+msgid "could not configure '%s'"
+msgstr "không thể cấu hình '%s'"
 
-#: builtin/notes.c:54
-msgid "git notes copy [<options>] <from-object> <to-object>"
-msgstr "git notes copy [<các tùy chọn>] <từ-đối-tượng> <đến-đối-tượng>"
+msgid "partial clone failed; attempting full clone"
+msgstr "nhân bản từng phần gặp lỗi; đang cố thử nhân bản đầy đủ"
 
-#: builtin/notes.c:55
-msgid "git notes copy --stdin [<from-object> <to-object>]..."
-msgstr "git notes copy --stdin [<từ-đối-tượng> <đến-đối-tượng>]…"
+msgid "could not configure for full clone"
+msgstr "không thể cấu hình cho nhân bản đầy đủ"
 
-#: builtin/notes.c:60
-msgid "git notes append [<options>] [<object>]"
-msgstr "git notes append [<các tùy chọn>] [<đối-tượng>]"
+msgid "scalar diagnose [<enlistment>]"
+msgstr "scalar diagnose [<enlistment>]"
 
-#: builtin/notes.c:65
-msgid "git notes edit [<object>]"
-msgstr "git notes edit [<đối tượng>]"
+#, c-format
+msgid "could not create directory for '%s'"
+msgstr "không thể tạo thư mục cho “%s”"
 
-#: builtin/notes.c:70
-msgid "git notes show [<object>]"
-msgstr "git notes show [<đối tượng>]"
+msgid "could not duplicate stdout"
+msgstr "không thể nhân đôi đầu vào tiêu chuẩn"
 
-#: builtin/notes.c:75
-msgid "git notes merge [<options>] <notes-ref>"
-msgstr "git notes merge [<các tùy chọn>] <notes-ref>"
+msgid "failed to write archive"
+msgstr "gặp lỗi khi khi kho nén"
 
-#: builtin/notes.c:76
-msgid "git notes merge --commit [<options>]"
-msgstr "git notes merge --commit [<các tùy chọn>]"
+msgid "`scalar list` does not take arguments"
+msgstr "`scalar list` không nhận các tham số"
 
-#: builtin/notes.c:77
-msgid "git notes merge --abort [<options>]"
-msgstr "git notes merge --abort [<các tùy chọn>]"
+msgid "scalar register [<enlistment>]"
+msgstr "scalar register [<enlistment>]"
 
-#: builtin/notes.c:82
-msgid "git notes remove [<object>]"
-msgstr "git notes remove [<đối tượng>]"
+msgid "reconfigure all registered enlistments"
+msgstr "cấu hình mọi enlistments đã đăng ký"
 
-#: builtin/notes.c:87
-msgid "git notes prune [<options>]"
-msgstr "git notes prune [<các tùy chọn>]"
+msgid "scalar reconfigure [--all | <enlistment>]"
+msgstr "scalar reconfigure [--all | <enlistment>]"
 
-#: builtin/notes.c:97
-msgid "Write/edit the notes for the following object:"
-msgstr "Ghi hay sửa ghi chú cho đối tượng sau đây:"
+msgid "--all or <enlistment>, but not both"
+msgstr "--all hoặc <enlistment>, không thể là cả hai"
 
-#: builtin/notes.c:149
 #, c-format
-msgid "unable to start 'show' for object '%s'"
-msgstr "không thể khởi chạy “show” cho đối tượng “%s”"
+msgid "git repository gone in '%s'"
+msgstr "kho git ra đi trong '%s'"
 
-#: builtin/notes.c:153
-msgid "could not read 'show' output"
-msgstr "không thể đọc kết xuất “show”"
+msgid ""
+"scalar run <task> [<enlistment>]\n"
+"Tasks:\n"
+msgstr ""
+"scalar run <task> [<enlistment>]\n"
+"Nhiệm vụ:\n"
 
-#: builtin/notes.c:161
 #, c-format
-msgid "failed to finish 'show' for object '%s'"
-msgstr "gặp lỗi khi hoàn thành “show” cho đối tượng “%s”"
+msgid "no such task: '%s'"
+msgstr "không có nhiệm vụ nào như thế: “%s”"
 
-#: builtin/notes.c:194
-msgid "please supply the note contents using either -m or -F option"
-msgstr ""
-"xin hãy áp dụng nội dung của ghi chú sử dụng hoặc là tùy chọn -m hoặc là -F"
+msgid "scalar unregister [<enlistment>]"
+msgstr "scalar unregister [<enlistment>]"
 
-#: builtin/notes.c:203
-msgid "unable to write note object"
-msgstr "không thể ghi đối tượng ghi chú (note)"
+msgid "scalar delete <enlistment>"
+msgstr "scalar delete <enlistment>"
 
-#: builtin/notes.c:206
-#, c-format
-msgid "the note contents have been left in %s"
-msgstr "nội dung ghi chú còn lại %s"
+msgid "refusing to delete current working directory"
+msgstr "từ chối gỡ bỏ thư mục làm việc hiện tại"
 
-#: builtin/notes.c:240 builtin/tag.c:582
-#, c-format
-msgid "could not open or read '%s'"
-msgstr "không thể mở hay đọc “%s”"
+msgid "include Git version"
+msgstr "bao gồm phiên bản Git"
 
-#: builtin/notes.c:261 builtin/notes.c:311 builtin/notes.c:313
-#: builtin/notes.c:381 builtin/notes.c:436 builtin/notes.c:524
-#: builtin/notes.c:529 builtin/notes.c:608 builtin/notes.c:670
-#, 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ệ."
+msgid "include Git's build options"
+msgstr "bao gồm các tùy chọn biên dịch của Git"
 
-#: builtin/notes.c:263
-#, c-format
-msgid "failed to read object '%s'."
-msgstr "gặp lỗi khi đọc đối tượng “%s”."
+msgid "scalar verbose [-v | --verbose] [--build-options]"
+msgstr "scalar verbose [-v | --verbose] [--build-options]"
 
-#: builtin/notes.c:266
-#, c-format
-msgid "cannot read note data from non-blob object '%s'."
-msgstr "không thể đọc dữ liệu ghi chú từ đối tượng không-blob “%s”."
+msgid "-C requires a <directory>"
+msgstr "-C cần một <thư_mục>"
 
-#: builtin/notes.c:307
 #, c-format
-msgid "malformed input line: '%s'."
-msgstr "dòng đầu vào dị hình: “%s”."
+msgid "could not change to '%s'"
+msgstr "không thể chuyển sang “%s”"
+
+msgid "-c requires a <key>=<value> argument"
+msgstr "-c cần một tham số <key>=<value>"
+
+msgid ""
+"scalar [-C <directory>] [-c <key>=<value>] <command> [<options>]\n"
+"\n"
+"Commands:\n"
+msgstr ""
+"scalar [-C </thư/mục/>] [-c <khóa>=<giá trị>] <lệnh> [<các tùy chọn>]\n"
+"\n"
+"Các lệnh:\n"
 
-#: builtin/notes.c:322
 #, 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” sang “%s”"
+msgid "illegal crlf_action %d"
+msgstr "crlf_action %d không hợp lệ"
 
-#. TRANSLATORS: the first %s will be replaced by a git
-#. notes command: 'add', 'merge', 'remove', etc.
-#.
-#: builtin/notes.c:354
 #, c-format
-msgid "refusing to %s notes in %s (outside of refs/notes/)"
-msgstr "từ chối %s ghi chú trong %s (nằm ngoài refs/notes/)"
+msgid "CRLF would be replaced by LF in %s"
+msgstr "CRLF nên được thay bằng LF trong %s"
 
-#: builtin/notes.c:387 builtin/notes.c:676
 #, c-format
-msgid "no note found for object %s."
-msgstr "không tìm thấy ghi chú cho đối tượng %s."
-
-#: builtin/notes.c:408 builtin/notes.c:574
-msgid "note contents as a string"
-msgstr "nội dung ghi chú (note) nằm trong một chuỗi"
+msgid ""
+"in the working copy of '%s', CRLF will be replaced by LF the next time Git "
+"touches it"
+msgstr ""
+"trong bản sao làm việc của '%s', CRLF được thay thế bằng LF lần tới Git tiếp "
+"xúc với nó"
 
-#: builtin/notes.c:411 builtin/notes.c:577
-msgid "note contents in a file"
-msgstr "nội dung ghi chú (note) nằm trong một tập tin"
+#, c-format
+msgid "LF would be replaced by CRLF in %s"
+msgstr "LF nên thay bằng CRLF trong %s"
 
-#: builtin/notes.c:414 builtin/notes.c:580
-msgid "reuse and edit specified note object"
-msgstr "dùng lại nhưng có sửa chữa đối tượng note đã chỉ ra"
+#, c-format
+msgid ""
+"in the working copy of '%s', LF will be replaced by CRLF the next time Git "
+"touches it"
+msgstr ""
+"trong bản sao làm việc của '%s', LF được thay thế bằng CRLF lần tới Git tiếp "
+"xúc với nó"
 
-#: builtin/notes.c:417 builtin/notes.c:583
-msgid "reuse specified note object"
-msgstr "dùng lại đối tượng ghi chú (note) đã chỉ ra"
+#, c-format
+msgid "BOM is prohibited in '%s' if encoded as %s"
+msgstr "BOM bị cấm trong “%s” nếu được mã hóa là %s"
 
-#: builtin/notes.c:420 builtin/notes.c:586
-msgid "allow storing empty note"
-msgstr "cho lưu trữ ghi chú trống rỗng"
+#, c-format
+msgid ""
+"The file '%s' contains a byte order mark (BOM). Please use UTF-%.*s as "
+"working-tree-encoding."
+msgstr ""
+"Tập tin “%s” có chứa ký hiệu thứ tự byte (BOM). Vui lòng dùng UTF-%.*s như "
+"là bảng mã cây làm việc."
 
-#: builtin/notes.c:421 builtin/notes.c:494
-msgid "replace existing notes"
-msgstr "thay thế ghi chú trước"
+#, c-format
+msgid "BOM is required in '%s' if encoded as %s"
+msgstr "BOM là bắt buộc trong “%s” nếu được mã hóa là %s"
 
-#: builtin/notes.c:446
 #, c-format
 msgid ""
-"Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
-"existing notes"
+"The file '%s' is missing a byte order mark (BOM). Please use UTF-%sBE or UTF-"
+"%sLE (depending on the byte order) as working-tree-encoding."
 msgstr ""
-"Không thể thêm các ghi chú. Đã tìm thấy các ghi chú đã có sẵn cho đối tượng "
-"%s. Sử dụng tùy chọn “-f” để ghi đè lên các ghi chú cũ"
+"Tập tin “%s” còn thiếu ký hiệu thứ tự byte (BOM). Vui lòng dùng UTF-%sBE hay "
+"UTF-%sLE (còn phục thuộc vào thứ tự byte) như là bảng mã cây làm việc."
 
-#: builtin/notes.c:461 builtin/notes.c:542
 #, c-format
-msgid "Overwriting existing notes for object %s\n"
-msgstr "Đang ghi đè lên ghi chú cũ cho đối tượng %s\n"
+msgid "failed to encode '%s' from %s to %s"
+msgstr "gặp lỗi khi mã hóa “%s”  từ “%s” sang “%s”"
 
-#: builtin/notes.c:473 builtin/notes.c:635 builtin/notes.c:904
 #, c-format
-msgid "Removing note for object %s\n"
-msgstr "Đang gỡ bỏ ghi chú (note) cho đối tượng %s\n"
+msgid "encoding '%s' from %s to %s and back is not the same"
+msgstr "mã hóa “%s” từ %s thành %s và ngược trở lại không phải là cùng"
 
-#: builtin/notes.c:495
-msgid "read objects from stdin"
-msgstr "đọc các đối tượng từ đầu vào tiêu chuẩn"
+#, c-format
+msgid "cannot fork to run external filter '%s'"
+msgstr "không thể rẽ nhánh tiến trình để chạy bộ lọc bên ngoài “%s”"
 
-#: builtin/notes.c:497
-msgid "load rewriting config for <command> (implies --stdin)"
-msgstr "tải cấu hình chép lại cho <lệnh> (ngầm định là --stdin)"
+#, c-format
+msgid "cannot feed the input to external filter '%s'"
+msgstr "không thể cấp đầu vào cho bộ lọc bên ngoài “%s”"
 
-#: builtin/notes.c:515
-msgid "too few arguments"
-msgstr "quá ít đối số"
+#, c-format
+msgid "external filter '%s' failed %d"
+msgstr "chạy bộ lọc bên ngoài “%s” gặp lỗi %d"
 
-#: builtin/notes.c:536
 #, c-format
-msgid ""
-"Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
-"existing notes"
-msgstr ""
-"Không thể sao chép các ghi chú. Đã tìm thấy các ghi chú đã có sẵn cho đối "
-"tượng %s. Sử dụng tùy chọn “-f” để ghi đè lên các ghi chú cũ"
+msgid "read from external filter '%s' failed"
+msgstr "đọc từ bộ lọc bên ngoài “%s” gặp lỗi"
 
-#: builtin/notes.c:548
 #, c-format
-msgid "missing notes on source object %s. Cannot copy."
-msgstr "thiếu ghi chú trên đối tượng nguồn %s. Không thể sao chép."
+msgid "external filter '%s' failed"
+msgstr "gặp lỗi khi chạy bộ lọc bên ngoài “%s”"
+
+msgid "unexpected filter type"
+msgstr "gặp kiểu bộ lọc thừa"
+
+msgid "path name too long for external filter"
+msgstr "tên đường dẫn quá dài cho bộ lọc bên ngoài"
 
-#: builtin/notes.c:601
 #, c-format
 msgid ""
-"The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
-"Please use 'git notes add -f -m/-F/-c/-C' instead.\n"
+"external filter '%s' is not available anymore although not all paths have "
+"been filtered"
 msgstr ""
-"Các tùy chọn -m/-F/-c/-C đã cổ không còn dùng nữa cho lệnh con “edit”.\n"
-"Xin hãy sử dụng lệnh sau để thay thế: “git notes add -f -m/-F/-c/-C”.\n"
+"bộ lọc bên ngoài “%s” không sẵn sàng nữa mặc dù không phải tất cả các đường "
+"dẫn đã được lọc"
 
-#: builtin/notes.c:696
-msgid "failed to delete ref NOTES_MERGE_PARTIAL"
-msgstr "gặp lỗi khi xóa tham chiếu NOTES_MERGE_PARTIAL"
+msgid "true/false are no valid working-tree-encodings"
+msgstr "true/false là không phải bảng-mã-cây-làm-việc hợp lệ"
 
-#: builtin/notes.c:698
-msgid "failed to delete ref NOTES_MERGE_REF"
-msgstr "gặp lỗi khi xóa tham chiếu NOTES_MERGE_REF"
+#, c-format
+msgid "%s: clean filter '%s' failed"
+msgstr "%s: gặp lỗi khi xóa bộ lọc “%s”"
 
-#: builtin/notes.c:700
-msgid "failed to remove 'git notes merge' worktree"
-msgstr "gặp lỗi khi gỡ bỏ cây làm việc “git notes merge”"
+#, c-format
+msgid "%s: smudge filter %s failed"
+msgstr "%s: smudge bộ lọc %s gặp lỗi"
 
-#: builtin/notes.c:720
-msgid "failed to read ref NOTES_MERGE_PARTIAL"
-msgstr "gặp lỗi khi đọc tham chiếu NOTES_MERGE_PARTIAL"
+#, c-format
+msgid "skipping credential lookup for key: credential.%s"
+msgstr "bỏ qua tìm kiếm giấy chứng chực cho khóa: credential.%s"
 
-#: builtin/notes.c:722
-msgid "could not find commit from NOTES_MERGE_PARTIAL."
-msgstr "không thể tìm thấy lần chuyển giao từ NOTES_MERGE_PARTIAL."
+msgid "refusing to work with credential missing host field"
+msgstr "từ chối làm việc với giấy chứng thực thiếu trường máy chủ"
 
-#: builtin/notes.c:724
-msgid "could not parse commit from NOTES_MERGE_PARTIAL."
-msgstr "không thể phân tích cú pháp lần chuyển giao từ NOTES_MERGE_PARTIAL."
+msgid "refusing to work with credential missing protocol field"
+msgstr "từ chối làm việc với giấy chứng thực thiếu trường giao thức"
 
-#: builtin/notes.c:737
-msgid "failed to resolve NOTES_MERGE_REF"
-msgstr "gặp lỗi khi phân giải NOTES_MERGE_REF"
+#, c-format
+msgid "url contains a newline in its %s component: %s"
+msgstr "url có chứa một dấu xuống dòng trong thành phần %s của nó: %s"
 
-#: builtin/notes.c:740
-msgid "failed to finalize notes merge"
-msgstr "gặp lỗi khi hoàn thành hòa trộn ghi chú"
+#, c-format
+msgid "url has no scheme: %s"
+msgstr "url không có lược đồ: %s"
 
-#: builtin/notes.c:766
 #, c-format
-msgid "unknown notes merge strategy %s"
-msgstr "không hiểu chiến lược hòa trộn ghi chú %s"
+msgid "credential url cannot be parsed: %s"
+msgstr "không thể phân tích cú pháp giấy chứng thực url: %s"
 
-#: builtin/notes.c:782
-msgid "General options"
-msgstr "Tùy chọn chung"
+msgid "in the future"
+msgstr "ở thời tương lai"
 
-#: builtin/notes.c:784
-msgid "Merge options"
-msgstr "Tùy chọn về hòa trộn"
+#, c-format
+msgid "%<PRIuMAX> second ago"
+msgid_plural "%<PRIuMAX> seconds ago"
+msgstr[0] "%<PRIuMAX> giây trước"
 
-#: builtin/notes.c:786
-msgid ""
-"resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
-"cat_sort_uniq)"
-msgstr ""
-"phân giải các xung đột “notes” sử dụng chiến lược đã đưa ra (manual/ours/"
-"theirs/union/cat_sort_uniq)"
+#, c-format
+msgid "%<PRIuMAX> minute ago"
+msgid_plural "%<PRIuMAX> minutes ago"
+msgstr[0] "%<PRIuMAX> phút trước"
 
-#: builtin/notes.c:788
-msgid "Committing unmerged notes"
-msgstr "Chuyển giao các note chưa được hòa trộn"
+#, c-format
+msgid "%<PRIuMAX> hour ago"
+msgid_plural "%<PRIuMAX> hours ago"
+msgstr[0] "%<PRIuMAX> giờ trước"
 
-#: builtin/notes.c:790
-msgid "finalize notes merge by committing unmerged notes"
-msgstr ""
-"các note cuối cùng được hòa trộn bởi các note chưa hòa trộn của lần chuyển "
-"giao"
+#, c-format
+msgid "%<PRIuMAX> day ago"
+msgid_plural "%<PRIuMAX> days ago"
+msgstr[0] "%<PRIuMAX> ngày trước"
 
-#: builtin/notes.c:792
-msgid "Aborting notes merge resolution"
-msgstr "Hủy bỏ phân giải ghi chú (note) hòa trộn"
+#, c-format
+msgid "%<PRIuMAX> week ago"
+msgid_plural "%<PRIuMAX> weeks ago"
+msgstr[0] "%<PRIuMAX> tuần trước"
 
-#: builtin/notes.c:794
-msgid "abort notes merge"
-msgstr "bỏ qua hòa trộn các ghi chú (note)"
+#, c-format
+msgid "%<PRIuMAX> month ago"
+msgid_plural "%<PRIuMAX> months ago"
+msgstr[0] "%<PRIuMAX> tháng trước"
 
-#: builtin/notes.c:805
-msgid "cannot mix --commit, --abort or -s/--strategy"
-msgstr "không thể trộn lẫn --commit, --abort hay -s/--strategy"
+#, c-format
+msgid "%<PRIuMAX> year"
+msgid_plural "%<PRIuMAX> years"
+msgstr[0] "%<PRIuMAX> năm"
 
-#: builtin/notes.c:810
-msgid "must specify a notes ref to merge"
-msgstr "bạn phải chỉ định tham chiếu ghi chú để hòa trộn"
+#. TRANSLATORS: "%s" is "<n> years"
+#, c-format
+msgid "%s, %<PRIuMAX> month ago"
+msgid_plural "%s, %<PRIuMAX> months ago"
+msgstr[0] "%s, %<PRIuMAX> tháng trước"
 
-#: builtin/notes.c:834
 #, c-format
-msgid "unknown -s/--strategy: %s"
-msgstr "không hiểu -s/--strategy: %s"
+msgid "%<PRIuMAX> year ago"
+msgid_plural "%<PRIuMAX> years ago"
+msgstr[0] "%<PRIuMAX> năm trước"
+
+msgid "Propagating island marks"
+msgstr "Đang lan truyền các đánh dấu island"
 
-#: builtin/notes.c:874
 #, c-format
-msgid "a notes merge into %s is already in-progress at %s"
-msgstr "một ghi chú hòa trộn vào %s đã sẵn trong quá trình xử lý tại %s"
+msgid "bad tree object %s"
+msgstr "đối tượng cây sai “%s”"
 
-#: builtin/notes.c:878
 #, c-format
-msgid "failed to store link to current notes ref (%s)"
-msgstr "gặp lỗi khi lưu liên kết đến tham chiếu ghi chú hiện tại (%s)"
+msgid "failed to load island regex for '%s': %s"
+msgstr "gặp lỗi khi tải biểu thức chính quy island cho “%s”: %s"
 
-#: builtin/notes.c:880
 #, c-format
-msgid ""
-"Automatic notes merge failed. Fix conflicts in %s and commit the result with "
-"'git notes merge --commit', or abort the merge with 'git notes merge --"
-"abort'.\n"
+msgid "island regex from config has too many capture groups (max=%d)"
 msgstr ""
-"Gặp lỗi khi hòa trộn các ghi chú tự động. Sửa các xung đột này trong %s và "
-"chuyển giao kết quả bằng “git notes merge --commit”, hoặc bãi bỏ việc hòa "
-"trộn bằng “git notes merge --abort”.\n"
+"biểu thức chính quy island từ cấu hình có quá nhiều nhóm chụp (tối đa=%d)"
 
-#: builtin/notes.c:899 builtin/tag.c:595
 #, 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ệ."
+msgid "Marked %d islands, done.\n"
+msgstr "Đã đánh dấu %d island, xong.\n"
 
-#: builtin/notes.c:902
-#, c-format
-msgid "Object %s has no note\n"
-msgstr "Đối tượng %s không có ghi chú (note)\n"
+msgid "--merge-base does not work with ranges"
+msgstr "--merge-base không hoạt động với phạm vi"
 
-#: builtin/notes.c:914
-msgid "attempt to remove non-existent note is not an error"
-msgstr "cố gắng gỡ bỏ một note chưa từng tồn tại không phải là một lỗi"
+msgid "--merge-base only works with commits"
+msgstr "--merge-base chỉ hoạt động với các lần chuyển giao"
 
-#: builtin/notes.c:917
-msgid "read object names from the standard input"
-msgstr "đọc tên đối tượng từ thiết bị nhập chuẩn"
+msgid "unable to get HEAD"
+msgstr "không thể lấy HEAD"
 
-#: builtin/notes.c:956 builtin/prune.c:144 builtin/worktree.c:148
-msgid "do not remove, show only"
-msgstr "không gỡ bỏ, chỉ hiển thị"
+msgid "no merge base found"
+msgstr "không tìm thấy cơ sở để hòa trộn"
 
-#: builtin/notes.c:957
-msgid "report pruned notes"
-msgstr "báo cáo các đối tượng đã prune"
+msgid "multiple merge bases found"
+msgstr "có nhiều cơ sở để hòa trộn"
 
-#: builtin/notes.c:1000
-msgid "notes-ref"
-msgstr "notes-ref"
+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>"
 
-#: builtin/notes.c:1001
-msgid "use notes from <notes-ref>"
-msgstr "dùng “notes” từ <notes-ref>"
+msgid ""
+"Not a git repository. Use --no-index to compare two paths outside a working "
+"tree"
+msgstr ""
+"Không phải là một thư mục git. Dùng --no-index để so sánh hai đường dẫn bên "
+"ngoài một cây làm việc"
+
+#, c-format
+msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
+msgstr "  Gặp lỗi khi phân tích dirstat cắt bỏ phần trăm “%s”\n"
 
-#: builtin/notes.c:1036 builtin/stash.c:1802
 #, c-format
-msgid "unknown subcommand: %s"
-msgstr "không hiểu câu lệnh con: %s"
+msgid "  Unknown dirstat parameter '%s'\n"
+msgstr "  Không hiểu đối số dirstat “%s”\n"
 
-#: builtin/pack-objects.c:182
 msgid ""
-"git pack-objects --stdout [<options>...] [< <ref-list> | < <object-list>]"
+"color moved setting must be one of 'no', 'default', 'blocks', 'zebra', "
+"'dimmed-zebra', 'plain'"
 msgstr ""
-"git pack-objects --stdout [các tùy chọn…] [< <danh-sách-tham-chiếu> | < "
-"<danh-sách-đối-tượng>]"
+"cài đặt màu đã di chuyển phải là một trong “no”, “default”, “blocks”, "
+"“zebra”, “dimmed-zebra”, “plain”"
 
-#: builtin/pack-objects.c:183
+#, c-format
 msgid ""
-"git pack-objects [<options>...] <base-name> [< <ref-list> | < <object-list>]"
+"unknown color-moved-ws mode '%s', possible values are 'ignore-space-change', "
+"'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-change'"
 msgstr ""
-"git pack-objects [các tùy chọn…] <base-name> [< <danh-sách-ref> | < <danh-"
-"sách-đối-tượng>]"
+"không hiểu chế độ color-moved-ws “%s”, các giá trị có thể là “ignore-space-"
+"change”, “ignore-space-at-eol”, “ignore-all-space”, “allow-indentation-"
+"change”"
 
-#: builtin/pack-objects.c:570
-#, c-format
 msgid ""
-"write_reuse_object: could not locate %s, expected at offset %<PRIuMAX> in "
-"pack %s"
+"color-moved-ws: allow-indentation-change cannot be combined with other "
+"whitespace modes"
 msgstr ""
-"write_reuse_object: không thể phân bổ %s, cần tại vị trí bù %<PRIuMAX> trong "
-"gói %s"
+"color-moved-ws: allow-indentation-change không thể tổ hợp cùng với các chế "
+"độ khoảng trắng khác"
 
-#: builtin/pack-objects.c:578
 #, c-format
-msgid "bad packed object CRC for %s"
-msgstr "CRC của đối tượng gói sai với %s"
+msgid "Unknown value for 'diff.submodule' config variable: '%s'"
+msgstr "Không hiểu giá trị cho biến cấu hình “diff.submodule”: “%s”"
 
-#: builtin/pack-objects.c:589
 #, c-format
-msgid "corrupt packed object for %s"
-msgstr "đối tượng đã đóng gói sai hỏng cho %s"
+msgid ""
+"Found errors in 'diff.dirstat' config variable:\n"
+"%s"
+msgstr ""
+"Tìm thấy các lỗi trong biến cấu hình “diff.dirstat”:\n"
+"%s"
 
-#: builtin/pack-objects.c:720
 #, c-format
-msgid "recursive delta detected for object %s"
-msgstr "dò thấy delta đệ quy cho đối tượng %s"
+msgid "external diff died, stopping at %s"
+msgstr "phần mềm diff ở bên ngoài đã chết, dừng tại %s"
 
-#: builtin/pack-objects.c:939
 #, c-format
-msgid "ordered %u objects, expected %<PRIu32>"
-msgstr "đã sắp xếp %u đối tượng, cần %<PRIu32>"
+msgid "options '%s', '%s', '%s', and '%s' cannot be used together"
+msgstr "tùy chọn '%s', '%s', '%s' và '%s' không thể dùng cùng nhau"
 
-#: builtin/pack-objects.c:1034
 #, c-format
-msgid "expected object at offset %<PRIuMAX> in pack %s"
-msgstr "cần đối tượng tại khoảng bù %<PRIuMAX> trong gói: %s"
-
-#: builtin/pack-objects.c:1158
-msgid "disabling bitmap writing, packs are split due to pack.packSizeLimit"
-msgstr "tắt ghi bitmap, các gói bị chia nhỏ bởi vì pack.packSizeLimit"
-
-#: builtin/pack-objects.c:1171
-msgid "Writing objects"
-msgstr "Đang ghi lại các đối tượng"
+msgid "options '%s' and '%s' cannot be used together, use '%s' with '%s'"
+msgstr "tùy chọn '%s' và '%s' không thể dùng cùng nhau, dùng '%s' với '%s'"
 
-#: builtin/pack-objects.c:1243 builtin/update-index.c:90
 #, c-format
-msgid "failed to stat %s"
-msgstr "gặp lỗi khi lấy thông tin thống kê về %s"
+msgid ""
+"options '%s' and '%s' cannot be used together, use '%s' with '%s' and '%s'"
+msgstr ""
+"tùy chọn '%s' và '%s' không thể dùng cùng nhau, dùng '%s' với '%s' và '%s'"
 
-#: builtin/pack-objects.c:1276
-msgid "failed to write bitmap index"
-msgstr "gặp lỗi khi ghi mục lục ánh xạ"
+msgid "--follow requires exactly one pathspec"
+msgstr "--follow cần chính xác một đặc tả đường dẫn"
 
-#: builtin/pack-objects.c:1302
 #, c-format
-msgid "wrote %<PRIu32> objects while expecting %<PRIu32>"
-msgstr "đã ghi %<PRIu32> đối tượng trong khi cần %<PRIu32>"
-
-#: builtin/pack-objects.c:1544
-msgid "disabling bitmap writing, as some objects are not being packed"
-msgstr "tắt ghi bitmap, như vậy một số đối tượng sẽ không được đóng gói"
+msgid "invalid --stat value: %s"
+msgstr "giá trị --stat không hợp lệ: “%s”"
 
-#: builtin/pack-objects.c:1992
 #, c-format
-msgid "delta base offset overflow in pack for %s"
-msgstr "khoảng bù cơ sở cho delta bị tràn trong gói cho %s"
+msgid "%s expects a numerical value"
+msgstr "tùy chọn “%s” cần một giá trị bằng số"
 
-#: builtin/pack-objects.c:2001
 #, c-format
-msgid "delta base offset out of bound for %s"
-msgstr "khoảng bù cơ sở cho delta nằm ngoài phạm cho %s"
-
-#: builtin/pack-objects.c:2282
-msgid "Counting objects"
-msgstr "Đang đếm các đối tượng"
+msgid ""
+"Failed to parse --dirstat/-X option parameter:\n"
+"%s"
+msgstr ""
+"Gặp lỗi khi phân tích đối số tùy chọn --dirstat/-X:\n"
+"%s"
 
-#: builtin/pack-objects.c:2447
 #, c-format
-msgid "unable to parse object header of %s"
-msgstr "không thể phân tích phần đầu đối tượng của “%s”"
+msgid "unknown change class '%c' in --diff-filter=%s"
+msgstr "không hiểu lớp thay đổi “%c” trong --diff-filter=%s"
 
-#: builtin/pack-objects.c:2517 builtin/pack-objects.c:2533
-#: builtin/pack-objects.c:2543
 #, c-format
-msgid "object %s cannot be read"
-msgstr "không thể đọc đối tượng %s"
+msgid "unknown value after ws-error-highlight=%.*s"
+msgstr "không hiểu giá trị sau ws-error-highlight=%.*s"
 
-#: builtin/pack-objects.c:2520 builtin/pack-objects.c:2547
 #, c-format
-msgid "object %s inconsistent object length (%<PRIuMAX> vs %<PRIuMAX>)"
-msgstr ""
-"đối tượng %s không nhất quán về chiều dài đối tượng (%<PRIuMAX> so với "
-"%<PRIuMAX>)"
-
-#: builtin/pack-objects.c:2557
-msgid "suboptimal pack - out of memory"
-msgstr "suboptimal pack - hết bộ nhớ"
+msgid "unable to resolve '%s'"
+msgstr "không thể phân giải “%s”"
 
-#: builtin/pack-objects.c:2872
 #, c-format
-msgid "Delta compression using up to %d threads"
-msgstr "Nén delta dùng tới %d tuyến trình"
+msgid "%s expects <n>/<m> form"
+msgstr "%s cần dạng <n>/<m>"
 
-#: builtin/pack-objects.c:3011
 #, c-format
-msgid "unable to pack objects reachable from tag %s"
-msgstr "không thể đóng gói các đối tượng tiếp cận được từ thẻ “%s”"
-
-#: builtin/pack-objects.c:3097
-msgid "Compressing objects"
-msgstr "Đang nén các đối tượng"
-
-#: builtin/pack-objects.c:3103
-msgid "inconsistency with delta count"
-msgstr "mâu thuẫn với số lượng delta"
+msgid "%s expects a character, got '%s'"
+msgstr "%s cần một ký tự, nhưng lại nhận được “%s”"
 
-#: builtin/pack-objects.c:3182
 #, c-format
-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”)"
+msgid "bad --color-moved argument: %s"
+msgstr "đối số --color-moved sai: %s"
 
-#: builtin/pack-objects.c:3185
 #, c-format
+msgid "invalid mode '%s' in --color-moved-ws"
+msgstr "chế độ “%s” không hợp lệ trong --color-moved-ws"
+
 msgid ""
-"object already configured in another uploadpack.blobpackfileuri (got '%s')"
+"option diff-algorithm accepts \"myers\", \"minimal\", \"patience\" and "
+"\"histogram\""
 msgstr ""
-"đối tượng đã được cấu hình trong một uploadpack.blobpackfileuri khác (đã "
-"nhận “%s”)"
+"tùy chọn  diff-algorithm chấp nhận \"myers\", \"minimal\", \"patience\" và "
+"\"histogram\""
 
-#: builtin/pack-objects.c:3220
 #, c-format
-msgid "could not get type of object %s in pack %s"
-msgstr "không thể lấy kiểu của đối tượng “%s” trong gói “%s”"
+msgid "invalid argument to %s"
+msgstr "tham số cho %s không hợp lệ"
 
-#: builtin/pack-objects.c:3348 builtin/pack-objects.c:3359
-#: builtin/pack-objects.c:3373
 #, c-format
-msgid "could not find pack '%s'"
-msgstr "không thể tìm thấy gói “%s”"
+msgid "invalid regex given to -I: '%s'"
+msgstr "đưa cho -I biểu thức chính quy không hợp lệ: “%s”"
 
-#: builtin/pack-objects.c:3416
 #, c-format
-msgid ""
-"expected edge object ID, got garbage:\n"
-" %s"
-msgstr ""
-"cần ID đối tượng cạnh, nhận được rác:\n"
-" %s"
+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”"
 
-#: builtin/pack-objects.c:3422
 #, c-format
+msgid "bad --word-diff argument: %s"
+msgstr "đối số --word-diff sai: %s"
+
+msgid "Diff output format options"
+msgstr "Các tùy chọn định dạng khi xuất các khác biệt"
+
+msgid "generate patch"
+msgstr "tạo miếng vá"
+
+msgid "<n>"
+msgstr "<n>"
+
+msgid "generate diffs with <n> lines context"
+msgstr "tạo khác biệt với <n> dòng ngữ cảnh"
+
+msgid "generate the diff in raw format"
+msgstr "tạo khác biệt ở định dạng thô"
+
+msgid "synonym for '-p --raw'"
+msgstr "đồng nghĩa với “-p --raw”"
+
+msgid "synonym for '-p --stat'"
+msgstr "đồng nghĩa với “-p --stat”"
+
+msgid "machine friendly --stat"
+msgstr "--stat thuận tiện cho máy đọc"
+
+msgid "output only the last line of --stat"
+msgstr "chỉ xuất những dòng cuối của --stat"
+
+msgid "<param1,param2>..."
+msgstr "<tham_số_1,tham_số_2>…"
+
 msgid ""
-"expected object ID, got garbage:\n"
-" %s"
+"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"
+
+msgid "synonym for --dirstat=cumulative"
+msgstr "đồng nghĩa với --dirstat=cumulative"
+
+msgid "synonym for --dirstat=files,param1,param2..."
+msgstr "đồng nghĩa với --dirstat=files,param1,param2…"
+
+msgid "warn if changes introduce conflict markers or whitespace errors"
 msgstr ""
-"cần ID đối tượng, nhận được rác:\n"
-" %s"
+"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"
 
-#: builtin/pack-objects.c:3540 builtin/pack-objects.c:3627
-msgid "cannot open pack index"
-msgstr "không thể mở mục lục của gói"
+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ế độ"
 
-#: builtin/pack-objects.c:3549
-#, c-format
-msgid "loose object at %s could not be examined"
-msgstr "đối tượng mất tại %s không thể đã kiểm tra"
+msgid "show only names of changed files"
+msgstr "chỉ hiển thị tên của các tập tin đổi"
 
-#: builtin/pack-objects.c:3635
-msgid "unable to force loose object"
-msgstr "không thể buộc mất đối tượng"
+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"
 
-#: builtin/pack-objects.c:3763
-#, c-format
-msgid "not a rev '%s'"
-msgstr "không phải một rev “%s”"
+msgid "<width>[,<name-width>[,<count>]]"
+msgstr "<rộng>[,<name-width>[,<số-lượng>]]"
 
-#: builtin/pack-objects.c:3766 builtin/rev-parse.c:1061
-#, c-format
-msgid "bad revision '%s'"
-msgstr "điểm xem xét sai “%s”"
+msgid "generate diffstat"
+msgstr "tạo diffstat"
 
-#: builtin/pack-objects.c:3794
-msgid "unable to add recent objects"
-msgstr "không thể thêm các đối tượng mới dùng"
+msgid "<width>"
+msgstr "<rộng>"
 
-#: builtin/pack-objects.c:3847
-#, c-format
-msgid "unsupported index version %s"
-msgstr "phiên bản mục lục không được hỗ trợ %s"
+msgid "generate diffstat with a given width"
+msgstr "tạo diffstat với độ rộng đã cho"
+
+msgid "generate diffstat with a given name width"
+msgstr "tạo diffstat với tên độ rộng đã cho"
+
+msgid "generate diffstat with a given graph width"
+msgstr "tạo diffstat với độ rộng đồ thị đã cho"
+
+msgid "<count>"
+msgstr "<số_lượng>"
+
+msgid "generate diffstat with limited lines"
+msgstr "tạo diffstat với các dòng bị giới hạn"
+
+msgid "generate compact summary in diffstat"
+msgstr "tạo tổng hợp xúc tích trong diffstat"
+
+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"
 
-#: builtin/pack-objects.c:3851
-#, c-format
-msgid "bad index version '%s'"
-msgstr "phiên bản mục lục sai “%s”"
+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"
+"\""
 
-#: builtin/pack-objects.c:3907
-msgid "<version>[,<offset>]"
-msgstr "<phiên bản>[,offset]"
+msgid "show colored diff"
+msgstr "hiển thị thay đổi được tô màu"
 
-#: builtin/pack-objects.c:3908
-msgid "write the pack index file in the specified idx format version"
-msgstr "ghi tập tin bảng mục lục gói (pack) ở phiên bản định dạng idx đã cho"
+msgid "<kind>"
+msgstr "<kiểu>"
 
-#: builtin/pack-objects.c:3911
-msgid "maximum size of each output pack file"
-msgstr "kcíh thước tối đa cho tập tin gói được tạo"
+msgid ""
+"highlight whitespace errors in the 'context', 'old' or 'new' lines in the "
+"diff"
+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"
 
-#: builtin/pack-objects.c:3913
-msgid "ignore borrowed objects from alternate object store"
-msgstr "bỏ qua các đối tượng vay mượn từ kho đối tượng thay thế"
+msgid ""
+"do not munge pathnames and use NULs as output field terminators in --raw or "
+"--numstat"
+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"
 
-#: builtin/pack-objects.c:3915
-msgid "ignore packed objects"
-msgstr "bỏ qua các đối tượng đóng gói"
+msgid "<prefix>"
+msgstr "<tiền_tố>"
 
-#: builtin/pack-objects.c:3917
-msgid "limit pack window by objects"
-msgstr "giới hạn cửa sổ đóng gói theo đối tượng"
+msgid "show the given source prefix instead of \"a/\""
+msgstr "hiển thị tiền tố nguồn đã cho thay cho \"a/\""
 
-#: builtin/pack-objects.c:3919
-msgid "limit pack window by memory in addition to object limit"
-msgstr "giới hạn cửa sổ đóng gói theo bộ nhớ cộng thêm với giới hạn đối tượng"
+msgid "show the given destination prefix instead of \"b/\""
+msgstr "hiển thị tiền tố đích đã cho thay cho \"b/\""
 
-#: builtin/pack-objects.c:3921
-msgid "maximum length of delta chain allowed in the resulting pack"
-msgstr "độ dài tối đa của chuỗi móc xích “delta” được phép trong gói kết quả"
+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"
 
-#: builtin/pack-objects.c:3923
-msgid "reuse existing deltas"
-msgstr "dùng lại các delta sẵn có"
+msgid "do not show any source or destination prefix"
+msgstr "đừng hiển thị bất kỳ tiền tố nguồn hay đích"
 
-#: builtin/pack-objects.c:3925
-msgid "reuse existing objects"
-msgstr "dùng lại các đối tượng sẵn có"
+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"
 
-#: builtin/pack-objects.c:3927
-msgid "use OFS_DELTA objects"
-msgstr "dùng các đối tượng OFS_DELTA"
+msgid "<char>"
+msgstr "<ký_tự>"
 
-#: builtin/pack-objects.c:3929
-msgid "use threads when searching for best delta matches"
-msgstr "sử dụng các tuyến trình khi tìm kiếm cho các mẫu khớp delta tốt nhất"
+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 “+”"
 
-#: builtin/pack-objects.c:3931
-msgid "do not create an empty pack output"
-msgstr "không thể tạo kết xuất gói trống rỗng"
+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 “-”"
 
-#: builtin/pack-objects.c:3933
-msgid "read revision arguments from standard input"
-msgstr "đọc tham số “revision” từ thiết bị nhập chuẩn"
+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 “”"
 
-#: builtin/pack-objects.c:3935
-msgid "limit the objects to those that are not yet packed"
-msgstr "giới hạn các đối tượng thành những cái mà chúng vẫn chưa được đóng gói"
+msgid "Diff rename options"
+msgstr "Tùy chọn khác biệt đổi tên"
 
-#: builtin/pack-objects.c:3938
-msgid "include objects reachable from any reference"
-msgstr "bao gồm các đối tượng có thể đọc được từ bất kỳ tham chiếu nào"
+msgid "<n>[/<m>]"
+msgstr "<n>[/<m>]"
 
-#: builtin/pack-objects.c:3941
-msgid "include objects referred by reflog entries"
-msgstr "bao gồm các đối tượng được tham chiếu bởi các mục reflog"
+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"
 
-#: builtin/pack-objects.c:3944
-msgid "include objects referred to by the index"
-msgstr "bao gồm các đối tượng được tham chiếu bởi mục lục"
+msgid "detect renames"
+msgstr "dò tìm các tên thay đổi"
 
-#: builtin/pack-objects.c:3947
-msgid "read packs from stdin"
-msgstr "đọc các gói từ đầu vào tiêu chuẩn"
+msgid "omit the preimage for deletes"
+msgstr "bỏ qua preimage (tiền ảnh??) cho các việc xóa"
 
-#: builtin/pack-objects.c:3949
-msgid "output pack to stdout"
-msgstr "xuất gói ra đầu ra tiêu chuẩn"
+msgid "detect copies"
+msgstr "dò bản sao"
 
-#: builtin/pack-objects.c:3951
-msgid "include tag objects that refer to objects to be packed"
-msgstr "bao gồm các đối tượng tham chiếu đến các đối tượng được đóng gói"
+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"
 
-#: builtin/pack-objects.c:3953
-msgid "keep unreachable objects"
-msgstr "giữ lại các đối tượng không thể đọc được"
+msgid "disable rename detection"
+msgstr "tắt dò tìm đổi tên"
 
-#: builtin/pack-objects.c:3955
-msgid "pack loose unreachable objects"
-msgstr "pack mất các đối tượng không thể đọc được"
+msgid "use empty blobs as rename source"
+msgstr "dùng các blob trống rống như là nguồn đổi tên"
 
-#: builtin/pack-objects.c:3957
-msgid "unpack unreachable objects newer than <time>"
+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"
+
+msgid ""
+"prevent rename/copy detection if the number of rename/copy targets exceeds "
+"given limit"
 msgstr ""
-"xả nén (gỡ khỏi gói) các đối tượng không thể đọc được mới hơn <thời-gian>"
+"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"
 
-#: builtin/pack-objects.c:3960
-msgid "use the sparse reachability algorithm"
-msgstr "sử dụng thuật toán “sparse reachability”"
+msgid "Diff algorithm options"
+msgstr "Tùy chọn thuật toán khác biệt"
 
-#: builtin/pack-objects.c:3962
-msgid "create thin packs"
-msgstr "tạo gói nhẹ"
+msgid "produce the smallest possible diff"
+msgstr "sản sinh khác biệt ít nhất có thể"
 
-#: builtin/pack-objects.c:3964
-msgid "create packs suitable for shallow fetches"
-msgstr "tạo gói để phù hợp cho lấy về nông (shallow)"
+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"
 
-#: builtin/pack-objects.c:3966
-msgid "ignore packs that have companion .keep file"
-msgstr "bỏ qua các gói mà nó có tập tin .keep đi kèm"
+msgid "ignore changes in amount of whitespace"
+msgstr "lờ đi sự thay đổi do số lượng khoảng trắng gây ra"
 
-#: builtin/pack-objects.c:3968
-msgid "ignore this pack"
-msgstr "bỏ qua gói này"
+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"
 
-#: builtin/pack-objects.c:3970
-msgid "pack compression level"
-msgstr "mức nén gói"
+msgid "ignore carrier-return at the end of line"
+msgstr "bỏ qua ký tự về đầu dòng tại cuối dòng"
 
-#: builtin/pack-objects.c:3972
-msgid "do not hide commits by grafts"
-msgstr "không ẩn các lần chuyển giao bởi “grafts”"
+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"
 
-#: builtin/pack-objects.c:3974
-msgid "use a bitmap index if available to speed up counting objects"
-msgstr "dùng mục lục ánh xạ nếu có thể được để nâng cao tốc độ đếm đối tượng"
+msgid "<regex>"
+msgstr "<regex>"
 
-#: builtin/pack-objects.c:3976
-msgid "write a bitmap index together with the pack index"
-msgstr "ghi một mục lục ánh xạ cùng với mục lục gói"
+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>"
 
-#: builtin/pack-objects.c:3980
-msgid "write a bitmap index if possible"
-msgstr "ghi mục lục ánh xạ nếu được"
+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"
 
-#: builtin/pack-objects.c:3984
-msgid "handling for missing objects"
-msgstr "xử lý cho thiếu đối tượng"
+msgid "generate diff using the \"patience diff\" algorithm"
+msgstr "tạo khác biệt sử dung thuật toán \"patience diff\""
 
-#: builtin/pack-objects.c:3987
-msgid "do not pack objects in promisor packfiles"
-msgstr "không thể đóng gói các đối tượng trong các tập tin gói hứa hẹn"
+msgid "generate diff using the \"histogram diff\" algorithm"
+msgstr "tạo khác biệt sử dung thuật toán \"histogram diff\""
 
-#: builtin/pack-objects.c:3989
-msgid "respect islands during delta compression"
-msgstr "tôn trọng island trong suốt quá trình nén “delta”"
+msgid "<algorithm>"
+msgstr "<thuật toán>"
 
-#: builtin/pack-objects.c:3991
-msgid "protocol"
-msgstr "giao thức"
+msgid "choose a diff algorithm"
+msgstr "chọn một thuật toán khác biệt"
 
-#: builtin/pack-objects.c:3992
-msgid "exclude any configured uploadpack.blobpackfileuri with this protocol"
-msgstr "loại trừ bất kỳ cấu hình uploadpack.blobpackfileuri với giao thức này"
+msgid "<text>"
+msgstr "<văn bản>"
 
-#: builtin/pack-objects.c:4027
-#, c-format
-msgid "delta chain depth %d is too deep, forcing %d"
-msgstr "mức sau xích delta %d là quá sâu, buộc dùng %d"
+msgid "generate diff using the \"anchored diff\" algorithm"
+msgstr "tạo khác biệt sử dung thuật toán \"anchored diff\""
 
-#: builtin/pack-objects.c:4032
-#, c-format
-msgid "pack.deltaCacheLimit is too high, forcing %d"
-msgstr "pack.deltaCacheLimit là quá cao, ép dùng %d"
+msgid "<mode>"
+msgstr "<chế độ>"
 
-#: builtin/pack-objects.c:4088
-msgid "--max-pack-size cannot be used to build a pack for transfer"
+msgid "show word diff, using <mode> to delimit changed words"
 msgstr ""
-"--max-pack-size không thể được sử dụng để xây dựng một gói để vận chuyển"
-
-#: builtin/pack-objects.c:4090
-msgid "minimum pack size limit is 1 MiB"
-msgstr "giới hạn kích thước tối thiểu của gói là 1 MiB"
+"hiển thị khác biệt từ, sử dụng <chế độ> để bỏ giới hạn các từ bị thay đổi"
 
-#: builtin/pack-objects.c:4095
-msgid "--thin cannot be used to build an indexable pack"
-msgstr "--thin không thể được dùng để xây dựng gói đánh mục lục được"
+msgid "use <regex> to decide what a word is"
+msgstr "dùng <regex> để quyết định từ là cái gì"
 
-#: builtin/pack-objects.c:4104
-msgid "cannot use --filter without --stdout"
-msgstr "không thể dùng tùy chọn --filter mà không có --stdout"
+msgid "equivalent to --word-diff=color --word-diff-regex=<regex>"
+msgstr "tương đương với --word-diff=color --word-diff-regex=<regex>"
 
-#: builtin/pack-objects.c:4106
-msgid "cannot use --filter with --stdin-packs"
-msgstr "không thể dùng tùy chọn --filter với --stdin-packs"
+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"
 
-#: builtin/pack-objects.c:4110
-msgid "cannot use internal rev list with --stdin-packs"
-msgstr "không thể dùng danh sách rev bên trong với --stdin-packs"
+msgid "how white spaces are ignored in --color-moved"
+msgstr "cách bỏ qua khoảng trắng trong --color-moved"
 
-#: builtin/pack-objects.c:4169
-msgid "Enumerating objects"
-msgstr "Đánh số các đối tượng"
+msgid "Other diff options"
+msgstr "Các tùy chọn khác biệt khác"
 
-#: builtin/pack-objects.c:4210
-#, c-format
-msgid ""
-"Total %<PRIu32> (delta %<PRIu32>), reused %<PRIu32> (delta %<PRIu32>), pack-"
-"reused %<PRIu32>"
+msgid "when run from subdir, exclude changes outside and show relative paths"
 msgstr ""
-"Tổng %<PRIu32> (delta %<PRIu32>), dùng lại %<PRIu32> (delta %<PRIu32>), pack-"
-"reused %<PRIu32>"
+"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"
 
-#: builtin/pack-redundant.c:601
-msgid ""
-"'git pack-redundant' is nominated for removal.\n"
-"If you still use this command, please add an extra\n"
-"option, '--i-still-use-this', on the command line\n"
-"and let us know you still use it by sending an e-mail\n"
-"to <git@vger.kernel.org>.  Thanks.\n"
-msgstr ""
-"“git pack-redundant” được đề cử để loại bỏ.\n"
-"Nếu bạn vẫn sử dụng lệnh này, vui lòng bổ sung\n"
-"thêm một tùy chọn, “--i-still-use-this”, trên dòng lệnh\n"
-"và cho chúng tôi biết bạn vẫn sử dụng nó bằng cách gửi e-mail\n"
-"đến <git@vger.kernel.org>.  Cảm ơn.\n"
+msgid "treat all files as text"
+msgstr "coi mọi tập tin là dạng văn bản thường"
 
-#: builtin/pack-refs.c:8
-msgid "git pack-refs [<options>]"
-msgstr "git pack-refs [<các tùy chọn>]"
+msgid "swap two inputs, reverse the diff"
+msgstr "tráo đổi hai đầu vào, đảo ngược khác biệt"
 
-#: builtin/pack-refs.c:16
-msgid "pack everything"
-msgstr "đóng gói mọi thứ"
+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"
+
+msgid "disable all output of the program"
+msgstr "tắt mọi kết xuất của chương trình"
+
+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"
+
+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"
 
-#: builtin/pack-refs.c:17
-msgid "prune loose refs (default)"
-msgstr "prune (cắt cụt) những tham chiếu bị mất (mặc định)"
+msgid "<when>"
+msgstr "<khi>"
 
-#: builtin/prune.c:14
-msgid "git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]"
-msgstr "git prune [-n] [-v] [--progress] [--expire <thời-gian>] [--] [<head>…]"
+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"
 
-#: builtin/prune.c:145
-msgid "report pruned objects"
-msgstr "báo cáo các đối tượng đã prune"
+msgid "<format>"
+msgstr "<định dạng>"
 
-#: builtin/prune.c:148
-msgid "expire objects older than <time>"
-msgstr "các đối tượng hết hạn cũ hơn khoảng <thời gian>"
+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ị"
 
-#: builtin/prune.c:150
-msgid "limit traversal to objects outside promisor packfiles"
-msgstr "giới hạn giao đến các đối tượng nằm ngoài các tập tin gói hứa hẹn"
+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"
 
-#: builtin/prune.c:163
-msgid "cannot prune in a precious-objects repo"
-msgstr "không thể tỉa bớt trong một kho đối_tượng_vĩ_đại"
+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"
 
-#: builtin/pull.c:67
-msgid "git pull [<options>] [<repository> [<refspec>...]]"
-msgstr "git pull [<các tùy chọn>] [<kho-chứa> [<refspec>…]]"
+msgid "<string>"
+msgstr "<chuỗi>"
 
-#: builtin/pull.c:124
-msgid "control for recursive fetching of submodules"
-msgstr "điều khiển việc lấy về đệ quy của các mô-đun-con"
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"string"
+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"
 
-#: builtin/pull.c:128
-msgid "Options related to merging"
-msgstr "Các tùy chọn liên quan đến hòa trộn"
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"regex"
+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"
 
-#: builtin/pull.c:131
-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"
+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"
 
-#: builtin/pull.c:159 builtin/revert.c:126
-msgid "allow fast-forward"
-msgstr "cho phép chuyển-tiếp-nhanh"
+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"
 
-#: builtin/pull.c:165
-msgid "control use of pre-merge-commit and commit-msg hooks"
-msgstr "điều khiển cách dùng các móc (hook) pre-merge-commit và commit-msg"
+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"
 
-#: builtin/pull.c:171 parse-options.h:371
-msgid "automatically stash/stash pop before and after"
-msgstr "tự động stash/stash pop trước và sau"
+msgid "<path>"
+msgstr "<đường-dẫn>"
 
-#: builtin/pull.c:187
-msgid "Options related to fetching"
-msgstr "Các tùy chọn liên quan đến lệnh lấy về"
+msgid "show the change in the specified path first"
+msgstr "hiển thị các thay đổi trong đường dẫn đã cho đầu tiên"
 
-#: builtin/pull.c:197
-msgid "force overwrite of local branch"
-msgstr "ép buộc ghi đè lên nhánh nội bộ"
+msgid "skip the output to the specified path"
+msgstr "bỏ qua đầu ra đến đường dẫn đã cho"
 
-#: builtin/pull.c:205
-msgid "number of submodules pulled in parallel"
-msgstr "số lượng mô-đun-con được đẩy lên đồng thời"
+msgid "<object-id>"
+msgstr "<mã-số-đối-tượng>"
 
-#: builtin/pull.c:449
 msgid ""
-"There is no candidate for rebasing against among the refs that you just "
-"fetched."
+"look for differences that change the number of occurrences of the specified "
+"object"
 msgstr ""
-"Ở đây không có ứng cử nào để cải tổ lại trong số các tham chiếu mà bạn vừa "
-"lấy về."
+"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"
 
-#: builtin/pull.c:451
-msgid ""
-"There are no candidates for merging among the refs that you just fetched."
-msgstr ""
-"Ở đây không có ứng cử nào để hòa trộn trong số các tham chiếu mà bạn vừa lấy "
-"về."
+msgid "[(A|C|D|M|R|T|U|X|B)...[*]]"
+msgstr "[(A|C|D|M|R|T|U|X|B)…[*]]"
 
-#: builtin/pull.c:452
-msgid ""
-"Generally this means that you provided a wildcard refspec which had no\n"
-"matches on the remote end."
+msgid "select files by diff type"
+msgstr "chọn các tập tin theo kiểu khác biệt"
+
+msgid "<file>"
+msgstr "<tập_tin>"
+
+msgid "output to a specific file"
+msgstr "xuất ra một tập tin cụ thể"
+
+msgid "exhaustive rename detection was skipped due to too many files."
+msgstr "nhận thấy đổi tên toàn diện đã bị bỏ qua bởi có quá nhiều tập tin."
+
+msgid "only found copies from modified paths due to too many files."
 msgstr ""
-"Đại thể điều này có nghĩa là bạn đã cung cấp đặc tả đường dẫn dạng dùng ký "
-"tự\n"
-"đại diện mà nó lại không khớp trên điểm cuối máy phục vụ."
+"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."
 
-#: builtin/pull.c:455
 #, c-format
 msgid ""
-"You asked to pull from the remote '%s', but did not specify\n"
-"a branch. Because this is not the default configured remote\n"
-"for your current branch, you must specify a branch on the command line."
+"you may want to set your %s variable to at least %d and retry the command."
 msgstr ""
-"Bạn yêu cầu pull từ máy dịch vụ “%s”, nhưng lại chưa chỉ định\n"
-"nhánh nào. Bởi vì đây không phải là máy dịch vụ được cấu hình\n"
-"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."
+"bạn có lẽ muốn đặt biến %s của bạn thành ít nhất là %d và thử lại lệnh lần "
+"nữa."
 
-#: builtin/pull.c:460 builtin/rebase.c:978
-msgid "You are not currently on a branch."
-msgstr "Hiện tại bạn chẳng ở nhánh nào cả."
+#, c-format
+msgid "failed to read orderfile '%s'"
+msgstr "gặp lỗi khi đọc tập-tin-thứ-tự “%s”"
 
-#: builtin/pull.c:462 builtin/pull.c:477
-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."
+msgid "Performing inexact rename detection"
+msgstr "Đang thực hiện dò tìm đổi tên không chính xác"
 
-#: builtin/pull.c:464 builtin/pull.c:479
-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."
+#, c-format
+msgid "No such path '%s' in the diff"
+msgstr "Không có đường dẫn %s trong diff"
 
-#: builtin/pull.c:465 builtin/pull.c:480
-msgid "See git-pull(1) for details."
-msgstr "Xem git-pull(1) để biết thêm chi tiết."
+#, c-format
+msgid "pathspec '%s' did not match any file(s) known to git"
+msgstr "đặc tả đường dẫn “%s” không khớp với bất kỳ tập tin nào mà git biết"
 
-#: builtin/pull.c:467 builtin/pull.c:473 builtin/pull.c:482
-#: builtin/rebase.c:984
-msgid "<remote>"
-msgstr "<máy chủ>"
+#, c-format
+msgid "unrecognized pattern: '%s'"
+msgstr "mẫu không được thừa nhận: “%s”"
 
-#: builtin/pull.c:467 builtin/pull.c:482 builtin/pull.c:487
-#: contrib/scalar/scalar.c:374
-msgid "<branch>"
-msgstr "<nhánh>"
+#, c-format
+msgid "unrecognized negative pattern: '%s'"
+msgstr "mẫu âm không được thừa nhận: “%s”"
 
-#: builtin/pull.c:475 builtin/rebase.c:976
-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."
+#, 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"
 
-#: builtin/pull.c:484
-msgid ""
-"If you wish to set tracking information for this branch you can do so with:"
-msgstr ""
-"Nếu bạn muốn theo dõi thông tin cho nhánh này bạn có thể thực hiện bằng lệnh:"
+msgid "disabling cone pattern matching"
+msgstr "vô hiệu khớp mẫu nón"
 
-#: builtin/pull.c:489
 #, c-format
-msgid ""
-"Your configuration specifies to merge with the ref '%s'\n"
-"from the remote, but no such ref was fetched."
-msgstr ""
-"Các đặc tả cấu hình của bạn để hòa trộn với tham chiếu “%s”\n"
-"từ máy dịch vụ, nhưng không có nhánh nào như thế được lấy về."
+msgid "cannot use %s as an exclude file"
+msgstr "không thể dùng %s như là một tập tin loại trừ"
 
-#: builtin/pull.c:600
-#, c-format
-msgid "unable to access commit %s"
-msgstr "không thể truy cập lần chuyển giao “%s”"
+msgid "failed to get kernel name and information"
+msgstr "gặp lỗi khi lấy tên và thông tin của nhân"
 
-#: builtin/pull.c:908
-msgid "ignoring --verify-signatures for rebase"
-msgstr "bỏ qua --verify-signatures khi rebase"
+msgid "untracked cache is disabled on this system or location"
+msgstr "bộ nhớ tạm không theo vết bị tắt trên hệ thống hay vị trí này"
 
-#: builtin/pull.c:969
 msgid ""
-"You have divergent branches and need to specify how to reconcile them.\n"
-"You can do so by running one of the following commands sometime before\n"
-"your next pull:\n"
-"\n"
-"  git config pull.rebase false  # merge\n"
-"  git config pull.rebase true   # rebase\n"
-"  git config pull.ff only       # fast-forward only\n"
-"\n"
-"You can replace \"git config\" with \"git config --global\" to set a "
-"default\n"
-"preference for all repositories. You can also pass --rebase, --no-rebase,\n"
-"or --ff-only on the command line to override the configured default per\n"
-"invocation.\n"
+"No directory name could be guessed.\n"
+"Please specify a directory on the command line"
 msgstr ""
-"Bạn có các nhánh phân kỳ và cần chỉ định cách hòa hợp chúng.\n"
-"Bạn có thể làm như vậy bằng cách chạy một trong những lệnh sau đây\n"
-"thỉnh thoảng trước khi thực hiện lệnh pull tiếp theo của bạn:\n"
-"\n"
-"  git config pull.rebase false  # merge\n"
-"  git config pull.rebase true   # rebase\n"
-"  git config pull.ff only       # chỉ fast-forward\n"
-"\n"
-"Bạn có thể thay thế \"git config\" với \"git config --global\" để thiết lập "
-"mặc định\n"
-"ưu tiên cho tất cả các kho. Bạn cũng có thể chuyển qua --rebase, --no-"
-"rebase,\n"
-"hoặc --ff-only trên dòng lệnh để ghi đè các mặc định đã cấu hình cho mỗi\n"
-"lần gọi.\n"
+"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/pull.c:1047
-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."
+#, c-format
+msgid "index file corrupt in repo %s"
+msgstr "tập tin ghi bảng mục lục bị hỏng trong kho %s"
 
-#: builtin/pull.c:1051
-msgid "pull with rebase"
-msgstr "pull với rebase"
+#, c-format
+msgid "could not create directories for %s"
+msgstr "không thể tạo thư mục cho %s"
 
-#: builtin/pull.c:1052
-msgid "please commit or stash them."
-msgstr "xin hãy chuyển giao hoặc tạm cất (stash) chúng."
+#, c-format
+msgid "could not migrate git directory from '%s' to '%s'"
+msgstr "không thể di dời thư mục git từ “%s” sang “%s”"
 
-#: builtin/pull.c:1077
 #, c-format
-msgid ""
-"fetch updated the current branch head.\n"
-"fast-forwarding your working tree from\n"
-"commit %s."
-msgstr ""
-"fetch đã cập nhật head nhánh hiện tại.\n"
-"đang chuyển-tiếp-nhanh cây làm việc của bạn từ\n"
-"lần chuyển giaot %s."
+msgid "hint: Waiting for your editor to close the file...%c"
+msgstr "gợi ý: Chờ trình biên soạn của bạn đóng tập tin…%c"
+
+msgid "Filtering content"
+msgstr "Nội dung lọc"
 
-#: builtin/pull.c:1083
 #, c-format
-msgid ""
-"Cannot fast-forward your working tree.\n"
-"After making sure that you saved anything precious from\n"
-"$ git diff %s\n"
-"output, run\n"
-"$ git reset --hard\n"
-"to recover."
-msgstr ""
-"Không thể chuyển tiếp nhanh cây làm việc của bạn.\n"
-"Sau khi chắc chắn rằng mình đã ghi lại mọi thứ\n"
-"quý báu từ kết xuất của lệnh\n"
-"$ git diff %s\n"
-"chạy\n"
-"$ git reset --hard\n"
-"để khôi phục lại."
+msgid "could not stat file '%s'"
+msgstr "không thể lấy thống kê tập tin “%s”"
+
+#, c-format
+msgid "bad git namespace path \"%s\""
+msgstr "đường dẫn không gian tên git \"%s\" sai"
 
-#: builtin/pull.c:1098
-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."
+#, c-format
+msgid "too many args to run %s"
+msgstr "quá nhiều tham số để chạy %s"
 
-#: builtin/pull.c:1103
-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."
+msgid "git fetch-pack: expected shallow list"
+msgstr "git fetch-pack: cần danh sách shallow"
 
-#: builtin/pull.c:1105
-msgid "Cannot fast-forward to multiple branches."
-msgstr "Không thể thực hiện chuyển tiếp nhanh trên nhiều nhánh."
+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"
 
-#: builtin/pull.c:1120
-msgid "Need to specify how to reconcile divergent branches."
-msgstr "Caanfchir định làm thế nào để giải quyết các nhánh phân kỳ."
+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"
 
-#: builtin/pull.c:1134
-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ộ"
+#, 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”"
 
-#: builtin/push.c:19
-msgid "git push [<options>] [<repository> [<refspec>...]]"
-msgstr "git push [<các tùy chọn>] [<kho-chứa> [<refspec>…]]"
+msgid "unable to write to remote"
+msgstr "không thể ghi lên máy phục vụ"
 
-#: builtin/push.c:111
-msgid "tag shorthand without <tag>"
-msgstr "dùng tá»\91c ký thẻ không có <thẻ>"
+#, c-format
+msgid "invalid shallow line: %s"
+msgstr "dòng shallow không hợp lá»\87: %s"
 
-#: builtin/push.c:119
-msgid "--delete only accepts plain target ref names"
-msgstr "--delete chỉ chấp nhận các tên tham chiếu dạng thường"
+#, c-format
+msgid "invalid unshallow line: %s"
+msgstr "dòng unshallow không hợp lệ: %s"
 
-#: builtin/push.c:164
-msgid ""
-"\n"
-"To choose either option permanently, see push.default in 'git help config'."
-msgstr ""
-"\n"
-"Để chọn mỗi tùy chọn một cách cố định, xem push.default trong “git help "
-"config”."
+#, c-format
+msgid "object not found: %s"
+msgstr "không tìm thấy đối tượng: %s"
 
-#: builtin/push.c:167
 #, c-format
-msgid ""
-"The upstream branch of your current branch does not match\n"
-"the name of your current branch.  To push to the upstream branch\n"
-"on the remote, use\n"
-"\n"
-"    git push %s HEAD:%s\n"
-"\n"
-"To push to the branch of the same name on the remote, use\n"
-"\n"
-"    git push %s HEAD\n"
-"%s"
-msgstr ""
-"Nhánh thượng nguồn của nhánh hiện tại của bạn không khớp\n"
-"với tên của nhánh hiện tại của bạn.  Để đẩy lên đến nhánh\n"
-"thượng nguồn trên máy chủ, sử dụng\n"
-"\n"
-"    git push %s HEAD:%s\n"
-"\n"
-"Để đẩy tới nhánh cùng tên trên máy chủ, sử dụng\n"
-"\n"
-"    git push %s HEAD\n"
-"%s"
+msgid "error in object: %s"
+msgstr "lỗi trong đối tượng: %s"
 
-#: builtin/push.c:182
 #, c-format
-msgid ""
-"You are not currently on a branch.\n"
-"To push the history leading to the current (detached HEAD)\n"
-"state now, use\n"
-"\n"
-"    git push %s HEAD:<name-of-remote-branch>\n"
-msgstr ""
-"Bạn hiện nay không ở một nhánh.\n"
-"Để đẩy lịch sử lên trên trạng thái hiện hành (HEAD đã bị tách rời)\n"
-"ngay bây giờ, sử dụng\n"
-"\n"
-"    git push %s HEAD:<tên-của-nhánh-máy-chủ>\n"
+msgid "no shallow found: %s"
+msgstr "không tìm shallow nào: %s"
 
-#: builtin/push.c:191
 #, c-format
-msgid ""
-"The current branch %s has no upstream branch.\n"
-"To push the current branch and set the remote as upstream, use\n"
-"\n"
-"    git push --set-upstream %s %s\n"
-msgstr ""
-"Nhánh hiện tại %s không có nhánh thượng nguồn nào.\n"
-"Để push (đẩy lên) nhánh hiện tại và đặt máy chủ này làm thượng nguồn "
-"(upstream), sử dụng\n"
-"\n"
-"    git push --set-upstream %s %s\n"
+msgid "expected shallow/unshallow, got %s"
+msgstr "cần shallow/unshallow, nhưng lại nhận được %s"
 
-#: builtin/push.c:199
 #, c-format
-msgid "The current branch %s has multiple upstream branches, refusing to push."
-msgstr "Nhánh hiện tại %s có nhiều nhánh thượng nguồn, từ chối push."
+msgid "got %s %d %s"
+msgstr "nhận %s %d - %s"
 
-#: builtin/push.c:217
-msgid ""
-"You didn't specify any refspecs to push, and push.default is \"nothing\"."
-msgstr ""
-"Bạn đã không chỉ ra một refspecs nào để đẩy lên, và push.default là \"không "
-"là gì cả\"."
+#, c-format
+msgid "invalid commit %s"
+msgstr "lần chuyển giao %s không hợp lệ"
+
+msgid "giving up"
+msgstr "chịu thua"
+
+msgid "done"
+msgstr "xong"
 
-#: builtin/push.c:243
 #, c-format
-msgid ""
-"You are pushing to remote '%s', which is not the upstream of\n"
-"your current branch '%s', without telling me what to push\n"
-"to update which remote branch."
-msgstr ""
-"Bạn đang push (đẩy lên) máy chủ “%s”, mà nó không phải là thượng nguồn "
-"(upstream) của\n"
-"nhánh hiện tại “%s” của bạn, mà không báo cho tôi biết là cái gì được push\n"
-"để cập nhật nhánh máy chủ nào."
+msgid "got %s (%d) %s"
+msgstr "nhận %s (%d) %s"
 
-#: builtin/push.c:258
-msgid ""
-"Updates were rejected because the tip of your current branch is behind\n"
-"its remote counterpart. Integrate the remote changes (e.g.\n"
-"'git pull ...') before pushing again.\n"
-"See the 'Note about fast-forwards' in 'git push --help' for details."
-msgstr ""
-"Việc cập nhật bị từ chối bởi vì đầu mút của nhánh hiện tại của bạn nằm đằng\n"
-"sau bộ phận tương ứng của máy chủ. Hòa trộn với các thay đổi từ máy chủ\n"
-"(v.d. \"git pull …\") trước khi đẩy lên lần nữa.\n"
-"Xem “Note about fast-forwards” trong “git push --help” để có thông tin chi "
-"tiết."
+#, c-format
+msgid "Marking %s as complete"
+msgstr "Đánh dấu %s là đã hoàn thành"
 
-#: builtin/push.c:264
-msgid ""
-"Updates were rejected because a pushed branch tip is behind its remote\n"
-"counterpart. Check out this branch and integrate the remote changes\n"
-"(e.g. 'git pull ...') before pushing again.\n"
-"See the 'Note about fast-forwards' in 'git push --help' for details."
-msgstr ""
-"Việc cập nhật bị từ chối bởi vì đầu mút của nhánh đã đẩy lên nằm đằng sau "
-"bộ\n"
-"phận tương ứng của máy chủ. Checkou nhánh này và hòa trộn với các thay đổi\n"
-"từ máy chủ (v.d. “git pull …”) trước khi lại push lần nữa.\n"
-"Xem “Note about fast-forwards” trong “git push --help” để có thông tin chi "
-"tiết."
+#, c-format
+msgid "already have %s (%s)"
+msgstr "đã sẵn có %s (%s)"
 
-#: builtin/push.c:270
-msgid ""
-"Updates were rejected because the remote contains work that you do\n"
-"not have locally. This is usually caused by another repository pushing\n"
-"to the same ref. You may want to first integrate the remote changes\n"
-"(e.g., 'git pull ...') before pushing again.\n"
-"See the 'Note about fast-forwards' in 'git push --help' for details."
-msgstr ""
-"Việc cập nhật bị từ chối bởi vì máy chủ có chứa công việc mà bạn không\n"
-"có ở máy nội bộ của mình. Lỗi này thường có nguyên nhân bởi kho khác đẩy\n"
-"dữ liệu lên cùng một tham chiếu. Bạn có lẽ muốn hòa trộn với các thay đổi\n"
-"từ máy chủ (v.d. “git pull…”) trước khi lại push lần nữa.\n"
-"Xem “Note about fast-forwards” trong “git push --help” để có thông tin chi "
-"tiết."
+msgid "fetch-pack: unable to fork off sideband demultiplexer"
+msgstr "fetch-pack: không thể rẽ nhánh sideband demultiplexer"
 
-#: builtin/push.c:277
-msgid "Updates were rejected because the tag already exists in the remote."
-msgstr "Việc cập nhật bị từ chối bởi vì thẻ đã sẵn có từ trước trên máy chủ."
+msgid "protocol error: bad pack header"
+msgstr "lỗi giao thức: phần đầu gói bị sai"
 
-#: builtin/push.c:280
-msgid ""
-"You cannot update a remote ref that points at a non-commit object,\n"
-"or update a remote ref to make it point at a non-commit object,\n"
-"without using the '--force' option.\n"
-msgstr ""
-"Không thể cập nhật một tham chiếu trên máy chủ mà nó chỉ đến đối tượng "
-"không\n"
-"phải là lần chuyển giao, hoặc cập nhật một tham chiếu máy chủ để nó chỉ đến "
-"đối tượng\n"
-"không phải chuyển giao, mà không sử dụng tùy chọn “--force”.\n"
+#, c-format
+msgid "fetch-pack: unable to fork off %s"
+msgstr "fetch-pack: không thể rẽ nhánh %s"
 
-#: builtin/push.c:285
-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"
+msgid "fetch-pack: invalid index-pack output"
+msgstr "fetch-pack: kết xuất index-pack không hợp lệ"
 
-#: builtin/push.c:355
 #, c-format
-msgid "Pushing to %s\n"
-msgstr "Đang đẩy lên %s\n"
+msgid "%s failed"
+msgstr "%s gặp lỗi"
+
+msgid "error in sideband demultiplexer"
+msgstr "có lỗi trong sideband demultiplexer"
 
-#: builtin/push.c:362
 #, 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”"
+msgid "Server version is %.*s"
+msgstr "Phiên bản máy chủ là %.*s"
 
-#: builtin/push.c:544 builtin/submodule--helper.c:3377
-msgid "repository"
-msgstr "kho"
+#, c-format
+msgid "Server supports %s"
+msgstr "Máy chủ hỗ trợ %s"
 
-#: builtin/push.c:545 builtin/send-pack.c:193
-msgid "push all refs"
-msgstr "đẩy tất cả các tham chiếu"
+msgid "Server does not support shallow clients"
+msgstr "Máy chủ không hỗ trợ máy khách shallow"
 
-#: builtin/push.c:546 builtin/send-pack.c:195
-msgid "mirror all refs"
-msgstr "mirror tất cả các tham chiếu"
+msgid "Server does not support --shallow-since"
+msgstr "Máy chủ không hỗ trợ --shallow-since"
 
-#: builtin/push.c:548
-msgid "delete refs"
-msgstr "xóa các tham chiếu"
+msgid "Server does not support --shallow-exclude"
+msgstr "Máy chủ không hỗ trợ --shallow-exclude"
 
-#: builtin/push.c:549
-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)"
+msgid "Server does not support --deepen"
+msgstr "Máy chủ không hỗ trợ --deepen"
 
-#: builtin/push.c:552 builtin/send-pack.c:196
-msgid "force updates"
-msgstr "ép buộc cập nhật"
+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"
 
-#: builtin/push.c:553 builtin/send-pack.c:208
-msgid "<refname>:<expect>"
-msgstr "<tên-tham-chiếu>:<cần>"
+msgid "no common commits"
+msgstr "không có lần chuyển giao chung nào"
 
-#: builtin/push.c:554 builtin/send-pack.c:209
-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"
+msgid "git fetch-pack: fetch failed."
+msgstr "git fetch-pack: fetch gặp lỗi."
+
+#, 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"
+
+#, c-format
+msgid "the server does not support algorithm '%s'"
+msgstr "máy chủ không hỗ trợ thuật toán “%s”"
+
+msgid "Server does not support shallow requests"
+msgstr "Máy chủ không hỗ trợ yêu cầu shallow"
 
-#: builtin/push.c:557 builtin/send-pack.c:212
-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ộ"
+msgid "Server supports filter"
+msgstr "Máy chủ hỗ trợ bộ lọc"
 
-#: builtin/push.c:560
-msgid "control recursive pushing of submodules"
-msgstr "điều khiển việc đẩy lên (push) đệ qui của mô-đun-con"
+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ụ"
 
-#: builtin/push.c:561 builtin/send-pack.c:203
-msgid "use thin pack"
-msgstr "tạo gói nhẹ"
+#, c-format
+msgid "expected '%s', received '%s'"
+msgstr "cần “%s”, nhưng lại nhận “%s”"
 
-#: builtin/push.c:562 builtin/push.c:563 builtin/send-pack.c:190
-#: builtin/send-pack.c:191
-msgid "receive pack program"
-msgstr "chương trình nhận gói"
+#, c-format
+msgid "expected '%s'"
+msgstr "cần “%s”"
 
-#: builtin/push.c:564
-msgid "set upstream for git pull/status"
-msgstr "đặt thượng nguồn cho git pull/status"
+#, c-format
+msgid "unexpected acknowledgment line: '%s'"
+msgstr "gặp dòng không được thừa nhận: “%s”"
 
-#: builtin/push.c:567
-msgid "prune locally removed refs"
-msgstr "xén tỉa những tham chiếu bị gỡ bỏ"
+#, c-format
+msgid "error processing acks: %d"
+msgstr "gặp lỗi khi xử lý tín hiệu trả lời: %d"
 
-#: builtin/push.c:569
-msgid "bypass pre-push hook"
-msgstr "vòng qua móc tiền-đẩy (pre-push)"
+#. TRANSLATORS: The parameter will be 'ready', a protocol
+#. keyword.
+#.
+#, c-format
+msgid "expected packfile to be sent after '%s'"
+msgstr "cần tập tin gói để gửi sau “%s”"
 
-#: builtin/push.c:570
-msgid "push missing but relevant tags"
-msgstr "push phần bị thiếu nhưng các thẻ lại thích hợp"
+#. TRANSLATORS: The parameter will be 'ready', a protocol
+#. keyword.
+#.
+#, c-format
+msgid "expected no other sections to be sent after no '%s'"
+msgstr "không cần thêm phần nào để gửi sau không “%s”"
 
-#: builtin/push.c:572 builtin/send-pack.c:197
-msgid "GPG sign the push"
-msgstr "ký lần đẩy dùng GPG"
+#, c-format
+msgid "error processing shallow info: %d"
+msgstr "lỗi xử lý thông tin shallow: %d"
 
-#: builtin/push.c:574 builtin/send-pack.c:204
-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ủ"
+#, c-format
+msgid "expected wanted-ref, got '%s'"
+msgstr "cần wanted-ref, nhưng lại nhận được “%s”"
 
-#: builtin/push.c:594
-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"
+#, c-format
+msgid "unexpected wanted-ref: '%s'"
+msgstr "wanted-ref không được mong đợi: “%s”"
 
-#: builtin/push.c:614
 #, c-format
-msgid "bad repository '%s'"
-msgstr "repository (kho) sai “%s”"
+msgid "error processing wanted refs: %d"
+msgstr "lỗi khi xử lý wanted refs: %d"
 
-#: builtin/push.c:615
-msgid ""
-"No configured push destination.\n"
-"Either specify the URL from the command-line or configure a remote "
-"repository using\n"
-"\n"
-"    git remote add <name> <url>\n"
-"\n"
-"and then push using the remote name\n"
-"\n"
-"    git push <name>\n"
-msgstr ""
-"Chưa cấu hình đích để đẩy lên.\n"
-"Hoặc là chỉ ra URL từ dòng lệnh hoặc là cấu hình một kho máy chủ sử dụng\n"
-"\n"
-"    git remote add <tên> <url>\n"
-"\n"
-"và sau đó đẩy lên sử dụng tên máy chủ\n"
-"\n"
-"    git push <tên>\n"
+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"
 
-#: builtin/push.c:632
-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"
+msgid "no matching remote head"
+msgstr "không khớp phần đầu máy chủ"
 
-#: builtin/push.c:638
-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"
+msgid "unexpected 'ready' from remote"
+msgstr "gặp “ready” đột xuất từ máy chủ"
 
-#: builtin/push.c:648
-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"
+#, c-format
+msgid "no such remote ref %s"
+msgstr "không có máy chủ tham chiếu nào như %s"
 
-#: builtin/range-diff.c:9
-msgid "git range-diff [<options>] <old-base>..<old-tip> <new-base>..<new-tip>"
+#, c-format
+msgid "Server does not allow request for unadvertised object %s"
 msgstr ""
-"git range-diff [<các tùy chọn>] <old-base>..<old-tip> <new-base>..<new-tip>"
+"Máy phục vụ không cho phép yêu cầu cho đối tượng không được báo trước %s"
 
-#: builtin/range-diff.c:10
-msgid "git range-diff [<options>] <old-tip>...<new-tip>"
-msgstr "git range-diff [<các tùy chọn>] <old-tip>…<new-tip>"
+#, c-format
+msgid "fsmonitor_ipc__send_query: invalid path '%s'"
+msgstr "fsmonitor_ipc__send_query: đường dẫn không hợp lệ '%s'"
 
-#: builtin/range-diff.c:11
-msgid "git range-diff [<options>] <base> <old-tip> <new-tip>"
-msgstr "git range-diff [<các tùy chọn>] <base> <old-tip> <new-tip>"
+#, c-format
+msgid "fsmonitor_ipc__send_query: unspecified error on '%s'"
+msgstr "fsmonitor_ipc__send_query: lỗi chưa rõ trên '%s'"
 
-#: builtin/range-diff.c:30
-msgid "use simple diff colors"
-msgstr "dùng màu diff đơn giản"
+msgid "fsmonitor--daemon is not running"
+msgstr "fsmonitor--daemon hiện tại chưa chạy"
 
-#: builtin/range-diff.c:32
-msgid "notes"
-msgstr "ghi chú"
+#, c-format
+msgid "could not send '%s' command to fsmonitor--daemon"
+msgstr "không thể gửi lệnh '%s' đến fsmonitor--daemon"
 
-#: builtin/range-diff.c:32
-msgid "passed to 'git log'"
-msgstr "chuyển cho “git log”"
+#, c-format
+msgid "bare repository '%s' is incompatible with fsmonitor"
+msgstr "kho thuần '%s' là không tương thích với fsmonitor"
 
-#: builtin/range-diff.c:35
-msgid "only emit output related to the first range"
-msgstr "chỉ phát ra kết xuất liên quan đến vùng đầu tiên"
+#, c-format
+msgid "repository '%s' is incompatible with fsmonitor due to errors"
+msgstr "kho '%s' là không tương thích với fsmonitor bởi vì có lỗi"
 
-#: builtin/range-diff.c:37
-msgid "only emit output related to the second range"
-msgstr "chỉ phát ra kết xuất liên quan đến vùng thứ hai"
+#, c-format
+msgid "remote repository '%s' is incompatible with fsmonitor"
+msgstr "kho trên mạng '%s' là không tương thích với fsmonitor"
 
-#: builtin/range-diff.c:60 builtin/range-diff.c:64
 #, c-format
-msgid "not a commit range: '%s'"
-msgstr "không phải là vùng chuyển giao: “%s”"
+msgid "virtual repository '%s' is incompatible with fsmonitor"
+msgstr "kho ảo '%s' là không tương thích với fsmonitor"
 
-#: builtin/range-diff.c:74
-msgid "single arg format must be symmetric range"
-msgstr "định dạng đối số đơn phải là một vùng đối xứng"
+#, c-format
+msgid ""
+"repository '%s' is incompatible with fsmonitor due to lack of Unix sockets"
+msgstr "kho '%s' là không tương thích với fsmonitor bởi vì thiếu Unix sockets"
 
-#: builtin/range-diff.c:89
-msgid "need two commit ranges"
-msgstr "cần hai vùng lần chuyển giao"
+msgid ""
+"git [-v | --version] [-h | --help] [-C <path>] [-c <name>=<value>]\n"
+"           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
+"           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--"
+"bare]\n"
+"           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
+"           [--super-prefix=<path>] [--config-env=<name>=<envvar>]\n"
+"           <command> [<args>]"
+msgstr ""
+"git [--version] [-h | --help] [-C </đường/dẫn/>] [-c <tên>=<giá trị>]\n"
+"           [--exec-path[=</đường/dẫn/>]] [--html-path] [--man-path] [--info-"
+"path]\n"
+"           [-p | --paginate | -P --no-pager] [--no-replace-objects] [--"
+"bare]\n"
+"           [--git-dir=</đường/dẫn/>] [--work-tree=</đường/dẫn/>] [--"
+"namespace=<tên>]\n"
+"           [--super-prefix=</đường/dẫn/>] [--config-env=<tên>=<envvar>]\n"
+"           <lệnh> [<các tham số>]"
 
-#: builtin/read-tree.c:41
 msgid ""
-"git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>) "
-"[-u | -i]] [--no-sparse-checkout] [--index-output=<file>] (--empty | <tree-"
-"ish1> [<tree-ish2> [<tree-ish3>]])"
+"'git help -a' and 'git help -g' list available subcommands and some\n"
+"concept guides. See 'git help <command>' or 'git help <concept>'\n"
+"to read about a specific subcommand or concept.\n"
+"See 'git help git' for an overview of the system."
 msgstr ""
-"git read-tree [(-m [--trivial] [--aggressive] | --reset | --"
-"prefix=<tiền_tố>) [-u | -i]] [--no-sparse-checkout] [--index-"
-"output=<tập_tin>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
+"“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."
 
-#: builtin/read-tree.c:116
-msgid "write resulting index to <file>"
-msgstr "ghi mục lục kết quả vào <tập-tin>"
+#, c-format
+msgid "unsupported command listing type '%s'"
+msgstr "không hỗ trợ liệt kê lệnh kiểu “%s”"
 
-#: builtin/read-tree.c:119
-msgid "only empty the index"
-msgstr "chỉ với bảng mục lục trống rỗng"
+#, c-format
+msgid "no directory given for '%s' option\n"
+msgstr "không đưa ra thư mục cho tùy chọn '%s'\n"
 
-#: builtin/read-tree.c:121
-msgid "Merging"
-msgstr "Hòa trộn"
+#, c-format
+msgid "no namespace given for --namespace\n"
+msgstr "chưa đưa ra không gian làm việc cho --namespace\n"
 
-#: builtin/read-tree.c:123
-msgid "perform a merge in addition to a read"
-msgstr "thực hiện một hòa trộn thêm vào việc đọc"
+#, c-format
+msgid "no prefix given for --super-prefix\n"
+msgstr "chưa đưa ra tiền tố cho --super-prefix\n"
 
-#: builtin/read-tree.c:125
-msgid "3-way merge if no file level merging required"
-msgstr ""
-"hòa trộn kiểu “3-way” nếu không có tập tin mức hòa trộn nào được yêu cầu"
+#, c-format
+msgid "-c expects a configuration string\n"
+msgstr "-c cần một chuỗi cấu hình\n"
 
-#: builtin/read-tree.c:127
-msgid "3-way merge in presence of adds and removes"
-msgstr "hòa trộn 3-way trong sự hiện diện của “adds” và “removes”"
+#, c-format
+msgid "no config key given for --config-env\n"
+msgstr "không đưa ra khóa cấu hình cho --config-env\n"
 
-#: builtin/read-tree.c:129
-msgid "same as -m, but discard unmerged entries"
-msgstr "giống với -m, nhưng bỏ qua các mục chưa được hòa trộn"
+#, c-format
+msgid "unknown option: %s\n"
+msgstr "không hiểu tùy chọn: %s\n"
 
-#: builtin/read-tree.c:130
-msgid "<subdirectory>/"
-msgstr "<thư-mục-con>/"
+#, c-format
+msgid "while expanding alias '%s': '%s'"
+msgstr "trong khi triển khai bí danh “%s”: “%s”"
 
-#: builtin/read-tree.c:131
-msgid "read the tree into the index under <subdirectory>/"
-msgstr "đọc cây vào trong bảng mục lục dưới <thư_mục_con>/"
+#, c-format
+msgid ""
+"alias '%s' changes environment variables.\n"
+"You can use '!git' in the alias to do this"
+msgstr ""
+"bí danh “%s” thay đổi biến môi trường.\n"
+"Bạn có thể sử dụng “!git” trong đặt bí danh để làm việc này"
 
-#: builtin/read-tree.c:134
-msgid "update working tree with merge result"
-msgstr "cập nhật cây làm việc với kết quả hòa trộn"
+#, c-format
+msgid "empty alias for %s"
+msgstr "làm trống bí danh cho %s"
 
-#: builtin/read-tree.c:136
-msgid "gitignore"
-msgstr "gitignore"
+#, c-format
+msgid "recursive alias: %s"
+msgstr "đệ quy các bí danh: %s"
 
-#: builtin/read-tree.c:137
-msgid "allow explicitly ignored files to be overwritten"
-msgstr "cho phép các tập tin rõ ràng bị lờ đi được ghi đè"
+msgid "write failure on standard output"
+msgstr "lỗi ghi nghiêm trong trên đầu ra tiêu chuẩn"
 
-#: builtin/read-tree.c:140
-msgid "don't check the working tree after merging"
-msgstr "không kiểm tra cây làm việc sau hòa trộn"
+msgid "unknown write failure on standard output"
+msgstr "lỗi nghiêm trọng chưa biết khi ghi ra đầu ra tiêu chuẩn"
 
-#: builtin/read-tree.c:141
-msgid "don't update the index or the work tree"
-msgstr "không cập nhật bảng mục lục hay cây làm việc"
+msgid "close failed on standard output"
+msgstr "gặp lỗi khi đóng đầu ra tiêu chuẩn"
 
-#: builtin/read-tree.c:143
-msgid "skip applying sparse checkout filter"
-msgstr "bỏ qua áp dụng bộ lọc lấy ra (checkout) thưa thớt"
+#, 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"
+
+#, c-format
+msgid "cannot handle %s as a builtin"
+msgstr "không thể xử lý %s như là một phần bổ sung"
+
+#, c-format
+msgid ""
+"usage: %s\n"
+"\n"
+msgstr ""
+"cách dùng: %s\n"
+"\n"
 
-#: builtin/read-tree.c:145
-msgid "debug unpack-trees"
-msgstr "gỡ lá»\97i â\80\9cunpack-treesâ\80\9d"
+#, c-format
+msgid "expansion of alias '%s' failed; '%s' is not a git command\n"
+msgstr "gặp lá»\97i khi khai triá»\83n bí danh â\80\9c%sâ\80\9d; â\80\9c%sâ\80\9d không phải là lá»\87nh git\n"
 
-#: builtin/read-tree.c:149
-msgid "suppress feedback messages"
-msgstr "không xuất các thông tin phản hồi"
+#, c-format
+msgid "failed to run command '%s': %s\n"
+msgstr "gặp lỗi khi chạy lệnh “%s”: %s\n"
 
-#: builtin/read-tree.c:190
-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 đã"
+msgid "could not create temporary file"
+msgstr "không thể tạo tập tin tạm thời"
+
+#, c-format
+msgid "failed writing detached signature to '%s'"
+msgstr "gặp lỗi khi ghi chữ ký đính kèm vào “%s”"
 
-#: builtin/rebase.c:36
 msgid ""
-"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase> | --keep-base] "
-"[<upstream> [<branch>]]"
+"gpg.ssh.allowedSignersFile needs to be configured and exist for ssh "
+"signature verification"
 msgstr ""
-"git rebase [-i] [các tùy chọn] [--exec <lệnh>] [--onto <newbase> | --keep-"
-"base] [<upstream>] [<nhánh>]]"
+"gpg.ssh.allowedSignersFile cần được cấu hình và tồn tại để xác minh chữ ký "
+"ssh"
 
-#: builtin/rebase.c:38
 msgid ""
-"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]"
+"ssh-keygen -Y find-principals/verify is needed for ssh signature "
+"verification (available in openssh version 8.2p1+)"
 msgstr ""
-"git rebase [-i] [các tùy chọn] [--exec <lệnh>] [--onto <newbase>] --root "
-"[<nhánh>]"
+"ssh-keygen -Y find-principals/verify là cần thiết để xác minh chữ ký ssh (có "
+"sẵn trong phiên bản openssh 8.2p1+)"
 
-#: builtin/rebase.c:231
 #, c-format
-msgid "could not create temporary %s"
-msgstr "không thể tạo %s tạm thời"
+msgid "ssh signing revocation file configured but not found: %s"
+msgstr "tập tin thu hồi chữ ký ssh đã được cấu hình nhưng không tìm thấy: %s"
 
-#: builtin/rebase.c:237
-msgid "could not mark as interactive"
-msgstr "không thể đánh dấu là tương tác"
+#, c-format
+msgid "bad/incompatible signature '%s'"
+msgstr "chữ sai / không tương thích “%s”"
 
-#: builtin/rebase.c:290
-msgid "could not generate todo list"
-msgstr "không thể tạo danh sách cần làm"
+#, c-format
+msgid "failed to get the ssh fingerprint for key '%s'"
+msgstr "gặp lỗi khi lấy dấu vân tay ssh cho khóa “%s”"
 
-#: builtin/rebase.c:332
-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"
+msgid ""
+"either user.signingkey or gpg.ssh.defaultKeyCommand needs to be configured"
+msgstr ""
+"hoặc là user.signingkey hoặc gpg.ssh.defaultKeyCommand cần được cấu hình"
 
-#: builtin/rebase.c:391
 #, 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"
+msgid "gpg.ssh.defaultKeyCommand succeeded but returned no keys: %s %s"
+msgstr ""
+"gpg.ssh.defaultKeyCommand thành công nhưng lại không trả về khóa nào: %s %s"
 
-#: builtin/rebase.c:433
 #, c-format
-msgid "could not get 'onto': '%s'"
-msgstr "không thể đặt lấy “onto”: “%s”"
+msgid "gpg.ssh.defaultKeyCommand failed: %s %s"
+msgstr "gpg.ssh.defaultKeyCommand gặp lỗi: %s %s"
+
+msgid "gpg failed to sign the data"
+msgstr "gpg gặp lỗi khi ký dữ liệu"
+
+msgid "user.signingKey needs to be set for ssh signing"
+msgstr "user.signingKey cần được đặt cho ký ssh"
 
-#: builtin/rebase.c:450
 #, c-format
-msgid "invalid orig-head: '%s'"
-msgstr "orig-head không hợp lệ: “%s”"
+msgid "failed writing ssh signing key to '%s'"
+msgstr "gặp lỗi khi ghi chìa khóa ký ssh vào “%s”"
 
-#: builtin/rebase.c:475
 #, c-format
-msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
-msgstr "đang bỏ qua allow_rerere_autoupdate không hợp lệ: “%s”"
+msgid "failed writing ssh signing key buffer to '%s'"
+msgstr "gặp lỗi khi ghi bộ đệm chìa khóa ký ssh vào “%s”"
 
-#: builtin/rebase.c:600
 msgid ""
-"Resolve all conflicts manually, mark them as resolved with\n"
-"\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
-"You can instead skip this commit: run \"git rebase --skip\".\n"
-"To abort and get back to the state before \"git rebase\", run \"git rebase --"
-"abort\"."
+"ssh-keygen -Y sign is needed for ssh signing (available in openssh version "
+"8.2p1+)"
 msgstr ""
-"Giải quyết vấn đề này thủ công, hãy đanh dấu chúng đã được giải quyết bằng\n"
-"hãy chạy lệnh \"git add/rm <các_tập_tin_xung_đột>\", sau đó chạy \"git "
-"rebase --continue\".\n"
-"Bạn có thể bỏ qua miếng vá, chạy \"git rebase --skip\".\n"
-"Để bãi bỏ và quay trở lại trạng thái trước \"git rebase\", chạy \"git rebase "
-"--abort\"."
+"ssh-keygen -Y sign là cần thiết cho ký ssh (sẵn có trong openssh phiên bản "
+"8.2p1+)"
 
-#: builtin/rebase.c:685
 #, c-format
-msgid ""
-"\n"
-"git encountered an error while preparing the patches to replay\n"
-"these revisions:\n"
-"\n"
-"    %s\n"
-"\n"
-"As a result, git cannot rebase them."
-msgstr ""
-"\n"
-"git chạm trán một lỗi trong khi đang chuẩn bị các miếng vá để diễn lại\n"
-"những điểm xét duyệt này:\n"
-"\n"
-"    %s\n"
-"\n"
-"Kết quả là git không thể cải tổ lại chúng."
+msgid "failed reading ssh signing data buffer from '%s'"
+msgstr "gặp lỗi khi đọc bộ đệm dữ liệu chữ ký ssh từ “%s”"
 
-#: builtin/rebase.c:836
 #, c-format
-msgid "could not switch to %s"
-msgstr "không thể chuyển đến %s"
+msgid "ignored invalid color '%.*s' in log.graphColors"
+msgstr "bỏ qua màu không hợp lệ “%.*s” trong log.graphColors"
 
-#: builtin/rebase.c:952
-#, c-format
 msgid ""
-"unrecognized empty type '%s'; valid values are \"drop\", \"keep\", and \"ask"
-"\"."
+"given pattern contains NULL byte (via -f <file>). This is only supported "
+"with -P under PCRE v2"
 msgstr ""
-"kiểu rỗng không được nhận dạng “%s”; giá trị hợp lệ là \"drop\", \"keep\", "
-"và \"ask\"."
+"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"
 
-#: builtin/rebase.c:970
 #, c-format
-msgid ""
-"%s\n"
-"Please specify which branch you want to rebase against.\n"
-"See git-rebase(1) for details.\n"
-"\n"
-"    git rebase '<branch>'\n"
-"\n"
-msgstr ""
-"%s\n"
-"Vui lòng chỉ định nhánh nào bạn muốn cải tổ dựa vào.\n"
-"Xem git-rebase(1) để biết thêm chi tiết.\n"
-"\n"
-"    git rebase “<nhánh>”\n"
-"\n"
+msgid "'%s': unable to read %s"
+msgstr "“%s”: không thể đọc %s"
 
-#: builtin/rebase.c:986
 #, c-format
-msgid ""
-"If you wish to set tracking information for this branch you can do so with:\n"
-"\n"
-"    git branch --set-upstream-to=%s/<branch> %s\n"
-"\n"
-msgstr ""
-"Nếu bạn muốn theo dõi thông tin cho nhánh này bạn có thể thực hiện bằng "
-"lệnh:\n"
-"\n"
-"    git branch --set-upstream-to=%s/<nhánh> %s\n"
-"\n"
+msgid "'%s': short read"
+msgstr "“%s”: đọc ngắn"
 
-#: builtin/rebase.c:1016
-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"
+msgid "start a working area (see also: git help tutorial)"
+msgstr "bắt đầu một vùng làm việc (xem thêm: git help tutorial)"
 
-#: builtin/rebase.c:1020
-msgid "empty exec command"
-msgstr "lệnh thực thi trống rỗng"
+msgid "work on the current change (see also: git help everyday)"
+msgstr "làm việc trên thay đổi hiện tại (xem thêm: git help everyday)"
 
-#: builtin/rebase.c:1051
-msgid "rebase onto given branch instead of upstream"
-msgstr "cải tổ vào nhánh đã cho thay cho thượng nguồn"
+msgid "examine the history and state (see also: git help revisions)"
+msgstr "xem xét lịch sử tình trạng (xem thêm: git help revisions)"
 
-#: builtin/rebase.c:1053
-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"
+msgid "grow, mark and tweak your common history"
+msgstr "thêm, ghi dấu và chỉnh lịch sử chung của bạn"
 
-#: builtin/rebase.c:1055
-msgid "allow pre-rebase hook to run"
-msgstr "cho phép móc (hook) pre-rebase được chạy"
+msgid "collaborate (see also: git help workflows)"
+msgstr "làm việc nhóm (xem thêm: git help workflows)"
 
-#: builtin/rebase.c:1057
-msgid "be quiet. implies --no-stat"
-msgstr "hãy im lặng. ý là --no-stat"
+msgid "Main Porcelain Commands"
+msgstr "Các lệnh Porcelain chính"
 
-#: builtin/rebase.c:1060
-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"
+msgid "Ancillary Commands / Manipulators"
+msgstr "Lệnh/thao tác thứ cấp"
 
-#: builtin/rebase.c:1063
-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"
+msgid "Ancillary Commands / Interrogators"
+msgstr "Lệnh/bộ hỏi thứ cấp"
 
-#: builtin/rebase.c:1066
-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"
+msgid "Interacting with Others"
+msgstr "Tương tác với những cái khác"
 
-#: builtin/rebase.c:1069
-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ả"
+msgid "Low-level Commands / Manipulators"
+msgstr "Lệnh/thao tác ở mức thấp"
 
-#: builtin/rebase.c:1071
-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"
+msgid "Low-level Commands / Interrogators"
+msgstr "Lệnh/bộ hỏi ở mức thấp"
 
-#: builtin/rebase.c:1073
-msgid "synonym of --reset-author-date"
-msgstr "đồng nghĩa với --reset-author-date"
+msgid "Low-level Commands / Syncing Repositories"
+msgstr "Lệnh/Đồng bộ kho ở mức thấp"
 
-#: builtin/rebase.c:1075 builtin/rebase.c:1079
-msgid "passed to 'git apply'"
-msgstr "chuyển cho “git apply”"
+msgid "Low-level Commands / Internal Helpers"
+msgstr "Lệnh/Hỗ trợ nội tại ở mức thấp"
 
-#: builtin/rebase.c:1077
-msgid "ignore changes in whitespace"
-msgstr "lờ đi sự thay đổi do khoảng trắng gây ra"
+#, c-format
+msgid "available git commands in '%s'"
+msgstr "các lệnh git sẵn có trong thư mục “%s”:"
 
-#: builtin/rebase.c:1081 builtin/rebase.c:1084
-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ì"
+msgid "git commands available from elsewhere on your $PATH"
+msgstr "các lệnh git sẵn có từ một nơi khác trong $PATH của bạn"
 
-#: builtin/rebase.c:1086
-msgid "continue"
-msgstr "tiếp tục"
+msgid "These are common Git commands used in various situations:"
+msgstr "Có các lệnh Git chung được sử dụng trong các tình huống khác nhau:"
 
-#: builtin/rebase.c:1089
-msgid "skip current patch and continue"
-msgstr "bỏ qua miếng vá hiện hành và tiếp tục"
+msgid "The Git concept guides are:"
+msgstr "Các chỉ dẫn khái niệm về Git là:"
 
-#: builtin/rebase.c:1091
-msgid "abort and check out the original branch"
-msgstr "bãi bỏ và lấy ra nhánh nguyên thủy"
+msgid "External commands"
+msgstr "Các lệnh bên ngoài"
 
-#: builtin/rebase.c:1094
-msgid "abort but keep HEAD where it is"
-msgstr "bãi bỏ nhưng vẫn vẫn giữ HEAD chỉ đến nó"
+msgid "Command aliases"
+msgstr "Các bí danh lệnh"
 
-#: builtin/rebase.c:1095
-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"
+msgid "See 'git help <command>' to read about a specific subcommand"
+msgstr "Xem “git help <lệnh>” để đọc các đặc tả của lệnh con"
 
-#: builtin/rebase.c:1098
-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"
+#, c-format
+msgid ""
+"'%s' appears to be a git command, but we were not\n"
+"able to execute it. Maybe git-%s is broken?"
+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?"
 
-#: builtin/rebase.c:1101
-msgid "use apply strategies to rebase"
-msgstr "dùng chiến lược áp dụng để cải tổ"
+#, 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”."
 
-#: builtin/rebase.c:1105
-msgid "use merging strategies to rebase"
-msgstr "dùng chiến lược hòa trộn để cải tổ"
+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ả."
+
+#, 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."
+
+#, c-format
+msgid "Continuing under the assumption that you meant '%s'."
+msgstr "Tiếp tục và coi rằng ý bạn là “%s”."
 
-#: builtin/rebase.c:1109
-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ổ"
+#, c-format
+msgid "Run '%s' instead [y/N]? "
+msgstr "Chạy “%s” để thay thế? (y/N)? "
 
-#: builtin/rebase.c:1113
-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"
+#, 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”."
 
-#: builtin/rebase.c:1118
-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"
+msgid ""
+"\n"
+"The most similar command is"
+msgid_plural ""
+"\n"
+"The most similar commands are"
+msgstr[0] ""
+"\n"
+"Những lệnh giống nhất là"
 
-#: builtin/rebase.c:1121
-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"
+msgid "git version [<options>]"
+msgstr "git version [<các tùy chọn>]"
 
-#: builtin/rebase.c:1125
-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"
+#, c-format
+msgid "%s: %s - %s"
+msgstr "%s: %s - %s"
 
-#: builtin/rebase.c:1132
-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"
+msgid ""
+"\n"
+"Did you mean this?"
+msgid_plural ""
+"\n"
+"Did you mean one of these?"
+msgstr[0] ""
+"\n"
+"Có phải ý bạn là một trong số những cái này không?"
 
-#: builtin/rebase.c:1136
-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ì"
+#, c-format
+msgid ""
+"The '%s' hook was ignored because it's not set as executable.\n"
+"You can disable this warning with `git config advice.ignoredHook false`."
+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“."
 
-#: builtin/rebase.c:1140
-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"
+#, c-format
+msgid "Couldn't start hook '%s'\n"
+msgstr "Không thể khởi chạy móc “%s”\n"
 
-#: builtin/rebase.c:1143
-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"
+#, 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”)"
 
-#: builtin/rebase.c:1145
-msgid "use the given merge strategy"
-msgstr "dùng chiến lược hòa trộn đã cho"
+msgid "not a git repository"
+msgstr "không phải là kho git"
 
-#: builtin/rebase.c:1147 builtin/revert.c:115
-msgid "option"
-msgstr "tùy chọn"
+#, c-format
+msgid "negative value for http.postBuffer; defaulting to %d"
+msgstr "giá trị âm cho http.postBuffer; đặt thành mặc định là %d"
 
-#: builtin/rebase.c:1148
-msgid "pass the argument through to the merge strategy"
-msgstr "chuyển thao số đến chiến lược hòa trộn"
+msgid "Delegation control is not supported with cURL < 7.22.0"
+msgstr "Điều khiển giao quyền không được hỗ trợ với cURL < 7.22.0"
 
-#: builtin/rebase.c:1151
-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"
+msgid "Public key pinning not supported with cURL < 7.39.0"
+msgstr "Chốt khóa công không được hỗ trợ với cURL < 7.39.0"
 
-#: builtin/rebase.c:1154
-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"
+msgid "CURLSSLOPT_NO_REVOKE not supported with cURL < 7.44.0"
+msgstr "CURLSSLOPT_NO_REVOKE không được hỗ trợ với cURL < 7.44.0"
 
-#: builtin/rebase.c:1156
-msgid "apply all changes, even those already present upstream"
+#, c-format
+msgid "Unsupported SSL backend '%s'. Supported SSL backends:"
 msgstr ""
-"áp dụng mọi thay đổi, ngay cả khi những thứ đó đã sẵn có ở thượng nguồn"
+"Không hỗ trợ ứng dụng SSL chạy phía sau “%s”. Hỗ trợ ứng dụng SSL chạy phía "
+"sau:"
 
-#: builtin/rebase.c:1177
-msgid "It looks like 'git am' is in progress. Cannot rebase."
+#, c-format
+msgid "Could not set SSL backend to '%s': cURL was built without SSL backends"
 msgstr ""
-"Hình như đang trong quá trình thực hiện lệnh “git am”. Không thể rebase."
-
-#: builtin/rebase.c:1208
-msgid "--preserve-merges was replaced by --rebase-merges"
-msgstr "--preserve-merges đã bị thay thế bằng --rebase-merges"
+"Không thể đặt ứng dụng chạy SSL phía sau “%s”: cURL được biên dịch không có "
+"sự hỗ trợ ứng dụng chạy phía sau SSL"
 
-#: builtin/rebase.c:1230
-msgid "No rebase in progress?"
-msgstr "Không có tiến trình rebase nào phải không?"
+#, c-format
+msgid "Could not set SSL backend to '%s': already set"
+msgstr "Không thể đặt ứng dụng chạy sau SSL cho “%s”: đã đặt rồi"
 
-#: builtin/rebase.c:1234
-msgid "The --edit-todo action can only be used during interactive rebase."
+#, c-format
+msgid ""
+"unable to update url base from redirection:\n"
+"  asked for: %s\n"
+"   redirect: %s"
 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."
+"không thể cập nhật dựa trên cơ sở url từ chuyển hướng:\n"
+"      hỏi cho: %s\n"
+" chuyển hướng: %s"
 
-#: builtin/rebase.c:1257 t/helper/test-fast-rebase.c:122
-msgid "Cannot read HEAD"
-msgstr "Không thể đọc HEAD"
+msgid "Author identity unknown\n"
+msgstr "Chưa biết định danh tác giả\n"
+
+msgid "Committer identity unknown\n"
+msgstr "Chưa biết định danh người chuyển giao\n"
 
-#: builtin/rebase.c:1269
 msgid ""
-"You must edit all merge conflicts and then\n"
-"mark them as resolved using git add"
+"\n"
+"*** Please tell me who you are.\n"
+"\n"
+"Run\n"
+"\n"
+"  git config --global user.email \"you@example.com\"\n"
+"  git config --global user.name \"Your Name\"\n"
+"\n"
+"to set your account's default identity.\n"
+"Omit --global to set the identity only in this repository.\n"
+"\n"
 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"
+"\n"
+"*** Vui lòng cho biết bạn là ai.\n"
+"\n"
+"Chạy\n"
+"\n"
+"  git config --global user.email \"bạn@ví_dụ.com\"\n"
+"  git config --global user.name \"Tên Của Bạn\"\n"
+"\n"
+"để đặt định danh mặc định cho tài khoản của bạn.\n"
+"Bỏ tùy chọn --global nếu chỉ định danh riêng cho kho này.\n"
+"\n"
 
-#: builtin/rebase.c:1287
-msgid "could not discard worktree changes"
-msgstr "không thể loại bỏ các thay đổi cây-làm-việc"
+msgid "no email was given and auto-detection is disabled"
+msgstr "không đưa ra địa chỉ thư điện tử và auto-detection bị tắt"
 
-#: builtin/rebase.c:1308
 #, c-format
-msgid "could not move back to %s"
-msgstr "không thể quay trở lại %s"
+msgid "unable to auto-detect email address (got '%s')"
+msgstr "không thể tự dò tìm địa chỉ thư điện tử (nhận “%s”)"
+
+msgid "no name was given and auto-detection is disabled"
+msgstr "chưa chỉ ra tên và tự-động-dò-tìm bị tắt"
 
-#: builtin/rebase.c:1354
 #, c-format
-msgid ""
-"It seems that there is already a %s directory, and\n"
-"I wonder if you are in the middle of another rebase.  If that is the\n"
-"case, please try\n"
-"\t%s\n"
-"If that is not the case, please\n"
-"\t%s\n"
-"and run me again.  I am stopping in case you still have something\n"
-"valuable there.\n"
-msgstr ""
-"Hình như là ở đây sẵn có một thư mục %s, và\n"
-"Tôi tự hỏi có phải bạn đang ở giữa một lệnh rebase khác. Nếu đúng là\n"
-"như vậy, xin hãy thử\n"
-"\t%s\n"
-"Nếu không phải thế, hãy thử\n"
-"\t%s\n"
-"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"
+msgid "unable to auto-detect name (got '%s')"
+msgstr "không thể dò-tìm-tự động tên (đã nhận “%s”)"
 
-#: builtin/rebase.c:1382
-msgid "switch `C' expects a numerical value"
-msgstr "tùy chọn “%c” cần một giá trị bằng số"
+#, c-format
+msgid "empty ident name (for <%s>) not allowed"
+msgstr "không cho phép tên định danh là rỗng (cho <%s>)"
 
-#: builtin/rebase.c:1424
 #, c-format
-msgid "Unknown mode: %s"
-msgstr "Không hiểu chế độ: %s"
+msgid "name consists only of disallowed characters: %s"
+msgstr "tên chỉ được phép bao gồm các ký tự sau: %s"
 
-#: builtin/rebase.c:1463
-msgid "--strategy requires --merge or --interactive"
-msgstr "--strategy cần --merge hay --interactive"
+msgid "expected 'tree:<depth>'"
+msgstr "cần “tree:<depth>”"
 
-#: builtin/rebase.c:1492
-msgid "apply options and merge options cannot be used together"
-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 với nhau"
+msgid "sparse:path filters support has been dropped"
+msgstr "việc hỗ trợ bộ lọc sparse:đường/dẫn đã bị bỏ"
 
-#: builtin/rebase.c:1505
 #, 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"
+msgid "'%s' for 'object:type=<type>' is not a valid object type"
+msgstr "“%s” dành cho “object:type=<type>” không phải là kiểu đối tượng hợp lệ"
 
-#: builtin/rebase.c:1534
-msgid "--reschedule-failed-exec requires --exec or --interactive"
-msgstr "--reschedule-failed-exec cần --exec hay --interactive"
+#, c-format
+msgid "invalid filter-spec '%s'"
+msgstr "đặc tả bộ lọc không hợp lệ “%s”"
 
-#: builtin/rebase.c:1565
 #, c-format
-msgid "invalid upstream '%s'"
-msgstr "thượng nguồn không hợp lệ “%s”"
+msgid "must escape char in sub-filter-spec: '%c'"
+msgstr "phải thoát char trong sub-filter-spec: “%c”"
 
-#: builtin/rebase.c:1571
-msgid "Could not create new root commit"
-msgstr "Không thể tạo lần chuyển giao gốc mới"
+msgid "expected something after combine:"
+msgstr "mong đợi một cái gì đó sau khi kết hợp:"
+
+msgid "multiple filter-specs cannot be combined"
+msgstr "không thể tổ hợp nhiều đặc tả kiểu lọc"
+
+msgid "unable to upgrade repository format to support partial clone"
+msgstr "không thể nâng cấp định định dạng kho chứa để hỗ trợ nhân bản cục bộ"
+
+msgid "args"
+msgstr "các_tham_số"
+
+msgid "object filtering"
+msgstr "lọc đối tượng"
 
-#: builtin/rebase.c:1597
 #, 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"
+msgid "unable to access sparse blob in '%s'"
+msgstr "không thể truy cập các blob rải rác trong “%s”"
 
-#: builtin/rebase.c:1600
 #, 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"
+msgid "unable to parse sparse filter data in %s"
+msgstr "không thể phân tích dữ liệu bộ lọc rải rác trong %s"
 
-#: builtin/rebase.c:1609
 #, 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”"
+msgid "entry '%s' in tree %s has tree mode, but is not a tree"
+msgstr "mục “%s” trong cây %s có nút cây, nhưng không phải là một cây"
+
+#, c-format
+msgid "entry '%s' in tree %s has blob mode, but is not a blob"
+msgstr "mục “%s” trong cây %s có nút blob, nhưng không phải là một blob"
+
+#, c-format
+msgid "unable to load root tree for commit %s"
+msgstr "không thể tải cây gốc cho lần chuyển giao “%s”"
+
+#, c-format
+msgid ""
+"Unable to create '%s.lock': %s.\n"
+"\n"
+"Another git process seems to be running in this repository, e.g.\n"
+"an editor opened by 'git commit'. Please make sure all processes\n"
+"are terminated then try again. If it still fails, a git process\n"
+"may have crashed in this repository earlier:\n"
+"remove the file manually to continue."
+msgstr ""
+"Không thể tạo “%s.lock”: %s.\n"
+"\n"
+"Tiến trình git khác có lẽ đang chạy ở kho này, ví dụ\n"
+"một trình soạn thảo được mở bởi “git commit”. Vui lòng chắc chắn\n"
+"rằng mọi tiến trình đã chấm dứt và sau đó thử lại. Nếu vẫn lỗi,\n"
+"một tiến trình git có lẽ đã đổ vỡ khi thực hiện ở kho này trước đó:\n"
+"gõ bỏ tập tin một cách thủ công để tiếp tục."
 
-#: builtin/rebase.c:1636
 #, c-format
-msgid "no such branch/commit '%s'"
-msgstr "không có nhánh/lần chuyển giao “%s” như thế"
+msgid "Unable to create '%s.lock': %s"
+msgstr "Không thể tạo “%s.lock”: %s"
 
-#: builtin/rebase.c:1647 builtin/submodule--helper.c:43
-#: builtin/submodule--helper.c:2477
 #, c-format
-msgid "No such ref: %s"
-msgstr "Không có tham chiếu nào như thế: %s"
-
-#: builtin/rebase.c:1658
-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"
+msgid "unexpected line: '%s'"
+msgstr "dòng không cần: “%s”"
 
-#: builtin/rebase.c:1679
-msgid "Please commit or stash them."
-msgstr "Xin hãy chuyển giao hoặc tạm cất (stash) chúng."
+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)"
 
-#: builtin/rebase.c:1714
-msgid "HEAD is up to date."
-msgstr "HEAD đã cập nhật."
+msgid "quoted CRLF detected"
+msgstr "phát hiện CRLF được trích dẫn"
 
-#: builtin/rebase.c:1716
 #, 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"
+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"
 
-#: builtin/rebase.c:1724
-msgid "HEAD is up to date, rebase forced."
-msgstr "HEAD hiện đã được cập nhật rồi, bị ép buộc rebase."
+#, c-format
+msgid "Failed to merge submodule %s (not checked out)"
+msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s” (không lấy ra được)"
 
-#: builtin/rebase.c:1726
 #, 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"
+msgid "Failed to merge submodule %s (commits not present)"
+msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s” (lần chuyển giao không hiện diện)"
 
-#: builtin/rebase.c:1734
-msgid "The pre-rebase hook refused to rebase."
-msgstr "Móc (hook) pre-rebase từ chối rebase."
+#, c-format
+msgid "Failed to merge submodule %s (commits don't follow merge-base)"
+msgstr ""
+"Gặp lỗi khi hòa trộn mô-đun-con “%s” (lần chuyển giao không theo sau nền-hòa-"
+"trộn)"
 
-#: builtin/rebase.c:1741
 #, c-format
-msgid "Changes to %s:\n"
-msgstr "Thay đổi thành %s:\n"
+msgid "Note: Fast-forwarding submodule %s to %s"
+msgstr "Chú ý: Chuyển-tiếp-nhanh mô-đun-con “%s” sang “%s”"
 
-#: builtin/rebase.c:1744
 #, c-format
-msgid "Changes from %s to %s:\n"
-msgstr "Thay đổi từ %s thành %s:\n"
+msgid "Failed to merge submodule %s"
+msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s”"
 
-#: builtin/rebase.c:1769
 #, c-format
-msgid "First, rewinding head to replay your work on top of it...\n"
+msgid ""
+"Failed to merge submodule %s, but a possible merge resolution exists:\n"
+"%s\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:1781
-msgid "Could not detach HEAD"
-msgstr "Không thể tách rời HEAD"
+"Gặp lỗi khi hòa trộn mô-đun-con “%s”, nhưng có cách giải quyết:\n"
+"%s\n"
 
-#: builtin/rebase.c:1790
 #, c-format
-msgid "Fast-forwarded %s to %s.\n"
-msgstr "Chuyển-tiếp-nhanh %s đến %s.\n"
-
-#: builtin/receive-pack.c:35
-msgid "git receive-pack <git-dir>"
-msgstr "git receive-pack <thư-mục-git>"
-
-#: builtin/receive-pack.c:1263
 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"
-"with what you pushed, and will require 'git reset --hard' to match\n"
-"the work tree to HEAD.\n"
+"If this is correct simply add it to the index for example\n"
+"by using:\n"
 "\n"
-"You can set the 'receive.denyCurrentBranch' configuration variable\n"
-"to 'ignore' or 'warn' in the remote repository to allow pushing into\n"
-"its current branch; however, this is not recommended unless you\n"
-"arranged to update its work tree to match what you pushed in some\n"
-"other way.\n"
+"  git update-index --cacheinfo 160000 %s \"%s\"\n"
 "\n"
-"To squelch this message and still keep the default behaviour, set\n"
-"'receive.denyCurrentBranch' configuration variable to 'refuse'."
+"which will accept this suggestion.\n"
 msgstr ""
-"Theo mặc định, việc cập nhật nhánh hiện tại trong một kho không-thuần\n"
-"bị từ chối, bởi vì nó sẽ làm cho chỉ mục và cây làm việc mâu thuẫn với\n"
-"cái mà bạn đẩy lên, và sẽ yêu cầu lệnh “git reset --hard” để mà làm\n"
-"cho cây làm việc khớp với HEAD.\n"
+"Nếu đây là đúng đơn giản thêm nó vào mục lục ví dụ\n"
+"bằng cách dùng:\n"
 "\n"
-"Bạn có thể đặt biến cấu hình “receive.denyCurrentBranch” thành\n"
-"“ignore” hay “warn” trong kho máy chủ để cho phép đẩy lên nhánh\n"
-"hiện tại của nó; tuy nhiên, không nên làm như thế trừ phi bạn\n"
-"sắp đặt để cập nhật cây làm việc của nó tương ứng với cái mà bạn đẩy\n"
-"lên theo cách nào đó.\n"
+"  git update-index --cacheinfo 160000 %s \"%s\"\n"
 "\n"
-"Để 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”."
+"cái mà sẽ chấp nhận gợi ý này.\n"
 
-#: builtin/receive-pack.c:1283
+#, c-format
 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"
-"\n"
-"You can set 'receive.denyDeleteCurrent' configuration variable to\n"
-"'warn' or 'ignore' in the remote repository to allow deleting the\n"
-"current branch, with or without a warning message.\n"
-"\n"
-"To squelch this message, you can set it to 'refuse'."
+"Failed to merge submodule %s, but multiple possible merges exist:\n"
+"%s"
 msgstr ""
-"Theo mặc định, việc cập xóa nhánh hiện tại bị từ chối, bởi vì\n"
-"lệnh “git clone” tiếp theo sẽ không có tác dụng trong việc lấy\n"
-"ra bất kỳ tập tin nào, dẫn đến hỗn loạn\n"
-"\n"
-"Bạn có thể đặt biến cấu hình “receive.denyDeleteCurrent” thành\n"
-"“warn” hay “ignore” trong kho máy chủ để cho phép đẩy xóa nhánh\n"
-"hiện tại của nó có hoặc không cảnh báo.\n"
-"\n"
-"Để chấm dứt lời nhắn này, bạn hãy đặt nó thành “refuse”."
+"Gặp lỗi khi hòa trộn mô-đun-con “%s”, nhưng có nhiều cách giải quyết:\n"
+"%s"
 
-#: builtin/receive-pack.c:2476
-msgid "quiet"
-msgstr "im lặng"
+msgid "Failed to execute internal merge"
+msgstr "Gặp lỗi khi thực hiện trộn nội bộ"
 
-#: builtin/receive-pack.c:2491
-msgid "you must specify a directory"
-msgstr "bạn phải chỉ định thư mục"
+#, c-format
+msgid "Unable to add %s to database"
+msgstr "Không thể thêm %s vào cơ sở dữ liệu"
 
-#: builtin/reflog.c:9
-msgid "git reflog [show] [<log-options>] [<ref>]"
-msgstr "git reflog [show] [<các tùy chọn>] [<tham chiếu>]"
+#, c-format
+msgid "Auto-merging %s"
+msgstr "Tự-động-hòa-trộn %s"
 
-#: builtin/reflog.c:12
+#, c-format
 msgid ""
-"git reflog expire [--expire=<time>] [--expire-unreachable=<time>]\n"
-"                  [--rewrite] [--updateref] [--stale-fix]\n"
-"                  [--dry-run | -n] [--verbose] [--all [--single-worktree] | "
-"<refs>...]"
+"CONFLICT (implicit dir rename): Existing file/dir at %s in the way of "
+"implicit directory rename(s) putting the following path(s) there: %s."
 msgstr ""
-"git reflog expire [--expire=<time>] [--expire-unreachable=<time>]\n"
-"                  [--rewrite] [--updateref] [--stale-fix]\n"
-"                  [--dry-run | -n] [--verbose] [--all [--single-worktree] | "
-"<refs>...]"
+"XUNG ĐỘT: (ngầm đổi tên thư mục): Tập tin/thư mục đã sẵn có tại %s theo cách "
+"của các đổi tên thư mục ngầm đặt (các) đường dẫn sau ở đây: %s."
 
-#: builtin/reflog.c:17
+#, c-format
 msgid ""
-"git reflog delete [--rewrite] [--updateref]\n"
-"                  [--dry-run | -n] [--verbose] <ref>@{<specifier>}..."
+"CONFLICT (implicit dir rename): Cannot map more than one path to %s; "
+"implicit directory renames tried to put these paths there: %s"
 msgstr ""
-"git reflog delete [--rewrite] [--updateref]\n"
-"                  [--dry-run | -n] [--verbose] <ref>@{<specifier>}..."
-
-#: builtin/reflog.c:21
-msgid "git reflog exists <ref>"
-msgstr "git reflog exists <tham_chiếu>"
+"XUNG ĐỘT: (ngầm đổi tên thư mục): Không thể ánh xạ một đường dẫn thành %s; "
+"các đổi tên thư mục ngầm cố đặt các đường dẫn ở đây: %s"
 
-#: builtin/reflog.c:197 builtin/reflog.c:211
 #, c-format
-msgid "invalid timestamp '%s' given to '--%s'"
-msgstr "dấu vết thời gian không hợp lệ '%s' đưa cho '--%s'"
-
-#: builtin/reflog.c:240 builtin/reflog.c:359
-msgid "do not actually prune any entries"
-msgstr "thực tế không cắt ngắn bất kỳ mục tin nào"
-
-#: builtin/reflog.c:243 builtin/reflog.c:362
 msgid ""
-"rewrite the old SHA1 with the new SHA1 of the entry that now precedes it"
-msgstr "ghi lại SHA1 cũ bằng một SHA1 mới của mục tin mà giờ đứng trước nó"
+"CONFLICT (directory rename split): Unclear where to rename %s to; it was "
+"renamed to multiple other directories, with no destination getting a "
+"majority of the files."
+msgstr ""
+"XUNG ĐỘT: (thư mục đổi tên chia tách): Không rõ ràng nơi để đổi tên %s "
+"thành; nó đã bị đổi tên thành nhiều thư mục khác, với không đích đến nhận "
+"một phần nhiều của các tập tin."
 
-#: builtin/reflog.c:246 builtin/reflog.c:365
-msgid "update the reference to the value of the top reflog entry"
-msgstr "cập nhật tham chiếu đến giá trị của mục tin reflog trên cùng"
+#, c-format
+msgid ""
+"WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
+"renamed."
+msgstr ""
+"CẢNH BÁO: tránh áp dụng %s -> %s đổi thên thành %s, bởi vì bản thân %s cũng "
+"bị đổi tên."
 
-#: builtin/reflog.c:248 builtin/reflog.c:367
-msgid "print extra information on screen"
-msgstr "xuất thông tin thêm trên màn hình"
+#, c-format
+msgid ""
+"Path updated: %s added in %s inside a directory that was renamed in %s; "
+"moving it to %s."
+msgstr ""
+"Đường dẫn đã được cập nhật: %s được thêm vào trong %s bên trong một thư mục "
+"đã được đổi tên trong %s; di chuyển nó đến %s."
 
-#: builtin/reflog.c:249 builtin/reflog.c:253
-msgid "timestamp"
-msgstr "dấu vết thời gian"
+#, c-format
+msgid ""
+"Path updated: %s renamed to %s in %s, inside a directory that was renamed in "
+"%s; moving it to %s."
+msgstr ""
+"Đường dẫn đã được cập nhật: %s được đổi tên thành %s trong %s, bên trong một "
+"thư mục đã được đổi tên trong %s; di chuyển nó đến %s."
 
-#: builtin/reflog.c:250
-msgid "prune entries older than the specified time"
-msgstr "cắt cụt các mục tin cũ hơn khoảng thời gian đã cho"
+#, c-format
+msgid ""
+"CONFLICT (file location): %s added in %s inside a directory that was renamed "
+"in %s, suggesting it should perhaps be moved to %s."
+msgstr ""
+"XUNG ĐỘT (vị trí tệp): %s được thêm vào trong %s trong một thư mục đã được "
+"đổi tên thành %s, đoán là nó nên được di chuyển đến %s."
 
-#: builtin/reflog.c:254
+#, c-format
 msgid ""
-"prune entries older than <time> that are not reachable from the current tip "
-"of the branch"
+"CONFLICT (file location): %s renamed to %s in %s, inside a directory that "
+"was renamed in %s, suggesting it should perhaps be moved to %s."
 msgstr ""
-"cắt cụt các mục tin cũ hơn <thời gian> cái mà không thể tiếp cận được từ "
-"đỉnh hiện tại của nhánh"
+"XUNG ĐỘT (vị trí tệp): %s được đổi tên thành %s trong %s, bên trong một thư "
+"mục đã được đổi tên thành %s, đoán là nó nên được di chuyển đến %s."
 
-#: builtin/reflog.c:258
-msgid "prune any reflog entries that point to broken commits"
-msgstr "cắt ngắn bất kỳ mục tin reflog cái mà chỉ đến lần chuyển giao hỏng"
+#, c-format
+msgid "CONFLICT (rename/rename): %s renamed to %s in %s and to %s in %s."
+msgstr ""
+"XUNG ĐỘT (đổi-tên/đổi-tên): Đổi tên %s->%s trong %s và thành %s trong %s."
 
-#: builtin/reflog.c:259
-msgid "process the reflogs of all references"
-msgstr "xử lý các reflogs cho mọi tham chiếu"
+#, c-format
+msgid ""
+"CONFLICT (rename involved in collision): rename of %s -> %s has content "
+"conflicts AND collides with another path; this may result in nested conflict "
+"markers."
+msgstr ""
+"XUNG ĐỘT (đổi tên liên quan đến va chạm): đổi tên %s -> %s xung đột nội dung "
+"VÀ va chạm với một đường dẫn khác; điều này có thể dẫn đến tạo ra các xung "
+"đột lồng nhau."
 
-#: builtin/reflog.c:261
-msgid "limits processing to reflogs from the current worktree only"
-msgstr "giới hạn xử lý với reflogs chỉ từ thư mục làm việc hiện tại"
+#, c-format
+msgid "CONFLICT (rename/delete): %s renamed to %s in %s, but deleted in %s."
+msgstr ""
+"XUNG ĐỘT (đổi-tên/xóa): Đổi tên %s->%s trong %s, nhưng lại bị xóa trong %s."
 
-#: builtin/reflog.c:294
 #, c-format
-msgid "Marking reachable objects..."
-msgstr "Đánh dấu các đối tượng tiếp cận được…"
+msgid "cannot read object %s"
+msgstr "không thể đọc đối tượng %s"
 
-#: builtin/reflog.c:338
 #, c-format
-msgid "%s points nowhere!"
-msgstr "%s chẳng chỉ đến đâu cả!"
+msgid "object %s is not a blob"
+msgstr "đối tượng %s không phải là một blob"
 
-#: builtin/reflog.c:374
-msgid "no reflog specified to delete"
-msgstr "chưa chỉ ra reflog để xóa"
+#, c-format
+msgid ""
+"CONFLICT (file/directory): directory in the way of %s from %s; moving it to "
+"%s instead."
+msgstr ""
+"XUNG ĐỘT (tập tin/thư mục): thư mục theo cách của %s từ %s; thay vào đó, di "
+"chuyển nó đến %s."
 
-#: builtin/reflog.c:396
 #, c-format
-msgid "invalid ref format: %s"
-msgstr "định dạng tham chiếu không hợp lệ: %s"
-
-#: builtin/remote.c:19
 msgid ""
-"git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
-"mirror=<fetch|push>] <name> <url>"
+"CONFLICT (distinct types): %s had different types on each side; renamed both "
+"of them so each can be recorded somewhere."
 msgstr ""
-"git remote add [-t <nhánh>] [-m <master>] [-f] [--tags|--no-tags] [--"
-"mirror=<fetch|push>] <tên> <url>"
+"XUNG ĐỘT (các kiểu riêng biệt): %s có các kiểu khác nhau ở mỗi bên; đã đổi "
+"tên cả hai trong số chúng để mỗi cái có thể được ghi lại ở đâu đó."
 
-#: builtin/remote.c:20 builtin/remote.c:40
-msgid "git remote rename [--[no-]progress] <old> <new>"
-msgstr "git remote rename [--[no-]progress] <tên-cũ> <tên-mới>"
+#, c-format
+msgid ""
+"CONFLICT (distinct types): %s had different types on each side; renamed one "
+"of them so each can be recorded somewhere."
+msgstr ""
+"XUNG ĐỘT (các kiểu riêng biệt): %s có các loại khác nhau ở mỗi bên; đã đổi "
+"tên một trong số chúng để mỗi cái có thể được ghi lại ở đâu đó."
 
-#: builtin/remote.c:21 builtin/remote.c:45
-msgid "git remote remove <name>"
-msgstr "git remote remove <tên>"
+msgid "content"
+msgstr "nội dung"
 
-#: builtin/remote.c:22 builtin/remote.c:50
-msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
-msgstr "git remote set-head <tên> (-a | --auto | -d | --delete | <nhánh>)"
+msgid "add/add"
+msgstr "thêm/thêm"
 
-#: builtin/remote.c:23
-msgid "git remote [-v | --verbose] show [-n] <name>"
-msgstr "git remote [-v | --verbose] show [-n] <tên>"
+msgid "submodule"
+msgstr "mô-đun-con"
 
-#: builtin/remote.c:24
-msgid "git remote prune [-n | --dry-run] <name>"
-msgstr "git remote prune [-n | --dry-run] <tên>"
+#, c-format
+msgid "CONFLICT (%s): Merge conflict in %s"
+msgstr "XUNG ĐỘT (%s): Xung đột hòa trộn trong %s"
 
-#: builtin/remote.c:25
+#, c-format
 msgid ""
-"git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)...]"
+"CONFLICT (modify/delete): %s deleted in %s and modified in %s.  Version %s "
+"of %s left in tree."
 msgstr ""
-"git remote [-v | --verbose] update [-p | --prune] [(<nhóm> | <máy-chủ>)…]"
-
-#: builtin/remote.c:26
-msgid "git remote set-branches [--add] <name> <branch>..."
-msgstr "git remote set-branches [--add] <tên> <nhánh>…"
-
-#: builtin/remote.c:27 builtin/remote.c:76
-msgid "git remote get-url [--push] [--all] <name>"
-msgstr "git remote set-url [--push] [--all] <tên>"
-
-#: builtin/remote.c:28 builtin/remote.c:81
-msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
-msgstr "git remote set-url [--push] <tên> <url-mới> [<url-cũ>]"
+"XUNG ĐỘT (sửa/xóa): %s bị xóa trong %s và sửa trong %s. Phiên bản %s của %s "
+"còn lại trong cây (tree)."
 
-#: builtin/remote.c:29 builtin/remote.c:82
-msgid "git remote set-url --add <name> <newurl>"
-msgstr "git remote set-url --add <tên> <url-mới>"
+#, c-format
+msgid ""
+"Note: %s not up to date and in way of checking out conflicted version; old "
+"copy renamed to %s"
+msgstr ""
+"Lưu ý: %s không được cập nhật và theo cách lấy ra phiên bản xung đột; bản "
+"sao cũ được đổi tên thành %s"
 
-#: builtin/remote.c:30 builtin/remote.c:83
-msgid "git remote set-url --delete <name> <url>"
-msgstr "git remote set-url --delete <tên> <url>"
+#. TRANSLATORS: The %s arguments are: 1) tree hash of a merge
+#. base, and 2-3) the trees for the two trees we're merging.
+#.
+#, c-format
+msgid "collecting merge info failed for trees %s, %s, %s"
+msgstr "thu thập thông tin hòa trộn gặp lỗi cho cây %s, %s, %s"
 
-#: builtin/remote.c:35
-msgid "git remote add [<options>] <name> <url>"
-msgstr "git remote add [<các tùy chọn>] <tên> <url>"
+msgid "(bad commit)\n"
+msgstr "(commit sai)\n"
 
-#: builtin/remote.c:55
-msgid "git remote set-branches <name> <branch>..."
-msgstr "git remote set-branches <tên> <nhánh>…"
+#, c-format
+msgid "add_cacheinfo failed for path '%s'; merge aborting."
+msgstr "add_cacheinfo gặp lỗi đối với đường dẫn “%s”; việc hòa trộn bị bãi bỏ."
 
-#: builtin/remote.c:56
-msgid "git remote set-branches --add <name> <branch>..."
-msgstr "git remote set-branches --add <tên> <nhánh>…"
+#, c-format
+msgid "add_cacheinfo failed to refresh for path '%s'; merge aborting."
+msgstr ""
+"add_cacheinfo gặp lỗi khi làm mới đối với đường dẫn “%s”; việc hòa trộn bị "
+"bãi bỏ."
 
-#: builtin/remote.c:61
-msgid "git remote show [<options>] <name>"
-msgstr "git remote show [<các tùy chọn>] <tên>"
+#, c-format
+msgid "failed to create path '%s'%s"
+msgstr "gặp lỗi khi tạo đường dẫn “%s”%s"
 
-#: builtin/remote.c:66
-msgid "git remote prune [<options>] <name>"
-msgstr "git remote prune [<các tùy chọn>] <tên>"
+#, c-format
+msgid "Removing %s to make room for subdirectory\n"
+msgstr "Gỡ bỏ %s để tạo chỗ (room) cho thư mục con\n"
 
-#: builtin/remote.c:71
-msgid "git remote update [<options>] [<group> | <remote>]..."
-msgstr "git remote update [<các tùy chọn>] [<nhóm> | <máy-chủ>]…"
+msgid ": perhaps a D/F conflict?"
+msgstr ": có lẽ là một xung đột D/F?"
 
-#: builtin/remote.c:100
 #, c-format
-msgid "Updating %s"
-msgstr "Đang cập nhật %s"
+msgid "refusing to lose untracked file at '%s'"
+msgstr "từ chối đóng tập tin không được theo dõi tại “%s”"
 
-#: builtin/remote.c:102
 #, c-format
-msgid "Could not fetch %s"
-msgstr "Không thể lấy“%s” về"
+msgid "blob expected for %s '%s'"
+msgstr "mong đợi đối tượng blob cho %s “%s”"
 
-#: builtin/remote.c:132
-msgid ""
-"--mirror is dangerous and deprecated; please\n"
-"\t use --mirror=fetch or --mirror=push instead"
-msgstr ""
-"--mirror nguy hiểm và không dùng nữa; xin hãy\n"
-"\t sử dụng tùy chọn --mirror=fetch hoặc --mirror=push để thay thế"
+#, c-format
+msgid "failed to open '%s': %s"
+msgstr "gặp lỗi khi mở “%s”: %s"
 
-#: builtin/remote.c:149
 #, c-format
-msgid "unknown mirror argument: %s"
-msgstr "không hiểu tham số máy bản sao (mirror): %s"
+msgid "failed to symlink '%s': %s"
+msgstr "gặp lỗi khi tạo liên kết mềm (symlink) “%s”: %s"
 
-#: builtin/remote.c:165
-msgid "fetch the remote branches"
-msgstr "lấy về các nhánh từ máy chủ"
+#, c-format
+msgid "do not know what to do with %06o %s '%s'"
+msgstr "không hiểu phải làm gì với %06o %s “%s”"
 
-#: builtin/remote.c:167
-msgid "import all tags and associated objects when fetching"
-msgstr "nhập vào tất cả các đối tượng thẻ và thành phần liên quan khi lấy về"
+#, c-format
+msgid "Fast-forwarding submodule %s to the following commit:"
+msgstr "Chuyển-tiếp-nhanh mô-đun-con “%s” đến lần chuyển giao sau đây:"
 
-#: builtin/remote.c:170
-msgid "or do not fetch any tag at all (--no-tags)"
-msgstr "hoặc không lấy về bất kỳ thẻ nào (--no-tags)"
+#, c-format
+msgid "Fast-forwarding submodule %s"
+msgstr "Chuyển-tiếp-nhanh mô-đun-con “%s”"
 
-#: builtin/remote.c:172
-msgid "branch(es) to track"
-msgstr "các nhánh để theo dõi"
+#, c-format
+msgid "Failed to merge submodule %s (merge following commits not found)"
+msgstr ""
+"Gặp lỗi khi hòa trộn mô-đun-con “%s” (không tìm thấy các lần chuyển giao "
+"theo sau hòa trộn)"
 
-#: builtin/remote.c:173
-msgid "master branch"
-msgstr "nhánh master"
+#, c-format
+msgid "Failed to merge submodule %s (not fast-forward)"
+msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s” (không chuyển tiếp nhanh được)"
 
-#: builtin/remote.c:175
-msgid "set up remote as a mirror to push to or fetch from"
-msgstr "đặt máy chủ (remote) như là một máy bản sao để push hay fetch từ đó"
+msgid "Found a possible merge resolution for the submodule:\n"
+msgstr "Tìm thấy một giải pháp hòa trộn có thể cho mô-đun-con:\n"
 
-#: builtin/remote.c:187
-msgid "specifying a master branch makes no sense with --mirror"
-msgstr "đang chỉ định một nhánh master không hợp lý với tùy chọn --mirror"
+#, c-format
+msgid "Failed to merge submodule %s (multiple merges found)"
+msgstr "Gặp lỗi khi hòa trộn mô-đun-con “%s” (thấy nhiều hòa trộn đa trùng)"
 
-#: builtin/remote.c:189
-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”"
+#, c-format
+msgid "Error: Refusing to lose untracked file at %s; writing to %s instead."
+msgstr ""
+"Lỗi: từ chối đóng tập tin không được theo dõi tại “%s”; thay vào đó ghi vào "
+"%s."
 
-#: builtin/remote.c:196 builtin/remote.c:716
 #, c-format
-msgid "remote %s already exists."
-msgstr "máy chủ %s đã tồn tại rồi."
+msgid ""
+"CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
+"in tree."
+msgstr ""
+"XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s trong %s. Phiên bản %s của %s "
+"còn lại trong cây (tree)."
 
-#: builtin/remote.c:241
 #, c-format
-msgid "Could not setup master '%s'"
-msgstr "Không thể cài đặt nhánh master “%s”"
+msgid ""
+"CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
+"left in tree."
+msgstr ""
+"XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s đến %s trong %s. Phiên bản %s "
+"của %s còn lại trong cây (tree)."
 
-#: builtin/remote.c:323
 #, c-format
-msgid "unhandled branch.%s.rebase=%s; assuming 'true'"
-msgstr "nhánh chưa được quản lý.%s.rebase=%s; giả định là “true”"
+msgid ""
+"CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
+"in tree at %s."
+msgstr ""
+"XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s trong %s. Phiên bản %s của %s "
+"còn lại trong cây (tree) tại %s."
 
-#: builtin/remote.c:367
 #, 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"
+msgid ""
+"CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
+"left in tree at %s."
+msgstr ""
+"XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s đến %s trong %s. Phiên bản %s "
+"của %s còn lại trong cây (tree) tại %s."
 
-#: builtin/remote.c:461 builtin/remote.c:469
-msgid "(matching)"
-msgstr "(khớp)"
+msgid "rename"
+msgstr "đổi tên"
 
-#: builtin/remote.c:473
-msgid "(delete)"
-msgstr "(xóa)"
+msgid "renamed"
+msgstr "đã đổi tên"
 
-#: builtin/remote.c:664
 #, c-format
-msgid "could not set '%s'"
-msgstr "không thể đặt “%s”"
+msgid "Refusing to lose dirty file at %s"
+msgstr "Từ chối đóng tập tin không được theo dõi tại “%s”"
 
-#: builtin/remote.c:669
 #, c-format
-msgid ""
-"The %s configuration remote.pushDefault in:\n"
-"\t%s:%d\n"
-"now names the non-existent remote '%s'"
+msgid "Refusing to lose untracked file at %s, even though it's in the way."
 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”"
+"Từ chối đóng tập tin không được theo dõi tại “%s”, ngay cả khi nó ở trên "
+"đường."
 
-#: builtin/remote.c:707 builtin/remote.c:866 builtin/remote.c:973
 #, c-format
-msgid "No such remote: '%s'"
-msgstr "Không có máy chủ nào như vậy: “%s”"
+msgid "CONFLICT (rename/add): Rename %s->%s in %s.  Added %s in %s"
+msgstr ""
+"XUNG ĐỘT (đổi-tên/thêm): Đổi tên %s->%s trong %s. %s được thêm trong %s"
 
-#: builtin/remote.c:726
 #, 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”"
+msgid "%s is a directory in %s adding as %s instead"
+msgstr "%s là một thư mục trong %s thay vào đó thêm vào như là %s"
+
+#, c-format
+msgid "Refusing to lose untracked file at %s; adding as %s instead"
+msgstr ""
+"Từ chối đóng tập tin không được theo dõi tại “%s”; thay vào đó đang thêm "
+"thành %s"
 
-#: builtin/remote.c:746
 #, c-format
 msgid ""
-"Not updating non-default fetch refspec\n"
-"\t%s\n"
-"\tPlease update the configuration manually if necessary."
+"CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
+"\"->\"%s\" in \"%s\"%s"
 msgstr ""
-"Không cập nhật “non-default fetch respec”\n"
-"\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."
+"XUNG ĐỘT (đổi-tên/đổi-tên): Đổi tên \"%s\"->\"%s\" trong nhánh \"%s\" đổi "
+"tên \"%s\"->\"%s\" trong \"%s\"%s"
 
-#: builtin/remote.c:783
-msgid "Renaming remote references"
-msgstr "Đổi tên các tham chiếu máy chủ"
+msgid " (left unresolved)"
+msgstr " (cần giải quyết)"
 
-#: builtin/remote.c:794
 #, c-format
-msgid "deleting '%s' failed"
-msgstr "gặp lỗi khi xóa “%s”"
+msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
+msgstr ""
+"XUNG ĐỘT (đổi-tên/đổi-tên): Đổi tên %s->%s trong %s. Đổi tên %s->%s trong %s"
 
-#: builtin/remote.c:832
 #, c-format
-msgid "creating '%s' failed"
-msgstr "gặp lỗi khi tạo “%s”"
-
-#: builtin/remote.c:912
 msgid ""
-"Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
-"to delete it, use:"
-msgid_plural ""
-"Note: Some branches outside the refs/remotes/ hierarchy were not removed;\n"
-"to delete them, use:"
-msgstr[0] ""
-"Chú ý: Một số nhánh nằm ngoài hệ thống refs/remotes/ đã không được gỡ bỏ "
-"đi;\n"
-"để xóa đi, sử dụng:"
-
-#: builtin/remote.c:926
-#, c-format
-msgid "Could not remove config section '%s'"
-msgstr "Không thể gỡ bỏ phần cấu hình “%s”"
+"CONFLICT (directory rename split): Unclear where to place %s because "
+"directory %s was renamed to multiple other directories, with no destination "
+"getting a majority of the files."
+msgstr ""
+"XUNG ĐỘT: (thư mục đổi tên chia tách): Không rõ ràng để đặt địa điểm %s bởi "
+"vì thư mục %s đã bị đổi tên thành nhiều thư mục khác, với không đích đến "
+"nhận một phần nhiều của các tập tin."
 
-#: builtin/remote.c:1034
 #, 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)"
+msgid ""
+"CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
+">%s in %s"
+msgstr ""
+"XUNG ĐỘT (đổi-tên/đổi-tên): Đổi tên thư mục %s->%s trong %s. Đổi tên thư mục "
+"%s->%s trong %s"
 
-#: builtin/remote.c:1037
-msgid " tracked"
-msgstr " được theo dõi"
+msgid "modify"
+msgstr "sửa đổi"
 
-#: builtin/remote.c:1039
-msgid " stale (use 'git remote prune' to remove)"
-msgstr " cũ rích (dùng “git remote prune” để gỡ bỏ)"
+msgid "modified"
+msgstr "đã sửa"
 
-#: builtin/remote.c:1041
-msgid " ???"
-msgstr " ???"
+#, c-format
+msgid "Skipped %s (merged same as existing)"
+msgstr "Đã bỏ qua %s (đã có sẵn lần hòa trộn này)"
 
-#: builtin/remote.c:1082
 #, 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"
+msgid "Adding as %s instead"
+msgstr "Thay vào đó thêm vào %s"
 
-#: builtin/remote.c:1091
 #, 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"
+msgid "Removing %s"
+msgstr "Đang xóa %s"
+
+msgid "file/directory"
+msgstr "tập-tin/thư-mục"
+
+msgid "directory/file"
+msgstr "thư-mục/tập-tin"
 
-#: builtin/remote.c:1093
 #, c-format
-msgid "rebases interactively (with merges) onto remote %s"
+msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %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"
+"XUNG ĐỘT (%s): Ở đây không có thư mục nào có tên %s trong %s. Thêm %s như là "
+"%s"
 
-#: builtin/remote.c:1096
 #, c-format
-msgid "rebases onto remote %s"
-msgstr "thực hiện rebase trên máy chủ %s"
+msgid "Adding %s"
+msgstr "Thêm \"%s\""
 
-#: builtin/remote.c:1100
 #, c-format
-msgid " merges with remote %s"
-msgstr " hòa trộn với máy chủ %s"
+msgid "CONFLICT (add/add): Merge conflict in %s"
+msgstr "XUNG ĐỘT (thêm/thêm): Xung đột hòa trộn trong %s"
 
-#: builtin/remote.c:1103
 #, c-format
-msgid "merges with remote %s"
-msgstr "hòa trộn với máy chủ %s"
+msgid "merging of trees %s and %s failed"
+msgstr "hòa trộn các cây %s và %s gặp lỗi"
 
-#: builtin/remote.c:1106
-#, c-format
-msgid "%-*s    and with remote %s\n"
-msgstr "%-*s    và với máy chủ %s\n"
+msgid "Merging:"
+msgstr "Đang trộn:"
 
-#: builtin/remote.c:1149
-msgid "create"
-msgstr "tạo"
+#, c-format
+msgid "found %u common ancestor:"
+msgid_plural "found %u common ancestors:"
+msgstr[0] "tìm thấy %u tổ tiên chung:"
 
-#: builtin/remote.c:1152
-msgid "delete"
-msgstr "xóa"
+msgid "merge returned no commit"
+msgstr "hòa trộn không trả về lần chuyển giao nào"
 
-#: builtin/remote.c:1156
-msgid "up to date"
-msgstr "đã cập nhật"
+#, c-format
+msgid "Could not parse object '%s'"
+msgstr "Không thể phân tích đối tượng “%s”"
 
-#: builtin/remote.c:1159
-msgid "fast-forwardable"
-msgstr "có-thể-chuyển-tiếp-nhanh"
+msgid "failed to read the cache"
+msgstr "gặp lỗi khi đọc bộ nhớ đệm"
 
-#: builtin/remote.c:1162
-msgid "local out of date"
-msgstr "dữ liệu nội bộ đã cũ"
+msgid "multi-pack-index OID fanout is of the wrong size"
+msgstr "fanout OID nhiều gói chỉ mục có kích thước sai"
 
-#: builtin/remote.c:1169
 #, c-format
-msgid "    %-*s forces to %-*s (%s)"
-msgstr "    %-*s ép buộc thành %-*s (%s)"
+msgid "multi-pack-index file %s is too small"
+msgstr "tập tin đồ thị multi-pack-index %s quá nhỏ"
 
-#: builtin/remote.c:1172
 #, c-format
-msgid "    %-*s pushes to %-*s (%s)"
-msgstr "    %-*s đẩy lên thành %-*s (%s)"
+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"
 
-#: builtin/remote.c:1176
 #, c-format
-msgid "    %-*s forces to %s"
-msgstr "    %-*s ép buộc thành %s"
+msgid "multi-pack-index version %d not recognized"
+msgstr "không nhận ra phiên bản %d của multi-pack-index"
 
-#: builtin/remote.c:1179
 #, c-format
-msgid "    %-*s pushes to %s"
-msgstr "    %-*s đẩy lên thành %s"
+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"
 
-#: builtin/remote.c:1247
-msgid "do not query remotes"
-msgstr "không truy vấn các máy chủ"
+msgid "multi-pack-index missing required pack-name chunk"
+msgstr "multi-pack-index thiếu mảnh pack-name cần thiết"
 
-#: builtin/remote.c:1268
-#, c-format
-msgid "* remote %s"
-msgstr "* máy chủ %s"
+msgid "multi-pack-index missing required OID fanout chunk"
+msgstr "multi-pack-index thiếu mảnh OID fanout cần thiết"
 
-#: builtin/remote.c:1269
-#, c-format
-msgid "  Fetch URL: %s"
-msgstr "  URL để lấy về: %s"
+msgid "multi-pack-index missing required OID lookup chunk"
+msgstr "multi-pack-index thiếu mảnh OID lookup cần thiết"
 
-#: builtin/remote.c:1270 builtin/remote.c:1286 builtin/remote.c:1423
-msgid "(no URL)"
-msgstr "(không có URL)"
+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"
 
-#. TRANSLATORS: the colon ':' should align
-#. with the one in " Fetch URL: %s"
-#. translation.
-#.
-#: builtin/remote.c:1284 builtin/remote.c:1286
 #, c-format
-msgid "  Push  URL: %s"
-msgstr "  URL để đẩy lên: %s"
+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”"
 
-#: builtin/remote.c:1288 builtin/remote.c:1290 builtin/remote.c:1292
 #, c-format
-msgid "  HEAD branch: %s"
-msgstr "  Nhánh HEAD: %s"
-
-#: builtin/remote.c:1288
-msgid "(not queried)"
-msgstr "(không yêu cầu)"
+msgid "bad pack-int-id: %u (%u total packs)"
+msgstr "pack-int-id sai: %u (%u các gói tổng)"
 
-#: builtin/remote.c:1290
-msgid "(unknown)"
-msgstr "(không hiểu)"
+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ỏ"
 
-#: builtin/remote.c:1294
 #, 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"
+msgid "failed to add packfile '%s'"
+msgstr "gặp lỗi khi thêm tập tin gói “%s”"
 
-#: builtin/remote.c:1306
 #, c-format
-msgid "  Remote branch:%s"
-msgid_plural "  Remote branches:%s"
-msgstr[0] "  Những nhánh trên máy chủ:%s"
+msgid "failed to open pack-index '%s'"
+msgstr "gặp lỗi khi mở pack-index “%s”"
 
-#: builtin/remote.c:1309 builtin/remote.c:1335
-msgid " (status not queried)"
-msgstr " (trạng thái không được yêu cầu)"
+#, 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"
 
-#: builtin/remote.c:1318
-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”:"
+msgid "cannot store reverse index file"
+msgstr "không thể lưu trữ tập tin ghi mục lục đảo ngược"
 
-#: builtin/remote.c:1326
-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”"
+#, c-format
+msgid "could not parse line: %s"
+msgstr "không thể phân tích cú pháp dòng: %s"
 
-#: builtin/remote.c:1332
 #, 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:"
+msgid "malformed line: %s"
+msgstr "dòng dị hình: %s"
 
-#: builtin/remote.c:1353
-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ủ"
+msgid "ignoring existing multi-pack-index; checksum mismatch"
+msgstr "bỏ qua multi-pack-index sẵn có; tổng kiểm không khớp"
 
-#: builtin/remote.c:1355
-msgid "delete refs/remotes/<name>/HEAD"
-msgstr "xóa refs/remotes/<tên>/HEAD"
+msgid "could not load pack"
+msgstr "không thể tải gói"
 
-#: builtin/remote.c:1369
-msgid "Cannot determine remote HEAD"
-msgstr "Không thể xác định được HEAD máy chủ"
+#, c-format
+msgid "could not open index for %s"
+msgstr "không thể mở mục lục cho %s"
 
-#: builtin/remote.c:1371
-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:"
+msgid "Adding packfiles to multi-pack-index"
+msgstr "Đang thêm tập tin gói từ multi-pack-index"
 
-#: builtin/remote.c:1381
 #, c-format
-msgid "Could not delete %s"
-msgstr "Không thể xóa bỏ %s"
+msgid "unknown preferred pack: '%s'"
+msgstr "không hiểu \"preferred pack\": %s"
 
-#: builtin/remote.c:1389
 #, c-format
-msgid "Not a valid ref: %s"
-msgstr "Không phải là tham chiếu hợp lệ: %s"
+msgid "cannot select preferred pack %s with no objects"
+msgstr "không thể chọn gói ưa dùng %s với không đối tượng nào"
 
-#: builtin/remote.c:1391
 #, c-format
-msgid "Could not setup %s"
-msgstr "Không thể cài đặt %s"
+msgid "did not see pack-file %s to drop"
+msgstr "đã không thấy tập tin gói %s để mà xóa"
 
-#: builtin/remote.c:1409
 #, c-format
-msgid " %s will become dangling!"
-msgstr " %s sẽ trở thành không đầu (không được quản lý)!"
+msgid "preferred pack '%s' is expired"
+msgstr "\"preferred pack\" “%s” đã hết hạn"
 
-#: builtin/remote.c:1410
-#, c-format
-msgid " %s has become dangling!"
-msgstr " %s đã trở thành không đầu (không được quản lý)!"
+msgid "no pack files to index."
+msgstr "không có tập tin gói để đánh mục lục."
 
-#: builtin/remote.c:1419
-#, c-format
-msgid "Pruning %s"
-msgstr "Đang xén bớt %s"
+msgid "refusing to write multi-pack .bitmap without any objects"
+msgstr "từ chối ghi “multi-pack bitmap” mà không có bất kỳ đối tượng nào"
 
-#: builtin/remote.c:1420
-#, c-format
-msgid "URL: %s"
-msgstr "URL: %s"
+msgid "could not write multi-pack bitmap"
+msgstr "không thể ghi “multi-pack bitmap”"
+
+msgid "could not write multi-pack-index"
+msgstr "không thể ghi “multi-pack-index”"
 
-#: builtin/remote.c:1436
 #, c-format
-msgid " * [would prune] %s"
-msgstr " * [nên xén bớt] %s"
+msgid "failed to clear multi-pack-index at %s"
+msgstr "gặp lỗi khi xóa multi-pack-index tại %s"
+
+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"
+
+msgid "incorrect checksum"
+msgstr "tổng kiểm không đúng"
+
+msgid "Looking for referenced packfiles"
+msgstr "Đang khóa cho các gói bị tham chiếu"
 
-#: builtin/remote.c:1439
 #, c-format
-msgid " * [pruned] %s"
-msgstr " * [đã bị xén] %s"
+msgid ""
+"oid fanout out of order: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
+msgstr "fanout cũ sai thứ tự: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
+
+msgid "the midx contains no oid"
+msgstr "midx chẳng chứa oid nào"
 
-#: builtin/remote.c:1484
-msgid "prune remotes after fetching"
-msgstr "cắt máy chủ sau khi lấy về"
+msgid "Verifying OID order in multi-pack-index"
+msgstr "Thẩm tra thứ tự OID trong multi-pack-index"
 
-#: builtin/remote.c:1548 builtin/remote.c:1604 builtin/remote.c:1674
 #, c-format
-msgid "No such remote '%s'"
-msgstr "Không có máy chủ nào có tên “%s”"
+msgid "oid lookup out of order: oid[%d] = %s >= %s = oid[%d]"
+msgstr "lookup cũ sai thứ tự: oid[%d] = %s >= %s = oid[%d]"
 
-#: builtin/remote.c:1566
-msgid "add branch"
-msgstr "thêm nhánh"
+msgid "Sorting objects by packfile"
+msgstr "Đang sắp xếp các đối tượng theo tập tin gói"
 
-#: builtin/remote.c:1573
-msgid "no remote specified"
-msgstr "chưa chỉ ra máy chủ nào"
+msgid "Verifying object offsets"
+msgstr "Đang thẩm tra các khoảng bù đối tượng"
 
-#: builtin/remote.c:1590
-msgid "query push URLs rather than fetch URLs"
-msgstr "truy vấn đẩy URL thay vì lấy"
+#, 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"
 
-#: builtin/remote.c:1592
-msgid "return all URLs"
-msgstr "trả về mọi URL"
+#, 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"
 
-#: builtin/remote.c:1622
 #, 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”"
+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>"
 
-#: builtin/remote.c:1648
-msgid "manipulate push URLs"
-msgstr "đẩy các “URL” bằng tay"
+msgid "Counting referenced objects"
+msgstr "Đang đếm các đối tượng được tham chiếu"
 
-#: builtin/remote.c:1650
-msgid "add URL"
-msgstr "thêm URL"
+msgid "Finding and deleting unreferenced packfiles"
+msgstr "Đang tìm và xóa các gói không được tham chiếu"
 
-#: builtin/remote.c:1652
-msgid "delete URLs"
-msgstr "xóa URLs"
+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"
 
-#: builtin/remote.c:1659
-msgid "--add --delete doesn't make sense"
-msgstr "--add --delete không hợp lý"
+msgid "could not finish pack-objects"
+msgstr "không thể hoàn thiện các đối tượng gói"
 
-#: builtin/remote.c:1700
 #, c-format
-msgid "Invalid old URL pattern: %s"
-msgstr "Kiểu mẫu URL cũ không hợp lệ: %s"
+msgid "unable to create lazy_dir thread: %s"
+msgstr "không thể tạo tuyến lazy_dir: %s"
 
-#: builtin/remote.c:1708
 #, c-format
-msgid "No such URL found: %s"
-msgstr "Không tìm thấy URL như vậy: %s"
-
-#: builtin/remote.c:1710
-msgid "Will not delete all non-push URLs"
-msgstr "Sẽ không xóa những địa chỉ URL không-push"
-
-#: builtin/remote.c:1727
-msgid "be verbose; must be placed before a subcommand"
-msgstr "chi tiết; phải được đặt trước một lệnh-con"
+msgid "unable to create lazy_name thread: %s"
+msgstr "không thể tạo tuyến lazy_name: %s"
 
-#: builtin/repack.c:29
-msgid "git repack [<options>]"
-msgstr "git repack [<các tùy chọn>]"
+#, c-format
+msgid "unable to join lazy_name thread: %s"
+msgstr "không thể gia nhập tuyến lazy_name: %s"
 
-#: builtin/repack.c:34
+#, c-format
 msgid ""
-"Incremental repacks are incompatible with bitmap indexes.  Use\n"
-"--no-write-bitmap-index or disable the pack.writebitmaps configuration."
+"You have not concluded your previous notes merge (%s exists).\n"
+"Please, use 'git notes merge --commit' or 'git notes merge --abort' to "
+"commit/abort the previous merge before you start a new notes merge."
 msgstr ""
-"Gia tăng repack là không tương thích với chỉ mục bitmap. Dùng\n"
-"--no-write-bitmap-index hay tắt cấu hình pack.writebitmaps."
+"Bạn đã chưa hoàn tất hòa trộn ghi chú trước đây (%s vẫn còn).\n"
+"Vui lòng dùng “git notes merge --commit” hay “git notes merge --abort” để "
+"chuyển giao hay bãi bỏ lần hòa trộn trước đây và bắt đầu một hòa trộn ghi "
+"chú mới."
 
-#: builtin/repack.c:206
-msgid "could not start pack-objects to repack promisor objects"
-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"
+#, c-format
+msgid "You have not concluded your notes merge (%s exists)."
+msgstr "Bạn chưa kết thúc việc hòa trộn ghi chú (%s vẫn tồn tại)."
 
-#: builtin/repack.c:280 builtin/repack.c:824
-msgid "repack: Expecting full hex object ID lines only from pack-objects."
+msgid "Cannot commit uninitialized/unreferenced notes tree"
 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:304
-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"
+"Không thể chuyển giao cây ghi chú chưa được khởi tạo hoặc không được tham "
+"chiếu"
 
-#: builtin/repack.c:319
 #, c-format
-msgid "cannot open index for %s"
-msgstr "không thể mở mục lục cho “%s”"
+msgid "Bad notes.rewriteMode value: '%s'"
+msgstr "Giá trị notes.rewriteMode sai: “%s”"
 
-#: builtin/repack.c:378
 #, c-format
-msgid "pack %s too large to consider in geometric progression"
-msgstr "gói %s là quá lớn để được xem là trong tiến trình hình học"
+msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
+msgstr "Từ chối ghi đè ghi chú trong %s (nằm ngoài refs/notes/)"
 
-#: builtin/repack.c:411 builtin/repack.c:418 builtin/repack.c:423
+#. TRANSLATORS: The first %s is the name of
+#. the environment variable, the second %s is
+#. its value.
+#.
 #, c-format
-msgid "pack %s too large to roll up"
-msgstr "gói %s là quá lớn để được cuộn lại"
+msgid "Bad %s value: '%s'"
+msgstr "Giá trị %s sai: “%s”"
 
-#: builtin/repack.c:503
 #, c-format
-msgid "could not open tempfile %s for writing"
-msgstr "không thể mở tập tin tạm %s để ghi"
-
-#: builtin/repack.c:521
-msgid "could not close refs snapshot tempfile"
-msgstr "không thể đóng tập tin tạm thời chụp nhanh các tham chiếu"
-
-#: builtin/repack.c:634
-msgid "pack everything in a single pack"
-msgstr "đóng gói mọi thứ trong một gói đơn"
+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"
 
-#: builtin/repack.c:636
-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"
+#, 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”"
 
-#: builtin/repack.c:639
-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"
+#, 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"
 
-#: builtin/repack.c:641
-msgid "pass --no-reuse-delta to git-pack-objects"
-msgstr "chuyển --no-reuse-delta cho git-pack-objects"
+#, c-format
+msgid "unable to normalize object directory: %s"
+msgstr "không thể chuẩn hóa thư mục đối tượng: “%s”"
 
-#: builtin/repack.c:643
-msgid "pass --no-reuse-object to git-pack-objects"
-msgstr "chuyển --no-reuse-object cho git-pack-objects"
+msgid "unable to fdopen alternates lockfile"
+msgstr "không thể fdopen tập tin khóa thay thế"
 
-#: builtin/repack.c:645
-msgid "do not run git-update-server-info"
-msgstr "không chạy git-update-server-info"
+msgid "unable to read alternates file"
+msgstr "không thể đọc tập tin thay thế"
 
-#: builtin/repack.c:648
-msgid "pass --local to git-pack-objects"
-msgstr "chuyển --local cho git-pack-objects"
+msgid "unable to move new alternates file into place"
+msgstr "không thể di chuyển tập tin thay thế vào chỗ"
 
-#: builtin/repack.c:650
-msgid "write bitmap index"
-msgstr "ghi mục lục ánh xạ"
+#, c-format
+msgid "path '%s' does not exist"
+msgstr "đường dẫn “%s” không tồn tại"
 
-#: builtin/repack.c:652
-msgid "pass --delta-islands to git-pack-objects"
-msgstr "chuyển --delta-islands cho git-pack-objects"
+#, 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ợ."
 
-#: builtin/repack.c:653
-msgid "approxidate"
-msgstr "ngày ước tính"
+#, 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ộ."
 
-#: builtin/repack.c:654
-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"
+#, c-format
+msgid "reference repository '%s' is shallow"
+msgstr "kho tham chiếu “%s” là nông"
 
-#: builtin/repack.c:656
-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"
+#, c-format
+msgid "reference repository '%s' is grafted"
+msgstr "kho tham chiếu “%s” bị cấy ghép"
 
-#: builtin/repack.c:658
-msgid "size of the window used for delta compression"
-msgstr "kích thước cửa sổ được dùng cho nén “delta”"
+#, c-format
+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/repack.c:659 builtin/repack.c:665
-msgid "bytes"
-msgstr "byte"
+#, 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"
 
-#: builtin/repack.c:660
-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"
+#, c-format
+msgid "attempting to mmap %<PRIuMAX> over limit %<PRIuMAX>"
+msgstr "đang cố để mmap %<PRIuMAX> vượt quá giới hạn %<PRIuMAX>"
 
-#: builtin/repack.c:662
-msgid "limits the maximum delta depth"
-msgstr "giới hạn độ sâu tối đa của “delta”"
+#, c-format
+msgid "mmap failed%s"
+msgstr "mmap gặp lỗi%s"
 
-#: builtin/repack.c:664
-msgid "limits the maximum number of threads"
-msgstr "giới hạn số lượng tối đa tuyến trình"
+#, c-format
+msgid "object file %s is empty"
+msgstr "tập tin đối tượng %s trống rỗng"
 
-#: builtin/repack.c:666
-msgid "maximum size of each packfile"
-msgstr "kích thước tối đa cho từng tập tin gói"
+#, c-format
+msgid "corrupt loose object '%s'"
+msgstr "đối tượng mất hỏng “%s”"
 
-#: builtin/repack.c:668
-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"
+#, 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”"
 
-#: builtin/repack.c:670
-msgid "do not repack this pack"
-msgstr "đừng đóng gói lại gói này"
+#, c-format
+msgid "unable to parse %s header"
+msgstr "không thể phân tích phần đầu của “%s”"
 
-#: builtin/repack.c:672
-msgid "find a geometric progression with factor <N>"
-msgstr "tìm một tiến trình hình học với hệ số <N>"
+msgid "invalid object type"
+msgstr "kiểu đối tượng không hợp lệ"
 
-#: builtin/repack.c:674
-msgid "write a multi-pack index of the resulting packs"
-msgstr "ghi mục lục “multi-pack” của các gói kết quả"
+#, c-format
+msgid "unable to unpack %s header"
+msgstr "không thể giải gói phần đầu %s"
 
-#: builtin/repack.c:684
-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"
+#, c-format
+msgid "header for %s too long, exceeds %d bytes"
+msgstr "phần đầu cho %s quá dài, vượt quá %d byte"
 
-#: builtin/repack.c:833
-msgid "Nothing new to pack."
-msgstr "Không có gì mới để mà đóng gói."
+#, c-format
+msgid "failed to read object %s"
+msgstr "gặp lỗi khi đọc đối tượng “%s”"
 
-#: builtin/repack.c:863
 #, c-format
-msgid "missing required file: %s"
-msgstr "thiếu tập tin cần thiết: %s"
+msgid "replacement %s not found for %s"
+msgstr "c%s thay thế không được tìm thấy cho %s"
 
-#: builtin/repack.c:865
 #, c-format
-msgid "could not unlink: %s"
-msgstr "không thể bỏ liên kết: %s"
+msgid "loose object %s (stored in %s) is corrupt"
+msgstr "đối tượng mất %s (được lưu trong %s) bị hỏng"
 
-#: builtin/replace.c:22
-msgid "git replace [-f] <object> <replacement>"
-msgstr "git replace [-f] <đối-tượng> <thay-thế>"
+#, 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"
 
-#: builtin/replace.c:23
-msgid "git replace [-f] --edit <object>"
-msgstr "git replace [-f] --edit <đối tượng>"
+#, c-format
+msgid "unable to write file %s"
+msgstr "không thể ghi tập tin %s"
 
-#: builtin/replace.c:24
-msgid "git replace [-f] --graft <commit> [<parent>...]"
-msgstr "git replace [-f] --graft <lần_chuyển_giao> [<cha_mẹ>…]"
+#, c-format
+msgid "unable to set permission to '%s'"
+msgstr "không thể đặt quyền thành “%s”"
 
-#: builtin/replace.c:26
-msgid "git replace -d <object>..."
-msgstr "git replace -d <đối tượng>…"
+msgid "file write error"
+msgstr "lỗi ghi tập tin"
 
-#: builtin/replace.c:27
-msgid "git replace [--format=<format>] [-l [<pattern>]]"
-msgstr "git replace [--format=<định_dạng>] [-l [<mẫu>]]"
+msgid "error when closing loose object file"
+msgstr "gặp lỗi trong khi đóng tập tin đối tượng"
 
-#: builtin/replace.c:90
 #, c-format
-msgid ""
-"invalid replace format '%s'\n"
-"valid formats are 'short', 'medium' and 'long'"
+msgid "insufficient permission for adding an object to repository database %s"
 msgstr ""
-"định dạng thay thế không hợp lệ “%s”\n"
-"định dạng hợp lệ là “short”, “medium” và “long”"
+"không đủ thẩm quyền để thêm một đối tượng vào cơ sở dữ liệu kho chứa %s"
 
-#: builtin/replace.c:125
-#, c-format
-msgid "replace ref '%s' not found"
-msgstr "không tìm thấy tham chiếu thay thế “%s”"
+msgid "unable to create temporary file"
+msgstr "không thể tạo tập tin tạm thời"
 
-#: builtin/replace.c:141
-#, c-format
-msgid "Deleted replace ref '%s'"
-msgstr "Đã xóa tham chiếu thay thế “%s”"
+msgid "unable to write loose object file"
+msgstr "không thể ghi tập tin đối tượng đã mất"
 
-#: builtin/replace.c:153
 #, c-format
-msgid "'%s' is not a valid ref name"
-msgstr "“%s” không phải tên tham chiếu hợp lệ"
+msgid "unable to deflate new object %s (%d)"
+msgstr "không thể xả nén đối tượng mới %s (%d)"
 
-#: builtin/replace.c:158
 #, c-format
-msgid "replace ref '%s' already exists"
-msgstr "tham chiếu thay thế “%s” đã tồn tại rồi"
+msgid "deflateEnd on object %s failed (%d)"
+msgstr "deflateEnd trên đối tượng %s gặp lỗi (%d)"
 
-#: builtin/replace.c:178
 #, c-format
-msgid ""
-"Objects must be of the same type.\n"
-"'%s' points to a replaced object of type '%s'\n"
-"while '%s' points to a replacement object of type '%s'."
-msgstr ""
-"Các đối tượng phải cùng kiểu.\n"
-"“%s” chỉ đến đối tượng thay thế của kiểu “%s”\n"
-"trong khi “%s” chỉ đến đối tượng tham chiếu của kiểu “%s”."
+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"
 
-#: builtin/replace.c:229
 #, c-format
-msgid "unable to open %s for writing"
-msgstr "không thể mở “%s” để ghi"
+msgid "cannot read object for %s"
+msgstr "không thể đọc đối tượng cho %s"
 
-#: builtin/replace.c:242
-msgid "cat-file reported failure"
-msgstr "cat-file đã báo cáo gặp lỗi nghiêm trọng"
+msgid "corrupt commit"
+msgstr "lần chuyển giao sai hỏng"
 
-#: builtin/replace.c:258
-#, c-format
-msgid "unable to open %s for reading"
-msgstr "không thể mở “%s” để đọc"
+msgid "corrupt tag"
+msgstr "thẻ sai hỏng"
 
-#: builtin/replace.c:271
-msgid "unable to spawn mktree"
-msgstr "không thể sinh tiến trình con mktree"
+#, c-format
+msgid "read error while indexing %s"
+msgstr "gặp lỗi đọc khi đánh mục lục %s"
 
-#: builtin/replace.c:275
-msgid "unable to read from mktree"
-msgstr "không thể đọc từ mktree"
+#, c-format
+msgid "short read while indexing %s"
+msgstr "không đọc ngắn khi đánh mục lục %s"
 
-#: builtin/replace.c:284
-msgid "mktree reported failure"
-msgstr "mktree đã báo cáo gặp lỗi nghiêm trọng"
+#, 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"
 
-#: builtin/replace.c:288
-msgid "mktree did not return an object name"
-msgstr "mktree đã không trả về một tên đối tượng"
+#, c-format
+msgid "%s: unsupported file type"
+msgstr "%s: kiểu tập tin không được hỗ trợ"
 
-#: builtin/replace.c:297
 #, c-format
-msgid "unable to fstat %s"
-msgstr "không thể fstat %s"
+msgid "%s is not a valid '%s' object"
+msgstr "%s không phải là một đối tượng “%s” hợp lệ"
 
-#: builtin/replace.c:302
-msgid "unable to write object to database"
-msgstr "không thể ghi đối tượng vào cơ sở dữ liệu"
+#, c-format
+msgid "unable to open %s"
+msgstr "không thể mở %s"
 
-#: builtin/replace.c:325
 #, c-format
-msgid "unable to get object type for %s"
-msgstr "không thể lấy kiểu đối tượng cho %s"
+msgid "hash mismatch for %s (expected %s)"
+msgstr "mã băm không khớp cho %s (cần %s)"
 
-#: builtin/replace.c:341
-msgid "editing object file failed"
-msgstr "việc sửa tập tin đối tượng gặp lỗi"
+#, c-format
+msgid "unable to mmap %s"
+msgstr "không thể mmap %s"
 
-#: builtin/replace.c:350
 #, c-format
-msgid "new object is the same as the old one: '%s'"
-msgstr "đối tượng mới là giống với cái cũ: “%s”"
+msgid "unable to unpack header of %s"
+msgstr "không thể giải gói phần đầu của “%s”"
 
-#: builtin/replace.c:383
 #, c-format
-msgid "could not parse %s as a commit"
-msgstr "không thể phân tích %s như là một lần chuyển giao"
+msgid "unable to parse header of %s"
+msgstr "không thể phân tích phần đầu của “%s”"
 
-#: builtin/replace.c:415
 #, c-format
-msgid "bad mergetag in commit '%s'"
-msgstr "thẻ hòa trộn sai trong lần chuyển giao “%s”"
+msgid "unable to unpack contents of %s"
+msgstr "không thể giải gói nội dung của “%s”"
 
-#: builtin/replace.c:417
+#. TRANSLATORS: This is a line of ambiguous object
+#. output shown when we cannot look up or parse the
+#. object in question. E.g. "deadbeef [bad object]".
+#.
 #, c-format
-msgid "malformed mergetag in commit '%s'"
-msgstr "thẻ hòa trộn không đúng dạng ở lần chuyển giao “%s”"
+msgid "%s [bad object]"
+msgstr "%s [đối tượng sai.]"
 
-#: builtin/replace.c:429
+#. TRANSLATORS: This is a line of ambiguous commit
+#. object output. E.g.:
+#. *
+#.    "deadbeef commit 2021-01-01 - Some Commit Message"
+#.
 #, c-format
-msgid ""
-"original commit '%s' contains mergetag '%s' that is discarded; use --edit "
-"instead of --graft"
-msgstr ""
-"lần chuyển giao gốc “%s” có chứa thẻ hòa trộn “%s” cái mà bị loại bỏ; dùng "
-"tùy chọn --edit thay cho --graft"
+msgid "%s commit %s - %s"
+msgstr "%s lần chuyển giao %s - %s"
 
-#: builtin/replace.c:468
+#. TRANSLATORS: This is a line of ambiguous
+#. tag object output. E.g.:
+#. *
+#.    "deadbeef tag 2022-01-01 - Some Tag Message"
+#. *
+#. The second argument is the YYYY-MM-DD found
+#. in the tag.
+#. *
+#. The third argument is the "tag" string
+#. from object.c.
+#.
 #, c-format
-msgid "the original commit '%s' has a gpg signature"
-msgstr "lần chuyển giao gốc “%s” có chữ ký GPG"
+msgid "%s tag %s - %s"
+msgstr "%s thẻ %s - %s"
 
-#: builtin/replace.c:469
-msgid "the signature will be removed in the replacement commit!"
-msgstr "chữ ký sẽ được bỏ đi trong lần chuyển giao thay thế!"
+#. TRANSLATORS: This is a line of ambiguous
+#. tag object output where we couldn't parse
+#. the tag itself. E.g.:
+#. *
+#.    "deadbeef [bad tag, could not parse it]"
+#.
+#, c-format
+msgid "%s [bad tag, could not parse it]"
+msgstr "%s [thẻ sai, không thể phân tích cú pháp nó]"
 
-#: builtin/replace.c:479
+#. TRANSLATORS: This is a line of ambiguous <type>
+#. object output. E.g. "deadbeef tree".
+#.
 #, c-format
-msgid "could not write replacement commit for: '%s'"
-msgstr "không thể ghi lần chuyển giao thay thế cho: “%s”"
+msgid "%s tree"
+msgstr "%s tree"
 
-#: builtin/replace.c:487
+#. TRANSLATORS: This is a line of ambiguous <type>
+#. object output. E.g. "deadbeef blob".
+#.
 #, c-format
-msgid "graft for '%s' unnecessary"
-msgstr "graft cho “%s” không cần thiết"
+msgid "%s blob"
+msgstr "%s blob"
 
-#: builtin/replace.c:491
 #, c-format
-msgid "new commit is the same as the old one: '%s'"
-msgstr "lần chuyển giao mới là giống với cái cũ: “%s”"
+msgid "short object ID %s is ambiguous"
+msgstr "mã đối tượng dạng rút gọn %s chưa rõ ràng"
 
-#: builtin/replace.c:526
+#. TRANSLATORS: The argument is the list of ambiguous
+#. objects composed in show_ambiguous_object(). See
+#. its "TRANSLATORS" comments for details.
+#.
 #, c-format
 msgid ""
-"could not convert the following graft(s):\n"
+"The candidates are:\n"
 "%s"
 msgstr ""
-"không thể chuyển đổi các graft sau đây:\n"
+"Các ứng cử là:\n"
 "%s"
 
-#: builtin/replace.c:547
-msgid "list replace refs"
-msgstr "liệt kê các refs thay thế"
-
-#: builtin/replace.c:548
-msgid "delete replace refs"
-msgstr "xóa tham chiếu thay thế"
-
-#: builtin/replace.c:549
-msgid "edit existing object"
-msgstr "sửa đối tượng sẵn có"
-
-#: builtin/replace.c:550
-msgid "change a commit's parents"
-msgstr "thay đổi cha mẹ của lần chuyển giao"
-
-#: builtin/replace.c:551
-msgid "convert existing graft file"
-msgstr "chuyển đổi các tập tin graft sẵn có"
-
-#: builtin/replace.c:552
-msgid "replace the ref if it exists"
-msgstr "thay thế tham chiếu nếu nó đã sẵn có"
-
-#: builtin/replace.c:554
-msgid "do not pretty-print contents for --edit"
-msgstr "đừng in đẹp các nội dung cho --edit"
-
-#: builtin/replace.c:555
-msgid "use this format"
-msgstr "dùng định dạng này"
-
-#: builtin/replace.c:568
-msgid "--format cannot be used when not listing"
-msgstr "--format không thể được dùng khi không liệt kê gì"
-
-#: builtin/replace.c:576
-msgid "-f only makes sense when writing a replacement"
-msgstr "-f chỉ hợp lý khi ghi một cái thay thế"
-
-#: builtin/replace.c:580
-msgid "--raw only makes sense with --edit"
-msgstr "--raw chỉ hợp lý với --edit"
-
-#: builtin/replace.c:586
-msgid "-d needs at least one argument"
-msgstr "-d cần ít nhất một tham số"
-
-#: builtin/replace.c:592
-msgid "bad number of arguments"
-msgstr "số lượng đối số không đúng"
-
-#: builtin/replace.c:598
-msgid "-e needs exactly one argument"
-msgstr "-e cần chính các là một đối số"
-
-#: builtin/replace.c:604
-msgid "-g needs at least one argument"
-msgstr "-q cần ít nhất một tham số"
-
-#: builtin/replace.c:610
-msgid "--convert-graft-file takes no argument"
-msgstr "--convert-graft-file không nhận đối số"
-
-#: builtin/replace.c:616
-msgid "only one pattern can be given with -l"
-msgstr "chỉ một mẫu được chỉ ra với tùy chọn -l"
-
-#: builtin/rerere.c:13
-msgid "git rerere [clear | forget <path>... | status | remaining | diff | gc]"
+msgid ""
+"Git normally never creates a ref that ends with 40 hex characters\n"
+"because it will be ignored when you just specify 40-hex. These refs\n"
+"may be created by mistake. For example,\n"
+"\n"
+"  git switch -c $br $(git rev-parse ...)\n"
+"\n"
+"where \"$br\" is somehow empty and a 40-hex ref is created. Please\n"
+"examine these refs and maybe delete them. Turn this message off by\n"
+"running \"git config advice.objectNameWarning false\""
 msgstr ""
-"git rerere [clear | forget <đường dẫn>… | status | remaining | diff | gc]"
-
-#: builtin/rerere.c:58
-msgid "register clean resolutions in index"
-msgstr "sổ ghi dọn sạch các phân giải trong bản mục lục"
+"Git thường không bao giờ tạo tham chiếu mà nó kết thúc với 40 ký tự hex\n"
+"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"
+"\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"
+"Xin hãy kiểm tra những tham chiếu này và có thể xóa chúng đi. Tắt lời nhắn "
+"này\n"
+"bằng cách chạy lệnh \"git config advice.objectNameWarning false\""
 
-#: builtin/rerere.c:77
-msgid "'git rerere forget' without paths is deprecated"
-msgstr "“git rerere forget” mà không có các đường dẫn là đã lạc hậu"
+#, c-format
+msgid "log for '%.*s' only goes back to %s"
+msgstr "nhật ký cho “%.*s” chỉ trở lại đến %s"
 
-#: builtin/rerere.c:111
 #, c-format
-msgid "unable to generate diff for '%s'"
-msgstr "không thể tạo khác biệt cho “%s”"
+msgid "log for '%.*s' only has %d entries"
+msgstr "nhật ký cho “%.*s” chỉ có %d mục"
+
+#, c-format
+msgid "path '%s' exists on disk, but not in '%.*s'"
+msgstr "đường dẫn “%s” có ở trên đĩa, nhưng không trong “%.*s”"
 
-#: builtin/reset.c:33
+#, c-format
 msgid ""
-"git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
+"path '%s' exists, but not '%s'\n"
+"hint: Did you mean '%.*s:%s' aka '%.*s:./%s'?"
 msgstr ""
-"git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
+"đườ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”?"
 
-#: builtin/reset.c:34
-msgid "git reset [-q] [<tree-ish>] [--] <pathspec>..."
-msgstr "git reset [-q] [<tree-ish>] [--] <đặc/tả/đường/dẫn>…"
+#, c-format
+msgid "path '%s' does not exist in '%.*s'"
+msgstr "đường dẫn “%s” không tồn tại trong “%.*s”"
 
-#: builtin/reset.c:35
+#, c-format
 msgid ""
-"git reset [-q] [--pathspec-from-file [--pathspec-file-nul]] [<tree-ish>]"
+"path '%s' is in the index, but not at stage %d\n"
+"hint: Did you mean ':%d:%s'?"
 msgstr ""
-"git reset [-q] [--pathspec-from-file [--pathspec-file-nul]] [<tree-ish>]"
-
-#: builtin/reset.c:36
-msgid "git reset --patch [<tree-ish>] [--] [<pathspec>...]"
-msgstr "git reset --patch [<tree-ish>] [--] [<đặc/tả/đường/dẫn>…]"
-
-#: builtin/reset.c:42
-msgid "mixed"
-msgstr "pha trộn"
-
-#: builtin/reset.c:42
-msgid "soft"
-msgstr "mềm"
-
-#: builtin/reset.c:42
-msgid "hard"
-msgstr "cứng"
+"đườ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”?"
 
-#: builtin/reset.c:42
-msgid "merge"
-msgstr "hòa trộn"
+#, c-format
+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”?"
 
-#: builtin/reset.c:42
-msgid "keep"
-msgstr "giữ lại"
+#, 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"
 
-#: builtin/reset.c:90
-msgid "You do not have a valid HEAD."
-msgstr "Bạn không có HEAD nào hợp lệ."
+#, c-format
+msgid "path '%s' does not exist (neither on disk nor in the index)"
+msgstr "đường dẫn “%s” không tồn tại (không trên đĩa cũng không trong mục lục)"
 
-#: builtin/reset.c:92
-msgid "Failed to find tree of HEAD."
-msgstr "Gặp lỗi khi tìm cây của HEAD."
+msgid "relative path syntax can't be used outside working tree"
+msgstr "cú pháp đường dẫn tương đối không thể thể dùng ngoài cây làm việc"
 
-#: builtin/reset.c:98
 #, c-format
-msgid "Failed to find tree of %s."
-msgstr "Gặp lỗi khi tìm cây của %s."
+msgid "<object>:<path> required, only <object> '%s' given"
+msgstr "<object>:<path> cần cả hai, nhưng chỉ <object> '%s' được đưa ra"
 
-#: builtin/reset.c:123
 #, c-format
-msgid "HEAD is now at %s"
-msgstr "HEAD hiện giờ tại %s"
+msgid "invalid object name '%.*s'."
+msgstr "“%.*s” không phải là tên đối tượng hợp lệ."
 
-#: builtin/reset.c:304
 #, c-format
-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."
+msgid "invalid object type \"%s\""
+msgstr "kiểu đối tượng \"%s\" không hợp lệ"
 
-#: builtin/reset.c:402 builtin/stash.c:606 builtin/stash.c:669
-#: builtin/stash.c:693
-msgid "be quiet, only report errors"
-msgstr "làm việc ở chế độ im lặng, chỉ hiển thị khi có lỗi"
+#, c-format
+msgid "object %s is a %s, not a %s"
+msgstr "đối tượng %s là một %s, không phải là một %s"
 
-#: builtin/reset.c:404
-msgid "skip refreshing the index after reset"
-msgstr "bỏ qua làm tươi mục lục sau khi đặt lại"
+#, c-format
+msgid "object %s has unknown type id %d"
+msgstr "đối tượng %s có mã kiểu %d chưa biết"
 
-#: builtin/reset.c:406
-msgid "reset HEAD and index"
-msgstr "đặt lại (reset) HEAD và bảng mục lục"
+#, c-format
+msgid "unable to parse object: %s"
+msgstr "không thể phân tích đối tượng: “%s”"
 
-#: builtin/reset.c:407
-msgid "reset only HEAD"
-msgstr "chỉ đặt lại (reset) HEAD"
+#, c-format
+msgid "hash mismatch %s"
+msgstr "mã băm không khớp %s"
 
-#: builtin/reset.c:409 builtin/reset.c:411
-msgid "reset HEAD, index and working tree"
-msgstr "đặt lại HEAD, bảng mục lục và cây làm việc"
+msgid "multi-pack bitmap is missing required reverse index"
+msgstr "ánh xạ multi-pack thiếu mục lục để dành cần thiết"
 
-#: builtin/reset.c:413
-msgid "reset HEAD but keep local changes"
-msgstr "đặt lại HEAD nhưng giữ lại các thay đổi nội bộ"
+#, c-format
+msgid "could not open pack %s"
+msgstr "không thể mở gói “%s”"
 
-#: builtin/reset.c:419
-msgid "record only the fact that removed paths will be added later"
-msgstr "chỉ ghi lại những đường dẫn thực sự sẽ được thêm vào sau này"
+#, c-format
+msgid "preferred pack (%s) is invalid"
+msgstr "\"preferred pack\" (%s) không hợp lệ"
 
-#: builtin/reset.c:452
 #, c-format
-msgid "Failed to resolve '%s' as a valid revision."
-msgstr "Gặp lỗi khi phân giải “%s” như là điểm xét duyệt hợp lệ."
+msgid "could not find %s in pack %s at offset %<PRIuMAX>"
+msgstr "không thể tìm thấy %s trong gói “%s” tại vị trí %<PRIuMAX>"
 
-#: builtin/reset.c:460
 #, c-format
-msgid "Failed to resolve '%s' as a valid tree."
-msgstr "Gặp lỗi khi phân giải “%s” như là một cây (tree) hợp lệ."
+msgid "mtimes file %s is too small"
+msgstr "tập tin mtimes %s quá nhỏ"
 
-#: builtin/reset.c:479
-msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
-msgstr ""
-"--mixed với các đường dẫn không còn dùng nữa; hãy thay thế bằng lệnh “git "
-"reset -- </các/đường/dẫn>”."
+#, c-format
+msgid "mtimes file %s has unknown signature"
+msgstr "tập tin mtimes %s có chữ ký chưa biết"
 
-#: builtin/reset.c:481
 #, c-format
-msgid "Cannot do %s reset with paths."
-msgstr "Không thể thực hiện lệnh %s reset với các đường dẫn."
+msgid "mtimes file %s has unsupported version %<PRIu32>"
+msgstr "tệp mtimes %s có phiên bản không được hỗ trợ %<PRIu32>"
 
-#: builtin/reset.c:496
 #, c-format
-msgid "%s reset is not allowed in a bare repository"
-msgstr "%s reset không được phép trên kho thuần"
+msgid "mtimes file %s has unsupported hash id %<PRIu32>"
+msgstr "tập tin mtimes %s có mã băm không được hỗ trợ %<PRIu32>"
 
-#: builtin/reset.c:527
-msgid "Unstaged changes after reset:"
-msgstr "Những thay đổi được đưa ra khỏi bệ phóng sau khi reset:"
+#, c-format
+msgid "mtimes file %s is corrupt"
+msgstr "tập tin mtimes %s bị hỏng"
 
-#: builtin/reset.c:530
 #, c-format
-msgid ""
-"It took %.2f seconds to refresh the index after reset.  You can use\n"
-"'--no-refresh' to avoid this."
-msgstr ""
-"Việc này cần %.2f giây để làm tươi mới mục lục sau khi đặt lại. Bạn có thể "
-"sử dụng\n"
-"“--no-refresh” tránh điều này."
+msgid "reverse-index file %s is too small"
+msgstr "tập tin reverse-index %s quá nhỏ"
 
-#: builtin/reset.c:547
 #, c-format
-msgid "Could not reset index file to revision '%s'."
-msgstr "Không thể đặt lại (reset) bảng mục lục thành điểm xét duyệt “%s”."
+msgid "reverse-index file %s is corrupt"
+msgstr "tập tin reverse-index %s bị hỏng"
 
-#: builtin/reset.c:552
-msgid "Could not write new index file."
-msgstr "Không thể ghi tập tin lưu bảng mục lục mới."
+#, c-format
+msgid "reverse-index file %s has unknown signature"
+msgstr "tập tin reverse-index %s có chữ ký chưa biết"
 
-#: builtin/rev-list.c:659
-msgid "rev-list does not support display of notes"
-msgstr "rev-list không hỗ trợ hiển thị các ghi chú"
+#, c-format
+msgid "reverse-index file %s has unsupported version %<PRIu32>"
+msgstr "tệp chỉ mục ngược %s có phiên bản không được hỗ trợ %<PRIu32>"
 
-#: builtin/rev-list.c:664
 #, c-format
-msgid "marked counting and '%s' cannot be used together"
-msgstr "đánh dấu để đếm và '%s' không thể dùng cùng nhau"
+msgid "reverse-index file %s has unsupported hash id %<PRIu32>"
+msgstr "tệp chỉ mục ngược %s có id mã băm không được hỗ trợ %<PRIu32>"
 
-#: builtin/rev-parse.c:409
-msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
-msgstr "git rev-parse --parseopt [<các tùy chọn>] -- [<các tham số>…]"
+msgid "cannot both write and verify reverse index"
+msgstr "không thể cùng lúc đọc và xác minh được bảng mục lục đảo ngược"
 
-#: builtin/rev-parse.c:414
-msgid "keep the `--` passed as an arg"
-msgstr "giữ lại “--” chuyển sang làm tham số"
+#, c-format
+msgid "could not stat: %s"
+msgstr "không thể lấy thông tin thống kê: %s"
 
-#: builtin/rev-parse.c:416
-msgid "stop parsing after the first non-option argument"
-msgstr "dừng phân tích sau đối số đầu tiên không có tùy chọn"
+#, c-format
+msgid "failed to make %s readable"
+msgstr "gặp lỗi làm cho %s đọc được"
 
-#: builtin/rev-parse.c:419
-msgid "output in stuck long form"
-msgstr "kết xuất trong định dạng gậy dài"
+#, c-format
+msgid "could not write '%s' promisor file"
+msgstr "không thể ghi tập tin promisor “%s”"
 
-#: builtin/rev-parse.c:438
-msgid "premature end of input"
-msgstr "đầu vào chấm dứt bất thường"
+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 à?)"
 
-#: builtin/rev-parse.c:442
-msgid "no usage string given before the `--' separator"
-msgstr "không có chuỗi cách dùng nào được đưa ra trước dấu phân cách “--”"
+#, c-format
+msgid "packfile %s cannot be mapped%s"
+msgstr "tập tin gói %s không thể được ánh xạ %s"
 
-#: builtin/rev-parse.c:548
-msgid "Needed a single revision"
-msgstr "Cần một điểm xét duyệt đơn"
+#, 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 à?)"
 
-#: builtin/rev-parse.c:552
-msgid ""
-"git rev-parse --parseopt [<options>] -- [<args>...]\n"
-"   or: git rev-parse --sq-quote [<arg>...]\n"
-"   or: git rev-parse [<options>] [<arg>...]\n"
-"\n"
-"Run \"git rev-parse --parseopt -h\" for more information on the first usage."
+#, c-format
+msgid "offset beyond end of pack index for %s (truncated index?)"
 msgstr ""
-"git rev-parse --parseopt [<các tùy chọn>] -- [<các đối số>…]\n"
-"   hoặc: git rev-parse --sq-quote [<đ.số>…]\n"
-"   hoặc: git rev-parse [<các tùy chọn>] [<đ.số>…]\n"
-"\n"
-"Chạy lệnh \"git rev-parse --parseopt -h\" để có thêm thông tin về cách dùng."
-
-#: builtin/rev-parse.c:712
-msgid "--resolve-git-dir requires an argument"
-msgstr "--resolve-git-dir cần một tham số"
+"vị trí tương đối vượt quá cuối của chỉ mục gói cho %s (mục lục bị cắt cụt à?)"
 
-#: builtin/rev-parse.c:715
 #, c-format
-msgid "not a gitdir '%s'"
-msgstr "không phải một thư mục git “%s”"
-
-#: builtin/rev-parse.c:739
-msgid "--git-path requires an argument"
-msgstr "--git-path cần một tham số"
-
-#: builtin/rev-parse.c:749
-msgid "-n requires an argument"
-msgstr "-n cần một tham số"
-
-#: builtin/rev-parse.c:763
-msgid "--path-format requires an argument"
-msgstr "--path-format cần một tham số"
+msgid "malformed expiration date '%s'"
+msgstr "ngày tháng hết hạn dị hình “%s”"
 
-#: builtin/rev-parse.c:769
 #, c-format
-msgid "unknown argument to --path-format: %s"
-msgstr "không hiểu tham số cho --path-format: %s"
-
-#: builtin/rev-parse.c:776
-msgid "--default requires an argument"
-msgstr "--default cần một tham số"
+msgid "option `%s' expects \"always\", \"auto\", or \"never\""
+msgstr "tùy chọn “%s” cần \"always\", \"auto\", hoặc \"never\""
 
-#: builtin/rev-parse.c:782
-msgid "--prefix requires an argument"
-msgstr "--prefix cần một tham số"
+#, c-format
+msgid "malformed object name '%s'"
+msgstr "tên đối tượng dị hình “%s”"
 
-#: builtin/rev-parse.c:851
 #, c-format
-msgid "unknown mode for --abbrev-ref: %s"
-msgstr "không hiểu chế độ cho --abbrev-ref: %s"
+msgid "option `%s' expects \"%s\" or \"%s\""
+msgstr "tùy chọn “%s” cần \"%s\" hoặc \"%s\""
 
-#: builtin/rev-parse.c:1023
 #, c-format
-msgid "unknown mode for --show-object-format: %s"
-msgstr "không hiểu chế độ cho --show-object-format: %s"
+msgid "%s requires a value"
+msgstr "“%s” yêu cầu một giá trị"
 
-#: builtin/revert.c:24
-msgid "git revert [<options>] <commit-ish>..."
-msgstr "git revert [<các tùy chọn>] <commit-ish>…"
+#, c-format
+msgid "%s is incompatible with %s"
+msgstr "%s là xung khắc với %s"
 
-#: builtin/revert.c:25
-msgid "git revert <subcommand>"
-msgstr "git revert <lệnh-con>"
+#, c-format
+msgid "%s : incompatible with something else"
+msgstr "%s : xung khắc với các cái khác"
 
-#: builtin/revert.c:30
-msgid "git cherry-pick [<options>] <commit-ish>..."
-msgstr "git cherry-pick [<các tùy chọn>] <commit-ish>…"
+#, c-format
+msgid "%s takes no value"
+msgstr "%s k nhận giá trị"
 
-#: builtin/revert.c:31
-msgid "git cherry-pick <subcommand>"
-msgstr "git cherry-pick <lệnh-con>"
+#, c-format
+msgid "%s isn't available"
+msgstr "%s không sẵn có"
 
-#: builtin/revert.c:72
 #, c-format
-msgid "option `%s' expects a number greater than zero"
-msgstr "tùy chọn “%s” cần một giá trị bằng số lớn hơn không"
+msgid "%s expects a non-negative integer value with an optional k/m/g suffix"
+msgstr "%s cần một giá trị dạng số không âm với một hậu tố tùy chọn k/m/g"
 
-#: builtin/revert.c:92
 #, c-format
-msgid "%s: %s cannot be used with %s"
-msgstr "%s: %s không thể được sử dụng với %s"
+msgid "ambiguous option: %s (could be --%s%s or --%s%s)"
+msgstr "tùy chọn chưa rõ rang: %s (nên là --%s%s hay --%s%s)"
 
-#: builtin/revert.c:102
-msgid "end revert or cherry-pick sequence"
-msgstr "kết thúc cherry-pick hay hoàn nguyên liên tiếp nhau"
+#, c-format
+msgid "did you mean `--%s` (with two dashes)?"
+msgstr "có phải ý bạn là “--%s“ (với hai dấu gạch ngang)?"
 
-#: builtin/revert.c:103
-msgid "resume revert or cherry-pick sequence"
-msgstr "phục hồi lại cherry-pick hay hoàn nguyên liên tiếp nhau"
+#, c-format
+msgid "alias of --%s"
+msgstr "bí danh của --%s"
 
-#: builtin/revert.c:104
-msgid "cancel revert or cherry-pick sequence"
-msgstr "không cherry-pick hay hoàn nguyên liên tiếp nhau"
+#, c-format
+msgid "unknown option `%s'"
+msgstr "không hiểu tùy chọn “%s”"
 
-#: builtin/revert.c:105
-msgid "skip current commit and continue"
-msgstr "bỏ qua lần chuyển giao hiện tại và tiếp tục"
+#, c-format
+msgid "unknown switch `%c'"
+msgstr "không hiểu tùy chọn “%c”"
 
-#: builtin/revert.c:107
-msgid "don't automatically commit"
-msgstr "đừng chuyển giao một cách tự động"
+#, c-format
+msgid "unknown non-ascii option in string: `%s'"
+msgstr "không hiểu tùy chọn non-ascii trong chuỗi: “%s”"
 
-#: builtin/revert.c:108
-msgid "edit the commit message"
-msgstr "sửa lại chú thích cho lần chuyển giao"
+msgid "..."
+msgstr "…"
 
-#: builtin/revert.c:111
-msgid "parent-number"
-msgstr "số-cha-mẹ"
+#, c-format
+msgid "usage: %s"
+msgstr "cách dùng: %s"
 
-#: builtin/revert.c:112
-msgid "select mainline parent"
-msgstr "chọn cha mẹ luồng chính"
+#. TRANSLATORS: the colon here should align with the
+#. one in "usage: %s" translation.
+#.
+#, c-format
+msgid "   or: %s"
+msgstr "     hoặc: %s"
 
-#: builtin/revert.c:114
-msgid "merge strategy"
-msgstr "chiến lược hòa trộn"
+#. TRANSLATORS: You should only need to translate this format
+#. string if your language is a RTL language (e.g. Arabic,
+#. Hebrew etc.), not if it's a LTR language (e.g. German,
+#. Russian, Chinese etc.).
+#. *
+#. When a translated usage string has an embedded "\n" it's
+#. because options have wrapped to the next line. The line
+#. after the "\n" will then be padded to align with the
+#. command name, such as N_("git cmd [opt]\n<8
+#. spaces>[opt2]"), where the 8 spaces are the same length as
+#. "git cmd ".
+#. *
+#. This format string prints out that already-translated
+#. line. The "%*s" is whitespace padding to account for the
+#. padding at the start of the line that we add in this
+#. function. The "%s" is a line in the (hopefully already
+#. translated) N_() usage string, which contained embedded
+#. newlines before we split it up.
+#.
+#, c-format
+msgid "%*s%s"
+msgstr "%*s%s"
 
-#: builtin/revert.c:116
-msgid "option for merge strategy"
-msgstr "tùy chọn cho chiến lược hòa trộn"
+#, c-format
+msgid "    %s"
+msgstr "    %s"
 
-#: builtin/revert.c:125
-msgid "append commit name"
-msgstr "nối thêm tên lần chuyển giao"
+msgid "-NUM"
+msgstr "-SỐ"
 
-#: builtin/revert.c:127
-msgid "preserve initially empty commits"
-msgstr "cấm khởi tạo lần chuyển giao trống rỗng"
+msgid "expiry-date"
+msgstr "ngày hết hạn"
 
-#: builtin/revert.c:128
-msgid "allow commits with empty messages"
-msgstr "chấp nhận chuyển giao mà không ghi chú gì"
+msgid "no-op (backward compatibility)"
+msgstr "no-op (tương thích ngược)"
 
-#: builtin/revert.c:129
-msgid "keep redundant, empty commits"
-msgstr "giữ lại các lần chuyển giao dư thừa, rỗng"
+msgid "be more verbose"
+msgstr "chi tiết hơn nữa"
 
-#: builtin/revert.c:241
-msgid "revert failed"
-msgstr "hoàn nguyên gặp lỗi"
+msgid "be more quiet"
+msgstr "im lặng hơn nữa"
 
-#: builtin/revert.c:254
-msgid "cherry-pick failed"
-msgstr "cherry-pick gặp lỗi"
+msgid "use <n> digits to display object names"
+msgstr "sử dụng <n> chữ số để hiển thị tên đối tượng"
 
-#: builtin/rm.c:20
-msgid "git rm [<options>] [--] <file>..."
-msgstr "git rm [<các tùy chọn>] [--] <tập-tin>…"
+msgid "how to strip spaces and #comments from message"
+msgstr "làm thế nào để cắt bỏ khoảng trắng và #ghichú từ mẩu tin nhắn"
 
-#: builtin/rm.c:208
-msgid ""
-"the following file has staged content different from both the\n"
-"file and the HEAD:"
-msgid_plural ""
-"the following files have staged content different from both the\n"
-"file and the HEAD:"
-msgstr[0] ""
-"các tập tin sau đây có khác biệt nội dung đã đưa lên bệ phóng\n"
-"từ cả tập tin và cả HEAD:"
+msgid "read pathspec from file"
+msgstr "đọc đặc tả đường dẫn từ tập tin"
 
-#: builtin/rm.c:213
 msgid ""
-"\n"
-"(use -f to force removal)"
+"with --pathspec-from-file, pathspec elements are separated with NUL character"
 msgstr ""
-"\n"
-"(dùng -f để buộc gỡ bỏ)"
+"với --pathspec-from-file, các phần tử đặc tả đường dẫn bị ngăn cách bởi ký "
+"tự NULL"
 
-#: builtin/rm.c:217
-msgid "the following file has changes staged in the index:"
-msgid_plural "the following files have changes staged in the index:"
-msgstr[0] "các tập tin sau đây có thay đổi trạng thái trong bảng mục lục:"
+#, c-format
+msgid "Could not make %s writable by group"
+msgstr "Không thể làm %s được ghi bởi nhóm"
 
-#: builtin/rm.c:221 builtin/rm.c:230
-msgid ""
-"\n"
-"(use --cached to keep the file, or -f to force removal)"
+msgid "Escape character '\\' not allowed as last character in attr value"
 msgstr ""
-"\n"
-"(dùng tùy chọn --cached để giữ tập tin, hoặc -f để ép buộc gỡ bỏ)"
-
-#: builtin/rm.c:227
-msgid "the following file has local modifications:"
-msgid_plural "the following files have local modifications:"
-msgstr[0] "những tập tin sau đây có những thay đổi nội bộ:"
-
-#: builtin/rm.c:245
-msgid "do not list removed files"
-msgstr "không liệt kê các tập tin đã gỡ bỏ"
-
-#: builtin/rm.c:246
-msgid "only remove from the index"
-msgstr "chỉ gỡ bỏ từ mục lục"
-
-#: builtin/rm.c:247
-msgid "override the up-to-date check"
-msgstr "ghi đè lên kiểm tra cập nhật"
-
-#: builtin/rm.c:248
-msgid "allow recursive removal"
-msgstr "cho phép gỡ bỏ đệ qui"
-
-#: builtin/rm.c:250
-msgid "exit with a zero status even if nothing matched"
-msgstr "thoát ra với trạng thái khác không thậm chí nếu không có gì khớp"
+"Ký tự thoát chuỗi “\\” không được phép là ký tự cuối trong giá trị thuộc tính"
 
-#: builtin/rm.c:285
-msgid "No pathspec was given. Which files should I remove?"
-msgstr "Không đưa ra đặc tả đường dẫn. Tôi nên loại bỏ các tập tin nào?"
+msgid "Only one 'attr:' specification is allowed."
+msgstr "Chỉ có một đặc tả “attr:” là được phép."
 
-#: builtin/rm.c:315
-msgid "please stage your changes to .gitmodules or stash them to proceed"
-msgstr ""
-"hãy đưa các thay đổi của bạn vào .gitmodules hay tạm cất chúng đi để xử lý"
+msgid "attr spec must not be empty"
+msgstr "đặc tả attr phải không được để trống"
 
-#: builtin/rm.c:337
 #, c-format
-msgid "not removing '%s' recursively without -r"
-msgstr "không thể gỡ bỏ “%s” một cách đệ qui mà không có tùy chọn -r"
+msgid "invalid attribute name %s"
+msgstr "tên thuộc tính không hợp lệ %s"
 
-#: builtin/rm.c:385
-#, c-format
-msgid "git rm: unable to remove %s"
-msgstr "git rm: không thể gỡ bỏ %s"
+msgid "global 'glob' and 'noglob' pathspec settings are incompatible"
+msgstr ""
+"các cài đặt đặc tả đường dẫn “glob” và “noglob” toàn cục là xung khắc nhau"
 
-#: builtin/send-pack.c:20
 msgid ""
-"git send-pack [--mirror] [--dry-run] [--force]\n"
-"              [--receive-pack=<git-receive-pack>]\n"
-"              [--verbose] [--thin] [--atomic]\n"
-"              [<host>:]<directory> (--all | <ref>...)"
+"global 'literal' pathspec setting is incompatible with all other global "
+"pathspec settings"
 msgstr ""
-"git send-pack [--mirror] [--dry-run] [--force]\n"
-"              [--receive-pack=<git-receive-pack>]\n"
-"              [--verbose] [--thin] [--atomic]\n"
-"              [<host>:]<thư mục> (--all | <tham chiếu>…)"
+"cài đặt đặc tả đường dẫn “literal” toàn cục là xung khắc với các cài đặt đặc "
+"tả đường dẫn toàn cục khác"
 
-#: builtin/send-pack.c:192
-msgid "remote name"
-msgstr "tên máy dịch vụ"
+msgid "invalid parameter for pathspec magic 'prefix'"
+msgstr "tham số không hợp lệ cho “tiền tố” màu nhiệm đặc tả đường đẫn"
 
-#: builtin/send-pack.c:205
-msgid "use stateless RPC protocol"
-msgstr "dùng giao thức RPC không ổn định"
+#, c-format
+msgid "Invalid pathspec magic '%.*s' in '%s'"
+msgstr "Số màu nhiệm đặc tả đường dẫn không hợp lệ “%.*s” trong “%s”"
 
-#: builtin/send-pack.c:206
-msgid "read refs from stdin"
-msgstr "đọc tham chiếu từ đầu vào tiêu chuẩn"
+#, c-format
+msgid "Missing ')' at the end of pathspec magic in '%s'"
+msgstr "Thiếu “)” tại cuối của số màu nhiệm đặc tả đường dẫn trong “%s”"
 
-#: builtin/send-pack.c:207
-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ụ"
+#, c-format
+msgid "Unimplemented pathspec magic '%c' in '%s'"
+msgstr "Chưa viết mã cho số màu nhiệm đặc tả đường dẫn “%c” trong “%s”"
 
-#: 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>…]]"
+#, c-format
+msgid "%s: 'literal' and 'glob' are incompatible"
+msgstr "%s: “literal” và “glob” xung khắc nhau"
 
-#: 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>]"
+#, c-format
+msgid "%s: '%s' is outside repository at '%s'"
+msgstr "%s: “%s” ngoài một kho chứa tại “%s”"
 
-#: builtin/shortlog.c:123
-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ợ"
+#, c-format
+msgid "'%s' (mnemonic: '%c')"
+msgstr "“%s” (mnemonic: “%c”)"
 
-#: builtin/shortlog.c:133
-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ợ"
+#, c-format
+msgid "%s: pathspec magic not supported by this command: %s"
+msgstr "%s: số mầu nhiệm đặc tả đường dẫn chưa được hỗ trợ bởi lệnh này: %s"
 
-#: builtin/shortlog.c:323
 #, c-format
-msgid "unknown group type: %s"
-msgstr "không nhận ra kiểu nhóm: %s"
+msgid "pathspec '%s' is beyond a symbolic link"
+msgstr "đặc tả đường dẫn “%s” vượt ra ngoài liên kết mềm"
 
-#: builtin/shortlog.c:351
-msgid "group by committer rather than author"
-msgstr "nhóm theo người chuyển giao thay vì tác giả"
+#, c-format
+msgid "line is badly quoted: %s"
+msgstr "dòng được trích dẫn sai: %s"
 
-#: builtin/shortlog.c:354
-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ả"
+msgid "unable to write flush packet"
+msgstr "không thể đẩy dữ liệu của gói lên đĩa"
 
-#: builtin/shortlog.c:356
-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"
+msgid "unable to write delim packet"
+msgstr "không thể ghi gói delim"
 
-#: builtin/shortlog.c:358
-msgid "show the email address of each author"
-msgstr "hiển thị thư điện tử cho từng tác giả"
+msgid "unable to write response end packet"
+msgstr "không thể ghi gói cuối trả về"
 
-#: builtin/shortlog.c:359
-msgid "<w>[,<i1>[,<i2>]]"
-msgstr "<w>[,<i1>[,<i2>]]"
+msgid "flush packet write failed"
+msgstr "gặp lỗi khi ghi vào tập tin gói lúc đẩy dữ liệu lên bộ nhớ"
 
-#: builtin/shortlog.c:360
-msgid "linewrap output"
-msgstr "ngắt dòng khi quá dài"
+msgid "protocol error: impossibly long line"
+msgstr "lỗi giao thức: không thể làm được dòng dài"
+
+msgid "packet write with format failed"
+msgstr "gặp lỗi khi ghi gói có định dạng"
 
-#: builtin/shortlog.c:362
-msgid "field"
-msgstr "trường"
+msgid "packet write failed - data exceeds max packet size"
+msgstr "gặp lỗi khi ghi gói - dữ liệu vượt quá cỡ vói tối đa"
 
-#: builtin/shortlog.c:363
-msgid "group by field"
-msgstr "nhóm theo trường"
+#, c-format
+msgid "packet write failed: %s"
+msgstr "gặp lỗi khi ghi gói: %s"
 
-#: builtin/shortlog.c:395
-msgid "too many arguments given outside repository"
-msgstr "quá nhiều tham số đưa ra ngoài kho chứa"
+msgid "read error"
+msgstr "lỗi đọc"
 
-#: builtin/show-branch.c:14
-msgid ""
-"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
-"                [--current] [--color[=<when>] | --no-color] [--sparse]\n"
-"                [--more=<n> | --list | --independent | --merge-base]\n"
-"                [--no-name | --sha1-name] [--topics] [(<rev> | <glob>)...]"
-msgstr ""
-"git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
-"                [--current] [--color[=<when>] | --no-color] [--sparse]\n"
-"                [--more=<n> | --list | --independent | --merge-base]\n"
-"                [--no-name | --sha1-name] [--topics] [(<rev> | <glob>)…]"
+msgid "the remote end hung up unexpectedly"
+msgstr "máy chủ bị treo bất ngờ"
 
-#: builtin/show-branch.c:18
-msgid "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<ref>]"
-msgstr "git show-branch (-g | --reflog)[=<n>[,<nền>]] [--list] [<ref>]"
+#, c-format
+msgid "protocol error: bad line length character: %.4s"
+msgstr "lỗi giao thức: ký tự chiều dài dòng bị sai: %.4s"
 
-#: builtin/show-branch.c:396
 #, c-format
-msgid "ignoring %s; cannot handle more than %d ref"
-msgid_plural "ignoring %s; cannot handle more than %d refs"
-msgstr[0] "đang bỏ qua %s; không thể xử lý nhiều hơn %d tham chiếu"
+msgid "protocol error: bad line length %d"
+msgstr "lỗi giao thức: chiều dài dòng bị sai %d"
 
-#: builtin/show-branch.c:548
 #, c-format
-msgid "no matching refs with %s"
-msgstr "không tham chiếu nào khớp với %s"
+msgid "remote error: %s"
+msgstr "lỗi máy chủ: %s"
 
-#: builtin/show-branch.c:645
-msgid "show remote-tracking and local branches"
-msgstr "hiển thị các nhánh remote-tracking và nội bộ"
+msgid "Refreshing index"
+msgstr "Làm mới bảng mục lục"
 
-#: builtin/show-branch.c:647
-msgid "show remote-tracking branches"
-msgstr "hiển thị các nhánh remote-tracking"
+#, c-format
+msgid "unable to create threaded lstat: %s"
+msgstr "không thể tạo tuyến trình lstat: %s"
 
-#: builtin/show-branch.c:649
-msgid "color '*!+-' corresponding to the branch"
-msgstr "màu “*!+-” tương ứng với nhánh"
+msgid "unable to parse --pretty format"
+msgstr "không thể phân tích định dạng --pretty"
 
-#: builtin/show-branch.c:651
-msgid "show <n> more commits after the common ancestor"
-msgstr "hiển thị thêm <n> lần chuyển giao sau cha mẹ chung"
+msgid "promisor-remote: unable to fork off fetch subprocess"
+msgstr "promisor-remote: không thể rẽ nhánh tuyến trình con fetch"
 
-#: builtin/show-branch.c:653
-msgid "synonym to more=-1"
-msgstr "đồng nghĩa với more=-1"
+msgid "promisor-remote: could not write to fetch subprocess"
+msgstr "promisor-remote: không thể ghi tiến trình con fetch"
 
-#: builtin/show-branch.c:654
-msgid "suppress naming strings"
-msgstr "chặn các chuỗi đặt tên"
+msgid "promisor-remote: could not close stdin to fetch subprocess"
+msgstr ""
+"promisor-remote: không thể đóng đầu vào tiêu chuẩn tiến trình con fetch"
 
-#: builtin/show-branch.c:656
-msgid "include the current branch"
-msgstr "bao gồm nhánh hiện hành"
+#, 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"
 
-#: builtin/show-branch.c:658
-msgid "name commits with their object names"
-msgstr "đặt tên các lần chuyển giao bằng các tên của đối tượng của chúng"
+msgid "object-info: expected flush after arguments"
+msgstr "object-info: cần đẩy dữ liệu lên đĩa sau các tham số"
 
-#: builtin/show-branch.c:660
-msgid "show possible merge bases"
-msgstr "hiển thị mọi cơ sở có thể dùng để hòa trộn"
+msgid "Removing duplicate objects"
+msgstr "Đang gỡ các đối tượng trùng lặp"
 
-#: builtin/show-branch.c:662
-msgid "show refs unreachable from any other ref"
-msgstr "hiển thị các tham chiếu không thể được đọc bởi bất kỳ tham chiếu khác"
+msgid "could not start `log`"
+msgstr "không thể lấy thông tin thống kê về “log“"
 
-#: builtin/show-branch.c:664
-msgid "show commits in topological order"
-msgstr "hiển thị các lần chuyển giao theo thứ tự tôpô"
+msgid "could not read `log` output"
+msgstr "không thể đọc kết xuất “log”"
 
-#: builtin/show-branch.c:667
-msgid "show only commits not on the first branch"
-msgstr "chỉ hiển thị các lần chuyển giao không nằm trên nhánh đầu tiên"
+#, c-format
+msgid "could not parse commit '%s'"
+msgstr "không thể phân tích lần chuyển giao “%s”"
 
-#: builtin/show-branch.c:669
-msgid "show merges reachable from only one tip"
-msgstr "hiển thị các lần hòa trộn có thể đọc được chỉ từ một đầu mút"
+#, c-format
+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”"
 
-#: builtin/show-branch.c:671
-msgid "topologically sort, maintaining date order where possible"
-msgstr "sắp xếp hình thái học, bảo trì thứ tự ngày nếu có thể"
+#, 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”"
 
-#: builtin/show-branch.c:674
-msgid "<n>[,<base>]"
-msgstr "<n>[,<cơ_sở>]"
+msgid "failed to generate diff"
+msgstr "gặp lỗi khi tạo khác biệt"
 
-#: builtin/show-branch.c:675
-msgid "show <n> most recent ref-log entries starting at base"
-msgstr "hiển thị <n> các mục “ref-log” gần nhất kể từ nền (base)"
+#, c-format
+msgid "could not parse log for '%s'"
+msgstr "không thể phân tích nhật ký cho “%s”"
 
-#: builtin/show-branch.c:735
-msgid "no branches given, and HEAD is not valid"
-msgstr "chưa đưa ra nhánh, và HEAD không hợp lệ"
+#, c-format
+msgid "will not add file alias '%s' ('%s' already exists in index)"
+msgstr ""
+"sẽ không thêm các bí danh “%s” (“%s” đã có từ trước trong bảng mục lục)"
 
-#: builtin/show-branch.c:738
-msgid "--reflog option needs one branch name"
-msgstr "--reflog cần tên một nhánh"
+msgid "cannot create an empty blob in the object database"
+msgstr "không thể tạo một blob rỗng trong cơ sở dữ liệu đối tượng"
 
-#: builtin/show-branch.c:741
 #, c-format
-msgid "only %d entry can be shown at one time."
-msgid_plural "only %d entries can be shown at one time."
-msgstr[0] "chỉ có thể hiển thị cùng lúc %d hạng mục."
+msgid "%s: can only add regular files, symbolic links or git-directories"
+msgstr ""
+"%s: chỉ có thể thêm tập tin thông thường, liên kết mềm hoặc git-directories"
 
-#: builtin/show-branch.c:745
 #, c-format
-msgid "no such ref %s"
-msgstr "không có tham chiếu nào như thế %s"
+msgid "unable to index file '%s'"
+msgstr "không thể đánh mục lục tập tin “%s”"
 
-#: builtin/show-branch.c:831
 #, c-format
-msgid "cannot handle more than %d rev."
-msgid_plural "cannot handle more than %d revs."
-msgstr[0] "không thể xử lý nhiều hơn %d điểm xét duyệt."
+msgid "unable to add '%s' to index"
+msgstr "không thể thêm %s vào bảng mục lục"
 
-#: builtin/show-branch.c:835
 #, c-format
-msgid "'%s' is not a valid ref."
-msgstr "“%s” không phải tham chiếu hợp lệ."
+msgid "unable to stat '%s'"
+msgstr "không thể lấy thống kê “%s”"
 
-#: builtin/show-branch.c:838
 #, c-format
-msgid "cannot find commit %s (%s)"
-msgstr "không thể tìm thấy lần chuyển giao %s (%s)"
+msgid "'%s' appears as both a file and as a directory"
+msgstr "%s có vẻ không phải là tập tin và cũng chẳng phải là một thư mục"
 
-#: builtin/show-index.c:21
-msgid "hash-algorithm"
-msgstr "thuật-toán-băm"
+msgid "Refresh index"
+msgstr "Làm tươi mới bảng mục lục"
 
-#: builtin/show-index.c:31
-msgid "Unknown hash algorithm"
-msgstr "Không hiểu thuật toán băm dữ liệu"
+#, c-format
+msgid ""
+"index.version set, but the value is invalid.\n"
+"Using version %i"
+msgstr ""
+"index.version được đặt, nhưng giá trị của nó lại không hợp lệ.\n"
+"Dùng phiên bản %i"
 
-#: builtin/show-ref.c:12
+#, c-format
 msgid ""
-"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
-"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
+"GIT_INDEX_VERSION set, but the value is invalid.\n"
+"Using version %i"
 msgstr ""
-"git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
-"hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<mẫu>…]"
+"GIT_INDEX_VERSION được đặt, nhưng giá trị của nó lại không hợp lệ.\n"
+"Dùng phiên bản %i"
 
-#: builtin/show-ref.c:13
-msgid "git show-ref --exclude-existing[=<pattern>]"
-msgstr "git show-ref --exclude-existing[=<mẫu>]"
+#, c-format
+msgid "bad signature 0x%08x"
+msgstr "chữ ký sai 0x%08x"
 
-#: builtin/show-ref.c:162
-msgid "only show tags (can be combined with heads)"
-msgstr "chỉ hiển thị thẻ (có thể tổ hợp cùng với đầu)"
+#, c-format
+msgid "bad index version %d"
+msgstr "phiên bản mục lục sai %d"
 
-#: builtin/show-ref.c:163
-msgid "only show heads (can be combined with tags)"
-msgstr "chỉ hiển thị đầu (có thể tổ hợp cùng với thẻ)"
+msgid "bad index file sha1 signature"
+msgstr "chữ ký dạng sha1 cho tập tin mục lục không đúng"
 
-#: builtin/show-ref.c:164
-msgid "stricter reference checking, requires exact ref path"
-msgstr ""
-"việc kiểm tra tham chiếu chính xác, đòi hỏi chính xác đường dẫn tham chiếu"
+#, c-format
+msgid "index uses %.4s extension, which we do not understand"
+msgstr "mục lục dùng phần mở rộng %.4s, cái mà chúng tôi không hiểu được"
 
-#: builtin/show-ref.c:167 builtin/show-ref.c:169
-msgid "show the HEAD reference, even if it would be filtered out"
-msgstr "hiển thị tham chiếu HEAD, ngay cả khi nó đã được lọc ra"
+#, c-format
+msgid "ignoring %.4s extension"
+msgstr "đang lờ đi phần mở rộng %.4s"
 
-#: builtin/show-ref.c:171
-msgid "dereference tags into object IDs"
-msgstr "bãi bỏ tham chiếu các thẻ thành ra các ID đối tượng"
+#, c-format
+msgid "unknown index entry format 0x%08x"
+msgstr "không hiểu định dạng mục lục 0x%08x"
 
-#: builtin/show-ref.c:173
-msgid "only show SHA1 hash using <n> digits"
-msgstr "chỉ hiển thị mã băm SHA1 sử dụng <n> chữ số"
+#, c-format
+msgid "malformed name field in the index, near path '%s'"
+msgstr "trường tên sai sạng trong mục lục, gần đường dẫn “%s”"
 
-#: builtin/show-ref.c:177
-msgid "do not print results to stdout (useful with --verify)"
-msgstr ""
-"không hiển thị kết quả ra đầu ra chuẩn (stdout) (chỉ hữu dụng với --verify)"
+msgid "unordered stage entries in index"
+msgstr "các mục tin stage không đúng thứ tự trong mục lục"
 
-#: builtin/show-ref.c:179
-msgid "show refs from stdin that aren't in local repository"
-msgstr ""
-"hiển thị các tham chiếu từ đầu vào tiêu chuẩn (stdin) cái mà không ở kho nội "
-"bộ"
+#, c-format
+msgid "multiple stage entries for merged file '%s'"
+msgstr "nhiều mục stage cho tập tin hòa trộn “%s”"
 
-#: builtin/sparse-checkout.c:23
-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>"
+#, c-format
+msgid "unordered stage entries for '%s'"
+msgstr "các mục tin stage không đúng thứ tự cho “%s”"
 
-#: builtin/sparse-checkout.c:61
-msgid "this worktree is not sparse"
-msgstr "cây làm việc này không phải là sparse"
+#, c-format
+msgid "unable to create load_cache_entries thread: %s"
+msgstr "không thể tạo tuyến load_cache_entries: %s"
 
-#: builtin/sparse-checkout.c:76
-msgid "this worktree is not sparse (sparse-checkout file may not exist)"
-msgstr ""
-"không thể phân tích cú pháp cây làm việc này (tập tin sparse-checkout có lẽ "
-"không tồn tại)"
+#, c-format
+msgid "unable to join load_cache_entries thread: %s"
+msgstr "không thể gia nhập tuyến load_cache_entries: %s"
 
-#: builtin/sparse-checkout.c:177
 #, c-format
-msgid ""
-"directory '%s' contains untracked files, but is not in the sparse-checkout "
-"cone"
-msgstr ""
-"thư mục “%s” có chứa các tập tin chưa được theo dõi, nhưng lại không trong "
-"“sparse-checkout cone”"
+msgid "%s: index file open failed"
+msgstr "%s: mở tập tin mục lục gặp lỗi"
+
+#, c-format
+msgid "%s: cannot stat the open index"
+msgstr "%s: không thể lấy thống kê bảng mục lục đã mở"
+
+#, c-format
+msgid "%s: index file smaller than expected"
+msgstr "%s: tập tin mục lục nhỏ hơn mong đợi"
+
+#, c-format
+msgid "%s: unable to map index file%s"
+msgstr "%s: không thể ánh xạ tập tin mục lục%s"
+
+#, c-format
+msgid "unable to create load_index_extensions thread: %s"
+msgstr "không thể tạo tuyến load_index_extensions: %s"
 
-#: builtin/sparse-checkout.c:185
 #, c-format
-msgid "failed to remove directory '%s'"
-msgstr "gặp lỗi khi gỡ bỏ thư mục \"%s\""
-
-#: builtin/sparse-checkout.c:327
-msgid "failed to create directory for sparse-checkout file"
-msgstr "gặp lỗi khi tạo thư mục cho tập tin sparse-checkout"
+msgid "unable to join load_index_extensions thread: %s"
+msgstr "không thể gia nhập tuyến load_index_extensions: %s"
 
-#: builtin/sparse-checkout.c:366
-msgid "failed to initialize worktree config"
-msgstr "gặp lỗi khi khởi tạo cấu hình cây làm việc"
+#, c-format
+msgid "could not freshen shared index '%s'"
+msgstr "không thể làm tươi mới mục lục đã chia sẻ “%s”"
 
-#: builtin/sparse-checkout.c:411
-msgid "failed to modify sparse-index config"
-msgstr "gặp lỗi khi sửa cấu hình \"sparse-index\""
+#, c-format
+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"
 
-#: builtin/sparse-checkout.c:441 builtin/sparse-checkout.c:793
-#: builtin/sparse-checkout.c:847
-msgid "initialize the sparse-checkout in cone mode"
-msgstr "khởi tạo sparse-checkout trong chế độ nón"
+msgid "cannot write split index for a sparse index"
+msgstr "không thể ghi mục lục chia tách cho \"sparse index\""
 
-#: builtin/sparse-checkout.c:443 builtin/sparse-checkout.c:795
-#: builtin/sparse-checkout.c:849
-msgid "toggle the use of a sparse index"
-msgstr "bật tắt việc sử dụng một \"sparse index\""
+msgid "failed to convert to a sparse-index"
+msgstr "gặp lỗi khi chuyển đổi sang \"sparse-index\""
 
-#: builtin/sparse-checkout.c:479
 #, c-format
-msgid "failed to open '%s'"
-msgstr "gặp lỗi khi mở “%s”"
+msgid "could not stat '%s'"
+msgstr "không thể lấy thông tin thống kê về “%s”"
 
-#: builtin/sparse-checkout.c:531
 #, c-format
-msgid "could not normalize path %s"
-msgstr "không thể thường hóa đường dẫn “%s”"
+msgid "unable to open git dir: %s"
+msgstr "không thể mở thư mục git: %s"
 
-#: builtin/sparse-checkout.c:560
 #, c-format
-msgid "unable to unquote C-style string '%s'"
-msgstr "không thể bỏ trích dẫn chuỗi kiểu C “%s”"
-
-#: builtin/sparse-checkout.c:615 builtin/sparse-checkout.c:643
-msgid "unable to load existing sparse-checkout patterns"
-msgstr "không thể tải các mẫu sparse-checkout"
+msgid "unable to unlink: %s"
+msgstr "không thể bỏ liên kết (unlink): “%s”"
 
-#: builtin/sparse-checkout.c:619
-msgid "existing sparse-checkout patterns do not use cone mode"
-msgstr "đặt các mẫu sparse-checkout sẵn có không sử dụng chế độ cone"
+#, c-format
+msgid "cannot fix permission bits on '%s'"
+msgstr "không thể sửa các bít phân quyền trên “%s”"
 
-#: builtin/sparse-checkout.c:707
-msgid "please run from the toplevel directory in non-cone mode"
-msgstr "vui lòng chạy từ thư mục mức cao nhất trong chế độ non-cone"
+#, c-format
+msgid "%s: cannot drop to stage #0"
+msgstr "%s: không thể xóa bỏ stage #0"
 
-#: builtin/sparse-checkout.c:712
-msgid "specify directories rather than patterns (no leading slash)"
-msgstr "chỉ định các thư mục thay mẫu (không có dấu gạch chéo đứng đầu)"
+msgid ""
+"You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
+"continue'.\n"
+"Or you can abort the rebase with 'git rebase --abort'.\n"
+msgstr ""
+"Bạn có thể sửa nó bằng “git rebase --edit-todo” và sau đó chạy “git rebase --"
+"continue”.\n"
+"Hoặc là bạn có thể bãi bỏ việc cải tổ bằng “git rebase --abort”.\n"
 
-#: builtin/sparse-checkout.c:714
+#, c-format
 msgid ""
-"specify directories rather than patterns.  If your directory starts with a "
-"'!', pass --skip-checks"
+"unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
 msgstr ""
-"chỉ định các thư mục thay mẫu. Nếu thư mục của bạn bắt đầu với một '!', "
-"chuyển qua --skip-checks"
+"không nhận ra cài đặt %s cho tùy chọn rebase.missingCommitsCheck. Nên bỏ qua."
 
-#: builtin/sparse-checkout.c:716
 msgid ""
-"specify directories rather than patterns.  If your directory really has any "
-"of '*?[]\\' in it, pass --skip-checks"
+"\n"
+"Commands:\n"
+"p, pick <commit> = use commit\n"
+"r, reword <commit> = use commit, but edit the commit message\n"
+"e, edit <commit> = use commit, but stop for amending\n"
+"s, squash <commit> = use commit, but meld into previous commit\n"
+"f, fixup [-C | -c] <commit> = like \"squash\" but keep only the previous\n"
+"                   commit's log message, unless -C is used, in which case\n"
+"                   keep only this commit's message; -c is same as -C but\n"
+"                   opens the editor\n"
+"x, exec <command> = run command (the rest of the line) using shell\n"
+"b, break = stop here (continue rebase later with 'git rebase --continue')\n"
+"d, drop <commit> = remove commit\n"
+"l, label <label> = label current HEAD with a name\n"
+"t, reset <label> = reset HEAD to a label\n"
+"m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]\n"
+".       create a merge commit using the original merge commit's\n"
+".       message (or the oneline, if no original merge commit was\n"
+".       specified); use -c <commit> to reword the commit message\n"
+"\n"
+"These lines can be re-ordered; they are executed from top to bottom.\n"
 msgstr ""
-"chỉ định các thư mục thay mẫu. Nếu thư mục của bạn đã sẵn có chứa một trong "
-"số bất kỳ '*?[]\\', chuyển qua --skip-checks"
+"\n"
+"Các lệnh:\n"
+"p, pick <commit> = dùng lần chuyển giao\n"
+"r, reword <commit> = dùng lần chuyển giao, nhưng sửa lại phần chú thích\n"
+"e, edit <commit> = dùng lần chuyển giao, nhưng dừng lại để tu bổ (amend)\n"
+"s, squash <commit> = dùng lần chuyển giao, nhưng trộn vào lần chuyển giao kế "
+"trước\n"
+"f, fixup [-C | -c] <commit> = giống như \"squash\", nhưng chỉ giữ lại phần "
+"lời nhắn\n"
+"                   nhật ký của lần chuyển giao kế trước, trừ phi -C được "
+"dùng, trong trường hợp\n"
+"                   chỉ giữ ghi chú của lần chuyển giao này; -c giống như -C "
+"nhưng\n"
+"                   mở trình biên soạn\n"
+"x, exec <commit> = chạy lệnh (phần còn lại của dòng) dùng hệ vỏ\n"
+"b, break = dừng tại đây (tiếp tục cải tổ sau này bằng “git rebase --"
+"continue”)\n"
+"d, drop <commit> = xóa bỏ lần chuyển giao\n"
+"l, label <label> = đánh nhãn HEAD hiện tại bằng một tên\n"
+"t, reset <label> = đặt lại HEAD thành một nhãn\n"
+"m, merge [-C <commit> | -c <commit>] <nhãn> [# <một_dòng>]\n"
+".       tạo một lần chuyển giao hòa trộn sử dụng chú thích của lần chuyển\n"
+".       giao hòa trộn gốc (hoặc một_dòng, nếu không chỉ định lần chuyển giao "
+"hòa\n"
+".       trộn gốc). Dùng -c <commit> để reword chú thích của lần chuyển "
+"giao.\n"
+"\n"
+"Những dòng này có thể được thay đổi thứ tự; chúng chạy từ trên đỉnh xuống "
+"dưới đáy.\n"
 
-#: builtin/sparse-checkout.c:732
 #, c-format
+msgid "Rebase %s onto %s (%d command)"
+msgid_plural "Rebase %s onto %s (%d commands)"
+msgstr[0] "Cải tổ %s vào %s (%d lệnh )"
+
 msgid ""
-"'%s' is not a directory; to treat it as a directory anyway, rerun with --"
-"skip-checks"
+"\n"
+"Do not remove any line. Use 'drop' explicitly to remove a commit.\n"
 msgstr ""
-"'%s' không phải là một thư mục; để vẫn coi nó là một thư mục hãy chạy với --"
-"skip-checks"
+"\n"
+"Đừng xóa bất kỳ dòng nào. Dùng “drop” một cách rõ ràng để xóa bỏ một lần "
+"chuyển giao.\n"
 
-#: builtin/sparse-checkout.c:734
-#, c-format
 msgid ""
-"pass a leading slash before paths such as '%s' if you want a single file "
-"(see NON-CONE PROBLEMS in the git-sparse-checkout manual)."
+"\n"
+"If you remove a line here THAT COMMIT WILL BE LOST.\n"
 msgstr ""
-"chuyển một dấu xổ chéo dẫn đầu đường dẫn như là '%s' nếu bạn muốn một tập "
-"tin đơn (xem NON-CONE PROBLEMS trong hướng dẫn sử dụng git-sparse-checkout)."
+"\n"
+"Nếu bạn xóa bỏ một dòng ở đây thì LẦN CHUYỂN GIAO ĐÓ SẼ MẤT.\n"
 
-#: builtin/sparse-checkout.c:739
-msgid "git sparse-checkout add [--skip-checks] (--stdin | <patterns>)"
-msgstr "git sparse-checkout add [--skip-checks] (--stdin | <các mẫu>)"
+msgid ""
+"\n"
+"You are editing the todo file of an ongoing interactive rebase.\n"
+"To continue rebase after editing, run:\n"
+"    git rebase --continue\n"
+"\n"
+msgstr ""
+"\n"
+"Bạn đang sửa tập tin todo của một lần cải tổ tương tác đang thực hiện.\n"
+"Để tiếp tục cải tổ sau khi sửa, chạy:\n"
+"    git rebase --continue\n"
+"\n"
 
-#: builtin/sparse-checkout.c:752 builtin/sparse-checkout.c:797
 msgid ""
-"skip some sanity checks on the given paths that might give false positives"
+"\n"
+"However, if you remove everything, the rebase will be aborted.\n"
+"\n"
 msgstr ""
-"bỏ qua một số kiểm tra đúng mục trên đường dẫn đã cho cái mà có thể đưa ra "
-"xác thực sai"
+"\n"
+"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"
 
-#: builtin/sparse-checkout.c:755 builtin/sparse-checkout.c:800
-msgid "read patterns from standard in"
-msgstr "đọc các mẫu từ đầu vào tiêu chuẩn"
+#, c-format
+msgid "could not write '%s'."
+msgstr "không thể ghi “%s”."
 
-#: builtin/sparse-checkout.c:760
-msgid "no sparse-checkout to add to"
-msgstr "không có sparse-checkout để thêm vào"
+#, c-format
+msgid ""
+"Warning: some commits may have been dropped accidentally.\n"
+"Dropped commits (newer to older):\n"
+msgstr ""
+"Cảnh báo: một số lần chuyển giao có lẽ đã bị xóa một cách tình cờ.\n"
+"Các lần chuyển giao bị xóa (từ mới đến cũ):\n"
 
-#: builtin/sparse-checkout.c:775
+#, c-format
 msgid ""
-"git sparse-checkout set [--[no-]cone] [--[no-]sparse-index] [--skip-checks] "
-"(--stdin | <patterns>)"
+"To avoid this message, use \"drop\" to explicitly remove a commit.\n"
+"\n"
+"Use 'git config rebase.missingCommitsCheck' to change the level of "
+"warnings.\n"
+"The possible behaviours are: ignore, warn, error.\n"
+"\n"
 msgstr ""
-"git sparse-checkout set [--[no-]cone] [--[no-]sparse-index] [--skip-checks] "
-"(--stdin | <các mẫu>)"
+"Để tránh thông báo này, dùng \"drop\" một cách rõ ràng để xóa bỏ một lần "
+"chuyển giao.\n"
+"\n"
+"Dùng “git config rebase.missingCommitsCheck” để thay đổi mức độ của cảnh "
+"báo.\n"
+"Cánh ứng xử có thể là: ignore, warn, error.\n"
+"\n"
 
-#: builtin/sparse-checkout.c:854
-msgid "must be in a sparse-checkout to reapply sparsity patterns"
-msgstr "phải trong một sparse-checkout để áp dụng lại các mẫu sparse"
+#, c-format
+msgid "%s: 'preserve' superseded by 'merges'"
+msgstr "%s: “preserve” bị cấm bởi “merges”"
 
-#: builtin/sparse-checkout.c:914
-msgid "error while refreshing working directory"
-msgstr "gặp lỗi khi đọc lại thư mục làm việc"
+msgid "gone"
+msgstr "đã ra đi"
 
-#: builtin/stash.c:24 builtin/stash.c:40
-msgid "git stash list [<options>]"
-msgstr "git stash list [<các tùy chọn>]"
+#, c-format
+msgid "ahead %d"
+msgstr "phía trước %d"
 
-#: builtin/stash.c:25 builtin/stash.c:45
-msgid "git stash show [<options>] [<stash>]"
-msgstr "git stash show [<các tùy chọn>] <stash>"
+#, c-format
+msgid "behind %d"
+msgstr "đằng sau %d"
 
-#: builtin/stash.c:26 builtin/stash.c:50
-msgid "git stash drop [-q|--quiet] [<stash>]"
-msgstr "git stash drop [-q|--quiet] [<stash>]"
+#, c-format
+msgid "ahead %d, behind %d"
+msgstr "trước %d, sau %d"
 
-#: builtin/stash.c:27
-msgid "git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]"
-msgstr "git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]"
+#, c-format
+msgid "expected format: %%(color:<color>)"
+msgstr "cần định dạng: %%(color:<color>)"
 
-#: builtin/stash.c:28 builtin/stash.c:65
-msgid "git stash branch <branchname> [<stash>]"
-msgstr "git stash branch <tên-nhánh> [<stash>]"
+#, c-format
+msgid "unrecognized color: %%(color:%s)"
+msgstr "không nhận ra màu: %%(color:%s)"
+
+#, c-format
+msgid "Integer value expected refname:lstrip=%s"
+msgstr "Giá trị nguyên cần tên tham chiếu:lstrip=%s"
+
+#, c-format
+msgid "Integer value expected refname:rstrip=%s"
+msgstr "Giá trị nguyên cần tên tham chiếu:rstrip=%s"
+
+#, c-format
+msgid "unrecognized %%(%s) argument: %s"
+msgstr "đối số không được thừa nhận %%(%s): %s"
+
+#, c-format
+msgid "%%(objecttype) does not take arguments"
+msgstr "%%(objecttype) không nhận các đối số"
+
+#, c-format
+msgid "%%(deltabase) does not take arguments"
+msgstr "%%(deltabase) không nhận các đối số"
+
+#, c-format
+msgid "%%(body) does not take arguments"
+msgstr "%%(body) không nhận các đối số"
 
-#: builtin/stash.c:30
-msgid ""
-"git stash [push [-p|--patch] [-S|--staged] [-k|--[no-]keep-index] [-q|--"
-"quiet]\n"
-"          [-u|--include-untracked] [-a|--all] [-m|--message <message>]\n"
-"          [--pathspec-from-file=<file> [--pathspec-file-nul]]\n"
-"          [--] [<pathspec>...]]"
-msgstr ""
-"git stash [push [-p|--patch] [-S|--staged] [-k|--[no-]keep-index] [-q|--"
-"quiet]\n"
-"          [-u|--include-untracked] [-a|--all] [-m|--message <ghi chú>]\n"
-"          [--pathspec-from-file=<tập_tin> [--pathspec-file-nul]]\n"
-"          [--] [<đặc/tả/đường/dẫn>…]]"
+#, c-format
+msgid "expected %%(trailers:key=<value>)"
+msgstr "cần %%(trailers:key=<giá trị>)"
 
-#: builtin/stash.c:34
-msgid ""
-"git stash save [-p|--patch] [-S|--staged] [-k|--[no-]keep-index] [-q|--"
-"quiet]\n"
-"          [-u|--include-untracked] [-a|--all] [<message>]"
-msgstr ""
-"git stash save [-p|--patch] [-S|--staged] [-k|--[no-]keep-index] [-q|--"
-"quiet]\n"
-"          [-u|--include-untracked] [-a|--all] [<ghi chú>]"
+#, c-format
+msgid "unknown %%(trailers) argument: %s"
+msgstr "không hiểu tham số %%(trailers): %s"
 
-#: builtin/stash.c:55
-msgid "git stash pop [--index] [-q|--quiet] [<stash>]"
-msgstr "git stash pop [--index] [-q|--quiet] [<stash>]"
+#, c-format
+msgid "positive value expected contents:lines=%s"
+msgstr "cần nội dung mang giá trị dương:lines=%s"
 
-#: builtin/stash.c:60
-msgid "git stash apply [--index] [-q|--quiet] [<stash>]"
-msgstr "git stash apply [--index] [-q|--quiet] [<stash>]"
+#, c-format
+msgid "positive value expected '%s' in %%(%s)"
+msgstr "cần giá trị dương “%s” trong %%(%s)"
 
-#: builtin/stash.c:75
-msgid "git stash store [-m|--message <message>] [-q|--quiet] <commit>"
-msgstr "git stash store [-m|--message <ghi chú>] [-q|--quiet] <commit>"
+#, c-format
+msgid "unrecognized email option: %s"
+msgstr "không nhận ra tùy chọn thư điện tử: “%s”"
 
-#: builtin/stash.c:80
-msgid ""
-"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
-"          [-u|--include-untracked] [-a|--all] [-m|--message <message>]\n"
-"          [--] [<pathspec>...]]"
-msgstr ""
-"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
-"          [-u|--include-untracked] [-a|--all] [-m|--message <lời nhắn>]\n"
-"          [--] [<đặc/tả/đường/dẫn>…]]"
+#, c-format
+msgid "expected format: %%(align:<width>,<position>)"
+msgstr "cần định dạng: %%(align:<width>,<position>)"
 
-#: builtin/stash.c:87
-msgid ""
-"git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
-"               [-u|--include-untracked] [-a|--all] [<message>]"
-msgstr ""
-"git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
-"               [-u|--include-untracked] [-a|--all] [<ghi chú>]"
+#, c-format
+msgid "unrecognized position:%s"
+msgstr "vị trí không được thừa nhận:%s"
 
-#: builtin/stash.c:130
 #, c-format
-msgid "'%s' is not a stash-like commit"
-msgstr "“%s” không phải là lần chuyển giao kiểu-stash (cất đi)"
+msgid "unrecognized width:%s"
+msgstr "chiều rộng không được thừa nhận:%s"
 
-#: builtin/stash.c:150
 #, c-format
-msgid "Too many revisions specified:%s"
-msgstr "Chỉ ra quá nhiều điểm xét duyệt: %s"
+msgid "positive width expected with the %%(align) atom"
+msgstr "cần giá trị độ rộng dương với nguyên tử %%(align)"
 
-#: builtin/stash.c:164
-msgid "No stash entries found."
-msgstr "Không tìm thấy các mục tạm cất (stash) nào."
+#, c-format
+msgid "%%(rest) does not take arguments"
+msgstr "%%(rest) không nhận các đối số"
 
-#: builtin/stash.c:178
 #, c-format
-msgid "%s is not a valid reference"
-msgstr "“%s” không phải một tham chiếu hợp lệ"
+msgid "malformed field name: %.*s"
+msgstr "tên trường dị hình: %.*s"
 
-#: builtin/stash.c:227
-msgid "git stash clear with arguments is unimplemented"
-msgstr "git stash clear với các tham số là chưa được thực hiện"
+#, c-format
+msgid "unknown field name: %.*s"
+msgstr "không hiểu tên trường: %.*s"
 
-#: builtin/stash.c:447
 #, c-format
 msgid ""
-"WARNING: Untracked file in way of tracked file!  Renaming\n"
-"            %s -> %s\n"
-"         to make room.\n"
+"not a git repository, but the field '%.*s' requires access to object data"
 msgstr ""
-"CẢNH BÁO: Tệp chưa được theo dõi theo cách của tệp được theo dõi!  Đổi tên\n"
-"            %s -> %s\n"
-"         để nhường chỗ.\n"
+"không phải là một kho git, nhưng trường “%.*s” yêu cầu truy cập vào dữ liệu "
+"đối tượng"
 
-#: builtin/stash.c:508
-msgid "cannot apply a stash in the middle of a merge"
-msgstr "không thể áp dụng một stash ở giữa của quá trình hòa trộn"
+#, c-format
+msgid "format: %%(%s) atom used without a %%(%s) atom"
+msgstr "định dạng: nguyên tử %%(%s) được dùng mà không có nguyên tử %%(%s)"
 
-#: builtin/stash.c:519
 #, c-format
-msgid "could not generate diff %s^!."
-msgstr "không thể tạo diff %s^!."
+msgid "format: %%(then) atom used more than once"
+msgstr "định dạng: nguyên tử %%(then) được dùng nhiều hơn một lần"
 
-#: builtin/stash.c:526
-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."
+#, c-format
+msgid "format: %%(then) atom used after %%(else)"
+msgstr "định dạng: nguyên tử %%(then) được dùng sau %%(else)"
 
-#: builtin/stash.c:532
-msgid "could not save index tree"
-msgstr "không thể ghi lại cây chỉ mục"
+#, c-format
+msgid "format: %%(else) atom used more than once"
+msgstr "định dạng: nguyên tử %%(else) được dùng nhiều hơn một lần"
 
-#: builtin/stash.c:552
 #, c-format
-msgid "Merging %s with %s"
-msgstr "Ä\90ang hòa trá»\99n %s vá»\9bi %s"
+msgid "format: %%(end) atom used without corresponding atom"
+msgstr "Ä\91á»\8bnh dạng: nguyên tá»­ %%(end) Ä\91ược dùng mà không có nguyên tá»­ tÆ°Æ¡ng á»©ng"
 
-#: builtin/stash.c:562
-msgid "Index was not unstashed."
-msgstr "Bảng mục lục đã không được bỏ stash."
+#, c-format
+msgid "malformed format string %s"
+msgstr "chuỗi định dạng dị hình %s"
 
-#: builtin/stash.c:576
-msgid "could not restore untracked files from stash"
-msgstr "không thể phục hồi các tập tin chưa theo dõi từ mục cất đi (stash)"
+#, c-format
+msgid "this command reject atom %%(%.*s)"
+msgstr "lệnh này từ chối atom %%(%.*s)"
 
-#: builtin/stash.c:608 builtin/stash.c:695
-msgid "attempt to recreate the index"
-msgstr "gặp lỗi đọc bảng mục lục"
+#, c-format
+msgid "--format=%.*s cannot be used with --python, --shell, --tcl"
+msgstr "--format=%.*s không thể được dùng với --python, --shell, --tcl"
 
-#: builtin/stash.c:641
 #, c-format
-msgid "Dropped %s (%s)"
-msgstr "Đã xóa %s (%s)"
+msgid "(no branch, rebasing %s)"
+msgstr "(không nhánh, đang cải tổ %s)"
 
-#: builtin/stash.c:644
 #, c-format
-msgid "%s: Could not drop stash entry"
-msgstr "%s: Không thể xóa bỏ mục stash"
+msgid "(no branch, rebasing detached HEAD %s)"
+msgstr "(không nhánh, đang cải tổ HEAD %s đã tách rời)"
 
-#: builtin/stash.c:657
 #, c-format
-msgid "'%s' is not a stash reference"
-msgstr "”%s” không phải tham chiếu đến stash"
+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)"
 
-#: builtin/stash.c:707
-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ó."
+#, c-format
+msgid "(HEAD detached at %s)"
+msgstr "(HEAD được tách rời tại %s)"
 
-#: builtin/stash.c:730
-msgid "No branch name specified"
-msgstr "Chưa chỉ ra tên của nhánh"
+#, c-format
+msgid "(HEAD detached from %s)"
+msgstr "(HEAD được tách rời khỏi %s)"
 
-#: builtin/stash.c:809
-msgid "failed to parse tree"
-msgstr "gặp lỗi khi phân tích cây"
+msgid "(no branch)"
+msgstr "(không nhánh)"
 
-#: builtin/stash.c:820
-msgid "failed to unpack trees"
-msgstr "gặp lỗi khi tháo dỡ cây"
+#, c-format
+msgid "missing object %s for %s"
+msgstr "thiếu đối tượng %s cho %s"
 
-#: builtin/stash.c:840
-msgid "include untracked files in the stash"
-msgstr "bao gồm các tập tin không được theo dõi trong stash"
+#, c-format
+msgid "parse_object_buffer failed on %s for %s"
+msgstr "parse_object_buffer gặp lỗi trên %s cho %s"
 
-#: builtin/stash.c:843
-msgid "only show untracked files in the stash"
-msgstr "chỉ hiển thị các tập tin không được theo dõi trong stash"
+#, c-format
+msgid "malformed object at '%s'"
+msgstr "đối tượng dị hình tại “%s”"
 
-#: builtin/stash.c:930 builtin/stash.c:967
 #, c-format
-msgid "Cannot update %s with %s"
-msgstr "Không thể cập nhật %s với %s"
+msgid "ignoring ref with broken name %s"
+msgstr "đang lờ đi tham chiếu với tên hỏng %s"
 
-#: builtin/stash.c:948 builtin/stash.c:1667 builtin/stash.c:1739
-msgid "stash message"
-msgstr "phần chú thích cho stash"
+#, c-format
+msgid "ignoring broken ref %s"
+msgstr "đang lờ đi tham chiếu hỏng %s"
 
-#: builtin/stash.c:958
-msgid "\"git stash store\" requires one <commit> argument"
-msgstr "\"git stash store\" cần một đối số <lần chuyển giao>"
+#, c-format
+msgid "format: %%(end) atom missing"
+msgstr "định dạng: thiếu nguyên tử %%(end)"
 
-#: builtin/stash.c:1143
-msgid "No staged changes"
-msgstr "Không có thay đổi đã được đưa lên bệ phóng"
+#, c-format
+msgid "malformed object name %s"
+msgstr "tên đối tượng dị hình %s"
 
-#: builtin/stash.c:1204
-msgid "No changes selected"
-msgstr "Chưa có thay đổi nào được chọn"
+#, 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"
 
-#: builtin/stash.c:1304
-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"
+msgid "key"
+msgstr "khóa"
 
-#: builtin/stash.c:1331
-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"
+msgid "field name to sort on"
+msgstr "tên trường cần sắp xếp"
 
-#: builtin/stash.c:1340
-msgid "Cannot save the untracked files"
-msgstr "Không thể ghi lại các tập tin chưa theo dõi"
+#, c-format
+msgid "not a reflog: %s"
+msgstr "không phải một reflog: %s"
 
-#: builtin/stash.c:1351 builtin/stash.c:1370
-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"
+#, c-format
+msgid "no reflog for '%s'"
+msgstr "không reflog cho “%s”"
 
-#: builtin/stash.c:1361
-msgid "Cannot save the current staged state"
-msgstr "Không thể ghi lại trạng thái bệ phóng hiện hành"
+#, c-format
+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ả!"
 
-#: builtin/stash.c:1398
-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"
+#, 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"
 
-#: builtin/stash.c:1447
-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"
+#, c-format
+msgid "could not retrieve `%s`"
+msgstr "không thể lấy về “%s”"
 
-#: builtin/stash.c:1458
-msgid "Can't use --staged and --include-untracked or --all at the same time"
-msgstr "Không thể dùng --staged và --include-untracked hay --all cùng một lúc"
+#, c-format
+msgid "invalid branch name: %s = %s"
+msgstr "tên nhánh không hợp lệ: %s = %s"
 
-#: builtin/stash.c:1476
-msgid "Did you forget to 'git add'?"
-msgstr "Có lẽ bạn đã quên “git add ” phải không?"
+#, c-format
+msgid "ignoring dangling symref %s"
+msgstr "đang lờ đi tham chiếu mềm thừa %s"
 
-#: builtin/stash.c:1491
-msgid "No local changes to save"
-msgstr "Không có thay đổi nội bộ nào được ghi lại"
+#, 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"
 
-#: builtin/stash.c:1498
-msgid "Cannot initialize stash"
-msgstr "Không thể khởi tạo stash"
+#, 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"
 
-#: builtin/stash.c:1513
-msgid "Cannot save the current status"
-msgstr "Không thể ghi lại trạng thái hiện hành"
+#, c-format
+msgid "log for %s is empty"
+msgstr "nhật ký cho %s trống rỗng"
 
-#: builtin/stash.c:1518
 #, 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"
+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”"
 
-#: builtin/stash.c:1615
-msgid "Cannot remove worktree changes"
-msgstr "Không thể gỡ bỏ các thay đổi cây-làm-việc"
+#, c-format
+msgid "update_ref failed for ref '%s': %s"
+msgstr "update_ref bị lỗi cho ref “%s”: %s"
 
-#: builtin/stash.c:1656 builtin/stash.c:1728
-msgid "keep index"
-msgstr "giữ nguyên bảng mục lục"
+#, 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”"
 
-#: builtin/stash.c:1658 builtin/stash.c:1730
-msgid "stash staged changes only"
-msgstr "chỉ tạm cất đi các thay đổi đã đưa lên bệ phóng"
+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"
 
-#: builtin/stash.c:1660 builtin/stash.c:1732
-msgid "stash in patch mode"
-msgstr "cất đi ở chế độ miếng vá"
+msgid "ref updates aborted by hook"
+msgstr "các cập nhật tham chiếu bị bãi bỏ bởi móc"
 
-#: builtin/stash.c:1661 builtin/stash.c:1733
-msgid "quiet mode"
-msgstr "chế độ im lặng"
+#, c-format
+msgid "'%s' exists; cannot create '%s'"
+msgstr "“%s” sẵn có; không thể tạo “%s”"
 
-#: builtin/stash.c:1663 builtin/stash.c:1735
-msgid "include untracked files in stash"
-msgstr "bao gồm các tập tin không được theo dõi trong stash"
+#, 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"
 
-#: builtin/stash.c:1665 builtin/stash.c:1737
-msgid "include ignore files"
-msgstr "bao gồm các tập tin bị bỏ qua"
+#, c-format
+msgid "could not remove reference %s"
+msgstr "không thể gỡ bỏ tham chiếu: %s"
 
-#: builtin/stripspace.c:37
-msgid "skip and remove all lines starting with comment character"
-msgstr "giữ và xóa bỏ mọi dòng bắt đầu bằng ký tự ghi chú"
+#, c-format
+msgid "could not delete reference %s: %s"
+msgstr "không thể xóa bỏ tham chiếu %s: %s"
 
-#: builtin/stripspace.c:40
-msgid "prepend comment character and space to each line"
-msgstr "treo trước ký tự ghi chú và ký tự khoảng trắng cho từng dòng"
+#, c-format
+msgid "could not delete references: %s"
+msgstr "không thể xóa bỏ tham chiếu: %s"
 
-#: builtin/submodule--helper.c:50 builtin/submodule--helper.c:2486
 #, c-format
-msgid "Expecting a full ref name, got %s"
-msgstr "Cần tên tham chiếu dạng đầy đủ, nhưng lại nhận được %s"
+msgid "invalid refspec '%s'"
+msgstr "refspec không hợp lệ “%s”"
 
-#: builtin/submodule--helper.c:103
 #, c-format
-msgid "cannot strip one component off url '%s'"
-msgstr "không thể cắt bỏ một thành phần ra khỏi “%s” url"
+msgid "invalid quoting in push-option value: '%s'"
+msgstr "sai trích dẫn trong giá trị push-option :“%s”"
 
-#: builtin/submodule--helper.c:213
 #, c-format
-msgid ""
-"could not look up configuration '%s'. Assuming this repository is its own "
-"authoritative upstream."
+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?"
+
+msgid "invalid server response; expected service, got flush packet"
 msgstr ""
-"không thể tìm thấy cấu hình “%s”. Coi rằng đây là kho thượng nguồn có quyền "
-"sở hữu chính nó."
+"đá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"
 
-#: builtin/submodule--helper.c:413 builtin/submodule--helper.c:1873
-msgid "alternative anchor for relative paths"
-msgstr "điểm neo thay thế cho các đường dẫn tương đối"
+#, 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"
 
-#: builtin/submodule--helper.c:418
-msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
-msgstr "git submodule--helper list [--prefix=</đường/dẫn>] [</đường/dẫn>…]"
+#, c-format
+msgid "repository '%s' not found"
+msgstr "không tìm thấy kho “%s”"
 
-#: builtin/submodule--helper.c:476 builtin/submodule--helper.c:617
-#: builtin/submodule--helper.c:640
 #, c-format
-msgid "No url found for submodule path '%s' in .gitmodules"
-msgstr "Không tìm thấy url cho đường dẫn mô-đun-con “%s” trong .gitmodules"
+msgid "Authentication failed for '%s'"
+msgstr "Xác thực gặp lỗi cho “%s”"
 
-#: builtin/submodule--helper.c:528
 #, c-format
-msgid "Entering '%s'\n"
-msgstr "Đang vào “%s”\n"
+msgid "unable to access '%s' with http.pinnedPubkey configuration: %s"
+msgstr "không thể truy cập “%s” với cấu hình http.pinnedPubkey: %s"
 
-#: builtin/submodule--helper.c:531
 #, c-format
-msgid ""
-"run_command returned non-zero status for %s\n"
-"."
-msgstr ""
-"run_command trả về trạng thái khác không cho %s\n"
-"."
+msgid "unable to access '%s': %s"
+msgstr "không thể truy cập “%s”: %s"
 
-#: builtin/submodule--helper.c:553
 #, c-format
-msgid ""
-"run_command returned non-zero status while recursing in the nested "
-"submodules of %s\n"
-"."
-msgstr ""
-"run_command trả về trạng thái khác không trong khi đệ quy trong các mô-đun-"
-"con lồng nhau của %s\n"
-"."
+msgid "redirecting to %s"
+msgstr "chuyển hướng đến %s"
 
-#: builtin/submodule--helper.c:569
-msgid "suppress output of entering each submodule command"
-msgstr "chặn kết xuất của từng lệnh mô-đun-con"
+msgid "shouldn't have EOF when not gentle on EOF"
+msgstr "không nên có EOF khi không gentle trên EOF"
 
-#: builtin/submodule--helper.c:571 builtin/submodule--helper.c:876
-#: builtin/submodule--helper.c:1458
-msgid "recurse into nested submodules"
-msgstr "đệ quy vào trong mô-đun-con lồng nhau"
+msgid "remote server sent unexpected response end packet"
+msgstr "máy phục vụ gửi gói kết thúc không cần"
 
-#: builtin/submodule--helper.c:576
-msgid "git submodule--helper foreach [--quiet] [--recursive] [--] <command>"
-msgstr "git submodule--helper foreach [--quiet] [--recursive] [--]  <lệnh>"
+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"
 
-#: builtin/submodule--helper.c:654
 #, c-format
-msgid "Failed to register url for submodule path '%s'"
-msgstr "Gặp lỗi khi đăng ký url cho đường dẫn mô-đun-con “%s”"
+msgid "remote-curl: bad line length character: %.4s"
+msgstr "remote-curl: ký tự chiều dài dòng bị sai: %.4s"
 
-#: builtin/submodule--helper.c:658
-#, c-format
-msgid "Submodule '%s' (%s) registered for path '%s'\n"
-msgstr "Mô-đun-con “%s” (%s) được đăng ký cho đường dẫn “%s”\n"
+msgid "remote-curl: unexpected response end packet"
+msgstr "remote-curl: gặp đáp ứng là gói kết thúc bất ngờ"
 
-#: builtin/submodule--helper.c:668
 #, c-format
-msgid "warning: command update mode suggested for submodule '%s'\n"
-msgstr "cảnh báo: chế độ lệnh cập nhật được gợi ý cho mô-đun-con “%s”\n"
+msgid "RPC failed; %s"
+msgstr "RPC gặp lỗi; %s"
+
+msgid "cannot handle pushes this big"
+msgstr "không thể xử lý đẩy cái lớn này"
 
-#: builtin/submodule--helper.c:675
 #, c-format
-msgid "Failed to register update mode for submodule path '%s'"
-msgstr "Gặp lỗi khi đăng ký chế độ cập nhật cho đường dẫn mô-đun-con “%s”"
+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"
 
-#: builtin/submodule--helper.c:697
-msgid "suppress output for initializing a submodule"
-msgstr "chặn kết xuất của khởi tạo một mô-đun-con"
+#, 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"
 
-#: builtin/submodule--helper.c:702
-msgid "git submodule--helper init [<options>] [<path>]"
-msgstr "git submodule--helper init [<các tùy chọn>] [</đường/dẫn>]"
+#, c-format
+msgid "%d bytes of length header were received"
+msgstr "đã nhận về phần đầu có chiều dài %d byte"
 
-#: builtin/submodule--helper.c:775 builtin/submodule--helper.c:910
 #, c-format
-msgid "no submodule mapping found in .gitmodules for path '%s'"
-msgstr ""
-"không tìm thấy ánh xạ (mapping) mô-đun-con trong .gitmodules cho đường dẫn "
-"“%s”"
+msgid "%d bytes of body are still expected"
+msgstr "phần thân vẫn còn cần %d byte"
+
+msgid "dumb http transport does not support shallow capabilities"
+msgstr "đổ vận chuyển http không hỗ trợ khả năng nông"
+
+msgid "fetch failed."
+msgstr "lấy về gặp lỗi."
+
+msgid "cannot fetch by sha1 over smart http"
+msgstr "không thể lấy về bằng sha1 thông qua smart http"
 
-#: builtin/submodule--helper.c:823
 #, c-format
-msgid "could not resolve HEAD ref inside the submodule '%s'"
-msgstr "không thể phân giải tham chiếu HEAD bên trong mô-đun-con “%s”"
+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”"
 
-#: builtin/submodule--helper.c:850 builtin/submodule--helper.c:1428
 #, c-format
-msgid "failed to recurse into submodule '%s'"
-msgstr "gặp lỗi khi đệ quy vào trong mô-đun-con “%s”"
+msgid "http transport does not support %s"
+msgstr "vận chuyển http không hỗ trợ %s"
 
-#: builtin/submodule--helper.c:874 builtin/submodule--helper.c:1595
-msgid "suppress submodule status output"
-msgstr "chặn kết xuất về tình trạng mô-đun-con"
+msgid "git-http-push failed"
+msgstr "git-http-push gặp lỗi"
 
-#: builtin/submodule--helper.c:875
-msgid ""
-"use commit stored in the index instead of the one stored in the submodule "
-"HEAD"
-msgstr ""
-"dùng lần chuyển giao lưu trong mục lục thay cho cái được lưu trong HEAD mô-"
-"đun-con"
+msgid "remote-curl: usage: git remote-curl <remote> [<url>]"
+msgstr "remote-curl: usage: git remote-curl <máy chủ> [<url>]"
 
-#: builtin/submodule--helper.c:881
-msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
-msgstr ""
-"git submodule status [--quiet] [--cached] [--recursive] [</đường/dẫn>…]"
+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"
 
-#: builtin/submodule--helper.c:905
-msgid "git submodule--helper name <path>"
-msgstr "git submodule--helper name </đường/dẫn>"
+msgid "remote-curl: fetch attempted without a local repo"
+msgstr "remote-curl: đã cố gắng fetch mà không có kho nội bộ"
 
-#: builtin/submodule--helper.c:977
 #, c-format
-msgid "* %s %s(blob)->%s(submodule)"
-msgstr ""
-"* %s %s(blob)->%s(\n"
-")"
+msgid "remote-curl: unknown command '%s' from git"
+msgstr "remote-curl: không hiểu lệnh “%s” từ git"
 
-#: builtin/submodule--helper.c:980
 #, c-format
-msgid "* %s %s(submodule)->%s(blob)"
-msgstr "* %s %s(mô-đun-con)->%s(blob)"
+msgid "config remote shorthand cannot begin with '/': %s"
+msgstr "cấu hình viết tắt máy chủ không thể bắt đầu bằng “/”: %s"
 
-#: builtin/submodule--helper.c:993
-#, c-format
-msgid "%s"
-msgstr "%s"
+msgid "more than one receivepack given, using the first"
+msgstr "đã đưa ra nhiều hơn một gói nhận về, đang sử dụng cái đầu tiên"
 
-#: builtin/submodule--helper.c:1043
-#, c-format
-msgid "couldn't hash object from '%s'"
-msgstr "không thể băm đối tượng từ “%s”"
+msgid "more than one uploadpack given, using the first"
+msgstr "đã đưa ra nhiều hơn một gói tải lên, đang sử dụng cái đầu tiên"
 
-#: builtin/submodule--helper.c:1047
 #, c-format
-msgid "unexpected mode %o\n"
-msgstr "gặp chế độ không như mong chờ %o\n"
+msgid "unrecognized value transfer.credentialsInUrl: '%s'"
+msgstr "không chấp nhận giá trị  transfer.credentialsInUrl: '%s'"
 
-#: builtin/submodule--helper.c:1288
-msgid "use the commit stored in the index instead of the submodule HEAD"
-msgstr "hùng lần chuyển giao đã lưu trong mục lục thay cho HEAD mô-đun-con"
-
-#: builtin/submodule--helper.c:1290
-msgid "compare the commit in the index with that in the submodule HEAD"
-msgstr "để so sánh lần trong mục lục với cái trong HEAD mô-đun-con"
+#, c-format
+msgid "URL '%s' uses plaintext credentials"
+msgstr "URL '%s' sử dụng chứng thư dạng chữ thường"
 
-#: builtin/submodule--helper.c:1292
-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”"
+#, c-format
+msgid "Cannot fetch both %s and %s to %s"
+msgstr "Không thể lấy về cả %s và %s cho %s"
 
-#: builtin/submodule--helper.c:1294
-msgid "limit the summary size"
-msgstr "giới hạn kích cỡ tổng hợp"
+#, c-format
+msgid "%s usually tracks %s, not %s"
+msgstr "%s thường theo dõi %s, không phải %s"
 
-#: builtin/submodule--helper.c:1299
-msgid "git submodule--helper summary [<options>] [<commit>] [--] [<path>]"
-msgstr ""
-"git submodule--helper summary [<các tùy chọn>] [<lần_chuyển_giao>] [--] [</"
-"đường/dẫn>]"
+#, c-format
+msgid "%s tracks both %s and %s"
+msgstr "%s theo dõi cả %s và %s"
 
-#: builtin/submodule--helper.c:1323
-msgid "could not fetch a revision for HEAD"
-msgstr "không thá»\83 lấy vá»\81 má»\99t Ä\91iá»\83m xem xét cho HEAD"
+#, c-format
+msgid "key '%s' of pattern had no '*'"
+msgstr "khóa â\80\9c%sâ\80\9d của mẫu k có â\80\9c\80\9d"
 
-#: builtin/submodule--helper.c:1384
 #, c-format
-msgid "Synchronizing submodule url for '%s'\n"
-msgstr "Url mô-đun-con đồng bộ hóa cho “%s”\n"
+msgid "value '%s' of pattern has no '*'"
+msgstr "giá trị “%s” của mẫu k có “*”"
 
-#: builtin/submodule--helper.c:1390
 #, c-format
-msgid "failed to register url for submodule path '%s'"
-msgstr "gặp lỗi khi đăng ký url cho đường dẫn mô-đun-con “%s”"
+msgid "src refspec %s does not match any"
+msgstr "refspec %s nguồn không khớp bất kỳ cái gì"
 
-#: builtin/submodule--helper.c:1399
 #, c-format
-msgid "failed to get the default remote for submodule '%s'"
-msgstr "gặp lỗi khi lấy máy chủ mặc định cho mô-đun-con “%s”"
+msgid "src refspec %s matches more than one"
+msgstr "refspec %s nguồn khớp nhiều hơn một"
 
-#: builtin/submodule--helper.c:1409
+#. TRANSLATORS: "matches '%s'%" is the <dst> part of "git push
+#. <remote> <src>:<dst>" push, and "being pushed ('%s')" is
+#. the <src>.
+#.
 #, c-format
-msgid "failed to update remote for submodule '%s'"
-msgstr "gặp lỗi khi cập nhật cho mô-đun-con “%s”"
-
-#: builtin/submodule--helper.c:1456
-msgid "suppress output of synchronizing submodule url"
-msgstr "chặn kết xuất của url mô-đun-con đồng bộ"
+msgid ""
+"The destination you provided is not a full refname (i.e.,\n"
+"starting with \"refs/\"). We tried to guess what you meant by:\n"
+"\n"
+"- Looking for a ref that matches '%s' on the remote side.\n"
+"- Checking if the <src> being pushed ('%s')\n"
+"  is a ref in \"refs/{heads,tags}/\". If so we add a corresponding\n"
+"  refs/{heads,tags}/ prefix on the remote side.\n"
+"\n"
+"Neither worked, so we gave up. You must fully qualify the ref."
+msgstr ""
+"Đích bạn đã cung cấp không phải tên tham chiếu đầy đủ (tức là\n"
+"bắt đầu bằng \"refs/\"). Chúng tôi đã cố suy luận rằng ý của bạn là:\n"
+"\n"
+"- Tìm kiếm một tham chiếu mà nó khớp “%s” bên phía máy chủ.\n"
+"- Kiểm tra xem <src> được đẩy lên (“%s”)\n"
+"  là một tham chiếu trong \"refs/{heads,tags}/\". Nếu thế chúng tôi thêm một "
+"tiền tố\n"
+"  refs/{heads,tags}/ tương ứng bên phía máy chủ.\n"
+"\n"
+"Nếu cả hai là không thể, thì chúng tôi cũng chịu thua. Bạn phải dùng tham "
+"chiếu dạng đầy đủ."
 
-#: builtin/submodule--helper.c:1463
-msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
-msgstr "git submodule--helper sync [--quiet] [--recursive] [</đường/dẫn>]"
+#, c-format
+msgid ""
+"The <src> part of the refspec is a commit object.\n"
+"Did you mean to create a new branch by pushing to\n"
+"'%s:refs/heads/%s'?"
+msgstr ""
+"Phần <src> của đặc tả đường dẫn là một đối tượng lần chuyển giao.\n"
+"Có phải ý bạn là một tạo một nhánh mới bằng cách đẩy lên\n"
+"“%s:refs/heads/%s”?"
 
-#: builtin/submodule--helper.c:1513
 #, c-format
 msgid ""
-"Submodule work tree '%s' contains a .git directory. This will be replaced "
-"with a .git file by using absorbgitdirs."
+"The <src> part of the refspec is a tag object.\n"
+"Did you mean to create a new tag by pushing to\n"
+"'%s:refs/tags/%s'?"
 msgstr ""
-"Cây làm việc mô-đun-con “%s” có chứa thư mục .git. Việc này sẽ được thay thế "
-"với một tập tin .git bằng các sử dụng absorbgitdirs."
+"Phần <src> của đặc tả đường dẫn là một đối tượng thẻ.\n"
+"Có phải ý bạn là một tạo một thẻ mới bằng cách đẩy lên\n"
+"“%s:refs/tags/%s”?"
 
-#: builtin/submodule--helper.c:1530
 #, c-format
 msgid ""
-"Submodule work tree '%s' contains local modifications; use '-f' to discard "
-"them"
+"The <src> part of the refspec is a tree object.\n"
+"Did you mean to tag a new tree by pushing to\n"
+"'%s:refs/tags/%s'?"
 msgstr ""
-"Cây làm việc mô-đun-con “%s” chứa các thay đổi nội bộ; hãy dùng “-f” để loại "
-"bỏ chúng đi"
+"Phần <src> của đặc tả đường dẫn là một đối tượng cây.\n"
+"Có phải ý bạn là một tạo một cây mới bằng cách đẩy lên\n"
+"“%s:refs/tags/%s”?"
 
-#: builtin/submodule--helper.c:1538
 #, c-format
-msgid "Cleared directory '%s'\n"
-msgstr "Đã xóa thư mục “%s”\n"
+msgid ""
+"The <src> part of the refspec is a blob object.\n"
+"Did you mean to tag a new blob by pushing to\n"
+"'%s:refs/tags/%s'?"
+msgstr ""
+"Phần <src> của đặc tả đường dẫn là một đối tượng blob.\n"
+"Có phải ý bạn là một tạo một blob mới bằng cách đẩy lên\n"
+"“%s:refs/tags/%s”?"
 
-#: builtin/submodule--helper.c:1540
 #, c-format
-msgid "Could not remove submodule work tree '%s'\n"
-msgstr "Không thể gỡ bỏ cây làm việc mô-đun-con “%s”\n"
+msgid "%s cannot be resolved to branch"
+msgstr "“%s” không thể được phân giải thành nhánh"
 
-#: builtin/submodule--helper.c:1551
 #, c-format
-msgid "could not create empty submodule directory %s"
-msgstr "không thể tạo thư mục mô-đun-con rỗng “%s”"
+msgid "unable to delete '%s': remote ref does not exist"
+msgstr "không thể xóa “%s”: tham chiếu trên máy chủ không tồn tại"
 
-#: builtin/submodule--helper.c:1567
 #, c-format
-msgid "Submodule '%s' (%s) unregistered for path '%s'\n"
-msgstr "Mô-đun-con “%s” (%s) được đăng ký cho đường dẫn “%s”\n"
+msgid "dst refspec %s matches more than one"
+msgstr "dst refspec %s khớp nhiều hơn một"
 
-#: builtin/submodule--helper.c:1596
-msgid "remove submodule working trees even if they contain local changes"
-msgstr "gỡ bỏ cây làm việc của mô-đun-con ngay cả khi nó có thay đổi nội bộ"
+#, c-format
+msgid "dst ref %s receives from more than one src"
+msgstr "dst ref %s nhận từ hơn một nguồn"
 
-#: builtin/submodule--helper.c:1597
-msgid "unregister all submodules"
-msgstr "bỏ đăng ký tất cả các trong mô-đun-con"
+msgid "HEAD does not point to a branch"
+msgstr "HEAD không chỉ đến một nhánh nào cả"
 
-#: builtin/submodule--helper.c:1602
-msgid ""
-"git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
-msgstr ""
-"git submodule deinit [--quiet] [-f | --force] [--all | [--]  [</đường/dẫn>…]]"
+#, c-format
+msgid "no such branch: '%s'"
+msgstr "không có nhánh nào như thế: “%s”"
 
-#: builtin/submodule--helper.c:1616
-msgid "Use '--all' if you really want to deinitialize all submodules"
-msgstr "Dùng “--all” nếu bạn thực sự muốn hủy khởi tạo mọi mô-đun-con"
+#, 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”"
 
-#: builtin/submodule--helper.c:1665
-msgid ""
-"An alternate computed from a superproject's alternate is invalid.\n"
-"To allow Git to clone without an alternate in such a case, set\n"
-"submodule.alternateErrorStrategy to 'info' or, equivalently, clone with\n"
-"'--reference-if-able' instead of '--reference'."
+#, c-format
+msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr ""
-"Một cái thay thế được tính toán từ một thay thế của siêu dự án là không hợp "
-"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 "
-"bằng\n"
-"“--reference-if-able” thay vì dùng “--reference”."
+"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ủ"
 
-#: builtin/submodule--helper.c:1710 builtin/submodule--helper.c:1713
 #, c-format
-msgid "submodule '%s' cannot add alternate: %s"
-msgstr "mô-đun-con “%s” không thể thêm thay thế: %s"
+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ộ"
 
-#: builtin/submodule--helper.c:1749
 #, c-format
-msgid "Value '%s' for submodule.alternateErrorStrategy is not recognized"
-msgstr "Giá trị “%s” cho submodule.alternateErrorStrategy không được thừa nhận"
+msgid "branch '%s' has no remote for pushing"
+msgstr "nhánh “%s” không có máy chủ để đẩy lên"
 
-#: builtin/submodule--helper.c:1756
 #, c-format
-msgid "Value '%s' for submodule.alternateLocation is not recognized"
-msgstr "Giá trị “%s” cho submodule.alternateLocation không được thừa nhận"
+msgid "push refspecs for '%s' do not include '%s'"
+msgstr "đẩy refspecs cho “%s” không bao gồm “%s”"
+
+msgid "push has no destination (push.default is 'nothing')"
+msgstr "đẩy lên mà không có đích (push.default là “nothing”)"
+
+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"
 
-#: builtin/submodule--helper.c:1781
 #, 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"
+msgid "couldn't find remote ref %s"
+msgstr "không thể tìm thấy tham chiếu máy chủ %s"
 
-#: builtin/submodule--helper.c:1826
 #, c-format
-msgid "clone of '%s' into submodule path '%s' failed"
-msgstr "việc sao “%s” vào đường dẫn mô-đun-con “%s” gặp lỗi"
+msgid "* Ignoring funny ref '%s' locally"
+msgstr "* Đang bỏ qua tham chiếu thú vị nội bộ “%s”"
 
-#: builtin/submodule--helper.c:1831
 #, c-format
-msgid "directory not empty: '%s'"
-msgstr "thư mục không trống: “%s”"
+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"
+
+msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
+msgstr "   (dùng \" git branch --unset-upstream\" để sửa)\n"
 
-#: builtin/submodule--helper.c:1843
 #, c-format
-msgid "could not get submodule directory for '%s'"
-msgstr "không thể lấy thư mục mô-đun-con cho “%s”"
+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"
 
-#: builtin/submodule--helper.c:1876
-msgid "where the new submodule will be cloned to"
-msgstr "nhân bản mô-đun-con mới vào chỗ nào"
+#, 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"
 
-#: builtin/submodule--helper.c:1879
-msgid "name of the new submodule"
-msgstr "tên của mô-đun-con mới"
+#, c-format
+msgid "  (use \"%s\" for details)\n"
+msgstr "  (dùng \"%s\" để biết thêm chi tiết)\n"
 
-#: builtin/submodule--helper.c:1882
-msgid "url where to clone the submodule from"
-msgstr "url nơi mà nhân bản mô-đun-con từ đó"
+#, 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"
 
-#: builtin/submodule--helper.c:1890 builtin/submodule--helper.c:3383
-msgid "depth for shallow clones"
-msgstr "chiều sâu lịch sử khi tạo bản sao"
+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"
 
-#: builtin/submodule--helper.c:1893 builtin/submodule--helper.c:2731
-#: builtin/submodule--helper.c:3376
-msgid "force cloning progress"
-msgstr "ép buộc tiến trình nhân bản"
+#, c-format
+msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
+msgid_plural ""
+"Your branch is behind '%s' by %d commits, and can be fast-forwarded.\n"
+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"
 
-#: builtin/submodule--helper.c:1895 builtin/submodule--helper.c:2733
-msgid "disallow cloning into non-empty directory"
-msgstr "làm đầy đủ dữ liệu cho bản sao vào trong một thư mục trống rỗng"
+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"
 
-#: builtin/submodule--helper.c:1903
+#, c-format
 msgid ""
-"git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
-"<repository>] [--name <name>] [--depth <depth>] [--single-branch] [--filter "
-"<filter-spec>] --url <url> --path <path>"
+"Your branch and '%s' have diverged,\n"
+"and have %d and %d different commit each, respectively.\n"
+msgid_plural ""
+"Your branch and '%s' have diverged,\n"
+"and have %d and %d different commits each, respectively.\n"
+msgstr[0] ""
+"Nhánh của bạn và “%s” bị phân kỳ,\n"
+"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"
+
+msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr ""
-"git submodule--helper clone [--prefix=</đường/dẫn>] [--quiet] [--reference "
-"<kho>] [--name <tên>] [--depth <sâu>] [--single-branch] [--filter <filter-"
-"spec>] --url <url> --path </đường/dẫn>"
+"  (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"
 
-#: builtin/submodule--helper.c:1943
 #, c-format
-msgid "Invalid update mode '%s' for submodule path '%s'"
-msgstr "Chế độ cập nhật “%s” không hợp lệ cho đường dẫn mô-đun-con “%s”"
+msgid "cannot parse expected object name '%s'"
+msgstr "không thể phân tích tên đối tượng mong muốn “%s”"
 
-#: builtin/submodule--helper.c:1947
 #, c-format
-msgid "Invalid update mode '%s' configured for submodule path '%s'"
-msgstr ""
-"Chế độ cập nhật “%s” không hợp lệ được cấu hình cho đường dẫn mô-đun-con “%s”"
+msgid "cannot strip one component off url '%s'"
+msgstr "không thể cắt bỏ một thành phần ra khỏi “%s” url"
 
-#: builtin/submodule--helper.c:2041
 #, c-format
-msgid "Submodule path '%s' not initialized"
-msgstr "Đường dẫn mô-đun-con “%s” chưa được khởi tạo"
-
-#: builtin/submodule--helper.c:2045
-msgid "Maybe you want to use 'update --init'?"
-msgstr "Có lẽ bạn là bạn muốn dùng \"update --init\" phải không?"
+msgid "bad replace ref name: %s"
+msgstr "tên tham chiếu thay thế bị sai: %s"
 
-#: builtin/submodule--helper.c:2075
 #, c-format
-msgid "Skipping unmerged submodule %s"
-msgstr "Bỏ qua các mô-đun-con chưa được hòa trộn %s"
+msgid "duplicate replace ref: %s"
+msgstr "tham chiếu thay thế bị trùng: %s"
 
-#: builtin/submodule--helper.c:2104
 #, c-format
-msgid "Skipping submodule '%s'"
-msgstr "Bỏ qua mô-đun-con “%s”"
+msgid "replace depth too high for object %s"
+msgstr "độ sâu thay thế quá cao cho đối tượng %s"
 
-#: builtin/submodule--helper.c:2257
-#, c-format
-msgid "Failed to clone '%s'. Retry scheduled"
-msgstr "Gặp lỗi khi nhân bản “%s”. Thử lại lịch trình"
+msgid "corrupt MERGE_RR"
+msgstr "MERGE_RR sai hỏng"
 
-#: builtin/submodule--helper.c:2268
-#, c-format
-msgid "Failed to clone '%s' a second time, aborting"
-msgstr "Gặp lỗi khi nhân bản “%s” lần thứ hai nên bãi bỏ"
+msgid "unable to write rerere record"
+msgstr "không thể ghi bản ghi rerere"
 
-#: builtin/submodule--helper.c:2371
 #, c-format
-msgid "Unable to checkout '%s' in submodule path '%s'"
-msgstr "Không thể lấy ra “%s” trong đường dẫn mô-đun-con “%s”"
+msgid "there were errors while writing '%s' (%s)"
+msgstr "gặp lỗi đọc khi đang ghi “%s” (%s)"
 
-#: builtin/submodule--helper.c:2375
 #, c-format
-msgid "Unable to rebase '%s' in submodule path '%s'"
-msgstr "Không thể cải tổ “%s” trong đường dẫn mô-đun-con “%s”"
+msgid "could not parse conflict hunks in '%s'"
+msgstr "không thể phân tích các mảnh xung đột trong “%s”"
 
-#: builtin/submodule--helper.c:2379
 #, c-format
-msgid "Unable to merge '%s' in submodule path '%s'"
-msgstr "Không thể hòa trộn (merge) “%s” trong đường dẫn mô-đun-con “%s”"
+msgid "failed utime() on '%s'"
+msgstr "gặp lỗi utime() trên “%s”"
 
-#: builtin/submodule--helper.c:2383
 #, c-format
-msgid "Execution of '%s %s' failed in submodule path '%s'"
-msgstr ""
-"Thực hiện không thành công lệnh “%s %s” trong đường dẫn mô-đun-con “%s”"
+msgid "writing '%s' failed"
+msgstr "gặp lỗi khi đang ghi “%s”"
 
-#: builtin/submodule--helper.c:2402
 #, c-format
-msgid "Submodule path '%s': checked out '%s'\n"
-msgstr "Đường dẫn mô-đun-con “%s”: đã checkout “%s”\n"
+msgid "Staged '%s' using previous resolution."
+msgstr "Đã tạm cất “%s” sử dụng cách phân giải kế trước."
 
-#: builtin/submodule--helper.c:2406
 #, c-format
-msgid "Submodule path '%s': rebased into '%s'\n"
-msgstr "Đường dẫn mô-đun-con “%s”: được rebase vào trong “%s”\n"
+msgid "Recorded resolution for '%s'."
+msgstr "Cách giải quyết đã ghi lại cho “%s”."
 
-#: builtin/submodule--helper.c:2410
 #, c-format
-msgid "Submodule path '%s': merged in '%s'\n"
-msgstr "Đường dẫn mô-đun-con “%s”: được hòa trộn vào “%s”\n"
+msgid "Resolved '%s' using previous resolution."
+msgstr "Đã phân giải giải “%s” sử dụng cách giải quyết kế trước."
 
-#: builtin/submodule--helper.c:2414
 #, c-format
-msgid "Submodule path '%s': '%s %s'\n"
-msgstr "Đường dẫn mô-đun-con “%s”: “%s %s”\n"
+msgid "cannot unlink stray '%s'"
+msgstr "không thể unlink stray “%s”"
 
-#: builtin/submodule--helper.c:2438
 #, c-format
-msgid "Unable to fetch in submodule path '%s'; trying to directly fetch %s:"
-msgstr ""
-"Không thể lấy về trong đường dẫn mô-đun-con “%s”; thử lấy về trực tiếp %s:"
+msgid "Recorded preimage for '%s'"
+msgstr "Preimage đã được ghi lại cho “%s”"
 
-#: builtin/submodule--helper.c:2447
 #, c-format
-msgid ""
-"Fetched in submodule path '%s', but it did not contain %s. Direct fetching "
-"of that commit failed."
-msgstr ""
-"Đã lấy về từ đường dẫn mô-đun con “%s”, nhưng nó không chứa %s. Lấy về trực "
-"tiếp lần chuyển giao gặp lỗi đó."
+msgid "failed to update conflicted state in '%s'"
+msgstr "gặp lỗi khi chạy cập nhật trạng thái bị xung đột trong “%s”"
 
-#: builtin/submodule--helper.c:2481
 #, c-format
-msgid ""
-"Submodule (%s) branch configured to inherit branch from superproject, but "
-"the superproject is not on any branch"
-msgstr ""
-"Nhánh mô-đun-con (%s) được cấu hình kế thừa nhánh từ siêu dự án, nhưng siêu "
-"dự án lại không trên bất kỳ nhánh nào"
+msgid "no remembered resolution for '%s'"
+msgstr "đừng nhó các giải quyết cho “%s”"
 
-#: builtin/submodule--helper.c:2499
 #, c-format
-msgid "could not get a repository handle for submodule '%s'"
-msgstr "không thể lấy thẻ quản kho cho mô-đun-con “%s”"
+msgid "cannot unlink '%s'"
+msgstr "không thể unlink “%s”"
 
-#: builtin/submodule--helper.c:2588
 #, c-format
-msgid "Unable to find current revision in submodule path '%s'"
-msgstr ""
-"Không tìm thấy điểm xét duyệt hiện hành trong đường dẫn mô-đun-con “%s”"
+msgid "Updated preimage for '%s'"
+msgstr "Đã cập nhật preimage cho “%s”"
 
-#: builtin/submodule--helper.c:2599
 #, c-format
-msgid "Unable to fetch in submodule path '%s'"
-msgstr "Không thể lấy về trong đường dẫn mô-đun-con “%s”"
+msgid "Forgot resolution for '%s'\n"
+msgstr "Quên phân giải cho “%s”\n"
 
-#: builtin/submodule--helper.c:2604
-#, c-format
-msgid "Unable to find %s revision in submodule path '%s'"
-msgstr "Không tìm thấy điểm xét duyệt %s trong đường dẫn mô-đun-con “%s”"
+msgid "unable to open rr-cache directory"
+msgstr "không thể mở thư mục rr-cache"
 
-#: builtin/submodule--helper.c:2640
-#, c-format
-msgid "Failed to recurse into submodule path '%s'"
-msgstr "Gặp lỗi khi đệ quy vào trong đường dẫn mô-đun-con “%s”"
+msgid "update the index with reused conflict resolution if possible"
+msgstr "cập nhật bảng mục lục với phân giải xung đột dùng lại nếu được"
 
-#: builtin/submodule--helper.c:2699
-msgid "force checkout updates"
-msgstr "ép buộc lấy ra các cập nhật"
+msgid "could not determine HEAD revision"
+msgstr "không thể dò tìm điểm xét duyệt HEAD"
 
-#: builtin/submodule--helper.c:2701
-msgid "initialize uninitialized submodules before update"
-msgstr "khởi tạo mô-đun-con chưa khởi tạo trước khi cập nhật"
+#, c-format
+msgid "failed to find tree of %s"
+msgstr "gặp lỗi khi tìm cây của %s"
 
-#: builtin/submodule--helper.c:2703
-msgid "use SHA-1 of submodule's remote tracking branch"
-msgstr "sử dụng SHA-1 của nhánh theo dõi máy chủ của mô-đun-con"
+msgid "--unpacked=<packfile> no longer supported"
+msgstr "--unpacked=<packfile> không còn được hỗ trợ nữa"
 
-#: builtin/submodule--helper.c:2705
-msgid "traverse submodules recursively"
-msgstr "đi theo mô-đun con một cách đệ quy"
+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"
 
-#: builtin/submodule--helper.c:2707
-msgid "don't fetch new objects from the remote site"
-msgstr "đừng lấy các đối tượng mới từ địa chỉ trên mạng"
+#, 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ả"
 
-#: builtin/submodule--helper.c:2710 builtin/submodule--helper.c:2892
-msgid "path into the working tree"
-msgstr "đường dẫn đến cây làm việc"
+msgid "object filtering requires --objects"
+msgstr "lọc đối tượng yêu cầu --objects"
 
-#: builtin/submodule--helper.c:2713
-msgid "path into the working tree, across nested submodule boundaries"
-msgstr "đường dẫn đến cây làm việc, chéo biên giới mô-đun-con lồng nhau"
+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"
 
-#: builtin/submodule--helper.c:2717
-msgid "rebase, merge, checkout or none"
-msgstr "rebase, merge, checkout hoặc không làm gì cả"
+#, c-format
+msgid "cannot create async thread: %s"
+msgstr "không thể tạo tuyến trình async: %s"
 
-#: builtin/submodule--helper.c:2723
-msgid "create a shallow clone truncated to the specified number of revisions"
+msgid "unexpected flush packet while reading remote unpack status"
 msgstr ""
-"tạo một bản sao nông được cắt ngắn thành số lượng điểm xét duyệt đã cho"
+"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ủ"
 
-#: builtin/submodule--helper.c:2726
-msgid "parallel jobs"
-msgstr "công việc đồng thời"
+#, 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"
 
-#: builtin/submodule--helper.c:2728
-msgid "whether the initial clone should follow the shallow recommendation"
-msgstr "nhân bản lần đầu có nên theo khuyến nghị là nông hay không"
+#, c-format
+msgid "remote unpack failed: %s"
+msgstr "máy chủ gặp lỗi unpack: %s"
 
-#: builtin/submodule--helper.c:2729
-msgid "don't print cloning progress"
-msgstr "đừng in tiến trình nhân bản"
+msgid "failed to sign the push certificate"
+msgstr "gặp lỗi khi ký chứng thực đẩy"
 
-#: builtin/submodule--helper.c:2741
-msgid ""
-"git submodule [--quiet] update [--init [--filter=<filter-spec>]] [--remote] "
-"[-N|--no-fetch] [-f|--force] [--checkout|--merge|--rebase] [--[no-]recommend-"
-"shallow] [--reference <repository>] [--recursive] [--[no-]single-branch] "
-"[--] [<path>...]"
-msgstr ""
-"git submodule [--quiet] update [--init [--filter=<filter-spec>]] [--remote] "
-"[-N|--no-fetch] [-f|--force] [--checkout|--merge|--rebase] [--[no-]recommend-"
-"shallow] [--reference <kho>] [--recursive] [--[no-]single-branch] [--] [</"
-"đường/dẫn/>...]"
+msgid "send-pack: unable to fork off fetch subprocess"
+msgstr "send-pack: không thể rẽ nhánh tuyến trình con fetch"
 
-#: builtin/submodule--helper.c:2767
-msgid "bad value for update parameter"
-msgstr "giá trị cho  tham số cập nhật bị sai"
+msgid "push negotiation failed; proceeding anyway with push"
+msgstr "đẩy đàm phán thất bại; vẫn tiếp tục xử lý bằng lệnh đẩy"
 
-#: builtin/submodule--helper.c:2893
-msgid "recurse into submodules"
-msgstr "đệ quy vào trong mô-đun-con"
+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"
 
-#: builtin/submodule--helper.c:2899
-msgid "git submodule--helper absorb-git-dirs [<options>] [<path>...]"
-msgstr "git submodule--helper absorb-git-dirs [<các tùy chọn>] [</đường/dẫn>…]"
+msgid "the receiving end does not support --signed push"
+msgstr "kết thúc nhận không hỗ trợ đẩy --signed"
 
-#: builtin/submodule--helper.c:2955
-msgid "check if it is safe to write to the .gitmodules file"
-msgstr "chọn nếu nó là an toàn để ghi vào tập tin .gitmodules"
+msgid ""
+"not sending a push certificate since the receiving end does not support --"
+"signed push"
+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"
 
-#: builtin/submodule--helper.c:2958
-msgid "unset the config in the .gitmodules file"
-msgstr "bỏ đặt cấu hình trong tập tin .gitmodules"
+msgid "the receiving end does not support --atomic push"
+msgstr "kết thúc nhận không hỗ trợ đẩy --atomic"
 
-#: builtin/submodule--helper.c:2963
-msgid "git submodule--helper config <name> [<value>]"
-msgstr "git submodule--helper config <tên> [<giá trị>]"
+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"
 
-#: builtin/submodule--helper.c:2964
-msgid "git submodule--helper config --unset <name>"
-msgstr "git submodule--helper config --unset <tên>"
+#, 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”"
 
-#: builtin/submodule--helper.c:2984 builtin/submodule--helper.c:3238
-#: builtin/submodule--helper.c:3395
-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"
+#, c-format
+msgid "could not delete '%s'"
+msgstr "không thể xóa bỏ “%s”"
 
-#: builtin/submodule--helper.c:3000
-msgid "suppress output for setting url of a submodule"
-msgstr "chặn kết xuất cho cài đặt url của một mô-đun-con"
+msgid "revert"
+msgstr "hoàn nguyên"
 
-#: builtin/submodule--helper.c:3004
-msgid "git submodule--helper set-url [--quiet] <path> <newurl>"
-msgstr "git submodule--helper set-url [--quiet] </đường/dẫn> <url_mới>"
+msgid "cherry-pick"
+msgstr "cherry-pick"
 
-#: builtin/submodule--helper.c:3037
-msgid "set the default tracking branch to master"
-msgstr "đặt nhánh theo dõi mặc định thành master"
+msgid "rebase"
+msgstr "rebase"
 
-#: builtin/submodule--helper.c:3039
-msgid "set the default tracking branch"
-msgstr "đặt nhánh theo dõi mặc định"
+#, c-format
+msgid "unknown action: %d"
+msgstr "không nhận ra thao tác: %d"
 
-#: builtin/submodule--helper.c:3043
-msgid "git submodule--helper set-branch [-q|--quiet] (-d|--default) <path>"
+msgid ""
+"after resolving the conflicts, mark the corrected paths\n"
+"with 'git add <paths>' or 'git rm <paths>'"
 msgstr ""
-"git submodule--helper set-branch [-q|--quiet](-d|--default)</đường/dẫn>"
+"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>”"
 
-#: builtin/submodule--helper.c:3044
 msgid ""
-"git submodule--helper set-branch [-q|--quiet] (-b|--branch) <branch> <path>"
+"After resolving the conflicts, mark them with\n"
+"\"git add/rm <pathspec>\", then run\n"
+"\"git cherry-pick --continue\".\n"
+"You can instead skip this commit with \"git cherry-pick --skip\".\n"
+"To abort and get back to the state before \"git cherry-pick\",\n"
+"run \"git cherry-pick --abort\"."
 msgstr ""
-"git submodule--helper set-branch [-q|--quiet] (-b|--branch) <nhánh> </đường/"
-"dẫn>"
-
-#: builtin/submodule--helper.c:3051
-msgid "--branch or --default required"
-msgstr "cần --branch hoặc --default"
-
-#: builtin/submodule--helper.c:3072 builtin/submodule--helper.c:3375
-msgid "print only error messages"
-msgstr "chỉ hiển thị các thông điệp báo lỗi"
-
-#: builtin/submodule--helper.c:3073
-msgid "force creation"
-msgstr "buộc tạo"
-
-#: builtin/submodule--helper.c:3081
-msgid "show whether the branch would be created"
-msgstr "hiển thị xem nhánh nào nên được tạo ra"
+"Sau khi giải quyết vấn đề xung đột, hãy đánh dấu bằng\n"
+"\"git add/rm <pathspec>\", sai đó chạy\n"
+"\"git cherry-pick --continue\".\n"
+"Bạn có thể bỏ qua lần chuyển giao này với \"git cherry-pick --skip\".\n"
+"Để bãi bỏ và quay trở lại trạng thái trước khi \"git cherry-pick\",\n"
+"chạy \"git cherry-pick --abort\"."
 
-#: builtin/submodule--helper.c:3085
 msgid ""
-"git submodule--helper create-branch [-f|--force] [--create-reflog] [-q|--"
-"quiet] [-t|--track] [-n|--dry-run] <name> <start-oid> <start-name>"
+"After resolving the conflicts, mark them with\n"
+"\"git add/rm <pathspec>\", then run\n"
+"\"git revert --continue\".\n"
+"You can instead skip this commit with \"git revert --skip\".\n"
+"To abort and get back to the state before \"git revert\",\n"
+"run \"git revert --abort\"."
 msgstr ""
-"git submodule--helper create-branch [-f|--force] [--create-reflog] [-q|--"
-"quiet] [-t|--track] [-n|--dry-run] <tên> <start-oid> <start-name>"
-
-#: builtin/submodule--helper.c:3097
-#, c-format
-msgid "creating branch '%s'"
-msgstr "đang tạo nhánh “%s”"
-
-#: builtin/submodule--helper.c:3155
-#, c-format
-msgid "Adding existing repo at '%s' to the index\n"
-msgstr "Đang thêm repo có sẵn tại “%s” vào bảng mục lục\n"
-
-#: builtin/submodule--helper.c:3158
-#, c-format
-msgid "'%s' already exists and is not a valid git repo"
-msgstr "“%s” đã tồn tại từ trước và không phải là một kho git hợp lệ"
+"Sau khi giải quyết vấn đề này, hãy đánh dấu chúng bằng\n"
+"\"git add/rm <đặc_tả_đường_dẫn_xung_đột>\", sau đó chạy\n"
+"\"git revert --continue\".\n"
+"Bạn có thể bỏ qua lần chuyển giao này với \"git rebase --skip\".\n"
+"Để bãi bỏ và quay trở lại trạng thái trước \"git revert\",\n"
+"chạy \"git revert --abort\"."
 
-#: builtin/submodule--helper.c:3171
 #, c-format
-msgid "A git directory for '%s' is found locally with remote(s):\n"
-msgstr "Thư mục git cho “%s” được tìm thấy một cách cục bộ với các máy chủ:\n"
+msgid "could not lock '%s'"
+msgstr "không thể khóa “%s”"
 
-#: builtin/submodule--helper.c:3178
 #, c-format
-msgid ""
-"If you want to reuse this local git directory instead of cloning again from\n"
-"  %s\n"
-"use the '--force' option. If the local git directory is not the correct "
-"repo\n"
-"or you are unsure what this means choose another name with the '--name' "
-"option."
-msgstr ""
-"Nếu bạn muốn sử dụng lại thư mục git nội bộ này thay vì nhân bản lại lần nữa "
-"từ\n"
-"  %s\n"
-"dùng tùy chọn “--force”. Nếu thư mục git nội bộ không phải là một kho đúng "
-"hoặc\n"
-"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”."
+msgid "could not write to '%s'"
+msgstr "không thể ghi vào “%s”"
 
-#: builtin/submodule--helper.c:3190
 #, c-format
-msgid "Reactivating local git directory for submodule '%s'\n"
-msgstr "Phục hồi sự hoạt động của thư mục git nội bộ cho mô-đun-con “%s”.\n"
+msgid "could not write eol to '%s'"
+msgstr "không thể ghi eol vào “%s”"
 
-#: builtin/submodule--helper.c:3227
 #, c-format
-msgid "unable to checkout submodule '%s'"
-msgstr "không thể lấy ra mô-đun-con “%s”"
+msgid "failed to finalize '%s'"
+msgstr "gặp lỗi khi hoàn thành “%s”"
 
-#: builtin/submodule--helper.c:3266
 #, c-format
-msgid "Failed to add submodule '%s'"
-msgstr "Gặp lỗi khi thêm mô-đun-con “%s”"
+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."
 
-#: builtin/submodule--helper.c:3270 builtin/submodule--helper.c:3275
-#: builtin/submodule--helper.c:3283
-#, c-format
-msgid "Failed to register submodule '%s'"
-msgstr "Gặp lỗi khi đăng ký mô-đun-con “%s”"
+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ý."
 
-#: builtin/submodule--helper.c:3339
 #, c-format
-msgid "'%s' already exists in the index"
-msgstr "”%s” thực sự đã tồn tại ở bảng mục lục rồi"
+msgid "%s: fast-forward"
+msgstr "%s: chuyển-tiếp-nhanh"
 
-#: builtin/submodule--helper.c:3342
+#. TRANSLATORS: %s will be "revert", "cherry-pick" or
+#. "rebase".
+#.
 #, c-format
-msgid "'%s' already exists in the index and is not a submodule"
-msgstr ""
-"”%s” 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"
-
-#: builtin/submodule--helper.c:3372
-msgid "branch of repository to add as submodule"
-msgstr "nhánh của kho để thêm như là mô-đun-con"
-
-#: builtin/submodule--helper.c:3373
-msgid "allow adding an otherwise ignored submodule path"
-msgstr "cho phép thêm một đường dẫn mô-đun-con bị bỏ qua khác"
-
-#: builtin/submodule--helper.c:3379
-msgid "borrow the objects from reference repositories"
-msgstr "vay mượn các đối tượng từ kho thay thế"
-
-#: builtin/submodule--helper.c:3381
-msgid ""
-"sets the submodule’s name to the given string instead of defaulting to its "
-"path"
-msgstr ""
-"đặt tên của mô-đun-con bằng chuỗi đã cho thay vì mặc định là đường dẫn của nó"
+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"
 
-#: builtin/submodule--helper.c:3388
-msgid "git submodule--helper add [<options>] [--] <repository> [<path>]"
-msgstr "git submodule--helper add [<các tùy chọn>] [--] <kho> [</đường/dẫn>]"
+msgid "unable to update cache tree"
+msgstr "không thể cập nhật cây bộ nhớ đệm"
 
-#: builtin/submodule--helper.c:3416
-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"
+msgid "could not resolve HEAD commit"
+msgstr "không thể phân giải lần chuyển giao HEAD"
 
-#: builtin/submodule--helper.c:3425
 #, c-format
-msgid "repo URL: '%s' must be absolute or begin with ./|../"
-msgstr "repo URL: “%s” phải là đường dẫn tuyệt đối hoặc là bắt đầu bằng ./|../"
+msgid "no key present in '%.*s'"
+msgstr "không có khóa hiện diện trong “%.*s”"
 
-#: builtin/submodule--helper.c:3460
 #, c-format
-msgid "'%s' is not a valid submodule name"
-msgstr "“%s” không phải là một tên mô-đun-con hợp lệ"
+msgid "unable to dequote value of '%s'"
+msgstr "không thể giải trích dẫn giá trị của “%s”"
 
-#: builtin/submodule--helper.c:3520 git.c:453 git.c:729
-#, c-format
-msgid "%s doesn't support --super-prefix"
-msgstr "%s không hỗ trợ --super-prefix"
+msgid "'GIT_AUTHOR_NAME' already given"
+msgstr "“GIT_AUTHOR_NAME” đã sẵn đưa ra rồi"
 
-#: builtin/submodule--helper.c:3526
-#, c-format
-msgid "'%s' is not a valid submodule--helper subcommand"
-msgstr "“%s” không phải là lệnh con submodule--helper hợp lệ"
+msgid "'GIT_AUTHOR_EMAIL' already given"
+msgstr "“GIT_AUTHOR_EMAIL” đã sẵn đưa ra rồi"
 
-#: builtin/symbolic-ref.c:8
-msgid "git symbolic-ref [<options>] <name> [<ref>]"
-msgstr "git symbolic-ref [<các tùy chọn>] <tên> [<t.chiếu>]"
+msgid "'GIT_AUTHOR_DATE' already given"
+msgstr "“GIT_AUTHOR_DATE” đã sẵn đưa ra rồi"
 
-#: builtin/symbolic-ref.c:9
-msgid "git symbolic-ref -d [-q] <name>"
-msgstr "git symbolic-ref -d [-q] <tên>"
+#, c-format
+msgid "unknown variable '%s'"
+msgstr "không hiểu biến “%s”"
 
-#: builtin/symbolic-ref.c:42
-msgid "suppress error message for non-symbolic (detached) refs"
-msgstr "chặn các thông tin lỗi cho các tham chiếu “không-mềm” (bị tách ra)"
+msgid "missing 'GIT_AUTHOR_NAME'"
+msgstr "thiếu “GIT_AUTHOR_NAME”"
 
-#: builtin/symbolic-ref.c:43
-msgid "delete symbolic ref"
-msgstr "xóa tham chiếu mềm"
+msgid "missing 'GIT_AUTHOR_EMAIL'"
+msgstr "thiếu “GIT_AUTHOR_EMAIL”"
 
-#: builtin/symbolic-ref.c:44
-msgid "shorten ref output"
-msgstr "làm ngắn kết xuất ref (tham chiếu)"
+msgid "missing 'GIT_AUTHOR_DATE'"
+msgstr "thiếu “GIT_AUTHOR_DATE”"
 
-#: builtin/symbolic-ref.c:45 builtin/update-ref.c:505
-msgid "reason"
-msgstr "lý do"
+#, c-format
+msgid ""
+"you have staged changes in your working tree\n"
+"If these changes are meant to be squashed into the previous commit, run:\n"
+"\n"
+"  git commit --amend %s\n"
+"\n"
+"If they are meant to go into a new commit, run:\n"
+"\n"
+"  git commit %s\n"
+"\n"
+"In both cases, once you're done, continue with:\n"
+"\n"
+"  git rebase --continue\n"
+msgstr ""
+"bạn có các thay đổi so với trong bệ phóng trong thư mục làm việc của bạn.\n"
+"Nếu các thay đổi này là muốn squash vào lần chuyển giao kế trước, chạy:\n"
+"\n"
+"  git commit --amend %s\n"
+"\n"
+"Nếu chúng có ý là đi đến lần chuyển giao mới, thì chạy:\n"
+"\n"
+"  git commit %s\n"
+"\n"
+"Trong cả hai trường hợp, một khi bạn làm xong, tiếp tục bằng:\n"
+"\n"
+"  git rebase --continue\n"
 
-#: builtin/symbolic-ref.c:45 builtin/update-ref.c:505
-msgid "reason of the update"
-msgstr "lý do cập nhật"
+msgid "'prepare-commit-msg' hook failed"
+msgstr "móc “prepare-commit-msg” bị lỗi"
 
-#: builtin/tag.c:26
 msgid ""
-"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>]\n"
-"        <tagname> [<head>]"
+"Your name and email address were configured automatically based\n"
+"on your username and hostname. Please check that they are accurate.\n"
+"You can suppress this message by setting them explicitly. Run the\n"
+"following command and follow the instructions in your editor to edit\n"
+"your configuration file:\n"
+"\n"
+"    git config --global --edit\n"
+"\n"
+"After doing this, you may fix the identity used for this commit with:\n"
+"\n"
+"    git commit --amend --reset-author\n"
 msgstr ""
-"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <tập-tin>]\n"
-"        <tên-thẻ> [<head>]"
-
-#: builtin/tag.c:28
-msgid "git tag -d <tagname>..."
-msgstr "git tag -d <tên-thẻ>…"
+"Tên và địa chỉ thư điện tử của bạn được cấu hình một cách tự động trên cơ "
+"sở\n"
+"tài khoản và địa chỉ máy chủ của bạn. Xin hãy kiểm tra xem chúng có chính "
+"xác không.\n"
+"Bạn có thể chặn những thông báo kiểu này bằng cách cài đặt các thông tin "
+"trên\n"
+"một cách rõ ràng. Chạy lệnh sau đây là theo các hướng dẫn trong bộ soạn "
+"thảo\n"
+"để chỉnh sửa tập tin cấu hình của mình:\n"
+"\n"
+"    git config --global --edit\n"
+"\n"
+"Sau khi thực hiện xong, bạn có thể sửa chữa định danh được sử dụng cho\n"
+"lần chuyển giao này với lệnh:\n"
+"\n"
+"    git commit --amend --reset-author\n"
 
-#: builtin/tag.c:29
 msgid ""
-"git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit>] [--"
-"points-at <object>]\n"
-"        [--format=<format>] [--merged <commit>] [--no-merged <commit>] "
-"[<pattern>...]"
+"Your name and email address were configured automatically based\n"
+"on your username and hostname. Please check that they are accurate.\n"
+"You can suppress this message by setting them explicitly:\n"
+"\n"
+"    git config --global user.name \"Your Name\"\n"
+"    git config --global user.email you@example.com\n"
+"\n"
+"After doing this, you may fix the identity used for this commit with:\n"
+"\n"
+"    git commit --amend --reset-author\n"
 msgstr ""
-"git tag -l [-n[<số>]] [--contains <lần_chuyển_giao>] [--no-contains "
-"<lần_chuyển_giao>] [--points-at <đối-tượng>]\n"
-"        [--format=<định_dạng>] [--merged <lần_chuyển_giao>] [--no-merged "
-"[<lần_chuyển_giao>]] [<mẫu>…]"
+"Tên và địa chỉ thư điện tử của bạn được cấu hình một cách tự động trên cơ "
+"sở\n"
+"tài khoản và địa chỉ máy chủ của bạn. Xin hãy kiểm tra xem chúng có chính "
+"xác không.\n"
+"Bạn có thể chặn những thông báo kiểu này bằng cách cài đặt các thông tin "
+"trên một cách rõ ràng:\n"
+"\n"
+"    git config --global user.name \"Tên của bạn\"\n"
+"    git config --global user.email you@example.com\n"
+"\n"
+"Sau khi thực hiện xong, bạn có thể sửa chữa định danh được sử dụng cho lần "
+"chuyển giao này với lệnh:\n"
+"\n"
+"    git commit --amend --reset-author\n"
 
-#: builtin/tag.c:31
-msgid "git tag -v [--format=<format>] <tagname>..."
-msgstr "git tag -v [--format=<định_dạng>]  <tên-thẻ>…"
+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"
 
-#: builtin/tag.c:101
-#, c-format
-msgid "tag '%s' not found."
-msgstr "không tìm thấy tìm thấy thẻ “%s”."
+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"
 
-#: builtin/tag.c:136
-#, c-format
-msgid "Deleted tag '%s' (was %s)\n"
-msgstr "Thẻ đã bị xóa “%s” (từng là %s)\n"
+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"
+
+msgid "detached HEAD"
+msgstr "đã rời khỏi HEAD"
+
+msgid " (root-commit)"
+msgstr " (root-commit)"
+
+msgid "could not parse HEAD"
+msgstr "không thể phân tích HEAD"
 
-#: builtin/tag.c:171
 #, c-format
-msgid ""
-"\n"
-"Write a message for tag:\n"
-"  %s\n"
-"Lines starting with '%c' will be ignored.\n"
-msgstr ""
-"\n"
-"Viết các ghi chú cho thẻ:\n"
-"  %s\n"
-"Những dòng được bắt đầu bằng “%c” sẽ được bỏ qua.\n"
+msgid "HEAD %s is not a commit!"
+msgstr "HEAD %s không phải là một lần chuyển giao!"
+
+msgid "unable to parse commit author"
+msgstr "không thể phân tích tác giả của lần chuyển giao"
 
-#: builtin/tag.c:175
 #, c-format
-msgid ""
-"\n"
-"Write a message for tag:\n"
-"  %s\n"
-"Lines starting with '%c' will be kept; you may remove them yourself if you "
-"want to.\n"
-msgstr ""
-"\n"
-"Viết các ghi chú cho thẻ:\n"
-"  %s\n"
-"Những dòng được bắt đầu bằng “%c” sẽ được giữ lại; bạn có thể xóa chúng đi "
-"nếu muốn.\n"
-
-#: builtin/tag.c:241
-msgid "unable to sign the tag"
-msgstr "không thể ký thẻ"
+msgid "unable to read commit message from '%s'"
+msgstr "không thể đọc phần chú thích (message) từ “%s”"
 
-#: builtin/tag.c:259
 #, c-format
-msgid ""
-"You have created a nested tag. The object referred to by your new tag is\n"
-"already a tag. If you meant to tag the object that it points to, use:\n"
-"\n"
-"\tgit tag -f %s %s^{}"
-msgstr ""
-"Bạn đã tạo một thẻ lồng nhau. Đối tượng được chỉ đến thẻ mới của bạn là\n"
-"đã là một thẻ. Nếu ý bạn là gắn thẻ đối tượng mà nó trỏ đến, sử dụng:\n"
-"\n"
-"\tgit tag -f %s %s^{}"
+msgid "invalid author identity '%s'"
+msgstr "định danh tác giả không hợp lệ “%s”"
 
-#: builtin/tag.c:275
-msgid "bad object type."
-msgstr "kiểu đối tượng sai."
+msgid "corrupt author: missing date information"
+msgstr "tác giả sai hỏng: thiếu thông tin ngày tháng"
 
-#: builtin/tag.c:326
-msgid "no tag message?"
-msgstr "không có chú thích gì cho cho thẻ à?"
+#, c-format
+msgid "could not update %s"
+msgstr "không thể cập nhật %s"
 
-#: builtin/tag.c:333
 #, c-format
-msgid "The tag message has been left in %s\n"
-msgstr "Nội dung ghi chú còn lại %s\n"
+msgid "could not parse commit %s"
+msgstr "không thể phân tích lần chuyển giao %s"
 
-#: builtin/tag.c:445
-msgid "list tag names"
-msgstr "chỉ liệt kê tên các thẻ"
+#, 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”"
 
-#: builtin/tag.c:447
-msgid "print <n> lines of each tag message"
-msgstr "hiển thị <n> dòng cho mỗi ghi chú"
+#, c-format
+msgid "unknown command: %d"
+msgstr "không hiểu câu lệnh %d"
 
-#: builtin/tag.c:449
-msgid "delete tags"
-msgstr "xóa thẻ"
+msgid "This is the 1st commit message:"
+msgstr "Đây là chú thích cho lần chuyển giao thứ nhất:"
 
-#: builtin/tag.c:450
-msgid "verify tags"
-msgstr "thẩm tra thẻ"
+#, c-format
+msgid "This is the commit message #%d:"
+msgstr "Đây là chú thích cho lần chuyển giao thứ #%d:"
 
-#: builtin/tag.c:452
-msgid "Tag creation options"
-msgstr "Tùy chọn tạo thẻ"
+msgid "The 1st commit message will be skipped:"
+msgstr "Chú thích cho lần chuyển giao thứ nhất sẽ bị bỏ qua:"
 
-#: builtin/tag.c:454
-msgid "annotated tag, needs a message"
-msgstr "để chú giải cho thẻ, cần một lời ghi chú"
+#, 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:"
 
-#: builtin/tag.c:456
-msgid "tag message"
-msgstr "phần chú thích cho thẻ"
+#, c-format
+msgid "This is a combination of %d commits."
+msgstr "Đây là tổ hợp của %d lần chuyển giao."
 
-#: builtin/tag.c:458
-msgid "force edit of tag message"
-msgstr "ép buộc sửa thẻ lần commit"
+#, c-format
+msgid "cannot write '%s'"
+msgstr "không thể ghi “%s”"
 
-#: builtin/tag.c:459
-msgid "annotated and GPG-signed tag"
-msgstr "thẻ chú giải và ký kiểu GPG"
+msgid "need a HEAD to fixup"
+msgstr "cần một HEAD để sửa"
 
-#: builtin/tag.c:462
-msgid "use another key to sign the tag"
-msgstr "dùng kháo khác để ký thẻ"
+msgid "could not read HEAD"
+msgstr "không thể đọc HEAD"
 
-#: builtin/tag.c:463
-msgid "replace the tag if exists"
-msgstr "thay thế nếu thẻ đó đã có trước"
+msgid "could not read HEAD's commit message"
+msgstr "không thể đọc phần chú thích (message) của HEAD"
 
-#: builtin/tag.c:464 builtin/update-ref.c:511
-msgid "create a reflog"
-msgstr "tạo một reflog"
+#, c-format
+msgid "could not read commit message of %s"
+msgstr "không thể đọc phần chú thích (message) của %s"
 
-#: builtin/tag.c:466
-msgid "Tag listing options"
-msgstr "Các tùy chọn liệt kê thẻ"
+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."
 
-#: builtin/tag.c:467
-msgid "show tag list in columns"
-msgstr "hiển thị danh sách thẻ trong các cột"
+msgid "cannot fixup root commit"
+msgstr "không thể sửa chữa lần chuyển giao gốc"
 
-#: builtin/tag.c:468 builtin/tag.c:470
-msgid "print only tags that contain the commit"
-msgstr "chỉ hiển thị những nhánh mà nó chứa lần chuyển giao"
+#, 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."
 
-#: builtin/tag.c:469 builtin/tag.c:471
-msgid "print only tags that don't contain the commit"
-msgstr "chỉ hiển thị những thẻ mà nó không chứa lần chuyển giao"
+#, c-format
+msgid "commit %s does not have parent %d"
+msgstr "lần chuyển giao %s không có cha mẹ %d"
 
-#: builtin/tag.c:472
-msgid "print only tags that are merged"
-msgstr "chỉ hiển thị những thẻ mà nó được hòa trộn"
+#, c-format
+msgid "cannot get commit message for %s"
+msgstr "không thể lấy ghi chú lần chuyển giao cho %s"
 
-#: builtin/tag.c:473
-msgid "print only tags that are not merged"
-msgstr "chỉ hiển thị những thẻ mà nó không được hòa trộn"
+#. TRANSLATORS: The first %s will be a "todo" command like
+#. "revert" or "pick", the second %s a SHA1.
+#, 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"
 
-#: builtin/tag.c:477
-msgid "print only tags of the object"
-msgstr "chỉ hiển thị các thẻ của đối tượng"
+#, c-format
+msgid "could not rename '%s' to '%s'"
+msgstr "không thể đổi tên “%s” thành “%s”"
 
-#: builtin/tag.c:559
 #, c-format
-msgid "the '%s' option is only allowed in list mode"
-msgstr "tùy chọn '%s' chỉ cho phép dùng trong chế độ liệt kê"
+msgid "could not revert %s... %s"
+msgstr "không thể hoàn nguyên %s… %s"
 
-#: builtin/tag.c:598
 #, c-format
-msgid "'%s' is not a valid tag name."
-msgstr "“%s” không phải thẻ hợp lệ."
+msgid "could not apply %s... %s"
+msgstr "không thể áp dụng miếng vá %s… %s"
 
-#: builtin/tag.c:603
 #, c-format
-msgid "tag '%s' already exists"
-msgstr "thẻ “%s” đã tồn tại rồi"
+msgid "dropping %s %s -- patch contents already upstream\n"
+msgstr "xóa %s %s -- vá nội dung thượng nguồn đã có\n"
 
-#: builtin/tag.c:634
 #, c-format
-msgid "Updated tag '%s' (was %s)\n"
-msgstr "Đã cập nhật thẻ “%s” (trước là %s)\n"
+msgid "git %s: failed to read the index"
+msgstr "git %s: gặp lỗi đọc bảng mục lục"
 
-#: builtin/unpack-objects.c:95
-msgid "pack exceeds maximum allowed size"
-msgstr "gói đã vượt quá cỡ tối đa được phép"
+#, 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"
 
-#: builtin/unpack-objects.c:504
-msgid "Unpacking objects"
-msgstr "Đang giải nén các đối tượng"
+#, c-format
+msgid "%s does not accept arguments: '%s'"
+msgstr "%s không nhận các đối số: “%s”"
 
-#: builtin/update-index.c:84
 #, c-format
-msgid "failed to create directory %s"
-msgstr "tạo thư mục \"%s\" gặp lỗi"
+msgid "missing arguments for %s"
+msgstr "thiếu đối số cho %s"
 
-#: builtin/update-index.c:106
 #, c-format
-msgid "failed to delete file %s"
-msgstr "gặp lỗi khi xóa tập tin %s"
+msgid "could not parse '%s'"
+msgstr "không thể phân tích cú pháp “%s”"
 
-#: builtin/update-index.c:113 builtin/update-index.c:219
 #, c-format
-msgid "failed to delete directory %s"
-msgstr "gặp lỗi khi xóa thư mục %s"
+msgid "invalid line %d: %.*s"
+msgstr "dòng không hợp lệ %d: %.*s"
 
-#: builtin/update-index.c:138
 #, c-format
-msgid "Testing mtime in '%s' "
-msgstr "Đang kiểm thử mtime trong “%s” "
+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"
 
-#: builtin/update-index.c:152
-msgid "directory stat info does not change after adding a new file"
-msgstr "thông tin thống kê thư mục không thay đổi sau khi thêm tập tin mới"
+msgid "cancelling a cherry picking in progress"
+msgstr "đang hủy bỏ thao tác cherry pick đang thực hiện"
 
-#: builtin/update-index.c:165
-msgid "directory stat info does not change after adding a new directory"
-msgstr "thông tin thống kê thư mục không thay đổi sau khi thêm thư mục mới"
+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"
 
-#: builtin/update-index.c:178
-msgid "directory stat info changes after updating a file"
-msgstr "thông tin thống kê thư mục thay đổi sau khi cập nhật tập tin"
+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”."
 
-#: builtin/update-index.c:189
-msgid "directory stat info changes after adding a file inside subdirectory"
-msgstr ""
-"thông tin thống kê thư mục thay đổi sau khi thêm tập tin mới vào trong thư "
-"mục con"
+#, c-format
+msgid "unusable instruction sheet: '%s'"
+msgstr "bảng chỉ thị không thể dùng được: %s"
 
-#: builtin/update-index.c:200
-msgid "directory stat info does not change after deleting a file"
-msgstr "thông tin thống kê thư mục không thay đổi sau khi xóa tập tin"
+msgid "no commits parsed."
+msgstr "không có lần chuyển giao nào được phân tích."
 
-#: builtin/update-index.c:213
-msgid "directory stat info does not change after deleting a directory"
-msgstr "thông tin thống kê thư mục không thay đổi sau khi xóa thư mục"
+msgid "cannot cherry-pick during a revert."
+msgstr "không thể cherry-pick trong khi hoàn nguyên."
 
-#: builtin/update-index.c:220
-msgid " OK"
-msgstr " Đồng ý"
+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."
 
-#: builtin/update-index.c:589
-msgid "git update-index [<options>] [--] [<file>...]"
-msgstr "git update-index [<các tùy chọn>] [--] [<tập-tin>…]"
+msgid "unusable squash-onto"
+msgstr "squash-onto không dùng được"
 
-#: builtin/update-index.c:993
-msgid "continue refresh even when index needs update"
-msgstr "tiếp tục làm mới ngay cả khi bảng mục lục cần được cập nhật"
+#, c-format
+msgid "malformed options sheet: '%s'"
+msgstr "bảng tùy chọn dị hình: “%s”"
 
-#: builtin/update-index.c:996
-msgid "refresh: ignore submodules"
-msgstr "refresh: lờ đi mô-đun-con"
+msgid "empty commit set passed"
+msgstr "lần chuyển giao trống rỗng đặt là hợp quy cách"
 
-#: builtin/update-index.c:999
-msgid "do not ignore new files"
-msgstr "không bỏ qua các tập tin mới tạo"
+msgid "revert is already in progress"
+msgstr "có thao tác hoàn nguyên đang được thực hiện"
 
-#: builtin/update-index.c:1001
-msgid "let files replace directories and vice-versa"
-msgstr "để các tập tin thay thế các thư mục và “vice-versa”"
+#, c-format
+msgid "try \"git revert (--continue | %s--abort | --quit)\""
+msgstr "hãy thử \"git revert (--continue | %s--abort | --quit)\""
 
-#: builtin/update-index.c:1003
-msgid "notice files missing from worktree"
-msgstr "thông báo các tập-tin thiếu trong thư-mục làm việc"
+msgid "cherry-pick is already in progress"
+msgstr "có thao tác “cherry-pick” đang được thực hiện"
 
-#: builtin/update-index.c:1005
-msgid "refresh even if index contains unmerged entries"
-msgstr ""
-"làm tươi mới thậm chí khi bảng mục lục chứa các mục tin chưa được hòa trộn"
+#, c-format
+msgid "try \"git cherry-pick (--continue | %s--abort | --quit)\""
+msgstr "hãy thử \"git cherry-pick (--continue | %s--abort | --quit)\""
 
-#: builtin/update-index.c:1008
-msgid "refresh stat information"
-msgstr "lấy lại thông tin thống kê"
+#, c-format
+msgid "could not create sequencer directory '%s'"
+msgstr "không thể tạo thư mục xếp dãy “%s”"
 
-#: builtin/update-index.c:1012
-msgid "like --refresh, but ignore assume-unchanged setting"
-msgstr "giống --refresh, nhưng bỏ qua các cài đặt “assume-unchanged”"
+msgid "could not lock HEAD"
+msgstr "không thể khóa HEAD"
+
+msgid "no cherry-pick or revert in progress"
+msgstr "không cherry-pick hay hoàn nguyên trong tiến trình"
+
+msgid "cannot resolve HEAD"
+msgstr "không thể phân giải HEAD"
+
+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"
+
+#, c-format
+msgid "cannot read '%s': %s"
+msgstr "không thể đọc “%s”: %s"
 
-#: builtin/update-index.c:1016
-msgid "<mode>,<object>,<path>"
-msgstr "<chế_độ>,<đối_tượng>,<đường_dẫn>"
+msgid "unexpected end of file"
+msgstr "gặp kết thúc tập tin đột xuất"
 
-#: builtin/update-index.c:1017
-msgid "add the specified entry to the index"
-msgstr "thêm các tập tin đã chỉ ra vào bảng mục lục"
+#, 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"
 
-#: builtin/update-index.c:1027
-msgid "mark files as \"not changing\""
-msgstr "đánh dấu các tập tin là \"không thay đổi\""
+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!"
 
-#: builtin/update-index.c:1030
-msgid "clear assumed-unchanged bit"
-msgstr "xóa bít assumed-unchanged (giả định là không thay đổi)"
+msgid "no revert in progress"
+msgstr "không có tiến trình hoàn nguyên nào"
 
-#: builtin/update-index.c:1033
-msgid "mark files as \"index-only\""
-msgstr "đánh dấu các tập tin là “chỉ-đọc”"
+msgid "no cherry-pick in progress"
+msgstr "không có cherry-pick đang được thực hiện"
 
-#: builtin/update-index.c:1036
-msgid "clear skip-worktree bit"
-msgstr "xóa bít skip-worktree"
+msgid "failed to skip the commit"
+msgstr "gặp lỗi khi bỏ qua đối tượng chuyển giao"
 
-#: builtin/update-index.c:1039
-msgid "do not touch index-only entries"
-msgstr "đừng động vào các mục index-only"
+msgid "there is nothing to skip"
+msgstr "ở đây không có gì để mà bỏ qua cả"
 
-#: builtin/update-index.c:1041
-msgid "add to index only; do not add content to object database"
+#, c-format
+msgid ""
+"have you committed already?\n"
+"try \"git %s --continue\""
 msgstr ""
-"chỉ thêm vào bảng mục lục; không thêm nội dung vào cơ sở dữ liệu đối tượng"
+"bạn đã sẵn sàng chuyển giao chưa?\n"
+"thử \"git %s --continue\""
 
-#: builtin/update-index.c:1043
-msgid "remove named paths even if present in worktree"
-msgstr ""
-"gỡ bỏ các đường dẫn được đặt tên thậm chí cả khi nó hiện diện trong thư mục "
-"làm việc"
+msgid "cannot read HEAD"
+msgstr "không thể đọc HEAD"
 
-#: builtin/update-index.c:1045
-msgid "with --stdin: input lines are terminated by null bytes"
-msgstr "với tùy chọn --stdin: các dòng đầu vào được chấm dứt bởi ký tự null"
+#, c-format
+msgid "unable to copy '%s' to '%s'"
+msgstr "không thể chép “%s” sang “%s”"
 
-#: builtin/update-index.c:1047
-msgid "read list of paths to be updated from standard input"
-msgstr "đọc danh sách đường dẫn cần cập nhật từ đầu vào tiêu chuẩn"
+#, c-format
+msgid ""
+"You can amend the commit now, with\n"
+"\n"
+"  git commit --amend %s\n"
+"\n"
+"Once you are satisfied with your changes, run\n"
+"\n"
+"  git rebase --continue\n"
+msgstr ""
+"Bạn có thể tu bổ lần chuyển giao ngay bây giờ bằng:\n"
+"\n"
+"  git commit --amend %s\n"
+"\n"
+"Một khi đã hài lòng với những thay đổi của mình, thì chạy:\n"
+"\n"
+"  git rebase --continue\n"
 
-#: builtin/update-index.c:1051
-msgid "add entries from standard input to the index"
-msgstr "không thể đọc các mục từ đầu vào tiêu chuẩn vào bảng mục lục"
+#, c-format
+msgid "Could not apply %s... %.*s"
+msgstr "Không thể áp dụng %s… %.*s"
 
-#: builtin/update-index.c:1055
-msgid "repopulate stages #2 and #3 for the listed paths"
-msgstr "phục hồi các trạng thái #2 và #3 cho các đường dẫn được liệt kê"
+#, c-format
+msgid "Could not merge %.*s"
+msgstr "Không hòa trộn %.*s"
 
-#: builtin/update-index.c:1059
-msgid "only update entries that differ from HEAD"
-msgstr "chỉ cập nhật các mục tin mà nó khác biệt so với HEAD"
+#, c-format
+msgid "Executing: %s\n"
+msgstr "Đang thực thi: %s\n"
 
-#: builtin/update-index.c:1063
-msgid "ignore files missing from worktree"
-msgstr "bỏ qua các tập-tin thiếu trong thư-mục làm việc"
+#, c-format
+msgid ""
+"execution failed: %s\n"
+"%sYou can fix the problem, and then run\n"
+"\n"
+"  git rebase --continue\n"
+"\n"
+msgstr ""
+"thực thi gặp lỗi: %s\n"
+"%sBạn có thể sửa các trục trặc, và sau đó chạy lệnh\n"
+"\n"
+"  git rebase --continue\n"
+"\n"
 
-#: builtin/update-index.c:1066
-msgid "report actions to standard output"
-msgstr "báo cáo các thao tác ra thiết bị xuất chuẩn"
+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"
 
-#: builtin/update-index.c:1068
-msgid "(for porcelains) forget saved unresolved conflicts"
-msgstr "(cho “porcelains”) quên các xung đột chưa được giải quyết đã ghi"
+#, c-format
+msgid ""
+"execution succeeded: %s\n"
+"but left changes to the index and/or the working tree\n"
+"Commit or stash your changes, and then run\n"
+"\n"
+"  git rebase --continue\n"
+"\n"
+msgstr ""
+"thực thi thành công: %s\n"
+"nhưng còn các thay đổi trong mục lục và/hoặc cây làm việc\n"
+"Chuyển giao hay tạm cất các thay đổi này đi, rồi chạy\n"
+"\n"
+"  git rebase --continue\n"
+"\n"
 
-#: builtin/update-index.c:1072
-msgid "write index in this format"
-msgstr "ghi mục lục ở định dạng này"
+#, c-format
+msgid "illegal label name: '%.*s'"
+msgstr "tên nhãn dị hình: “%.*s”"
 
-#: builtin/update-index.c:1074
-msgid "enable or disable split index"
-msgstr "bật/tắt chia cắt bảng mục lục"
+msgid "writing fake root commit"
+msgstr "ghi lần chuyển giao gốc giả"
 
-#: builtin/update-index.c:1076
-msgid "enable/disable untracked cache"
-msgstr "bật/tắt bộ đệm không theo vết"
+msgid "writing squash-onto"
+msgstr "đang ghi squash-onto"
 
-#: builtin/update-index.c:1078
-msgid "test if the filesystem supports untracked cache"
-msgstr "kiểm tra xem hệ thống tập tin có hỗ trợ đệm không theo dõi hay không"
+#, c-format
+msgid "could not resolve '%s'"
+msgstr "không thể phân giải “%s”"
 
-#: builtin/update-index.c:1080
-msgid "enable untracked cache without testing the filesystem"
-msgstr "bật bộ đệm không theo vết mà không kiểm tra hệ thống tập tin"
+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"
 
-#: builtin/update-index.c:1082
-msgid "write out the index even if is not flagged as changed"
-msgstr "ghi ra mục lục ngay cả khi không được đánh cờ là có thay đổi"
+#, c-format
+msgid "unable to parse '%.*s'"
+msgstr "không thể phân tích “%.*s”"
 
-#: builtin/update-index.c:1084
-msgid "enable or disable file system monitor"
-msgstr "bật/tắt theo dõi hệ thống tập tin"
+#, c-format
+msgid "nothing to merge: '%.*s'"
+msgstr "chẳng có gì để hòa trộn: “%.*s”"
 
-#: builtin/update-index.c:1086
-msgid "mark files as fsmonitor valid"
-msgstr "đánh dấu các tập tin là hợp lệ fsmonitor"
+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]"
 
-#: builtin/update-index.c:1089
-msgid "clear fsmonitor valid bit"
-msgstr "xóa bít hợp lệ fsmonitor"
+#, 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”"
 
-#: builtin/update-index.c:1195
-msgid ""
-"core.splitIndex is set to false; remove or change it, if you really want to "
-"enable split index"
-msgstr ""
-"core.splitIndex được đặt là sai; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
-"muốn bật chia tách mục lục"
+#, c-format
+msgid "could not even attempt to merge '%.*s'"
+msgstr "không thể ngay cả khi thử hòa trộn “%.*s”"
 
-#: builtin/update-index.c:1204
-msgid ""
-"core.splitIndex is set to true; remove or change it, if you really want to "
-"disable split index"
-msgstr ""
-"core.splitIndex được đặt là đúng; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
-"muốn tắt chia tách mục lục"
+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"
 
-#: builtin/update-index.c:1216
-msgid ""
-"core.untrackedCache is set to true; remove or change it, if you really want "
-"to disable the untracked cache"
-msgstr ""
-"core.untrackedCache được đặt là đúng; xóa bỏ hay thay đổi nó, nếu bạn thực "
-"sự muốn tắt bộ đệm chưa theo dõi"
+msgid "Cannot autostash"
+msgstr "Không thể autostash"
 
-#: builtin/update-index.c:1220
-msgid "Untracked cache disabled"
-msgstr "Nhớ đệm không theo vết bị tắt"
+#, c-format
+msgid "Unexpected stash response: '%s'"
+msgstr "Gặp đáp ứng stash không cần: “%s”"
 
-#: builtin/update-index.c:1228
-msgid ""
-"core.untrackedCache is set to false; remove or change it, if you really want "
-"to enable the untracked cache"
-msgstr ""
-"core.untrackedCache được đặt là sai; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
-"muốn bật bộ đệm chưa theo dõi"
+#, c-format
+msgid "Could not create directory for '%s'"
+msgstr "Không thể tạo thư mục cho “%s”"
 
-#: builtin/update-index.c:1232
 #, c-format
-msgid "Untracked cache enabled for '%s'"
-msgstr "Nhớ đệm không theo vết được bật cho “%s”"
+msgid "Created autostash: %s\n"
+msgstr "Đã tạo autostash: %s\n"
 
-#: builtin/update-index.c:1241
-msgid "core.fsmonitor is unset; set it if you really want to enable fsmonitor"
-msgstr ""
-"core.fsmonitor chưa được đặt; đặt nó nếu bạn thực sự muốn bật theo dõi hệ "
-"thống tập tin"
+msgid "could not reset --hard"
+msgstr "không thể reset --hard"
 
-#: builtin/update-index.c:1246
-msgid "fsmonitor enabled"
-msgstr "fsmonitor được bật"
+#, c-format
+msgid "Applied autostash.\n"
+msgstr "Đã áp dụng autostash.\n"
+
+#, c-format
+msgid "cannot store %s"
+msgstr "không thử lưu “%s”"
 
-#: builtin/update-index.c:1250
+#, c-format
 msgid ""
-"core.fsmonitor is set; remove it if you really want to disable fsmonitor"
+"%s\n"
+"Your changes are safe in the stash.\n"
+"You can run \"git stash pop\" or \"git stash drop\" at any time.\n"
 msgstr ""
-"core.fsmonitor đã được đặt; bỏ đặt nó nếu bạn thực sự muốn bật theo dõi hệ "
-"thống tập tin"
-
-#: builtin/update-index.c:1254
-msgid "fsmonitor disabled"
-msgstr "fsmonitor bị tắt"
-
-#: builtin/update-ref.c:10
-msgid "git update-ref [<options>] -d <refname> [<old-val>]"
-msgstr "git update-ref [<các tùy chọn>] -d <refname> [<biến-cũ>]"
+"%s\n"
+"Các thay đổi của bạn an toàn trong stash (tạm cất đi).\n"
+"Bạn có thể chạy lệnh \"git stash pop\" hay \"git stash drop\" bất kỳ lúc "
+"nào.\n"
 
-#: builtin/update-ref.c:11
-msgid "git update-ref [<options>]    <refname> <new-val> [<old-val>]"
-msgstr "git update-ref [<các tùy chọn>]    <refname> <biến-mới> [<biến-cũ>]"
+msgid "Applying autostash resulted in conflicts."
+msgstr "Áp dụng autostash có hiệu quả trong các xung đột."
 
-#: builtin/update-ref.c:12
-msgid "git update-ref [<options>] --stdin [-z]"
-msgstr "git update-ref [<các tùy chọn>] --stdin [-z]"
+msgid "Autostash exists; creating a new stash entry."
+msgstr "Autostash đã sẵn có; nên tạo một mục stash mới."
 
-#: builtin/update-ref.c:506
-msgid "delete the reference"
-msgstr "xóa tham chiếu"
+msgid "could not detach HEAD"
+msgstr "không thể tách rời HEAD"
 
-#: builtin/update-ref.c:508
-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"
+#, c-format
+msgid "Stopped at HEAD\n"
+msgstr "Dừng lại ở HEAD\n"
 
-#: builtin/update-ref.c:509
-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"
+#, c-format
+msgid "Stopped at %s\n"
+msgstr "Dừng lại ở %s\n"
 
-#: builtin/update-ref.c:510
-msgid "read updates from stdin"
-msgstr "đọc cập nhật từ đầu vào tiêu chuẩn"
+#, c-format
+msgid ""
+"Could not execute the todo command\n"
+"\n"
+"    %.*s\n"
+"It has been rescheduled; To edit the command before continuing, please\n"
+"edit the todo list first:\n"
+"\n"
+"    git rebase --edit-todo\n"
+"    git rebase --continue\n"
+msgstr ""
+"Không thể thực thi lệnh todo\n"
+"\n"
+"    %.*s\n"
+"Nó đã được lên lịch lại: Để sửa lệnh trước khi tiếp tục, vui lòng\n"
+"sửa danh sách todo trước:\n"
+"\n"
+"    git rebase --edit-todo\n"
+"    git rebase --continue\n"
 
-#: builtin/update-server-info.c:15
-msgid "update the info files from scratch"
-msgstr "cập nhật các tập tin thông tin từ điểm xuất phát"
+#, c-format
+msgid "Rebasing (%d/%d)%s"
+msgstr "Đang cải tổ (%d/%d)%s"
 
-#: builtin/upload-pack.c:11
-msgid "git upload-pack [<options>] <dir>"
-msgstr "git upload-pack [<các tùy chọn>] </đường/dẫn>"
+#, c-format
+msgid "Stopped at %s...  %.*s\n"
+msgstr "Dừng lại ở %s…  %.*s\n"
 
-#: builtin/upload-pack.c:24 t/helper/test-serve-v2.c:17
-msgid "quit after a single request/response exchange"
-msgstr "thoát sau khi một trao đổi yêu cầu hay trả lời đơn"
+#, c-format
+msgid "unknown command %d"
+msgstr "không hiểu câu lệnh %d"
 
-#: builtin/upload-pack.c:26
-msgid "serve up the info/refs for git-http-backend"
-msgstr "phục vụ info/refs (thông tin/tham chiếu) cho git-http-backend"
+msgid "could not read orig-head"
+msgstr "không thể đọc orig-head"
 
-#: builtin/upload-pack.c:29
-msgid "do not try <directory>/.git/ if <directory> is no Git directory"
-msgstr "đừng thử <thư_mục>/.git/ nếu <thư_mục> không phải là thư mục Git"
+msgid "could not read 'onto'"
+msgstr "không thể đọc “onto”."
 
-#: builtin/upload-pack.c:31
-msgid "interrupt transfer after <n> seconds of inactivity"
-msgstr "ngắt truyền thông sau <n> giây không hoạt động"
+#, c-format
+msgid "could not update HEAD to %s"
+msgstr "không thể cập nhật HEAD thành %s"
 
-#: builtin/verify-commit.c:19
-msgid "git verify-commit [-v | --verbose] <commit>..."
-msgstr "git verify-commit [-v | --verbose] <lần_chuyển_giao>…"
+#, 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"
 
-#: builtin/verify-commit.c:68
-msgid "print commit contents"
-msgstr "hiển thị nội dung của lần chuyển giao"
+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."
 
-#: builtin/verify-commit.c:69 builtin/verify-tag.c:37
-msgid "print raw gpg status output"
-msgstr "in kết xuất trạng thái gpg dạng thô"
+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"
 
-#: builtin/verify-pack.c:59
-msgid "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
-msgstr "git verify-pack [-v | --verbose] [-s | --stat-only] <gói>…"
+#, c-format
+msgid "invalid file: '%s'"
+msgstr "tập tin không hợp lệ: “%s”"
 
-#: builtin/verify-pack.c:70
-msgid "verbose"
-msgstr "chi tiết"
+#, c-format
+msgid "invalid contents: '%s'"
+msgstr "nội dung không hợp lệ: “%s”"
 
-#: builtin/verify-pack.c:72
-msgid "show statistics only"
-msgstr "chỉ hiển thị thống kê"
+msgid ""
+"\n"
+"You have uncommitted changes in your working tree. Please, commit them\n"
+"first and then run 'git rebase --continue' again."
+msgstr ""
+"\n"
+"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."
 
-#: builtin/verify-tag.c:18
-msgid "git verify-tag [-v | --verbose] [--format=<format>] <tag>..."
-msgstr "git verify-tag [-v | --verbose] [--format=<định_dạng>] <thẻ>…"
+#, c-format
+msgid "could not write file: '%s'"
+msgstr "không thể ghi tập tin: “%s”"
 
-#: builtin/verify-tag.c:36
-msgid "print tag contents"
-msgstr "hiển thị nội dung của thẻ"
+msgid "could not remove CHERRY_PICK_HEAD"
+msgstr "không thể xóa bỏ CHERRY_PICK_HEAD"
 
-#: builtin/worktree.c:19
-msgid "git worktree add [<options>] <path> [<commit-ish>]"
-msgstr "git worktree add [<các tùy chọn>] </đường/dẫn> [<commit-ish>]"
+msgid "could not commit staged changes."
+msgstr "không thể chuyển giao các thay đổi đã đưa lên bệ phóng."
 
-#: builtin/worktree.c:20
-msgid "git worktree list [<options>]"
-msgstr "git worktree list [<các tùy chọn>]"
+#, c-format
+msgid "%s: can't cherry-pick a %s"
+msgstr "%s: không thể cherry-pick một %s"
 
-#: builtin/worktree.c:21
-msgid "git worktree lock [<options>] <path>"
-msgstr "git worktree lock [<các tùy chọn>] </đường/dẫn>"
+#, c-format
+msgid "%s: bad revision"
+msgstr "%s: điểm xét duyệt sai"
 
-#: builtin/worktree.c:22
-msgid "git worktree move <worktree> <new-path>"
-msgstr "git worktree move <worktree> </đường/dẫn/mới>"
+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"
 
-#: builtin/worktree.c:23
-msgid "git worktree prune [<options>]"
-msgstr "git worktree prune [<các tùy chọn>]"
+#, c-format
+msgid "skipped previously applied commit %s"
+msgstr "bỏ qua lần chuyển giao được áp dụng kế trước %s"
 
-#: builtin/worktree.c:24
-msgid "git worktree remove [<options>] <worktree>"
-msgstr "git worktree remove [<các tùy chọn>] <worktree>"
+msgid "use --reapply-cherry-picks to include skipped commits"
+msgstr ""
+"dùng --reapply-cherry-picks để bao gồm các lần chuyển giao đã bị bỏ qua"
 
-#: builtin/worktree.c:25
-msgid "git worktree repair [<path>...]"
-msgstr "git worktree repair [</đường/dẫn/>...]"
+msgid "make_script: unhandled options"
+msgstr "make_script: các tùy chọn được không xử lý"
 
-#: builtin/worktree.c:26
-msgid "git worktree unlock <path>"
-msgstr "git worktree unlock </đường/dẫn>"
+msgid "make_script: error preparing revisions"
+msgstr "make_script: lỗi chuẩn bị điểm hiệu chỉnh"
 
-#: builtin/worktree.c:76
-#, c-format
-msgid "Removing %s/%s: %s"
-msgstr "Đang xóa %s/%s: %s"
+msgid "nothing to do"
+msgstr "không có gì để làm"
 
-#: builtin/worktree.c:149
-msgid "report pruned working trees"
-msgstr "báo cáo các cây làm việc đã prune"
+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"
 
-#: builtin/worktree.c:151
-msgid "expire working trees older than <time>"
-msgstr "các cây làm việc hết hạn cũ hơn khoảng <thời gian>"
+msgid "the script was already rearranged."
+msgstr "văn lệnh đã sẵn được sắp đặt rồi."
 
-#: builtin/worktree.c:221
 #, c-format
-msgid "'%s' already exists"
-msgstr "“%s” đã có từ trước rồi"
+msgid "'%s' is outside repository at '%s'"
+msgstr "“%s” ngoài một kho chứa tại “%s”"
 
-#: builtin/worktree.c:230
 #, c-format
-msgid "unusable worktree destination '%s'"
-msgstr "đích cây làm việc không sử dụng được “%s”"
+msgid ""
+"%s: no such path in the working tree.\n"
+"Use 'git <command> -- <path>...' to specify paths that do not exist locally."
+msgstr ""
+"%s: không có đường dẫn nào như thế ở trong cây làm việc.\n"
+"Dùng “git <lệnh> -- <đường/dẫn>…” để chỉ định đường dẫn mà nó không tồn tại "
+"một cách nội bộ."
 
-#: builtin/worktree.c:235
 #, c-format
 msgid ""
-"'%s' is a missing but locked worktree;\n"
-"use '%s -f -f' to override, or 'unlock' and 'prune' or 'remove' to clear"
+"ambiguous argument '%s': unknown revision or path not in the working tree.\n"
+"Use '--' to separate paths from revisions, like this:\n"
+"'git <command> [<revision>...] -- [<file>...]'"
 msgstr ""
-"“%s” bị mất nhưng cây làm việc bị khóa;\n"
-"dùng “%s -f -f” để ghi đè, hoặc “unlock” và “prune” hay “remove” để xóa"
+"tham số chưa rõ ràng “%s”: chưa biết điểm xem xét hay đường dẫn không trong "
+"cây làm việc.\n"
+"Dùng “--” để ngăn cách các đường dẫn khỏi điểm xem xét, như thế này:\n"
+"“git <lệnh> [<điểm xem xét>…] -- [<tập tin>…]”"
+
+#, c-format
+msgid "option '%s' must come before non-option arguments"
+msgstr "tùy chọn “%s” phải trước các đối số đầu tiên không có tùy chọn"
 
-#: builtin/worktree.c:237
 #, c-format
 msgid ""
-"'%s' is a missing but already registered worktree;\n"
-"use '%s -f' to override, or 'prune' or 'remove' to clear"
+"ambiguous argument '%s': both revision and filename\n"
+"Use '--' to separate paths from revisions, like this:\n"
+"'git <command> [<revision>...] -- [<file>...]'"
 msgstr ""
-"“%s” bị mất nhưng cây làm việc đã được đăng ký;\n"
-"dùng “%s -f” để ghi đè, hoặc “prune” hay “remove” để xóa"
+"tham số chưa rõ ràng “%s”: cả điểm xem xét và tên tập tin.\n"
+"Dùng “--” để ngăn cách các đường dẫn khỏi điểm xem xét, như thế này:\n"
+"“git <lệnh> [<điểm xem xét>…] -- [<tập tin>…]”"
+
+msgid "unable to set up work tree using invalid config"
+msgstr "không thể cài đặt thư mục làm việc sử dụng cấu hình không hợp lệ"
 
-#: builtin/worktree.c:248
 #, c-format
-msgid "failed to copy '%s' to '%s'; sparse-checkout may not work correctly"
-msgstr "gặp lỗi khi sao chép '%s' sang '%s'; không thể làm việc đúng được"
+msgid "Expected git repo version <= %d, found %d"
+msgstr "Cần phiên bản kho git <= %d, nhưng lại nhận được %d"
+
+msgid "unknown repository extension found:"
+msgid_plural "unknown repository extensions found:"
+msgstr[0] "tìm thấy phần mở rộng kho chưa biết:"
+
+msgid "repo version is 0, but v1-only extension found:"
+msgid_plural "repo version is 0, but v1-only extensions found:"
+msgstr[0] "phiên bản kho là 0, nhưng lại tìm thấy phần mở rộng chỉ v1:"
 
-#: builtin/worktree.c:268
 #, c-format
-msgid "failed to copy worktree config from '%s' to '%s'"
-msgstr "gặp lỗi khi sao chép cấu hình cây làm việc từ “%s” sang “%s”"
+msgid "error opening '%s'"
+msgstr "gặp lỗi khi mở “%s”"
 
-#: builtin/worktree.c:280 builtin/worktree.c:285
 #, c-format
-msgid "failed to unset '%s' in '%s'"
-msgstr "gặp lỗi bỏ đặt “%s” trong “%s”"
+msgid "too large to be a .git file: '%s'"
+msgstr "tập tin .git là quá lớn: “%s”"
 
-#: builtin/worktree.c:356
 #, c-format
-msgid "could not create directory of '%s'"
-msgstr "không thể tạo thư mục của “%s”"
+msgid "error reading %s"
+msgstr "gặp lỗi khi đọc %s"
 
-#: builtin/worktree.c:378
-msgid "initializing"
-msgstr "khởi tạo"
+#, c-format
+msgid "invalid gitfile format: %s"
+msgstr "định dạng tập tin git không hợp lệ: %s"
 
-#: builtin/worktree.c:492 builtin/worktree.c:498
 #, c-format
-msgid "Preparing worktree (new branch '%s')"
-msgstr "Đang chuẩn bị cây làm việc (nhánh mới “%s”)"
+msgid "no path in gitfile: %s"
+msgstr "không có đường dẫn trong tập tin git: %s"
 
-#: builtin/worktree.c:494
 #, c-format
-msgid "Preparing worktree (resetting branch '%s'; was at %s)"
-msgstr "Đang chuẩn bị cây làm việc (đang cài đặt nhánh “%s”, trước đây tại %s)"
+msgid "not a git repository: %s"
+msgstr "không phải là kho git: %s"
 
-#: builtin/worktree.c:503
 #, c-format
-msgid "Preparing worktree (checking out '%s')"
-msgstr "Đang chuẩn bị cây làm việc (đang lấy ra “%s”)"
+msgid "'$%s' too big"
+msgstr "“$%s” quá lớn"
 
-#: builtin/worktree.c:509
 #, c-format
-msgid "Preparing worktree (detached HEAD %s)"
-msgstr "Đang chuẩn bị cây làm việc (HEAD đã tách rời “%s”)"
+msgid "not a git repository: '%s'"
+msgstr "không phải là kho git: “%s”"
 
-#: builtin/worktree.c:554
-msgid "checkout <branch> even if already checked out in other worktree"
-msgstr "lấy ra <nhánh> ngay cả khi nó đã được lấy ra ở cây làm việc khác"
+#, c-format
+msgid "cannot chdir to '%s'"
+msgstr "không thể chdir (chuyển đổi thư mục) sang “%s”"
 
-#: builtin/worktree.c:557
-msgid "create a new branch"
-msgstr "tạo nhánh mới"
+msgid "cannot come back to cwd"
+msgstr "không thể quay lại cwd"
 
-#: builtin/worktree.c:559
-msgid "create or reset a branch"
-msgstr "tạo hay đặt lại một nhánh"
+#, c-format
+msgid "failed to stat '%*s%s%s'"
+msgstr "gặp lỗi khi lấy thống kê về “%*s%s%s”"
 
-#: builtin/worktree.c:561
-msgid "populate the new working tree"
-msgstr "di chuyển cây làm việc mới"
+msgid "Unable to read current working directory"
+msgstr "Không thể đọc thư mục làm việc hiện hành"
 
-#: builtin/worktree.c:562
-msgid "keep the new working tree locked"
-msgstr "giữ cây làm việc mới bị khóa"
+#, c-format
+msgid "cannot change to '%s'"
+msgstr "không thể chuyển sang “%s”"
+
+#, c-format
+msgid "not a git repository (or any of the parent directories): %s"
+msgstr "không phải là kho git (hoặc bất kỳ thư mục cha mẹ nào): %s"
 
-#: builtin/worktree.c:564 builtin/worktree.c:809
-msgid "reason for locking"
-msgstr "lý do khóa"
+#, c-format
+msgid ""
+"not a git repository (or any parent up to mount point %s)\n"
+"Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set)."
+msgstr ""
+"không phải là kho git (hay bất kỳ cha mẹ nào đến tận điểm gắn kết %s)\n"
+"Dừng tại biên của hệ thống tập tin (GIT_DISCOVERY_ACROSS_FILESYSTEM chưa "
+"đặt)."
 
-#: builtin/worktree.c:567
-msgid "set up tracking mode (see git-branch(1))"
-msgstr "cài đặt chế độ theo dõi (xem git-branch(1))"
+#, c-format
+msgid ""
+"unsafe repository ('%s' is owned by someone else)\n"
+"To add an exception for this directory, call:\n"
+"\n"
+"\tgit config --global --add safe.directory %s"
+msgstr ""
+"kho lưu trữ không an toàn ('%s' thuộc sở hữu của người khác)\n"
+"Để thêm ngoại lệ cho thư mục này, hãy gọi:\n"
+"\n"
+"\tgit config --global --add safe.directory %s"
 
-#: builtin/worktree.c:570
-msgid "try to match the new branch name with a remote-tracking branch"
-msgstr "có khớp tên tên nhánh mới với một nhánh theo dõi máy chủ"
+#, c-format
+msgid ""
+"problem with core.sharedRepository filemode value (0%.3o).\n"
+"The owner of files must always have read and write permissions."
+msgstr ""
+"gặp vấn đề với giá trị chế độ tập tin core.sharedRepository (0%.3o).\n"
+"người sở hữu tập tin phải luôn có quyền đọc và ghi."
 
-#: builtin/worktree.c:584
-msgid "added with --lock"
-msgstr "được thêm với --lock"
+msgid "fork failed"
+msgstr "gặp lỗi khi rẽ nhánh tiến trình"
 
-#: builtin/worktree.c:646
-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"
+msgid "setsid failed"
+msgstr "setsid gặp lỗi"
 
-#: builtin/worktree.c:766
-msgid "show extended annotations and reasons, if available"
-msgstr "hiển thị chú thích và lý do mở rộng, nếu có"
+#, c-format
+msgid "index entry is a directory, but not sparse (%08x)"
+msgstr "mục tin mục lục là một thư mục, nhưng không \"sparse\" (%08x)"
 
-#: builtin/worktree.c:768
-msgid "add 'prunable' annotation to worktrees older than <time>"
-msgstr ""
-"thêm chú thích kiểu “prunable” cho các cây làm việc hết hạn cũ hơn khoảng "
-"<thời gian>"
+msgid "cannot use split index with a sparse index"
+msgstr "không thể sử dụng bảng mục lục chia tách với một \"sparse index\""
 
-#: builtin/worktree.c:770
-msgid "terminate records with a NUL character"
-msgstr "chấm dứt các bản ghi bằng ký tự NULL"
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte
+#, c-format
+msgid "%u.%2.2u GiB"
+msgstr "%u.%2.2u GiB"
 
-#: builtin/worktree.c:821 builtin/worktree.c:854 builtin/worktree.c:928
-#: builtin/worktree.c:1052
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte/second
 #, c-format
-msgid "'%s' is not a working tree"
-msgstr "%s không phải là cây làm việc"
+msgid "%u.%2.2u GiB/s"
+msgstr "%u.%2.2u GiB/giây"
 
-#: builtin/worktree.c:823 builtin/worktree.c:856
-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"
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte
+#, c-format
+msgid "%u.%2.2u MiB"
+msgstr "%u.%2.2u MiB"
 
-#: builtin/worktree.c:828
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte/second
 #, c-format
-msgid "'%s' is already locked, reason: %s"
-msgstr "“%s” đã được khóa rồi, lý do: %s"
+msgid "%u.%2.2u MiB/s"
+msgstr "%u.%2.2u MiB/giây"
 
-#: builtin/worktree.c:830
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte
 #, c-format
-msgid "'%s' is already locked"
-msgstr "“%s” đã được khóa rồi"
+msgid "%u.%2.2u KiB"
+msgstr "%u.%2.2u KiB"
 
-#: builtin/worktree.c:858
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte/second
 #, c-format
-msgid "'%s' is not locked"
-msgstr "“%s” chưa bị khóa"
+msgid "%u.%2.2u KiB/s"
+msgstr "%u.%2.2u KiB/giây"
 
-#: builtin/worktree.c:899
-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ỏ"
+#. TRANSLATORS: IEC 80000-13:2008 byte
+#, c-format
+msgid "%u byte"
+msgid_plural "%u bytes"
+msgstr[0] "%u byte"
 
-#: builtin/worktree.c:907
-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"
+#. TRANSLATORS: IEC 80000-13:2008 byte/second
+#, c-format
+msgid "%u byte/s"
+msgid_plural "%u bytes/s"
+msgstr[0] "%u byte/giây"
 
-#: builtin/worktree.c:930 builtin/worktree.c:1054
 #, c-format
-msgid "'%s' is a main working tree"
-msgstr "“%s” là cây làm việc chính"
+msgid "could not edit '%s'"
+msgstr "không thể sửa “%s”"
 
-#: builtin/worktree.c:935
 #, 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”"
+msgid "ignoring suspicious submodule name: %s"
+msgstr "đang lờ đi tên mô-đun-con mập mờ: %s"
+
+msgid "negative values not allowed for submodule.fetchJobs"
+msgstr "không cho phép giá trị âm ở submodule.fetchJobs"
 
-#: builtin/worktree.c:948
 #, c-format
-msgid ""
-"cannot move a locked working tree, lock reason: %s\n"
-"use 'move -f -f' to override or unlock first"
+msgid "ignoring '%s' which may be interpreted as a command-line option: %s"
 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 đã"
+"đang bỏ qua “%s” cái mà có thể được phiên dịch như là một tùy chọn dòng "
+"lệnh: %s"
 
-#: builtin/worktree.c:950
-msgid ""
-"cannot move a locked working tree;\n"
-"use 'move -f -f' to override or unlock first"
+#, c-format
+msgid "Could not update .gitmodules entry %s"
+msgstr "Không thể cập nhật mục .gitmodules %s"
+
+msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 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 đã"
+"Không thể thay đổi .gitmodules chưa hòa trộn, hãy giải quyết xung đột trộn "
+"trước"
 
-#: builtin/worktree.c:953
 #, 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"
+msgid "Could not find section in .gitmodules where path=%s"
+msgstr "Không thể tìm thấy phần trong .gitmodules nơi mà đường_dẫn=%s"
 
-#: builtin/worktree.c:958
 #, c-format
-msgid "failed to move '%s' to '%s'"
-msgstr "gặp lỗi khi chuyển “%s” sang “%s”"
+msgid "Could not remove .gitmodules entry for %s"
+msgstr "Không thể gỡ bỏ mục .gitmodules dành cho %s"
 
-#: builtin/worktree.c:1004
-#, c-format
-msgid "failed to run 'git status' on '%s'"
-msgstr "gặp lỗi khi chạy “git status” vào “%s”"
+msgid "staging updated .gitmodules failed"
+msgstr "gặp lỗi khi tổ chức .gitmodules đã cập nhật"
 
-#: builtin/worktree.c:1008
 #, 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ó"
+msgid "in unpopulated submodule '%s'"
+msgstr "trong mô-đun-con không có gì “%s”"
 
-#: builtin/worktree.c:1013
 #, 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"
+msgid "Pathspec '%s' is in submodule '%.*s'"
+msgstr "Đặc tả đường dẫn “%s” thì ở trong mô-đun-con “%.*s”"
 
-#: builtin/worktree.c:1036
-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"
+#, c-format
+msgid "bad --ignore-submodules argument: %s"
+msgstr "đối số --ignore-submodules sai: %s"
 
-#: builtin/worktree.c:1059
 #, c-format
 msgid ""
-"cannot remove a locked working tree, lock reason: %s\n"
-"use 'remove -f -f' to override or unlock first"
+"Submodule in commit %s at path: '%s' collides with a submodule named the "
+"same. Skipping it."
 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 đã"
+"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ó."
 
-#: builtin/worktree.c:1061
-msgid ""
-"cannot remove a locked working tree;\n"
-"use 'remove -f -f' to override or unlock first"
+#, c-format
+msgid "submodule entry '%s' (%s) is a %s, not a commit"
 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 đã"
+"mục tin mô-đun-con “%s” (%s) là một %s, không phải là một lần chuyển giao"
 
-#: builtin/worktree.c:1064
 #, 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"
+msgid ""
+"Could not run 'git rev-list <commits> --not --remotes -n 1' command in "
+"submodule %s"
+msgstr ""
+"Không thể chạy lệnh “git rev-list <các lần chuyển giao> --not --remotes -n "
+"1” trong mô-đun-con “%s”"
 
-#: builtin/worktree.c:1088
 #, c-format
-msgid "repair: %s: %s"
-msgstr "sửa chữa: %s: %s"
+msgid "process for submodule '%s' failed"
+msgstr "xử lý cho mô-đun-con “%s” gặp lỗi"
 
-#: builtin/worktree.c:1091
 #, c-format
-msgid "error: %s: %s"
-msgstr "lỗi: %s: %s"
-
-#: builtin/write-tree.c:15
-msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
-msgstr "git write-tree [--missing-ok] [--prefix=<tiền-tố>/]"
-
-#: builtin/write-tree.c:28
-msgid "<prefix>/"
-msgstr "<tiền tố>/"
-
-#: builtin/write-tree.c:29
-msgid "write tree object for a subdirectory <prefix>"
-msgstr "ghi đối tượng cây (tree) cho <tiền tố> thư mục con"
-
-#: builtin/write-tree.c:31
-msgid "only useful for debugging"
-msgstr "chỉ hữu ích khi cần gỡ lỗi"
+msgid "Pushing submodule '%s'\n"
+msgstr "Đẩy lên mô-đun-con “%s”\n"
 
-#: git.c:28
-msgid ""
-"git [--version] [--help] [-C <path>] [-c <name>=<value>]\n"
-"           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
-"           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--"
-"bare]\n"
-"           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
-"           [--super-prefix=<path>] [--config-env=<name>=<envvar>]\n"
-"           <command> [<args>]"
-msgstr ""
-"git [--version] [--help] [-C </đường/dẫn/>] [-c <tên>=<giá trị>]\n"
-"           [--exec-path[=</đường/dẫn/>]] [--html-path] [--man-path] [--info-"
-"path]\n"
-"           [-p | --paginate | -P --no-pager] [--no-replace-objects] [--"
-"bare]\n"
-"           [--git-dir=</đường/dẫn/>] [--work-tree=</đường/dẫn/>] [--"
-"namespace=<tên>]\n"
-"           [--super-prefix=</đường/dẫn/>] [--config-env=<tên>=<envvar>]\n"
-"           <lệnh> [<các tham số>]"
+#, c-format
+msgid "Unable to push submodule '%s'\n"
+msgstr "Không thể đẩy lên mô-đun-con “%s”\n"
 
-#: git.c:36
-msgid ""
-"'git help -a' and 'git help -g' list available subcommands and some\n"
-"concept guides. See 'git help <command>' or 'git help <concept>'\n"
-"to read about a specific subcommand or concept.\n"
-"See 'git help git' for an overview of the system."
-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."
+#, c-format
+msgid "Fetching submodule %s%s\n"
+msgstr "Đang lấy về mô-đun-con %s%s\n"
 
-#: git.c:188 git.c:216 git.c:300
 #, c-format
-msgid "no directory given for '%s' option\n"
-msgstr "không đưa ra thư mục cho tùy chọn '%s'\n"
+msgid "Could not access submodule '%s'\n"
+msgstr "Không thể truy cập mô-đun-con “%s”\n"
 
-#: git.c:202
 #, c-format
-msgid "no namespace given for --namespace\n"
-msgstr "chưa đưa ra không gian làm việc cho --namespace\n"
+msgid "Could not access submodule '%s' at commit %s\n"
+msgstr "Không thể truy cập mô-đun-con “%s” ở lần chuyển giao %s\n"
 
-#: git.c:230
 #, c-format
-msgid "no prefix given for --super-prefix\n"
-msgstr "chưa đưa ra tiền tố cho --super-prefix\n"
+msgid "Fetching submodule %s%s at commit %s\n"
+msgstr "Đang lấy về mô-đun-con %s%s tại lần chuyển giao %s\n"
 
-#: git.c:252
 #, c-format
-msgid "-c expects a configuration string\n"
-msgstr "-c cần một chuỗi cấu hình\n"
+msgid ""
+"Errors during submodule fetch:\n"
+"%s"
+msgstr ""
+"Có lỗi khi lấy về mô-đun-con:\n"
+" “%s”"
 
-#: git.c:260
 #, c-format
-msgid "no config key given for --config-env\n"
-msgstr "không đưa ra khóa cấu hình cho --config-env\n"
+msgid "'%s' not recognized as a git repository"
+msgstr "không nhận ra “%s” là một kho git"
 
-#: git.c:326
 #, c-format
-msgid "unknown option: %s\n"
-msgstr "không hiểu tùy chọn: %s\n"
+msgid "Could not run 'git status --porcelain=2' in submodule %s"
+msgstr "Không thể chạy “git status --porcelain=2” trong mô-đun-con “%s”"
 
-#: git.c:375
 #, c-format
-msgid "while expanding alias '%s': '%s'"
-msgstr "trong khi triển khai bí danh “%s”: “%s”"
+msgid "'git status --porcelain=2' failed in submodule %s"
+msgstr "“git status --porcelain=2” gặp lỗi trong mô-đun-con “%s”"
 
-#: git.c:384
 #, c-format
-msgid ""
-"alias '%s' changes environment variables.\n"
-"You can use '!git' in the alias to do this"
-msgstr ""
-"bí danh “%s” thay đổi biến môi trường.\n"
-"Bạn có thể sử dụng “!git” trong đặt bí danh để làm việc này"
+msgid "could not start 'git status' in submodule '%s'"
+msgstr "không thể lấy thống kê “git status” trong mô-đun-con “%s”"
 
-#: git.c:391
 #, c-format
-msgid "empty alias for %s"
-msgstr "làm trống bí danh cho %s"
+msgid "could not run 'git status' in submodule '%s'"
+msgstr "không thể chạy “git status” trong mô-đun-con “%s”"
 
-#: git.c:394
 #, c-format
-msgid "recursive alias: %s"
-msgstr "đệ quy các bí danh: %s"
+msgid "Could not unset core.worktree setting in submodule '%s'"
+msgstr "Không thể đặt core.worktree trong mô-đun-con “%s”"
 
-#: git.c:480
-msgid "write failure on standard output"
-msgstr "lỗi ghi nghiêm trong trên đầu ra tiêu chuẩn"
+#, c-format
+msgid "could not recurse into submodule '%s'"
+msgstr "không thể đệ quy vào trong mô-đun-con “%s”"
 
-#: git.c:482
-msgid "unknown write failure on standard output"
-msgstr "lỗi nghiêm trọng chưa biết khi ghi ra đầu ra tiêu chuẩn"
+msgid "could not reset submodule index"
+msgstr "không thể đặt lại mục lục của mô-đun-con"
 
-#: git.c:484
-msgid "close failed on standard output"
-msgstr "gặp lỗi khi đóng đầu ra tiêu chuẩn"
+#, c-format
+msgid "submodule '%s' has dirty index"
+msgstr "mô-đun-con “%s” có mục lục còn bẩn"
 
-#: git.c:838
 #, 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"
+msgid "Submodule '%s' could not be updated."
+msgstr "Mô-đun-con “%s” không thể được cập nhật."
 
-#: git.c:888
 #, c-format
-msgid "cannot handle %s as a builtin"
-msgstr "không thể xử lý %s như là một phần bổ sung"
+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”"
 
-#: git.c:901
 #, c-format
 msgid ""
-"usage: %s\n"
-"\n"
+"relocate_gitdir for submodule '%s' with more than one worktree not supported"
 msgstr ""
-"cách dùng: %s\n"
-"\n"
+"relocate_gitdir cho mô-đun-con “%s” với nhiều hơn một cây làm việc là chưa "
+"được hỗ trợ"
 
-#: git.c:921
 #, 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"
+msgid "could not lookup name for submodule '%s'"
+msgstr "không thể tìm kiếm tên cho mô-đun-con “%s”"
 
-#: git.c:933
 #, c-format
-msgid "failed to run command '%s': %s\n"
-msgstr "gặp lỗi khi chạy lệnh “%s”: %s\n"
+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ó"
 
-#: http-fetch.c:128
 #, 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”)"
+msgid ""
+"Migrating git directory of '%s%s' from\n"
+"'%s' to\n"
+"'%s'\n"
+msgstr ""
+"Di cư thư mục git của “%s%s” từ\n"
+"“%s” sang\n"
+"“%s”\n"
 
-#: http-fetch.c:138
-msgid "not a git repository"
-msgstr "không phải là kho git"
+msgid "could not start ls-files in .."
+msgstr "không thể lấy thông tin thống kê về ls-files trong .."
+
+#, c-format
+msgid "ls-tree returned unexpected return code %d"
+msgstr "ls-tree trả về mã không như mong đợi %d"
+
+#, c-format
+msgid "failed to lstat '%s'"
+msgstr "gặp lỗi khi lstat “%s”"
 
-#: 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"
 msgstr "lần chuyển giao %s chưa được đánh dấu là tiếp cận được"
 
-#: t/helper/test-reach.c:164
 msgid "too many commits marked reachable"
 msgstr "có quá nhiều lần chuyển giao được đánh dấu là tiếp cận được"
 
-#: t/helper/test-serve-v2.c:7
 msgid "test-tool serve-v2 [<options>]"
 msgstr "test-tool serve-v2 [<các tùy chọn>]"
 
-#: t/helper/test-serve-v2.c:19
 msgid "exit immediately after advertising capabilities"
 msgstr "thoát ngay sau khi khởi tạo quảng cáo capabilities"
 
-#: t/helper/test-simple-ipc.c:581
 msgid "test-helper simple-ipc is-active    [<name>] [<options>]"
 msgstr "test-helper simple-ipc is-active    [<tên>] [<các tùy chọn>]"
 
-#: t/helper/test-simple-ipc.c:582
 msgid "test-helper simple-ipc run-daemon   [<name>] [<threads>]"
 msgstr "test-helper simple-ipc run-daemon   [<tên>] [<các tiến trình>]"
 
-#: t/helper/test-simple-ipc.c:583
 msgid "test-helper simple-ipc start-daemon [<name>] [<threads>] [<max-wait>]"
 msgstr ""
 "test-helper simple-ipc start-daemon [<tên>] [<các tiến trình>] [<chờ tối đa>]"
 
-#: t/helper/test-simple-ipc.c:584
 msgid "test-helper simple-ipc stop-daemon  [<name>] [<max-wait>]"
 msgstr "test-helper simple-ipc stop-daemon  [<tên>] [<chờ tối đa>]"
 
-#: t/helper/test-simple-ipc.c:585
 msgid "test-helper simple-ipc send         [<name>] [<token>]"
 msgstr "test-helper simple-ipc send         [<tên>] [<thẻ>]"
 
-#: t/helper/test-simple-ipc.c:586
 msgid "test-helper simple-ipc sendbytes    [<name>] [<bytecount>] [<byte>]"
 msgstr "test-helper simple-ipc sendbytes    [<tên>] [<số lượng byte>] [<byte>]"
 
-#: t/helper/test-simple-ipc.c:587
 msgid ""
 "test-helper simple-ipc multiple     [<name>] [<threads>] [<bytecount>] "
 "[<batchsize>]"
@@ -25038,1176 +20055,1144 @@ msgstr ""
 "test-helper simple-ipc multiple     [<tên>] [<các tiến trình>] [<số lượng "
 "byte>] [<cỡ bó>]"
 
-#: t/helper/test-simple-ipc.c:595
 msgid "name or pathname of unix domain socket"
 msgstr "tên hoặc tên đường dẫn của ổ cắm miền unix"
 
-#: t/helper/test-simple-ipc.c:597
 msgid "named-pipe name"
 msgstr "tên named-pipe"
 
-#: t/helper/test-simple-ipc.c:599
 msgid "number of threads in server thread pool"
 msgstr "số lượng tiến trình trong kho tiến trình máy phục vụ"
 
-#: t/helper/test-simple-ipc.c:600
 msgid "seconds to wait for daemon to start or stop"
 msgstr "số giây mà dịch vụ chạy nền chờ khi khởi động hoặc dừng"
 
-#: t/helper/test-simple-ipc.c:602
 msgid "number of bytes"
 msgstr "số lượng byte"
 
-#: t/helper/test-simple-ipc.c:603
 msgid "number of requests per thread"
 msgstr "số lượng yêu cầu mỗi tiến trình"
 
-#: t/helper/test-simple-ipc.c:605
 msgid "byte"
 msgstr "byte"
 
-#: t/helper/test-simple-ipc.c:605
 msgid "ballast character"
 msgstr "ký tự ballast"
 
-#: t/helper/test-simple-ipc.c:606
 msgid "token"
 msgstr "thẻ bài"
 
-#: t/helper/test-simple-ipc.c:606
 msgid "command token to send to the server"
 msgstr "thẻ bài lệnh để gửi lên cho máy phục vụ"
 
-#: http.c:350
 #, c-format
-msgid "negative value for http.postbuffer; defaulting to %d"
-msgstr "giá trị âm cho http.postbuffer; đặt thành mặc định là %d"
+msgid "running trailer command '%s' failed"
+msgstr "chạy lệnh kéo theo “%s” gặp lỗi"
 
-#: http.c:371
-msgid "Delegation control is not supported with cURL < 7.22.0"
-msgstr "Điều khiển giao quyền không được hỗ trợ với cURL < 7.22.0"
+#, c-format
+msgid "unknown value '%s' for key '%s'"
+msgstr "không hiểu giá trị “%s” cho khóa “%s”"
 
-#: http.c:380
-msgid "Public key pinning not supported with cURL < 7.39.0"
-msgstr "Chốt khóa công không được hỗ trợ với cURL < 7.39.0"
+#, c-format
+msgid "empty trailer token in trailer '%.*s'"
+msgstr "thẻ thừa trống rỗng trong phần thừa “%.*s”"
 
-#: http.c:812
-msgid "CURLSSLOPT_NO_REVOKE not supported with cURL < 7.44.0"
-msgstr "CURLSSLOPT_NO_REVOKE không được hỗ trợ với cURL < 7.44.0"
+#, c-format
+msgid "could not read input file '%s'"
+msgstr "không đọc được tập tin đầu vào “%s”"
 
-#: http.c:1016
 #, c-format
-msgid "Unsupported SSL backend '%s'. Supported SSL backends:"
-msgstr ""
-"Không hỗ trợ ứng dụng SSL chạy phía sau “%s”. Hỗ trợ ứng dụng SSL chạy phía "
-"sau:"
+msgid "could not stat %s"
+msgstr "không thể lấy thông tin thống kê về %s"
 
-#: http.c:1023
 #, c-format
-msgid "Could not set SSL backend to '%s': cURL was built without SSL backends"
-msgstr ""
-"Không thể đặt ứng dụng chạy SSL phía sau “%s”: cURL được biên dịch không có "
-"sự hỗ trợ ứng dụng chạy phía sau SSL"
+msgid "file %s is not a regular file"
+msgstr "\"%s\" không phải là tập tin bình thường"
 
-#: http.c:1027
 #, c-format
-msgid "Could not set SSL backend to '%s': already set"
-msgstr "Không thể đặt ứng dụng chạy sau SSL cho “%s”: đã đặt rồi"
+msgid "file %s is not writable by user"
+msgstr "tập tin %s người dùng không thể ghi được"
+
+msgid "could not open temporary file"
+msgstr "không thể tạo tập tin tạm thời"
+
+#, c-format
+msgid "could not rename temporary file to %s"
+msgstr "không thể đổi tên tập tin tạm thời thành %s"
+
+msgid "full write to remote helper failed"
+msgstr "ghi đầy đủ lên bộ hỗ trợ máy chủ gặp lỗi"
+
+#, c-format
+msgid "unable to find remote helper for '%s'"
+msgstr "không thể tìm thấy bộ hỗ trợ máy chủ cho “%s”"
+
+msgid "can't dup helper output fd"
+msgstr "không thể nhân đôi fd dầu ra bộ hỗ trợ"
 
-#: http.c:1876
 #, c-format
 msgid ""
-"unable to update url base from redirection:\n"
-"  asked for: %s\n"
-"   redirect: %s"
+"unknown mandatory capability %s; this remote helper probably needs newer "
+"version of Git"
 msgstr ""
-"không thể cập nhật dựa trên cơ sở url từ chuyển hướng:\n"
-"      hỏi cho: %s\n"
-" chuyển hướng: %s"
+"không hiểu capability bắt buộc %s; bộ hỗ trợ máy chủ này gần như chắc chắn "
+"là cần phiên bản Git mới hơn"
+
+msgid "this remote helper should implement refspec capability"
+msgstr "bộ hỗ trợ máy chủ này cần phải thực thi capability đặc tả tham chiếu"
 
-#: remote-curl.c:184
 #, c-format
-msgid "invalid quoting in push-option value: '%s'"
-msgstr "sai trích dẫn trong giá trị push-option :“%s”"
+msgid "%s unexpectedly said: '%s'"
+msgstr "%s said bất ngờ: “%s”"
 
-#: remote-curl.c:308
 #, 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?"
+msgid "%s also locked %s"
+msgstr "%s cũng khóa %s"
 
-#: remote-curl.c:409
-msgid "invalid server response; expected service, got flush packet"
+msgid "couldn't run fast-import"
+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"
+
+#, c-format
+msgid "could not read ref %s"
+msgstr "không thể đọc tham chiếu %s"
+
+#, c-format
+msgid "unknown response to connect: %s"
+msgstr "không hiểu đáp ứng để kết nối: %s"
+
+msgid "setting remote service path not supported by protocol"
+msgstr "giao thức này không hỗ trợ cài đặt đường dẫn dịch vụ máy chủ"
+
+msgid "invalid remote service path"
+msgstr "đường dẫn dịch vụ máy chủ không hợp lệ"
+
+msgid "operation not supported by protocol"
+msgstr "thao tác không được gia thức hỗ trợ"
+
+#, c-format
+msgid "can't connect to subservice %s"
+msgstr "không thể kết nối đến dịch vụ phụ %s"
+
+msgid "--negotiate-only requires protocol v2"
+msgstr "--negotiate-only cần giao thức v2"
+
+msgid "'option' without a matching 'ok/error' directive"
+msgstr "“option” không có chỉ thị “ok/error” tương ứng"
+
+#, c-format
+msgid "expected ok/error, helper said '%s'"
+msgstr "cần ok/error, nhưng bộ hỗ trợ lại nói “%s”"
+
+#, 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"
+
+#, c-format
+msgid "helper %s does not support dry-run"
+msgstr "helper %s không hỗ trợ dry-run"
+
+#, c-format
+msgid "helper %s does not support --signed"
+msgstr "helper %s không hỗ trợ --signed"
+
+#, c-format
+msgid "helper %s does not support --signed=if-asked"
+msgstr "helper %s không hỗ trợ --signed=if-asked"
+
+#, c-format
+msgid "helper %s does not support --atomic"
+msgstr "helper %s không hỗ trợ --atomic"
+
+#, c-format
+msgid "helper %s does not support --%s"
+msgstr "helper %s không hỗ trợ --%s"
+
+#, c-format
+msgid "helper %s does not support 'push-option'"
+msgstr "helper %s không hỗ trợ “push-option”"
+
+msgid "remote-helper doesn't support push; refspec needed"
+msgstr "remote-helper không hỗ trợ push; cần đặc tả tham chiếu"
+
+#, c-format
+msgid "helper %s does not support 'force'"
+msgstr "helper %s không hỗ trợ “force”"
+
+msgid "couldn't run fast-export"
+msgstr "không thể chạy fast-export"
+
+msgid "error while running fast-export"
+msgstr "gặp lỗi trong khi chạy fast-export"
+
+#, c-format
+msgid ""
+"No refs in common and none specified; doing nothing.\n"
+"Perhaps you should specify a branch.\n"
 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"
+"Không có các tham chiếu trong phần chung và chưa chỉ định; nên không làm gì "
+"cả.\n"
+"Tuy nhiên bạn nên chỉ định một nhánh.\n"
 
-#: remote-curl.c:440
 #, 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"
+msgid "unsupported object format '%s'"
+msgstr "không hỗ trợ định dạng đối tượng “%s”"
+
+#, c-format
+msgid "malformed response in ref list: %s"
+msgstr "đáp ứng sai dạng trong danh sách tham chiếu: %s"
+
+#, c-format
+msgid "read(%s) failed"
+msgstr "read(%s) gặp lỗi"
+
+#, c-format
+msgid "write(%s) failed"
+msgstr "write(%s) gặp lỗi"
 
-#: remote-curl.c:500
 #, c-format
-msgid "repository '%s' not found"
-msgstr "không tìm thấy kho “%s”"
+msgid "%s thread failed"
+msgstr "tuyến trình %s gặp lỗi"
 
-#: remote-curl.c:504
 #, c-format
-msgid "Authentication failed for '%s'"
-msgstr "Xác thực gặp lỗi cho “%s”"
+msgid "%s thread failed to join: %s"
+msgstr "tuyến trình %s gặp lỗi khi gia nhập: %s"
 
-#: remote-curl.c:508
 #, c-format
-msgid "unable to access '%s' with http.pinnedPubkey configuration: %s"
-msgstr "không thể truy cập “%s” với cấu hình http.pinnedPubkey: %s"
+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"
 
-#: remote-curl.c:512
 #, c-format
-msgid "unable to access '%s': %s"
-msgstr "không thể truy cập “%s”: %s"
+msgid "%s process failed to wait"
+msgstr "xử lý %s gặp lỗi khi đợi"
 
-#: remote-curl.c:518
 #, c-format
-msgid "redirecting to %s"
-msgstr "chuyển hướng đến %s"
+msgid "%s process failed"
+msgstr "xử lý %s gặp lỗi"
 
-#: remote-curl.c:649
-msgid "shouldn't have EOF when not gentle on EOF"
-msgstr "không nên có EOF khi không gentle trên EOF"
+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"
 
-#: remote-curl.c:661
-msgid "remote server sent unexpected response end packet"
-msgstr "máy phục vụ gửi gói kết thúc không cần"
+#, c-format
+msgid "Would set upstream of '%s' to '%s' of '%s'\n"
+msgstr "Không thể đặt thượng nguồn của “%s” thành “%s” của “%s”\n"
 
-#: remote-curl.c:730
-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"
+#, c-format
+msgid "could not read bundle '%s'"
+msgstr "không thể đọc bó “%s”"
 
-#: remote-curl.c:759
 #, c-format
-msgid "remote-curl: bad line length character: %.4s"
-msgstr "remote-curl: ký tự chiều dài dòng bị sai: %.4s"
+msgid "transport: invalid depth option '%s'"
+msgstr "vận chuyển: tùy chọn độ sâu “%s” không hợp lệ"
 
-#: remote-curl.c:761
-msgid "remote-curl: unexpected response end packet"
-msgstr "remote-curl: gặp đáp ứng là gói kết thúc bất ngờ"
+msgid "see protocol.version in 'git help config' for more details"
+msgstr "xem protocol.version trong “git help config” để có thêm thông tin"
 
-#: remote-curl.c:837
-#, c-format
-msgid "RPC failed; %s"
-msgstr "RPC gặp lỗi; %s"
+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"
 
-#: remote-curl.c:877
-msgid "cannot handle pushes this big"
-msgstr "không thể xử lý đẩy cái lớn này"
+msgid "server does not support wait-for-done"
+msgstr "máy chủ không hỗ trợ wait-for-done"
 
-#: remote-curl.c:990
-#, 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"
+msgid "could not parse transport.color.* config"
+msgstr "không thể phân tích cú pháp cấu hình transport.color.*"
 
-#: remote-curl.c:994
-#, 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"
+msgid "support for protocol v2 not implemented yet"
+msgstr "việc hỗ trợ giao thức v2 chưa được thực hiện"
 
-#: remote-curl.c:1044
 #, c-format
-msgid "%d bytes of length header were received"
-msgstr "đã nhận về phần đầu có chiều dài %d byte"
+msgid "unknown value for config '%s': %s"
+msgstr "không hiểu giá trị cho cho cấu hình “%s”: %s"
 
-#: remote-curl.c:1046
 #, 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:1135
-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:1150
-msgid "fetch failed."
-msgstr "lấy về gặp lỗi."
+msgid "transport '%s' not allowed"
+msgstr "không cho phép phương thức vận chuyển “%s”"
 
-#: remote-curl.c:1198
-msgid "cannot fetch by sha1 over smart http"
-msgstr "không thể lấy về bằng sha1 thông qua smart http"
+msgid "git-over-rsync is no longer supported"
+msgstr "git-over-rsync không còn được hỗ trợ nữa"
 
-#: remote-curl.c:1242 remote-curl.c:1248
 #, 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”"
+msgid ""
+"The following submodule paths contain changes that can\n"
+"not be found on any remote:\n"
+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"
 
-#: remote-curl.c:1260 remote-curl.c:1378
 #, c-format
-msgid "http transport does not support %s"
-msgstr "vận chuyển http không hỗ trợ %s"
-
-#: remote-curl.c:1296
-msgid "git-http-push failed"
-msgstr "git-http-push gặp lỗi"
+msgid ""
+"\n"
+"Please try\n"
+"\n"
+"\tgit push --recurse-submodules=on-demand\n"
+"\n"
+"or cd to the path and use\n"
+"\n"
+"\tgit push\n"
+"\n"
+"to push them to a remote.\n"
+"\n"
+msgstr ""
+"\n"
+"Hãy thử\n"
+"\n"
+"\tgit push --recurse-submodules=on-demand\n"
+"\n"
+"hoặc cd đến đường dẫn và dùng\n"
+"\n"
+"\tgit push\n"
+"\n"
+"để đẩy chúng lên máy phục vụ.\n"
+"\n"
 
-#: remote-curl.c:1485
-msgid "remote-curl: usage: git remote-curl <remote> [<url>]"
-msgstr "remote-curl: usage: git remote-curl <máy chủ> [<url>]"
+msgid "Aborting."
+msgstr "Bãi bỏ."
 
-#: remote-curl.c:1517
-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"
+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"
 
-#: remote-curl.c:1524
-msgid "remote-curl: fetch attempted without a local repo"
-msgstr "remote-curl: đã cố gắng fetch mà không có kho nội bộ"
+msgid "too-short tree object"
+msgstr "đối tượng cây quá ngắn"
 
-#: remote-curl.c:1565
-#, c-format
-msgid "remote-curl: unknown command '%s' from git"
-msgstr "remote-curl: không hiểu lệnh “%s” từ git"
+msgid "malformed mode in tree entry"
+msgstr "chế độ dị hình trong đề mục cây"
 
-#: contrib/scalar/scalar.c:49
-msgid "need a working directory"
-msgstr "cần một thư mục làm việc"
+msgid "empty filename in tree entry"
+msgstr "tên tập tin trống rỗng trong mục tin cây"
 
-#: contrib/scalar/scalar.c:86
-msgid "could not find enlistment root"
-msgstr "không tìm thấy gốc enlistment"
+msgid "too-short tree file"
+msgstr "tập tin cây quá ngắn"
 
-#: contrib/scalar/scalar.c:89 contrib/scalar/scalar.c:350
-#: contrib/scalar/scalar.c:435 contrib/scalar/scalar.c:578
 #, c-format
-msgid "could not switch to '%s'"
-msgstr "không thể chuyển đến '%s'"
+msgid ""
+"Your local changes to the following files would be overwritten by checkout:\n"
+"%%sPlease commit your changes or stash them before you switch branches."
+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 "
+"checkout:\n"
+"%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn "
+"chuyển nhánh."
 
-#: contrib/scalar/scalar.c:179
 #, c-format
-msgid "could not configure %s=%s"
-msgstr "không thể đóng cấu hình %s=%s"
-
-#: contrib/scalar/scalar.c:197
-msgid "could not configure log.excludeDecoration"
-msgstr "không thể cấu hình log.excludeDecoration"
-
-#: contrib/scalar/scalar.c:218
-msgid "Scalar enlistments require a worktree"
-msgstr "'Scalar enlistments' cần một cây làm việc"
+msgid ""
+"Your local changes to the following files would be overwritten by checkout:\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 "
+"checkout:\n"
+"%%s"
 
-#: contrib/scalar/scalar.c:310
 #, c-format
-msgid "remote HEAD is not a branch: '%.*s'"
-msgstr "HEAD của máy chủ không phải một nhánh: '%.*s'"
+msgid ""
+"Your local changes to the following files would be overwritten by merge:\n"
+"%%sPlease commit your changes or stash them before you merge."
+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"
+"%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn hòa "
+"trộn."
 
-#: contrib/scalar/scalar.c:316
-msgid "failed to get default branch name from remote; using local default"
-msgstr "gặp lỗi khi lấy tên nhánh mặc định từ máy chủ; sử dụng mặc định nội bộ"
+#, 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"
 
-#: contrib/scalar/scalar.c:329
-msgid "failed to get default branch name"
-msgstr "gặp lỗi khi lấy tên nhánh mặc định"
+#, c-format
+msgid ""
+"Your local changes to the following files would be overwritten by %s:\n"
+"%%sPlease commit your changes or stash them before you %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 "
+"%s:\n"
+"%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn %s."
 
-#: contrib/scalar/scalar.c:340
-msgid "failed to unregister repository"
-msgstr "gặp lỗi khi hủy đăng ký kho chứa"
+#, c-format
+msgid ""
+"Your local changes to the following files would be overwritten by %s:\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 "
+"%s:\n"
+"%%s"
 
-#: contrib/scalar/scalar.c:355
-msgid "failed to delete enlistment directory"
-msgstr "gặp lỗi khi xóa thư mục dành được"
+#, c-format
+msgid ""
+"Updating the following directories would lose untracked files in them:\n"
+"%s"
+msgstr ""
+"Việc cập nhật các thư mục sau đây có thể làm mất các tập tin chưa theo dõi "
+"trong nó:\n"
+"%s"
 
-#: contrib/scalar/scalar.c:375
-msgid "branch to checkout after clone"
-msgstr "nhánh để lấy ra sau khi nhân bản"
+#, c-format
+msgid ""
+"Refusing to remove the current working directory:\n"
+"%s"
+msgstr ""
+"Từ chối gỡ bỏ thư mục làm việc hiện tại:\n"
+"%s"
 
-#: contrib/scalar/scalar.c:377
-msgid "when cloning, create full working directory"
-msgstr "khi nhân bản, tạo đầy đủ thư mục làm việc"
+#, c-format
+msgid ""
+"The following untracked working tree files would be removed by checkout:\n"
+"%%sPlease move or remove them before you switch branches."
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi lệnh "
+"checkout:\n"
+"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn chuyển nhánh."
 
-#: contrib/scalar/scalar.c:379
-msgid "only download metadata for the branch that will be checked out"
-msgstr "chỉ siêu dữ liệu tải về cho nhánh mà sẽ được lấy ra"
+#, c-format
+msgid ""
+"The following untracked working tree files would be removed by checkout:\n"
+"%%s"
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi lệnh "
+"checkout:\n"
+"%%s"
 
-#: contrib/scalar/scalar.c:384
-msgid "scalar clone [<options>] [--] <repo> [<dir>]"
-msgstr "scalar clone [<các tùy chọn>] [--] <kho> [<t.mục>]"
+#, c-format
+msgid ""
+"The following untracked working tree files would be removed by merge:\n"
+"%%sPlease move or remove them before you merge."
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi lệnh hòa "
+"trộn:\n"
+"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn hòa trộn."
 
-#: contrib/scalar/scalar.c:409
 #, c-format
-msgid "cannot deduce worktree name from '%s'"
-msgstr "không thể suy diễn tên cây làm việc từ '%s'"
+msgid ""
+"The following untracked working tree files would be removed by merge:\n"
+"%%s"
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi lệnh hòa "
+"trộn:\n"
+"%%s"
 
-#: contrib/scalar/scalar.c:418
 #, c-format
-msgid "directory '%s' exists already"
-msgstr "thư mục '%s' đã sẵn có"
+msgid ""
+"The following untracked working tree files would be removed by %s:\n"
+"%%sPlease move or remove them before you %s."
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi %s:\n"
+"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn %s."
 
-#: contrib/scalar/scalar.c:445
 #, c-format
-msgid "failed to get default branch for '%s'"
-msgstr "gặp lỗi khi lấy nhánh mặc định cho '%s'"
+msgid ""
+"The following untracked working tree files would be removed by %s:\n"
+"%%s"
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi %s:\n"
+"%%s"
 
-#: contrib/scalar/scalar.c:456
 #, c-format
-msgid "could not configure remote in '%s'"
-msgstr "không thể cấu hình máy chủ trong '%s'"
+msgid ""
+"The following untracked working tree files would be overwritten by "
+"checkout:\n"
+"%%sPlease move or remove them before you switch branches."
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
+"checkout:\n"
+"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn chuyển nhánh."
 
-#: contrib/scalar/scalar.c:465
 #, c-format
-msgid "could not configure '%s'"
-msgstr "không thể cấu hình '%s'"
-
-#: contrib/scalar/scalar.c:468
-msgid "partial clone failed; attempting full clone"
-msgstr "nhân bản từng phần gặp lỗi; đang cố thử nhân bản đầy đủ"
-
-#: contrib/scalar/scalar.c:472
-msgid "could not configure for full clone"
-msgstr "không thể cấu hình cho nhân bản đầy đủ"
-
-#: contrib/scalar/scalar.c:504
-msgid "`scalar list` does not take arguments"
-msgstr "`scalar list` không nhận các tham số"
-
-#: contrib/scalar/scalar.c:517
-msgid "scalar register [<enlistment>]"
-msgstr "scalar register [<enlistment>]"
-
-#: contrib/scalar/scalar.c:544
-msgid "reconfigure all registered enlistments"
-msgstr "cấu hình mọi enlistments đã đăng ký"
-
-#: contrib/scalar/scalar.c:548
-msgid "scalar reconfigure [--all | <enlistment>]"
-msgstr "scalar reconfigure [--all | <enlistment>]"
-
-#: contrib/scalar/scalar.c:566
-msgid "--all or <enlistment>, but not both"
-msgstr "--all hoặc <enlistment>, không thể là cả hai"
+msgid ""
+"The following untracked working tree files would be overwritten by "
+"checkout:\n"
+"%%s"
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
+"checkout:\n"
+"%%s"
 
-#: contrib/scalar/scalar.c:581
 #, c-format
-msgid "git repository gone in '%s'"
-msgstr "kho git ra đi trong '%s'"
-
-#: contrib/scalar/scalar.c:621
 msgid ""
-"scalar run <task> [<enlistment>]\n"
-"Tasks:\n"
+"The following untracked working tree files would be overwritten by merge:\n"
+"%%sPlease move or remove them before you merge."
 msgstr ""
-"scalar run <task> [<enlistment>]\n"
-"Nhiệm vụ:\n"
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
+"hòa trộn:\n"
+"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn hòa trộn."
 
-#: contrib/scalar/scalar.c:639
 #, c-format
-msgid "no such task: '%s'"
-msgstr "không có nhiệm vụ nào như thế: “%s”"
-
-#: contrib/scalar/scalar.c:689
-msgid "scalar unregister [<enlistment>]"
-msgstr "scalar unregister [<enlistment>]"
-
-#: contrib/scalar/scalar.c:736
-msgid "scalar delete <enlistment>"
-msgstr "scalar delete <enlistment>"
-
-#: contrib/scalar/scalar.c:751
-msgid "refusing to delete current working directory"
-msgstr "từ chối gỡ bỏ thư mục làm việc hiện tại"
-
-#: contrib/scalar/scalar.c:766
-msgid "include Git version"
-msgstr "bao gồm phiên bản Git"
-
-#: contrib/scalar/scalar.c:768
-msgid "include Git's build options"
-msgstr "bao gồm các tùy chọn biên dịch của Git"
-
-#: contrib/scalar/scalar.c:772
-msgid "scalar verbose [-v | --verbose] [--build-options]"
-msgstr "scalar verbose [-v | --verbose] [--build-options]"
-
-#: contrib/scalar/scalar.c:813
-msgid "-C requires a <directory>"
-msgstr "-C cần một <thư_mục>"
+msgid ""
+"The following untracked working tree files would be overwritten by merge:\n"
+"%%s"
+msgstr ""
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
+"hòa trộn:\n"
+"%%s"
 
-#: contrib/scalar/scalar.c:815
 #, c-format
-msgid "could not change to '%s'"
-msgstr "không thể chuyển sang “%s”"
-
-#: contrib/scalar/scalar.c:821
-msgid "-c requires a <key>=<value> argument"
-msgstr "-c cần một tham số <key>=<value>"
-
-#: contrib/scalar/scalar.c:839
 msgid ""
-"scalar [-C <directory>] [-c <key>=<value>] <command> [<options>]\n"
-"\n"
-"Commands:\n"
+"The following untracked working tree files would be overwritten by %s:\n"
+"%%sPlease move or remove them before you %s."
 msgstr ""
-"scalar [-C </thư/mục/>] [-c <khóa>=<giá trị>] <lệnh> [<các tùy chọn>]\n"
-"\n"
-"Các lệnh:\n"
-
-#: compat/compiler.h:26
-msgid "no compiler information available\n"
-msgstr "hiện không có thông tin về trình biên dịch\n"
-
-#: compat/compiler.h:38
-msgid "no libc information available\n"
-msgstr "không có thông tin về libc\n"
-
-#: list-objects-filter-options.h:126
-msgid "args"
-msgstr "các_tham_số"
-
-#: list-objects-filter-options.h:127
-msgid "object filtering"
-msgstr "lọc đối tượng"
-
-#: parse-options.h:188
-msgid "expiry-date"
-msgstr "ngày hết hạn"
-
-#: parse-options.h:202
-msgid "no-op (backward compatibility)"
-msgstr "no-op (tương thích ngược)"
-
-#: parse-options.h:341
-msgid "be more verbose"
-msgstr "chi tiết hơn nữa"
-
-#: parse-options.h:343
-msgid "be more quiet"
-msgstr "im lặng hơn nữa"
-
-#: parse-options.h:349
-msgid "use <n> digits to display object names"
-msgstr "sử dụng <n> chữ số để hiển thị tên đối tượng"
-
-#: parse-options.h:368
-msgid "how to strip spaces and #comments from message"
-msgstr "làm thế nào để cắt bỏ khoảng trắng và #ghichú từ mẩu tin nhắn"
-
-#: parse-options.h:369
-msgid "read pathspec from file"
-msgstr "đọc đặc tả đường dẫn từ tập tin"
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
+"%s:\n"
+"%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn %s."
 
-#: parse-options.h:370
+#, c-format
 msgid ""
-"with --pathspec-from-file, pathspec elements are separated with NUL character"
+"The following untracked working tree files would be overwritten by %s:\n"
+"%%s"
 msgstr ""
-"với --pathspec-from-file, các phần tử đặc tả đường dẫn bị ngăn cách bởi ký "
-"tự NULL"
-
-#: ref-filter.h:98
-msgid "key"
-msgstr "khóa"
-
-#: ref-filter.h:98
-msgid "field name to sort on"
-msgstr "tên trường cần sắp xếp"
-
-#: rerere.h:44
-msgid "update the index with reused conflict resolution if possible"
-msgstr "cập nhật bảng mục lục với phân giải xung đột dùng lại nếu được"
-
-#: command-list.h:50
-msgid "Add file contents to the index"
-msgstr "Thêm nội dung tập tin vào bảng mục lục"
-
-#: command-list.h:51
-msgid "Apply a series of patches from a mailbox"
-msgstr "Áp dụng một chuỗi các miếng và từ một mailbox"
+"Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị ghi đè bởi lệnh "
+"%s:\n"
+"%%s"
 
-#: command-list.h:52
-msgid "Annotate file lines with commit information"
-msgstr "Các dòng diễn giải tập tin với thông tin chuyển giao"
+#, c-format
+msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
+msgstr "Mục “%s” đè lên “%s”. Không thể buộc."
 
-#: command-list.h:53
-msgid "Apply a patch to files and/or to the index"
+#, c-format
+msgid ""
+"Cannot update submodule:\n"
+"%s"
 msgstr ""
-"Áp dụng một miếng vá cho các tập tin đã chỉ ra và/hoặc vào bảng mục lục"
-
-#: command-list.h:54
-msgid "Import a GNU Arch repository into Git"
-msgstr "Nhập một kho GNU Arch vào một kho Git"
+"Không thể cập nhật mô-đun-con:\n"
+"%s"
 
-#: command-list.h:55
-msgid "Create an archive of files from a named tree"
-msgstr "Tạo một kho nén các tập tin từ cây làm việc có tên"
+#, c-format
+msgid ""
+"The following paths are not up to date and were left despite sparse "
+"patterns:\n"
+"%s"
+msgstr ""
+"Các đường dẫn sau đây không được cập nhật và vẫn được để lại bất chấp các "
+"mẫu sparse:\n"
+"%s"
 
-#: command-list.h:56
-msgid "Use binary search to find the commit that introduced a bug"
-msgstr "Tìm kiếm dạng nhị phân để tìm ra lần chuyển giao nào đưa ra lỗi"
+#, c-format
+msgid ""
+"The following paths are unmerged and were left despite sparse patterns:\n"
+"%s"
+msgstr ""
+"Các đường dẫn theo sau đây chưa được hòa trộn và để bất chấp các mẫu "
+"sparse:\n"
+"%s"
 
-#: command-list.h:57
-msgid "Show what revision and author last modified each line of a file"
+#, c-format
+msgid ""
+"The following paths were already present and thus not updated despite sparse "
+"patterns:\n"
+"%s"
 msgstr ""
-"Hiển thị số hiệu phiên bản và tác giả sửa đổi cuối cho từng dòng của một tập "
-"tin"
+"Các đường dẫn sau đây đã sẵn hiện diện và như vậy không được cập nhật bất "
+"cấp các mẫu sparse:\n"
+"%s"
 
-#: command-list.h:58
-msgid "List, create, or delete branches"
-msgstr "Liệt kê, tạo hay là xóa các nhánh"
+#, c-format
+msgid "Aborting\n"
+msgstr "Bãi bỏ\n"
 
-#: command-list.h:59
-msgid "Collect information for user to file a bug report"
-msgstr "Sưu tập thông tin người dùng để báo cáo lỗi"
+#, c-format
+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"
 
-#: command-list.h:60
-msgid "Move objects and refs by archive"
-msgstr "Di chuyển các đối tượng và tham chiếu theo kho lưu"
+msgid "Updating files"
+msgstr "Đang cập nhật các tập tin"
 
-#: command-list.h:61
-msgid "Provide content or type and size information for repository objects"
-msgstr "Cung cấp nội dung hoặc thông tin về kiểu và cỡ cho các đối tượng kho"
+msgid ""
+"the following paths have collided (e.g. case-sensitive paths\n"
+"on a case-insensitive filesystem) and only one from the same\n"
+"colliding group is in the working tree:\n"
+msgstr ""
+"các đường dẫn sau đây có xung đột(vd: các đường dẫn phân biệt\n"
+"HOA/thường trên một hệ thống tập tin không phân biệt HOA/thường)\n"
+"và chỉ một từ cùng một nhóm xung đột là trong cây làm việc hiện tại:\n"
 
-#: command-list.h:62
-msgid "Display gitattributes information"
-msgstr "Hiển thị thông tin gitattributes"
+msgid "Updating index flags"
+msgstr "Đang cập nhật các cờ mục lục"
 
-#: command-list.h:63
-msgid "Debug gitignore / exclude files"
-msgstr "Gỡ lỗi các tập tin gitignore / exclude"
+#, c-format
+msgid "worktree and untracked commit have duplicate entries: %s"
+msgstr ""
+"cây làm việc và lần chuyển giao không được theo dõi có các mục trùng lặp: %s"
 
-#: command-list.h:64
-msgid "Show canonical names and email addresses of contacts"
-msgstr "Hiển thị tên và địa chỉ thư điện tử của các liên hệ dạng chuẩn hóa"
+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"
 
-#: command-list.h:65
-msgid "Ensures that a reference name is well formed"
-msgstr "Đảm bảo rằng một tên tham chiếu ở dạng thức tốt"
+msgid "invalid URL scheme name or missing '://' suffix"
+msgstr "tên lược đồ URL không hợp lệ, hoặc thiếu hậu tố “://”"
 
-#: command-list.h:66
-msgid "Switch branches or restore working tree files"
-msgstr "Chuyển các nhánh hoặc phục hồi lại các tập tin cây làm việc"
+#, c-format
+msgid "invalid %XX escape sequence"
+msgstr "thoát chuỗi %XX không hợp lệ"
 
-#: command-list.h:67
-msgid "Copy files from the index to the working tree"
-msgstr "Sao chép các tập tin từ mục lục ra cây làm việc"
+msgid "missing host and scheme is not 'file:'"
+msgstr "thiếu máy chủ và lược đồ thì không phải là giao thức “file:”"
 
-#: command-list.h:68
-msgid "Find commits yet to be applied to upstream"
-msgstr "Tìm những lần chuyển giao còn chưa được áp dụng lên thượng nguồn"
+msgid "a 'file:' URL may not have a port number"
+msgstr "một URL kiểu “file:” không được chứa cổng"
 
-#: command-list.h:69
-msgid "Apply the changes introduced by some existing commits"
-msgstr "Áp dụng các thay đổi được đưa ra bởi một số lần chuyển giao sẵn có"
+msgid "invalid characters in host name"
+msgstr "có các ký tự không hợp lệ trong tên máy"
 
-#: command-list.h:70
-msgid "Graphical alternative to git-commit"
-msgstr "Tương tác đồ họa với git-commit"
+msgid "invalid port number"
+msgstr "tên cổng không hợp lệ"
 
-#: command-list.h:71
-msgid "Remove untracked files from the working tree"
-msgstr "Gỡ bỏ các tập tin không được theo dõi từ cây làm việc"
+msgid "invalid '..' path segment"
+msgstr "đoạn đường dẫn “..” không hợp lệ"
 
-#: command-list.h:72
-msgid "Clone a repository into a new directory"
-msgstr "Nhân bản một kho chứa đến một thư mục mới"
+msgid "Fetching objects"
+msgstr "Đang lấy về các đối tượng"
 
-#: command-list.h:73
-msgid "Display data in columns"
-msgstr "Hiển thị dữ liệu dạng các cột"
+#, c-format
+msgid "'%s' at main working tree is not the repository directory"
+msgstr "“%s” tại cây làm việc chình không phải là thư mục kho"
 
-#: command-list.h:74
-msgid "Record changes to the repository"
-msgstr "Ghi các thay đổi vào kho chứa"
+#, c-format
+msgid "'%s' file does not contain absolute path to the working tree location"
+msgstr ""
+"tập tin “%s” không chứa đường dẫn tuyệt đối đến vị trí cây làm việc hiện"
 
-#: command-list.h:75
-msgid "Write and verify Git commit-graph files"
-msgstr "Ghi và thẩm tra các tập tin đồ họa các lần chuyển giao Git"
+#, c-format
+msgid "'%s' is not a .git file, error code %d"
+msgstr "“%s” không phải là tập tin .git, mã lỗi %d"
 
-#: command-list.h:76
-msgid "Create a new commit object"
-msgstr "Tạo một đối tượng chuyển giao"
+#, c-format
+msgid "'%s' does not point back to '%s'"
+msgstr "“%s” không chỉ ngược đến “%s”"
 
-#: command-list.h:77
-msgid "Get and set repository or global options"
-msgstr "Lấy và đặt kho hoặc các tùy chọn toàn cục"
+msgid "not a directory"
+msgstr "không phải thư mục"
 
-#: command-list.h:78
-msgid "Count unpacked number of objects and their disk consumption"
-msgstr ""
-"Đếm số lượng đối tượng chưa được đóng gói và mức tiêu dùng đĩa của chúng"
+msgid ".git is not a file"
+msgstr ".git không phải là một tập tin"
 
-#: command-list.h:79
-msgid "Retrieve and store user credentials"
-msgstr "Nhận và lưu chứng nhận của người dùng"
+msgid ".git file broken"
+msgstr "tệp .git bị hỏng"
 
-#: command-list.h:80
-msgid "Helper to temporarily store passwords in memory"
-msgstr "Bộ hỗ trợ để lưu mật khẩu tạm thời trong bộ nhớ"
+msgid ".git file incorrect"
+msgstr "tập tin .git không chính xác"
 
-#: command-list.h:81
-msgid "Helper to store credentials on disk"
-msgstr "Bộ hỗ trợ để lưu chứng nhận vào đĩa"
+msgid "not a valid path"
+msgstr "không phải là một đường dẫn hợp lệ"
 
-#: command-list.h:82
-msgid "Export a single commit to a CVS checkout"
-msgstr "Xuất một lần chuyển giao thành một lần lấy ra CVS"
+msgid "unable to locate repository; .git is not a file"
+msgstr "không thể phân bổ kho chứa; .git không phải là một tập tin"
 
-#: command-list.h:83
-msgid "Salvage your data out of another SCM people love to hate"
-msgstr "Xem xét giá trị dữ liệu của bạn khỏi người khác yêu SCM để ghét"
+msgid "unable to locate repository; .git file does not reference a repository"
+msgstr "không thể phân bổ kho chứa; tập tin .git tham chiếu đến một kho"
 
-#: command-list.h:84
-msgid "A CVS server emulator for Git"
-msgstr "Một bộ mô phỏng máy dịch vụ CVS cho Git"
+msgid "unable to locate repository; .git file broken"
+msgstr "không thể phân bổ kho chứa; tập tin .git bị hỏng"
 
-#: command-list.h:85
-msgid "A really simple server for Git repositories"
-msgstr "Một máy phục vụ thực sự đơn giản dành cho kho Git"
+msgid "gitdir unreadable"
+msgstr "gitdir không thể đọc được"
 
-#: command-list.h:86
-msgid "Give an object a human readable name based on an available ref"
-msgstr ""
-"Đưa ra một đối tượng dựa trên một tên ở dạng con người đọc được trên một "
-"tham chiếu sẵn có"
+msgid "gitdir incorrect"
+msgstr "gitdir không chính xác"
 
-#: command-list.h:87
-msgid "Show changes between commits, commit and working tree, etc"
-msgstr ""
-"Hiển thị các thay đổi giữa những lần chuyển giao, giữa một lần chuyển giao "
-"và cây làm việc, v.v.."
+msgid "not a valid directory"
+msgstr "không phải thư mục hợp lệ"
 
-#: command-list.h:88
-msgid "Compares files in the working tree and the index"
-msgstr "So sánh các tập tin trong cây làm việc và bảng mục lục"
+msgid "gitdir file does not exist"
+msgstr "tập tin gitdir không tồn tại"
 
-#: command-list.h:89
-msgid "Compare a tree to the working tree or index"
-msgstr "So sánh các cây trong cây làm việc hoặc bảng mục lục"
+#, c-format
+msgid "unable to read gitdir file (%s)"
+msgstr "không thể đọc tập tin gitdir (%s)"
 
-#: command-list.h:90
-msgid "Compares the content and mode of blobs found via two tree objects"
-msgstr ""
-"So sánh nội dung và chế độ của các blob tìm thấy thông qua hai đối tượng cây"
+#, c-format
+msgid "short read (expected %<PRIuMAX> bytes, read %<PRIuMAX>)"
+msgstr "đọc ngắn (cần %<PRIuMAX> byte, đọc %<PRIuMAX>)"
 
-#: command-list.h:91
-msgid "Show changes using common diff tools"
-msgstr "Hiển thị các thay đổi sử dụng các công cụ diff chung"
+msgid "invalid gitdir file"
+msgstr "tập tin gitdir (thư mục git) không hợp lệ"
 
-#: command-list.h:92
-msgid "Git data exporter"
-msgstr "Bộ xuất dữ liệu Git"
+msgid "gitdir file points to non-existent location"
+msgstr "tập tin gitdir chỉ đến vị trí không tồn tại"
 
-#: command-list.h:93
-msgid "Backend for fast Git data importers"
-msgstr "Ứng dụng chạy phía sau cho bộ nhập nhanh dữ liệu Git"
+#, c-format
+msgid "unable to set %s in '%s'"
+msgstr "không thể đặt %s trong “%s”"
 
-#: command-list.h:94
-msgid "Download objects and refs from another repository"
-msgstr "Tải về các đối tượng và tham chiếu từ kho chứa khác"
+#, c-format
+msgid "unable to unset %s in '%s'"
+msgstr "không thể bỏ đặt %s trong '%s'"
 
-#: command-list.h:95
-msgid "Receive missing objects from another repository"
-msgstr "Tải về các đối tượng còn thiếu từ kho chứa khác"
+msgid "failed to set extensions.worktreeConfig setting"
+msgstr "gặp lỗi khi đặt cài đặt extensions.worktreeConfig"
 
-#: command-list.h:96
-msgid "Rewrite branches"
-msgstr "Những nhánh ghi lại"
+#, c-format
+msgid "could not setenv '%s'"
+msgstr "không thể setenv “%s”"
 
-#: command-list.h:97
-msgid "Produce a merge commit message"
-msgstr "Sản sinh một ghi chú lần chuyển giao hòa trộn"
+#, c-format
+msgid "unable to create '%s'"
+msgstr "không thể tạo “%s”"
 
-#: command-list.h:98
-msgid "Output information on each ref"
-msgstr "Xuất thông tin cho từng tham chiếu"
+#, c-format
+msgid "could not open '%s' for reading and writing"
+msgstr "không thể mở “%s” để đọc và ghi"
 
-#: 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"
+#, c-format
+msgid "unable to access '%s'"
+msgstr "không thể truy cập “%s”"
 
-#: 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ử"
+msgid "unable to get current working directory"
+msgstr "không thể lấy thư mục làm việc hiện hành"
 
-#: 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"
+msgid "Unmerged paths:"
+msgstr "Những đường dẫn chưa được hòa trộn:"
 
-#: 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ộ"
+msgid "  (use \"git restore --staged <file>...\" to unstage)"
+msgstr "  (dùng \"git restore --staged <tập-tin>…\" để bỏ ra khỏi bệ phóng)"
 
-#: command-list.h:103
-msgid "Extract commit ID from an archive created using git-archive"
+#, c-format
+msgid "  (use \"git restore --source=%s --staged <file>...\" to unstage)"
 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:104
-msgid "Print lines matching a pattern"
-msgstr "In ra những dòng khớp với một mẫu"
+"  (dùng \"git restore --source=%s --staged <tập-tin>…\" để bỏ ra khỏi bệ "
+"phóng)"
 
-#: command-list.h:105
-msgid "A portable graphical interface to Git"
-msgstr "Một giao diện đồ họa khả chuyển cho Git"
+msgid "  (use \"git rm --cached <file>...\" to unstage)"
+msgstr "  (dùng \"git rm --cached <tập-tin>…\" để bỏ ra khỏi bệ phóng)"
 
-#: 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"
+msgid "  (use \"git add <file>...\" to mark resolution)"
+msgstr "  (dùng \"git add <tập-tin>…\" để đánh dấu là cần giải quyết)"
 
-#: command-list.h:107
-msgid "Display help information about Git"
-msgstr "Hiển thị thông tin trợ giúp về Git"
+msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
+msgstr ""
+"  (dùng \"git add/rm <tập-tin>…\" như là một cách thích hợp để đánh dấu là "
+"cần được giải quyết)"
 
-#: command-list.h:108
-msgid "Run git hooks"
-msgstr "Chạy các móc git"
+msgid "  (use \"git rm <file>...\" to mark resolution)"
+msgstr "  (dùng \"git rm <tập-tin>…\" để đánh dấu là cần giải quyết)"
 
-#: command-list.h:109
-msgid "Server side implementation of Git over HTTP"
-msgstr "Thi hành phía máy chủ của Git qua HTTP"
+msgid "Changes to be committed:"
+msgstr "Những thay đổi sẽ được chuyển giao:"
 
-#: command-list.h:110
-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"
+msgid "Changes not staged for commit:"
+msgstr "Các thay đổi chưa được đặt lên bệ phóng để chuyển giao:"
 
-#: command-list.h:111
-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"
+msgid "  (use \"git add <file>...\" to update what will be committed)"
+msgstr "  (dùng \"git add <tập-tin>…\" để cập nhật những gì sẽ chuyển giao)"
 
-#: command-list.h:112
-msgid "Send a collection of patches from stdin to an IMAP folder"
+msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
 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:113
-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ó"
+"  (dùng \"git add/rm <tập-tin>…\" để cập nhật những gì sẽ được chuyển giao)"
 
-#: command-list.h:114
-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"
+msgid ""
+"  (use \"git restore <file>...\" to discard changes in working directory)"
+msgstr ""
+"  (dùng \"git restore <tập-tin>…\" để loại bỏ các thay đổi trong thư mục làm "
+"việc)"
 
-#: command-list.h:115
-msgid "Instantly browse your working repository in gitweb"
-msgstr "Duyệt ngay kho làm việc của bạn trong gitweb"
+msgid "  (commit or discard the untracked or modified content in submodules)"
+msgstr ""
+"  (chuyển giao hoặc là loại bỏ các nội dung chưa được theo dõi hay đã sửa "
+"chữa trong mô-đun-con)"
 
-#: command-list.h:116
-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"
+#, c-format
+msgid "  (use \"git %s <file>...\" to include in what will be committed)"
+msgstr ""
+"  (dùng \"git %s <tập-tin>…\" để thêm vào những gì cần được chuyển giao)"
 
-#: command-list.h:117
-msgid "Show commit logs"
-msgstr "Hiển thị nhật ký các lần chuyển giao"
+msgid "both deleted:"
+msgstr "bị xóa bởi cả hai:"
 
-#: 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"
+msgid "added by us:"
+msgstr "được thêm vào bởi chúng ta:"
 
-#: 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"
+msgid "deleted by them:"
+msgstr "bị xóa đi bởi họ:"
 
-#: 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"
+msgid "added by them:"
+msgstr "được thêm vào bởi họ:"
 
-#: 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"
+msgid "deleted by us:"
+msgstr "bị xóa bởi chúng ta:"
 
-#: command-list.h:122
-msgid "Simple UNIX mbox splitter program"
-msgstr "Chương trình phân tách UNIX mbox đơn giản"
+msgid "both added:"
+msgstr "được thêm vào bởi cả hai:"
 
-#: 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"
+msgid "both modified:"
+msgstr "bị sửa bởi cả hai:"
 
-#: 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"
+msgid "new file:"
+msgstr "tập tin mới:"
 
-#: 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"
+msgid "copied:"
+msgstr "đã chép:"
 
-#: 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”"
+msgid "deleted:"
+msgstr "đã xóa:"
 
-#: 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"
+msgid "modified:"
+msgstr "đã sửa:"
 
-#: 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"
+msgid "renamed:"
+msgstr "đã đổi tên:"
 
-#: command-list.h:129
-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"
+msgid "typechange:"
+msgstr "đổi-kiểu:"
 
-#: command-list.h:130
-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"
+msgid "unknown:"
+msgstr "không hiểu:"
 
-#: command-list.h:131
-msgid "Creates a tag object with extra validation"
-msgstr "Tạo một đối tượng thẻ với kiểm tra mở rộng"
+msgid "unmerged:"
+msgstr "chưa hòa trộn:"
 
-#: command-list.h:132
-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"
+msgid "new commits, "
+msgstr "lần chuyển giao mới, "
 
-#: command-list.h:133
-msgid "Write and verify multi-pack-indexes"
-msgstr "Ghi và thẩm tra các multi-pack-indexes"
+msgid "modified content, "
+msgstr "nội dung bị sửa đổi, "
 
-#: 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"
+msgid "untracked content, "
+msgstr "nội dung chưa được theo dõi, "
 
-#: 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"
+#, c-format
+msgid "Your stash currently has %d entry"
+msgid_plural "Your stash currently has %d entries"
+msgstr[0] "Bạn hiện nay ở trong phần cất đi đang có %d mục"
 
-#: command-list.h:136
-msgid "Add or inspect object notes"
-msgstr "Thêm hoặc điều tra đối tượng ghi chú"
+msgid "Submodules changed but not updated:"
+msgstr "Những mô-đun-con đã bị thay đổi nhưng chưa được cập nhật:"
 
-#: 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"
+msgid "Submodule changes to be committed:"
+msgstr "Những mô-đun-con thay đổi đã được chuyển giao:"
 
-#: 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"
+msgid ""
+"Do not modify or remove the line above.\n"
+"Everything below it will be ignored."
+msgstr ""
+"Không sửa hay xóa bỏ đường ở trên.\n"
+"Mọi thứ phía dưới sẽ được xóa bỏ."
 
-#: command-list.h:139
-msgid "Find redundant pack files"
-msgstr "Tìm các tập tin gói dư thừa"
+#, c-format
+msgid ""
+"\n"
+"It took %.2f seconds to compute the branch ahead/behind values.\n"
+"You can use '--no-ahead-behind' to avoid this.\n"
+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"
 
-#: 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"
+msgid "You have unmerged paths."
+msgstr "Bạn có những đường dẫn chưa được hòa trộn."
 
-#: 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á"
+msgid "  (fix conflicts and run \"git commit\")"
+msgstr "  (sửa các xung đột rồi chạy \"git commit\")"
 
-#: command-list.h:142
-msgid "Prune all unreachable objects from the object database"
-msgstr ""
-"Xén bớt tất các các đối tượng không tiếp cận được từ cơ sở dữ liệu đối tượng"
+msgid "  (use \"git merge --abort\" to abort the merge)"
+msgstr "  (dùng \"git merge --abort\" để bãi bỏ việc hòa trộn)"
 
-#: command-list.h:143
-msgid "Remove extra objects that are already in pack files"
-msgstr "Xóa bỏ các đối tượng mở rộng cái mà đã sẵn có trong các tập tin gói"
+msgid "All conflicts fixed but you are still merging."
+msgstr "Tất cả các xung đột đã được giải quyết nhưng bạn vẫn đang hòa trộn."
 
-#: command-list.h:144
-msgid "Fetch from and integrate with another repository or a local branch"
-msgstr "Lấy về và hợp nhất với kho khác hay một nhánh nội bộ"
+msgid "  (use \"git commit\" to conclude merge)"
+msgstr "  (dùng \"git commit\" để hoàn tất việc hòa trộn)"
 
-#: command-list.h:145
-msgid "Update remote refs along with associated objects"
-msgstr "Cập nhật th.chiếu máy chủ cùng với các đối tượng liên quan đến nó"
+msgid "You are in the middle of an am session."
+msgstr "Bạn đang ở giữa của một phiên “am”."
 
-#: command-list.h:146
-msgid "Applies a quilt patchset onto the current branch"
-msgstr "Ấp dụng một bộ miếng vá quilt vào trong nhánh hiện hành"
+msgid "The current patch is empty."
+msgstr "Miếng vá hiện tại bị trống rỗng."
 
-#: command-list.h:147
-msgid "Compare two commit ranges (e.g. two versions of a branch)"
-msgstr "So sánh hai vùng chuyển giao (vd: hai phiên bản của một nhánh)"
+msgid "  (fix conflicts and then run \"git am --continue\")"
+msgstr "  (sửa các xung đột và sau đó chạy lệnh \"git am --continue\")"
 
-#: command-list.h:148
-msgid "Reads tree information into the index"
-msgstr "Đọc thông tin cây vào trong mục lục"
+msgid "  (use \"git am --skip\" to skip this patch)"
+msgstr "  (dùng \"git am --skip\" để bỏ qua miếng vá này)"
 
-#: command-list.h:149
-msgid "Reapply commits on top of another base tip"
-msgstr "Thu hoạch các lần chuyển giao trên đỉnh của đầu mút cơ sở khác"
+msgid ""
+"  (use \"git am --allow-empty\" to record this patch as an empty commit)"
+msgstr ""
+"  (dùng \"git am --allow-empty\" ghi miếng vá này như một lần chuyển giao "
+"rỗng)"
 
-#: command-list.h:150
-msgid "Receive what is pushed into the repository"
-msgstr "Nhận cái mà được đẩy vào trong kho"
+msgid "  (use \"git am --abort\" to restore the original branch)"
+msgstr "  (dùng \"git am --abort\" để phục hồi lại nhánh nguyên thủy)"
 
-#: command-list.h:151
-msgid "Manage reflog information"
-msgstr "Quản lý thông tin reflog"
+msgid "git-rebase-todo is missing."
+msgstr "thiếu git-rebase-todo."
 
-#: command-list.h:152
-msgid "Manage set of tracked repositories"
-msgstr "Quản lý tập hợp các kho chứa đã được theo dõi"
+msgid "No commands done."
+msgstr "Không thực hiện lệnh nào."
 
-#: command-list.h:153
-msgid "Pack unpacked objects in a repository"
-msgstr "Đóng gói các đối tượng chưa đóng gói ở một kho chứa"
+#, c-format
+msgid "Last command done (%<PRIuMAX> command done):"
+msgid_plural "Last commands done (%<PRIuMAX> commands done):"
+msgstr[0] "Lệnh thực hiện cuối (%<PRIuMAX> lệnh được thực thi):"
 
-#: command-list.h:154
-msgid "Create, list, delete refs to replace objects"
-msgstr "Tạo, liệt kê, xóa các tham chiếu để thay thế các đối tượng"
+#, c-format
+msgid "  (see more in file %s)"
+msgstr "  (xem thêm trong %s)"
 
-#: command-list.h:155
-msgid "Generates a summary of pending changes"
-msgstr "Tạo ra một tóm tắt các thay đổi còn treo"
+msgid "No commands remaining."
+msgstr "Không có lệnh nào còn lại."
 
-#: command-list.h:156
-msgid "Reuse recorded resolution of conflicted merges"
-msgstr "Dùng lại các giải pháp đã ghi lại của các hòa trộn bị xung đột"
+#, c-format
+msgid "Next command to do (%<PRIuMAX> remaining command):"
+msgid_plural "Next commands to do (%<PRIuMAX> remaining commands):"
+msgstr[0] "Lệnh cần làm kế tiếp (%<PRIuMAX> lệnh còn lại):"
 
-#: command-list.h:157
-msgid "Reset current HEAD to the specified state"
-msgstr "Đặt lại HEAD hiện hành thành trạng thái đã cho"
+msgid "  (use \"git rebase --edit-todo\" to view and edit)"
+msgstr "  (dùng lệnh \"git rebase --edit-todo\" để xem và sửa)"
 
-#: command-list.h:158
-msgid "Restore working tree files"
-msgstr "Hoàn nguyên các tập tin cây làm việc"
+#, c-format
+msgid "You are currently rebasing branch '%s' on '%s'."
+msgstr "Bạn hiện nay đang thực hiện việc “rebase” nhánh “%s” trên “%s”."
 
-#: command-list.h:159
-msgid "Lists commit objects in reverse chronological order"
-msgstr "Liệt kê các đối tượng chuyển giao theo thứ tự tôpô đảo ngược"
+msgid "You are currently rebasing."
+msgstr "Bạn hiện nay đang thực hiện việc “rebase” (cải tổ)."
 
-#: command-list.h:160
-msgid "Pick out and massage parameters"
-msgstr "Cậy ra và xử lý các tham số"
+msgid "  (fix conflicts and then run \"git rebase --continue\")"
+msgstr ""
+"  (sửa các xung đột và sau đó chạy lệnh “cải tổ” \"git rebase --continue\")"
 
-#: command-list.h:161
-msgid "Revert some existing commits"
-msgstr "Hoàn lại một số lần chuyển giao sẵn có"
+msgid "  (use \"git rebase --skip\" to skip this patch)"
+msgstr "  (dùng lệnh “cải tổ” \"git rebase --skip\" để bỏ qua lần vá này)"
 
-#: command-list.h:162
-msgid "Remove files from the working tree and from the index"
-msgstr "Gỡ bỏ các tập tin từ cây làm việc và từ bảng mục lục"
+msgid "  (use \"git rebase --abort\" to check out the original branch)"
+msgstr ""
+"  (dùng lệnh “cải tổ” \"git rebase --abort\" để check-out nhánh nguyên thủy)"
 
-#: command-list.h:163
-msgid "Send a collection of patches as emails"
-msgstr "Gửi một tập hợp của các miếng vá ở dạng thư điện tử"
+msgid "  (all conflicts fixed: run \"git rebase --continue\")"
+msgstr ""
+"  (khi tất cả các xung đột đã sửa xong: chạy lệnh “cải tổ” \"git rebase --"
+"continue\")"
 
-#: command-list.h:164
-msgid "Push objects over Git protocol to another repository"
-msgstr "Đẩy các đối tượng lên thông qua giao thức Git đến kho chứa khác"
+#, c-format
+msgid ""
+"You are currently splitting a commit while rebasing branch '%s' on '%s'."
+msgstr ""
+"Bạn hiện nay đang thực hiện việc chia tách một lần chuyển giao trong khi "
+"đang “rebase” nhánh “%s” trên “%s”."
 
-#: command-list.h:165
-msgid "Git's i18n setup code for shell scripts"
-msgstr "Nã cài đặt quốc tế hóa của Git cho văn lệnh hệ vỏ"
+msgid "You are currently splitting a commit during a rebase."
+msgstr ""
+"Bạn hiện tại đang cắt đôi một lần chuyển giao trong khi đang thực hiện việc "
+"rebase."
 
-#: command-list.h:166
-msgid "Common Git shell script setup code"
-msgstr "Mã cài đặt văn lệnh hệ vỏ Git chung"
+msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
+msgstr ""
+"  (Một khi thư mục làm việc của bạn đã gọn gàng, chạy lệnh “cải tổ” \"git "
+"rebase --continue\")"
 
-#: command-list.h:167
-msgid "Restricted login shell for Git-only SSH access"
-msgstr "Hệ vỏ đăng nhập có hạn chế cho truy cập SSH chỉ-Git"
+#, c-format
+msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
+msgstr ""
+"Bạn hiện nay đang thực hiện việc sửa chữa một lần chuyển giao trong khi đang "
+"rebase nhánh “%s” trên “%s”."
 
-#: command-list.h:168
-msgid "Summarize 'git log' output"
-msgstr "Kết xuất “git log” dạng tóm tắt"
+msgid "You are currently editing a commit during a rebase."
+msgstr "Bạn hiện đang sửa một lần chuyển giao trong khi bạn thực hiện rebase."
 
-#: command-list.h:169
-msgid "Show various types of objects"
-msgstr "Hiển thị các kiểu khác nhau của các đối tượng"
+msgid "  (use \"git commit --amend\" to amend the current commit)"
+msgstr "  (dùng \"git commit --amend\" để “tu bổ” lần chuyển giao hiện tại)"
 
-#: command-list.h:170
-msgid "Show branches and their commits"
-msgstr "Hiển thị những nhánh và các lần chuyển giao của chúng"
+msgid ""
+"  (use \"git rebase --continue\" once you are satisfied with your changes)"
+msgstr ""
+"  (chạy lệnh “cải tổ” \"git rebase --continue\" một khi bạn cảm thấy hài "
+"lòng về những thay đổi của mình)"
 
-#: command-list.h:171
-msgid "Show packed archive index"
-msgstr "Hiển thị các muc lục kho nén đã đóng gói"
+msgid "Cherry-pick currently in progress."
+msgstr "Cherry-pick hiện tại đang được thực hiện."
 
-#: command-list.h:172
-msgid "List references in a local repository"
-msgstr "Liệt kê các tham chiếu trong một kho nội bộ"
+#, c-format
+msgid "You are currently cherry-picking commit %s."
+msgstr "Bạn hiện nay đang thực hiện việc cherry-pick lần chuyển giao %s."
 
-#: command-list.h:173
-msgid "Reduce your working tree to a subset of tracked files"
+msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr ""
-"Giảm lược cây làm việc của bạn thành tập hợp con của các tập tin được theo "
-"dõi"
+"  (sửa các xung đột và sau đó chạy lệnh \"git cherry-pick --continue\")"
 
-#: command-list.h:174
-msgid "Add file contents to the staging area"
-msgstr "Thêm nội dung tập tin vào vùng bệ phóng"
+msgid "  (run \"git cherry-pick --continue\" to continue)"
+msgstr "  (chạy lệnh \"git cherry-pick --continue\" để tiếp tục)"
 
-#: command-list.h:175
-msgid "Stash the changes in a dirty working directory away"
-msgstr "Tạm cất đi các thay đổi trong một thư mục làm việc bẩn"
+msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
+msgstr ""
+"  (khi tất cả các xung đột đã sửa xong: chạy lệnh \"git cherry-pick --"
+"continue\")"
 
-#: command-list.h:176
-msgid "Show the working tree status"
-msgstr "Hiển thị trạng thái cây làm việc"
+msgid "  (use \"git cherry-pick --skip\" to skip this patch)"
+msgstr "  (dùng \"git cherry-pick --skip\" để bỏ qua miếng vá này)"
 
-#: command-list.h:177
-msgid "Remove unnecessary whitespace"
-msgstr "Xóa bỏ các khoảng trắng không cần thiết"
+msgid "  (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
+msgstr "  (dùng \"git cherry-pick --abort\" để hủy bỏ thao tác cherry-pick)"
 
-#: command-list.h:178
-msgid "Initialize, update or inspect submodules"
-msgstr "Khởi tạo, cập nhật hay điều tra các mô-đun-con"
+msgid "Revert currently in progress."
+msgstr "Hoàn nguyên hiện tại đang thực hiện."
 
-#: command-list.h:179
-msgid "Bidirectional operation between a Subversion repository and Git"
-msgstr "Thao tác hai hướng giữ hai kho Subversion và Git"
+#, c-format
+msgid "You are currently reverting commit %s."
+msgstr "Bạn hiện nay đang thực hiện thao tác hoàn nguyên lần chuyển giao “%s”."
 
-#: command-list.h:180
-msgid "Switch branches"
-msgstr "Các nhánh chuyển"
+msgid "  (fix conflicts and run \"git revert --continue\")"
+msgstr "  (sửa các xung đột và sau đó chạy lệnh \"git revert --continue\")"
 
-#: command-list.h:181
-msgid "Read, modify and delete symbolic refs"
-msgstr "Đọc, sửa và xóa tham chiếu mềm"
+msgid "  (run \"git revert --continue\" to continue)"
+msgstr "  (chạy lệnh \"git revert --continue\" để tiếp tục)"
 
-#: command-list.h:182
-msgid "Create, list, delete or verify a tag object signed with GPG"
-msgstr "Tạo, liệt kê, xóa hay xác thực một đối tượng thẻ được ký bằng GPG"
+msgid "  (all conflicts fixed: run \"git revert --continue\")"
+msgstr ""
+"  (khi tất cả các xung đột đã sửa xong: chạy lệnh \"git revert --continue\")"
 
-#: command-list.h:183
-msgid "Creates a temporary file with a blob's contents"
-msgstr "Tạo một tập tin tạm với nội dung của blob"
+msgid "  (use \"git revert --skip\" to skip this patch)"
+msgstr "  (dùng lệnh \"git revert --skip\" để bỏ qua lần vá này)"
 
-#: command-list.h:184
-msgid "Unpack objects from a packed archive"
-msgstr "Gỡ các đối tượng khỏi một kho lưu đã đóng gói"
+msgid "  (use \"git revert --abort\" to cancel the revert operation)"
+msgstr "  (dùng \"git revert --abort\" để hủy bỏ thao tác hoàn nguyên)"
 
-#: command-list.h:185
-msgid "Register file contents in the working tree to the index"
-msgstr "Đăng ký nội dung tập tin từ cây làm việc đến bảng mục lục"
+#, c-format
+msgid "You are currently bisecting, started from branch '%s'."
+msgstr ""
+"Bạn hiện nay đang thực hiện thao tác di chuyển nửa bước (bisect), bắt đầu từ "
+"nhánh “%s”."
 
-#: command-list.h:186
-msgid "Update the object name stored in a ref safely"
-msgstr "Cập nhật tên đối tượng được lưu trong một tham chiếu một cách an toàn"
+msgid "You are currently bisecting."
+msgstr "Bạn hiện tại đang thực hiện việc bisect (di chuyển nửa bước)."
 
-#: command-list.h:187
-msgid "Update auxiliary info file to help dumb servers"
-msgstr "Cập nhật tập tin thông tin phụ trợ để giúp đỡ các dịch vụ dumb"
+msgid "  (use \"git bisect reset\" to get back to the original branch)"
+msgstr "  (dùng \"git bisect reset\" để quay trở lại nhánh nguyên thủy)"
 
-#: command-list.h:188
-msgid "Send archive back to git-archive"
-msgstr "Gửi kho lưu trở lại cho git-archive"
+msgid "You are in a sparse checkout."
+msgstr "Bạn đang trong lần lấy ra sparse."
 
-#: command-list.h:189
-msgid "Send objects packed back to git-fetch-pack"
-msgstr "Gửi các đối tượng đã đóng gói trở lại cho git-fetch-pack"
+#, c-format
+msgid "You are in a sparse checkout with %d%% of tracked files present."
+msgstr ""
+"Bạn đang ở trong lần lấy ra sparser %d%% của các tập tin được theo dõi hiện "
+"tại."
 
-#: command-list.h:190
-msgid "Show a Git logical variable"
-msgstr "Hiển thị một biến Git luận lý"
+msgid "On branch "
+msgstr "Trên nhánh "
 
-#: command-list.h:191
-msgid "Check the GPG signature of commits"
-msgstr "Kiểm tra ký lần chuyển giao dùng GPG"
+msgid "interactive rebase in progress; onto "
+msgstr "rebase ở chế độ tương tác đang được thực hiện; lên trên "
 
-#: command-list.h:192
-msgid "Validate packed Git archive files"
-msgstr "Kiểm tra lại các tập tin kho (lưu trữ, nén) Git đã được đóng gói"
+msgid "rebase in progress; onto "
+msgstr "rebase đang được thực hiện: lên trên "
 
-#: command-list.h:193
-msgid "Check the GPG signature of tags"
-msgstr "Kiểm tra chữ ký GPG của các thẻ"
+msgid "HEAD detached at "
+msgstr "HEAD được tách rời tại "
 
-#: command-list.h:194
-msgid "Show logs with difference each commit introduces"
-msgstr "Hiển thị các nhật ký với từng lần chuyển giao khác nhau đưa ra"
+msgid "HEAD detached from "
+msgstr "HEAD được tách rời từ "
 
-#: command-list.h:195
-msgid "Manage multiple working trees"
-msgstr "Quản lý nhiều cây làm việc"
+msgid "Not currently on any branch."
+msgstr "Hiện tại chẳng ở nhánh nào cả."
 
-#: command-list.h:196
-msgid "Create a tree object from the current index"
-msgstr "Tạo một đối tượng cây từ đầu vào tiêu chuẩn stdin hiện tại"
+msgid "Initial commit"
+msgstr "Lần chuyển giao khởi tạo"
 
-#: command-list.h:197
-msgid "Defining attributes per path"
-msgstr "Định nghĩa các thuộc tính cho mỗi đường dẫn"
+msgid "No commits yet"
+msgstr "Vẫn chưa chuyển giao"
 
-#: command-list.h:198
-msgid "Git command-line interface and conventions"
-msgstr "Giao diện dòng lệnh Git và quy ước"
+msgid "Untracked files"
+msgstr "Những tập tin chưa được theo dõi"
 
-#: command-list.h:199
-msgid "A Git core tutorial for developers"
-msgstr "Hướng dẫn Git cơ bản cho nhà phát triển"
+msgid "Ignored files"
+msgstr "Những tập tin bị lờ đi"
 
-#: command-list.h:200
-msgid "Providing usernames and passwords to Git"
-msgstr "Cung cấp tài khoản và mật khẩu cho Git"
+#, c-format
+msgid ""
+"It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
+"may speed it up, but you have to be careful not to forget to add\n"
+"new files yourself (see 'git help status')."
+msgstr ""
+"Cần %.2f giây để liệt kê tất cả các tập tin chưa được theo dõi. “status -"
+"uno”\n"
+"có lẽ làm nó nhanh hơn, nhưng bạn phải cẩn thận đừng quên mình phải\n"
+"tự thêm các tập tin mới (xem “git help status”.."
 
-#: command-list.h:201
-msgid "Git for CVS users"
-msgstr "Git dành cho những người dùng CVS"
+#, c-format
+msgid "Untracked files not listed%s"
+msgstr "Những tập tin chưa được theo dõi không được liệt kê ra %s"
 
-#: command-list.h:202
-msgid "Tweaking diff output"
-msgstr "Chỉnh kết xuất diff"
+msgid " (use -u option to show untracked files)"
+msgstr " (dùng tùy chọn -u để hiển thị các tập tin chưa được theo dõi)"
 
-#: command-list.h:203
-msgid "A useful minimum set of commands for Everyday Git"
-msgstr "Một tập hợp lệnh hữu dụng tối thiểu để dùng Git hàng ngày"
+msgid "No changes"
+msgstr "Không có thay đổi nào"
 
-#: command-list.h:204
-msgid "Frequently asked questions about using Git"
-msgstr "Các câu hỏi thường gặp về cách sử dụng Git"
+#, c-format
+msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
+msgstr ""
+"không có thay đổi nào được thêm vào để chuyển giao (dùng \"git add\" và/hoặc "
+"\"git commit -a\")\n"
 
-#: command-list.h:205
-msgid "A Git Glossary"
-msgstr "Thuật ngữ chuyên môn Git"
+#, c-format
+msgid "no changes added to commit\n"
+msgstr "không có thay đổi nào được thêm vào để chuyển giao\n"
 
-#: command-list.h:206
-msgid "Hooks used by Git"
-msgstr "Các móc được sử dụng bởi Git"
+#, c-format
+msgid ""
+"nothing added to commit but untracked files present (use \"git add\" to "
+"track)\n"
+msgstr ""
+"không có gì được thêm vào lần chuyển giao nhưng có những tập tin chưa được "
+"theo dõi hiện diện (dùng \"git add\" để đưa vào theo dõi)\n"
 
-#: command-list.h:207
-msgid "Specifies intentionally untracked files to ignore"
-msgstr "Chỉ định các tập tin không cần theo dõi"
+#, c-format
+msgid "nothing added to commit but untracked files present\n"
+msgstr ""
+"không có gì được thêm vào lần chuyển giao nhưng có những tập tin chưa được "
+"theo dõi hiện diện\n"
 
-#: command-list.h:208
-msgid "The Git repository browser"
-msgstr "Bộ duyện kho Git"
+#, c-format
+msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
+msgstr ""
+"không có gì để chuyển giao (tạo/sao-chép các tập tin và dùng \"git add\" để "
+"đưa vào theo dõi)\n"
 
-#: command-list.h:209
-msgid "Map author/committer names and/or E-Mail addresses"
-msgstr "Ánh xạ tên tác giả/người chuyển giao và/hoặc địa chỉ E-Mail"
+#, c-format
+msgid "nothing to commit\n"
+msgstr "không có gì để chuyển giao\n"
 
-#: command-list.h:210
-msgid "Defining submodule properties"
-msgstr "Định nghĩa thuộc tính mô-đun-con"
+#, c-format
+msgid "nothing to commit (use -u to show untracked files)\n"
+msgstr ""
+"không có gì để chuyển giao (dùng -u xem các tập tin chưa được theo dõi)\n"
 
-#: command-list.h:211
-msgid "Git namespaces"
-msgstr "Không gian tên Git"
+#, c-format
+msgid "nothing to commit, working tree clean\n"
+msgstr "không có gì để chuyển giao, thư mục làm việc sạch sẽ\n"
 
-#: command-list.h:212
-msgid "Helper programs to interact with remote repositories"
-msgstr "Các chương trình hỗ trợ để tương tác với các kho chứa trên máy chủ"
+msgid "No commits yet on "
+msgstr "Vẫn không thực hiện lệnh chuyển giao nào "
 
-#: command-list.h:213
-msgid "Git Repository Layout"
-msgstr "Bố cục kho Git"
+msgid "HEAD (no branch)"
+msgstr "HEAD (không nhánh)"
 
-#: command-list.h:214
-msgid "Specifying revisions and ranges for Git"
-msgstr "Chỉ định điểm xét duyệt và vùng cho Git"
+msgid "different"
+msgstr "khác"
 
-#: command-list.h:215
-msgid "Mounting one repository inside another"
-msgstr "Gắn một kho chứa vào trong một cái khác"
+msgid "behind "
+msgstr "đằng sau "
 
-#: command-list.h:216
-msgid "A tutorial introduction to Git"
-msgstr "Hướng dẫn cách dùng Git"
+msgid "ahead "
+msgstr "phía trước "
 
-#: command-list.h:217
-msgid "A tutorial introduction to Git: part two"
-msgstr "Hướng dẫn cách dùng Git: phần hai"
+#. TRANSLATORS: the action is e.g. "pull with rebase"
+#, c-format
+msgid "cannot %s: You have unstaged changes."
+msgstr "không thể %s: Bạn có các thay đổi chưa được đưa lên bệ phóng."
 
-#: command-list.h:218
-msgid "Git web interface (web frontend to Git repositories)"
-msgstr "Giao diện Git trên nền web (ứng dụng web chạy trên kho Git)"
+msgid "additionally, your index contains uncommitted changes."
+msgstr ""
+"thêm vào đó, bảng mục lục của bạn có chứa các thay đổi chưa được chuyển giao."
 
-#: command-list.h:219
-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"
+#, c-format
+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."
 
-#: git-merge-octopus.sh:46
 msgid ""
 "Error: Your local changes to the following files would be overwritten by "
 "merge"
@@ -26215,99 +21200,80 @@ msgstr ""
 "Lỗi: 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"
 
-#: git-merge-octopus.sh:61
 msgid "Automated merge did not work."
 msgstr "Hòa trộn một cách tự động không làm việc."
 
-#: git-merge-octopus.sh:62
 msgid "Should not be doing an octopus."
 msgstr "Không thể thực hiện một octopus."
 
-#: git-merge-octopus.sh:73
 #, sh-format
 msgid "Unable to find common commit with $pretty_name"
 msgstr "Không thể tìm thấy lần chuyển giao chung với $pretty_name"
 
-#: git-merge-octopus.sh:77
 #, sh-format
 msgid "Already up to date with $pretty_name"
 msgstr "Đã cập nhật với $pretty_name rồi"
 
-#: git-merge-octopus.sh:89
 #, sh-format
 msgid "Fast-forwarding to: $pretty_name"
 msgstr "Chuyển-tiếp-nhanh đến: $pretty_name"
 
-#: git-merge-octopus.sh:97
 #, sh-format
 msgid "Trying simple merge with $pretty_name"
 msgstr "Đang thử hòa trộn đơn giản với $pretty_name"
 
-#: git-merge-octopus.sh:102
 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-sh-setup.sh:89 git-sh-setup.sh:94
 #, sh-format
 msgid "usage: $dashless $USAGE"
 msgstr "cách dùng: $dashless $USAGE"
 
-#: git-sh-setup.sh:182
 #, sh-format
 msgid "Cannot chdir to $cdup, the toplevel of the working tree"
 msgstr ""
 "Không thể chuyển thư mục (chdir) sang $cdup, thư mục ở mức cao nhất của cây "
 "làm việc"
 
-#: git-sh-setup.sh:191 git-sh-setup.sh:198
 #, sh-format
 msgid "fatal: $program_name cannot be used without a working tree."
 msgstr ""
 "lỗi nghiêm trọng: $program_name không thể được dùng ngoaoif thư mục làm việc."
 
-#: git-sh-setup.sh:212
 msgid "Cannot rewrite branches: You have unstaged changes."
 msgstr ""
 "Không thể ghi lại các nhánh: Bạn có các thay đổi chưa được đưa lên bệ phóng."
 
-#: git-sh-setup.sh:215
 #, sh-format
 msgid "Cannot $action: You have unstaged changes."
 msgstr "Không thể $action: Bạn có các thay đổi chưa được đưa lên bệ phóng."
 
-#: git-sh-setup.sh:226
 #, sh-format
 msgid "Cannot $action: Your index contains uncommitted changes."
 msgstr ""
 "Không thể $action: Mục lục của bạn có chứa các thay đổi chưa được chuyển "
 "giao."
 
-#: git-sh-setup.sh:228
 msgid "Additionally, your index contains uncommitted changes."
 msgstr ""
 "Thêm vào đó, bảng mục lục của bạn có chứa các thay đổi chưa được chuyển giao."
 
-#: git-sh-setup.sh:348
 msgid "You need to run this command from the toplevel of the working tree."
 msgstr "Bạn cần chạy lệnh này từ thư mục ở mức cao nhất của cây làm việc."
 
-#: git-sh-setup.sh:353
 msgid "Unable to determine absolute path of git directory"
 msgstr "Không thể dò tìm đường dẫn tuyệt đối của thư mục git"
 
 #. TRANSLATORS: you can adjust this to align "git add -i" status menu
-#: git-add--interactive.perl:212
 #, perl-format
 msgid "%12s %12s %s"
 msgstr "%12s %12s %s"
 
-#: 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:1056
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for staging."
@@ -26315,7 +21281,6 @@ 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:1059
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for stashing."
@@ -26323,7 +21288,6 @@ 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:1062
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for unstaging."
@@ -26331,8 +21295,6 @@ 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: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."
@@ -26340,8 +21302,6 @@ 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: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."
@@ -26349,12 +21309,10 @@ 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: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:1121
 #, perl-format
 msgid ""
 "---\n"
@@ -26367,12 +21325,10 @@ 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: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
 msgid ""
 "y - stage this hunk\n"
 "n - do not stage this hunk\n"
@@ -26387,7 +21343,6 @@ 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
 msgid ""
 "y - stash this hunk\n"
 "n - do not stash this hunk\n"
@@ -26401,7 +21356,6 @@ 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
 msgid ""
 "y - unstage this hunk\n"
 "n - do not unstage this hunk\n"
@@ -26417,7 +21371,6 @@ 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
 msgid ""
 "y - apply this hunk to index\n"
 "n - do not apply this hunk to index\n"
@@ -26431,7 +21384,6 @@ 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
 msgid ""
 "y - discard this hunk from worktree\n"
 "n - do not discard this hunk from worktree\n"
@@ -26445,7 +21397,6 @@ 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
 msgid ""
 "y - discard this hunk from index and worktree\n"
 "n - do not discard this hunk from index and worktree\n"
@@ -26459,7 +21410,6 @@ 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
 msgid ""
 "y - apply this hunk to index and worktree\n"
 "n - do not apply this hunk to index and worktree\n"
@@ -26473,7 +21423,6 @@ 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
 msgid ""
 "y - apply this hunk to worktree\n"
 "n - do not apply this hunk to worktree\n"
@@ -26487,7 +21436,6 @@ 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
 msgid ""
 "g - select a hunk to go to\n"
 "/ - search for a hunk matching the given regex\n"
@@ -26509,88 +21457,70 @@ msgstr ""
 "e - sửa bằng tay khúc hiện hành\n"
 "? - in trợ giúp\n"
 
-#: git-add--interactive.perl:1347
 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
 #, 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
 #, 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
 #, 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
 #, 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
 #, 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
 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
 #, perl-format
 msgid "Invalid number: '%s'\n"
 msgstr "Số không hợp lệ: “%s”\n"
 
-#: git-add--interactive.perl:1624
 #, 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
 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
 #, 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
 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
 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
 msgid "No next hunk\n"
 msgstr "Không có khúc kế tiếp\n"
 
-#: git-add--interactive.perl:1732
 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
 #, 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
 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
 msgid ""
 "status        - show paths with changes\n"
 "update        - add working tree state to the staged set of changes\n"
@@ -26610,56 +21540,42 @@ 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:1842
-#: git-add--interactive.perl:1845 git-add--interactive.perl:1852
-#: git-add--interactive.perl:1855 git-add--interactive.perl:1862
-#: git-add--interactive.perl:1866 git-add--interactive.perl:1872
 msgid "missing --"
 msgstr "thiếu --"
 
-#: git-add--interactive.perl:1868
 #, perl-format
 msgid "unknown --patch mode: %s"
 msgstr "không hiểu chế độ --patch: %s"
 
-#: git-add--interactive.perl:1874 git-add--interactive.perl:1880
 #, perl-format
 msgid "invalid argument %s, expecting --"
 msgstr "đối số không hợp lệ %s, cần --"
 
-#: git-send-email.perl:159
 msgid "local zone differs from GMT by a non-minute interval\n"
 msgstr "múi giờ nội bộ khác biệt với GMT bởi khoảng thời gian không-phút\n"
 
-#: git-send-email.perl:166 git-send-email.perl:172
 msgid "local time offset greater than or equal to 24 hours\n"
 msgstr "khoảng bù thời gian nội bộ lớn hơn hoặc bằng 24 giờ\n"
 
-#: git-send-email.perl:244
 #, perl-format
 msgid "fatal: command '%s' died with exit code %d"
 msgstr "lỗi nghiêm trọng: lệnh “%s” chết với mã thoát %d"
 
-#: git-send-email.perl:257
 msgid "the editor exited uncleanly, aborting everything"
 msgstr "trình soạn thảo thoát không sạch sẽ, bãi bỏ mọi thứ"
 
-#: git-send-email.perl:346
 #, perl-format
 msgid ""
 "'%s' contains an intermediate version of the email you were composing.\n"
 msgstr "“%s” có chưa một phiên bản trung gian của thư bạn đã soạn.\n"
 
-#: git-send-email.perl:351
 #, perl-format
 msgid "'%s.final' contains the composed email.\n"
 msgstr "“%s.final” chứa thư điện tử đã soạn thảo.\n"
 
-#: git-send-email.perl:484
 msgid "--dump-aliases incompatible with other options\n"
 msgstr "--dump-aliases xung khắc với các tùy chọn khác\n"
 
-#: git-send-email.perl:561
 msgid ""
 "fatal: found configuration options for 'sendmail'\n"
 "git-send-email is configured with the sendemail.* options - note the 'e'.\n"
@@ -26669,11 +21585,9 @@ msgstr ""
 "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:566 git-send-email.perl:782
 msgid "Cannot run git format-patch from outside a repository\n"
 msgstr "Không thể chạy git format-patch ở ngoài một kho chứa\n"
 
-#: git-send-email.perl:569
 msgid ""
 "`batch-size` and `relogin` must be specified together (via command-line or "
 "configuration option)\n"
@@ -26681,37 +21595,30 @@ msgstr ""
 "“batch-size” và “relogin” phải được chỉ định cùng với nhau (thông qua dòng "
 "lệnh hoặc tùy chọn cấu hình)\n"
 
-#: git-send-email.perl:582
 #, perl-format
 msgid "Unknown --suppress-cc field: '%s'\n"
 msgstr "Không hiểu trường --suppress-cc: “%s”\n"
 
-#: git-send-email.perl:613
 #, perl-format
 msgid "Unknown --confirm setting: '%s'\n"
 msgstr "Không hiểu cài đặt --confirm: “%s”\n"
 
-#: git-send-email.perl:653
 #, perl-format
 msgid "warning: sendmail alias with quotes is not supported: %s\n"
 msgstr "cảnh báo: bí danh sendmail với dấu trích dẫn không được hỗ trợ: %s\n"
 
-#: git-send-email.perl:655
 #, perl-format
 msgid "warning: `:include:` not supported: %s\n"
 msgstr "cảnh báo: “:include:“ không được hỗ trợ: %s\n"
 
-#: git-send-email.perl:657
 #, perl-format
 msgid "warning: `/file` or `|pipe` redirection not supported: %s\n"
 msgstr "cảnh báo: chuyển hướng “/file“ hay “|pipe“ không được hỗ trợ: %s\n"
 
-#: git-send-email.perl:662
 #, perl-format
 msgid "warning: sendmail line is not recognized: %s\n"
 msgstr "cảnh báo: dòng sendmail không nhận ra được: %s\n"
 
-#: git-send-email.perl:747
 #, perl-format
 msgid ""
 "File '%s' exists but it could also be the range of commits\n"
@@ -26726,12 +21633,10 @@ msgstr ""
 "    * Nói \"./%s\" nếu ý bạn là một tập tin; hoặc\n"
 "    * Đưa ra tùy chọn --format-patch nếu ý bạn là chuẩn bị.\n"
 
-#: git-send-email.perl:768
 #, perl-format
 msgid "Failed to opendir %s: %s"
 msgstr "Gặp lỗi khi mở thư mục “%s”: %s"
 
-#: git-send-email.perl:803
 msgid ""
 "\n"
 "No patch files specified!\n"
@@ -26741,17 +21646,14 @@ msgstr ""
 "Chưa chỉ định các tập tin miếng vá!\n"
 "\n"
 
-#: git-send-email.perl:816
 #, perl-format
 msgid "No subject line in %s?"
 msgstr "Không có dòng chủ đề trong %s?"
 
-#: git-send-email.perl:827
 #, perl-format
 msgid "Failed to open for writing %s: %s"
 msgstr "Gặp lỗi khi mở “%s” để ghi: %s"
 
-#: git-send-email.perl:838
 msgid ""
 "Lines beginning in \"GIT:\" will be removed.\n"
 "Consider including an overall diffstat or table of contents\n"
@@ -26765,27 +21667,22 @@ msgstr ""
 "\n"
 "Xóa nội dung phần thân nếu bạn không muốn gửi tóm tắt.\n"
 
-#: git-send-email.perl:862
 #, perl-format
 msgid "Failed to open %s: %s"
 msgstr "Gặp lỗi khi mở “%s”: %s"
 
-#: git-send-email.perl:879
 #, perl-format
 msgid "Failed to open %s.final: %s"
 msgstr "Gặp lỗi khi mở %s.final: %s"
 
-#: git-send-email.perl:922
 msgid "Summary email is empty, skipping it\n"
 msgstr "Thư tổng thể là trống rỗng, nên bỏ qua nó\n"
 
 #. TRANSLATORS: please keep [y/N] as is.
-#: git-send-email.perl:971
 #, perl-format
 msgid "Are you sure you want to use <%s> [y/N]? "
 msgstr "Bạn có chắc muốn dùng <%s> [y/N]? "
 
-#: git-send-email.perl:1026
 msgid ""
 "The following files are 8bit, but do not declare a Content-Transfer-"
 "Encoding.\n"
@@ -26793,11 +21690,9 @@ msgstr ""
 "Các trường sau đây là 8bit, nhưng không khai báo một Content-Transfer-"
 "Encoding.\n"
 
-#: git-send-email.perl:1031
 msgid "Which 8bit encoding should I declare [UTF-8]? "
 msgstr "Bảng mã 8bit nào tôi nên khai báo [UTF-8]? "
 
-#: git-send-email.perl:1039
 #, perl-format
 msgid ""
 "Refusing to send because the patch\n"
@@ -26810,20 +21705,16 @@ msgstr ""
 "có chủ đề ở dạng mẫu “*** SUBJECT HERE ***”. Dùng --force nếu bạn thực sự "
 "muốn gửi.\n"
 
-#: git-send-email.perl:1058
 msgid "To whom should the emails be sent (if anyone)?"
 msgstr "Tới người mà thư được gửi (nếu có)?"
 
-#: git-send-email.perl:1076
 #, perl-format
 msgid "fatal: alias '%s' expands to itself\n"
 msgstr "nghiêm trọng: bí danh “%s” được khai triển thành chính nó\n"
 
-#: git-send-email.perl:1088
 msgid "Message-ID to be used as In-Reply-To for the first email (if any)? "
 msgstr "Message-ID được dùng như là In-Reply-To cho thư đầu tiên (nếu có)? "
 
-#: git-send-email.perl:1150 git-send-email.perl:1158
 #, perl-format
 msgid "error: unable to extract a valid address from: %s\n"
 msgstr "lỗi: không thể rút trích một địa chỉ hợp lệ từ: %s\n"
@@ -26831,16 +21722,13 @@ msgstr "lỗi: không thể rút trích một địa chỉ hợp lệ từ: %s\n
 #. TRANSLATORS: Make sure to include [q] [d] [e] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-send-email.perl:1162
 msgid "What to do with this address? ([q]uit|[d]rop|[e]dit): "
 msgstr "Làm gì với địa chỉ này? (thoát[q]|xóa[d]|sửa[e]): "
 
-#: git-send-email.perl:1482
 #, perl-format
 msgid "CA path \"%s\" does not exist"
 msgstr "Đường dẫn CA “%s” không tồn tại"
 
-#: git-send-email.perl:1565
 msgid ""
 "    The Cc list above has been expanded by additional\n"
 "    addresses found in the patch commit message. By default\n"
@@ -26867,114 +21755,90 @@ msgstr ""
 #. TRANSLATORS: Make sure to include [y] [n] [e] [q] [a] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-send-email.perl:1580
 msgid "Send this email? ([y]es|[n]o|[e]dit|[q]uit|[a]ll): "
 msgstr "Gửi thư này chứ? ([y]có|[n]không|[e]sửa|[q]thoát|[a]tất): "
 
-#: git-send-email.perl:1583
 msgid "Send this email reply required"
 msgstr "Gửi thư này trả lời yêu cầu"
 
-#: git-send-email.perl:1617
 msgid "The required SMTP server is not properly defined."
 msgstr "Máy phục vụ SMTP chưa được định nghĩa một cách thích hợp."
 
-#: git-send-email.perl:1664
 #, perl-format
 msgid "Server does not support STARTTLS! %s"
 msgstr "Máy chủ không hỗ trợ STARTTLS! %s"
 
-#: git-send-email.perl:1669 git-send-email.perl:1673
 #, perl-format
 msgid "STARTTLS failed! %s"
 msgstr "STARTTLS gặp lỗi! %s"
 
-#: git-send-email.perl:1682
 msgid "Unable to initialize SMTP properly. Check config and use --smtp-debug."
 msgstr ""
 "Không thể khởi tạo SMTP một cách đúng đắn. Kiểm tra cấu hình và dùng --smtp-"
 "debug."
 
-#: git-send-email.perl:1700
 #, perl-format
 msgid "Failed to send %s\n"
 msgstr "Gặp lỗi khi gửi %s\n"
 
-#: git-send-email.perl:1703
 #, perl-format
 msgid "Dry-Sent %s\n"
 msgstr "Thử gửi %s\n"
 
-#: git-send-email.perl:1703
 #, perl-format
 msgid "Sent %s\n"
 msgstr "Gửi %s\n"
 
-#: git-send-email.perl:1705
 msgid "Dry-OK. Log says:\n"
 msgstr "Dry-OK. Nhật ký nói rằng:\n"
 
-#: git-send-email.perl:1705
 msgid "OK. Log says:\n"
 msgstr "OK. Nhật ký nói rằng:\n"
 
-#: git-send-email.perl:1724
 msgid "Result: "
 msgstr "Kết quả: "
 
-#: git-send-email.perl:1727
 msgid "Result: OK\n"
 msgstr "Kết quả: Tốt\n"
 
-#: git-send-email.perl:1744
 #, perl-format
 msgid "can't open file %s"
 msgstr "không thể mở tập tin “%s”"
 
-#: git-send-email.perl:1792 git-send-email.perl:1812
 #, perl-format
 msgid "(mbox) Adding cc: %s from line '%s'\n"
 msgstr "(mbox) Thêm cc: %s từ dòng “%s”\n"
 
-#: git-send-email.perl:1798
 #, perl-format
 msgid "(mbox) Adding to: %s from line '%s'\n"
 msgstr "(mbox) Đang thêm to: %s từ dòng “%s”\n"
 
-#: git-send-email.perl:1855
 #, perl-format
 msgid "(non-mbox) Adding cc: %s from line '%s'\n"
 msgstr "(non-mbox) Thêm cc: %s từ dòng “%s”\n"
 
-#: git-send-email.perl:1890
 #, perl-format
 msgid "(body) Adding cc: %s from line '%s'\n"
 msgstr "(body) Thêm cc: %s từ dòng “%s”\n"
 
-#: git-send-email.perl:2009
 #, perl-format
 msgid "(%s) Could not execute '%s'"
 msgstr "(%s) Không thể thực thi “%s”"
 
-#: git-send-email.perl:2016
 #, perl-format
 msgid "(%s) Adding %s: %s from: '%s'\n"
 msgstr "(%s) Đang thêm %s: %s từ: “%s”\n"
 
-#: git-send-email.perl:2020
 #, perl-format
 msgid "(%s) failed to close pipe to '%s'"
 msgstr "(%s) gặp lỗi khi đóng đường ống đến “%s”"
 
-#: git-send-email.perl:2050
 msgid "cannot send message as 7bit"
 msgstr "không thể lấy gửi thư dạng 7 bít"
 
-#: git-send-email.perl:2058
 msgid "invalid transfer encoding"
 msgstr "bảng mã truyền không hợp lệ"
 
-#: git-send-email.perl:2100
 #, perl-format
 msgid ""
 "fatal: %s: rejected by %s hook\n"
@@ -26985,12 +21849,10 @@ msgstr ""
 "%s\n"
 "cảnh báo: không có miếng vá nào được gửi đi\n"
 
-#: git-send-email.perl:2110 git-send-email.perl:2163 git-send-email.perl:2173
 #, perl-format
 msgid "unable to open %s: %s\n"
 msgstr "không thể mở %s: %s\n"
 
-#: git-send-email.perl:2113
 #, perl-format
 msgid ""
 "fatal: %s:%d is longer than 998 characters\n"
@@ -26999,17 +21861,41 @@ msgstr ""
 "nghiêm trọng: %s: %d là dài hơn 998 ký tự\n"
 "cảnh báo: không có miếng vá nào được gửi đi\n"
 
-#: git-send-email.perl:2131
 #, perl-format
 msgid "Skipping %s with backup suffix '%s'.\n"
 msgstr "Bỏ qua %s với hậu tố sao lưu dự phòng “%s”.\n"
 
 #. TRANSLATORS: please keep "[y|N]" as is.
-#: git-send-email.perl:2135
 #, perl-format
 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 "--preserve-merges was replaced by --rebase-merges"
+#~ msgstr "--preserve-merges đã bị thay thế bằng --rebase-merges"
+
+#, c-format
+#~ msgid ""
+#~ "CRLF will be replaced by LF in %s.\n"
+#~ "The file will have its original line endings in your working directory"
+#~ msgstr ""
+#~ "CRLF sẽ bị thay thế bằng LF trong %s.\n"
+#~ "Tập tin sẽ có kiểu xuống dòng như bản gốc trong thư mục làm việc của bạn"
+
+#, c-format
+#~ msgid ""
+#~ "LF will be replaced by CRLF in %s.\n"
+#~ "The file will have its original line endings in your working directory"
+#~ msgstr ""
+#~ "LF sẽ bị thay thế bằng CRLF trong %s.\n"
+#~ "Tập tin sẽ có kiểu xuống dòng như bản gốc trong thư mục làm việc của bạn"
+
+#, c-format
+#~ msgid "error reading section header '%s'"
+#~ msgstr "gặp lỗi khi đọc phần đầu của đoạn %s"
+
+#~ msgid "load_reverse_index: could not open pack"
+#~ msgstr "load_reverse_index: không thể mở gói"
+
 #, perl-format
 #~ msgid "fatal: %s: rejected by %s hook\n"
 #~ msgstr "lỗi nghiêm trọng: %s: bị từ chối bởi móc %s\n"