Documentation/git-config: use bulleted list for exit codes
[gitweb.git] / po / vi.po
index 3231595a3178a594b91d341e2d7bfa7e1e8ebe01..f3fee996404638f45d1870fe6faca01683aa4ec2 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
@@ -6,10 +6,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: git v2.6.0-rc2\n"
+"Project-Id-Version: git v2.7.0-rc0\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2015-09-15 06:45+0800\n"
-"PO-Revision-Date: 2015-09-15 07:15+0700\n"
+"POT-Creation-Date: 2015-12-11 23:36+0800\n"
+"PO-Revision-Date: 2015-12-12 14:31+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"
@@ -36,13 +36,13 @@ msgstr ""
 "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:101 builtin/merge.c:1227
+#: advice.c:101 builtin/merge.c:1225
 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:103
-msgid "Please, commit your changes before you can merge."
-msgstr "Vui lòng chuyển giao các thay đổi trước khi bạn có thể hòa trộn."
+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:104
 msgid "Exiting because of unfinished merge."
@@ -67,76 +67,76 @@ msgstr ""
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <kho> [--exec <lệnh>] --list"
 
-#: archive.c:343 builtin/add.c:137 builtin/add.c:426 builtin/rm.c:327
+#: archive.c:344 builtin/add.c:137 builtin/add.c:420 builtin/rm.c:327
 #, 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:428
+#: archive.c:429
 msgid "fmt"
 msgstr "định_dạng"
 
-#: archive.c:428
+#: archive.c:429
 msgid "archive format"
 msgstr "định dạng lưu trữ"
 
-#: archive.c:429 builtin/log.c:1229
+#: archive.c:430 builtin/log.c:1228
 msgid "prefix"
 msgstr "tiền_tố"
 
-#: archive.c:430
+#: archive.c:431
 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:431 builtin/archive.c:88 builtin/blame.c:2516 builtin/blame.c:2517
+#: archive.c:432 builtin/archive.c:88 builtin/blame.c:2535 builtin/blame.c:2536
 #: builtin/config.c:58 builtin/fast-export.c:987 builtin/fast-export.c:989
-#: builtin/grep.c:712 builtin/hash-object.c:99 builtin/ls-files.c:446
+#: builtin/grep.c:707 builtin/hash-object.c:99 builtin/ls-files.c:446
 #: builtin/ls-files.c:449 builtin/notes.c:395 builtin/notes.c:558
 #: builtin/read-tree.c:109 parse-options.h:153
 msgid "file"
 msgstr "tập_tin"
 
-#: archive.c:432 builtin/archive.c:89
+#: archive.c:433 builtin/archive.c:89
 msgid "write the archive to this file"
 msgstr "ghi kho lưu vào tập tin này"
 
-#: archive.c:434
+#: archive.c:435
 msgid "read .gitattributes in working directory"
 msgstr "đọc .gitattributes trong thư mục làm việc"
 
-#: archive.c:435
+#: archive.c:436
 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:436
+#: archive.c:437
 msgid "store only"
 msgstr "chỉ lưu (không nén)"
 
-#: archive.c:437
+#: archive.c:438
 msgid "compress faster"
 msgstr "nén nhanh hơn"
 
-#: archive.c:445
+#: archive.c:446
 msgid "compress better"
 msgstr "nén nhỏ hơn"
 
-#: archive.c:448
+#: archive.c:449
 msgid "list supported archive formats"
 msgstr "liệt kê các kiểu nén được hỗ trợ"
 
-#: archive.c:450 builtin/archive.c:90 builtin/clone.c:77
+#: archive.c:451 builtin/archive.c:90 builtin/clone.c:77
 msgid "repo"
 msgstr "kho"
 
-#: archive.c:451 builtin/archive.c:91
+#: archive.c:452 builtin/archive.c:91
 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:452 builtin/archive.c:92 builtin/notes.c:479
+#: archive.c:453 builtin/archive.c:92 builtin/notes.c:479
 msgid "command"
 msgstr "lệnh"
 
-#: archive.c:453 builtin/archive.c:93
+#: archive.c:454 builtin/archive.c:93
 msgid "path to the remote git-upload-archive command"
 msgstr "đường dẫn đến lệnh git-upload-pack trên máy chủ"
 
@@ -148,84 +148,84 @@ 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."
 
-#: branch.c:60
+#: branch.c:61
 #, c-format
 msgid "Not setting branch %s as its own upstream."
 msgstr "Chưa cài đặt nhánh %s như là thượng nguồn của nó."
 
-#: branch.c:83
+#: branch.c:84
 #, c-format
 msgid "Branch %s set up to track remote branch %s from %s by rebasing."
 msgstr "Nhánh %s cài đặt để theo dõi nhánh máy chủ %s từ %s bằng cách rebase."
 
-#: branch.c:84
+#: branch.c:85
 #, c-format
 msgid "Branch %s set up to track remote branch %s from %s."
 msgstr "Nhánh %s cài đặt để theo dõi nhánh máy chủ %s từ %s."
 
-#: branch.c:88
+#: branch.c:89
 #, c-format
 msgid "Branch %s set up to track local branch %s by rebasing."
 msgstr "Nhánh %s cài đặt để theo dõi nhánh nội bộ %s bằng cách rebase."
 
-#: branch.c:89
+#: branch.c:90
 #, c-format
 msgid "Branch %s set up to track local branch %s."
 msgstr "Nhánh %s cài đặt để theo dõi nhánh nội bộ %s."
 
-#: branch.c:94
+#: branch.c:95
 #, c-format
 msgid "Branch %s set up to track remote ref %s by rebasing."
 msgstr "Nhánh %s cài đặt để theo dõi nhánh máy chủ %s bằng cách rebase."
 
-#: branch.c:95
+#: branch.c:96
 #, c-format
 msgid "Branch %s set up to track remote ref %s."
 msgstr "Nhánh %s cài đặt để theo dõi tham chiếu máy chủ %s."
 
-#: branch.c:99
+#: branch.c:100
 #, c-format
 msgid "Branch %s set up to track local ref %s by rebasing."
 msgstr ""
 "Nhánh %s cài đặt để theo dõi vết tham chiếu nội bộ %s bằng cách rebase."
 
-#: branch.c:100
+#: branch.c:101
 #, c-format
 msgid "Branch %s set up to track local ref %s."
 msgstr "Nhánh %s cài đặt để theo dõi tham chiếu nội bộ %s."
 
-#: branch.c:133
+#: branch.c:134
 #, 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:162
+#: branch.c:163
 #, 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:167
+#: branch.c:168
 #, c-format
 msgid "A branch named '%s' already exists."
 msgstr "Đã có nhánh mang tên “%s”."
 
-#: branch.c:175
+#: branch.c:176
 msgid "Cannot force update the current branch."
 msgstr "Không thể ép buộc cập nhật nhánh hiện hành."
 
-#: branch.c:195
+#: branch.c:196
 #, c-format
 msgid "Cannot setup 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:197
+#: branch.c:198
 #, 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:199
+#: branch.c:200
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -245,22 +245,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:243
+#: branch.c:244
 #, c-format
 msgid "Not a valid object name: '%s'."
 msgstr "Không phải tên đối tượng hợp lệ: “%s”."
 
-#: branch.c:263
+#: branch.c:264
 #, c-format
 msgid "Ambiguous object name: '%s'."
 msgstr "Tên đối tượng chưa rõ ràng: “%s”."
 
-#: branch.c:268
+#: branch.c:269
 #, c-format
 msgid "Not a valid branch point: '%s'."
 msgstr "Nhánh không hợp lệ: “%s”."
 
-#: branch.c:399
+#: branch.c:322
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr "“%s” đã sẵn được lấy ra tại “%s”"
@@ -275,7 +275,7 @@ msgstr "“%s” không giống như tập tin v2 bundle (định dạng dump c
 msgid "unrecognized header: %s%s (%d)"
 msgstr "phần đầu không được thừa nhận: %s%s (%d)"
 
-#: bundle.c:87 builtin/commit.c:765
+#: bundle.c:87 builtin/commit.c:766
 #, c-format
 msgid "could not open '%s'"
 msgstr "không thể mở “%s”"
@@ -284,9 +284,9 @@ msgstr "không thể mở “%s”"
 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:"
 
-#: bundle.c:163 sequencer.c:636 sequencer.c:1083 builtin/blame.c:2708
-#: builtin/branch.c:652 builtin/commit.c:1044 builtin/log.c:334
-#: builtin/log.c:850 builtin/log.c:1457 builtin/log.c:1690 builtin/merge.c:358
+#: bundle.c:163 ref-filter.c:1372 sequencer.c:636 sequencer.c:1083
+#: builtin/blame.c:2734 builtin/commit.c:1045 builtin/log.c:334
+#: builtin/log.c:849 builtin/log.c:1456 builtin/log.c:1689 builtin/merge.c:358
 #: builtin/shortlog.c:158
 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"
@@ -295,7 +295,7 @@ msgstr "cài đặt việc di chuyển qua các điểm xét duyệt gặp lỗi
 #, c-format
 msgid "The bundle contains this ref:"
 msgid_plural "The bundle contains these %d refs:"
-msgstr[0] "Bundle chứa %d tham chiếu:"
+msgstr[0] "Bó dữ liệu chứa %d tham chiếu:"
 
 #: bundle.c:192
 msgid "The bundle records a complete history."
@@ -324,14 +324,14 @@ msgstr "rev-list đã chết"
 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"
 
-#: bundle.c:443 builtin/log.c:157 builtin/log.c:1367 builtin/shortlog.c:261
+#: bundle.c:443 builtin/log.c:157 builtin/log.c:1366 builtin/shortlog.c:261
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "đối số không được thừa nhận: %s"
 
 #: bundle.c:449
 msgid "Refusing to create empty bundle."
-msgstr "Từ chối tạo một bundle trống rỗng."
+msgstr "Từ chối tạo một bó dữ liệu trống rỗng."
 
 #: bundle.c:459
 #, c-format
@@ -342,13 +342,13 @@ msgstr "không thể tạo “%s”"
 msgid "index-pack died"
 msgstr "mục lục gói đã chết"
 
-#: color.c:260
+#: color.c:275
 #, c-format
 msgid "invalid color value: %.*s"
 msgstr "giá trị màu không hợp lệ: %.*s"
 
-#: commit.c:40 builtin/am.c:451 builtin/am.c:487 builtin/am.c:1516
-#: builtin/am.c:2128
+#: commit.c:40 builtin/am.c:452 builtin/am.c:488 builtin/am.c:1520
+#: builtin/am.c:2149
 #, c-format
 msgid "could not parse %s"
 msgstr "không thể phân tích cú pháp %s"
@@ -497,22 +497,22 @@ msgstr "gặp lỗi khi đọc tập-tin-thứ-tự “%s”"
 msgid "Performing inexact rename detection"
 msgstr "Đang thực hiện dò tìm đổi tên không chính xác"
 
-#: diff.c:116
+#: diff.c:115
 #, 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"
 
-#: diff.c:121
+#: diff.c:120
 #, c-format
 msgid "  Unknown dirstat parameter '%s'\n"
 msgstr "  Không hiểu đối số dirstat “%s”\n"
 
-#: diff.c:216
+#: diff.c:215
 #, 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”"
 
-#: diff.c:268
+#: diff.c:267
 #, c-format
 msgid ""
 "Found errors in 'diff.dirstat' config variable:\n"
@@ -521,16 +521,16 @@ msgstr ""
 "Tìm thấy các lỗi trong biến cấu hình “diff.dirstat”:\n"
 "%s"
 
-#: diff.c:2998
+#: diff.c:3000
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr "phần mềm diff ở bên ngoài đã chết, dừng tại %s"
 
-#: diff.c:3394
+#: diff.c:3396
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow cần chính xác một đặc tả đường dẫn"
 
-#: diff.c:3557
+#: diff.c:3559
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -539,16 +539,16 @@ msgstr ""
 "Gặp lỗi khi phân tích đối số tùy chọn --dirstat/-X:\n"
 "%s"
 
-#: diff.c:3571
+#: diff.c:3573
 #, 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”"
 
-#: dir.c:1853
+#: dir.c:1915
 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"
 
-#: dir.c:1936
+#: dir.c:1998
 msgid "Untracked cache is disabled on this system."
 msgstr "Bộ nhớ tạm không theo vết bị tắt trên hệ thống này."
 
@@ -654,8 +654,8 @@ msgstr "%s: %s - %s"
 msgid "failed to read the cache"
 msgstr "gặp lỗi khi đọc bộ nhớ đệm"
 
-#: merge.c:94 builtin/am.c:2001 builtin/am.c:2036 builtin/checkout.c:375
-#: builtin/checkout.c:586 builtin/clone.c:715
+#: merge.c:94 builtin/am.c:2022 builtin/am.c:2057 builtin/checkout.c:376
+#: builtin/checkout.c:587 builtin/clone.c:722
 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"
 
@@ -673,64 +673,64 @@ msgstr "addinfo_cache gặp lỗi đối với đường dẫn “%s”"
 msgid "error building trees"
 msgstr "gặp lỗi khi xây dựng cây"
 
-#: merge-recursive.c:687
+#: merge-recursive.c:686
 #, 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:698
+#: merge-recursive.c:697
 #, 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:712 merge-recursive.c:733
+#: merge-recursive.c:711 merge-recursive.c:732
 msgid ": perhaps a D/F conflict?"
 msgstr ": có lẽ là một xung đột D/F?"
 
-#: merge-recursive.c:723
+#: merge-recursive.c:722
 #, 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”"
 
-#: merge-recursive.c:763
+#: merge-recursive.c:762
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "không thể đọc đối tượng %s “%s”"
 
-#: merge-recursive.c:765
+#: merge-recursive.c:764
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "đối tượng blob được mong đợi cho %s “%s”"
 
-#: merge-recursive.c:788 builtin/clone.c:364
+#: merge-recursive.c:787 builtin/clone.c:369
 #, c-format
 msgid "failed to open '%s'"
 msgstr "gặp lỗi khi mở “%s”"
 
-#: merge-recursive.c:796
+#: merge-recursive.c:795
 #, c-format
 msgid "failed to symlink '%s'"
 msgstr "gặp lỗi khi tạo liên kết mềm (symlink) “%s”"
 
-#: merge-recursive.c:799
+#: merge-recursive.c:798
 #, 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”"
 
-#: merge-recursive.c:937
+#: merge-recursive.c:936
 msgid "Failed to execute internal merge"
 msgstr "Gặp lỗi khi thực hiện trộn nội bộ"
 
-#: merge-recursive.c:941
+#: merge-recursive.c:940
 #, c-format
 msgid "Unable to add %s to database"
 msgstr "Không thể thêm %s vào cơ sở dữ liệu"
 
-#: merge-recursive.c:957
+#: merge-recursive.c:956
 msgid "unsupported object type in the tree"
 msgstr "kiểu đối tượng không được hỗ trợ trong cây (tree)"
 
-#: merge-recursive.c:1032 merge-recursive.c:1046
+#: merge-recursive.c:1031 merge-recursive.c:1045
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -739,7 +739,7 @@ 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)."
 
-#: merge-recursive.c:1038 merge-recursive.c:1051
+#: merge-recursive.c:1037 merge-recursive.c:1050
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -748,20 +748,20 @@ 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."
 
-#: merge-recursive.c:1092
+#: merge-recursive.c:1091
 msgid "rename"
 msgstr "đổi tên"
 
-#: merge-recursive.c:1092
+#: merge-recursive.c:1091
 msgid "renamed"
 msgstr "đã đổi tên"
 
-#: merge-recursive.c:1148
+#: merge-recursive.c:1147
 #, 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"
 
-#: merge-recursive.c:1170
+#: merge-recursive.c:1169
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -770,145 +770,145 @@ 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"
 
-#: merge-recursive.c:1175
+#: merge-recursive.c:1174
 msgid " (left unresolved)"
 msgstr " (cần giải quyết)"
 
-#: merge-recursive.c:1229
+#: merge-recursive.c:1228
 #, 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"
 
-#: merge-recursive.c:1259
+#: merge-recursive.c:1258
 #, c-format
 msgid "Renaming %s to %s and %s to %s instead"
 msgstr "Đang đổi tên %s thành %s thay vì %s thành %s"
 
-#: merge-recursive.c:1458
+#: merge-recursive.c:1457
 #, c-format
 msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s"
 msgstr ""
 "XUNG ĐỘT (đổi-tên/thêm): Đổi tên %s->%s trong %s. %s được thêm vào trong %s"
 
-#: merge-recursive.c:1468
+#: merge-recursive.c:1467
 #, c-format
 msgid "Adding merged %s"
 msgstr "Thêm hòa trộn %s"
 
-#: merge-recursive.c:1473 merge-recursive.c:1671
+#: merge-recursive.c:1472 merge-recursive.c:1674
 #, c-format
 msgid "Adding as %s instead"
 msgstr "Thay vào đó thêm vào %s"
 
-#: merge-recursive.c:1524
+#: merge-recursive.c:1523
 #, c-format
 msgid "cannot read object %s"
 msgstr "không thể đọc đối tượng %s"
 
-#: merge-recursive.c:1527
+#: merge-recursive.c:1526
 #, c-format
 msgid "object %s is not a blob"
 msgstr "đối tượng %s không phải là một blob"
 
-#: merge-recursive.c:1575
+#: merge-recursive.c:1578
 msgid "modify"
 msgstr "sửa đổi"
 
-#: merge-recursive.c:1575
+#: merge-recursive.c:1578
 msgid "modified"
 msgstr "đã sửa"
 
-#: merge-recursive.c:1585
+#: merge-recursive.c:1588
 msgid "content"
 msgstr "nội dung"
 
-#: merge-recursive.c:1592
+#: merge-recursive.c:1595
 msgid "add/add"
 msgstr "thêm/thêm"
 
-#: merge-recursive.c:1626
+#: merge-recursive.c:1629
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr "Đã bỏ qua %s (đã có sẵn lần hòa trộn này)"
 
-#: merge-recursive.c:1640
+#: merge-recursive.c:1643
 #, c-format
 msgid "Auto-merging %s"
 msgstr "Tự-động-hòa-trộn %s"
 
-#: merge-recursive.c:1644 git-submodule.sh:1150
+#: merge-recursive.c:1647 git-submodule.sh:1025
 msgid "submodule"
 msgstr "mô-đun-con"
 
-#: merge-recursive.c:1645
+#: merge-recursive.c:1648
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "XUNG ĐỘT (%s): Xung đột hòa trộn trong %s"
 
-#: merge-recursive.c:1731
+#: merge-recursive.c:1734
 #, c-format
 msgid "Removing %s"
 msgstr "Đang xóa %s"
 
-#: merge-recursive.c:1756
+#: merge-recursive.c:1759
 msgid "file/directory"
 msgstr "tập-tin/thư-mục"
 
-#: merge-recursive.c:1762
+#: merge-recursive.c:1765
 msgid "directory/file"
 msgstr "thư-mục/tập-tin"
 
-#: merge-recursive.c:1767
+#: merge-recursive.c:1770
 #, 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"
 
-#: merge-recursive.c:1777
+#: merge-recursive.c:1780
 #, c-format
 msgid "Adding %s"
 msgstr "Thêm \"%s\""
 
-#: merge-recursive.c:1794
+#: merge-recursive.c:1797
 msgid "Fatal merge failure, shouldn't happen."
 msgstr "Việc hòa trộn hỏng nghiêm trọng, không nên để xảy ra."
 
-#: merge-recursive.c:1813
+#: merge-recursive.c:1816
 msgid "Already up-to-date!"
 msgstr "Đã cập nhật rồi!"
 
-#: merge-recursive.c:1822
+#: merge-recursive.c:1825
 #, c-format
 msgid "merging of trees %s and %s failed"
-msgstr "hòa trá»\99n cây (tree) %s và %s gặp lỗi"
+msgstr "hòa trá»\99n các cây %s và %s gặp lỗi"
 
-#: merge-recursive.c:1852
+#: merge-recursive.c:1855
 #, c-format
 msgid "Unprocessed path??? %s"
 msgstr "Đường dẫn chưa được xử lý??? %s"
 
-#: merge-recursive.c:1900
+#: merge-recursive.c:1903
 msgid "Merging:"
 msgstr "Đang trộn:"
 
-#: merge-recursive.c:1913
+#: merge-recursive.c:1916
 #, c-format
 msgid "found %u common ancestor:"
 msgid_plural "found %u common ancestors:"
 msgstr[0] "tìm thấy %u tổ tiên chung:"
 
-#: merge-recursive.c:1950
+#: merge-recursive.c:1953
 msgid "merge returned no commit"
 msgstr "hòa trộn không trả về lần chuyển giao nào"
 
-#: merge-recursive.c:2007
+#: merge-recursive.c:2010
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Không thể phân tích đối tượng “%s”"
 
-#: merge-recursive.c:2018 builtin/merge.c:645
+#: merge-recursive.c:2021 builtin/merge.c:645
 msgid "Unable to write index."
 msgstr "Không thể ghi bảng mục lục"
 
@@ -940,31 +940,41 @@ msgstr "Giá trị %s sai: “%s”"
 msgid "unable to parse object: %s"
 msgstr "không thể phân tích đối tượng: “%s”"
 
-#: parse-options.c:563
+#: parse-options.c:570
 msgid "..."
 msgstr "…"
 
-#: parse-options.c:581
+#: parse-options.c:588
 #, c-format
 msgid "usage: %s"
 msgstr "cách dùng: %s"
 
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation
-#: parse-options.c:585
+#: parse-options.c:592
 #, c-format
 msgid "   or: %s"
 msgstr "     hoặc: %s"
 
-#: parse-options.c:588
+#: parse-options.c:595
 #, c-format
 msgid "    %s"
 msgstr "    %s"
 
-#: parse-options.c:622
+#: parse-options.c:629
 msgid "-NUM"
 msgstr "-SỐ"
 
+#: parse-options-cb.c:108
+#, c-format
+msgid "malformed object name '%s'"
+msgstr "tên đối tượng dị hình “%s”"
+
+#: path.c:752
+#, c-format
+msgid "Could not make %s writable by group"
+msgstr "Không thể làm %s được ghi bởi nhóm"
+
 #: pathspec.c:133
 msgid "global 'glob' and 'noglob' pathspec settings are incompatible"
 msgstr ""
@@ -1034,11 +1044,11 @@ msgstr ""
 msgid "unable to parse --pretty format"
 msgstr "không thể phân tích định dạng --pretty"
 
-#: progress.c:236
+#: progress.c:235
 msgid "done"
 msgstr "xong"
 
-#: read-cache.c:1296
+#: read-cache.c:1281
 #, c-format
 msgid ""
 "index.version set, but the value is invalid.\n"
@@ -1047,7 +1057,7 @@ 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"
 
-#: read-cache.c:1306
+#: read-cache.c:1291
 #, c-format
 msgid ""
 "GIT_INDEX_VERSION set, but the value is invalid.\n"
@@ -1056,119 +1066,164 @@ 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"
 
-#: refs.c:2941 builtin/merge.c:760 builtin/merge.c:871 builtin/merge.c:973
+#: refs.c:543 builtin/merge.c:760 builtin/merge.c:871 builtin/merge.c:973
 #: builtin/merge.c:983
 #, c-format
 msgid "Could not open '%s' for writing"
 msgstr "Không thể mở “%s” để ghi"
 
-#: refs.c:3001
+#: refs/files-backend.c:2359
 #, c-format
 msgid "could not delete reference %s: %s"
 msgstr "không thể xóa bỏ tham chiếu %s: %s"
 
-#: refs.c:3004
+#: refs/files-backend.c:2362
 #, c-format
 msgid "could not delete references: %s"
 msgstr "không thể xóa bỏ tham chiếu: %s"
 
-#: refs.c:3013
+#: refs/files-backend.c:2371
 #, c-format
 msgid "could not remove reference %s"
 msgstr "không thể gỡ bỏ tham chiếu: %s"
 
-#: ref-filter.c:660
+#: ref-filter.c:245
+#, 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"
+
+#: ref-filter.c:704
+#, c-format
+msgid "positive value expected contents:lines=%s"
+msgstr "cần nội dung mang giá trị dương:lines=%s"
+
+#: ref-filter.c:833
+#, c-format
+msgid "expected format: %%(color:<color>)"
+msgstr "cần định dạng: %%(color:<color>)"
+
+#: ref-filter.c:835
 msgid "unable to parse format"
 msgstr "không thể phân tích định dạng"
 
-#: remote.c:792
+#: ref-filter.c:870
+#, c-format
+msgid "expected format: %%(align:<width>,<position>)"
+msgstr "cần định dạng: %%(align:<width>,<position>)"
+
+#: ref-filter.c:893
+#, c-format
+msgid "improper format entered align:%s"
+msgstr "định dạng không đúng chỗ căn chỉnh:%s"
+
+#: ref-filter.c:898
+#, 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)"
+
+#: ref-filter.c:1219
+#, c-format
+msgid "malformed object at '%s'"
+msgstr "đối tượng dị hình tại “%s”"
+
+#: ref-filter.c:1561
+#, c-format
+msgid "format: %%(end) atom missing"
+msgstr "định dạng: thiếu nguyên tử %%(end)"
+
+#: ref-filter.c:1615
+#, c-format
+msgid "malformed object name %s"
+msgstr "tên đối tượng dị hình %s"
+
+#: remote.c:756
 #, c-format
 msgid "Cannot fetch both %s and %s to %s"
 msgstr "Không thể lấy về cả %s và %s cho %s"
 
-#: remote.c:796
+#: remote.c:760
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr "%s thường theo dõi %s, không phải %s"
 
-#: remote.c:800
+#: remote.c:764
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr "%s theo dõi cả %s và %s"
 
-#: remote.c:808
+#: remote.c:772
 msgid "Internal error"
 msgstr "Lỗi nội bộ"
 
-#: remote.c:1723 remote.c:1766
+#: remote.c:1687 remote.c:1730
 msgid "HEAD does not point to a branch"
 msgstr "HEAD không chỉ đến một nhánh nào cả"
 
-#: remote.c:1732
+#: remote.c:1696
 #, c-format
 msgid "no such branch: '%s'"
 msgstr "không có nhánh nào như thế: “%s”"
 
-#: remote.c:1735
+#: remote.c:1699
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr "không có thượng nguồn được cấu hình cho nhánh “%s”"
 
-#: remote.c:1741
+#: remote.c:1705
 #, c-format
 msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr ""
 "nhánh thượng nguồn “%s” không được lưu lại như là một nhánh theo dõi máy chủ"
 
-#: remote.c:1756
+#: remote.c:1720
 #, c-format
 msgid "push destination '%s' on remote '%s' has no local tracking branch"
 msgstr "đẩy lên đích “%s” trên máy chủ “%s” không có nhánh theo dõi nội bộ"
 
-#: remote.c:1771
+#: remote.c:1735
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr "nhánh “%s” không có máy chủ để đẩy lên"
 
-#: remote.c:1782
+#: remote.c:1746
 #, c-format
 msgid "push refspecs for '%s' do not include '%s'"
 msgstr "đẩy refspecs cho “%s” không bao gồm “%s”"
 
-#: remote.c:1795
+#: remote.c:1759
 msgid "push has no destination (push.default is 'nothing')"
 msgstr "đẩy lên mà không có đích (push.default là “nothing”)"
 
-#: remote.c:1817
+#: remote.c:1781
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr "không thể phân giải đẩy “đơn giản” đến một đích đơn"
 
-#: remote.c:2124
+#: remote.c:2083
 #, c-format
 msgid "Your branch is based on '%s', but the upstream is gone.\n"
 msgstr ""
 "Nhánh của bạn dựa trên cơ sở là “%s”, nhưng trên thượng nguồn không còn.\n"
 
-#: remote.c:2128
+#: remote.c:2087
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr "   (dùng \" git branch --unset-upstream\" để sửa)\n"
 
-#: remote.c:2131
+#: remote.c:2090
 #, c-format
 msgid "Your branch is up-to-date with '%s'.\n"
 msgstr "Nhánh của bạn đã cập nhật với “%s”.\n"
 
-#: remote.c:2135
+#: remote.c:2094
 #, c-format
 msgid "Your branch is ahead of '%s' by %d commit.\n"
 msgid_plural "Your branch is ahead of '%s' by %d commits.\n"
 msgstr[0] "Nhánh của bạn đứng trước “%s” %d lần chuyển giao.\n"
 
-#: remote.c:2141
+#: remote.c:2100
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr "  (dùng \"git push\" để xuất bản các lần chuyển giao nội bộ của bạn)\n"
 
-#: remote.c:2144
+#: remote.c:2103
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -1177,11 +1232,11 @@ msgstr[0] ""
 "Nhánh của bạn đứng đằng sau “%s” %d lần chuyển giao, và có thể được chuyển-"
 "tiếp-nhanh.\n"
 
-#: remote.c:2152
+#: remote.c:2111
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr "  (dùng \"git pull\" để cập nhật nhánh nội bộ của bạn)\n"
 
-#: remote.c:2155
+#: remote.c:2114
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -1194,30 +1249,30 @@ msgstr[0] ""
 "và có %d và %d lần chuyển giao khác nhau cho từng cái,\n"
 "tương ứng với mỗi lần.\n"
 
-#: remote.c:2165
+#: remote.c:2124
 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"
 
-#: revision.c:2198
+#: revision.c:2191
 msgid "your current branch appears to be broken"
 msgstr "nhánh hiện tại của bạn có vẻ như bị hỏng"
 
-#: revision.c:2201
+#: revision.c:2194
 #, c-format
 msgid "your current branch '%s' does not have any commits yet"
 msgstr "nhánh hiện tại của bạn “%s” không có một lần chuyển giao nào cả"
 
-#: revision.c:2395
+#: revision.c:2388
 msgid "--first-parent is incompatible with --bisect"
 msgstr "--first-parent xung khắc với --bisect"
 
-#: run-command.c:83
+#: run-command.c:90
 msgid "open /dev/null failed"
 msgstr "gặp lỗi khi mở “/dev/null”"
 
-#: run-command.c:85
+#: run-command.c:92
 #, c-format
 msgid "dup2(%d,%d) failed"
 msgstr "dup2(%d,%d) gặp lỗi"
@@ -1290,7 +1345,7 @@ msgstr "%s: Không thể ghi tập tin lưu bảng mục lục mới"
 
 #: sequencer.c:327
 msgid "Could not resolve HEAD commit\n"
-msgstr "Không thể phân giải commit (lần chuyển giao) HEAD\n"
+msgstr "Không thể phân giải lần chuyển giao HEAD\n"
 
 #: sequencer.c:347
 msgid "Unable to update cache tree\n"
@@ -1437,7 +1492,7 @@ 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"
 
-#: sequencer.c:887 builtin/apply.c:4291
+#: sequencer.c:887 builtin/apply.c:4287
 #, c-format
 msgid "cannot open %s: %s"
 msgstr "không thể mở %s: %s"
@@ -1479,12 +1534,12 @@ msgstr "Không thể hoàn nguyên một lần chuyển giao khởi tạo"
 msgid "Can't cherry-pick into empty head"
 msgstr "Không thể cherry-pick vào một đầu (head) trống rỗng"
 
-#: setup.c:243
+#: setup.c:248
 #, c-format
 msgid "failed to read %s"
 msgstr "gặp lỗi khi đọc %s"
 
-#: sha1_name.c:453
+#: sha1_name.c:463
 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"
@@ -1533,7 +1588,7 @@ msgstr "Không thể gỡ bỏ mục .gitmodules dành cho %s"
 msgid "staging updated .gitmodules failed"
 msgstr "gặp lỗi khi tổ chức .gitmodules đã cập nhật"
 
-#: submodule.c:1045
+#: submodule.c:1040
 #, c-format
 msgid "Could not set core.worktree in %s"
 msgstr "Không thể đặt “core.worktree” trong “%s”."
@@ -1544,7 +1599,7 @@ msgstr "Không thể đặt “core.worktree” trong “%s”."
 msgid "unknown value '%s' for key '%s'"
 msgstr "không hiểu giá trị “%s” cho khóa “%s”"
 
-#: trailer.c:543 trailer.c:548 builtin/remote.c:290
+#: trailer.c:543 trailer.c:548 builtin/remote.c:296
 #, c-format
 msgid "more than one %s"
 msgstr "nhiều hơn một %s"
@@ -1611,8 +1666,8 @@ msgstr "không thể mở “%s” để đọc và ghi"
 msgid "could not open '%s' for writing"
 msgstr "không thể mở “%s” để ghi"
 
-#: wrapper.c:223 wrapper.c:366 builtin/am.c:337 builtin/commit.c:1688
-#: builtin/merge.c:1076 builtin/pull.c:380
+#: wrapper.c:223 wrapper.c:366 builtin/am.c:338 builtin/commit.c:1691
+#: builtin/merge.c:1074 builtin/pull.c:380
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "không thể mở “%s” để đọc"
@@ -1640,17 +1695,17 @@ msgstr "không có người dùng như vậy"
 msgid "unable to get current working directory"
 msgstr "Không thể lấy thư mục làm việc hiện hành"
 
-#: wrapper.c:631
+#: wrapper.c:647
 #, c-format
 msgid "could not open %s for writing"
 msgstr "không thể mở %s để ghi"
 
-#: wrapper.c:642 builtin/am.c:424
+#: wrapper.c:658 builtin/am.c:425
 #, c-format
 msgid "could not write to %s"
 msgstr "không thể ghi vào %s"
 
-#: wrapper.c:648
+#: wrapper.c:664
 #, c-format
 msgid "could not close %s"
 msgstr "không thể đóng %s"
@@ -2005,27 +2060,27 @@ msgstr "Bạn hiện tại đang thực hiện việc bisect (di chuyển nửa
 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)"
 
-#: wt-status.c:1437
+#: wt-status.c:1438
 msgid "On branch "
 msgstr "Trên nhánh "
 
-#: wt-status.c:1445
+#: wt-status.c:1444
 msgid "interactive rebase in progress; onto "
 msgstr "rebase ở chế độ tương tác đang được thực hiện; lên trên "
 
-#: wt-status.c:1447
+#: wt-status.c:1446
 msgid "rebase in progress; onto "
 msgstr "rebase đang được thực hiện: lên trên "
 
-#: wt-status.c:1452
+#: wt-status.c:1451
 msgid "HEAD detached at "
 msgstr "HEAD được tách rời tại "
 
-#: wt-status.c:1454
+#: wt-status.c:1453
 msgid "HEAD detached from "
 msgstr "HEAD được tách rời từ "
 
-#: wt-status.c:1457
+#: wt-status.c:1456
 msgid "Not currently on any branch."
 msgstr "Hiện tại chẳng ở nhánh nào cả."
 
@@ -2117,23 +2172,23 @@ msgstr ""
 msgid "nothing to commit, working directory clean\n"
 msgstr "không có gì để chuyển giao, thư mục làm việc sạch sẽ\n"
 
-#: wt-status.c:1644
-msgid "HEAD (no branch)"
-msgstr "HEAD (không nhánh)"
-
-#: wt-status.c:1650
+#: wt-status.c:1642
 msgid "Initial commit on "
 msgstr "Lần chuyển giao khởi tạo trên "
 
-#: wt-status.c:1677
+#: wt-status.c:1646
+msgid "HEAD (no branch)"
+msgstr "HEAD (không nhánh)"
+
+#: wt-status.c:1675
 msgid "gone"
 msgstr "đã ra đi"
 
-#: wt-status.c:1679 wt-status.c:1687
+#: wt-status.c:1677 wt-status.c:1685
 msgid "behind "
 msgstr "đằng sau "
 
-#: compat/precompose_utf8.c:55 builtin/clone.c:403
+#: compat/precompose_utf8.c:56 builtin/clone.c:408
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "gặp lỗi khi bỏ liên kết (unlink) “%s”"
@@ -2147,7 +2202,7 @@ msgstr "git add [<các-tùy-chọn>] [--]  <pathspec>…"
 msgid "unexpected diff status %c"
 msgstr "trạng thái lệnh diff không như mong đợi %c"
 
-#: builtin/add.c:70 builtin/commit.c:277
+#: builtin/add.c:70 builtin/commit.c:278
 msgid "updating files failed"
 msgstr "Cập nhật tập tin gặp lỗi"
 
@@ -2161,7 +2216,7 @@ msgid "Unstaged changes after refreshing the index:"
 msgstr ""
 "Đưa ra khỏi bệ phóng các thay đổi sau khi làm tươi mới lại bảng mục lục:"
 
-#: builtin/add.c:194 builtin/rev-parse.c:799
+#: builtin/add.c:194 builtin/rev-parse.c:796
 msgid "Could not read the index"
 msgstr "Không thể đọc bảng mục lục"
 
@@ -2198,15 +2253,15 @@ 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"
 
-#: builtin/add.c:249 builtin/clean.c:896 builtin/fetch.c:108 builtin/mv.c:110
+#: builtin/add.c:249 builtin/clean.c:894 builtin/fetch.c:108 builtin/mv.c:110
 #: builtin/prune-packed.c:55 builtin/pull.c:182 builtin/push.c:545
-#: builtin/remote.c:1339 builtin/rm.c:268 builtin/send-pack.c:162
+#: builtin/remote.c:1345 builtin/rm.c:268 builtin/send-pack.c:162
 msgid "dry run"
 msgstr "chạy thử"
 
-#: builtin/add.c:250 builtin/apply.c:4580 builtin/check-ignore.c:19
-#: builtin/commit.c:1321 builtin/count-objects.c:63 builtin/fsck.c:636
-#: builtin/log.c:1641 builtin/mv.c:109 builtin/read-tree.c:114
+#: builtin/add.c:250 builtin/apply.c:4571 builtin/check-ignore.c:19
+#: builtin/commit.c:1322 builtin/count-objects.c:85 builtin/fsck.c:558
+#: builtin/log.c:1640 builtin/mv.c:109 builtin/read-tree.c:114
 msgid "be verbose"
 msgstr "chi tiết"
 
@@ -2214,7 +2269,7 @@ msgstr "chi tiết"
 msgid "interactive picking"
 msgstr "sửa bằng cách tương tác"
 
-#: builtin/add.c:253 builtin/checkout.c:1152 builtin/reset.c:286
+#: builtin/add.c:253 builtin/checkout.c:1153 builtin/reset.c:286
 msgid "select hunks interactively"
 msgstr "chọn “hunks” theo kiểu tương tác"
 
@@ -2275,146 +2330,147 @@ msgstr "-A và -u xung khắc nhau"
 msgid "Option --ignore-missing can only be used together with --dry-run"
 msgstr "Tùy chọn --ignore-missing chỉ có thể được dùng cùng với --dry-run"
 
-#: builtin/add.c:358
+#: builtin/add.c:352
 #, 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"
 
-#: builtin/add.c:359
+#: builtin/add.c:353
 #, c-format
 msgid "Maybe you wanted to say 'git add .'?\n"
 msgstr "Có lẽ ý bạn là “git add .” phải không?\n"
 
-#: builtin/add.c:364 builtin/check-ignore.c:172 builtin/clean.c:940
-#: builtin/commit.c:336 builtin/mv.c:130 builtin/reset.c:235 builtin/rm.c:298
+#: builtin/add.c:358 builtin/check-ignore.c:172 builtin/clean.c:938
+#: builtin/commit.c:337 builtin/mv.c:130 builtin/reset.c:235 builtin/rm.c:298
+#: builtin/submodule--helper.c:40
 msgid "index file corrupt"
 msgstr "tập tin ghi bảng mục lục bị hỏng"
 
-#: builtin/add.c:445 builtin/apply.c:4678 builtin/mv.c:279 builtin/rm.c:430
+#: builtin/add.c:439 builtin/apply.c:4669 builtin/mv.c:279 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"
 
-#: builtin/am.c:41
+#: builtin/am.c:42
 #, c-format
 msgid "could not stat %s"
 msgstr "không thể lấy thông tin thống kê về %s"
 
-#: builtin/am.c:270 builtin/am.c:1345 builtin/commit.c:737 builtin/merge.c:1079
+#: builtin/am.c:271 builtin/commit.c:738 builtin/merge.c:1077
 #, c-format
 msgid "could not read '%s'"
 msgstr "Không thể đọc “%s”."
 
-#: builtin/am.c:444
+#: builtin/am.c:445
 msgid "could not parse author script"
 msgstr "không thể phân tích cú pháp văn lệnh tác giả"
 
-#: builtin/am.c:521
+#: builtin/am.c:522
 #, c-format
 msgid "'%s' was deleted by the applypatch-msg hook"
 msgstr "“%s” bị xóa bởi móc applypatch-msg"
 
-#: builtin/am.c:562 builtin/notes.c:300
+#: builtin/am.c:563 builtin/notes.c:300
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "Dòng đầu vào dị hình: “%s”."
 
-#: builtin/am.c:599 builtin/notes.c:315
+#: builtin/am.c:600 builtin/notes.c:315
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr "Gặp lỗi khi sao chép ghi chú (note) từ “%s” tới “%s”"
 
-#: builtin/am.c:625
+#: builtin/am.c:626
 msgid "fseek failed"
 msgstr "fseek gặp lỗi"
 
-#: builtin/am.c:786 builtin/am.c:874
+#: builtin/am.c:787 builtin/am.c:875
 #, c-format
 msgid "could not open '%s' for reading: %s"
 msgstr "không thể mở “%s” để đọc: %s"
 
-#: builtin/am.c:793
+#: builtin/am.c:794
 #, c-format
 msgid "could not open '%s' for writing: %s"
 msgstr "Không thể mở “%s” để ghi: %s"
 
-#: builtin/am.c:802
+#: builtin/am.c:803
 #, c-format
 msgid "could not parse patch '%s'"
 msgstr "không thể phân tích cú pháp “%s”"
 
-#: builtin/am.c:867
+#: builtin/am.c:868
 msgid "Only one StGIT patch series can be applied at once"
 msgstr "Chỉ có một sê-ri miếng vá StGIT được áp dụng một lúc"
 
-#: builtin/am.c:915
+#: builtin/am.c:916
 msgid "invalid timestamp"
 msgstr "dấu thời gian không hợp lệ"
 
-#: builtin/am.c:918 builtin/am.c:926
+#: builtin/am.c:919 builtin/am.c:927
 msgid "invalid Date line"
 msgstr "dòng Ngày tháng không hợp lệ"
 
-#: builtin/am.c:923
+#: builtin/am.c:924
 msgid "invalid timezone offset"
 msgstr "độ lệch múi giờ không hợp lệ"
 
-#: builtin/am.c:1010
+#: builtin/am.c:1011
 msgid "Patch format detection failed."
 msgstr "Dò tìm định dạng miếng vá gặp lỗi."
 
-#: builtin/am.c:1015 builtin/clone.c:368
+#: builtin/am.c:1016 builtin/clone.c:373
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "tạo thư mục \"%s\" gặp lỗi"
 
-#: builtin/am.c:1019
+#: builtin/am.c:1020
 msgid "Failed to split patches."
 msgstr "Gặp lỗi khi chia nhỏ các miếng vá."
 
-#: builtin/am.c:1151 builtin/commit.c:362
+#: builtin/am.c:1152 builtin/commit.c:363
 msgid "unable to write index file"
 msgstr "không thể ghi tập tin lưu mục lục"
 
-#: builtin/am.c:1202
+#: builtin/am.c:1203
 #, c-format
 msgid "When you have resolved this problem, run \"%s --continue\"."
 msgstr "Khi bạn đã phân giải xong trục trặc này, hãy chạy \"%s --continue\"."
 
-#: builtin/am.c:1203
+#: builtin/am.c:1204
 #, c-format
 msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
 msgstr ""
 "Nếu bạn muốn bỏ qua miếng vá này, hãy chạy lệnh \"%s --skip\" để thay thế."
 
-#: builtin/am.c:1204
+#: builtin/am.c:1205
 #, c-format
 msgid "To restore the original branch and stop patching, run \"%s --abort\"."
 msgstr "Để phục hồi lại nhánh gốc và dừng vá, hãy chạy \"%s --abort\"."
 
-#: builtin/am.c:1339
+#: builtin/am.c:1343
 msgid "Patch is empty. Was it split wrong?"
 msgstr "Miếng vá trống rỗng. Quá trình chia nhỏ miếng vá có lỗi?"
 
-#: builtin/am.c:1413 builtin/log.c:1345
+#: builtin/am.c:1417 builtin/log.c:1344
 #, c-format
 msgid "invalid ident line: %s"
 msgstr "dòng thụt lề không hợp lệ: %s"
 
-#: builtin/am.c:1440
+#: builtin/am.c:1444
 #, c-format
 msgid "unable to parse commit %s"
 msgstr "không thể phân tích lần chuyển giao “%s”"
 
-#: builtin/am.c:1614
+#: builtin/am.c:1646
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
 msgstr "Kho thiếu đối tượng blob cần thiết để trở về trên “3-way merge”."
 
-#: builtin/am.c:1616
+#: builtin/am.c:1648
 msgid "Using index info to reconstruct a base tree..."
 msgstr ""
 "Sử dụng thông tin trong bảng mục lục để cấu trúc lại một cây (tree) cơ sở…"
 
-#: builtin/am.c:1635
+#: builtin/am.c:1667
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -2422,38 +2478,38 @@ msgstr ""
 "Bạn đã sửa miếng vá của mình bằng cách thủ công à?\n"
 "Nó không thể áp dụng các blob đã được ghi lại trong bảng mục lục của nó."
 
-#: builtin/am.c:1641
+#: builtin/am.c:1673
 msgid "Falling back to patching base and 3-way merge..."
 msgstr "Đang trở lại để vá cơ sở và “hòa trộn 3-đường”…"
 
-#: builtin/am.c:1666
+#: builtin/am.c:1688
 msgid "Failed to merge in the changes."
 msgstr "Gặp lỗi khi trộn vào các thay đổi."
 
-#: builtin/am.c:1691 builtin/merge.c:632
+#: builtin/am.c:1712 builtin/merge.c:632
 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"
 
-#: builtin/am.c:1698
+#: builtin/am.c:1719
 msgid "applying to an empty history"
 msgstr "áp dụng vào một lịch sử trống rỗng"
 
-#: builtin/am.c:1711 builtin/commit.c:1752 builtin/merge.c:829
+#: builtin/am.c:1732 builtin/commit.c:1755 builtin/merge.c:829
 #: builtin/merge.c:854
 msgid "failed to write commit object"
 msgstr "gặp lỗi khi ghi đối tượng chuyển giao"
 
-#: builtin/am.c:1743 builtin/am.c:1747
+#: builtin/am.c:1764 builtin/am.c:1768
 #, 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:1763
+#: builtin/am.c:1784
 msgid "cannot be interactive without stdin connected to a terminal."
 msgstr ""
 "không thể được tương tác mà không có stdin kết nối với một thiết bị cuối"
 
-#: builtin/am.c:1768
+#: builtin/am.c:1789
 msgid "Commit Body is:"
 msgstr "Thân của lần chuyển giao là:"
 
@@ -2461,37 +2517,37 @@ msgstr "Thân của lần chuyển giao là:"
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1778
+#: builtin/am.c:1799
 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]á/đồng ý tất cả "
-"[a]: "
+"Áp dụng? đồng ý [y]/khô[n]g/chỉnh sửa [e]/hiển thị miếng [v]á/chấp nhận tất "
+"cả [a]: "
 
-#: builtin/am.c:1828
+#: builtin/am.c:1849
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr "Bảng mục lục bẩn: không thể áp dụng các miếng vá (bẩn: %s)"
 
-#: builtin/am.c:1863 builtin/am.c:1934
+#: builtin/am.c:1884 builtin/am.c:1955
 #, c-format
 msgid "Applying: %.*s"
 msgstr "Áp dụng: %.*s"
 
-#: builtin/am.c:1879
+#: builtin/am.c:1900
 msgid "No changes -- Patch already applied."
 msgstr "Không thay đổi gì cả -- Miếng vá đã được áp dụng rồi."
 
-#: builtin/am.c:1887
+#: builtin/am.c:1908
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "Gặp lỗi khi vá tại %s %.*s"
 
-#: builtin/am.c:1893
+#: builtin/am.c:1914
 #, c-format
 msgid "The copy of the patch that failed is found in: %s"
 msgstr "Bản sao chép của miếng vá mà nó gặp lỗi thì được tìm thấy trong: %s"
 
-#: builtin/am.c:1937
+#: builtin/am.c:1958
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -2502,7 +2558,7 @@ msgstr ""
 "đã sẵn được đưa vào với cùng nội dung thay đổi; bạn có lẽ muốn bỏ qua miếng "
 "vá này."
 
-#: builtin/am.c:1944
+#: builtin/am.c:1965
 msgid ""
 "You still have unmerged paths in your index.\n"
 "Did you forget to use 'git add'?"
@@ -2510,17 +2566,17 @@ msgstr ""
 "Bạn vẫn có những đường dẫn chưa được hòa trộn trong bảng mục lục của mình.\n"
 "Bạn đã quên sử dụng lệnh “git add” à?"
 
-#: builtin/am.c:2052 builtin/am.c:2056 builtin/am.c:2068 builtin/reset.c:308
+#: builtin/am.c:2073 builtin/am.c:2077 builtin/am.c:2089 builtin/reset.c:308
 #: builtin/reset.c:316
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "không thể phân tích đối tượng “%s”."
 
-#: builtin/am.c:2104
+#: builtin/am.c:2125
 msgid "failed to clean index"
 msgstr "gặp lỗi khi dọn bảng mục lục"
 
-#: builtin/am.c:2138
+#: builtin/am.c:2159
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -2528,151 +2584,153 @@ msgstr ""
 "Bạn có lẽ đã có HEAD đã bị di chuyển đi kể từ lần “am” thất bại cuối cùng.\n"
 "Không thể chuyển tới ORIG_HEAD"
 
-#: builtin/am.c:2199
+#: builtin/am.c:2220
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr "Giá trị không hợp lệ cho --patch-format: %s"
 
-#: builtin/am.c:2221
-msgid "git am [options] [(<mbox>|<Maildir>)...]"
-msgstr "git am [các-tùy-chọn] [(<mbox>|<Maildir>)…]"
+#: builtin/am.c:2253
+msgid "git am [<options>] [(<mbox>|<Maildir>)...]"
+msgstr "git am [<các-tùy-chọn>] [(<mbox>|<Maildir>)…]"
 
-#: builtin/am.c:2222
-msgid "git am [options] (--continue | --skip | --abort)"
-msgstr "git am [các-tùy-chọn] (--continue | --skip | --abort)"
+#: builtin/am.c:2254
+msgid "git am [<options>] (--continue | --skip | --abort)"
+msgstr "git am [<các-tùy-chọn>] (--continue | --skip | --abort)"
 
-#: builtin/am.c:2228
+#: builtin/am.c:2260
 msgid "run interactively"
 msgstr "chạy kiểu tương tác"
 
-#: builtin/am.c:2230
+#: builtin/am.c:2262
 msgid "historical option -- no-op"
 msgstr "tùy chọn lịch sử -- không-toán-tử"
 
-#: builtin/am.c:2232
+#: builtin/am.c:2264
 msgid "allow fall back on 3way merging if needed"
 msgstr "cho phép quay trở lại để hòa trộn kiểu “3way” nếu cần"
 
-#: builtin/am.c:2233 builtin/init-db.c:509 builtin/prune-packed.c:57
+#: builtin/am.c:2265 builtin/init-db.c:474 builtin/prune-packed.c:57
 #: builtin/repack.c:171
 msgid "be quiet"
 msgstr "im lặng"
 
-#: builtin/am.c:2235
+#: builtin/am.c:2267
 msgid "add a Signed-off-by line to the commit message"
 msgstr "Thêm dòng Signed-off-by cho ghi chú của lần chuyển giao"
 
-#: builtin/am.c:2238
+#: builtin/am.c:2270
 msgid "recode into utf8 (default)"
 msgstr "chuyển mã thành utf8 (mặc định)"
 
-#: builtin/am.c:2240
+#: builtin/am.c:2272
 msgid "pass -k flag to git-mailinfo"
 msgstr "chuyển cờ -k cho git-mailinfo"
 
-#: builtin/am.c:2242
+#: builtin/am.c:2274
 msgid "pass -b flag to git-mailinfo"
 msgstr "chuyển cờ -b cho git-mailinfo"
 
-#: builtin/am.c:2244
+#: builtin/am.c:2276
 msgid "pass -m flag to git-mailinfo"
-msgstr "chuyển cờ -b cho git-mailinfo"
+msgstr "chuyển cờ -m cho git-mailinfo"
 
-#: builtin/am.c:2246
+#: builtin/am.c:2278
 msgid "pass --keep-cr flag to git-mailsplit for mbox format"
 msgstr "chuyển cờ --keep-cr cho git-mailsplit với định dạng mbox"
 
-#: builtin/am.c:2249
+#: builtin/am.c:2281
 msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
 msgstr ""
 "đừng chuyển cờ --keep-cr cho git-mailsplit không phụ thuộc vào am.keepcr"
 
-#: builtin/am.c:2252
+#: builtin/am.c:2284
 msgid "strip everything before a scissors line"
 msgstr "cắt mọi thứ trước dòng scissors"
 
-#: builtin/am.c:2253 builtin/apply.c:4563
+#: builtin/am.c:2285 builtin/apply.c:4554
 msgid "action"
 msgstr "hành động"
 
-#: builtin/am.c:2254 builtin/am.c:2257 builtin/am.c:2260 builtin/am.c:2263
-#: builtin/am.c:2266 builtin/am.c:2269 builtin/am.c:2272 builtin/am.c:2275
-#: builtin/am.c:2281
+#: builtin/am.c:2286 builtin/am.c:2289 builtin/am.c:2292 builtin/am.c:2295
+#: builtin/am.c:2298 builtin/am.c:2301 builtin/am.c:2304 builtin/am.c:2307
+#: builtin/am.c:2313
 msgid "pass it through git-apply"
 msgstr "chuyển nó qua git-apply"
 
-#: builtin/am.c:2262 builtin/apply.c:4587
+#: builtin/am.c:2294 builtin/apply.c:4578
 msgid "root"
-msgstr "root"
+msgstr "gốc"
 
-#: builtin/am.c:2265 builtin/am.c:2268 builtin/apply.c:4525
-#: builtin/apply.c:4528 builtin/clone.c:85 builtin/fetch.c:93
-#: builtin/pull.c:167
+#: builtin/am.c:2297 builtin/am.c:2300 builtin/apply.c:4516
+#: builtin/apply.c:4519 builtin/clone.c:85 builtin/fetch.c:93
+#: builtin/pull.c:167 builtin/submodule--helper.c:78
+#: builtin/submodule--helper.c:166 builtin/submodule--helper.c:169
 msgid "path"
 msgstr "đường-dẫn"
 
-#: builtin/am.c:2271 builtin/fmt-merge-msg.c:669 builtin/fmt-merge-msg.c:672
-#: builtin/grep.c:698 builtin/merge.c:198 builtin/pull.c:127
-#: builtin/repack.c:178 builtin/repack.c:182 builtin/show-branch.c:664
-#: builtin/show-ref.c:180 builtin/tag.c:591 parse-options.h:132
-#: parse-options.h:134 parse-options.h:243
+#: builtin/am.c:2303 builtin/fmt-merge-msg.c:666 builtin/fmt-merge-msg.c:669
+#: builtin/grep.c:693 builtin/merge.c:198 builtin/pull.c:127
+#: builtin/repack.c:178 builtin/repack.c:182 builtin/show-branch.c:645
+#: builtin/show-ref.c:175 builtin/tag.c:340 parse-options.h:132
+#: parse-options.h:134 parse-options.h:244
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2274 builtin/apply.c:4531
+#: builtin/am.c:2306 builtin/apply.c:4522
 msgid "num"
 msgstr "số"
 
-#: builtin/am.c:2277 builtin/for-each-ref.c:34 builtin/replace.c:438
+#: builtin/am.c:2309 builtin/for-each-ref.c:37 builtin/replace.c:438
+#: builtin/tag.c:372
 msgid "format"
 msgstr "định dạng"
 
-#: builtin/am.c:2278
+#: builtin/am.c:2310
 msgid "format the patch(es) are in"
 msgstr "định dạng (các) miếng vá theo"
 
-#: builtin/am.c:2284
+#: builtin/am.c:2316
 msgid "override error message when patch failure occurs"
 msgstr "đè lên các lời nhắn lỗi khi xảy ra lỗi vá nghiêm trọng"
 
-#: builtin/am.c:2286
+#: builtin/am.c:2318
 msgid "continue applying patches after resolving a conflict"
 msgstr "tiếp tục áp dụng các miếng vá sau khi giải quyết xung đột"
 
-#: builtin/am.c:2289
+#: builtin/am.c:2321
 msgid "synonyms for --continue"
 msgstr "đồng nghĩa với --continue"
 
-#: builtin/am.c:2292
+#: builtin/am.c:2324
 msgid "skip the current patch"
 msgstr "bỏ qua miếng vá hiện hành"
 
-#: builtin/am.c:2295
+#: builtin/am.c:2327
 msgid "restore the original branch and abort the patching operation."
 msgstr "phục hồi lại nhánh gốc và loại bỏ thao tác vá."
 
-#: builtin/am.c:2299
+#: builtin/am.c:2331
 msgid "lie about committer date"
 msgstr "nói dối về ngày chuyển giao"
 
-#: builtin/am.c:2301
+#: builtin/am.c:2333
 msgid "use current timestamp for author date"
 msgstr "dùng dấu thời gian hiện tại cho ngày tác giả"
 
-#: builtin/am.c:2303 builtin/commit.c:1590 builtin/merge.c:225
-#: builtin/pull.c:155 builtin/revert.c:92 builtin/tag.c:606
+#: builtin/am.c:2335 builtin/commit.c:1593 builtin/merge.c:225
+#: builtin/pull.c:155 builtin/revert.c:92 builtin/tag.c:355
 msgid "key-id"
 msgstr "mã-số-khóa"
 
-#: builtin/am.c:2304
+#: builtin/am.c:2336
 msgid "GPG-sign commits"
 msgstr "lần chuyển giao ký-GPG"
 
-#: builtin/am.c:2307
+#: builtin/am.c:2339
 msgid "(internal use for git-rebase)"
 msgstr "(dùng nội bộ cho git-rebase)"
 
-#: builtin/am.c:2322
+#: builtin/am.c:2354
 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."
@@ -2680,16 +2738,16 @@ msgstr ""
 "Tùy chọn -b/--binary đã không dùng từ lâu rồi, và\n"
 "nó sẽ được bỏ đi. Xin đừng sử dụng nó thêm nữa."
 
-#: builtin/am.c:2329
+#: builtin/am.c:2361
 msgid "failed to read the index"
 msgstr "gặp lỗi đọc bảng mục lục"
 
-#: builtin/am.c:2344
+#: builtin/am.c:2376
 #, c-format
 msgid "previous rebase directory %s still exists but mbox given."
 msgstr "thư mục rebase trước %s không sẵn có nhưng mbox lại đưa ra."
 
-#: builtin/am.c:2368
+#: builtin/am.c:2400
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -2698,7 +2756,7 @@ 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:2374
+#: builtin/am.c:2406
 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."
 
@@ -2706,65 +2764,65 @@ msgstr "Thao tác phân giải không được tiến hành, chúng ta không ph
 msgid "git apply [<options>] [<patch>...]"
 msgstr "git apply [<các-tùy-chọn>] [<miếng-vá>…]"
 
-#: builtin/apply.c:112
+#: builtin/apply.c:111
 #, c-format
 msgid "unrecognized whitespace option '%s'"
 msgstr "không nhận ra tùy chọn về khoảng trắng “%s”"
 
-#: builtin/apply.c:127
+#: builtin/apply.c:126
 #, 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”"
 
-#: builtin/apply.c:822
+#: builtin/apply.c:818
 #, 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"
 
-#: builtin/apply.c:831
+#: builtin/apply.c:827
 #, 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"
 
-#: builtin/apply.c:912
+#: builtin/apply.c:908
 #, 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"
 
-#: builtin/apply.c:944
+#: builtin/apply.c:940
 #, 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"
 
-#: builtin/apply.c:948
+#: builtin/apply.c:944
 #, 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"
 
-#: builtin/apply.c:949
+#: builtin/apply.c:945
 #, 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"
 
-#: builtin/apply.c:956
+#: builtin/apply.c:952
 #, 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"
 
-#: builtin/apply.c:1419
+#: builtin/apply.c:1415
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr "chi tiết: dòng không cần: %.*s"
 
-#: builtin/apply.c:1476
+#: builtin/apply.c:1472
 #, 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"
 
-#: builtin/apply.c:1493
+#: builtin/apply.c:1489
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -2776,76 +2834,76 @@ 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)"
 
-#: builtin/apply.c:1659
+#: builtin/apply.c:1655
 msgid "new file depends on old contents"
 msgstr "tập tin mới phụ thuộc vào nội dung cũ"
 
-#: builtin/apply.c:1661
+#: builtin/apply.c:1657
 msgid "deleted file still has contents"
 msgstr "tập tin đã xóa vẫn còn nội dung"
 
-#: builtin/apply.c:1687
+#: builtin/apply.c:1683
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "miếng vá hỏng tại dòng %d"
 
-#: builtin/apply.c:1723
+#: builtin/apply.c:1719
 #, 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ũ"
 
-#: builtin/apply.c:1725
+#: builtin/apply.c:1721
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "tập tin đã xóa %s vẫn còn nội dung"
 
-#: builtin/apply.c:1728
+#: builtin/apply.c:1724
 #, 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"
 
-#: builtin/apply.c:1874
+#: builtin/apply.c:1870
 #, 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"
 
-#: builtin/apply.c:1903
+#: builtin/apply.c:1899
 #, 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"
 
-#: builtin/apply.c:2054
+#: builtin/apply.c:2050
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "vá chỉ với “rác” tại dòng %d"
 
-#: builtin/apply.c:2144
+#: builtin/apply.c:2140
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "không thể đọc liên kết mềm %s"
 
-#: builtin/apply.c:2148
+#: builtin/apply.c:2144
 #, c-format
 msgid "unable to open or read %s"
 msgstr "không thể mở hay đọc %s"
 
-#: builtin/apply.c:2781
+#: builtin/apply.c:2777
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "sai khởi đầu dòng: “%c”"
 
-#: builtin/apply.c:2900
+#: builtin/apply.c:2896
 #, 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)."
 
-#: builtin/apply.c:2912
+#: builtin/apply.c:2908
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr "Nội dung bị giảm xuống còn (%ld/%ld) để áp dụng mảnh dữ liệu tại %d"
 
-#: builtin/apply.c:2918
+#: builtin/apply.c:2914
 #, c-format
 msgid ""
 "while searching for:\n"
@@ -2854,324 +2912,324 @@ msgstr ""
 "trong khi đang tìm kiếm cho:\n"
 "%.*s"
 
-#: builtin/apply.c:2938
+#: builtin/apply.c:2934
 #, 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”"
 
-#: builtin/apply.c:3039
+#: builtin/apply.c:3035
 #, 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”"
 
-#: builtin/apply.c:3045
+#: builtin/apply.c:3041
 #, 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)"
 
-#: builtin/apply.c:3066
+#: builtin/apply.c:3062
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "gặp lỗi khi vá: %s:%ld"
 
-#: builtin/apply.c:3190
+#: builtin/apply.c:3186
 #, c-format
 msgid "cannot checkout %s"
 msgstr "không thể lấy ra %s"
 
-#: builtin/apply.c:3235 builtin/apply.c:3246 builtin/apply.c:3291
+#: builtin/apply.c:3231 builtin/apply.c:3242 builtin/apply.c:3287
 #, c-format
 msgid "read of %s failed"
 msgstr "đọc %s gặp lỗi"
 
-#: builtin/apply.c:3243
+#: builtin/apply.c:3239
 #, 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"
 
-#: builtin/apply.c:3271 builtin/apply.c:3493
+#: builtin/apply.c:3267 builtin/apply.c:3489
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "đường dẫn %s đã bị xóa hoặc đổi tên"
 
-#: builtin/apply.c:3352 builtin/apply.c:3507
+#: builtin/apply.c:3348 builtin/apply.c:3503
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s: không tồn tại trong bảng mục lục"
 
-#: builtin/apply.c:3356 builtin/apply.c:3499 builtin/apply.c:3521
+#: builtin/apply.c:3352 builtin/apply.c:3495 builtin/apply.c:3517
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
-#: builtin/apply.c:3361 builtin/apply.c:3515
+#: builtin/apply.c:3357 builtin/apply.c:3511
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s: không khớp trong mục lục"
 
-#: builtin/apply.c:3463
+#: builtin/apply.c:3459
 msgid "removal patch leaves file contents"
 msgstr "loại bỏ miếng vá để lại nội dung tập tin"
 
-#: builtin/apply.c:3532
+#: builtin/apply.c:3528
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s: sai kiểu"
 
-#: builtin/apply.c:3534
+#: builtin/apply.c:3530
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s có kiểu %o, cần %o"
 
-#: builtin/apply.c:3693 builtin/apply.c:3695
+#: builtin/apply.c:3689 builtin/apply.c:3691
 #, c-format
 msgid "invalid path '%s'"
 msgstr "đường dẫn không hợp lệ “%s”"
 
-#: builtin/apply.c:3750
+#: builtin/apply.c:3746
 #, c-format
 msgid "%s: already exists in index"
 msgstr "%s: đã có từ trước trong bảng mục lục"
 
-#: builtin/apply.c:3753
+#: builtin/apply.c:3749
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s: đã sẵn có trong thư mục đang làm việc"
 
-#: builtin/apply.c:3773
+#: builtin/apply.c:3769
 #, 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)"
 
-#: builtin/apply.c:3778
+#: builtin/apply.c:3774
 #, 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"
 
-#: builtin/apply.c:3798
+#: builtin/apply.c:3794
 #, 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"
 
-#: builtin/apply.c:3802
+#: builtin/apply.c:3798
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s: miếng vá không được áp dụng"
 
-#: builtin/apply.c:3816
+#: builtin/apply.c:3812
 #, c-format
 msgid "Checking patch %s..."
 msgstr "Đang kiểm tra miếng vá %s…"
 
-#: builtin/apply.c:3909 builtin/checkout.c:232 builtin/reset.c:135
+#: builtin/apply.c:3905 builtin/checkout.c:233 builtin/reset.c:135
 #, 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”"
 
-#: builtin/apply.c:4052
+#: builtin/apply.c:4048
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "không thể gỡ bỏ %s từ mục lục"
 
-#: builtin/apply.c:4081
+#: builtin/apply.c:4077
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "miếng vá sai hỏng cho mô-đun-con %s"
 
-#: builtin/apply.c:4085
+#: builtin/apply.c:4081
 #, 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"
 
-#: builtin/apply.c:4090
+#: builtin/apply.c:4086
 #, 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"
 
-#: builtin/apply.c:4093 builtin/apply.c:4201
+#: builtin/apply.c:4089 builtin/apply.c:4197
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "không thể thêm mục nhớ đệm cho %s"
 
-#: builtin/apply.c:4126
+#: builtin/apply.c:4122
 #, c-format
 msgid "closing file '%s'"
 msgstr "đang đóng tập tin “%s”"
 
-#: builtin/apply.c:4175
+#: builtin/apply.c:4171
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr "không thể ghi vào tập tin “%s” chế độ %o"
 
-#: builtin/apply.c:4262
+#: builtin/apply.c:4258
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Đã áp dụng miếng vá %s một cách sạch sẽ."
 
-#: builtin/apply.c:4270
+#: builtin/apply.c:4266
 msgid "internal error"
 msgstr "lỗi nội bộ"
 
-#: builtin/apply.c:4273
+#: builtin/apply.c:4269
 #, 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…"
 
-#: builtin/apply.c:4283
+#: builtin/apply.c:4279
 #, 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"
 
-#: builtin/apply.c:4304
+#: builtin/apply.c:4300
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Khối nhớ #%d được áp dụng gọn gàng."
 
-#: builtin/apply.c:4307
+#: builtin/apply.c:4303
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "đoạn dữ liệu #%d bị từ chối."
 
-#: builtin/apply.c:4397
+#: builtin/apply.c:4393
 msgid "unrecognized input"
 msgstr "không thừa nhận đầu vào"
 
-#: builtin/apply.c:4408
+#: builtin/apply.c:4404
 msgid "unable to read index file"
 msgstr "không thể đọc tập tin lưu bảng mục lục"
 
-#: builtin/apply.c:4526
+#: builtin/apply.c:4517
 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"
 
-#: builtin/apply.c:4529
+#: builtin/apply.c:4520
 msgid "apply changes matching the given path"
 msgstr "áp dụng các thay đổi khớp với đường dẫn đã cho"
 
-#: builtin/apply.c:4532
+#: builtin/apply.c:4523
 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"
 
-#: builtin/apply.c:4535
+#: builtin/apply.c:4526
 msgid "ignore additions made by the patch"
 msgstr "lờ đi phần bổ xung được tạo ra bởi miếng vá"
 
-#: builtin/apply.c:4537
+#: builtin/apply.c:4528
 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"
 
-#: builtin/apply.c:4541
+#: builtin/apply.c:4532
 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"
 
-#: builtin/apply.c:4543
+#: builtin/apply.c:4534
 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"
 
-#: builtin/apply.c:4545
+#: builtin/apply.c:4536
 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"
 
-#: builtin/apply.c:4547
+#: builtin/apply.c:4538
 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"
 
-#: builtin/apply.c:4549
+#: builtin/apply.c:4540
 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"
 
-#: builtin/apply.c:4551
+#: builtin/apply.c:4542
 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"
 
-#: builtin/apply.c:4553
+#: builtin/apply.c:4544
 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)"
 
-#: builtin/apply.c:4555
+#: builtin/apply.c:4546
 msgid "attempt three-way merge if a patch does not apply"
 msgstr "thử hòa trộn kiểu three-way nếu việc vá không thể thực hiện được"
 
-#: builtin/apply.c:4557
+#: builtin/apply.c:4548
 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"
 
-#: builtin/apply.c:4559 builtin/checkout-index.c:198 builtin/ls-files.c:412
+#: builtin/apply.c:4550 builtin/checkout-index.c:198 builtin/ls-files.c:412
 msgid "paths are separated with NUL character"
 msgstr "các đường dẫn bị ngăn cách bởi ký tự NULL"
 
-#: builtin/apply.c:4562
+#: builtin/apply.c:4553
 msgid "ensure at least <n> lines of context match"
 msgstr "đảm bảo rằng có ít nhất <n> dòng nội dung khớp"
 
-#: builtin/apply.c:4564
+#: builtin/apply.c:4555
 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"
 
-#: builtin/apply.c:4567 builtin/apply.c:4570
+#: builtin/apply.c:4558 builtin/apply.c:4561
 msgid "ignore changes in whitespace when finding context"
 msgstr "lờ đi sự thay đổi do khoảng trắng gây ra khi quét nội dung"
 
-#: builtin/apply.c:4573
+#: builtin/apply.c:4564
 msgid "apply the patch in reverse"
 msgstr "áp dụng miếng vá theo chiều ngược"
 
-#: builtin/apply.c:4575
+#: builtin/apply.c:4566
 msgid "don't expect at least one line of context"
 msgstr "đừng hy vọng có ít nhất một dòng nội dung"
 
-#: builtin/apply.c:4577
+#: builtin/apply.c:4568
 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"
 
-#: builtin/apply.c:4579
+#: builtin/apply.c:4570
 msgid "allow overlapping hunks"
 msgstr "cho phép chồng khối nhớ"
 
-#: builtin/apply.c:4582
+#: builtin/apply.c:4573
 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"
 
-#: builtin/apply.c:4585
+#: builtin/apply.c:4576
 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"
 
-#: builtin/apply.c:4588
+#: builtin/apply.c:4579
 msgid "prepend <root> to all filenames"
 msgstr "treo thêm <root> vào tất cả các tên tập tin"
 
-#: builtin/apply.c:4610
+#: builtin/apply.c:4601
 msgid "--3way outside a repository"
 msgstr "--3way ở ngoài một kho chứa"
 
-#: builtin/apply.c:4618
+#: builtin/apply.c:4609
 msgid "--index outside a repository"
 msgstr "--index ở ngoài một kho chứa"
 
-#: builtin/apply.c:4621
+#: builtin/apply.c:4612
 msgid "--cached outside a repository"
 msgstr "--cached ở ngoài một kho chứa"
 
-#: builtin/apply.c:4640
+#: builtin/apply.c:4631
 #, c-format
 msgid "can't open patch '%s'"
 msgstr "không thể mở miếng vá “%s”"
 
-#: builtin/apply.c:4654
+#: builtin/apply.c:4645
 #, 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"
 
-#: builtin/apply.c:4660 builtin/apply.c:4670
+#: builtin/apply.c:4651 builtin/apply.c:4661
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
@@ -3233,97 +3291,97 @@ msgstr "git blame [<các-tùy-chọn>] [<rev-opts>] [<rev>] [--] <tập-tin>"
 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)"
 
-#: builtin/blame.c:2500
+#: builtin/blame.c:2519
 msgid "Show blame entries as we find them, incrementally"
 msgstr "Hiển thị các mục “blame” như là chúng ta thấy chúng, tăng dần"
 
-#: builtin/blame.c:2501
+#: builtin/blame.c:2520
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
 msgstr ""
 "Hiển thị SHA-1 trắng cho những lần chuyển giao biên giới (Mặc định: off)"
 
-#: builtin/blame.c:2502
+#: builtin/blame.c:2521
 msgid "Do not treat root commits as boundaries (Default: off)"
 msgstr "Không coi các lần chuyển giao gốc là giới hạn (Mặc định: off)"
 
-#: builtin/blame.c:2503
+#: builtin/blame.c:2522
 msgid "Show work cost statistics"
 msgstr "Hiển thị thống kê công sức làm việc"
 
-#: builtin/blame.c:2504
+#: builtin/blame.c:2523
 msgid "Show output score for blame entries"
 msgstr "Hiển thị kết xuất điểm số có các mục tin “blame”"
 
-#: builtin/blame.c:2505
+#: builtin/blame.c:2524
 msgid "Show original filename (Default: auto)"
 msgstr "Hiển thị tên tập tin gốc (Mặc định: auto)"
 
-#: builtin/blame.c:2506
+#: builtin/blame.c:2525
 msgid "Show original linenumber (Default: off)"
 msgstr "Hiển thị số dòng gốc (Mặc định: off)"
 
-#: builtin/blame.c:2507
+#: builtin/blame.c:2526
 msgid "Show in a format designed for machine consumption"
 msgstr "Hiển thị ở định dạng đã thiết kế cho sự tiêu dùng bằng máy"
 
-#: builtin/blame.c:2508
+#: builtin/blame.c:2527
 msgid "Show porcelain format with per-line commit information"
 msgstr "Hiển thị định dạng “porcelain” với thông tin chuyển giao mỗi dòng"
 
-#: builtin/blame.c:2509
+#: builtin/blame.c:2528
 msgid "Use the same output mode as git-annotate (Default: off)"
 msgstr "Dùng cùng chế độ xuất ra với git-annotate (Mặc định: off)"
 
-#: builtin/blame.c:2510
+#: builtin/blame.c:2529
 msgid "Show raw timestamp (Default: off)"
 msgstr "Hiển thị dấu vết thời gian dạng thô (Mặc định: off)"
 
-#: builtin/blame.c:2511
+#: builtin/blame.c:2530
 msgid "Show long commit SHA1 (Default: off)"
 msgstr "Hiển thị SHA1 của lần chuyển giao dạng dài (Mặc định: off)"
 
-#: builtin/blame.c:2512
+#: builtin/blame.c:2531
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr "Không hiển thị tên tác giả và dấu vết thời gian (Mặc định: off)"
 
-#: builtin/blame.c:2513
+#: builtin/blame.c:2532
 msgid "Show author email instead of name (Default: off)"
 msgstr "Hiển thị thư điện tử của tác giả thay vì tên (Mặc định: off)"
 
-#: builtin/blame.c:2514
+#: builtin/blame.c:2533
 msgid "Ignore whitespace differences"
 msgstr "Bỏ qua các khác biệt do khoảng trắng gây ra"
 
-#: builtin/blame.c:2515
+#: builtin/blame.c:2534
 msgid "Spend extra cycles to find better match"
 msgstr "Tiêu thụ thêm năng tài nguyên máy móc để tìm kiếm tốt hơn nữa"
 
-#: builtin/blame.c:2516
+#: builtin/blame.c:2535
 msgid "Use revisions from <file> instead of calling git-rev-list"
 msgstr ""
 "Sử dụng điểm xét duyệt (revision) từ <tập tin> thay vì gọi “git-rev-list”"
 
-#: builtin/blame.c:2517
+#: builtin/blame.c:2536
 msgid "Use <file>'s contents as the final image"
 msgstr "Sử dụng nội dung của <tập tin> như là ảnh cuối cùng"
 
-#: builtin/blame.c:2518 builtin/blame.c:2519
+#: builtin/blame.c:2537 builtin/blame.c:2538
 msgid "score"
 msgstr "điểm số"
 
-#: builtin/blame.c:2518
+#: builtin/blame.c:2537
 msgid "Find line copies within and across files"
 msgstr "Tìm các bản sao chép dòng trong và ngang qua tập tin"
 
-#: builtin/blame.c:2519
+#: builtin/blame.c:2538
 msgid "Find line movements within and across files"
 msgstr "Tìm các di chuyển dòng trong và ngang qua tập tin"
 
-#: builtin/blame.c:2520
+#: builtin/blame.c:2539
 msgid "n,m"
 msgstr "n,m"
 
-#: builtin/blame.c:2520
+#: builtin/blame.c:2539
 msgid "Process only line range n,m, counting from 1"
 msgstr "Xử lý chỉ dòng vùng n,m, tính từ 1"
 
@@ -3333,27 +3391,31 @@ msgstr "Xử lý chỉ dòng vùng n,m, tính từ 1"
 #. takes 22 places, is the longest among various forms of
 #. relative timestamps, but your language may need more or
 #. fewer display columns.
-#: builtin/blame.c:2601
+#: builtin/blame.c:2620
 msgid "4 years, 11 months ago"
 msgstr "4 năm, 11 tháng trước"
 
-#: builtin/branch.c:24
+#: builtin/branch.c:25
 msgid "git branch [<options>] [-r | -a] [--merged | --no-merged]"
 msgstr "git branch [<các-tùy-chọn>] [-r | -a] [--merged | --no-merged]"
 
-#: builtin/branch.c:25
+#: builtin/branch.c:26
 msgid "git branch [<options>] [-l] [-f] <branch-name> [<start-point>]"
 msgstr "git branch [<các-tùy-chọn>] [-l] [-f] <tên-nhánh> [<điểm-đầu>]"
 
-#: builtin/branch.c:26
+#: builtin/branch.c:27
 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> …"
 
-#: builtin/branch.c:27
+#: builtin/branch.c:28
 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>"
 
-#: builtin/branch.c:150
+#: builtin/branch.c:29
+msgid "git branch [<options>] [-r | -a] [--points-at]"
+msgstr "git branch [<các-tùy-chọn>] [-r | -a] [--points-at]"
+
+#: builtin/branch.c:142
 #, c-format
 msgid ""
 "deleting branch '%s' that has been merged to\n"
@@ -3362,7 +3424,7 @@ 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."
 
-#: builtin/branch.c:154
+#: builtin/branch.c:146
 #, c-format
 msgid ""
 "not deleting branch '%s' that is not yet merged to\n"
@@ -3371,12 +3433,12 @@ 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."
 
-#: builtin/branch.c:168
+#: builtin/branch.c:160
 #, 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”"
 
-#: builtin/branch.c:172
+#: builtin/branch.c:164
 #, c-format
 msgid ""
 "The branch '%s' is not fully merged.\n"
@@ -3385,306 +3447,298 @@ 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”."
 
-#: builtin/branch.c:185
+#: builtin/branch.c:177
 msgid "Update of config-file failed"
 msgstr "Cập nhật tập tin cấu hình gặp lỗi"
 
-#: builtin/branch.c:213
+#: builtin/branch.c:205
 msgid "cannot use -a with -d"
 msgstr "không thể dùng tùy chọn -a với -d"
 
-#: builtin/branch.c:219
+#: builtin/branch.c:211
 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"
 
-#: builtin/branch.c:227
+#: builtin/branch.c:219
 #, c-format
 msgid "Cannot delete the branch '%s' which you are currently on."
 msgstr "Không thể xóa nhánh “%s” cái mà bạn hiện nay đang ở."
 
-#: builtin/branch.c:243
+#: builtin/branch.c:235
 #, 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”."
 
-#: builtin/branch.c:244
+#: builtin/branch.c:236
 #, c-format
 msgid "branch '%s' not found."
 msgstr "không tìm thấy nhánh “%s”."
 
-#: builtin/branch.c:259
+#: builtin/branch.c:251
 #, c-format
 msgid "Error deleting remote-tracking branch '%s'"
 msgstr "Gặp lỗi khi đang xóa nhánh theo dõi máy chủ “%s”"
 
-#: builtin/branch.c:260
+#: builtin/branch.c:252
 #, c-format
 msgid "Error deleting branch '%s'"
 msgstr "Gặp lỗi khi xóa bỏ nhánh “%s”"
 
-#: builtin/branch.c:267
+#: builtin/branch.c:259
 #, 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"
 
-#: builtin/branch.c:268
+#: builtin/branch.c:260
 #, c-format
 msgid "Deleted branch %s (was %s).\n"
 msgstr "Nhánh “%s” đã bị xóa (từng là %s)\n"
 
-#: builtin/branch.c:369
-#, c-format
-msgid "branch '%s' does not point at a commit"
-msgstr "nhánh “%s” không chỉ đến một lần chuyển giao nào cả"
-
-#: builtin/branch.c:452
+#: builtin/branch.c:303
 #, c-format
 msgid "[%s: gone]"
 msgstr "[%s: đã ra đi]"
 
-#: builtin/branch.c:457
+#: builtin/branch.c:308
 #, c-format
 msgid "[%s]"
 msgstr "[%s]"
 
-#: builtin/branch.c:462
+#: builtin/branch.c:313
 #, c-format
 msgid "[%s: behind %d]"
 msgstr "[%s: đứng sau %d]"
 
-#: builtin/branch.c:464
+#: builtin/branch.c:315
 #, c-format
 msgid "[behind %d]"
 msgstr "[đằng sau %d]"
 
-#: builtin/branch.c:468
+#: builtin/branch.c:319
 #, c-format
 msgid "[%s: ahead %d]"
 msgstr "[%s: phía trước %d]"
 
-#: builtin/branch.c:470
+#: builtin/branch.c:321
 #, c-format
 msgid "[ahead %d]"
 msgstr "[phía trước %d]"
 
-#: builtin/branch.c:473
+#: builtin/branch.c:324
 #, c-format
 msgid "[%s: ahead %d, behind %d]"
 msgstr "[%s: trước %d, sau %d]"
 
-#: builtin/branch.c:476
+#: builtin/branch.c:327
 #, c-format
 msgid "[ahead %d, behind %d]"
 msgstr "[trước %d, sau %d]"
 
-#: builtin/branch.c:489
+#: builtin/branch.c:340
 msgid " **** invalid ref ****"
 msgstr " **** tham chiếu không hợp lệ ****"
 
-#: builtin/branch.c:580
+#: builtin/branch.c:366
 #, c-format
 msgid "(no branch, rebasing %s)"
 msgstr "(không nhánh, đang cải tổ %s)"
 
-#: builtin/branch.c:583
+#: builtin/branch.c:369
 #, 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)"
 
-#: builtin/branch.c:589
+#: builtin/branch.c:375
 #, c-format
 msgid "(HEAD detached at %s)"
 msgstr "(HEAD được tách rời tại %s)"
 
-#: builtin/branch.c:592
+#: builtin/branch.c:378
 #, c-format
 msgid "(HEAD detached from %s)"
 msgstr "(HEAD được tách rời từ %s)"
 
-#: builtin/branch.c:596
+#: builtin/branch.c:382
 msgid "(no branch)"
 msgstr "(không nhánh)"
 
-#: builtin/branch.c:643
-#, c-format
-msgid "object '%s' does not point to a commit"
-msgstr "đối tượng “%s” không chỉ đến một lần chuyển giao nào cả"
-
-#: builtin/branch.c:691
-msgid "some refs could not be read"
-msgstr "một số tham chiếu đã không thể đọc được"
-
-#: builtin/branch.c:704
+#: builtin/branch.c:524
 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ả."
 
-#: builtin/branch.c:714
+#: builtin/branch.c:534
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "Tên nhánh không hợp lệ: “%s”"
 
-#: builtin/branch.c:729
+#: builtin/branch.c:549
 msgid "Branch rename failed"
 msgstr "Gặp lỗi khi đổi tên nhánh"
 
-#: builtin/branch.c:733
+#: builtin/branch.c:553
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "Đã đổi tên nhánh khuyết danh “%s” đi"
 
-#: builtin/branch.c:737
+#: builtin/branch.c:557
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr "Nhánh bị đổi tên thành %s, nhưng HEAD lại không được cập nhật!"
 
-#: builtin/branch.c:744
+#: builtin/branch.c:564
 msgid "Branch is renamed, but update of config-file failed"
 msgstr "Nhánh bị đổi tên, nhưng cập nhật tập tin cấu hình gặp lỗi"
 
-#: builtin/branch.c:759
-#, c-format
-msgid "malformed object name %s"
-msgstr "tên đối tượng dị hình %s"
-
-#: builtin/branch.c:781
+#: builtin/branch.c:587
 #, c-format
 msgid "could not write branch description template: %s"
 msgstr "không thể ghi vào mẫu mô tả nhánh: %s"
 
-#: builtin/branch.c:811
+#: builtin/branch.c:616
 msgid "Generic options"
 msgstr "Tùy chọn chung"
 
-#: builtin/branch.c:813
+#: builtin/branch.c:618
 msgid "show hash and subject, give twice for upstream branch"
 msgstr "hiển thị mã băm và chủ đề, đưa ra hai lần cho nhánh thượng nguồn"
 
-#: builtin/branch.c:814
+#: builtin/branch.c:619
 msgid "suppress informational messages"
 msgstr "không xuất các thông tin"
 
-#: builtin/branch.c:815
+#: builtin/branch.c:620
 msgid "set up tracking mode (see git-pull(1))"
 msgstr "cài đặt chế độ theo dõi (xem git-pull(1))"
 
-#: builtin/branch.c:817
+#: builtin/branch.c:622
 msgid "change upstream info"
 msgstr "thay đổi thông tin thượng nguồn"
 
-#: builtin/branch.c:821
+#: builtin/branch.c:626
 msgid "use colored output"
 msgstr "tô màu kết xuất"
 
-#: builtin/branch.c:822
+#: builtin/branch.c:627
 msgid "act on remote-tracking branches"
 msgstr "thao tác trên nhánh “remote-tracking”"
 
-#: builtin/branch.c:825 builtin/branch.c:831 builtin/branch.c:852
-#: builtin/branch.c:858 builtin/commit.c:1580 builtin/commit.c:1581
-#: builtin/commit.c:1582 builtin/commit.c:1583 builtin/tag.c:618
-#: builtin/tag.c:624
-msgid "commit"
-msgstr "lần_chuyển_giao"
-
-#: builtin/branch.c:826 builtin/branch.c:832
+#: builtin/branch.c:629 builtin/branch.c:630
 msgid "print only branches that contain the commit"
 msgstr "chỉ hiển thị những nhánh mà nó chứa lần chuyển giao"
 
-#: builtin/branch.c:838
+#: builtin/branch.c:633
 msgid "Specific git-branch actions:"
 msgstr "Hành động git-branch:"
 
-#: builtin/branch.c:839
+#: builtin/branch.c:634
 msgid "list both remote-tracking and local branches"
 msgstr "liệt kê cả nhánh “remote-tracking” và nội bộ"
 
-#: builtin/branch.c:841
+#: builtin/branch.c:636
 msgid "delete fully merged branch"
 msgstr "xóa một toàn bộ nhánh đã hòa trộn"
 
-#: builtin/branch.c:842
+#: builtin/branch.c:637
 msgid "delete branch (even if not merged)"
 msgstr "xóa nhánh (cho dù là chưa được hòa trộn)"
 
-#: builtin/branch.c:843
+#: builtin/branch.c:638
 msgid "move/rename a branch and its reflog"
 msgstr "di chuyển hay đổi tên một nhánh và reflog của nó"
 
-#: builtin/branch.c:844
+#: builtin/branch.c:639
 msgid "move/rename a branch, even if target exists"
 msgstr "di chuyển hoặc đổi tên một nhánh ngay cả khi đích đã có sẵn"
 
-#: builtin/branch.c:845
+#: builtin/branch.c:640
 msgid "list branch names"
 msgstr "liệt kê các tên nhánh"
 
-#: builtin/branch.c:846
+#: builtin/branch.c:641
 msgid "create the branch's reflog"
 msgstr "tạo reflog của nhánh"
 
-#: builtin/branch.c:848
+#: builtin/branch.c:643
 msgid "edit the description for the branch"
 msgstr "sửa mô tả cho nhánh"
 
-#: builtin/branch.c:849
+#: builtin/branch.c:644
 msgid "force creation, move/rename, deletion"
 msgstr "buộc tạo, di chuyển/đổi tên, xóa"
 
-#: builtin/branch.c:852
-msgid "print only not merged branches"
-msgstr "chỉ hiển thị các nhánh chưa được hòa trộn"
+#: builtin/branch.c:645
+msgid "print only branches that are merged"
+msgstr "chỉ hiển thị những nhánh mà nó được hòa trộn"
 
-#: builtin/branch.c:858
-msgid "print only merged branches"
-msgstr "chỉ hiển thị các nhánh đã hòa trộn"
+#: builtin/branch.c:646
+msgid "print only branches that are not merged"
+msgstr "chỉ hiển thị những nhánh mà nó không được hòa trộn"
 
-#: builtin/branch.c:862
+#: builtin/branch.c:647
 msgid "list branches in columns"
 msgstr "liệt kê các nhánh trong các cột"
 
-#: builtin/branch.c:875
+#: builtin/branch.c:648 builtin/for-each-ref.c:38 builtin/tag.c:366
+msgid "key"
+msgstr "khóa"
+
+#: builtin/branch.c:649 builtin/for-each-ref.c:39 builtin/tag.c:367
+msgid "field name to sort on"
+msgstr "tên trường cần sắp xếp"
+
+#: builtin/branch.c:651 builtin/for-each-ref.c:41 builtin/notes.c:398
+#: builtin/notes.c:401 builtin/notes.c:561 builtin/notes.c:564
+#: builtin/tag.c:369
+msgid "object"
+msgstr "đối tượng"
+
+#: builtin/branch.c:652
+msgid "print only branches of the object"
+msgstr "chỉ hiển thị các nhánh của đối tượng"
+
+#: builtin/branch.c:670
 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ệ."
 
-#: builtin/branch.c:879 builtin/clone.c:690
+#: builtin/branch.c:674 builtin/clone.c:697
 msgid "HEAD not found below refs/heads!"
 msgstr "không tìm thấy HEAD ở dưới refs/heads!"
 
-#: builtin/branch.c:901
+#: builtin/branch.c:694
 msgid "--column and --verbose are incompatible"
 msgstr "tùy chọn --column và --verbose xung khắc nhau"
 
-#: builtin/branch.c:912 builtin/branch.c:951
+#: builtin/branch.c:705 builtin/branch.c:747
 msgid "branch name required"
 msgstr "cần chỉ ra tên nhánh"
 
-#: builtin/branch.c:927
+#: builtin/branch.c:723
 msgid "Cannot give description to detached HEAD"
 msgstr "Không thể đưa ra mô tả HEAD đã tách rời"
 
-#: builtin/branch.c:932
+#: builtin/branch.c:728
 msgid "cannot edit description of more than one branch"
 msgstr "không thể sửa mô tả cho nhiều hơn một nhánh"
 
-#: builtin/branch.c:939
+#: builtin/branch.c:735
 #, c-format
 msgid "No commit on branch '%s' yet."
 msgstr "Vẫn chưa chuyển giao trên nhánh “%s”."
 
-#: builtin/branch.c:942
+#: builtin/branch.c:738
 #, c-format
 msgid "No branch named '%s'."
 msgstr "Không có nhánh nào có tên “%s”."
 
-#: builtin/branch.c:957
+#: builtin/branch.c:753
 msgid "too many branches for a rename operation"
 msgstr "quá nhiều nhánh dành cho thao tác đổi tên"
 
-#: builtin/branch.c:962
+#: builtin/branch.c:758
 msgid "too many branches to set new upstream"
 msgstr "quá nhiều nhánh được đặt cho thượng nguồn mới"
 
-#: builtin/branch.c:966
+#: builtin/branch.c:762
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
@@ -3692,40 +3746,40 @@ msgstr ""
 "không thể đặt thượng nguồn của HEAD thành %s khi mà nó chẳng chỉ đến nhánh "
 "nào cả."
 
-#: builtin/branch.c:969 builtin/branch.c:991 builtin/branch.c:1012
+#: builtin/branch.c:765 builtin/branch.c:787 builtin/branch.c:808
 #, c-format
 msgid "no such branch '%s'"
 msgstr "không có nhánh nào như thế “%s”"
 
-#: builtin/branch.c:973
+#: builtin/branch.c:769
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr "chưa có nhánh “%s”"
 
-#: builtin/branch.c:985
+#: builtin/branch.c:781
 msgid "too many branches to unset upstream"
 msgstr "quá nhiều nhánh để bỏ đặt thượng nguồn"
 
-#: builtin/branch.c:989
+#: builtin/branch.c:785
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr "không thể bỏ đặt thượng nguồn của HEAD không chỉ đến một nhánh nào cả."
 
-#: builtin/branch.c:995
+#: builtin/branch.c:791
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr "Nhánh “%s” không có thông tin thượng nguồn"
 
-#: builtin/branch.c:1009
+#: builtin/branch.c:805
 msgid "it does not make sense to create 'HEAD' manually"
 msgstr "không hợp lý khi tạo “HEAD” thủ công"
 
-#: builtin/branch.c:1015
+#: builtin/branch.c:811
 msgid "-a and -r options to 'git branch' do not make sense with a branch name"
 msgstr ""
 "hai tùy chọn -a và -r áp dụng cho lệnh “git branch” không hợp lý đối với tên "
 "nhánh"
 
-#: builtin/branch.c:1018
+#: builtin/branch.c:814
 #, c-format
 msgid ""
 "The --set-upstream flag is deprecated and will be removed. Consider using --"
@@ -3734,7 +3788,7 @@ msgstr ""
 "Cờ --set-upstream đã lạc hậu và sẽ bị xóa bỏ. Nên dùng --track hoặc --set-"
 "upstream-to\n"
 
-#: builtin/branch.c:1035
+#: builtin/branch.c:831
 #, c-format
 msgid ""
 "\n"
@@ -3745,12 +3799,12 @@ msgstr ""
 "Nếu bạn muốn “%s” theo dõi “%s”, thực hiện lệnh sau:\n"
 "\n"
 
-#: builtin/branch.c:1036
+#: builtin/branch.c:832
 #, c-format
 msgid "    git branch -d %s\n"
 msgstr "    git branch -d %s\n"
 
-#: builtin/branch.c:1037
+#: builtin/branch.c:833
 #, c-format
 msgid "    git branch --set-upstream-to %s\n"
 msgstr "    git branch --set-upstream-to %s\n"
@@ -3777,12 +3831,8 @@ msgstr ""
 "<kiểu>|--textconv) <đối_tượng>"
 
 #: builtin/cat-file.c:429
-msgid ""
-"git cat-file (--batch | --batch-check) [--follow-symlinks] < <list-of-"
-"objects>"
-msgstr ""
-"git cat-file (--batch | --batch-check) [--follow-symlinks] < <danh-sách-đối-"
-"tượng>"
+msgid "git cat-file (--batch | --batch-check) [--follow-symlinks]"
+msgstr "git cat-file (--batch | --batch-check) [--follow-symlinks]"
 
 #: builtin/cat-file.c:466
 msgid "<type> can be one of: blob, tree, commit, tag"
@@ -3838,9 +3888,8 @@ msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
 msgstr "git check-attr [-a | --all | <attr>…] [--] tên-đường-dẫn…"
 
 #: builtin/check-attr.c:12
-msgid "git check-attr --stdin [-z] [-a | --all | <attr>...] < <list-of-paths>"
-msgstr ""
-"git check-attr --stdin [-z] [-a | --all | <attr>…] < <danh-sách-đường-dẫn>"
+msgid "git check-attr --stdin [-z] [-a | --all | <attr>...]"
+msgstr "git check-attr --stdin [-z] [-a | --all | <attr>…]"
 
 #: builtin/check-attr.c:19
 msgid "report all attributes set on file"
@@ -3858,7 +3907,7 @@ msgstr "đọc tên tập tin từ đầu vào tiêu chuẩn"
 msgid "terminate input and output records by a NUL character"
 msgstr "chấm dứt các bản ghi vào và ra bằng ký tự NULL"
 
-#: builtin/check-ignore.c:18 builtin/checkout.c:1133 builtin/gc.c:267
+#: builtin/check-ignore.c:18 builtin/checkout.c:1134 builtin/gc.c:325
 msgid "suppress progress reporting"
 msgstr "chặn các báo cáo tiến trình hoạt động"
 
@@ -3945,6 +3994,8 @@ msgid "write the content to temporary files"
 msgstr "ghi nội dung vào tập tin tạm"
 
 #: builtin/checkout-index.c:204 builtin/column.c:30
+#: builtin/submodule--helper.c:172 builtin/submodule--helper.c:175
+#: builtin/submodule--helper.c:178 builtin/submodule--helper.c:181
 msgid "string"
 msgstr "chuỗi"
 
@@ -3964,106 +4015,106 @@ msgstr "git checkout [<các-tùy-chọn>] <nhánh>"
 msgid "git checkout [<options>] [<branch>] -- <file>..."
 msgstr "git checkout [<các-tùy-chọn>] [<nhánh>] -- <tập-tin>…"
 
-#: builtin/checkout.c:133 builtin/checkout.c:166
+#: builtin/checkout.c:134 builtin/checkout.c:167
 #, 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"
 
-#: builtin/checkout.c:135 builtin/checkout.c:168
+#: builtin/checkout.c:136 builtin/checkout.c:169
 #, 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"
 
-#: builtin/checkout.c:151
+#: builtin/checkout.c:152
 #, 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"
 
-#: builtin/checkout.c:195
+#: builtin/checkout.c:196
 #, 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"
 
-#: builtin/checkout.c:212
+#: builtin/checkout.c:213
 #, c-format
 msgid "path '%s': cannot merge"
 msgstr "đường dẫn “%s”: không thể hòa trộn"
 
-#: builtin/checkout.c:229
+#: builtin/checkout.c:230
 #, 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”"
 
-#: builtin/checkout.c:250 builtin/checkout.c:253 builtin/checkout.c:256
-#: builtin/checkout.c:259
+#: builtin/checkout.c:251 builtin/checkout.c:254 builtin/checkout.c:257
+#: builtin/checkout.c:260
 #, 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"
 
-#: builtin/checkout.c:262 builtin/checkout.c:265
+#: builtin/checkout.c:263 builtin/checkout.c:266
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr "không được dùng “%s” với %s"
 
-#: builtin/checkout.c:268
+#: builtin/checkout.c:269
 #, c-format
 msgid "Cannot update paths and switch to branch '%s' at the same time."
 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:279 builtin/checkout.c:473
+#: builtin/checkout.c:280 builtin/checkout.c:474
 msgid "corrupt index file"
 msgstr "tập tin ghi bảng mục lục bị hỏng"
 
-#: builtin/checkout.c:339 builtin/checkout.c:346
+#: builtin/checkout.c:340 builtin/checkout.c:347
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr "đường dẫn “%s” không được hòa trộn"
 
-#: builtin/checkout.c:495
+#: builtin/checkout.c:496
 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:622
+#: builtin/checkout.c:623
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr "Không thể thực hiện reflog cho “%s”: %s\n"
 
-#: builtin/checkout.c:660
+#: builtin/checkout.c:661
 msgid "HEAD is now at"
 msgstr "HEAD hiện giờ tại"
 
-#: builtin/checkout.c:667
+#: builtin/checkout.c:668
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Đặt lại nhánh “%s”\n"
 
-#: builtin/checkout.c:670
+#: builtin/checkout.c:671
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Đã sẵn sàng trên “%s”\n"
 
-#: builtin/checkout.c:674
+#: builtin/checkout.c:675
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr "Đã chuyển tới và đặt lại nhánh “%s”\n"
 
-#: builtin/checkout.c:676 builtin/checkout.c:1065
+#: builtin/checkout.c:677 builtin/checkout.c:1066
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Đã chuyển đến nhánh mới “%s”\n"
 
-#: builtin/checkout.c:678
+#: builtin/checkout.c:679
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Đã chuyển đến nhánh “%s”\n"
 
-#: builtin/checkout.c:730
+#: builtin/checkout.c:731
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " … và nhiều hơn %d.\n"
 
-#: builtin/checkout.c:736
+#: builtin/checkout.c:737
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -4082,7 +4133,7 @@ msgstr[0] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:755
+#: builtin/checkout.c:756
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -4103,146 +4154,152 @@ msgstr[0] ""
 " git branch <tên_nhánh_mới> %s\n"
 "\n"
 
-#: builtin/checkout.c:791
+#: builtin/checkout.c:792
 msgid "internal error in revision walk"
 msgstr "lỗi nội bộ trong khi di chuyển qua các điểm xét duyệt"
 
-#: builtin/checkout.c:795
+#: builtin/checkout.c:796
 msgid "Previous HEAD position was"
 msgstr "Vị trí trước kia của HEAD là"
 
-#: builtin/checkout.c:822 builtin/checkout.c:1060
+#: builtin/checkout.c:823 builtin/checkout.c:1061
 msgid "You are on a branch yet to be born"
 msgstr "Bạn tại nhánh mà nó chưa hề được sinh ra"
 
-#: builtin/checkout.c:967
+#: builtin/checkout.c:968
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr "chỉ cần một tham chiếu, nhưng lại đưa ra %d."
 
-#: builtin/checkout.c:1006 builtin/worktree.c:210
+#: builtin/checkout.c:1007 builtin/worktree.c:213
 #, c-format
 msgid "invalid reference: %s"
 msgstr "tham chiếu không hợp lệ: %s"
 
-#: builtin/checkout.c:1035
+#: builtin/checkout.c:1036
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr "tham chiếu không phải là một cây:%s"
 
-#: builtin/checkout.c:1074
+#: builtin/checkout.c:1075
 msgid "paths cannot be used with switching branches"
 msgstr "các đường dẫn không thể dùng cùng với các nhánh chuyển"
 
-#: builtin/checkout.c:1077 builtin/checkout.c:1081
+#: builtin/checkout.c:1078 builtin/checkout.c:1082
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr "“%s” không thể được sử dụng với các nhánh chuyển"
 
-#: builtin/checkout.c:1085 builtin/checkout.c:1088 builtin/checkout.c:1093
-#: builtin/checkout.c:1096
+#: builtin/checkout.c:1086 builtin/checkout.c:1089 builtin/checkout.c:1094
+#: builtin/checkout.c:1097
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "“%s” không thể được dùng với “%s”"
 
-#: builtin/checkout.c:1101
+#: builtin/checkout.c:1102
 #, c-format
 msgid "Cannot switch branch to a non-commit '%s'"
 msgstr "Không thể chuyển nhánh đến một thứ không phải là lần chuyển giao “%s”"
 
-#: builtin/checkout.c:1134 builtin/checkout.c:1136 builtin/clone.c:83
-#: builtin/remote.c:159 builtin/remote.c:161 builtin/worktree.c:317
-#: builtin/worktree.c:319
+#: builtin/checkout.c:1135 builtin/checkout.c:1137 builtin/clone.c:83
+#: builtin/remote.c:165 builtin/remote.c:167 builtin/worktree.c:320
+#: builtin/worktree.c:322
 msgid "branch"
 msgstr "nhánh"
 
-#: builtin/checkout.c:1135
+#: builtin/checkout.c:1136
 msgid "create and checkout a new branch"
 msgstr "tạo và checkout một nhánh mới"
 
-#: builtin/checkout.c:1137
+#: builtin/checkout.c:1138
 msgid "create/reset and checkout a branch"
 msgstr "tạo/đặt_lại và checkout một nhánh"
 
-#: builtin/checkout.c:1138
+#: builtin/checkout.c:1139
 msgid "create reflog for new branch"
 msgstr "tạo reflog cho nhánh mới"
 
-#: builtin/checkout.c:1139
+#: builtin/checkout.c:1140
 msgid "detach the HEAD at named commit"
 msgstr "rời bỏ HEAD tại lần chuyển giao danh nghĩa"
 
-#: builtin/checkout.c:1140
+#: builtin/checkout.c:1141
 msgid "set upstream info for new branch"
 msgstr "đặt thông tin thượng nguồn cho nhánh mới"
 
-#: builtin/checkout.c:1142
+#: builtin/checkout.c:1143
 msgid "new-branch"
 msgstr "nhánh-mới"
 
-#: builtin/checkout.c:1142
+#: builtin/checkout.c:1143
 msgid "new unparented branch"
 msgstr "nhánh không cha mới"
 
-#: builtin/checkout.c:1143
+#: builtin/checkout.c:1144
 msgid "checkout our version for unmerged files"
 msgstr ""
 "lấy ra (checkout) phiên bản của chúng ta cho các tập tin chưa được hòa trộn"
 
-#: builtin/checkout.c:1145
+#: builtin/checkout.c:1146
 msgid "checkout their version for unmerged files"
 msgstr ""
 "lấy ra (checkout) phiên bản của chúng họ cho các tập tin chưa được hòa trộn"
 
-#: builtin/checkout.c:1147
+#: builtin/checkout.c:1148
 msgid "force checkout (throw away local modifications)"
 msgstr "ép buộc lấy ra (bỏ đi những thay đổi nội bộ)"
 
-#: builtin/checkout.c:1148
+#: builtin/checkout.c:1149
 msgid "perform a 3-way merge with the new branch"
 msgstr "thực hiện hòa trộn kiểu 3-way với nhánh mới"
 
-#: builtin/checkout.c:1149 builtin/merge.c:227
+#: builtin/checkout.c:1150 builtin/merge.c:227
 msgid "update ignored files (default)"
 msgstr "cập nhật các tập tin bị bỏ qua (mặc định)"
 
-#: builtin/checkout.c:1150 builtin/log.c:1264 parse-options.h:249
+#: builtin/checkout.c:1151 builtin/log.c:1263 parse-options.h:250
 msgid "style"
 msgstr "kiểu"
 
-#: builtin/checkout.c:1151
+#: builtin/checkout.c:1152
 msgid "conflict style (merge or diff3)"
 msgstr "xung đột kiểu (hòa trộn hoặc diff3)"
 
-#: builtin/checkout.c:1154
+#: builtin/checkout.c:1155
 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 thưa thớt"
 
-#: builtin/checkout.c:1156
+#: builtin/checkout.c:1157
 msgid "second guess 'git checkout <no-such-branch>'"
 msgstr "gợi ý thứ hai \"git checkout <không-nhánh-nào-như-vậy>\""
 
-#: builtin/checkout.c:1158
+#: builtin/checkout.c:1159
 msgid "do not check if another worktree is holding the given ref"
 msgstr "không kiểm tra nếu cây làm việc khác đang giữ tham chiếu đã cho"
 
-#: builtin/checkout.c:1181
+#: builtin/checkout.c:1160 builtin/clone.c:57 builtin/fetch.c:112
+#: builtin/merge.c:224 builtin/pull.c:109 builtin/push.c:560
+#: builtin/send-pack.c:168
+msgid "force progress reporting"
+msgstr "ép buộc báo cáo tiến triển công việc"
+
+#: builtin/checkout.c:1191
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr "Các tùy chọn -b, -B và --orphan loại từ lẫn nhau"
 
-#: builtin/checkout.c:1198
+#: builtin/checkout.c:1208
 msgid "--track needs a branch name"
 msgstr "--track cần tên một nhánh"
 
-#: builtin/checkout.c:1203
+#: builtin/checkout.c:1213
 msgid "Missing branch name; try -b"
 msgstr "Thiếu tên nhánh; hãy thử -b"
 
-#: builtin/checkout.c:1239
+#: builtin/checkout.c:1249
 msgid "invalid path specification"
 msgstr "đường dẫn đã cho không hợp lệ"
 
-#: builtin/checkout.c:1246
+#: builtin/checkout.c:1256
 #, c-format
 msgid ""
 "Cannot update paths and switch to branch '%s' at the same time.\n"
@@ -4252,12 +4309,12 @@ msgstr ""
 "Bạn đã có ý định checkout “%s” cái mà không thể được phân giải như là lần "
 "chuyển giao?"
 
-#: builtin/checkout.c:1251
+#: builtin/checkout.c:1261
 #, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
 msgstr "git checkout: --detach không nhận một đối số đường dẫn “%s”"
 
-#: builtin/checkout.c:1255
+#: builtin/checkout.c:1265
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -4296,7 +4353,7 @@ msgstr "Nên bỏ qua kho chứa %s\n"
 msgid "failed to remove %s"
 msgstr "gặp lỗi khi gỡ bỏ %s"
 
-#: builtin/clean.c:317
+#: builtin/clean.c:315
 msgid ""
 "Prompt help:\n"
 "1          - select a numbered item\n"
@@ -4308,7 +4365,7 @@ msgstr ""
 "foo        - chọn mục trên cơ sở tiền tố duy nhất\n"
 "           - (để trống) không chọn gì cả"
 
-#: builtin/clean.c:321
+#: builtin/clean.c:319
 msgid ""
 "Prompt help:\n"
 "1          - select a single item\n"
@@ -4328,36 +4385,36 @@ msgstr ""
 "*          - chọn tất\n"
 "           - (để trống) kết thúc việc chọn"
 
-#: builtin/clean.c:537
+#: builtin/clean.c:535
 #, c-format
 msgid "Huh (%s)?"
 msgstr "Hả (%s)?"
 
-#: builtin/clean.c:679
+#: builtin/clean.c:677
 #, c-format
 msgid "Input ignore patterns>> "
 msgstr "Mẫu để lọc các tập tin đầu vào cần lờ đi>> "
 
-#: builtin/clean.c:716
+#: builtin/clean.c:714
 #, 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"
 
-#: builtin/clean.c:737
+#: builtin/clean.c:735
 msgid "Select items to delete"
 msgstr "Chọn mục muốn xóa"
 
 #. TRANSLATORS: Make sure to keep [y/N] as is
-#: builtin/clean.c:778
+#: builtin/clean.c:776
 #, c-format
 msgid "Remove %s [y/N]? "
 msgstr "Xóa bỏ “%s” [y/N]? "
 
-#: builtin/clean.c:803
+#: builtin/clean.c:801
 msgid "Bye."
 msgstr "Tạm biệt."
 
-#: builtin/clean.c:811
+#: builtin/clean.c:809
 msgid ""
 "clean               - start cleaning\n"
 "filter by pattern   - exclude items from deletion\n"
@@ -4375,61 +4432,61 @@ msgstr ""
 "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"
 
-#: builtin/clean.c:838
+#: builtin/clean.c:836
 msgid "*** Commands ***"
 msgstr "*** Lệnh ***"
 
-#: builtin/clean.c:839
+#: builtin/clean.c:837
 msgid "What now"
 msgstr "Giờ thì sao"
 
-#: builtin/clean.c:847
+#: builtin/clean.c:845
 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:"
 
-#: builtin/clean.c:864
+#: builtin/clean.c:862
 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."
 
-#: builtin/clean.c:895
+#: builtin/clean.c:893
 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ỏ"
 
-#: builtin/clean.c:897
+#: builtin/clean.c:895
 msgid "force"
 msgstr "ép buộc"
 
-#: builtin/clean.c:898
+#: builtin/clean.c:896
 msgid "interactive cleaning"
 msgstr "dọn bằng kiểu tương tác"
 
-#: builtin/clean.c:900
+#: builtin/clean.c:898
 msgid "remove whole directories"
 msgstr "gỡ bỏ toàn bộ thư mục"
 
-#: builtin/clean.c:901 builtin/describe.c:407 builtin/grep.c:714
-#: builtin/ls-files.c:443 builtin/name-rev.c:311 builtin/show-ref.c:187
+#: builtin/clean.c:899 builtin/describe.c:407 builtin/grep.c:709
+#: builtin/ls-files.c:443 builtin/name-rev.c:307 builtin/show-ref.c:182
 msgid "pattern"
 msgstr "mẫu"
 
-#: builtin/clean.c:902
+#: builtin/clean.c:900
 msgid "add <pattern> to ignore rules"
 msgstr "thêm <mẫu> vào trong qui tắc bỏ qua"
 
-#: builtin/clean.c:903
+#: builtin/clean.c:901
 msgid "remove ignored files, too"
 msgstr "đồng thời gỡ bỏ cả các tập tin bị bỏ qua"
 
-#: builtin/clean.c:905
+#: builtin/clean.c:903
 msgid "remove only ignored files"
 msgstr "chỉ gỡ bỏ những tập tin bị bỏ qua"
 
-#: builtin/clean.c:923
+#: builtin/clean.c:921
 msgid "-x and -X cannot be used together"
 msgstr "-x và -X không thể dùng cùng nhau"
 
-#: builtin/clean.c:927
+#: builtin/clean.c:925
 msgid ""
 "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
@@ -4437,7 +4494,7 @@ 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)"
 
-#: builtin/clean.c:930
+#: builtin/clean.c:928
 msgid ""
 "clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
@@ -4449,16 +4506,11 @@ msgstr ""
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<các-tùy-chọn>] [--] <kho> [<t.mục>]"
 
-#: builtin/clone.c:57 builtin/fetch.c:112 builtin/merge.c:224
-#: builtin/pull.c:109 builtin/push.c:560 builtin/send-pack.c:168
-msgid "force progress reporting"
-msgstr "ép buộc báo cáo tiến triển công việc"
-
 #: builtin/clone.c:59
 msgid "don't create a checkout"
 msgstr "không tạo một checkout"
 
-#: builtin/clone.c:60 builtin/clone.c:62 builtin/init-db.c:504
+#: builtin/clone.c:60 builtin/clone.c:62 builtin/init-db.c:469
 msgid "create a bare repository"
 msgstr "tạo kho thuần"
 
@@ -4482,15 +4534,15 @@ msgstr "cài đặt đây là kho chia sẻ"
 msgid "initialize submodules in the clone"
 msgstr "khởi tạo mô-đun-con trong bản sao"
 
-#: builtin/clone.c:75 builtin/init-db.c:501
+#: builtin/clone.c:75 builtin/init-db.c:466
 msgid "template-directory"
 msgstr "thư-mục-mẫu"
 
-#: builtin/clone.c:76 builtin/init-db.c:502
+#: builtin/clone.c:76 builtin/init-db.c:467
 msgid "directory from which templates will be used"
 msgstr "thư mục mà tại đó các mẫu sẽ được dùng"
 
-#: builtin/clone.c:78
+#: builtin/clone.c:78 builtin/submodule--helper.c:179
 msgid "reference repository"
 msgstr "kho tham chiếu"
 
@@ -4514,7 +4566,7 @@ msgstr "lấy ra <nhánh> thay cho HEAD của máy chủ"
 msgid "path to git-upload-pack on the remote"
 msgstr "đường dẫn đến git-upload-pack trên máy chủ"
 
-#: builtin/clone.c:87 builtin/fetch.c:113 builtin/grep.c:659 builtin/pull.c:186
+#: builtin/clone.c:87 builtin/fetch.c:113 builtin/grep.c:654 builtin/pull.c:186
 msgid "depth"
 msgstr "độ-sâu"
 
@@ -4526,11 +4578,11 @@ msgstr "tạo bản sao không đầy đủ cho mức sâu đã cho"
 msgid "clone only one branch, HEAD or --branch"
 msgstr "chỉ nhân bản một nhánh, HEAD hoặc --branch"
 
-#: builtin/clone.c:91 builtin/init-db.c:510
+#: builtin/clone.c:91 builtin/init-db.c:475
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:92 builtin/init-db.c:511
+#: builtin/clone.c:92 builtin/init-db.c:476
 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"
 
@@ -4542,52 +4594,57 @@ msgstr "khóa=giá_trị"
 msgid "set config inside the new repository"
 msgstr "đặt cấu hình bên trong một kho chứa mới"
 
-#: builtin/clone.c:298
+#: builtin/clone.c:300
+#, 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/clone.c:302
 #, 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/clone.c:302
+#: builtin/clone.c:307
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "kho tham chiếu “%s” là nông"
 
-#: builtin/clone.c:305
+#: builtin/clone.c:310
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "kho tham chiếu “%s” bị cấy ghép"
 
-#: builtin/clone.c:370 builtin/diff.c:84
+#: builtin/clone.c:375 builtin/diff.c:84
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "gặp lỗi khi lấy thống kê về “%s”"
 
-#: builtin/clone.c:372
+#: builtin/clone.c:377
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr "%s có tồn tại nhưng lại không phải là một thư mục"
 
-#: builtin/clone.c:386
+#: builtin/clone.c:391
 #, c-format
 msgid "failed to stat %s\n"
 msgstr "gặp lỗi khi lấy thông tin thống kê về %s\n"
 
-#: builtin/clone.c:408
+#: builtin/clone.c:413
 #, c-format
 msgid "failed to create link '%s'"
 msgstr "gặp lỗi khi tạo được liên kết mềm %s"
 
-#: builtin/clone.c:412
+#: builtin/clone.c:417
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr "gặp lỗi khi sao chép tập tin và “%s”"
 
-#: builtin/clone.c:435 builtin/clone.c:619
+#: builtin/clone.c:442 builtin/clone.c:626
 #, c-format
 msgid "done.\n"
 msgstr "hoàn tất.\n"
 
-#: builtin/clone.c:447
+#: builtin/clone.c:454
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
@@ -4597,121 +4654,117 @@ msgstr ""
 "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 checkout -f HEAD”\n"
 
-#: builtin/clone.c:524
+#: builtin/clone.c:531
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr "Không tìm thấy nhánh máy chủ %s để nhân bản (clone)."
 
-#: builtin/clone.c:614
+#: builtin/clone.c:621
 #, c-format
 msgid "Checking connectivity... "
 msgstr "Đang kiểm tra kết nối… "
 
-#: builtin/clone.c:617
+#: builtin/clone.c:624
 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"
 
-#: builtin/clone.c:681
+#: builtin/clone.c:688
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr "refers HEAD máy chủ  chỉ đến ref không tồn tại, không thể lấy ra.\n"
 
-#: builtin/clone.c:712
+#: builtin/clone.c:719
 msgid "unable to checkout working tree"
 msgstr "không thể lấy ra (checkout) cây làm việc"
 
-#: builtin/clone.c:799
+#: builtin/clone.c:808
 msgid "cannot repack to clean up"
 msgstr "không thể đóng gói để dọn dẹp"
 
-#: builtin/clone.c:801
+#: builtin/clone.c:810
 msgid "cannot unlink temporary alternates file"
 msgstr "không thể bỏ liên kết tập tin thay thế tạm thời"
 
-#: builtin/clone.c:831
+#: builtin/clone.c:842
 msgid "Too many arguments."
 msgstr "Có quá nhiều đối số."
 
-#: builtin/clone.c:835
+#: builtin/clone.c:846
 msgid "You must specify a repository to clone."
 msgstr "Bạn phải chỉ định một kho để mà nhân bản (clone)."
 
-#: builtin/clone.c:846
+#: builtin/clone.c:857
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr "tùy chọn --bare và --origin %s xung khắc nhau."
 
-#: builtin/clone.c:849
+#: builtin/clone.c:860
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr "tùy chọn --bare và --separate-git-dir xung khắc nhau."
 
-#: builtin/clone.c:862
+#: builtin/clone.c:873
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "kho chứa “%s” chưa tồn tại"
 
-#: builtin/clone.c:868 builtin/fetch.c:1168
+#: builtin/clone.c:879 builtin/fetch.c:1166
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr "độ sâu %s không phải là một số nguyên dương"
 
-#: builtin/clone.c:878
+#: builtin/clone.c:889
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr "đường dẫn đích “%s” đã có từ trước và không phải là một thư mục rỗng."
 
-#: builtin/clone.c:888
+#: builtin/clone.c:899
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr "cây làm việc “%s” đã sẵn tồn tại rồi."
 
-#: builtin/clone.c:903 builtin/clone.c:914 builtin/worktree.c:218
-#: builtin/worktree.c:245
+#: builtin/clone.c:914 builtin/clone.c:925 builtin/submodule--helper.c:224
+#: builtin/worktree.c:221 builtin/worktree.c:248
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr "không thể tạo các thư mục dẫn đầu của “%s”"
 
-#: builtin/clone.c:906
+#: builtin/clone.c:917
 #, c-format
 msgid "could not create work tree dir '%s'"
 msgstr "không thể tạo cây thư mục làm việc dir “%s”"
 
-#: builtin/clone.c:924
+#: builtin/clone.c:935
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr "Đang nhân bản thành kho chứa bare “%s”…\n"
 
-#: builtin/clone.c:926
+#: builtin/clone.c:937
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Đang nhân bản thành “%s”…\n"
 
-#: builtin/clone.c:951
-msgid "--dissociate given, but there is no --reference"
-msgstr "đã đưa ra --dissociate, nhưng ở đây lại không có --reference"
-
-#: builtin/clone.c:968
+#: builtin/clone.c:975
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr "--depth bị lờ đi khi nhân bản nội bộ; hãy sử dụng file:// để thay thế."
 
-#: builtin/clone.c:971
+#: builtin/clone.c:978
 msgid "source repository is shallow, ignoring --local"
 msgstr "kho nguồn là nông, nên bỏ qua --local"
 
-#: builtin/clone.c:976
+#: builtin/clone.c:983
 msgid "--local is ignored"
 msgstr "--local bị lờ đi"
 
-#: builtin/clone.c:980
+#: builtin/clone.c:987
 #, c-format
 msgid "Don't know how to clone %s"
 msgstr "Không biết làm cách nào để nhân bản (clone) %s"
 
-#: builtin/clone.c:1029 builtin/clone.c:1037
+#: builtin/clone.c:1036 builtin/clone.c:1044
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr "Nhánh máy chủ %s không tìm thấy trong thượng nguồn %s"
 
-#: builtin/clone.c:1040
+#: builtin/clone.c:1047
 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."
 
@@ -4747,15 +4800,15 @@ msgstr "Chèn thêm khoảng trắng giữa các cột"
 msgid "--command must be the first argument"
 msgstr "--command phải là đối số đầu tiên"
 
-#: builtin/commit.c:37
+#: builtin/commit.c:38
 msgid "git commit [<options>] [--] <pathspec>..."
 msgstr "git commit [<các-tùy-chọn>] [--] <pathspec>…"
 
-#: builtin/commit.c:42
+#: builtin/commit.c:43
 msgid "git status [<options>] [--] <pathspec>..."
 msgstr "git status [<các-tùy-chọn>] [--] <pathspec>…"
 
-#: builtin/commit.c:47
+#: builtin/commit.c:48
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -4786,7 +4839,7 @@ msgstr ""
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: builtin/commit.c:60
+#: builtin/commit.c:61
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -4814,7 +4867,7 @@ msgstr ""
 "\n"
 "    git commit --amend --reset-author\n"
 
-#: builtin/commit.c:72
+#: builtin/commit.c:73
 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"
@@ -4827,7 +4880,7 @@ msgstr ""
 "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"
 
-#: builtin/commit.c:77
+#: builtin/commit.c:78
 msgid ""
 "The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
 "If you wish to commit it anyway, use:\n"
@@ -4842,11 +4895,11 @@ msgstr ""
 "    git commit --allow-empty\n"
 "\n"
 
-#: builtin/commit.c:84
+#: builtin/commit.c:85
 msgid "Otherwise, please use 'git reset'\n"
 msgstr "Nếu không được thì dùng lệnh \"git reset\"\n"
 
-#: builtin/commit.c:87
+#: builtin/commit.c:88
 msgid ""
 "If you wish to skip this commit, use:\n"
 "\n"
@@ -4862,68 +4915,68 @@ msgstr ""
 "Thế thì \"git cherry-pick --continue\" sẽ phục hồi lại việc cherry-pick\n"
 "những lần chuyển giao còn lại.\n"
 
-#: builtin/commit.c:304
+#: builtin/commit.c:305
 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:345
+#: builtin/commit.c:346
 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:351
+#: builtin/commit.c:352
 msgid "interactive add failed"
 msgstr "gặp lỗi khi thêm bằng cách tương"
 
-#: builtin/commit.c:364
+#: builtin/commit.c:365
 msgid "unable to update temporary index"
 msgstr "không thể cập nhật bảng mục lục tạm thời"
 
-#: builtin/commit.c:366
+#: builtin/commit.c:367
 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:390 builtin/commit.c:413 builtin/commit.c:462
+#: builtin/commit.c:391 builtin/commit.c:414 builtin/commit.c:463
 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:444
+#: builtin/commit.c:445
 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."
 
-#: builtin/commit.c:446
+#: builtin/commit.c:447
 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."
 
-#: builtin/commit.c:455
+#: builtin/commit.c:456
 msgid "cannot read the index"
 msgstr "không đọc được bảng mục lục"
 
-#: builtin/commit.c:474
+#: builtin/commit.c:475
 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"
 
-#: builtin/commit.c:579
+#: builtin/commit.c:580
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr "lần chuyển giao “%s” thiếu phần tác giả ở đầu"
 
-#: builtin/commit.c:581
+#: builtin/commit.c:582
 #, 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"
 
-#: builtin/commit.c:600
+#: builtin/commit.c:601
 msgid "malformed --author parameter"
 msgstr "đối số cho --author bị dị hình"
 
-#: builtin/commit.c:608
+#: builtin/commit.c:609
 #, c-format
 msgid "invalid date format: %s"
 msgstr "ngày tháng không hợp lệ: %s"
 
-#: builtin/commit.c:652
+#: builtin/commit.c:653
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
@@ -4931,38 +4984,38 @@ 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"
 
-#: builtin/commit.c:689 builtin/commit.c:722 builtin/commit.c:1079
+#: builtin/commit.c:690 builtin/commit.c:723 builtin/commit.c:1080
 #, c-format
 msgid "could not lookup commit %s"
 msgstr "không thể tìm kiếm commit (lần chuyển giao) %s"
 
-#: builtin/commit.c:701 builtin/shortlog.c:273
+#: builtin/commit.c:702 builtin/shortlog.c:273
 #, 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"
 
-#: builtin/commit.c:703
+#: builtin/commit.c:704
 msgid "could not read log from standard input"
 msgstr "không thể đọc nhật ký từ đầu vào tiêu chuẩn"
 
-#: builtin/commit.c:707
+#: builtin/commit.c:708
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "không đọc được tệp nhật ký “%s”"
 
-#: builtin/commit.c:729
+#: builtin/commit.c:730
 msgid "could not read MERGE_MSG"
 msgstr "không thể đọc MERGE_MSG"
 
-#: builtin/commit.c:733
+#: builtin/commit.c:734
 msgid "could not read SQUASH_MSG"
 msgstr "không thể đọc SQUASH_MSG"
 
-#: builtin/commit.c:784
+#: builtin/commit.c:785
 msgid "could not write commit template"
 msgstr "không thể ghi mẫu chuyển giao"
 
-#: builtin/commit.c:802
+#: builtin/commit.c:803
 #, c-format
 msgid ""
 "\n"
@@ -4977,7 +5030,7 @@ msgstr ""
 "\t%s\n"
 "và thử lại.\n"
 
-#: builtin/commit.c:807
+#: builtin/commit.c:808
 #, c-format
 msgid ""
 "\n"
@@ -4992,7 +5045,7 @@ msgstr ""
 "\t%s\n"
 "và thử lại.\n"
 
-#: builtin/commit.c:820
+#: builtin/commit.c:821
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -5003,7 +5056,7 @@ msgstr ""
 "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"
 
-#: builtin/commit.c:827
+#: builtin/commit.c:828
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -5015,156 +5068,157 @@ msgstr ""
 "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"
 
-#: builtin/commit.c:847
+#: builtin/commit.c:848
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%sTác giả:           %.*s <%.*s>"
 
-#: builtin/commit.c:855
+#: builtin/commit.c:856
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%sNgày tháng:        %s"
 
-#: builtin/commit.c:862
+#: builtin/commit.c:863
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%sNgười chuyển giao: %.*s <%.*s>"
 
-#: builtin/commit.c:880
+#: builtin/commit.c:881
 msgid "Cannot read index"
 msgstr "Không đọc được bảng mục lục"
 
-#: builtin/commit.c:937
+#: builtin/commit.c:938
 msgid "Error building trees"
 msgstr "Gặp lỗi khi xây dựng cây"
 
-#: builtin/commit.c:952 builtin/tag.c:495
+#: builtin/commit.c:953 builtin/tag.c:266
 #, 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"
 
-#: builtin/commit.c:1054
+#: builtin/commit.c:1055
 #, 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ó"
 
-#: builtin/commit.c:1069 builtin/commit.c:1309
+#: builtin/commit.c:1070 builtin/commit.c:1310
 #, 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”"
 
-#: builtin/commit.c:1106
+#: builtin/commit.c:1107
 msgid "--long and -z are incompatible"
 msgstr "hai tùy chọn -long và -z không tương thích với nhau"
 
-#: builtin/commit.c:1136
+#: builtin/commit.c:1137
 msgid "Using both --reset-author and --author does not make sense"
 msgstr "Sử dụng cả hai tùy chọn --reset-author và --author không hợp lý"
 
-#: builtin/commit.c:1145
+#: builtin/commit.c:1146
 msgid "You have nothing to amend."
 msgstr "Không có gì để mà “tu bổ” cả."
 
-#: builtin/commit.c:1148
+#: builtin/commit.c:1149
 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ổ”."
 
-#: builtin/commit.c:1150
+#: builtin/commit.c:1151
 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ổ”."
 
-#: builtin/commit.c:1153
+#: builtin/commit.c:1154
 msgid "Options --squash and --fixup cannot be used together"
 msgstr "Các tùy chọn --squash và --fixup không thể sử dụng cùng với nhau"
 
-#: builtin/commit.c:1163
+#: builtin/commit.c:1164
 msgid "Only one of -c/-C/-F/--fixup can be used."
 msgstr ""
 "Chỉ được dùng một trong số tùy chọn trong số các tùy chọn -c/-C/-F/--fixup"
 
-#: builtin/commit.c:1165
+#: builtin/commit.c:1166
 msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
 msgstr "Tùy chọn -m không thể được tổ hợp cùng với -c/-C/-F/--fixup."
 
-#: builtin/commit.c:1173
+#: builtin/commit.c:1174
 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."
 
-#: builtin/commit.c:1190
+#: builtin/commit.c:1191
 msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
 msgstr ""
 "Chỉ một trong các tùy chọn --include/--only/--all/--interactive/--patch được "
 "sử dụng."
 
-#: builtin/commit.c:1192
+#: builtin/commit.c:1193
 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:1194
+#: builtin/commit.c:1195
 msgid "Clever... amending the last one with dirty index."
 msgstr "Giỏi…  “tu bổ” cái cuối với bảng mục lục bẩn."
 
-#: builtin/commit.c:1196
+#: builtin/commit.c:1197
 msgid "Explicit paths specified without -i or -o; assuming --only paths..."
 msgstr ""
 "Những đường dẫn rõ ràng được chỉ ra không có tùy chọn -i cũng không -o; coi "
 "là --only những đường dẫn"
 
-#: builtin/commit.c:1208 builtin/tag.c:730
+#: builtin/commit.c:1209 builtin/tag.c:475
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Chế độ dọn dẹp không hợp lệ %s"
 
-#: builtin/commit.c:1213
+#: builtin/commit.c:1214
 msgid "Paths with -a does not make sense."
 msgstr "Các đường dẫn với tùy chọn -a không hợp lý."
 
-#: builtin/commit.c:1323 builtin/commit.c:1602
+#: builtin/commit.c:1324 builtin/commit.c:1605
 msgid "show status concisely"
 msgstr "hiển thị trạng thái ở dạng súc tích"
 
-#: builtin/commit.c:1325 builtin/commit.c:1604
+#: builtin/commit.c:1326 builtin/commit.c:1607
 msgid "show branch information"
 msgstr "hiển thị thông tin nhánh"
 
-#: builtin/commit.c:1327 builtin/commit.c:1606 builtin/push.c:546
+#: builtin/commit.c:1328 builtin/commit.c:1609 builtin/push.c:546
+#: builtin/worktree.c:423
 msgid "machine-readable output"
 msgstr "kết xuất dạng máy-có-thể-đọc"
 
-#: builtin/commit.c:1330 builtin/commit.c:1608
+#: builtin/commit.c:1331 builtin/commit.c:1611
 msgid "show status in long format (default)"
 msgstr "hiển thị trạng thái ở định dạng dài (mặc định)"
 
-#: builtin/commit.c:1333 builtin/commit.c:1611
+#: builtin/commit.c:1334 builtin/commit.c:1614
 msgid "terminate entries with NUL"
 msgstr "chấm dứt các mục bằng NUL"
 
-#: builtin/commit.c:1335 builtin/commit.c:1614 builtin/fast-export.c:981
-#: builtin/fast-export.c:984 builtin/tag.c:604
+#: builtin/commit.c:1336 builtin/commit.c:1617 builtin/fast-export.c:981
+#: builtin/fast-export.c:984 builtin/tag.c:353
 msgid "mode"
 msgstr "chế độ"
 
-#: builtin/commit.c:1336 builtin/commit.c:1614
+#: builtin/commit.c:1337 builtin/commit.c:1617
 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)"
 
-#: builtin/commit.c:1339
+#: builtin/commit.c:1340
 msgid "show ignored files"
 msgstr "hiển thị các tập tin ẩn"
 
-#: builtin/commit.c:1340 parse-options.h:155
+#: builtin/commit.c:1341 parse-options.h:155
 msgid "when"
 msgstr "khi"
 
-#: builtin/commit.c:1341
+#: builtin/commit.c:1342
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -5172,200 +5226,205 @@ 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:1343
+#: builtin/commit.c:1344
 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:1429
+#: builtin/commit.c:1430
 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/commit.c:1431
+#: builtin/commit.c:1432
 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/commit.c:1476
+#: builtin/commit.c:1477
 msgid "detached HEAD"
 msgstr "đã rời khỏi HEAD"
 
-#: builtin/commit.c:1479
+#: builtin/commit.c:1480
 msgid " (root-commit)"
 msgstr " (root-commit)"
 
-#: builtin/commit.c:1572
+#: builtin/commit.c:1575
 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"
 
-#: builtin/commit.c:1573
+#: builtin/commit.c:1576
 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"
 
-#: builtin/commit.c:1575
+#: builtin/commit.c:1578
 msgid "Commit message options"
 msgstr "Các tùy chọn ghi chú commit"
 
-#: builtin/commit.c:1576 builtin/tag.c:602
+#: builtin/commit.c:1579 builtin/tag.c:351
 msgid "read message from file"
 msgstr "đọc chú thích từ tập tin"
 
-#: builtin/commit.c:1577
+#: builtin/commit.c:1580
 msgid "author"
 msgstr "tác giả"
 
-#: builtin/commit.c:1577
+#: builtin/commit.c:1580
 msgid "override author for commit"
 msgstr "ghi đè tác giả cho commit"
 
-#: builtin/commit.c:1578 builtin/gc.c:268
+#: builtin/commit.c:1581 builtin/gc.c:326
 msgid "date"
 msgstr "ngày tháng"
 
-#: builtin/commit.c:1578
+#: builtin/commit.c:1581
 msgid "override date for commit"
 msgstr "ghi đè ngày tháng cho lần chuyển giao"
 
-#: builtin/commit.c:1579 builtin/merge.c:218 builtin/notes.c:392
-#: builtin/notes.c:555 builtin/tag.c:600
+#: builtin/commit.c:1582 builtin/merge.c:218 builtin/notes.c:392
+#: builtin/notes.c:555 builtin/tag.c:349
 msgid "message"
 msgstr "chú thích"
 
-#: builtin/commit.c:1579
+#: builtin/commit.c:1582
 msgid "commit message"
 msgstr "chú thích của lần chuyển giao"
 
-#: builtin/commit.c:1580
+#: builtin/commit.c:1583 builtin/commit.c:1584 builtin/commit.c:1585
+#: builtin/commit.c:1586 parse-options.h:256 ref-filter.h:79
+msgid "commit"
+msgstr "lần_chuyển_giao"
+
+#: builtin/commit.c:1583
 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"
 
-#: builtin/commit.c:1581
+#: builtin/commit.c:1584
 msgid "reuse message from specified commit"
 msgstr "dùng lại các ghi chú từ lần chuyển giao đã cho"
 
-#: builtin/commit.c:1582
+#: builtin/commit.c:1585
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
 "dùng ghi chú có định dạng autosquash để sửa chữa lần chuyển giao đã chỉ ra"
 
-#: builtin/commit.c:1583
+#: builtin/commit.c:1586
 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"
 
-#: builtin/commit.c:1584
+#: builtin/commit.c:1587
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr ""
 "lần chuyển giao nhận tôi là tác giả (được dùng với tùy chọn -C/-c/--amend)"
 
-#: builtin/commit.c:1585 builtin/log.c:1216 builtin/revert.c:86
+#: builtin/commit.c:1588 builtin/log.c:1215 builtin/revert.c:86
 msgid "add Signed-off-by:"
 msgstr "(nên dùng) thêm dòng Signed-off-by:"
 
-#: builtin/commit.c:1586
+#: builtin/commit.c:1589
 msgid "use specified template file"
 msgstr "sử dụng tập tin mẫu đã cho"
 
-#: builtin/commit.c:1587
+#: builtin/commit.c:1590
 msgid "force edit of commit"
 msgstr "ép buộc sửa lần commit"
 
-#: builtin/commit.c:1588
+#: builtin/commit.c:1591
 msgid "default"
 msgstr "mặc định"
 
-#: builtin/commit.c:1588 builtin/tag.c:605
+#: builtin/commit.c:1591 builtin/tag.c:354
 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/commit.c:1589
+#: builtin/commit.c:1592
 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"
 
-#: builtin/commit.c:1591 builtin/merge.c:226 builtin/pull.c:156
+#: builtin/commit.c:1594 builtin/merge.c:226 builtin/pull.c:156
 #: builtin/revert.c:93
 msgid "GPG sign commit"
 msgstr "ký lần chuyển giao dùng GPG"
 
-#: builtin/commit.c:1594
+#: builtin/commit.c:1597
 msgid "Commit contents options"
 msgstr "Các tùy nội dung ghi chú commit"
 
-#: builtin/commit.c:1595
+#: builtin/commit.c:1598
 msgid "commit all changed files"
 msgstr "chuyển giao tất cả các tập tin có thay đổi"
 
-#: builtin/commit.c:1596
+#: builtin/commit.c:1599
 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"
 
-#: builtin/commit.c:1597
+#: builtin/commit.c:1600
 msgid "interactively add files"
 msgstr "thêm các tập-tin bằng tương tác"
 
-#: builtin/commit.c:1598
+#: builtin/commit.c:1601
 msgid "interactively add changes"
 msgstr "thêm các thay đổi bằng tương tác"
 
-#: builtin/commit.c:1599
+#: builtin/commit.c:1602
 msgid "commit only specified files"
 msgstr "chỉ chuyển giao các tập tin đã chỉ ra"
 
-#: builtin/commit.c:1600
+#: builtin/commit.c:1603
 msgid "bypass pre-commit hook"
 msgstr "vòng qua móc (hook) pre-commit"
 
-#: builtin/commit.c:1601
+#: builtin/commit.c:1604
 msgid "show what would be committed"
 msgstr "hiển thị xem cái gì có thể được chuyển giao"
 
-#: builtin/commit.c:1612
+#: builtin/commit.c:1615
 msgid "amend previous commit"
 msgstr "“tu bổ” (amend) lần commit trước"
 
-#: builtin/commit.c:1613
+#: builtin/commit.c:1616
 msgid "bypass post-rewrite hook"
 msgstr "vòng qua móc (hook) post-rewrite"
 
-#: builtin/commit.c:1618
+#: builtin/commit.c:1621
 msgid "ok to record an empty change"
 msgstr "ok để ghi lại một thay đổi trống rỗng"
 
-#: builtin/commit.c:1620
+#: builtin/commit.c:1623
 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"
 
-#: builtin/commit.c:1649
+#: builtin/commit.c:1652
 msgid "could not parse HEAD commit"
 msgstr "không thể phân tích commit (lần chuyển giao) HEAD"
 
-#: builtin/commit.c:1695
+#: builtin/commit.c:1698
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "Tập tin MERGE_HEAD sai hỏng (%s)"
 
-#: builtin/commit.c:1702
+#: builtin/commit.c:1705
 msgid "could not read MERGE_MODE"
 msgstr "không thể đọc MERGE_MODE"
 
-#: builtin/commit.c:1721
+#: builtin/commit.c:1724
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "không thể đọc phần chú thích (message) của llần chuyển giao: %s"
 
-#: builtin/commit.c:1732
+#: builtin/commit.c:1735
 #, 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"
 
-#: builtin/commit.c:1737
+#: builtin/commit.c:1740
 #, 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"
 
-#: builtin/commit.c:1785
+#: builtin/commit.c:1788
 msgid ""
 "Repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
@@ -5504,11 +5563,11 @@ 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"
 
-#: builtin/config.c:311
+#: builtin/config.c:303
 msgid "unable to parse default color value"
 msgstr "không thể phân tích giá trị màu mặc định"
 
-#: builtin/config.c:449
+#: builtin/config.c:441
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -5523,16 +5582,16 @@ msgstr ""
 "#\tname = %s\n"
 "#\temail = %s\n"
 
-#: builtin/config.c:583
+#: builtin/config.c:575
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr "không thể tạo tập tin cấu hình “%s”"
 
-#: builtin/count-objects.c:55
+#: builtin/count-objects.c:77
 msgid "git count-objects [-v] [-H | --human-readable]"
 msgstr "git count-objects [-v] [-H | --human-readable]"
 
-#: builtin/count-objects.c:65
+#: builtin/count-objects.c:87
 msgid "print sizes in human readable format"
 msgstr "hiển thị kích cỡ theo định dạng dành cho người đọc"
 
@@ -5652,7 +5711,7 @@ msgstr "coi như <n> thẻ gần đây nhất (mặc định: 10)"
 msgid "only consider tags matching <pattern>"
 msgstr "chỉ cân nhắc đến những thẻ khớp với <mẫu>"
 
-#: builtin/describe.c:410 builtin/name-rev.c:318
+#: builtin/describe.c:410 builtin/name-rev.c:314
 msgid "show abbreviated commit object as fallback"
 msgstr "hiển thị đối tượng chuyển giao vắn tắt như là fallback"
 
@@ -5831,7 +5890,7 @@ msgstr "làm sâu hơn lịch sử của bản sao"
 msgid "convert to a complete repository"
 msgstr "chuyển đổi hoàn toàn sang kho git"
 
-#: builtin/fetch.c:118 builtin/log.c:1233
+#: builtin/fetch.c:118 builtin/log.c:1232
 msgid "dir"
 msgstr "tmục"
 
@@ -5873,7 +5932,7 @@ msgstr "[đã cập nhật]"
 msgid "! %-*s %-*s -> %s  (can't fetch in current branch)"
 msgstr "! %-*s %-*s -> %s  (không thể fetch (lấy) về nhánh hiện hành)"
 
-#: builtin/fetch.c:478 builtin/fetch.c:564
+#: builtin/fetch.c:478 builtin/fetch.c:566
 msgid "[rejected]"
 msgstr "[Bị từ chối]"
 
@@ -5897,39 +5956,39 @@ msgstr "[nhánh mới]"
 msgid "[new ref]"
 msgstr "[ref (tham chiếu) mới]"
 
-#: builtin/fetch.c:560
+#: builtin/fetch.c:561
 msgid "unable to update local ref"
 msgstr "không thể cập nhật tham chiếu nội bộ"
 
-#: builtin/fetch.c:560
+#: builtin/fetch.c:561
 msgid "forced update"
 msgstr "cưỡng bức cập nhật"
 
-#: builtin/fetch.c:566
+#: builtin/fetch.c:568
 msgid "(non-fast-forward)"
 msgstr "(không-chuyển-tiếp-nhanh)"
 
-#: builtin/fetch.c:600 builtin/fetch.c:842
+#: builtin/fetch.c:602 builtin/fetch.c:843
 #, c-format
 msgid "cannot open %s: %s\n"
 msgstr "không thể mở %s: %s\n"
 
-#: builtin/fetch.c:609
+#: builtin/fetch.c:611
 #, 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"
 
-#: builtin/fetch.c:627
+#: builtin/fetch.c:629
 #, c-format
 msgid "reject %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"
 
-#: builtin/fetch.c:715 builtin/fetch.c:807
+#: builtin/fetch.c:716 builtin/fetch.c:808
 #, c-format
 msgid "From %.*s\n"
 msgstr "Từ %.*s\n"
 
-#: builtin/fetch.c:726
+#: builtin/fetch.c:727
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -5938,57 +5997,57 @@ 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"
 
-#: builtin/fetch.c:778
+#: builtin/fetch.c:779
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr "   (%s sẽ trở thành không đầu (không được quản lý))"
 
-#: builtin/fetch.c:779
+#: builtin/fetch.c:780
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s đã trở thành không đầu (không được quản lý))"
 
-#: builtin/fetch.c:811
+#: builtin/fetch.c:812
 msgid "[deleted]"
 msgstr "[đã xóa]"
 
-#: builtin/fetch.c:812 builtin/remote.c:1034
+#: builtin/fetch.c:813 builtin/remote.c:1040
 msgid "(none)"
 msgstr "(không)"
 
-#: builtin/fetch.c:832
+#: builtin/fetch.c:833
 #, c-format
 msgid "Refusing to fetch into current branch %s of non-bare repository"
 msgstr ""
 "Từ chối việc lấy vào trong nhánh hiện tại %s của một kho chứa không phải kho "
 "trần (bare)"
 
-#: builtin/fetch.c:851
+#: builtin/fetch.c:852
 #, 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"
 
-#: builtin/fetch.c:854
+#: builtin/fetch.c:855
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr "Tùy chọn \"%s\" bị bỏ qua với %s\n"
 
-#: builtin/fetch.c:910
+#: builtin/fetch.c:911
 #, c-format
 msgid "Don't know how to fetch from %s"
 msgstr "Không biết làm cách nào để lấy về từ %s"
 
-#: builtin/fetch.c:1071
+#: builtin/fetch.c:1072
 #, c-format
 msgid "Fetching %s\n"
 msgstr "Đang lấy “%s” về\n"
 
-#: builtin/fetch.c:1073 builtin/remote.c:90
+#: builtin/fetch.c:1074 builtin/remote.c:96
 #, c-format
 msgid "Could not fetch %s"
 msgstr "không thể “%s” về"
 
-#: builtin/fetch.c:1091
+#: builtin/fetch.c:1092
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
@@ -5996,32 +6055,32 @@ 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ề)."
 
-#: builtin/fetch.c:1114
+#: builtin/fetch.c:1115
 msgid "You need to specify a tag name."
 msgstr "Bạn phải định rõ tên thẻ."
 
-#: builtin/fetch.c:1156
+#: builtin/fetch.c:1157
 msgid "--depth and --unshallow cannot be used together"
 msgstr "tùy chọn --depth và --unshallow không thể sử dụng cùng với nhau"
 
-#: builtin/fetch.c:1158
+#: builtin/fetch.c:1159
 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ý"
 
-#: builtin/fetch.c:1181
+#: builtin/fetch.c:1179
 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"
 
-#: builtin/fetch.c:1183
+#: builtin/fetch.c:1181
 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"
 
-#: builtin/fetch.c:1194
+#: builtin/fetch.c:1192
 #, 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"
 
-#: builtin/fetch.c:1202
+#: builtin/fetch.c:1200
 msgid "Fetching a group and specifying refspecs does not make sense"
 msgstr "Việc lấy về cả một nhóm và chỉ định refspecs không hợp lý"
 
@@ -6032,23 +6091,23 @@ msgstr ""
 "git fmt-merge-msg [-m <chú_thích>] [--log[=<n>] | --no-log] [--file <tập-"
 "tin>]"
 
-#: builtin/fmt-merge-msg.c:670
+#: builtin/fmt-merge-msg.c:667
 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”"
 
-#: builtin/fmt-merge-msg.c:673
+#: builtin/fmt-merge-msg.c:670
 msgid "alias for --log (deprecated)"
 msgstr "bí danh cho --log (không được dùng)"
 
-#: builtin/fmt-merge-msg.c:676
+#: builtin/fmt-merge-msg.c:673
 msgid "text"
 msgstr "văn bản"
 
-#: builtin/fmt-merge-msg.c:677
+#: builtin/fmt-merge-msg.c:674
 msgid "use <text> as start of message"
 msgstr "dùng <văn bản thường> để bắt đầu ghi chú"
 
-#: builtin/fmt-merge-msg.c:678
+#: builtin/fmt-merge-msg.c:675
 msgid "file to read from"
 msgstr "tập tin để đọc dữ liệu từ đó"
 
@@ -6056,95 +6115,115 @@ msgstr "tập tin để đọc dữ liệu từ đó"
 msgid "git for-each-ref [<options>] [<pattern>]"
 msgstr "git for-each-ref [<các-tùy-chọn>] [<mẫu>]"
 
-#: builtin/for-each-ref.c:24
+#: builtin/for-each-ref.c:10
+msgid "git for-each-ref [--points-at <object>]"
+msgstr "git for-each-ref [--points-at <đối tượng>]"
+
+#: builtin/for-each-ref.c:11
+msgid "git for-each-ref [(--merged | --no-merged) [<object>]]"
+msgstr "git branch ([--merged | --no-merged) [<đối_tượng>]"
+
+#: builtin/for-each-ref.c:12
+msgid "git for-each-ref [--contains [<object>]]"
+msgstr "git for-each-ref [--contains [<đối_tượng>]]"
+
+#: builtin/for-each-ref.c:27
 msgid "quote placeholders suitably for shells"
 msgstr "trích dẫn để phù hợp cho hệ vỏ (shell)"
 
-#: builtin/for-each-ref.c:26
+#: builtin/for-each-ref.c:29
 msgid "quote placeholders suitably for perl"
 msgstr "trích dẫn để phù hợp cho perl"
 
-#: builtin/for-each-ref.c:28
+#: builtin/for-each-ref.c:31
 msgid "quote placeholders suitably for python"
 msgstr "trích dẫn để phù hợp cho python"
 
-#: builtin/for-each-ref.c:30
+#: builtin/for-each-ref.c:33
 msgid "quote placeholders suitably for Tcl"
 msgstr "trích dẫn để phù hợp cho Tcl"
 
-#: builtin/for-each-ref.c:33
+#: builtin/for-each-ref.c:36
 msgid "show only <n> matched refs"
 msgstr "hiển thị chỉ <n> tham chiếu khớp"
 
-#: builtin/for-each-ref.c:34
+#: builtin/for-each-ref.c:37 builtin/tag.c:372
 msgid "format to use for the output"
 msgstr "định dạng sẽ dùng cho đầu ra"
 
-#: builtin/for-each-ref.c:35
-msgid "key"
-msgstr "khóa"
+#: builtin/for-each-ref.c:41
+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"
 
-#: builtin/for-each-ref.c:36
-msgid "field name to sort on"
-msgstr "tên trường cần sắp xếp"
+#: builtin/for-each-ref.c:43
+msgid "print only refs that are merged"
+msgstr "chỉ hiển thị những tham chiếu mà nó được hòa trộn"
+
+#: builtin/for-each-ref.c:44
+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"
+
+#: builtin/for-each-ref.c:45
+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"
 
-#: builtin/fsck.c:163 builtin/prune.c:137
+#: builtin/fsck.c:156 builtin/prune.c:140
 msgid "Checking connectivity"
 msgstr "Đang kiểm tra kết nối"
 
-#: builtin/fsck.c:568
+#: builtin/fsck.c:486
 msgid "Checking object directories"
 msgstr "Đang kiểm tra các thư mục đối tượng"
 
-#: builtin/fsck.c:631
+#: builtin/fsck.c:553
 msgid "git fsck [<options>] [<object>...]"
 msgstr "git fsck [<các-tùy-chọn>] [<đối-tượng>…]"
 
-#: builtin/fsck.c:637
+#: builtin/fsck.c:559
 msgid "show unreachable objects"
 msgstr "hiển thị các đối tượng không thể đọc được"
 
-#: builtin/fsck.c:638
+#: builtin/fsck.c:560
 msgid "show dangling objects"
 msgstr "hiển thị các đối tượng không được quản lý"
 
-#: builtin/fsck.c:639
+#: builtin/fsck.c:561
 msgid "report tags"
 msgstr "báo cáo các thẻ"
 
-#: builtin/fsck.c:640
+#: builtin/fsck.c:562
 msgid "report root nodes"
 msgstr "báo cáo node gốc"
 
-#: builtin/fsck.c:641
+#: builtin/fsck.c:563
 msgid "make index objects head nodes"
 msgstr "tạo “index objects head nodes”"
 
-#: builtin/fsck.c:642
+#: builtin/fsck.c:564
 msgid "make reflogs head nodes (default)"
 msgstr "tạo “reflogs head nodes” (mặc định)"
 
-#: builtin/fsck.c:643
+#: builtin/fsck.c:565
 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ế"
 
-#: builtin/fsck.c:644
+#: builtin/fsck.c:566
 msgid "check only connectivity"
 msgstr "chỉ kiểm tra kết nối"
 
-#: builtin/fsck.c:645
+#: builtin/fsck.c:567
 msgid "enable more strict checking"
 msgstr "cho phép kiểm tra hạn chế hơn"
 
-#: builtin/fsck.c:647
+#: builtin/fsck.c:569
 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"
 
-#: builtin/fsck.c:648 builtin/prune.c:107
+#: builtin/fsck.c:570 builtin/prune.c:107
 msgid "show progress"
 msgstr "hiển thị quá trình"
 
-#: builtin/fsck.c:707
+#: builtin/fsck.c:631
 msgid "Checking objects"
 msgstr "Đang kiểm tra các đối tượng"
 
@@ -6152,50 +6231,65 @@ msgstr "Đang kiểm tra các đối tượng"
 msgid "git gc [<options>]"
 msgstr "git gc [<các-tùy-chọn>]"
 
-#: builtin/gc.c:55
+#: builtin/gc.c:72
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr "%s không hợp lệ: “%s”"
 
-#: builtin/gc.c:100
+#: builtin/gc.c:139
 #, c-format
 msgid "insanely long object directory %.*s"
 msgstr "thư mục đối tượng dài một cách điên rồ %.*s"
 
-#: builtin/gc.c:269
+#: builtin/gc.c:290
+#, 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"
+"\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"
+
+#: builtin/gc.c:327
 msgid "prune unreferenced objects"
 msgstr "xóa bỏ các đối tượng không được tham chiếu"
 
-#: builtin/gc.c:271
+#: builtin/gc.c:329
 msgid "be more thorough (increased runtime)"
 msgstr "cẩn thận hơn nữa (tăng thời gian chạy)"
 
-#: builtin/gc.c:272
+#: builtin/gc.c:330
 msgid "enable auto-gc mode"
 msgstr "bật chế độ auto-gc"
 
-#: builtin/gc.c:273
+#: builtin/gc.c:331
 msgid "force running gc even if there may be another gc running"
 msgstr "buộc gc chạy ngay cả khi có tiến trình gc khác đang chạy"
 
-#: builtin/gc.c:315
+#: builtin/gc.c:373
 #, c-format
 msgid "Auto packing the repository in background for optimum performance.\n"
 msgstr ""
 "Tự động đóng gói kho chứa trên nền hệ thống để tối ưu hóa hiệu suất làm "
 "việc.\n"
 
-#: builtin/gc.c:317
+#: builtin/gc.c:375
 #, c-format
 msgid "Auto packing the repository for optimum performance.\n"
 msgstr "Tự động đóng gói kho chứa để tối ưu hóa hiệu suất làm việc.\n"
 
-#: builtin/gc.c:318
+#: builtin/gc.c:376
 #, c-format
 msgid "See \"git help gc\" for manual housekeeping.\n"
 msgstr "Xem \"git help gc\" để có hướng dẫn cụ thể về cách dọn dẹp kho git.\n"
 
-#: builtin/gc.c:336
+#: builtin/gc.c:397
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
@@ -6203,7 +6297,7 @@ msgstr ""
 "gc đang được thực hiện trên máy “%s” pid %<PRIuMAX> (dùng --force nếu không "
 "phải thế)"
 
-#: builtin/gc.c:364
+#: builtin/gc.c:441
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
@@ -6239,202 +6333,198 @@ msgstr "chuyển đến “%c” cần một giá trị bằng số"
 msgid "cannot open '%s'"
 msgstr "không mở được “%s”"
 
-#: builtin/grep.c:638
+#: builtin/grep.c:633
 msgid "search in index instead of in the work tree"
 msgstr "tìm trong bảng mục lục thay vì trong cây làm việc"
 
-#: builtin/grep.c:640
+#: builtin/grep.c:635
 msgid "find in contents not managed by git"
 msgstr "tìm trong nội dung không được quản lý bởi git"
 
-#: builtin/grep.c:642
+#: builtin/grep.c:637
 msgid "search in both tracked and untracked files"
 msgstr "tìm kiếm các tập tin được và chưa được theo dõi dấu vết"
 
-#: builtin/grep.c:644
+#: builtin/grep.c:639
 msgid "ignore files specified via '.gitignore'"
 msgstr "các tập tin bị bỏ qua được chỉ định thông qua “.gitignore”"
 
-#: builtin/grep.c:647
+#: builtin/grep.c:642
 msgid "show non-matching lines"
 msgstr "hiển thị những dòng không khớp với mẫu"
 
-#: builtin/grep.c:649
+#: builtin/grep.c:644
 msgid "case insensitive matching"
 msgstr "phân biệt HOA/thường"
 
-#: builtin/grep.c:651
+#: builtin/grep.c:646
 msgid "match patterns only at word boundaries"
 msgstr "chỉ khớp mẫu tại đường ranh giới từ"
 
-#: builtin/grep.c:653
+#: builtin/grep.c:648
 msgid "process binary files as text"
 msgstr "xử lý tập tin nhị phân như là dạng văn bản thường"
 
-#: builtin/grep.c:655
+#: builtin/grep.c:650
 msgid "don't match patterns in binary files"
 msgstr "không khớp mẫu trong các tập tin nhị phân"
 
-#: builtin/grep.c:658
+#: builtin/grep.c:653
 msgid "process binary files with textconv filters"
 msgstr "xử lý tập tin nhị phân với các bộ lọc “textconv”"
 
-#: builtin/grep.c:660
+#: builtin/grep.c:655
 msgid "descend at most <depth> levels"
-msgstr "giảm xuống ít nhất mức <sâu>"
+msgstr "hạ xuống ít nhất là mức <sâu>"
 
-#: builtin/grep.c:664
+#: builtin/grep.c:659
 msgid "use extended POSIX regular expressions"
 msgstr "dùng biểu thức chính qui POSIX có mở rộng"
 
-#: builtin/grep.c:667
+#: builtin/grep.c:662
 msgid "use basic POSIX regular expressions (default)"
 msgstr "sử dụng biểu thức chính quy kiểu POSIX (mặc định)"
 
-#: builtin/grep.c:670
+#: builtin/grep.c:665
 msgid "interpret patterns as fixed strings"
 msgstr "diễn dịch các mẫu như là chuỗi cố định"
 
-#: builtin/grep.c:673
+#: builtin/grep.c:668
 msgid "use Perl-compatible regular expressions"
 msgstr "sử dụng biểu thức chính quy tương thích Perl"
 
-#: builtin/grep.c:676
+#: builtin/grep.c:671
 msgid "show line numbers"
 msgstr "hiển thị số của dòng"
 
-#: builtin/grep.c:677
+#: builtin/grep.c:672
 msgid "don't show filenames"
 msgstr "không hiển thị tên tập tin"
 
-#: builtin/grep.c:678
+#: builtin/grep.c:673
 msgid "show filenames"
 msgstr "hiển thị các tên tập tin"
 
-#: builtin/grep.c:680
+#: builtin/grep.c:675
 msgid "show filenames relative to top directory"
 msgstr "hiển thị tên tập tin tương đối với thư mục đỉnh (top)"
 
-#: builtin/grep.c:682
+#: builtin/grep.c:677
 msgid "show only filenames instead of matching lines"
 msgstr "chỉ hiển thị tên tập tin thay vì những dòng khớp với mẫu"
 
-#: builtin/grep.c:684
+#: builtin/grep.c:679
 msgid "synonym for --files-with-matches"
 msgstr "đồng nghĩa với --files-with-matches"
 
-#: builtin/grep.c:687
+#: builtin/grep.c:682
 msgid "show only the names of files without match"
 msgstr "chỉ hiển thị tên cho những tập tin không khớp với mẫu"
 
-#: builtin/grep.c:689
+#: builtin/grep.c:684
 msgid "print NUL after filenames"
 msgstr "thêm NUL vào sau tên tập tin"
 
-#: builtin/grep.c:691
+#: builtin/grep.c:686
 msgid "show the number of matches instead of matching lines"
 msgstr "hiển thị số lượng khớp thay vì những dòng khớp với mẫu"
 
-#: builtin/grep.c:692
+#: builtin/grep.c:687
 msgid "highlight matches"
 msgstr "tô sáng phần khớp mẫu"
 
-#: builtin/grep.c:694
+#: builtin/grep.c:689
 msgid "print empty line between matches from different files"
 msgstr "hiển thị dòng trống giữa các lần khớp từ các tập tin khác biệt"
 
-#: builtin/grep.c:696
+#: builtin/grep.c:691
 msgid "show filename only once above matches from same file"
 msgstr ""
 "hiển thị tên tập tin một lần phía trên các lần khớp từ cùng một tập tin"
 
-#: builtin/grep.c:699
+#: builtin/grep.c:694
 msgid "show <n> context lines before and after matches"
 msgstr "hiển thị <n> dòng nội dung phía trước và sau các lần khớp"
 
-#: builtin/grep.c:702
+#: builtin/grep.c:697
 msgid "show <n> context lines before matches"
 msgstr "hiển thị <n> dòng nội dung trước khớp"
 
-#: builtin/grep.c:704
+#: builtin/grep.c:699
 msgid "show <n> context lines after matches"
 msgstr "hiển thị <n> dòng nội dung sau khớp"
 
-#: builtin/grep.c:705
+#: builtin/grep.c:700
 msgid "shortcut for -C NUM"
 msgstr "dạng viết tắt của -C SỐ"
 
-#: builtin/grep.c:708
+#: builtin/grep.c:703
 msgid "show a line with the function name before matches"
 msgstr "hiển thị dòng vói tên hàm trước các lần khớp"
 
-#: builtin/grep.c:710
+#: builtin/grep.c:705
 msgid "show the surrounding function"
 msgstr "hiển thị hàm bao quanh"
 
-#: builtin/grep.c:713
+#: builtin/grep.c:708
 msgid "read patterns from file"
 msgstr "đọc mẫu từ tập-tin"
 
-#: builtin/grep.c:715
+#: builtin/grep.c:710
 msgid "match <pattern>"
 msgstr "match <mẫu>"
 
-#: builtin/grep.c:717
+#: builtin/grep.c:712
 msgid "combine patterns specified with -e"
 msgstr "tổ hợp mẫu được chỉ ra với tùy chọn -e"
 
-#: builtin/grep.c:729
+#: builtin/grep.c:724
 msgid "indicate hit with exit status without output"
 msgstr "đưa ra gợi ý với trạng thái thoát mà không có kết xuất"
 
-#: builtin/grep.c:731
+#: builtin/grep.c:726
 msgid "show only matches from files that match all patterns"
 msgstr "chỉ hiển thị những cái khớp từ tập tin mà nó khớp toàn bộ các mẫu"
 
-#: builtin/grep.c:733
+#: builtin/grep.c:728
 msgid "show parse tree for grep expression"
 msgstr "hiển thị cây phân tích cú pháp cho biểu thức “grep” (tìm kiếm)"
 
-#: builtin/grep.c:737
+#: builtin/grep.c:732
 msgid "pager"
 msgstr "dàn trang"
 
-#: builtin/grep.c:737
+#: builtin/grep.c:732
 msgid "show matching files in the pager"
 msgstr "hiển thị các tập tin khớp trong trang giấy"
 
-#: builtin/grep.c:740
+#: builtin/grep.c:735
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr "cho phép gọi grep(1) (bị bỏ qua bởi lần dịch này)"
 
-#: builtin/grep.c:741 builtin/show-ref.c:189
-msgid "show usage"
-msgstr "hiển thị cách dùng"
-
-#: builtin/grep.c:808
+#: builtin/grep.c:793
 msgid "no pattern given."
 msgstr "chưa chỉ ra mẫu."
 
-#: builtin/grep.c:866
+#: builtin/grep.c:851
 msgid "--open-files-in-pager only works on the worktree"
 msgstr "--open-files-in-pager chỉ làm việc trên cây-làm-việc"
 
-#: builtin/grep.c:892
+#: builtin/grep.c:877
 msgid "--cached or --untracked cannot be used with --no-index."
 msgstr "--cached hay --untracked không được sử dụng với --no-index."
 
-#: builtin/grep.c:897
+#: builtin/grep.c:882
 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 các tùy chọn liên "
 "quan đến revs."
 
-#: builtin/grep.c:900
+#: builtin/grep.c:885
 msgid "--[no-]exclude-standard cannot be used for tracked contents."
 msgstr "--[no-]exclude-standard không thể sử dụng cho nội dung lưu dấu vết."
 
-#: builtin/grep.c:908
+#: builtin/grep.c:893
 msgid "both --cached and trees are given."
 msgstr "cả hai --cached và các cây phải được chỉ ra."
 
@@ -6447,10 +6537,10 @@ msgstr ""
 "[--] <tập-tin>…"
 
 #: builtin/hash-object.c:81
-msgid "git hash-object  --stdin-paths < <list-of-paths>"
-msgstr "git hash-object  --stdin-paths < <danh-sách-đường-dẫn>"
+msgid "git hash-object  --stdin-paths"
+msgstr "git hash-object  --stdin-paths"
 
-#: builtin/hash-object.c:92 builtin/tag.c:614
+#: builtin/hash-object.c:92
 msgid "type"
 msgstr "kiểu"
 
@@ -6521,12 +6611,12 @@ msgstr "Gặp lỗi khi phân tích phiên bản emacsclient."
 msgid "emacsclient version '%d' too old (< 22)."
 msgstr "phiên bản của emacsclient “%d” quá cũ (< 22)."
 
-#: builtin/help.c:130 builtin/help.c:158 builtin/help.c:167 builtin/help.c:175
+#: builtin/help.c:130 builtin/help.c:151 builtin/help.c:160 builtin/help.c:168
 #, c-format
 msgid "failed to exec '%s': %s"
 msgstr "gặp lỗi khi thực thi “%s”: %s"
 
-#: builtin/help.c:215
+#: builtin/help.c:208
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
@@ -6535,7 +6625,7 @@ 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ế."
 
-#: builtin/help.c:227
+#: builtin/help.c:220
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
@@ -6544,61 +6634,61 @@ 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ế."
 
-#: builtin/help.c:354
+#: builtin/help.c:337
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr "“%s”: không rõ chương trình xem man."
 
-#: builtin/help.c:371
+#: builtin/help.c:354
 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"
 
-#: builtin/help.c:379
+#: builtin/help.c:362
 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"
 
-#: builtin/help.c:428
+#: builtin/help.c:411
 msgid "Defining attributes per path"
 msgstr "Định nghĩa các thuộc tính cho mỗi đường dẫn"
 
-#: builtin/help.c:429
+#: builtin/help.c:412
 msgid "Everyday Git With 20 Commands Or So"
 msgstr "Mỗi ngày học 20 lệnh Git hay hơn"
 
-#: builtin/help.c:430
+#: builtin/help.c:413
 msgid "A Git glossary"
 msgstr "Thuật ngữ chuyên môn Git"
 
-#: builtin/help.c:431
+#: builtin/help.c:414
 msgid "Specifies intentionally untracked files to ignore"
 msgstr "Chỉ định các tập tin không cần theo dõi"
 
-#: builtin/help.c:432
+#: builtin/help.c:415
 msgid "Defining submodule properties"
 msgstr "Định nghĩa thuộc tính mô-đun-con"
 
-#: builtin/help.c:433
+#: builtin/help.c:416
 msgid "Specifying revisions and ranges for Git"
 msgstr "Chỉ định điểm xét duyệt và vùng cho Git"
 
-#: builtin/help.c:434
+#: builtin/help.c:417
 msgid "A tutorial introduction to Git (for version 1.5.1 or newer)"
 msgstr "Hướng dẫn cách dùng Git ở mức cơ bản (bản 1.5.1 hay mới hơn)"
 
-#: builtin/help.c:435
+#: builtin/help.c:418
 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/help.c:447
+#: builtin/help.c:430
 msgid "The common Git guides are:\n"
 msgstr "Các chỉ dẫn chung về cách dùng Git là:\n"
 
-#: builtin/help.c:468 builtin/help.c:485
+#: builtin/help.c:451 builtin/help.c:468
 #, c-format
 msgid "usage: %s%s"
 msgstr "cách dùng: %s%s"
 
-#: builtin/help.c:501
+#: builtin/help.c:484
 #, c-format
 msgid "`git %s' is aliased to `%s'"
 msgstr "“git %s” được đặt bí danh thành “%s”"
@@ -6886,87 +6976,62 @@ msgstr "tên tập tin tập tin gói “%s” không được kết thúc bằn
 msgid "--verify with no packfile name given"
 msgstr "dùng tùy chọn --verify mà không đưa ra tên packfile"
 
-#: builtin/init-db.c:36
-#, c-format
-msgid "Could not make %s writable by group"
-msgstr "Không thể làm %s được ghi bởi nhóm"
-
-#: builtin/init-db.c:63
-#, c-format
-msgid "insanely long template name %s"
-msgstr "tên mẫu dài một cách điên rồ %s"
-
-#: builtin/init-db.c:68
+#: builtin/init-db.c:55
 #, c-format
 msgid "cannot stat '%s'"
 msgstr "không thể lấy thông tin thống kê về “%s”"
 
-#: builtin/init-db.c:74
+#: builtin/init-db.c:61
 #, c-format
 msgid "cannot stat template '%s'"
 msgstr "không thể lấy thông tin thống kê về mẫu “%s”"
 
-#: builtin/init-db.c:81
+#: builtin/init-db.c:66
 #, c-format
 msgid "cannot opendir '%s'"
 msgstr "không thể opendir() “%s”"
 
-#: builtin/init-db.c:98
+#: builtin/init-db.c:77
 #, c-format
 msgid "cannot readlink '%s'"
 msgstr "không thể readlink “%s”"
 
-#: builtin/init-db.c:100
-#, c-format
-msgid "insanely long symlink %s"
-msgstr "liên kết mềm dài một cách điên rồ %s"
-
-#: builtin/init-db.c:103
+#: builtin/init-db.c:79
 #, c-format
 msgid "cannot symlink '%s' '%s'"
 msgstr "không thể tạo liên kết mềm (symlink) “%s” “%s”"
 
-#: builtin/init-db.c:107
+#: builtin/init-db.c:85
 #, c-format
 msgid "cannot copy '%s' to '%s'"
 msgstr "không thể sao chép “%s” sang “%s”"
 
-#: builtin/init-db.c:111
+#: builtin/init-db.c:89
 #, c-format
 msgid "ignoring template %s"
 msgstr "đang lờ đi mẫu “%s”"
 
-#: builtin/init-db.c:137
-#, c-format
-msgid "insanely long template path %s"
-msgstr "đường dẫn mẫu “%s” dài một cách điên rồ"
-
-#: builtin/init-db.c:145
+#: builtin/init-db.c:118
 #, c-format
 msgid "templates not found %s"
 msgstr "các mẫu không được tìm thấy %s"
 
-#: builtin/init-db.c:158
+#: builtin/init-db.c:131
 #, c-format
 msgid "not copying templates of a wrong format version %d from '%s'"
 msgstr "không sao chép các mẫu của phiên bản sai định dạng %d từ “%s”"
 
-#: builtin/init-db.c:212
-#, c-format
-msgid "insane git directory %s"
-msgstr "thư mục git điên rồ %s"
-
-#: builtin/init-db.c:344 builtin/init-db.c:347
+#: builtin/init-db.c:309 builtin/init-db.c:312
 #, c-format
 msgid "%s already exists"
 msgstr "%s đã có từ trước rồi"
 
-#: builtin/init-db.c:375
+#: builtin/init-db.c:340
 #, c-format
 msgid "unable to handle file type %d"
 msgstr "không thể xử lý (handle) tập tin kiểu %d"
 
-#: builtin/init-db.c:378
+#: builtin/init-db.c:343
 #, c-format
 msgid "unable to move %s to %s"
 msgstr "không di chuyển được %s vào %s"
@@ -6974,24 +7039,24 @@ msgstr "không di chuyển được %s vào %s"
 #. TRANSLATORS: The first '%s' is either "Reinitialized
 #. existing" or "Initialized empty", the second " shared" or
 #. "", and the last '%s%s' is the verbatim directory name.
-#: builtin/init-db.c:434
+#: builtin/init-db.c:399
 #, c-format
 msgid "%s%s Git repository in %s%s\n"
 msgstr "%s%s kho Git trong %s%s\n"
 
-#: builtin/init-db.c:435
+#: builtin/init-db.c:400
 msgid "Reinitialized existing"
 msgstr "Khởi tạo lại đã sẵn có rồi"
 
-#: builtin/init-db.c:435
+#: builtin/init-db.c:400
 msgid "Initialized empty"
 msgstr "Khởi tạo trống rỗng"
 
-#: builtin/init-db.c:436
+#: builtin/init-db.c:401
 msgid " shared"
 msgstr " đã chia sẻ"
 
-#: builtin/init-db.c:483
+#: builtin/init-db.c:448
 msgid ""
 "git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
 "shared[=<permissions>]] [<directory>]"
@@ -6999,25 +7064,25 @@ msgstr ""
 "git init [-q | --quiet] [--bare] [--template=<thư-mục-tạm>] [--shared[=<các-"
 "quyền>]] [thư-mục]"
 
-#: builtin/init-db.c:506
+#: builtin/init-db.c:471
 msgid "permissions"
 msgstr "các quyền"
 
-#: builtin/init-db.c:507
+#: builtin/init-db.c:472
 msgid "specify that the git repository is to be shared amongst several users"
 msgstr "chỉ ra cái mà kho git được chia sẻ giữa nhiều người dùng"
 
-#: builtin/init-db.c:541 builtin/init-db.c:546
+#: builtin/init-db.c:506 builtin/init-db.c:511
 #, c-format
 msgid "cannot mkdir %s"
 msgstr "không thể mkdir (tạo thư mục): %s"
 
-#: builtin/init-db.c:550
+#: builtin/init-db.c:515
 #, c-format
 msgid "cannot chdir to %s"
 msgstr "không thể chdir (chuyển đổi thư mục) sang %s"
 
-#: builtin/init-db.c:571
+#: builtin/init-db.c:536
 #, c-format
 msgid ""
 "%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
@@ -7026,7 +7091,7 @@ msgstr ""
 "%s (hoặc --work-tree=<thư-mục>) không cho phép không chỉ định %s (hoặc --git-"
 "dir=<thư-mục>)"
 
-#: builtin/init-db.c:599
+#: builtin/init-db.c:564
 #, c-format
 msgid "Cannot access work tree '%s'"
 msgstr "không thể truy cập cây (tree) làm việc “%s”"
@@ -7112,212 +7177,212 @@ msgstr "format.headers không có giá trị cụ thể"
 msgid "name of output directory is too long"
 msgstr "tên của thư mục kết xuất quá dài"
 
-#: builtin/log.c:814
+#: builtin/log.c:813
 #, c-format
 msgid "Cannot open patch file %s"
 msgstr "Không thể mở tập tin miếng vá: %s"
 
-#: builtin/log.c:828
+#: builtin/log.c:827
 msgid "Need exactly one range."
 msgstr "Cần chính xác một vùng."
 
-#: builtin/log.c:838
+#: builtin/log.c:837
 msgid "Not a range."
 msgstr "Không phải là một vùng."
 
-#: builtin/log.c:944
+#: builtin/log.c:943
 msgid "Cover letter needs email format"
 msgstr "“Cover letter” cần cho định dạng thư"
 
-#: builtin/log.c:1023
+#: builtin/log.c:1022
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to điên rồ: %s"
 
-#: builtin/log.c:1051
+#: builtin/log.c:1050
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr "git format-patch [<các-tùy-chọn>] [<kể-từ> | <vùng-xem-xét>]"
 
-#: builtin/log.c:1096
+#: builtin/log.c:1095
 msgid "Two output directories?"
 msgstr "Hai thư mục kết xuất?"
 
-#: builtin/log.c:1211
+#: builtin/log.c:1210
 msgid "use [PATCH n/m] even with a single patch"
 msgstr "dùng [PATCH n/m] ngay cả với miếng vá đơn"
 
-#: builtin/log.c:1214
+#: builtin/log.c:1213
 msgid "use [PATCH] even with multiple patches"
 msgstr "dùng [VÁ] ngay cả với các miếng vá phức tạp"
 
-#: builtin/log.c:1218
+#: builtin/log.c:1217
 msgid "print patches to standard out"
 msgstr "hiển thị miếng vá ra đầu ra chuẩn"
 
-#: builtin/log.c:1220
+#: builtin/log.c:1219
 msgid "generate a cover letter"
 msgstr "tạo bì thư"
 
-#: builtin/log.c:1222
+#: builtin/log.c:1221
 msgid "use simple number sequence for output file names"
 msgstr "sử dụng chỗi dãy số dạng đơn giản cho tên tập-tin xuất ra"
 
-#: builtin/log.c:1223
+#: builtin/log.c:1222
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1224
+#: builtin/log.c:1223
 msgid "use <sfx> instead of '.patch'"
 msgstr "sử dụng <sfx> thay cho “.patch”"
 
-#: builtin/log.c:1226
+#: builtin/log.c:1225
 msgid "start numbering patches at <n> instead of 1"
 msgstr "bắt đầu đánh số miếng vá từ <n> thay vì 1"
 
-#: builtin/log.c:1228
+#: builtin/log.c:1227
 msgid "mark the series as Nth re-roll"
 msgstr "đánh dấu chuỗi nối tiếp dạng thứ-N re-roll"
 
-#: builtin/log.c:1230
+#: builtin/log.c:1229
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr "Dùng [<tiền-tố>] thay cho [VÁ]"
 
-#: builtin/log.c:1233
+#: builtin/log.c:1232
 msgid "store resulting files in <dir>"
 msgstr "lưu các tập tin kết quả trong <t.mục>"
 
-#: builtin/log.c:1236
+#: builtin/log.c:1235
 msgid "don't strip/add [PATCH]"
 msgstr "không strip/add [VÁ]"
 
-#: builtin/log.c:1239
+#: builtin/log.c:1238
 msgid "don't output binary diffs"
 msgstr "không kết xuất diff (những khác biệt) nhị phân"
 
-#: builtin/log.c:1241
+#: builtin/log.c:1240
 msgid "don't include a patch matching a commit upstream"
 msgstr "không bao gồm miếng vá khớp với một lần chuyển giao thượng nguồn"
 
-#: builtin/log.c:1243
+#: builtin/log.c:1242
 msgid "show patch format instead of default (patch + stat)"
 msgstr "hiển thị định dạng miếng vá thay vì mặc định (miếng vá + thống kê)"
 
-#: builtin/log.c:1245
+#: builtin/log.c:1244
 msgid "Messaging"
 msgstr "Lời nhắn"
 
-#: builtin/log.c:1246
+#: builtin/log.c:1245
 msgid "header"
 msgstr "đầu đề thư"
 
-#: builtin/log.c:1247
+#: builtin/log.c:1246
 msgid "add email header"
 msgstr "thêm đầu đề thư"
 
-#: builtin/log.c:1248 builtin/log.c:1250
+#: builtin/log.c:1247 builtin/log.c:1249
 msgid "email"
 msgstr "thư điện tử"
 
-#: builtin/log.c:1248
+#: builtin/log.c:1247
 msgid "add To: header"
 msgstr "thêm To: đầu đề thư"
 
-#: builtin/log.c:1250
+#: builtin/log.c:1249
 msgid "add Cc: header"
 msgstr "thêm Cc: đầu đề thư"
 
-#: builtin/log.c:1252
+#: builtin/log.c:1251
 msgid "ident"
 msgstr "thụt lề"
 
-#: builtin/log.c:1253
+#: builtin/log.c:1252
 msgid "set From address to <ident> (or committer ident if absent)"
 msgstr ""
 "đặt “Địa chỉ gửi” thành <thụ lề> (hoặc thụt lề người commit nếu bỏ quên)"
 
-#: builtin/log.c:1255
+#: builtin/log.c:1254
 msgid "message-id"
 msgstr "message-id"
 
-#: builtin/log.c:1256
+#: builtin/log.c:1255
 msgid "make first mail a reply to <message-id>"
 msgstr "dùng thư đầu tiên để trả lời <message-id>"
 
-#: builtin/log.c:1257 builtin/log.c:1260
+#: builtin/log.c:1256 builtin/log.c:1259
 msgid "boundary"
 msgstr "ranh giới"
 
-#: builtin/log.c:1258
+#: builtin/log.c:1257
 msgid "attach the patch"
 msgstr "đính kèm miếng vá"
 
-#: builtin/log.c:1261
+#: builtin/log.c:1260
 msgid "inline the patch"
 msgstr "dùng miếng vá làm nội dung"
 
-#: builtin/log.c:1265
+#: builtin/log.c:1264
 msgid "enable message threading, styles: shallow, deep"
 msgstr "cho phép luồng lời nhắn, kiểu: “shallow”, “deep”"
 
-#: builtin/log.c:1267
+#: builtin/log.c:1266
 msgid "signature"
 msgstr "chữ ký"
 
-#: builtin/log.c:1268
+#: builtin/log.c:1267
 msgid "add a signature"
 msgstr "thêm chữ ký"
 
-#: builtin/log.c:1270
+#: builtin/log.c:1269
 msgid "add a signature from a file"
 msgstr "thêm chữ ký từ một tập tin"
 
-#: builtin/log.c:1271
+#: builtin/log.c:1270
 msgid "don't print the patch filenames"
 msgstr "không hiển thị các tên tập tin của miếng vá"
 
-#: builtin/log.c:1360
+#: builtin/log.c:1359
 msgid "-n and -k are mutually exclusive."
 msgstr "-n và  -k loại từ lẫn nhau."
 
-#: builtin/log.c:1362
+#: builtin/log.c:1361
 msgid "--subject-prefix and -k are mutually exclusive."
 msgstr "--subject-prefix và -k xung khắc nhau."
 
-#: builtin/log.c:1370
+#: builtin/log.c:1369
 msgid "--name-only does not make sense"
 msgstr "--name-only không hợp lý"
 
-#: builtin/log.c:1372
+#: builtin/log.c:1371
 msgid "--name-status does not make sense"
 msgstr "--name-status không hợp lý"
 
-#: builtin/log.c:1374
+#: builtin/log.c:1373
 msgid "--check does not make sense"
 msgstr "--check không hợp lý"
 
-#: builtin/log.c:1397
+#: builtin/log.c:1396
 msgid "standard output, or directory, which one?"
 msgstr "đầu ra chuẩn, hay thư mục, chọn cái nào?"
 
-#: builtin/log.c:1399
+#: builtin/log.c:1398
 #, c-format
 msgid "Could not create directory '%s'"
 msgstr "Không thể tạo thư mục “%s”"
 
-#: builtin/log.c:1496
+#: builtin/log.c:1495
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr "không thể đọc tập tin chữ ký “%s”"
 
-#: builtin/log.c:1559
+#: builtin/log.c:1558
 msgid "Failed to create output files"
 msgstr "Gặp lỗi khi tạo các tập tin kết xuất"
 
-#: builtin/log.c:1607
+#: builtin/log.c:1606
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<thượng-nguồn> [<đầu> [<giới-hạn>]]]"
 
-#: builtin/log.c:1661
+#: builtin/log.c:1660
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -7325,7 +7390,7 @@ 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/log.c:1672 builtin/log.c:1674 builtin/log.c:1686
+#: builtin/log.c:1671 builtin/log.c:1673 builtin/log.c:1685
 #, c-format
 msgid "Unknown commit %s"
 msgstr "Không hiểu lần chuyển giao %s"
@@ -7429,35 +7494,35 @@ msgstr "hiển thị dữ liệu gỡ lỗi"
 msgid "git ls-tree [<options>] <tree-ish> [<path>...]"
 msgstr "git ls-tree [<các-tùy-chọn>] <tree-ish> [<đường-dẫn>…]"
 
-#: builtin/ls-tree.c:127
+#: builtin/ls-tree.c:128
 msgid "only show trees"
 msgstr "chỉ hiển thị các tree"
 
-#: builtin/ls-tree.c:129
+#: builtin/ls-tree.c:130
 msgid "recurse into subtrees"
 msgstr "đệ quy vào các thư mục con"
 
-#: builtin/ls-tree.c:131
+#: builtin/ls-tree.c:132
 msgid "show trees when recursing"
 msgstr "hiển thị cây khi đệ quy"
 
-#: builtin/ls-tree.c:134
+#: builtin/ls-tree.c:135
 msgid "terminate entries with NUL byte"
 msgstr "chấm dứt mục tin với byte NUL"
 
-#: builtin/ls-tree.c:135
+#: builtin/ls-tree.c:136
 msgid "include object size"
 msgstr "gồm cả kích thước đối tượng"
 
-#: builtin/ls-tree.c:137 builtin/ls-tree.c:139
+#: builtin/ls-tree.c:138 builtin/ls-tree.c:140
 msgid "list only filenames"
 msgstr "chỉ liệt kê tên tập tin"
 
-#: builtin/ls-tree.c:142
+#: builtin/ls-tree.c:143
 msgid "use full path names"
 msgstr "dùng tên đường dẫn đầy đủ"
 
-#: builtin/ls-tree.c:144
+#: builtin/ls-tree.c:145
 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)"
 
@@ -7565,7 +7630,7 @@ msgstr "không thể chạy stash."
 
 #: builtin/merge.c:256
 msgid "stash failed"
-msgstr "stash gặp lỗi"
+msgstr "lệnh tạm cất gặp lỗi"
 
 #: builtin/merge.c:261
 #, c-format
@@ -7665,7 +7730,7 @@ msgstr "Chú thích của lần commit (chuyển giao) bị trống rỗng."
 #: builtin/merge.c:823
 #, c-format
 msgid "Wonderful.\n"
-msgstr "Thần kỳ.\n"
+msgstr "Tuyệt vời.\n"
 
 #: builtin/merge.c:878
 #, c-format
@@ -7696,17 +7761,17 @@ msgstr "Không có thượng nguồn mặc định được định nghĩa cho n
 msgid "No remote-tracking branch for %s from %s"
 msgstr "Không nhánh mạng theo dõi cho %s từ %s"
 
-#: builtin/merge.c:1081
+#: builtin/merge.c:1079
 #, c-format
 msgid "could not close '%s'"
 msgstr "không thể đóng “%s”"
 
-#: builtin/merge.c:1208
+#: builtin/merge.c:1206
 msgid "There is no merge to abort (MERGE_HEAD missing)."
 msgstr ""
 "Ở đây không có lần hòa trộn nào được hủy bỏ giữa chừng cả (thiếu MERGE_HEAD)."
 
-#: builtin/merge.c:1224
+#: builtin/merge.c:1222
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -7714,7 +7779,7 @@ msgstr ""
 "Bạn chưa kết thúc việc hòa trộn (MERGE_HEAD vẫn tồn tại).\n"
 "Hãy chuyển giao các thay đổi trước khi bạn có thể hòa trộn."
 
-#: builtin/merge.c:1231
+#: builtin/merge.c:1229
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -7722,54 +7787,54 @@ msgstr ""
 "Bạn chưa kết thúc việc cherry-pick (CHERRY_PICK_HEAD vẫn tồn tại).\n"
 "Hãy chuyển giao các thay đổi trước khi bạn có thể hòa trộn."
 
-#: builtin/merge.c:1234
+#: builtin/merge.c:1232
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
 msgstr "Bạn chưa kết thúc việc cherry-pick (CHERRY_PICK_HEAD vẫn tồn tại)."
 
-#: builtin/merge.c:1243
+#: builtin/merge.c:1241
 msgid "You cannot combine --squash with --no-ff."
 msgstr "Bạn không thể kết hợp --squash với --no-ff."
 
-#: builtin/merge.c:1251
+#: builtin/merge.c:1249
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr "Không chỉ ra lần chuyển giao và merge.defaultToUpstream chưa được đặt."
 
-#: builtin/merge.c:1268
+#: builtin/merge.c:1266
 msgid "Squash commit into empty head not supported yet"
 msgstr "Squash commit vào một head trống rỗng vẫn chưa được hỗ trợ"
 
-#: builtin/merge.c:1270
+#: builtin/merge.c:1268
 msgid "Non-fast-forward commit does not make sense into an empty head"
 msgstr ""
 "Chuyển giao không-chuyển-tiếp-nhanh không hợp lý ở trong một head trống rỗng"
 
-#: builtin/merge.c:1276
+#: builtin/merge.c:1274
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - không phải là một số thứ chúng tôi có thể hòa trộn"
 
-#: builtin/merge.c:1278
+#: builtin/merge.c:1276
 msgid "Can merge only exactly one commit into empty head"
 msgstr ""
 "Không thể hòa trộn một cách đúng đắn một lần chuyển giao vào một head rỗng"
 
-#: builtin/merge.c:1333
+#: builtin/merge.c:1331
 #, 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/merge.c:1336
+#: builtin/merge.c:1334
 #, 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/merge.c:1339
+#: builtin/merge.c:1337
 #, 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/merge.c:1342
+#: builtin/merge.c:1340
 #, 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"
@@ -7779,46 +7844,46 @@ msgstr "Lần chuyển giao %s có một chữ ký GPG tốt bởi %s\n"
 msgid "Updating %s..%s\n"
 msgstr "Đang cập nhật %s..%s\n"
 
-#: builtin/merge.c:1462
+#: builtin/merge.c:1460
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr "Đang thử hòa trộn kiểu “trivial in-index”…\n"
 
-#: builtin/merge.c:1469
+#: builtin/merge.c:1467
 #, c-format
 msgid "Nope.\n"
 msgstr "Không.\n"
 
-#: builtin/merge.c:1501
+#: builtin/merge.c:1499
 msgid "Not possible to fast-forward, aborting."
 msgstr "Thực hiện lệnh chuyển-tiếp-nhanh là không thể được, đang bỏ qua."
 
-#: builtin/merge.c:1524 builtin/merge.c:1603
+#: builtin/merge.c:1522 builtin/merge.c:1601
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr "Đang tua lại cây thành thời xa xưa…\n"
 
-#: builtin/merge.c:1528
+#: builtin/merge.c:1526
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "Đang thử chiến lược hòa trộn %s…\n"
 
-#: builtin/merge.c:1594
+#: builtin/merge.c:1592
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr "Không có chiến lược hòa trộn nào được nắm giữ (handle) sự hòa trộn.\n"
 
-#: builtin/merge.c:1596
+#: builtin/merge.c:1594
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr "Hòa trộn với chiến lược %s gặp lỗi.\n"
 
-#: builtin/merge.c:1605
+#: builtin/merge.c:1603
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
 msgstr "Sử dụng %s để chuẩn bị giải quyết bằng tay.\n"
 
-#: builtin/merge.c:1617
+#: builtin/merge.c:1615
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -8009,49 +8074,49 @@ msgstr "%s, nguồn=%s, đích=%s"
 msgid "Renaming %s to %s\n"
 msgstr "Đổi tên %s thành %s\n"
 
-#: builtin/mv.c:256 builtin/remote.c:722 builtin/repack.c:362
+#: builtin/mv.c:256 builtin/remote.c:728 builtin/repack.c:365
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "gặp lỗi khi đổi tên “%s”"
 
-#: builtin/name-rev.c:255
+#: builtin/name-rev.c:251
 msgid "git name-rev [<options>] <commit>..."
 msgstr "git name-rev [<các-tùy-chọn>] <commit>…"
 
-#: builtin/name-rev.c:256
+#: builtin/name-rev.c:252
 msgid "git name-rev [<options>] --all"
 msgstr "git name-rev [<các-tùy-chọn>] --all"
 
-#: builtin/name-rev.c:257
+#: builtin/name-rev.c:253
 msgid "git name-rev [<options>] --stdin"
 msgstr "git name-rev [<các-tùy-chọn>] --stdin"
 
-#: builtin/name-rev.c:309
+#: builtin/name-rev.c:305
 msgid "print only names (no SHA-1)"
 msgstr "chỉ hiển thị tên (không SHA-1)"
 
-#: builtin/name-rev.c:310
+#: builtin/name-rev.c:306
 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"
 
-#: builtin/name-rev.c:312
+#: builtin/name-rev.c:308
 msgid "only use refs matching <pattern>"
 msgstr "chỉ sử dụng các tham chiếu khớp với <mẫu>"
 
-#: builtin/name-rev.c:314
+#: builtin/name-rev.c:310
 msgid "list all commits reachable from all refs"
 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"
 
-#: builtin/name-rev.c:315
+#: builtin/name-rev.c:311
 msgid "read from stdin"
 msgstr "đọc từ đầu vào tiêu chuẩn"
 
-#: builtin/name-rev.c:316
+#: builtin/name-rev.c:312
 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/name-rev.c:322
+#: builtin/name-rev.c:318
 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ộ)"
 
@@ -8179,7 +8244,7 @@ msgstr "không thể đọc kết xuất “show”"
 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/notes.c:174 builtin/tag.c:477
+#: builtin/notes.c:174 builtin/tag.c:248
 #, c-format
 msgid "could not create file '%s'"
 msgstr "không thể tạo tập tin “%s”"
@@ -8198,12 +8263,12 @@ msgstr "không thể ghi đối tượng ghi chú (note)"
 msgid "The note contents have been left in %s"
 msgstr "Nội dung ghi chú còn lại %s"
 
-#: builtin/notes.c:232 builtin/tag.c:695
+#: builtin/notes.c:232 builtin/tag.c:440
 #, c-format
 msgid "cannot read '%s'"
 msgstr "không thể đọc “%s”"
 
-#: builtin/notes.c:234 builtin/tag.c:698
+#: builtin/notes.c:234 builtin/tag.c:443
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "không thể mở hay đọc “%s”"
@@ -8211,7 +8276,7 @@ msgstr "không thể mở hay đọc “%s”"
 #: builtin/notes.c:253 builtin/notes.c:304 builtin/notes.c:306
 #: builtin/notes.c:366 builtin/notes.c:421 builtin/notes.c:507
 #: builtin/notes.c:512 builtin/notes.c:590 builtin/notes.c:653
-#: builtin/notes.c:877 builtin/tag.c:711
+#: builtin/notes.c:877 builtin/tag.c:456
 #, 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ệ."
@@ -8245,11 +8310,6 @@ msgstr "nội dung ghi chú (note) nằm trong một chuỗi"
 msgid "note contents in a file"
 msgstr "nội dung ghi chú (note) nằm trong một tập tin"
 
-#: builtin/notes.c:398 builtin/notes.c:401 builtin/notes.c:561
-#: builtin/notes.c:564 builtin/tag.c:630
-msgid "object"
-msgstr "đối tượng"
-
 #: builtin/notes.c:399 builtin/notes.c:562
 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"
@@ -8380,7 +8440,7 @@ msgstr "notes-ref"
 msgid "use notes from <notes-ref>"
 msgstr "dùng “notes” từ <notes-ref>"
 
-#: builtin/notes.c:1012 builtin/remote.c:1588
+#: builtin/notes.c:1012 builtin/remote.c:1647
 #, c-format
 msgid "Unknown subcommand: %s"
 msgstr "Không hiểu câu lệnh con: %s"
@@ -8591,21 +8651,25 @@ msgstr "Đang gỡ các đối tượng trùng lặp"
 msgid "git prune [-n] [-v] [--expire <time>] [--] [<head>...]"
 msgstr "git prune [-n] [-v] [--expire <thời-gian>] [--] [<head>…]"
 
-#: builtin/prune.c:105 builtin/worktree.c:121
+#: builtin/prune.c:105 builtin/worktree.c:124
 msgid "do not remove, show only"
 msgstr "không gỡ bỏ, chỉ hiển thị"
 
-#: builtin/prune.c:106 builtin/worktree.c:122
+#: builtin/prune.c:106 builtin/worktree.c:125
 msgid "report pruned objects"
 msgstr "báo cáo các đối tượng đã prune"
 
-#: builtin/prune.c:109 builtin/worktree.c:124
+#: builtin/prune.c:109 builtin/worktree.c:127
 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/prune.c:123
+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/pull.c:69
-msgid "git pull [options] [<repository> [<refspec>...]]"
-msgstr "git push [các-tùy-chọn] [<kho-chứa> [<refspec>…]]"
+msgid "git pull [<options>] [<repository> [<refspec>...]]"
+msgstr "git pull [<các-tùy-chọn>] [<kho-chứa> [<refspec>…]]"
 
 #: builtin/pull.c:113
 msgid "Options related to merging"
@@ -9179,12 +9243,12 @@ msgstr "bỏ qua áp dụng bộ lọc lấy ra (checkout) thưa thớt"
 msgid "debug unpack-trees"
 msgstr "gỡ lỗi “unpack-trees”"
 
-#: builtin/reflog.c:432
+#: builtin/reflog.c:428
 #, 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ệ"
 
-#: builtin/reflog.c:549 builtin/reflog.c:554
+#: builtin/reflog.c:545 builtin/reflog.c:550
 #, c-format
 msgid "'%s' is not a valid timestamp"
 msgstr "“%s” không phải là dấu thời gian hợp lệ"
@@ -9201,15 +9265,15 @@ msgstr ""
 "git remote add [-t <nhánh>] [-m <master>] [-f] [--tags|--no-tags] [--"
 "mirror=<fetch|push>] <tên> <url>"
 
-#: builtin/remote.c:14 builtin/remote.c:33
+#: builtin/remote.c:14 builtin/remote.c:34
 msgid "git remote rename <old> <new>"
 msgstr "git remote rename <tên-cũ> <tên-mới>"
 
-#: builtin/remote.c:15 builtin/remote.c:38
+#: builtin/remote.c:15 builtin/remote.c:39
 msgid "git remote remove <name>"
 msgstr "git remote remove <tên>"
 
-#: builtin/remote.c:16 builtin/remote.c:43
+#: builtin/remote.c:16 builtin/remote.c:44
 msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
 msgstr "git remote set-head <tên> (-a | --auto | -d | --delete | <nhánh>)"
 
@@ -9231,48 +9295,52 @@ msgstr ""
 msgid "git remote set-branches [--add] <name> <branch>..."
 msgstr "git remote set-branches [--add] <tên> <nhánh>…"
 
-#: builtin/remote.c:21 builtin/remote.c:69
+#: builtin/remote.c:21 builtin/remote.c:70
+msgid "git remote get-url [--push] [--all] <name>"
+msgstr "git remote set-url [--push] [--all] <tên>"
+
+#: builtin/remote.c:22 builtin/remote.c:75
 msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
 msgstr "git remote set-url [--push] <tên> <url-mới> [<url-cũ>]"
 
-#: builtin/remote.c:22 builtin/remote.c:70
+#: builtin/remote.c:23 builtin/remote.c:76
 msgid "git remote set-url --add <name> <newurl>"
 msgstr "git remote set-url --add <tên> <url-mới>"
 
-#: builtin/remote.c:23 builtin/remote.c:71
+#: builtin/remote.c:24 builtin/remote.c:77
 msgid "git remote set-url --delete <name> <url>"
 msgstr "git remote set-url --delete <tên> <url>"
 
-#: builtin/remote.c:28
+#: builtin/remote.c:29
 msgid "git remote add [<options>] <name> <url>"
 msgstr "git remote add [<các-tùy-chọn>] <tên> <url>"
 
-#: builtin/remote.c:48
+#: builtin/remote.c:49
 msgid "git remote set-branches <name> <branch>..."
 msgstr "git remote set-branches <tên> <nhánh>…"
 
-#: builtin/remote.c:49
+#: builtin/remote.c:50
 msgid "git remote set-branches --add <name> <branch>..."
 msgstr "git remote set-branches --add <tên> <nhánh>…"
 
-#: builtin/remote.c:54
+#: builtin/remote.c:55
 msgid "git remote show [<options>] <name>"
 msgstr "git remote show [<các-tùy-chọn>] <tên>"
 
-#: builtin/remote.c:59
+#: builtin/remote.c:60
 msgid "git remote prune [<options>] <name>"
 msgstr "git remote prune [<các-tùy-chọn>] <tên>"
 
-#: builtin/remote.c:64
+#: builtin/remote.c:65
 msgid "git remote update [<options>] [<group> | <remote>]..."
 msgstr "git remote update [<các-tùy-chọn>] [<nhóm> | <máy-chủ>]…"
 
-#: builtin/remote.c:88
+#: builtin/remote.c:94
 #, c-format
 msgid "Updating %s"
 msgstr "Đang cập nhật %s"
 
-#: builtin/remote.c:120
+#: builtin/remote.c:126
 msgid ""
 "--mirror is dangerous and deprecated; please\n"
 "\t use --mirror=fetch or --mirror=push instead"
@@ -9280,96 +9348,96 @@ 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ế"
 
-#: builtin/remote.c:137
+#: builtin/remote.c:143
 #, c-format
 msgid "unknown mirror argument: %s"
 msgstr "không hiểu tham số máy bản sao (mirror): %s"
 
-#: builtin/remote.c:153
+#: builtin/remote.c:159
 msgid "fetch the remote branches"
 msgstr "lấy về các nhánh từ máy chủ"
 
-#: builtin/remote.c:155
+#: builtin/remote.c:161
 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/remote.c:158
+#: builtin/remote.c:164
 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/remote.c:160
+#: builtin/remote.c:166
 msgid "branch(es) to track"
 msgstr "các nhánh để theo dõi"
 
-#: builtin/remote.c:161
+#: builtin/remote.c:167
 msgid "master branch"
 msgstr "nhánh master"
 
-#: builtin/remote.c:162
+#: builtin/remote.c:168
 msgid "push|fetch"
 msgstr "push|fetch"
 
-#: builtin/remote.c:163
+#: builtin/remote.c:169
 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/remote.c:175
+#: builtin/remote.c:181
 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/remote.c:177
+#: builtin/remote.c:183
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr "chỉ định những nhánh để theo dõi chỉ hợp lý với các “fetch mirror”"
 
-#: builtin/remote.c:187 builtin/remote.c:637
+#: builtin/remote.c:193 builtin/remote.c:643
 #, c-format
 msgid "remote %s already exists."
 msgstr "máy chủ %s đã tồn tại rồi."
 
-#: builtin/remote.c:191 builtin/remote.c:641
+#: builtin/remote.c:197 builtin/remote.c:647
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "“%s” không phải tên máy chủ hợp lệ"
 
-#: builtin/remote.c:235
+#: builtin/remote.c:241
 #, c-format
 msgid "Could not setup master '%s'"
 msgstr "Không thể cài đặt nhánh master “%s”"
 
-#: builtin/remote.c:335
+#: builtin/remote.c:341
 #, c-format
 msgid "Could not get fetch map for refspec %s"
 msgstr "Không thể lấy ánh xạ (map) fetch cho đặc tả tham chiếu %s"
 
-#: builtin/remote.c:436 builtin/remote.c:444
+#: builtin/remote.c:442 builtin/remote.c:450
 msgid "(matching)"
 msgstr "(khớp)"
 
-#: builtin/remote.c:448
+#: builtin/remote.c:454
 msgid "(delete)"
 msgstr "(xóa)"
 
-#: builtin/remote.c:588 builtin/remote.c:594 builtin/remote.c:600
+#: builtin/remote.c:594 builtin/remote.c:600 builtin/remote.c:606
 #, c-format
 msgid "Could not append '%s' to '%s'"
 msgstr "Không thể nối thêm “%s” vào “%s”"
 
-#: builtin/remote.c:630 builtin/remote.c:769 builtin/remote.c:869
+#: builtin/remote.c:636 builtin/remote.c:775 builtin/remote.c:875
 #, c-format
 msgid "No such remote: %s"
 msgstr "Không có máy chủ nào như thế: %s"
 
-#: builtin/remote.c:647
+#: builtin/remote.c:653
 #, c-format
 msgid "Could not rename config section '%s' to '%s'"
 msgstr "Không thể đổi tên phần của cấu hình từ “%s” thành “%s”"
 
-#: builtin/remote.c:653 builtin/remote.c:821
+#: builtin/remote.c:659 builtin/remote.c:827
 #, c-format
 msgid "Could not remove config section '%s'"
 msgstr "Không thể gỡ bỏ phần cấu hình “%s”"
 
-#: builtin/remote.c:668
+#: builtin/remote.c:674
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -9380,27 +9448,27 @@ msgstr ""
 "\t%s\n"
 "\tXin hãy cập nhật phần cấu hình một cách thủ công nếu thấy cần thiết."
 
-#: builtin/remote.c:674
+#: builtin/remote.c:680
 #, c-format
 msgid "Could not append '%s'"
 msgstr "Không thể nối thêm “%s”"
 
-#: builtin/remote.c:685
+#: builtin/remote.c:691
 #, c-format
 msgid "Could not set '%s'"
 msgstr "Không thể đặt “%s”"
 
-#: builtin/remote.c:707
+#: builtin/remote.c:713
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "gặp lỗi khi xóa “%s”"
 
-#: builtin/remote.c:741
+#: builtin/remote.c:747
 #, c-format
 msgid "creating '%s' failed"
 msgstr "gặp lỗi khi tạo “%s”"
 
-#: builtin/remote.c:807
+#: builtin/remote.c:813
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -9412,259 +9480,272 @@ msgstr[0] ""
 "đi;\n"
 "để xóa đi, sử dụng:"
 
-#: builtin/remote.c:922
+#: builtin/remote.c:928
 #, c-format
 msgid " new (next fetch will store in remotes/%s)"
 msgstr " mới (lần lấy về tiếp theo sẽ lưu trong remotes/%s)"
 
-#: builtin/remote.c:925
+#: builtin/remote.c:931
 msgid " tracked"
 msgstr " được theo dõi"
 
-#: builtin/remote.c:927
+#: builtin/remote.c:933
 msgid " stale (use 'git remote prune' to remove)"
 msgstr " cũ rích (dùng “git remote prune” để gỡ bỏ)"
 
-#: builtin/remote.c:929
+#: builtin/remote.c:935
 msgid " ???"
 msgstr " ???"
 
-#: builtin/remote.c:970
+#: builtin/remote.c:976
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr "branch.%s.merge không hợp lệ; không thể cải tổ về phía > 1 nhánh"
 
-#: builtin/remote.c:977
+#: builtin/remote.c:983
 #, c-format
 msgid "rebases onto remote %s"
 msgstr "thực hiện rebase trên máy chủ %s"
 
-#: builtin/remote.c:980
+#: builtin/remote.c:986
 #, c-format
 msgid " merges with remote %s"
 msgstr " hòa trộn với máy chủ %s"
 
-#: builtin/remote.c:981
+#: builtin/remote.c:987
 msgid "    and with remote"
 msgstr "    và với máy chủ"
 
-#: builtin/remote.c:983
+#: builtin/remote.c:989
 #, c-format
 msgid "merges with remote %s"
 msgstr "hòa trộn với máy chủ %s"
 
-#: builtin/remote.c:984
+#: builtin/remote.c:990
 msgid "   and with remote"
 msgstr "   và với máy chủ"
 
-#: builtin/remote.c:1030
+#: builtin/remote.c:1036
 msgid "create"
 msgstr "tạo"
 
-#: builtin/remote.c:1033
+#: builtin/remote.c:1039
 msgid "delete"
 msgstr "xóa"
 
-#: builtin/remote.c:1037
+#: builtin/remote.c:1043
 msgid "up to date"
 msgstr "đã cập nhật"
 
-#: builtin/remote.c:1040
+#: builtin/remote.c:1046
 msgid "fast-forwardable"
 msgstr "có-thể-chuyển-tiếp-nhanh"
 
-#: builtin/remote.c:1043
+#: builtin/remote.c:1049
 msgid "local out of date"
 msgstr "dữ liệu nội bộ đã cũ"
 
-#: builtin/remote.c:1050
+#: builtin/remote.c:1056
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr "    %-*s ép buộc thành %-*s (%s)"
 
-#: builtin/remote.c:1053
+#: builtin/remote.c:1059
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr "    %-*s đẩy lên thành %-*s (%s)"
 
-#: builtin/remote.c:1057
+#: builtin/remote.c:1063
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr "    %-*s ép buộc thành %s"
 
-#: builtin/remote.c:1060
+#: builtin/remote.c:1066
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s đẩy lên thành %s"
 
-#: builtin/remote.c:1128
+#: builtin/remote.c:1134
 msgid "do not query remotes"
 msgstr "không truy vấn các máy chủ"
 
-#: builtin/remote.c:1155
+#: builtin/remote.c:1161
 #, c-format
 msgid "* remote %s"
 msgstr "* máy chủ %s"
 
-#: builtin/remote.c:1156
+#: builtin/remote.c:1162
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr "  URL để lấy về: %s"
 
-#: builtin/remote.c:1157 builtin/remote.c:1308
+#: builtin/remote.c:1163 builtin/remote.c:1314
 msgid "(no URL)"
 msgstr "(không có URL)"
 
-#: builtin/remote.c:1166 builtin/remote.c:1168
+#: builtin/remote.c:1172 builtin/remote.c:1174
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  URL để đẩy lên: %s"
 
-#: builtin/remote.c:1170 builtin/remote.c:1172 builtin/remote.c:1174
+#: builtin/remote.c:1176 builtin/remote.c:1178 builtin/remote.c:1180
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  Nhánh HEAD: %s"
 
-#: builtin/remote.c:1176
+#: builtin/remote.c:1182
 #, c-format
 msgid ""
 "  HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
 msgstr "  nhánh HEAD (HEAD máy chủ chưa rõ ràng, có lẽ là một trong số sau):\n"
 
-#: builtin/remote.c:1188
+#: builtin/remote.c:1194
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
 msgstr[0] "  Những nhánh trên máy chủ:%s"
 
-#: builtin/remote.c:1191 builtin/remote.c:1218
+#: builtin/remote.c:1197 builtin/remote.c:1224
 msgid " (status not queried)"
 msgstr " (trạng thái không được yêu cầu)"
 
-#: builtin/remote.c:1200
+#: builtin/remote.c:1206
 msgid "  Local branch configured for 'git pull':"
 msgid_plural "  Local branches configured for 'git pull':"
 msgstr[0] "  Những nhánh nội bộ đã được cấu hình cho lệnh “git pull”:"
 
-#: builtin/remote.c:1208
+#: builtin/remote.c:1214
 msgid "  Local refs will be mirrored by 'git push'"
 msgstr "  refs nội bộ sẽ được phản chiếu bởi lệnh “git push”"
 
-#: builtin/remote.c:1215
+#: builtin/remote.c:1221
 #, c-format
 msgid "  Local ref configured for 'git push'%s:"
 msgid_plural "  Local refs configured for 'git push'%s:"
 msgstr[0] "  Những tham chiếu nội bộ được cấu hình cho lệnh “git push”%s:"
 
-#: builtin/remote.c:1236
+#: builtin/remote.c:1242
 msgid "set refs/remotes/<name>/HEAD according to remote"
 msgstr "đặt refs/remotes/<tên>/HEAD cho phù hợp với máy chủ"
 
-#: builtin/remote.c:1238
+#: builtin/remote.c:1244
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr "xóa refs/remotes/<tên>/HEAD"
 
-#: builtin/remote.c:1253
+#: builtin/remote.c:1259
 msgid "Cannot determine remote HEAD"
 msgstr "Không thể xác định được HEAD máy chủ"
 
-#: builtin/remote.c:1255
+#: builtin/remote.c:1261
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
 msgstr "Nhiều nhánh HEAD máy chủ. Hãy chọn rõ ràng một:"
 
-#: builtin/remote.c:1265
+#: builtin/remote.c:1271
 #, c-format
 msgid "Could not delete %s"
 msgstr "Không thể xóa bỏ %s"
 
-#: builtin/remote.c:1273
+#: builtin/remote.c:1279
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "Không phải là tham chiếu hợp lệ: %s"
 
-#: builtin/remote.c:1275
+#: builtin/remote.c:1281
 #, c-format
 msgid "Could not setup %s"
 msgstr "Không thể cài đặt %s"
 
-#: builtin/remote.c:1293
+#: builtin/remote.c:1299
 #, c-format
 msgid " %s will become dangling!"
 msgstr " %s sẽ trở thành không đầu (không được quản lý)!"
 
-#: builtin/remote.c:1294
+#: builtin/remote.c:1300
 #, c-format
 msgid " %s has become dangling!"
 msgstr " %s đã trở thành không đầu (không được quản lý)!"
 
-#: builtin/remote.c:1304
+#: builtin/remote.c:1310
 #, c-format
 msgid "Pruning %s"
 msgstr "Đang xén bớt %s"
 
-#: builtin/remote.c:1305
+#: builtin/remote.c:1311
 #, c-format
 msgid "URL: %s"
 msgstr "URL: %s"
 
-#: builtin/remote.c:1321
+#: builtin/remote.c:1327
 #, c-format
 msgid " * [would prune] %s"
 msgstr " * [nên xén bớt] %s"
 
-#: builtin/remote.c:1324
+#: builtin/remote.c:1330
 #, c-format
 msgid " * [pruned] %s"
 msgstr " * [đã bị xén] %s"
 
-#: builtin/remote.c:1369
+#: builtin/remote.c:1375
 msgid "prune remotes after fetching"
 msgstr "cắt máy chủ sau khi lấy về"
 
-#: builtin/remote.c:1435 builtin/remote.c:1509
+#: builtin/remote.c:1441 builtin/remote.c:1498 builtin/remote.c:1566
 #, c-format
 msgid "No such remote '%s'"
 msgstr "Không có máy chủ nào có tên “%s”"
 
-#: builtin/remote.c:1455
+#: builtin/remote.c:1461
 msgid "add branch"
 msgstr "thêm nhánh"
 
-#: builtin/remote.c:1462
+#: builtin/remote.c:1468
 msgid "no remote specified"
 msgstr "chưa chỉ ra máy chủ nào"
 
-#: builtin/remote.c:1484
+#: builtin/remote.c:1485
+msgid "query push URLs rather than fetch URLs"
+msgstr "truy vấn đẩy URL thay vì lấy"
+
+#: builtin/remote.c:1487
+msgid "return all URLs"
+msgstr "trả về mọi URL"
+
+#: builtin/remote.c:1515
+#, c-format
+msgid "no URLs configured for remote '%s'"
+msgstr "không có URL nào được cấu hình cho nhánh “%s”"
+
+#: builtin/remote.c:1541
 msgid "manipulate push URLs"
 msgstr "đẩy các “URL” bằng tay"
 
-#: builtin/remote.c:1486
+#: builtin/remote.c:1543
 msgid "add URL"
 msgstr "thêm URL"
 
-#: builtin/remote.c:1488
+#: builtin/remote.c:1545
 msgid "delete URLs"
 msgstr "xóa URLs"
 
-#: builtin/remote.c:1495
+#: builtin/remote.c:1552
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete không hợp lý"
 
-#: builtin/remote.c:1535
+#: builtin/remote.c:1592
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr "Kiểu mẫu URL cũ không hợp lệ: %s"
 
-#: builtin/remote.c:1543
+#: builtin/remote.c:1600
 #, c-format
 msgid "No such URL found: %s"
 msgstr "Không tìm thấy URL như vậy: %s"
 
-#: builtin/remote.c:1545
+#: builtin/remote.c:1602
 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:1559
+#: builtin/remote.c:1616
 msgid "be verbose; must be placed before a subcommand"
 msgstr "chi tiết; phải được đặt trước một lệnh-con"
 
@@ -9736,7 +9817,11 @@ msgstr "kích thước tối đa cho từng tập tin gói"
 msgid "repack objects in packs marked with .keep"
 msgstr "đóng gói lại các đối tượng trong các gói đã đánh dấu bằng .keep"
 
-#: builtin/repack.c:378
+#: builtin/repack.c:197
+msgid "cannot delete packs in a precious-objects repo"
+msgstr "không thể xóa các gói trong một kho đối_tượng_vĩ_đại"
+
+#: builtin/repack.c:381
 #, c-format
 msgid "removing '%s' failed"
 msgstr "gặp lỗi khi xóa bỏ “%s”"
@@ -9832,7 +9917,7 @@ msgid "git rerere [clear | forget <path>... | status | remaining | diff | gc]"
 msgstr ""
 "git rerere [clear | forget <đường dẫn>… | status | remaining | diff | gc]"
 
-#: builtin/rerere.c:57
+#: 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"
 
@@ -9968,23 +10053,23 @@ msgstr "Không thể ghi tập tin lưu bảng mục lục mới."
 msgid "rev-list does not support display of notes"
 msgstr "rev-list không hỗ trợ hiển thị các ghi chú"
 
-#: builtin/rev-parse.c:361
+#: builtin/rev-parse.c:358
 msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
 msgstr "git rev-parse --parseopt [<các-tùy-chọn>] -- [<các tham số>…]"
 
-#: builtin/rev-parse.c:366
+#: builtin/rev-parse.c:363
 msgid "keep the `--` passed as an arg"
 msgstr "giữ lại “--” chuyển sang làm tham số"
 
-#: builtin/rev-parse.c:368
+#: builtin/rev-parse.c:365
 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/rev-parse.c:371
+#: builtin/rev-parse.c:368
 msgid "output in stuck long form"
 msgstr "kết xuất trong định dạng gậy dài"
 
-#: builtin/rev-parse.c:502
+#: builtin/rev-parse.c:499
 msgid ""
 "git rev-parse --parseopt [<options>] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
@@ -10237,7 +10322,7 @@ msgstr "w[,i1[,i2]]"
 msgid "Linewrap output"
 msgstr "Ngắt dòng khi quá dài"
 
-#: builtin/show-branch.c:9
+#: builtin/show-branch.c:10
 msgid ""
 "git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
 "\t\t[--current] [--color[=<when>] | --no-color] [--sparse]\n"
@@ -10249,71 +10334,71 @@ msgstr ""
 "\t\t[--more=<n> | --list | --independent | --merge-base]\n"
 "\t\t[--no-name | --sha1-name] [--topics] [(<rev> | <glob>)…]"
 
-#: builtin/show-branch.c:13
+#: builtin/show-branch.c:14
 msgid "git show-branch (-g | --reflog)[=<n>[,<base>]] [--list] [<ref>]"
 msgstr "git show-branch (-g | --reflog)[=<n>[,<nền>]] [--list] [<ref>]"
 
-#: builtin/show-branch.c:659
+#: builtin/show-branch.c:640
 msgid "show remote-tracking and local branches"
 msgstr "hiển thị các nhánh remote-tracking và nội bộ"
 
-#: builtin/show-branch.c:661
+#: builtin/show-branch.c:642
 msgid "show remote-tracking branches"
 msgstr "hiển thị các nhánh remote-tracking"
 
-#: builtin/show-branch.c:663
+#: builtin/show-branch.c:644
 msgid "color '*!+-' corresponding to the branch"
 msgstr "màu “*!+-” tương ứng với nhánh"
 
-#: builtin/show-branch.c:665
+#: builtin/show-branch.c:646
 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/show-branch.c:667
+#: builtin/show-branch.c:648
 msgid "synonym to more=-1"
 msgstr "đồng nghĩa với more=-1"
 
-#: builtin/show-branch.c:668
+#: builtin/show-branch.c:649
 msgid "suppress naming strings"
 msgstr "chặn các chuỗi đặt tên"
 
-#: builtin/show-branch.c:670
+#: builtin/show-branch.c:651
 msgid "include the current branch"
 msgstr "bao gồm nhánh hiện hành"
 
-#: builtin/show-branch.c:672
+#: builtin/show-branch.c:653
 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/show-branch.c:674
+#: builtin/show-branch.c:655
 msgid "show possible merge bases"
 msgstr "hiển thị mọi cơ sở có thể dùng để hòa trộn"
 
-#: builtin/show-branch.c:676
+#: builtin/show-branch.c:657
 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/show-branch.c:678
+#: builtin/show-branch.c:659
 msgid "show commits in topological order"
 msgstr "hiển thị các lần chuyển giao theo thứ tự tôpô"
 
-#: builtin/show-branch.c:681
+#: builtin/show-branch.c:662
 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/show-branch.c:683
+#: builtin/show-branch.c:664
 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/show-branch.c:685
+#: builtin/show-branch.c:666
 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/show-branch.c:688
+#: builtin/show-branch.c:669
 msgid "<n>[,<base>]"
 msgstr "<n>[,<cơ_sở>]"
 
-#: builtin/show-branch.c:689
+#: builtin/show-branch.c:670
 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)"
 
@@ -10326,45 +10411,140 @@ msgstr ""
 "hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<mẫu>…] "
 
 #: builtin/show-ref.c:11
-msgid "git show-ref --exclude-existing[=<pattern>] < <ref-list>"
-msgstr "git show-ref --exclude-existing[=<mẫu>] < <ref-list>"
+msgid "git show-ref --exclude-existing[=<pattern>]"
+msgstr "git show-ref --exclude-existing[=<mẫu>]"
 
-#: builtin/show-ref.c:170
+#: builtin/show-ref.c:165
 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/show-ref.c:171
+#: builtin/show-ref.c:166
 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/show-ref.c:172
+#: builtin/show-ref.c:167
 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/show-ref.c:175 builtin/show-ref.c:177
+#: builtin/show-ref.c:170 builtin/show-ref.c:172
 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/show-ref.c:179
+#: builtin/show-ref.c:174
 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/show-ref.c:181
+#: builtin/show-ref.c:176
 msgid "only show SHA1 hash using <n> digits"
 msgstr "chỉ hiển thị mã băm SHA1 sử dụng <n> chữ số"
 
-#: builtin/show-ref.c:185
+#: builtin/show-ref.c:180
 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/show-ref.c:187
+#: builtin/show-ref.c:182
 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/stripspace.c:17
+msgid "git stripspace [-s | --strip-comments]"
+msgstr "git stripspace [-s | --strip-comments]"
+
+#: builtin/stripspace.c:18
+msgid "git stripspace [-c | --comment-lines]"
+msgstr "git stripspace [-c | --comment-lines]"
+
+#: builtin/stripspace.c:35
+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/stripspace.c:38
+msgid "prepend comment character and blank to each line"
+msgstr "treo trước ký tự ghi chú và để trắng cho từng dòng"
+
+#: builtin/submodule--helper.c:79 builtin/submodule--helper.c:167
+msgid "alternative anchor for relative paths"
+msgstr "điểm neo thay thế cho các đường dẫn tương đối"
+
+#: builtin/submodule--helper.c:84
+msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
+msgstr "git submodule--helper list [--prefix=<đường/dẫn>] [<đường/dẫn>…]"
+
+#: builtin/submodule--helper.c:114
+msgid "git submodule--helper name <path>"
+msgstr "git submodule--helper name <đường/dẫn>"
+
+#: builtin/submodule--helper.c:120
+#, 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”"
+
+#: builtin/submodule--helper.c:170
+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/submodule--helper.c:173
+msgid "name of the new submodule"
+msgstr "tên của mô-đun-con mới"
+
+#: builtin/submodule--helper.c:176
+msgid "url where to clone the submodule from"
+msgstr "url nơi mà nhân bản mô-đun-con từ đó"
+
+#: builtin/submodule--helper.c:182
+msgid "depth for shallow clones"
+msgstr "chiều sâu lịch sử khi tạo bản sao"
+
+#: builtin/submodule--helper.c:188
+msgid ""
+"git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
+"<repository>] [--name <name>] [--url <url>][--depth <depth>] [--] [<path>...]"
+msgstr ""
+"git submodule--helper clone [--prefix=<đường/dẫn>] [--quiet] [--reference "
+"<kho>] [--name <tên>] [--url <url>][--depth <đường/dẫn>] [--] [<đường/dẫn>…]"
+
+#: builtin/submodule--helper.c:202 builtin/submodule--helper.c:208
+#: builtin/submodule--helper.c:216
+#, c-format
+msgid "could not create directory '%s'"
+msgstr "không thể tạo thư mục “%s”"
+
+#: builtin/submodule--helper.c:204
+#, c-format
+msgid "clone of '%s' into submodule path '%s' failed"
+msgstr "Nhân bản “%s” vào đường dẫn mô-đun-con “%s” gặp lỗi"
+
+#: builtin/submodule--helper.c:227
+#, c-format
+msgid "cannot open file '%s'"
+msgstr "không thể mở tập tin “%s”"
+
+#: builtin/submodule--helper.c:232
+#, c-format
+msgid "could not close file %s"
+msgstr "không thể đóng tập tin %s"
+
+#: builtin/submodule--helper.c:247
+#, 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/submodule--helper.c:273
+msgid "fatal: submodule--helper subcommand must be called with a subcommand"
+msgstr ""
+"lỗi nghiêm trọng: lệnh con submodule--helper phải được gói với một lệnh con"
+
+#: builtin/submodule--helper.c:280
+#, c-format
+msgid "fatal: '%s' is not a valid submodule--helper subcommand"
+msgstr "lỗi nghiêm trọng: “%s” không phải là lệnh con submodule--helper hợp lệ"
+
 #: builtin/symbolic-ref.c:7
 msgid "git symbolic-ref [<options>] <name> [<ref>]"
 msgstr "git symbolic-ref [<các-tùy-chọn>] <tên> [<t.chiếu>]"
@@ -10393,7 +10573,7 @@ msgstr "lý do"
 msgid "reason of the update"
 msgstr "lý do cập nhật"
 
-#: builtin/tag.c:22
+#: builtin/tag.c:23
 msgid ""
 "git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>] <tagname> "
 "[<head>]"
@@ -10401,49 +10581,44 @@ msgstr ""
 "git tag [-a | -s | -u <key-id>] [-f] [-m <msg>|-F <tập-tin>] <tên-thẻ> "
 "[<head>]"
 
-#: builtin/tag.c:23
+#: builtin/tag.c:24
 msgid "git tag -d <tagname>..."
 msgstr "git tag -d <tên-thẻ>…"
 
-#: builtin/tag.c:24
+#: builtin/tag.c:25
 msgid ""
 "git tag -l [-n[<num>]] [--contains <commit>] [--points-at <object>]\n"
-"\t\t[<pattern>...]"
+"\t\t[--format=<format>] [--[no-]merged [<commit>]] [<pattern>...]"
 msgstr ""
 "git tag -l [-n[<số>]] [--contains <lần_chuyển_giao>] [--points-at <đối-"
 "tượng>]\n"
-"\t\t[<mẫu>…]"
+"\t\t[--format=<định dạng>] [--[no-]merged [<lần_chuyển_giao>]] [<mẫu>…]"
 
-#: builtin/tag.c:26
+#: builtin/tag.c:27
 msgid "git tag -v <tagname>..."
 msgstr "git tag -v <tên-thẻ>…"
 
-#: builtin/tag.c:69
-#, c-format
-msgid "malformed object at '%s'"
-msgstr "đối tượng dị hình tại “%s”"
-
-#: builtin/tag.c:301
+#: builtin/tag.c:80
 #, c-format
 msgid "tag name too long: %.*s..."
 msgstr "tên thẻ quá dài: %.*s…"
 
-#: builtin/tag.c:306
+#: builtin/tag.c:85
 #, c-format
 msgid "tag '%s' not found."
 msgstr "không tìm thấy tìm thấy thẻ “%s”."
 
-#: builtin/tag.c:321
+#: builtin/tag.c:100
 #, c-format
 msgid "Deleted tag '%s' (was %s)\n"
 msgstr "Thẻ đã bị xóa “%s” (từng là %s)\n"
 
-#: builtin/tag.c:333
+#: builtin/tag.c:112
 #, c-format
 msgid "could not verify the tag '%s'"
 msgstr "không thể thẩm tra thẻ “%s”"
 
-#: builtin/tag.c:343
+#: builtin/tag.c:122
 #, c-format
 msgid ""
 "\n"
@@ -10456,7 +10631,7 @@ msgstr ""
 "  %s\n"
 "Những dòng được bắt đầu bằng “%c” sẽ được bỏ qua.\n"
 
-#: builtin/tag.c:347
+#: builtin/tag.c:126
 #, c-format
 msgid ""
 "\n"
@@ -10471,153 +10646,138 @@ msgstr ""
 "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:371
-#, c-format
-msgid "unsupported sort specification '%s'"
-msgstr "không hỗ trợ đặc tả sắp xếp “%s”"
-
-#: builtin/tag.c:373
-#, c-format
-msgid "unsupported sort specification '%s' in variable '%s'"
-msgstr "không hỗ trợ đặc tả sắp xếp “%s” trong biến “%s”"
-
-#: builtin/tag.c:428
+#: builtin/tag.c:199
 msgid "unable to sign the tag"
 msgstr "không thể ký thẻ"
 
-#: builtin/tag.c:430
+#: builtin/tag.c:201
 msgid "unable to write tag file"
 msgstr "không thể ghi vào tập tin lưu thẻ"
 
-#: builtin/tag.c:455
+#: builtin/tag.c:226
 msgid "bad object type."
 msgstr "kiểu đối tượng sai."
 
-#: builtin/tag.c:468
+#: builtin/tag.c:239
 msgid "tag header too big."
 msgstr "phần đầu thẻ quá lớn."
 
-#: builtin/tag.c:504
+#: builtin/tag.c:275
 msgid "no tag message?"
 msgstr "không có chú thích gì cho cho thẻ à?"
 
-#: builtin/tag.c:510
+#: builtin/tag.c:281
 #, 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/tag.c:559
-msgid "switch 'points-at' requires an object"
-msgstr "chuyển đến “points-at” yêu cần một đối tượng"
-
-#: builtin/tag.c:561
-#, c-format
-msgid "malformed object name '%s'"
-msgstr "tên đối tượng dị hình “%s”"
-
-#: builtin/tag.c:590
+#: builtin/tag.c:339
 msgid "list tag names"
 msgstr "chỉ liệt kê tên các thẻ"
 
-#: builtin/tag.c:592
+#: builtin/tag.c:341
 msgid "print <n> lines of each tag message"
 msgstr "hiển thị <n> dòng cho mỗi ghi chú"
 
-#: builtin/tag.c:594
+#: builtin/tag.c:343
 msgid "delete tags"
 msgstr "xóa thẻ"
 
-#: builtin/tag.c:595
+#: builtin/tag.c:344
 msgid "verify tags"
 msgstr "thẩm tra thẻ"
 
-#: builtin/tag.c:597
+#: builtin/tag.c:346
 msgid "Tag creation options"
 msgstr "Tùy chọn tạo thẻ"
 
-#: builtin/tag.c:599
+#: builtin/tag.c:348
 msgid "annotated tag, needs a message"
 msgstr "để chú giải cho thẻ, cần một lời ghi chú"
 
-#: builtin/tag.c:601
+#: builtin/tag.c:350
 msgid "tag message"
 msgstr "phần chú thích cho thẻ"
 
-#: builtin/tag.c:603
+#: builtin/tag.c:352
 msgid "annotated and GPG-signed tag"
 msgstr "thẻ chú giải và ký kiểu GPG"
 
-#: builtin/tag.c:607
+#: builtin/tag.c:356
 msgid "use another key to sign the tag"
 msgstr "dùng kháo khác để ký thẻ"
 
-#: builtin/tag.c:608
+#: builtin/tag.c:357
 msgid "replace the tag if exists"
 msgstr "thay thế nếu thẻ đó đã có trước"
 
-#: builtin/tag.c:609 builtin/update-ref.c:368
+#: builtin/tag.c:358 builtin/update-ref.c:368
 msgid "create a reflog"
 msgstr "tạo một reflog"
 
-#: builtin/tag.c:611
+#: builtin/tag.c:360
 msgid "Tag listing options"
 msgstr "Các tùy chọn liệt kê thẻ"
 
-#: builtin/tag.c:612
+#: builtin/tag.c:361
 msgid "show tag list in columns"
 msgstr "hiển thị danh sách thẻ trong các cột"
 
-#: builtin/tag.c:614
-msgid "sort tags"
-msgstr "sắp xếp các thẻ"
-
-#: builtin/tag.c:619 builtin/tag.c:625
+#: builtin/tag.c:362 builtin/tag.c:363
 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"
 
-#: builtin/tag.c:631
+#: builtin/tag.c:364
+msgid "print only tags that are merged"
+msgstr "chỉ hiển thị những thẻ mà nó được hòa trộn"
+
+#: builtin/tag.c:365
+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"
+
+#: builtin/tag.c:370
 msgid "print only tags of the object"
 msgstr "chỉ hiển thị các thẻ của đối tượng"
 
-#: builtin/tag.c:657
+#: builtin/tag.c:399
 msgid "--column and -n are incompatible"
 msgstr "--column và -n xung khắc nhau"
 
-#: builtin/tag.c:669
-msgid "--sort and -n are incompatible"
-msgstr "--sort và -n xung khắc nhau"
-
-#: builtin/tag.c:676
+#: builtin/tag.c:419
 msgid "-n option is only allowed with -l."
 msgstr "tùy chọn -n chỉ cho phép dùng với -l."
 
-#: builtin/tag.c:678
+#: builtin/tag.c:421
 msgid "--contains option is only allowed with -l."
 msgstr "tùy chọn --contains chỉ cho phép dùng với -l."
 
-#: builtin/tag.c:680
+#: builtin/tag.c:423
 msgid "--points-at option is only allowed with -l."
 msgstr "tùy chọn --points-at chỉ cho phép dùng với -l."
 
-#: builtin/tag.c:688
+#: builtin/tag.c:425
+msgid "--merged and --no-merged option are only allowed with -l"
+msgstr "tùy chọn --merged và --no-merged chỉ cho phép dùng với -l."
+
+#: builtin/tag.c:433
 msgid "only one -F or -m option is allowed."
 msgstr "chỉ có một tùy chọn -F hoặc -m là được phép."
 
-#: builtin/tag.c:708
+#: builtin/tag.c:453
 msgid "too many params"
 msgstr "quá nhiều đối số"
 
-#: builtin/tag.c:714
+#: builtin/tag.c:459
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr "“%s” không phải thẻ hợp lệ."
 
-#: builtin/tag.c:719
+#: builtin/tag.c:464
 #, c-format
 msgid "tag '%s' already exists"
 msgstr "Thẻ “%s” đã tồn tại rồi"
 
-#: builtin/tag.c:744
+#: builtin/tag.c:489
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "Đã cập nhật thẻ “%s” (trước là %s)\n"
@@ -10882,76 +11042,80 @@ msgstr "git verify-tag [-v | --verbose] <thẻ>…"
 msgid "print tag contents"
 msgstr "hiển thị nội dung của thẻ"
 
-#: builtin/worktree.c:13
-msgid "git worktree add [<options>] <path> <branch>"
-msgstr "git worktree add [<các-tùy-chọn>] <đường-dẫn> <nhánh>"
+#: builtin/worktree.c:15
+msgid "git worktree add [<options>] <path> [<branch>]"
+msgstr "git worktree add [<các-tùy-chọn>] <đường-dẫn> [<nhánh>]"
 
-#: builtin/worktree.c:14
+#: builtin/worktree.c:16
 msgid "git worktree prune [<options>]"
 msgstr "git worktree prune [<các-tùy-chọn>]"
 
-#: builtin/worktree.c:36
+#: builtin/worktree.c:17
+msgid "git worktree list [<options>]"
+msgstr "git worktree list [<các-tùy-chọn>]"
+
+#: builtin/worktree.c:39
 #, c-format
 msgid "Removing worktrees/%s: not a valid directory"
 msgstr "Gỡ bỏ cây làm việc/%s: không phải là thư mục hợp lệ"
 
-#: builtin/worktree.c:42
+#: builtin/worktree.c:45
 #, c-format
 msgid "Removing worktrees/%s: gitdir file does not exist"
 msgstr "Gỡ bỏ cây làm việc/%s: không có tập tin gitdir"
 
-#: builtin/worktree.c:47
+#: builtin/worktree.c:50
 #, c-format
 msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
 msgstr "Gỡ bỏ cây làm việc/%s: không thể đọc tập tin gitdir (%s)"
 
-#: builtin/worktree.c:58
+#: builtin/worktree.c:61
 #, c-format
 msgid "Removing worktrees/%s: invalid gitdir file"
 msgstr "Gỡ bỏ cây làm việc/%s: tập tin gitdir không hợp lệ"
 
-#: builtin/worktree.c:74
+#: builtin/worktree.c:77
 #, c-format
 msgid "Removing worktrees/%s: gitdir file points to non-existent location"
 msgstr "Gỡ bỏ cây làm việc/%s: tập tin gitdir chỉ đến vị trí không tồn tại"
 
-#: builtin/worktree.c:109
+#: builtin/worktree.c:112
 #, c-format
 msgid "failed to remove: %s"
 msgstr "gặp lỗi khi gỡ bỏ: %s"
 
-#: builtin/worktree.c:198
+#: builtin/worktree.c:201
 #, c-format
 msgid "'%s' already exists"
 msgstr "“%s” đã có từ trước rồi"
 
-#: builtin/worktree.c:232
+#: builtin/worktree.c:235
 #, c-format
 msgid "could not create directory of '%s'"
 msgstr "không thể tạo thư mục của “%s”"
 
-#: builtin/worktree.c:268
+#: builtin/worktree.c:271
 #, c-format
 msgid "Preparing %s (identifier %s)"
 msgstr "Đang chuẩn bị %s (định danh %s)"
 
-#: builtin/worktree.c:316
+#: builtin/worktree.c:319
 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/worktree.c:318
+#: builtin/worktree.c:321
 msgid "create a new branch"
 msgstr "tạo nhánh mới"
 
-#: builtin/worktree.c:320
+#: builtin/worktree.c:323
 msgid "create or reset a branch"
 msgstr "tạo hay đặt lại một nhánh"
 
-#: builtin/worktree.c:321
+#: builtin/worktree.c:324
 msgid "detach HEAD at named commit"
 msgstr "rời bỏ HEAD tại lần chuyển giao theo tên"
 
-#: builtin/worktree.c:328
+#: builtin/worktree.c:331
 msgid "-b, -B, and --detach are mutually exclusive"
 msgstr "Các tùy chọn -b, -B, và --detach loại từ lẫn nhau"
 
@@ -11100,48 +11264,48 @@ msgstr "ngày hết hạn"
 msgid "no-op (backward compatibility)"
 msgstr "no-op (tương thích ngược)"
 
-#: parse-options.h:236
+#: parse-options.h:237
 msgid "be more verbose"
 msgstr "chi tiết hơn nữa"
 
-#: parse-options.h:238
+#: parse-options.h:239
 msgid "be more quiet"
 msgstr "im lặng hơn nữa"
 
-#: parse-options.h:244
+#: parse-options.h:245
 msgid "use <n> digits to display SHA-1s"
 msgstr "sử dụng <n> chữ số để hiển thị SHA-1s"
 
-#: rerere.h:28
+#: rerere.h:38
 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"
 
-#: git-bisect.sh:50
+#: git-bisect.sh:55
 msgid "You need to start by \"git bisect start\""
 msgstr "Bạn cần khởi đầu bằng \"git bisect start\""
 
 #. TRANSLATORS: Make sure to include [Y] and [n] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-bisect.sh:56
+#: git-bisect.sh:61
 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]? "
 
-#: git-bisect.sh:99
+#: git-bisect.sh:122
 #, sh-format
 msgid "unrecognised option: '$arg'"
 msgstr "không công nhận tùy chọn: “$arg”"
 
-#: git-bisect.sh:103
+#: git-bisect.sh:126
 #, sh-format
 msgid "'$arg' does not appear to be a valid revision"
 msgstr "”$arg” không có vẻ như là một điểm xét duyệt hợp lệ"
 
-#: git-bisect.sh:132
+#: git-bisect.sh:155
 msgid "Bad HEAD - I need a HEAD"
 msgstr "HEAD sai - Tôi cần một HEAD"
 
-#: git-bisect.sh:145
+#: git-bisect.sh:168
 #, sh-format
 msgid ""
 "Checking out '$start_head' failed. Try 'git bisect reset <valid-branch>'."
@@ -11149,39 +11313,39 @@ msgstr ""
 "Việc lấy “$start_head” ra gặp lỗi. Hãy thử \"git bisect reset <nhánh_hợp_lệ>"
 "\"."
 
-#: git-bisect.sh:155
+#: git-bisect.sh:178
 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"
 
-#: git-bisect.sh:159
+#: git-bisect.sh:182
 msgid "Bad HEAD - strange symbolic ref"
 msgstr "HEAD sai - tham chiếu mềm kỳ lạ"
 
-#: git-bisect.sh:211
+#: git-bisect.sh:234
 #, sh-format
 msgid "Bad bisect_write argument: $state"
 msgstr "Đối số bisect_write sai: $state"
 
-#: git-bisect.sh:240
+#: git-bisect.sh:263
 #, sh-format
 msgid "Bad rev input: $arg"
 msgstr "Đầu vào rev sai: $arg"
 
-#: git-bisect.sh:255
+#: git-bisect.sh:278
 msgid "Please call 'bisect_state' with at least one argument."
 msgstr "Hãy gọi lệnhl “bisect_state” với ít nhất một đối số."
 
-#: git-bisect.sh:267
+#: git-bisect.sh:290
 #, sh-format
 msgid "Bad rev input: $rev"
 msgstr "Đầu vào rev sai: $rev"
 
-#: git-bisect.sh:276
+#: git-bisect.sh:299
 #, sh-format
 msgid "'git bisect $TERM_BAD' can take only one argument."
 msgstr "“git bisect $TERM_BAD” có thể lấy chỉ một đối số."
 
-#: git-bisect.sh:299
+#: git-bisect.sh:322
 #, sh-format
 msgid "Warning: bisecting only with a $TERM_BAD commit."
 msgstr "Cảnh báo: chỉ thực hiện việc bisect với một lần chuyển giao $TERM_BAD."
@@ -11189,11 +11353,11 @@ msgstr "Cảnh báo: chỉ thực hiện việc bisect với một lần chuyể
 #. TRANSLATORS: Make sure to include [Y] and [n] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-bisect.sh:305
+#: git-bisect.sh:328
 msgid "Are you sure [Y/n]? "
 msgstr "Bạn có chắc chắn chưa [Y/n]? "
 
-#: git-bisect.sh:317
+#: git-bisect.sh:340
 #, sh-format
 msgid ""
 "You need to give me at least one $bad_syn and one $good_syn revision.\n"
@@ -11203,7 +11367,7 @@ msgstr ""
 "(Bạn có thể sử dụng \"git bisect $bad_syn\" và \"git bisect $good_syn\" cho "
 "cái đó.)"
 
-#: git-bisect.sh:320
+#: git-bisect.sh:343
 #, sh-format
 msgid ""
 "You need to start by \"git bisect start\".\n"
@@ -11216,16 +11380,16 @@ msgstr ""
 "(Bạn có thể sử dụng \"git bisect $bad_syn\" và \"git bisect $good_syn\" cho "
 "chúng.)"
 
-#: git-bisect.sh:391 git-bisect.sh:521
+#: git-bisect.sh:414 git-bisect.sh:546
 msgid "We are not bisecting."
 msgstr "Chúng tôi không bisect."
 
-#: git-bisect.sh:398
+#: git-bisect.sh:421
 #, sh-format
 msgid "'$invalid' is not a valid commit"
 msgstr "”$invalid” không phải là lần chuyển giao hợp lệ"
 
-#: git-bisect.sh:407
+#: git-bisect.sh:430
 #, sh-format
 msgid ""
 "Could not check out original HEAD '$branch'.\n"
@@ -11234,25 +11398,25 @@ msgstr ""
 "Không thể check-out HEAD nguyên thủy của “$branch”.\n"
 "Hãy thử “git bisect reset <lần-chuyển-giao>”."
 
-#: git-bisect.sh:435
+#: git-bisect.sh:458
 msgid "No logfile given"
 msgstr "Chưa chỉ ra tập tin ghi nhật ký"
 
-#: git-bisect.sh:436
+#: git-bisect.sh:459
 #, sh-format
 msgid "cannot read $file for replaying"
 msgstr "không thể đọc $file để thao diễn lại"
 
-#: git-bisect.sh:455
+#: git-bisect.sh:480
 msgid "?? what are you talking about?"
 msgstr "?? bạn đang nói gì thế?"
 
-#: git-bisect.sh:467
+#: git-bisect.sh:492
 #, sh-format
 msgid "running $command"
 msgstr "đang chạy lệnh $command"
 
-#: git-bisect.sh:474
+#: git-bisect.sh:499
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -11261,11 +11425,11 @@ msgstr ""
 "chạy bisect gặp lỗi:\n"
 "mã trả về $res từ lệnh “$command” là < 0 hoặc >= 128"
 
-#: git-bisect.sh:500
+#: git-bisect.sh:525
 msgid "bisect run cannot continue any more"
 msgstr "bisect không thể tiếp tục thêm được nữa"
 
-#: git-bisect.sh:506
+#: git-bisect.sh:531
 #, sh-format
 msgid ""
 "bisect run failed:\n"
@@ -11274,15 +11438,47 @@ msgstr ""
 "chạy bisect gặp lỗi:\n"
 "”bisect_state $state” đã thoát ra với mã lỗi $res"
 
-#: git-bisect.sh:513
+#: git-bisect.sh:538
 msgid "bisect run success"
 msgstr "bisect chạy thành công"
 
-#: git-bisect.sh:548
+#: git-bisect.sh:565
+msgid "please use two different terms"
+msgstr "vui lòng dùng hai thời kỳ khác nhau"
+
+#: git-bisect.sh:575
+#, sh-format
+msgid "'$term' is not a valid term"
+msgstr "“$term” không phải là thời kỳ hợp lệ"
+
+#: git-bisect.sh:578
+#, sh-format
+msgid "can't use the builtin command '$term' as a term"
+msgstr "không thể dùng lệnh tích hợp “$term” như là một thời kỳ"
+
+#: git-bisect.sh:587 git-bisect.sh:593
+#, sh-format
+msgid "can't change the meaning of term '$term'"
+msgstr "không thể thay đổi nghĩa của thời kỳ “$term”"
+
+#: git-bisect.sh:606
 #, sh-format
 msgid "Invalid command: you're currently in a $TERM_BAD/$TERM_GOOD bisect."
 msgstr "Lệnh không hợp lệ: bạn hiện đang ở bisect $TERM_BAD/$TERM_GOOD."
 
+#: git-bisect.sh:636
+msgid "no terms defined"
+msgstr "chưa định nghĩa thời kỳ nào"
+
+#: git-bisect.sh:653
+#, sh-format
+msgid ""
+"invalid argument $arg 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ệ $arg cho “git bisect terms”.\n"
+"Các tùy chọn hỗ trợ là: --term-good|--term-old và --term-bad|--term-new."
+
 #: git-rebase.sh:57
 msgid ""
 "When you have resolved this problem, run \"git rebase --continue\".\n"
@@ -11326,25 +11522,25 @@ msgstr ""
 "Hình như đang trong quá trình thực hiện lệnh git-am. Không thể chạy lệnh "
 "rebase."
 
-#: git-rebase.sh:351
+#: git-rebase.sh:354
 msgid "The --exec option must be used with the --interactive option"
 msgstr "Tùy chọn --exec phải được sử dụng cùng với tùy chọn --interactive"
 
-#: git-rebase.sh:356
+#: git-rebase.sh:359
 msgid "No rebase in progress?"
 msgstr "Không có tiến trình rebase nào phải không?"
 
-#: git-rebase.sh:367
+#: git-rebase.sh:370
 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."
 
-#: git-rebase.sh:374
+#: git-rebase.sh:377
 msgid "Cannot read HEAD"
 msgstr "Không thể đọc HEAD"
 
-#: git-rebase.sh:377
+#: git-rebase.sh:380
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -11352,12 +11548,12 @@ 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"
 
-#: git-rebase.sh:395
+#: git-rebase.sh:398
 #, sh-format
 msgid "Could not move back to $head_name"
 msgstr "Không thể quay trở lại $head_name"
 
-#: git-rebase.sh:414
+#: git-rebase.sh:417
 #, sh-format
 msgid ""
 "It seems that there is already a $state_dir_base directory, and\n"
@@ -11369,75 +11565,73 @@ msgid ""
 "and run me again.  I am stopping in case you still have something\n"
 "valuable there."
 msgstr ""
-"Hình như là ở đây sẵn có một thư mục $state_dir_base directory, và\n"
+"Hình như là ở đây sẵn có một thư mục $state_dir_base, 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$cmd_live_rebase\n"
 "Nếu không phải thế, hãy thử\n"
 "\t$cmd_clear_stale_rebase\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"
-"\n"
-"TÔI: là lệnh bạn vừa gọi!"
+"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."
 
-#: git-rebase.sh:465
+#: git-rebase.sh:468
 #, sh-format
 msgid "invalid upstream $upstream_name"
 msgstr "thượng nguồn không hợp lệ $upstream_name"
 
-#: git-rebase.sh:489
+#: git-rebase.sh:492
 #, sh-format
 msgid "$onto_name: there are more than one merge bases"
 msgstr "$onto_name: ở đây có nhiều hơn một nền móng hòa trộn"
 
-#: git-rebase.sh:492 git-rebase.sh:496
+#: git-rebase.sh:495 git-rebase.sh:499
 #, sh-format
 msgid "$onto_name: there is no merge base"
 msgstr "$onto_name: ở đây không có nền móng hòa trộn nào"
 
-#: git-rebase.sh:501
+#: git-rebase.sh:504
 #, sh-format
 msgid "Does not point to a valid commit: $onto_name"
 msgstr "Không chỉ đến một lần chuyển giao không hợp lệ: $onto_name"
 
-#: git-rebase.sh:524
+#: git-rebase.sh:527
 #, sh-format
 msgid "fatal: no such branch: $branch_name"
 msgstr "nghiêm trọng: không có nhánh như thế: $branch_name"
 
-#: git-rebase.sh:557
+#: git-rebase.sh:560
 msgid "Cannot autostash"
 msgstr "Không thể autostash"
 
-#: git-rebase.sh:562
+#: git-rebase.sh:565
 #, sh-format
 msgid "Created autostash: $stash_abbrev"
 msgstr "Đã tạo autostash: $stash_abbrev"
 
-#: git-rebase.sh:566
+#: git-rebase.sh:569
 msgid "Please commit or stash them."
-msgstr "Xin hãy commit hoặc tạm cất (stash) chúng."
+msgstr "Xin hãy chuyển giao hoặc tạm cất (stash) chúng."
 
-#: git-rebase.sh:586
+#: git-rebase.sh:589
 #, sh-format
 msgid "Current branch $branch_name is up to date."
 msgstr "Nhánh hiện tại $branch_name đã được cập nhật rồi."
 
-#: git-rebase.sh:590
+#: git-rebase.sh:593
 #, sh-format
 msgid "Current branch $branch_name is up to date, rebase forced."
 msgstr "Nhánh hiện tại $branch_name đã được cập nhật rồi, lệnh rebase ép buộc."
 
-#: git-rebase.sh:601
+#: git-rebase.sh:604
 #, sh-format
 msgid "Changes from $mb to $onto:"
 msgstr "Thay đổi từ $mb thành $onto:"
 
-#: git-rebase.sh:610
+#: git-rebase.sh:613
 msgid "First, rewinding head to replay your work on top of it..."
 msgstr "Trước tiên, di chuyển head để xem lại các công việc trên đỉnh của nó…"
 
-#: git-rebase.sh:620
+#: git-rebase.sh:623
 #, sh-format
 msgid "Fast-forwarded $branch_name to $onto_name."
 msgstr "Chuyển-tiếp-nhanh $branch_name thành $onto_name."
@@ -11512,118 +11706,100 @@ msgstr "Không thể ghi lại trạng thái hiện hành"
 msgid "Cannot remove worktree changes"
 msgstr "Không thể gỡ bỏ các thay đổi cây-làm-việc"
 
-#: git-stash.sh:387
+#: git-stash.sh:405
 #, sh-format
 msgid "unknown option: $opt"
 msgstr "không hiểu tùy chọn: $opt"
 
-#: git-stash.sh:397
+#: git-stash.sh:415
 msgid "No stash found."
 msgstr "Không tìm thấy lần chuyển giao cất đi (stash) nào."
 
-#: git-stash.sh:404
+#: git-stash.sh:422
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr "Chỉ ra quá nhiều điểm xét duyệt: $REV"
 
-#: git-stash.sh:410
+#: git-stash.sh:428
 #, sh-format
 msgid "$reference is not a valid reference"
 msgstr "$reference không phải là tham chiếu hợp lệ"
 
-#: git-stash.sh:438
+#: git-stash.sh:456
 #, sh-format
 msgid "'$args' is not a stash-like commit"
 msgstr "“$args” không phải là lần chuyển giao kiểu-stash (cất đi)"
 
-#: git-stash.sh:449
+#: git-stash.sh:467
 #, sh-format
 msgid "'$args' is not a stash reference"
 msgstr "”$args” không phải tham chiếu đến stash"
 
-#: git-stash.sh:457
+#: git-stash.sh:475
 msgid "unable to refresh index"
 msgstr "không thể làm tươi mới bảng mục lục"
 
-#: git-stash.sh:461
+#: git-stash.sh:479
 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"
 
-#: git-stash.sh:469
+#: git-stash.sh:487
 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."
 
-#: git-stash.sh:471
+#: git-stash.sh:489
 msgid "Could not save index tree"
 msgstr "Không thể ghi lại cây chỉ mục"
 
-#: git-stash.sh:505
+#: git-stash.sh:523
 msgid "Cannot unstage modified files"
 msgstr "Không thể bỏ ra khỏi bệ phóng các tập tin đã được sửa chữa"
 
-#: git-stash.sh:520
+#: git-stash.sh:538
 msgid "Index was not unstashed."
 msgstr "Bảng mục lục đã không được bỏ stash."
 
-#: git-stash.sh:543
+#: git-stash.sh:561
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr "Đã xóa ${REV} ($s)"
 
-#: git-stash.sh:544
+#: git-stash.sh:562
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr "${REV}: Không thể xóa bỏ mục stash"
 
-#: git-stash.sh:552
+#: git-stash.sh:570
 msgid "No branch name specified"
 msgstr "Chưa chỉ ra tên của nhánh"
 
-#: git-stash.sh:624
+#: git-stash.sh:642
 msgid "(To restore them type \"git stash apply\")"
 msgstr "(Để phục hồi lại chúng hãy gõ \"git stash apply\")"
 
-#: git-submodule.sh:95
+#: git-submodule.sh:104
 #, sh-format
 msgid "cannot strip one component off url '$remoteurl'"
 msgstr "không thể tháo bỏ một thành phần ra khỏi “$remoteurl” url"
 
-#: git-submodule.sh:237
-#, sh-format
-msgid "No submodule mapping found in .gitmodules for path '$sm_path'"
-msgstr ""
-"Không tìm thấy ánh xạ (mapping) mô-đun-con trong .gitmodules cho đường dẫn "
-"“$sm_path”"
-
-#: git-submodule.sh:287
-#, sh-format
-msgid "Clone of '$url' into submodule path '$sm_path' failed"
-msgstr "Nhân bản “$url” vào đường dẫn mô-đun-con “$sm_path” gặp lỗi"
-
-#: git-submodule.sh:296
-#, sh-format
-msgid "Gitdir '$a' is part of the submodule path '$b' or vice versa"
-msgstr ""
-"Gitdir “$a” là bộ phận của đường dẫn mô-đun-con “$b” hoặc \"vice versa\""
-
-#: git-submodule.sh:406
+#: git-submodule.sh:281
 msgid "Relative path can only be used from the toplevel of the working tree"
 msgstr ""
 "Đường dẫn tương đối chỉ có thể dùng từ thư mục ở mức cao nhất của cây làm "
 "việc"
 
-#: git-submodule.sh:416
+#: git-submodule.sh:291
 #, sh-format
 msgid "repo URL: '$repo' must be absolute or begin with ./|../"
 msgstr ""
 "repo URL: “$repo” phải là đường dẫn tuyệt đối hoặc là bắt đầu bằng ./|../"
 
-#: git-submodule.sh:433
+#: git-submodule.sh:308
 #, sh-format
 msgid "'$sm_path' already exists in the index"
 msgstr "”$sm_path” thực sự đã tồn tại ở bảng mục lục rồi"
 
-#: git-submodule.sh:437
+#: git-submodule.sh:312
 #, sh-format
 msgid ""
 "The following path is ignored by one of your .gitignore files:\n"
@@ -11635,36 +11811,36 @@ msgstr ""
 "$sm_path\n"
 "Sử dụng -f nếu bạn thực sự muốn thêm nó vào."
 
-#: git-submodule.sh:455
+#: git-submodule.sh:330
 #, sh-format
 msgid "Adding existing repo at '$sm_path' to the index"
 msgstr "Đang thêm repo có sẵn tại “$sm_path” vào bảng mục lục"
 
-#: git-submodule.sh:457
+#: git-submodule.sh:332
 #, sh-format
 msgid "'$sm_path' already exists and is not a valid git repo"
 msgstr "”$sm_path” đã tồn tại từ trước và không phải là một kho git hợp lệ"
 
-#: git-submodule.sh:465
+#: git-submodule.sh:340
 #, sh-format
 msgid "A git directory for '$sm_name' is found locally with remote(s):"
 msgstr ""
 "Thư mục git cho “$sm_name” được tìm thấy một cách cục bộ với các máy chủ:"
 
-#: git-submodule.sh:467
+#: git-submodule.sh:342
 #, sh-format
 msgid ""
 "If you want to reuse this local git directory instead of cloning again from"
 msgstr "Nếu bạn muốn dùng lại thư mục git nội bộ này thay vì nhân bản từ nó"
 
-#: git-submodule.sh:469
+#: git-submodule.sh:344
 #, sh-format
 msgid ""
 "use the '--force' option. If the local git directory is not the correct repo"
 msgstr ""
 "dùng tùy chọn “--force”. Nếu thư mục git nội bộ không phải là repo (kho) đúng"
 
-#: git-submodule.sh:470
+#: git-submodule.sh:345
 #, sh-format
 msgid ""
 "or you are unsure what this means choose another name with the '--name' "
@@ -11673,71 +11849,71 @@ msgstr ""
 "hay bạn không chắc chắn điều đó có nghĩa gì chọn tên khác với tùy chọn “--"
 "name”."
 
-#: git-submodule.sh:472
+#: git-submodule.sh:347
 #, sh-format
 msgid "Reactivating local git directory for submodule '$sm_name'."
 msgstr ""
 "Phục hồi sự hoạt động của thư mục git nội bộ cho mô-đun-con “$sm_name”."
 
-#: git-submodule.sh:484
+#: git-submodule.sh:359
 #, sh-format
 msgid "Unable to checkout submodule '$sm_path'"
 msgstr "Không thể lấy ra mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:489
+#: git-submodule.sh:364
 #, sh-format
 msgid "Failed to add submodule '$sm_path'"
 msgstr "Gặp lỗi khi thêm mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:498
+#: git-submodule.sh:373
 #, sh-format
 msgid "Failed to register submodule '$sm_path'"
 msgstr "Gặp lỗi khi đăng ký với hệ thống mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:542
+#: git-submodule.sh:417
 #, sh-format
 msgid "Entering '$prefix$displaypath'"
 msgstr "Đang vào “$prefix$displaypath”"
 
-#: git-submodule.sh:562
+#: git-submodule.sh:437
 #, sh-format
 msgid "Stopping at '$prefix$displaypath'; script returned non-zero status."
 msgstr ""
 "Dừng lại tại “$prefix$displaypath”; script trả về trạng thái khác không."
 
-#: git-submodule.sh:608
+#: git-submodule.sh:483
 #, sh-format
 msgid "No url found for submodule path '$displaypath' in .gitmodules"
 msgstr ""
 "Không tìm thấy url cho đường dẫn mô-đun-con “$displaypath” trong .gitmodules"
 
-#: git-submodule.sh:617
+#: git-submodule.sh:492
 #, sh-format
 msgid "Failed to register url for submodule path '$displaypath'"
 msgstr "Gặp lỗi khi đăng ký url cho đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:619
+#: git-submodule.sh:494
 #, sh-format
 msgid "Submodule '$name' ($url) registered for path '$displaypath'"
 msgstr "Mô-đun-con “$name” ($url) được đăng ký cho đường dẫn “$displaypath”"
 
-#: git-submodule.sh:636
+#: git-submodule.sh:511
 #, sh-format
 msgid "Failed to register update mode for submodule path '$displaypath'"
 msgstr ""
 "Gặp lỗi khi đăng ký chế độ cập nhật cho đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:674
+#: git-submodule.sh:549
 #, sh-format
 msgid "Use '.' if you really want to deinitialize all submodules"
 msgstr "Dùng “.” nếu bạn thực sự muốn gỡ bỏ mọi mô-đun-con"
 
-#: git-submodule.sh:691
+#: git-submodule.sh:566
 #, sh-format
 msgid "Submodule work tree '$displaypath' contains a .git directory"
 msgstr "Cây làm việc mô-đun-con “$displaypath” có chứa thư mục .git"
 
-#: git-submodule.sh:692
+#: git-submodule.sh:567
 #, sh-format
 msgid ""
 "(use 'rm -rf' if you really want to remove it including all of its history)"
@@ -11745,7 +11921,7 @@ msgstr ""
 "(dùng “rm -rf” nếu bạn thực sự muốn gỡ bỏ nó cùng với tất cả lịch sử của "
 "chúng)"
 
-#: git-submodule.sh:698
+#: git-submodule.sh:573
 #, sh-format
 msgid ""
 "Submodule work tree '$displaypath' contains local modifications; use '-f' to "
@@ -11754,27 +11930,27 @@ msgstr ""
 "Cây làm việc mô-đun-con “$displaypath” chứa các thay đổi nội bộ; hãy dùng “-"
 "f” để loại bỏ chúng đi"
 
-#: git-submodule.sh:701
+#: git-submodule.sh:576
 #, sh-format
 msgid "Cleared directory '$displaypath'"
 msgstr "Đã tạo thư mục “$displaypath”"
 
-#: git-submodule.sh:702
+#: git-submodule.sh:577
 #, sh-format
 msgid "Could not remove submodule work tree '$displaypath'"
 msgstr "Không thể gỡ bỏ cây làm việc mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:705
+#: git-submodule.sh:580
 #, sh-format
 msgid "Could not create empty submodule directory '$displaypath'"
 msgstr "Không thể tạo thư mục mô-đun-con rỗng “$displaypath”"
 
-#: git-submodule.sh:714
+#: git-submodule.sh:589
 #, sh-format
 msgid "Submodule '$name' ($url) unregistered for path '$displaypath'"
 msgstr "Mô-đun-con “$name” ($url) được bỏ đăng ký cho đường dẫn “$displaypath”"
 
-#: git-submodule.sh:830
+#: git-submodule.sh:705
 #, sh-format
 msgid ""
 "Submodule path '$displaypath' not initialized\n"
@@ -11783,55 +11959,55 @@ msgstr ""
 "Đường dẫn mô-đun-con “$displaypath” chưa được khởi tạo.\n"
 "Có lẽ bạn muốn sử dụng lệnh “update --init”?"
 
-#: git-submodule.sh:843
+#: git-submodule.sh:718
 #, sh-format
 msgid "Unable to find current revision in submodule path '$displaypath'"
 msgstr ""
 "Không tìm thấy điểm xét duyệt hiện hành trong đường dẫn mô-đun-con "
 "“$displaypath”"
 
-#: git-submodule.sh:852
+#: git-submodule.sh:727
 #, sh-format
 msgid "Unable to fetch in submodule path '$sm_path'"
 msgstr "Không thể lấy về trong đường dẫn mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:876
+#: git-submodule.sh:751
 #, sh-format
 msgid "Unable to fetch in submodule path '$displaypath'"
 msgstr "Không thể lấy về trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:890
+#: git-submodule.sh:765
 #, sh-format
 msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
 msgstr "Không thể lấy ra “$sha1” trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:891
+#: git-submodule.sh:766
 #, sh-format
 msgid "Submodule path '$displaypath': checked out '$sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: đã checkout “$sha1”"
 
-#: git-submodule.sh:895
+#: git-submodule.sh:770
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
 msgstr "Không thể cải tổ “$sha1” trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:896
+#: git-submodule.sh:771
 #, sh-format
 msgid "Submodule path '$displaypath': rebased into '$sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: được rebase vào trong “$sha1”"
 
-#: git-submodule.sh:901
+#: git-submodule.sh:776
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
 msgstr ""
 "Không thể hòa trộn (merge) “$sha1” trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:902
+#: git-submodule.sh:777
 #, sh-format
 msgid "Submodule path '$displaypath': merged in '$sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: được hòa trộn vào “$sha1”"
 
-#: git-submodule.sh:907
+#: git-submodule.sh:782
 #, sh-format
 msgid ""
 "Execution of '$command $sha1' failed in submodule path '$prefix$sm_path'"
@@ -11839,56 +12015,105 @@ msgstr ""
 "Thực hiện không thành công lệnh “$command $sha1” trong đường dẫn mô-đun-con "
 "“$prefix$sm_path”"
 
-#: git-submodule.sh:908
+#: git-submodule.sh:783
 #, sh-format
 msgid "Submodule path '$prefix$sm_path': '$command $sha1'"
 msgstr "Đường dẫn mô-đun-con “$prefix$sm_path”: “$command $sha1”"
 
-#: git-submodule.sh:938
+#: git-submodule.sh:813
 #, sh-format
 msgid "Failed to recurse into submodule path '$displaypath'"
 msgstr "Gặp lỗi khi đệ quy vào trong đường dẫn mô-đun-con “$displaypath”"
 
-#: git-submodule.sh:1046
+#: git-submodule.sh:921
 msgid "The --cached option cannot be used with the --files option"
 msgstr "Tùy chọn --cached không thể dùng cùng với tùy chọn --files"
 
-#: git-submodule.sh:1098
+#: git-submodule.sh:973
 #, sh-format
 msgid "unexpected mode $mod_dst"
 msgstr "chế độ không như mong chờ $mod_dst"
 
-#: git-submodule.sh:1118
+#: git-submodule.sh:993
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_src"
 msgstr "  Cảnh báo: $display_name không chứa lần chuyển giao $sha1_src"
 
-#: git-submodule.sh:1121
+#: git-submodule.sh:996
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
 msgstr "  Cảnh báo: $display_name không chứa lần chuyển giao $sha1_dst"
 
-#: git-submodule.sh:1124
+#: git-submodule.sh:999
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
 msgstr ""
 "  Cảnh báo: $display_name không chứa những lần chuyển giao $sha1_src và "
 "$sha1_dst"
 
-#: git-submodule.sh:1149
+#: git-submodule.sh:1024
 msgid "blob"
 msgstr "blob"
 
-#: git-submodule.sh:1267
+#: git-submodule.sh:1142
 #, sh-format
 msgid "Failed to recurse into submodule path '$sm_path'"
 msgstr "Gặp lỗi khi đệ quy vào trong đường dẫn mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:1331
+#: git-submodule.sh:1206
 #, sh-format
 msgid "Synchronizing submodule url for '$displaypath'"
 msgstr "Url Mô-đun-con đồng bộ hóa cho “$displaypath”"
 
+#~ msgid "branch '%s' does not point at a commit"
+#~ msgstr "nhánh “%s” không chỉ đến một lần chuyển giao nào cả"
+
+#~ msgid "object '%s' does not point to a commit"
+#~ msgstr "đối tượng “%s” không chỉ đến một lần chuyển giao nào cả"
+
+#~ msgid "some refs could not be read"
+#~ msgstr "một số tham chiếu đã không thể đọc được"
+
+#~ msgid "print only merged branches"
+#~ msgstr "chỉ hiển thị các nhánh đã hòa trộn"
+
+#~ msgid "--dissociate given, but there is no --reference"
+#~ msgstr "đã đưa ra --dissociate, nhưng ở đây lại không có --reference"
+
+#~ msgid "show usage"
+#~ msgstr "hiển thị cách dùng"
+
+#~ msgid "insanely long template name %s"
+#~ msgstr "tên mẫu dài một cách điên rồ %s"
+
+#~ msgid "insanely long symlink %s"
+#~ msgstr "liên kết mềm dài một cách điên rồ %s"
+
+#~ msgid "insanely long template path %s"
+#~ msgstr "đường dẫn mẫu “%s” dài một cách điên rồ"
+
+#~ msgid "insane git directory %s"
+#~ msgstr "thư mục git điên rồ %s"
+
+#~ msgid "unsupported sort specification '%s'"
+#~ msgstr "không hỗ trợ đặc tả sắp xếp “%s”"
+
+#~ msgid "unsupported sort specification '%s' in variable '%s'"
+#~ msgstr "không hỗ trợ đặc tả sắp xếp “%s” trong biến “%s”"
+
+#~ msgid "switch 'points-at' requires an object"
+#~ msgstr "chuyển đến “points-at” yêu cần một đối tượng"
+
+#~ msgid "sort tags"
+#~ msgstr "sắp xếp các thẻ"
+
+#~ msgid "--sort and -n are incompatible"
+#~ msgstr "--sort và -n xung khắc nhau"
+
+#~ msgid "Gitdir '$a' is part of the submodule path '$b' or vice versa"
+#~ msgstr ""
+#~ "Gitdir “$a” là bộ phận của đường dẫn mô-đun-con “$b” hoặc \"vice versa\""
+
 #~ msgid "false|true|preserve"
 #~ msgstr "false|true|preserve"