]> git.ipfire.org Git - thirdparty/git.git/blobdiff - po/vi.po
l10n: vi.po(3245t): Updated Vietnamese translation for v2.15.0
[thirdparty/git.git] / po / vi.po
index 9c9f99b4fa00534a401fad5bfc56884da3fd06e9..b931606a0ca0e826196c7609cc60549722887946 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
@@ -6,10 +6,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: git v2.14.0\n"
+"Project-Id-Version: git v2.15.0\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2017-07-24 21:54+0800\n"
-"PO-Revision-Date: 2017-07-25 07:06+0700\n"
+"POT-Creation-Date: 2017-10-08 09:48+0800\n"
+"PO-Revision-Date: 2017-10-09 15:10+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"
@@ -72,7 +72,7 @@ msgstr ""
 msgid "Exiting because of an unresolved conflict."
 msgstr "Thoát ra bởi vì xung đột không thể giải quyết."
 
-#: advice.c:117 builtin/merge.c:1184
+#: advice.c:117 builtin/merge.c:1211
 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)."
 
@@ -123,85 +123,85 @@ msgstr "không nhận ra tùy chọn về khoảng trắng “%s”"
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr "không nhận ra tùy chọn bỏ qua khoảng trắng “%s”"
 
-#: apply.c:126
+#: apply.c:125
 msgid "--reject and --3way cannot be used together."
 msgstr "--reject và --3way không thể dùng cùng nhau."
 
-#: apply.c:128
+#: apply.c:127
 msgid "--cached and --3way cannot be used together."
 msgstr "--cached và --3way không thể dùng cùng nhau."
 
-#: apply.c:131
+#: apply.c:130
 msgid "--3way outside a repository"
 msgstr "--3way ở ngoài một kho chứa"
 
-#: apply.c:142
+#: apply.c:141
 msgid "--index outside a repository"
 msgstr "--index ở ngoài một kho chứa"
 
-#: apply.c:145
+#: apply.c:144
 msgid "--cached outside a repository"
 msgstr "--cached ở ngoài một kho chứa"
 
-#: apply.c:836
+#: apply.c:845
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr ""
 "Không thể chuẩn bị biểu thức chính qui dấu vết thời gian (timestamp regexp) "
 "%s"
 
-#: apply.c:845
+#: apply.c:854
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr "thi hành biểu thức chính quy trả về %d cho đầu vào: %s"
 
-#: apply.c:929
+#: apply.c:928
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr "không thể tìm thấy tên tập tin trong miếng vá tại dòng %d"
 
-#: apply.c:967
+#: apply.c:966
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr ""
 "git apply: git-diff sai - cần /dev/null, nhưng lại nhận được %s trên dòng %d"
 
-#: apply.c:973
+#: apply.c:972
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
 msgstr "git apply: git-diff sai - tên tập tin mới không nhất quán trên dòng %d"
 
-#: apply.c:974
+#: apply.c:973
 #, c-format
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr "git apply: git-diff sai - tên tập tin cũ không nhất quán trên dòng %d"
 
-#: apply.c:979
+#: apply.c:978
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr "git apply: git-diff sai - cần “/dev/null” trên dòng %d"
 
-#: apply.c:1008
+#: apply.c:1007
 #, c-format
 msgid "invalid mode on line %d: %s"
 msgstr "chế độ không hợp lệ trên dòng %d: %s"
 
-#: apply.c:1326
+#: apply.c:1325
 #, c-format
 msgid "inconsistent header lines %d and %d"
 msgstr "phần đầu mâu thuẫn dòng %d và %d"
 
-#: apply.c:1498
+#: apply.c:1497
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr "chi tiết: dòng không cần: %.*s"
 
-#: apply.c:1567
+#: apply.c:1566
 #, c-format
 msgid "patch fragment without header at line %d: %.*s"
 msgstr "miếng vá phân mảnh mà không có phần đầu tại dòng %d: %.*s"
 
-#: apply.c:1587
+#: apply.c:1586
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -213,81 +213,81 @@ msgstr[0] ""
 "phần đầu diff cho git  thiếu thông tin tên tập tin khi gỡ bỏ đi %d trong "
 "thành phần dẫn đầu tên của đường dẫn (dòng %d)"
 
-#: apply.c:1600
+#: apply.c:1599
 #, c-format
 msgid "git diff header lacks filename information (line %d)"
 msgstr "phần đầu diff cho git thiếu thông tin tên tập tin (dòng %d)"
 
-#: apply.c:1770
+#: apply.c:1787
 msgid "new file depends on old contents"
 msgstr "tập tin mới phụ thuộc vào nội dung cũ"
 
-#: apply.c:1772
+#: apply.c:1789
 msgid "deleted file still has contents"
 msgstr "tập tin đã xóa vẫn còn nội dung"
 
-#: apply.c:1806
+#: apply.c:1823
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr "miếng vá hỏng tại dòng %d"
 
-#: apply.c:1843
+#: apply.c:1860
 #, c-format
 msgid "new file %s depends on old contents"
 msgstr "tập tin mới %s phụ thuộc vào nội dung cũ"
 
-#: apply.c:1845
+#: apply.c:1862
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr "tập tin đã xóa %s vẫn còn nội dung"
 
-#: apply.c:1848
+#: apply.c:1865
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr "** cảnh báo: tập tin %s trở nên trống rỗng nhưng không bị xóa"
 
-#: apply.c:1995
+#: apply.c:2012
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr "miếng vá định dạng nhị phân sai hỏng tại dòng %d: %.*s"
 
-#: apply.c:2032
+#: apply.c:2049
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr "miếng vá định dạng nhị phân không được nhận ra tại dòng %d"
 
-#: apply.c:2193
+#: apply.c:2209
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr "vá chỉ với “rác” tại dòng %d"
 
-#: apply.c:2276
+#: apply.c:2295
 #, c-format
 msgid "unable to read symlink %s"
 msgstr "không thể đọc liên kết mềm %s"
 
-#: apply.c:2280
+#: apply.c:2299
 #, c-format
 msgid "unable to open or read %s"
 msgstr "không thể mở hay đọc %s"
 
-#: apply.c:2933
+#: apply.c:2958
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr "sai khởi đầu dòng: “%c”"
 
-#: apply.c:3052
+#: apply.c:3077
 #, c-format
 msgid "Hunk #%d succeeded at %d (offset %d line)."
 msgid_plural "Hunk #%d succeeded at %d (offset %d lines)."
 msgstr[0] "Khối dữ liệu #%d thành công tại %d (offset %d dòng)."
 
-#: apply.c:3064
+#: apply.c:3089
 #, 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"
 
-#: apply.c:3070
+#: apply.c:3095
 #, c-format
 msgid ""
 "while searching for:\n"
@@ -296,446 +296,447 @@ msgstr ""
 "trong khi đang tìm kiếm cho:\n"
 "%.*s"
 
-#: apply.c:3092
+#: apply.c:3117
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr "thiếu dữ liệu của miếng vá định dạng nhị phân cho “%s”"
 
-#: apply.c:3100
+#: apply.c:3125
 #, c-format
 msgid "cannot reverse-apply a binary patch without the reverse hunk to '%s'"
 msgstr ""
 "không thể reverse-apply một miếng vá nhị phân mà không đảo ngược hunk thành "
 "“%s”"
 
-#: apply.c:3146
+#: apply.c:3171
 #, c-format
 msgid "cannot apply binary patch to '%s' without full index line"
 msgstr ""
 "không thể áp dụng miếng vá nhị phân thành “%s” mà không có dòng chỉ mục đầy "
 "đủ"
 
-#: apply.c:3156
+#: apply.c:3181
 #, c-format
 msgid ""
 "the patch applies to '%s' (%s), which does not match the current contents."
 msgstr ""
 "miếng vá áp dụng cho “%s” (%s), cái mà không khớp với các nội dung hiện tại."
 
-#: apply.c:3164
+#: apply.c:3189
 #, c-format
 msgid "the patch applies to an empty '%s' but it is not empty"
 msgstr "miếng vá áp dụng cho một “%s” trống rỗng nhưng nó lại không trống"
 
-#: apply.c:3182
+#: apply.c:3207
 #, c-format
 msgid "the necessary postimage %s for '%s' cannot be read"
 msgstr "không thể đọc postimage %s cần thiết cho “%s”"
 
-#: apply.c:3195
+#: apply.c:3220
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr "miếng vá định dạng nhị phân không được áp dụng cho “%s”"
 
-#: apply.c:3201
+#: apply.c:3226
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr ""
 "vá nhị phân cho “%s” tạo ra kết quả không chính xác (mong chờ %s, lại nhận "
 "%s)"
 
-#: apply.c:3222
+#: apply.c:3247
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr "gặp lỗi khi vá: %s:%ld"
 
-#: apply.c:3344
+#: apply.c:3369
 #, c-format
 msgid "cannot checkout %s"
 msgstr "không thể lấy ra %s"
 
-#: apply.c:3392 apply.c:3403 apply.c:3449 setup.c:277
+#: apply.c:3418 apply.c:3429 apply.c:3475 setup.c:277
 #, c-format
 msgid "failed to read %s"
 msgstr "gặp lỗi khi đọc %s"
 
-#: apply.c:3400
+#: apply.c:3426
 #, c-format
 msgid "reading from '%s' beyond a symbolic link"
 msgstr "đọc từ “%s” vượt ra ngoài liên kết mềm"
 
-#: apply.c:3429 apply.c:3669
+#: apply.c:3455 apply.c:3695
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr "đường dẫn %s đã bị xóa hoặc đổi tên"
 
-#: apply.c:3512 apply.c:3683
+#: apply.c:3538 apply.c:3709
 #, c-format
 msgid "%s: does not exist in index"
 msgstr "%s: không tồn tại trong bảng mục lục"
 
-#: apply.c:3521 apply.c:3691
+#: apply.c:3547 apply.c:3717
 #, c-format
 msgid "%s: does not match index"
 msgstr "%s: không khớp trong mục lục"
 
-#: apply.c:3556
+#: apply.c:3582
 msgid "repository lacks the necessary blob 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”."
 
-#: apply.c:3559
+#: apply.c:3585
 #, c-format
 msgid "Falling back to three-way merge...\n"
 msgstr "Đang trở lại hòa trộn “3-đường”…\n"
 
-#: apply.c:3575 apply.c:3579
+#: apply.c:3601 apply.c:3605
 #, c-format
 msgid "cannot read the current contents of '%s'"
 msgstr "không thể đọc nội dung hiện hành của “%s”"
 
-#: apply.c:3591
+#: apply.c:3617
 #, c-format
 msgid "Failed to fall back on three-way merge...\n"
 msgstr "Gặp lỗi khi quay trở lại để hòa trộn kiểu “three-way”…\n"
 
-#: apply.c:3605
+#: apply.c:3631
 #, c-format
 msgid "Applied patch to '%s' with conflicts.\n"
 msgstr "Đã áp dụng miếng vá %s với các xung đột.\n"
 
-#: apply.c:3610
+#: apply.c:3636
 #, c-format
 msgid "Applied patch to '%s' cleanly.\n"
 msgstr "Đã áp dụng miếng vá %s một cách sạch sẽ.\n"
 
-#: apply.c:3636
+#: apply.c:3662
 msgid "removal patch leaves file contents"
 msgstr "loại bỏ miếng vá để lại nội dung tập tin"
 
-#: apply.c:3708
+#: apply.c:3734
 #, c-format
 msgid "%s: wrong type"
 msgstr "%s: sai kiểu"
 
-#: apply.c:3710
+#: apply.c:3736
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr "%s có kiểu %o, cần %o"
 
-#: apply.c:3860 apply.c:3862
+#: apply.c:3886 apply.c:3888
 #, c-format
 msgid "invalid path '%s'"
 msgstr "đường dẫn không hợp lệ “%s”"
 
-#: apply.c:3918
+#: apply.c:3944
 #, c-format
 msgid "%s: already exists in index"
 msgstr "%s: đã có từ trước trong bảng mục lục"
 
-#: apply.c:3921
+#: apply.c:3947
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr "%s: đã sẵn có trong thư mục đang làm việc"
 
-#: apply.c:3941
+#: apply.c:3967
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o)"
 msgstr "chế độ mới (%o) của %s không khớp với chế độ cũ (%o)"
 
-#: apply.c:3946
+#: apply.c:3972
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o) of %s"
 msgstr "chế độ mới (%o) của %s không khớp với chế độ cũ (%o) của %s"
 
-#: apply.c:3966
+#: apply.c:3992
 #, c-format
 msgid "affected file '%s' is beyond a symbolic link"
 msgstr "tập tin chịu tác động “%s” vượt ra ngoài liên kết mềm"
 
-#: apply.c:3970
+#: apply.c:3996
 #, c-format
 msgid "%s: patch does not apply"
 msgstr "%s: miếng vá không được áp dụng"
 
-#: apply.c:3985
+#: apply.c:4011
 #, c-format
 msgid "Checking patch %s..."
 msgstr "Đang kiểm tra miếng vá %s…"
 
-#: apply.c:4076
+#: apply.c:4102
 #, c-format
 msgid "sha1 information is lacking or useless for submodule %s"
 msgstr "thông tin sha1 thiếu hoặc không dùng được cho mô-đun %s"
 
-#: apply.c:4083
+#: apply.c:4109
 #, c-format
 msgid "mode change for %s, which is not in current HEAD"
 msgstr "thay đổi chế độ cho %s, cái mà không phải là HEAD hiện tại"
 
-#: apply.c:4086
+#: apply.c:4112
 #, c-format
 msgid "sha1 information is lacking or useless (%s)."
 msgstr "thông tin sha1 còn thiếu hay không dùng được(%s)."
 
-#: apply.c:4091 builtin/checkout.c:235 builtin/reset.c:138
+#: apply.c:4117 builtin/checkout.c:235 builtin/reset.c:148
 #, 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”"
 
-#: apply.c:4095
+#: apply.c:4121
 #, c-format
 msgid "could not add %s to temporary index"
 msgstr "không thể thêm %s vào chỉ mục tạm thời"
 
-#: apply.c:4105
+#: apply.c:4131
 #, c-format
 msgid "could not write temporary index to %s"
 msgstr "không thểghi mục lục tạm vào %s"
 
-#: apply.c:4243
+#: apply.c:4269
 #, c-format
 msgid "unable to remove %s from index"
 msgstr "không thể gỡ bỏ %s từ mục lục"
 
-#: apply.c:4278
+#: apply.c:4304
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr "miếng vá sai hỏng cho mô-đun-con %s"
 
-#: apply.c:4284
+#: apply.c:4310
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr "không thể lấy thống kề về tập tin %s mới hơn đã được tạo"
 
-#: apply.c:4292
+#: apply.c:4318
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr "không thể tạo “kho lưu đằng sau” cho tập tin được tạo mới hơn %s"
 
-#: apply.c:4298 apply.c:4442
+#: apply.c:4324 apply.c:4468
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr "không thể thêm mục nhớ đệm cho %s"
 
-#: apply.c:4339
+#: apply.c:4365
 #, c-format
 msgid "failed to write to '%s'"
 msgstr "gặp lỗi khi ghi vào “%s”"
 
-#: apply.c:4343
+#: apply.c:4369
 #, c-format
 msgid "closing file '%s'"
 msgstr "đang đóng tập tin “%s”"
 
-#: apply.c:4413
+#: apply.c:4439
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr "không thể ghi vào tập tin “%s” chế độ %o"
 
-#: apply.c:4511
+#: apply.c:4537
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr "Đã áp dụng miếng vá %s một cách sạch sẽ."
 
-#: apply.c:4519
+#: apply.c:4545
 msgid "internal error"
 msgstr "lỗi nội bộ"
 
-#: apply.c:4522
+#: apply.c:4548
 #, c-format
 msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] "Đang áp dụng miếng vá %%s với %d lần từ chối…"
 
-#: apply.c:4533
+#: apply.c:4559
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr "đang cắt ngắn tên tập tin .rej thành %.*s.rej"
 
-#: apply.c:4541 builtin/fetch.c:738 builtin/fetch.c:988
+#: apply.c:4567 builtin/fetch.c:760 builtin/fetch.c:1010
 #, c-format
 msgid "cannot open %s"
 msgstr "không mở được “%s”"
 
-#: apply.c:4555
+#: apply.c:4581
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr "Khối nhớ #%d được áp dụng gọn gàng."
 
-#: apply.c:4559
+#: apply.c:4585
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr "đoạn dữ liệu #%d bị từ chối."
 
-#: apply.c:4669
+#: apply.c:4695
 #, c-format
 msgid "Skipped patch '%s'."
 msgstr "bỏ qua đường dẫn “%s”."
 
-#: apply.c:4677
+#: apply.c:4703
 msgid "unrecognized input"
 msgstr "không thừa nhận đầu vào"
 
-#: apply.c:4696
+#: apply.c:4722
 msgid "unable to read index file"
 msgstr "không thể đọc tập tin lưu bảng mục lục"
 
-#: apply.c:4833
+#: apply.c:4859
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr "không thể mở miếng vá “%s”: %s"
 
-#: apply.c:4860
+#: apply.c:4886
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] "đã chấm dứt %d lỗi khoảng trắng"
 
-#: apply.c:4866 apply.c:4881
+#: apply.c:4892 apply.c:4907
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
 msgstr[0] "%d dòng thêm khoảng trắng lỗi."
 
-#: apply.c:4874
+#: apply.c:4900
 #, c-format
 msgid "%d line applied after fixing whitespace errors."
 msgid_plural "%d lines applied after fixing whitespace errors."
 msgstr[0] "%d dòng được áp dụng sau khi sửa các lỗi khoảng trắng."
 
-#: apply.c:4890 builtin/add.c:513 builtin/mv.c:299 builtin/rm.c:391
+#: apply.c:4916 builtin/add.c:515 builtin/mv.c:298 builtin/rm.c:390
 msgid "Unable to write new index file"
 msgstr "Không thể ghi tập tin lưu bảng mục lục mới"
 
-#: apply.c:4921 apply.c:4924 builtin/am.c:2257 builtin/am.c:2260
-#: builtin/clone.c:115 builtin/fetch.c:93 builtin/pull.c:187
-#: builtin/submodule--helper.c:304 builtin/submodule--helper.c:629
-#: builtin/submodule--helper.c:632 builtin/submodule--helper.c:973
-#: builtin/submodule--helper.c:976 builtin/submodule--helper.c:1161
+#: apply.c:4947 apply.c:4950 builtin/am.c:2256 builtin/am.c:2259
+#: builtin/clone.c:116 builtin/fetch.c:115 builtin/pull.c:187
+#: builtin/submodule--helper.c:301 builtin/submodule--helper.c:622
+#: builtin/submodule--helper.c:625 builtin/submodule--helper.c:992
+#: builtin/submodule--helper.c:995 builtin/submodule--helper.c:1212
 #: git-add--interactive.perl:197
 msgid "path"
 msgstr "đường-dẫn"
 
-#: apply.c:4922
+#: apply.c:4948
 msgid "don't apply changes matching the given path"
 msgstr "không áp dụng các thay đổi khớp với đường dẫn đã cho"
 
-#: apply.c:4925
+#: apply.c:4951
 msgid "apply changes matching the given path"
 msgstr "áp dụng các thay đổi khớp với đường dẫn đã cho"
 
-#: apply.c:4927 builtin/am.c:2266
+#: apply.c:4953 builtin/am.c:2265
 msgid "num"
 msgstr "số"
 
-#: apply.c:4928
+#: apply.c:4954
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr "gỡ bỏ <số> dấu gạch chéo dẫn đầu từ đường dẫn diff cổ điển"
 
-#: apply.c:4931
+#: apply.c:4957
 msgid "ignore additions made by the patch"
 msgstr "lờ đi phần bổ xung được tạo ra bởi miếng vá"
 
-#: apply.c:4933
+#: apply.c:4959
 msgid "instead of applying the patch, output diffstat for the input"
 msgstr ""
 "thay vì áp dụng một miếng vá, kết xuất kết quả từ lệnh diffstat cho đầu ra"
 
-#: apply.c:4937
+#: apply.c:4963
 msgid "show number of added and deleted lines in decimal notation"
 msgstr ""
 "hiển thị số lượng các dòng được thêm vào và xóa đi theo ký hiệu thập phân"
 
-#: apply.c:4939
+#: apply.c:4965
 msgid "instead of applying the patch, output a summary for the input"
 msgstr "thay vì áp dụng một miếng vá, kết xuất kết quả cho đầu vào"
 
-#: apply.c:4941
+#: apply.c:4967
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr "thay vì áp dụng miếng vá, hãy xem xem miếng vá có thích hợp không"
 
-#: apply.c:4943
+#: apply.c:4969
 msgid "make sure the patch is applicable to the current index"
 msgstr "hãy chắc chắn là miếng vá thích hợp với bảng mục lục hiện hành"
 
-#: apply.c:4945
+#: apply.c:4971
 msgid "apply a patch without touching the working tree"
 msgstr "áp dụng một miếng vá mà không động chạm đến cây làm việc"
 
-#: apply.c:4947
+#: apply.c:4973
 msgid "accept a patch that touches outside the working area"
 msgstr "chấp nhận một miếng vá mà không động chạm đến cây làm việc"
 
-#: apply.c:4949
+#: apply.c:4975
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr ""
 "đồng thời áp dụng miếng vá (dùng với tùy chọn --stat/--summary/--check)"
 
-#: apply.c:4951
+#: apply.c:4977
 msgid "attempt three-way merge if a patch does not apply"
 msgstr "thử hòa trộn kiểu three-way nếu việc vá không thể thực hiện được"
 
-#: apply.c:4953
+#: apply.c:4979
 msgid "build a temporary index based on embedded index information"
 msgstr ""
 "xây dựng bảng mục lục tạm thời trên cơ sở thông tin bảng mục lục được nhúng"
 
-#: apply.c:4956 builtin/checkout-index.c:170 builtin/ls-files.c:515
+#: apply.c:4982 builtin/checkout-index.c:170 builtin/ls-files.c:513
 msgid "paths are separated with NUL character"
 msgstr "các đường dẫn bị ngăn cách bởi ký tự NULL"
 
-#: apply.c:4958
+#: apply.c:4984
 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"
 
-#: apply.c:4959 builtin/am.c:2245
+#: apply.c:4985 builtin/am.c:2244 builtin/interpret-trailers.c:95
+#: builtin/interpret-trailers.c:97 builtin/interpret-trailers.c:99
 msgid "action"
 msgstr "hành động"
 
-#: apply.c:4960
+#: apply.c:4986
 msgid "detect new or modified lines that have whitespace errors"
 msgstr "tìm thấy một dòng mới hoặc bị sửa đổi mà nó có lỗi do khoảng trắng"
 
-#: apply.c:4963 apply.c:4966
+#: apply.c:4989 apply.c:4992
 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"
 
-#: apply.c:4969
+#: apply.c:4995
 msgid "apply the patch in reverse"
 msgstr "áp dụng miếng vá theo chiều ngược"
 
-#: apply.c:4971
+#: apply.c:4997
 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"
 
-#: apply.c:4973
+#: apply.c:4999
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr "để lại khối dữ liệu bị từ chối trong các tập tin *.rej tương ứng"
 
-#: apply.c:4975
+#: apply.c:5001
 msgid "allow overlapping hunks"
 msgstr "cho phép chồng khối nhớ"
 
-#: apply.c:4976 builtin/add.c:270 builtin/check-ignore.c:21
-#: builtin/commit.c:1340 builtin/count-objects.c:95 builtin/fsck.c:651
-#: builtin/log.c:1877 builtin/mv.c:123 builtin/read-tree.c:125
+#: apply.c:5002 builtin/add.c:272 builtin/check-ignore.c:21
+#: builtin/commit.c:1347 builtin/count-objects.c:96 builtin/fsck.c:640
+#: builtin/log.c:1889 builtin/mv.c:123 builtin/read-tree.c:125
 msgid "be verbose"
 msgstr "chi tiết"
 
-#: apply.c:4978
+#: apply.c:5004
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr ""
 "đã dò tìm thấy dung sai không chính xác thiếu dòng mới tại cuối tập tin"
 
-#: apply.c:4981
+#: apply.c:5007
 msgid "do not trust the line counts in the hunk headers"
 msgstr "không tin số lượng dòng trong phần đầu khối dữ liệu"
 
-#: apply.c:4983 builtin/am.c:2254
+#: apply.c:5009 builtin/am.c:2253
 msgid "root"
 msgstr "gốc"
 
-#: apply.c:4984
+#: apply.c:5010
 msgid "prepend <root> to all filenames"
 msgstr "treo thêm <root> vào tất cả các tên tập tin"
 
@@ -758,108 +759,108 @@ msgstr ""
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr "git archive --remote <kho> [--exec <lệnh>] --list"
 
-#: archive.c:333 builtin/add.c:154 builtin/add.c:492 builtin/rm.c:300
+#: archive.c:351 builtin/add.c:156 builtin/add.c:494 builtin/rm.c:299
 #, 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:418
+#: archive.c:436
 msgid "fmt"
 msgstr "định_dạng"
 
-#: archive.c:418
+#: archive.c:436
 msgid "archive format"
 msgstr "định dạng lưu trữ"
 
-#: archive.c:419 builtin/log.c:1446
+#: archive.c:437 builtin/log.c:1452
 msgid "prefix"
 msgstr "tiền_tố"
 
-#: archive.c:420
+#: archive.c:438
 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:421 builtin/blame.c:693 builtin/blame.c:694 builtin/config.c:61
-#: builtin/fast-export.c:989 builtin/fast-export.c:991 builtin/grep.c:1080
-#: builtin/hash-object.c:102 builtin/ls-files.c:549 builtin/ls-files.c:552
-#: builtin/notes.c:404 builtin/notes.c:567 builtin/read-tree.c:120
+#: archive.c:439 builtin/blame.c:693 builtin/blame.c:694 builtin/config.c:61
+#: builtin/fast-export.c:1005 builtin/fast-export.c:1007 builtin/grep.c:859
+#: builtin/hash-object.c:102 builtin/ls-files.c:547 builtin/ls-files.c:550
+#: builtin/notes.c:405 builtin/notes.c:568 builtin/read-tree.c:120
 #: parse-options.h:153
 msgid "file"
 msgstr "tập_tin"
 
-#: archive.c:422 builtin/archive.c:89
+#: archive.c:440 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:424
+#: archive.c:442
 msgid "read .gitattributes in working directory"
 msgstr "đọc .gitattributes trong thư mục làm việc"
 
-#: archive.c:425
+#: archive.c:443
 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:426
+#: archive.c:444
 msgid "store only"
 msgstr "chỉ lưu (không nén)"
 
-#: archive.c:427
+#: archive.c:445
 msgid "compress faster"
 msgstr "nén nhanh hơn"
 
-#: archive.c:435
+#: archive.c:453
 msgid "compress better"
 msgstr "nén nhỏ hơn"
 
-#: archive.c:438
+#: archive.c:456
 msgid "list supported archive formats"
 msgstr "liệt kê các kiểu nén được hỗ trợ"
 
-#: archive.c:440 builtin/archive.c:90 builtin/clone.c:105 builtin/clone.c:108
-#: builtin/submodule--helper.c:641 builtin/submodule--helper.c:982
+#: archive.c:458 builtin/archive.c:90 builtin/clone.c:106 builtin/clone.c:109
+#: builtin/submodule--helper.c:634 builtin/submodule--helper.c:1001
 msgid "repo"
 msgstr "kho"
 
-#: archive.c:441 builtin/archive.c:91
+#: archive.c:459 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:442 builtin/archive.c:92 builtin/notes.c:488
+#: archive.c:460 builtin/archive.c:92 builtin/notes.c:489
 msgid "command"
 msgstr "lệnh"
 
-#: archive.c:443 builtin/archive.c:93
+#: archive.c:461 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ủ"
 
-#: archive.c:450
+#: archive.c:468
 msgid "Unexpected option --remote"
 msgstr "Gặp tùy chọn --remote không cần"
 
-#: archive.c:452
+#: archive.c:470
 msgid "Option --exec can only be used together with --remote"
 msgstr "Tùy chọn --exec chỉ có thể được dùng cùng với --remote"
 
-#: archive.c:454
+#: archive.c:472
 msgid "Unexpected option --output"
 msgstr "Gặp tùy chọn không cần --output"
 
-#: archive.c:476
+#: archive.c:494
 #, c-format
 msgid "Unknown archive format '%s'"
 msgstr "Không hiểu định dạng “%s”"
 
-#: archive.c:483
+#: archive.c:501
 #, c-format
 msgid "Argument not supported for format '%s': -%d"
 msgstr "Tham số không được hỗ trợ cho định dạng “%s”: -%d"
 
-#: attr.c:214
+#: attr.c:218
 #, c-format
 msgid "%.*s is not a valid attribute name"
 msgstr "%.*s không phải tên thuộc tính hợp lệ"
 
-#: attr.c:410
+#: attr.c:415
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
@@ -937,31 +938,31 @@ msgstr ""
 msgid "Bisecting: a merge base must be tested\n"
 msgstr "Bisecting: nền hòa trộn cần phải được kiểm tra\n"
 
-#: bisect.c:849
+#: bisect.c:850
 #, c-format
 msgid "a %s revision is needed"
 msgstr "cần một điểm xét duyệt %s"
 
-#: bisect.c:866 builtin/notes.c:175 builtin/tag.c:256
+#: bisect.c:867 builtin/notes.c:175 builtin/tag.c:234
 #, c-format
 msgid "could not create file '%s'"
 msgstr "không thể tạo tập tin “%s”"
 
-#: bisect.c:917
+#: bisect.c:918
 #, c-format
 msgid "could not read file '%s'"
 msgstr "không thể đọc tập tin “%s”"
 
-#: bisect.c:947
+#: bisect.c:948
 msgid "reading bisect refs failed"
 msgstr "việc đọc tham chiếu bisect gặp lỗi"
 
-#: bisect.c:967
+#: bisect.c:968
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr "%s là cả %s và %s\n"
 
-#: bisect.c:975
+#: bisect.c:976
 #, c-format
 msgid ""
 "No testable commit found.\n"
@@ -970,7 +971,7 @@ msgstr ""
 "không tìm thấy lần chuyển giao kiểm tra được nào.\n"
 "Có lẽ bạn bắt đầu với các tham số đường dẫn sai?\n"
 
-#: bisect.c:994
+#: bisect.c:995
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
@@ -979,7 +980,7 @@ msgstr[0] "(ước chừng %d bước)"
 #. TRANSLATORS: the last %s will be replaced with "(roughly %d
 #. steps)" translation.
 #.
-#: bisect.c:1000
+#: bisect.c:1001
 #, c-format
 msgid "Bisecting: %d revision left to test after this %s\n"
 msgid_plural "Bisecting: %d revisions left to test after this %s\n"
@@ -998,10 +999,10 @@ msgid "--reverse and --first-parent together require specified latest commit"
 msgstr ""
 "--reverse và --first-parent cùng nhau cần chỉ định lần chuyển giao cuối"
 
-#: blame.c:1797 bundle.c:164 ref-filter.c:1919 sequencer.c:1166
-#: sequencer.c:2328 builtin/commit.c:1058 builtin/log.c:356 builtin/log.c:907
-#: builtin/log.c:1357 builtin/log.c:1683 builtin/log.c:1926 builtin/merge.c:360
-#: builtin/shortlog.c:177
+#: blame.c:1797 bundle.c:169 ref-filter.c:1932 sequencer.c:1168
+#: sequencer.c:2351 builtin/commit.c:1065 builtin/log.c:357 builtin/log.c:911
+#: builtin/log.c:1361 builtin/log.c:1690 builtin/log.c:1938 builtin/merge.c:369
+#: builtin/shortlog.c:191
 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"
 
@@ -1042,44 +1043,46 @@ msgstr "Chưa cài đặt nhánh %s như là thượng nguồn của nó."
 
 #: branch.c:93
 #, 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."
+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:94
 #, 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."
+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:98
 #, 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."
+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:99
 #, 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."
+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:104
 #, 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."
+msgid "Branch '%s' set up to track remote ref '%s' by rebasing."
+msgstr ""
+"Nhánh “%s” cài đặt để theo dõi tham chiếu máy chủ “%s” bằng cách rebase."
 
 #: branch.c:105
 #, 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."
+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:109
 #, c-format
-msgid "Branch %s set up to track local ref %s by rebasing."
+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."
+"Nhánh “%s” cài đặt để theo dõi tham chiếu nội bộ “%s” bằng cách rebase."
 
 #: branch.c:110
 #, 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."
+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:119
 msgid "Unable to write upstream branch configuration"
@@ -1100,23 +1103,23 @@ msgstr "“%s” không phải là một tên nhánh hợp lệ."
 msgid "A branch named '%s' already exists."
 msgstr "Đã có nhánh mang tên “%s”."
 
-#: branch.c:198
+#: branch.c:197
 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:218
+#: branch.c:217
 #, 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:220
+#: branch.c:219
 #, 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:222
+#: branch.c:221
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -1136,22 +1139,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:265
+#: branch.c:264
 #, 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:285
+#: branch.c:284
 #, c-format
 msgid "Ambiguous object name: '%s'."
 msgstr "Tên đối tượng chưa rõ ràng: “%s”."
 
-#: branch.c:290
+#: branch.c:289
 #, c-format
 msgid "Not a valid branch point: '%s'."
 msgstr "Nhánh không hợp lệ: “%s”."
 
-#: branch.c:344
+#: branch.c:343
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr "“%s” đã được lấy ra tại “%s” rồi"
@@ -1171,7 +1174,9 @@ 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:88 sequencer.c:1344 sequencer.c:1770 builtin/commit.c:778
+#: bundle.c:88 sequencer.c:1346 sequencer.c:1793 sequencer.c:2500
+#: sequencer.c:2583 sequencer.c:2609 sequencer.c:2687 sequencer.c:2807
+#: sequencer.c:2949 builtin/commit.c:782
 #, c-format
 msgid "could not open '%s'"
 msgstr "không thể mở “%s”"
@@ -1180,54 +1185,54 @@ 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:186
+#: bundle.c:193
 #, c-format
 msgid "The bundle contains this ref:"
 msgid_plural "The bundle contains these %d refs:"
 msgstr[0] "Bó dữ liệu chứa %d tham chiếu:"
 
-#: bundle.c:193
+#: bundle.c:200
 msgid "The bundle records a complete history."
 msgstr "Lệnh bundle ghi lại toàn bộ lịch sử."
 
-#: bundle.c:195
+#: bundle.c:202
 #, c-format
 msgid "The bundle requires this ref:"
 msgid_plural "The bundle requires these %d refs:"
 msgstr[0] "Lệnh bundle yêu cầu %d tham chiếu này:"
 
-#: bundle.c:254
+#: bundle.c:261
 msgid "Could not spawn pack-objects"
 msgstr "Không thể sản sinh đối tượng gói"
 
-#: bundle.c:265
+#: bundle.c:272
 msgid "pack-objects died"
 msgstr "đối tượng gói đã chết"
 
-#: bundle.c:307
+#: bundle.c:314
 msgid "rev-list died"
 msgstr "rev-list đã chết"
 
-#: bundle.c:356
+#: bundle.c:363
 #, c-format
 msgid "ref '%s' is excluded by the rev-list options"
 msgstr "th.chiếu “%s” bị loại trừ bởi các tùy chọn rev-list"
 
-#: bundle.c:446 builtin/log.c:173 builtin/log.c:1589 builtin/shortlog.c:282
+#: bundle.c:453 builtin/log.c:174 builtin/log.c:1597 builtin/shortlog.c:296
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr "đối số không được thừa nhận: %s"
 
-#: bundle.c:454
+#: bundle.c:461
 msgid "Refusing to create empty bundle."
 msgstr "Từ chối tạo một bó dữ liệu trống rỗng."
 
-#: bundle.c:466
+#: bundle.c:473
 #, c-format
 msgid "cannot create '%s'"
 msgstr "không thể tạo “%s”"
 
-#: bundle.c:494
+#: bundle.c:501
 msgid "index-pack died"
 msgstr "mục lục gói đã chết"
 
@@ -1236,8 +1241,8 @@ msgstr "mục lục gói đã chết"
 msgid "invalid color value: %.*s"
 msgstr "giá trị màu không hợp lệ: %.*s"
 
-#: commit.c:41 sequencer.c:1582 builtin/am.c:420 builtin/am.c:456
-#: builtin/am.c:1469 builtin/am.c:2107
+#: commit.c:41 sequencer.c:1600 builtin/am.c:421 builtin/am.c:465
+#: builtin/am.c:1467 builtin/am.c:2105
 #, c-format
 msgid "could not parse %s"
 msgstr "không thể phân tích cú pháp %s"
@@ -1247,7 +1252,7 @@ msgstr "không thể phân tích cú pháp %s"
 msgid "%s %s is not a commit!"
 msgstr "%s %s không phải là một lần chuyển giao!"
 
-#: commit.c:1511
+#: commit.c:1517
 msgid ""
 "Warning: commit message did not conform to UTF-8.\n"
 "You may want to amend it after fixing the message, or set the config\n"
@@ -1261,155 +1266,155 @@ msgstr ""
 msgid "memory exhausted"
 msgstr "hết bộ nhớ"
 
-#: config.c:186
+#: config.c:187
 msgid "relative config include conditionals must come from files"
 msgstr "các điều kiện bao gồm cấu hình liên quan phải đến từ các tập tin"
 
-#: config.c:720
+#: config.c:721
 #, c-format
 msgid "bad config line %d in blob %s"
 msgstr "tập tin cấu hình sai tại dòng %d trong blob %s"
 
-#: config.c:724
+#: config.c:725
 #, c-format
 msgid "bad config line %d in file %s"
 msgstr "cấu hình sai tại dòng %d trong tập tin %s"
 
-#: config.c:728
+#: config.c:729
 #, c-format
 msgid "bad config line %d in standard input"
 msgstr "cấu hình sai tại dòng %d trong đầu vào tiêu chuẩn"
 
-#: config.c:732
+#: config.c:733
 #, c-format
 msgid "bad config line %d in submodule-blob %s"
 msgstr "cấu hình sai tại dòng %d trong blob-mô-đun-con %s"
 
-#: config.c:736
+#: config.c:737
 #, c-format
 msgid "bad config line %d in command line %s"
 msgstr "cấu hình sai tại dòng %d trong dòng lệnh %s"
 
-#: config.c:740
+#: config.c:741
 #, c-format
 msgid "bad config line %d in %s"
 msgstr "cấu hình sai tại dòng %d trong %s"
 
-#: config.c:868
+#: config.c:869
 msgid "out of range"
 msgstr "nằm ngoài phạm vi"
 
-#: config.c:868
+#: config.c:869
 msgid "invalid unit"
 msgstr "đơn vị không hợp lệ"
 
-#: config.c:874
+#: config.c:875
 #, c-format
 msgid "bad numeric config value '%s' for '%s': %s"
 msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s”: %s"
 
-#: config.c:879
+#: config.c:880
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in blob %s: %s"
 msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong blob %s: %s"
 
-#: config.c:882
+#: config.c:883
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in file %s: %s"
 msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong tập tin %s: %s"
 
-#: config.c:885
+#: config.c:886
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in standard input: %s"
 msgstr ""
 "sai giá trị bằng số của cấu hình “%s” cho “%s” trong đầu vào tiêu chuẩn: %s"
 
-#: config.c:888
+#: config.c:889
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in submodule-blob %s: %s"
 msgstr ""
 "sai giá trị bằng số của cấu hình “%s” cho “%s” trong submodule-blob %s: %s"
 
-#: config.c:891
+#: config.c:892
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
 msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong dòng lệnh %s: %s"
 
-#: config.c:894
+#: config.c:895
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in %s: %s"
 msgstr "sai giá trị bằng số của cấu hình “%s” cho “%s” trong %s: %s"
 
-#: config.c:989
+#: config.c:990
 #, c-format
 msgid "failed to expand user dir in: '%s'"
 msgstr "gặp lỗi mở rộng thư mục người dùng trong: “%s”"
 
-#: config.c:1084 config.c:1095
+#: config.c:1085 config.c:1096
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr "mức nén zlib %d là sai"
 
-#: config.c:1212
+#: config.c:1213
 #, c-format
 msgid "invalid mode for object creation: %s"
 msgstr "chế độ không hợp lệ đối với việc tạo đối tượng: %s"
 
-#: config.c:1368
+#: config.c:1372
 #, c-format
 msgid "bad pack compression level %d"
 msgstr "mức nén gói %d không hợp lệ"
 
-#: config.c:1564
+#: config.c:1568
 msgid "unable to parse command-line config"
 msgstr "không thể phân tích cấu hình dòng lệnh"
 
-#: config.c:1894
+#: config.c:1900
 msgid "unknown error occurred while reading the configuration files"
 msgstr "đã có lỗi chưa biết xảy ra trong khi đọc các tập tin cấu hình"
 
-#: config.c:2064
+#: config.c:2087
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr "%s không hợp lệ: “%s”"
 
-#: config.c:2085
+#: config.c:2130
 #, c-format
 msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
 msgstr ""
 "không hiểu giá trị core.untrackedCache “%s”; dùng giá trị mặc định “keep”"
 
-#: config.c:2111
+#: config.c:2156
 #, c-format
 msgid "splitIndex.maxPercentChange value '%d' should be between 0 and 100"
 msgstr "giá trị splitIndex.maxPercentChange “%d” phải nằm giữa 0 và 100"
 
-#: config.c:2122
+#: config.c:2167
 #, c-format
 msgid "unable to parse '%s' from command-line config"
 msgstr "không thể phân tích “%s” từ cấu hình dòng lệnh"
 
-#: config.c:2124
+#: config.c:2169
 #, c-format
 msgid "bad config variable '%s' in file '%s' at line %d"
 msgstr "sai biến cấu hình “%s” trong tập tin “%s” tại dòng %d"
 
-#: config.c:2183
+#: config.c:2228
 #, c-format
 msgid "%s has multiple values"
 msgstr "%s có đa giá trị"
 
-#: config.c:2517 config.c:2745
+#: config.c:2571 config.c:2789
 #, c-format
 msgid "fstat on %s failed"
 msgstr "fstat trên %s gặp lỗi"
 
-#: config.c:2635
+#: config.c:2678
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr "không thể đặt “%s” thành “%s”"
 
-#: config.c:2637 builtin/remote.c:775
+#: config.c:2680 builtin/remote.c:776
 #, c-format
 msgid "could not unset '%s'"
 msgstr "không thể thôi đặt “%s”"
@@ -1430,19 +1435,19 @@ msgstr ""
 "Vui lòng chắc chắn là bạn có đủ thẩm quyền truy cập\n"
 "và kho chứa đã sẵn có."
 
-#: connected.c:63 builtin/fsck.c:191 builtin/prune.c:141
+#: connected.c:64 builtin/fsck.c:183 builtin/prune.c:141
 msgid "Checking connectivity"
 msgstr "Đang kiểm tra kết nối"
 
-#: connected.c:75
+#: connected.c:76
 msgid "Could not run 'git rev-list'"
 msgstr "Không thể chạy “git rev-list”"
 
-#: connected.c:95
+#: connected.c:96
 msgid "failed write to rev-list"
 msgstr "gặp lỗi khi ghi vào rev-list"
 
-#: connected.c:102
+#: connected.c:103
 msgid "failed to close rev-list's stdin"
 msgstr "gặp lỗi khi đóng đầu vào chuẩn stdin của rev-list"
 
@@ -1542,27 +1547,35 @@ 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:63
+#: diff.c:74
 #, c-format
 msgid "option '%s' requires a value"
 msgstr "tùy chọn “%s” yêu cầu một giá trị"
 
-#: diff.c:125
+#: diff.c:152
 #, 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:130
+#: diff.c:157
 #, c-format
 msgid "  Unknown dirstat parameter '%s'\n"
 msgstr "  Không hiểu đối số dirstat “%s”\n"
 
-#: diff.c:282
+#: diff.c:281
+msgid ""
+"color moved setting must be one of 'no', 'default', 'zebra', 'dimmed_zebra', "
+"'plain'"
+msgstr ""
+"cài đặt màu đã di chuyển phải là một trong “no”, “default”, “zebra”, "
+"“dimmed_zebra”, “plain”"
+
+#: diff.c:341
 #, 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:342
+#: diff.c:398
 #, c-format
 msgid ""
 "Found errors in 'diff.dirstat' config variable:\n"
@@ -1571,20 +1584,20 @@ msgstr ""
 "Tìm thấy các lỗi trong biến cấu hình “diff.dirstat”:\n"
 "%s"
 
-#: diff.c:3101
+#: diff.c:3861
 #, 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:3427
+#: diff.c:4189
 msgid "--name-only, --name-status, --check and -s are mutually exclusive"
 msgstr "--name-only, --name-status, --check và -s loại từ lẫn nhau"
 
-#: diff.c:3517
+#: diff.c:4279
 msgid "--follow requires exactly one pathspec"
 msgstr "--follow cần chính xác một đặc tả đường dẫn"
 
-#: diff.c:3680
+#: diff.c:4445
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
@@ -1593,22 +1606,22 @@ msgstr ""
 "Gặp lỗi khi phân tích đối số tùy chọn --dirstat/-X:\n"
 "%s"
 
-#: diff.c:3694
+#: diff.c:4459
 #, c-format
 msgid "Failed to parse --submodule option parameter: '%s'"
 msgstr "Gặp lỗi khi phân tích đối số tùy chọn --submodule: “%s”"
 
-#: diff.c:4716
+#: diff.c:5505
 msgid "inexact rename detection was skipped due to too many files."
 msgstr ""
 "nhận thấy đổi tên không chính xác đã bị bỏ qua bởi có quá nhiều tập tin."
 
-#: diff.c:4719
+#: diff.c:5508
 msgid "only found copies from modified paths due to too many files."
 msgstr ""
 "chỉ tìm thấy các bản sao từ đường dẫn đã sửa đổi bởi vì có quá nhiều tập tin."
 
-#: diff.c:4722
+#: diff.c:5511
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
@@ -1616,207 +1629,211 @@ msgstr ""
 "bạn có lẽ muốn đặt biến %s của bạn thành ít nhất là %d và thử lại lệnh lần "
 "nữa."
 
-#: dir.c:1948
+#: dir.c:1983
 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:2067
+#: dir.c:2102
 msgid "Untracked cache is disabled on this system or location."
 msgstr "Bộ nhớ tạm không theo vết bị tắt trên hệ thống hay vị trí này."
 
-#: dir.c:2846 dir.c:2851
+#: dir.c:2885 dir.c:2890
 #, c-format
 msgid "could not create directories for %s"
 msgstr "không thể tạo thư mục cho %s"
 
-#: dir.c:2876
+#: dir.c:2915
 #, c-format
 msgid "could not migrate git directory from '%s' to '%s'"
 msgstr "không thể di cư thư mục git từ “%s” sang “%s”"
 
-#: entry.c:281
+#: entry.c:176
+msgid "Filtering content"
+msgstr "Nội dung lọc"
+
+#: entry.c:417
 #, c-format
 msgid "could not stat file '%s'"
 msgstr "không thể lấy thống kê tập tin “%s”"
 
-#: fetch-pack.c:251
+#: fetch-pack.c:252
 msgid "git fetch-pack: expected shallow list"
 msgstr "git fetch-pack: cần danh sách shallow"
 
-#: fetch-pack.c:263
+#: fetch-pack.c:264
 msgid "git fetch-pack: expected ACK/NAK, got EOF"
 msgstr "git fetch-pack: cần ACK/NAK, nhưng lại nhận được EOF"
 
-#: fetch-pack.c:282 builtin/archive.c:63
+#: fetch-pack.c:283 builtin/archive.c:63
 #, c-format
 msgid "remote error: %s"
 msgstr "lỗi máy chủ: %s"
 
-#: fetch-pack.c:283
+#: fetch-pack.c:284
 #, c-format
 msgid "git fetch-pack: expected ACK/NAK, got '%s'"
 msgstr "git fetch-pack: cần ACK/NAK, nhưng lại nhận được “%s”"
 
-#: fetch-pack.c:335
+#: fetch-pack.c:336
 msgid "--stateless-rpc requires multi_ack_detailed"
 msgstr "--stateless-rpc cần multi_ack_detailed"
 
-#: fetch-pack.c:421
+#: fetch-pack.c:422
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr "dòng shallow không hợp lệ: %s"
 
-#: fetch-pack.c:427
+#: fetch-pack.c:428
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr "dòng unshallow không hợp lệ: %s"
 
-#: fetch-pack.c:429
+#: fetch-pack.c:430
 #, c-format
 msgid "object not found: %s"
 msgstr "Không tìm thấy đối tượng: %s"
 
-#: fetch-pack.c:432
+#: fetch-pack.c:433
 #, c-format
 msgid "error in object: %s"
 msgstr "lỗi trong đối tượng: %s"
 
-#: fetch-pack.c:434
+#: fetch-pack.c:435
 #, c-format
 msgid "no shallow found: %s"
 msgstr "không tìm shallow nào: %s"
 
-#: fetch-pack.c:437
+#: fetch-pack.c:438
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr "cần shallow/unshallow, nhưng lại nhận được %s"
 
-#: fetch-pack.c:476
+#: fetch-pack.c:477
 #, c-format
 msgid "got %s %d %s"
 msgstr "nhận %s %d - %s"
 
-#: fetch-pack.c:490
+#: fetch-pack.c:491
 #, c-format
 msgid "invalid commit %s"
 msgstr "lần chuyển giao %s không hợp lệ"
 
-#: fetch-pack.c:523
+#: fetch-pack.c:524
 msgid "giving up"
 msgstr "chịu thua"
 
-#: fetch-pack.c:533 progress.c:237
+#: fetch-pack.c:534 progress.c:242
 msgid "done"
 msgstr "xong"
 
-#: fetch-pack.c:545
+#: fetch-pack.c:546
 #, c-format
 msgid "got %s (%d) %s"
 msgstr "nhận %s (%d) %s"
 
-#: fetch-pack.c:591
+#: fetch-pack.c:592
 #, c-format
 msgid "Marking %s as complete"
 msgstr "Đánh dấu %s là đã hoàn thành"
 
-#: fetch-pack.c:775
+#: fetch-pack.c:776
 #, c-format
 msgid "already have %s (%s)"
 msgstr "đã sẵn có %s (%s)"
 
-#: fetch-pack.c:813
+#: fetch-pack.c:814
 msgid "fetch-pack: unable to fork off sideband demultiplexer"
 msgstr "fetch-pack: không thể rẽ nhánh sideband demultiplexer"
 
-#: fetch-pack.c:821
+#: fetch-pack.c:822
 msgid "protocol error: bad pack header"
 msgstr "lỗi giao thức: phần đầu gói bị sai"
 
-#: fetch-pack.c:877
+#: fetch-pack.c:878
 #, c-format
 msgid "fetch-pack: unable to fork off %s"
 msgstr "fetch-pack: không thể rẽ nhánh %s"
 
-#: fetch-pack.c:893
+#: fetch-pack.c:894
 #, c-format
 msgid "%s failed"
 msgstr "%s gặp lỗi"
 
-#: fetch-pack.c:895
+#: fetch-pack.c:896
 msgid "error in sideband demultiplexer"
 msgstr "có lỗi trong sideband demultiplexer"
 
-#: fetch-pack.c:922
+#: fetch-pack.c:923
 msgid "Server does not support shallow clients"
 msgstr "Máy chủ không hỗ trợ máy khách shallow"
 
-#: fetch-pack.c:926
+#: fetch-pack.c:927
 msgid "Server supports multi_ack_detailed"
 msgstr "Máy chủ hỗ trợ multi_ack_detailed"
 
-#: fetch-pack.c:929
+#: fetch-pack.c:930
 msgid "Server supports no-done"
 msgstr "Máy chủ hỗ trợ no-done"
 
-#: fetch-pack.c:935
+#: fetch-pack.c:936
 msgid "Server supports multi_ack"
 msgstr "Máy chủ hỗ trợ multi_ack"
 
-#: fetch-pack.c:939
+#: fetch-pack.c:940
 msgid "Server supports side-band-64k"
 msgstr "Máy chủ hỗ trợ side-band-64k"
 
-#: fetch-pack.c:943
+#: fetch-pack.c:944
 msgid "Server supports side-band"
 msgstr "Máy chủ hỗ trợ side-band"
 
-#: fetch-pack.c:947
+#: fetch-pack.c:948
 msgid "Server supports allow-tip-sha1-in-want"
 msgstr "Máy chủ hỗ trợ allow-tip-sha1-in-want"
 
-#: fetch-pack.c:951
+#: fetch-pack.c:952
 msgid "Server supports allow-reachable-sha1-in-want"
 msgstr "Máy chủ hỗ trợ allow-reachable-sha1-in-want"
 
-#: fetch-pack.c:961
+#: fetch-pack.c:962
 msgid "Server supports ofs-delta"
 msgstr "Máy chủ hỗ trợ ofs-delta"
 
-#: fetch-pack.c:968
+#: fetch-pack.c:969
 #, c-format
 msgid "Server version is %.*s"
 msgstr "Phiên bản máy chủ là %.*s"
 
-#: fetch-pack.c:974
+#: fetch-pack.c:975
 msgid "Server does not support --shallow-since"
 msgstr "Máy chủ không hỗ trợ --shallow-since"
 
-#: fetch-pack.c:978
+#: fetch-pack.c:979
 msgid "Server does not support --shallow-exclude"
 msgstr "Máy chủ không hỗ trợ --shallow-exclude"
 
-#: fetch-pack.c:980
+#: fetch-pack.c:981
 msgid "Server does not support --deepen"
 msgstr "Máy chủ không hỗ trợ --deepen"
 
-#: fetch-pack.c:991
+#: fetch-pack.c:992
 msgid "no common commits"
 msgstr "không có lần chuyển giao chung nào"
 
-#: fetch-pack.c:1003
+#: fetch-pack.c:1004
 msgid "git fetch-pack: fetch failed."
 msgstr "git fetch-pack: fetch gặp lỗi."
 
-#: fetch-pack.c:1165
+#: fetch-pack.c:1166
 msgid "no matching remote head"
 msgstr "không khớp phần đầu máy chủ"
 
-#: fetch-pack.c:1187
+#: fetch-pack.c:1188
 #, c-format
 msgid "no such remote ref %s"
 msgstr "Không có máy chủ tham chiếu nào như %s"
 
-#: fetch-pack.c:1190
+#: fetch-pack.c:1191
 #, c-format
 msgid "Server does not allow request for unadvertised object %s"
 msgstr ""
@@ -1830,7 +1847,7 @@ msgstr "gpg gặp lỗi khi ký dữ liệu"
 msgid "could not create temporary file"
 msgstr "không thể tạo tập tin tạm thời"
 
-#: gpg-interface.c:213
+#: gpg-interface.c:214
 #, c-format
 msgid "failed writing detached signature to '%s'"
 msgstr "gặp lỗi khi ghi chữ ký đính kèm vào “%s”"
@@ -1840,17 +1857,17 @@ msgstr "gặp lỗi khi ghi chữ ký đính kèm vào “%s”"
 msgid "ignore invalid color '%.*s' in log.graphColors"
 msgstr "bỏ qua màu không hợp lệ “%.*s” trong log.graphColors"
 
-#: grep.c:1981
+#: grep.c:1970
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr "“%s”: không thể đọc %s"
 
-#: grep.c:1998 builtin/clone.c:403 builtin/diff.c:81 builtin/rm.c:134
+#: grep.c:1987 builtin/clone.c:404 builtin/diff.c:81 builtin/rm.c:134
 #, c-format
 msgid "failed to stat '%s'"
 msgstr "gặp lỗi khi lấy thống kê về “%s”"
 
-#: grep.c:2009
+#: grep.c:1998
 #, c-format
 msgid "'%s': short read"
 msgstr "“%s”: đọc ngắn"
@@ -1986,12 +2003,12 @@ msgstr "không cho phép tên định danh là rỗng (cho <%s>)"
 msgid "name consists only of disallowed characters: %s"
 msgstr "tên chỉ được phép bao gồm các ký tự sau: %s"
 
-#: ident.c:416 builtin/commit.c:612
+#: ident.c:416 builtin/commit.c:616
 #, c-format
 msgid "invalid date format: %s"
 msgstr "ngày tháng không hợp lệ: %s"
 
-#: lockfile.c:152
+#: lockfile.c:151
 #, c-format
 msgid ""
 "Unable to create '%s.lock': %s.\n"
@@ -2010,7 +2027,7 @@ msgstr ""
 "một tiến trình git có lẽ đã đổ vỡ khi thực hiện ở kho này trước đó:\n"
 "gõ bỏ tập tin một cách thủ công để tiếp tục."
 
-#: lockfile.c:160
+#: lockfile.c:159
 #, c-format
 msgid "Unable to create '%s.lock': %s"
 msgstr "Không thể tạo “%s.lock”: %s"
@@ -2019,78 +2036,78 @@ msgstr "Không thể tạo “%s.lock”: %s"
 msgid "failed to read the cache"
 msgstr "gặp lỗi khi đọc bộ nhớ đệm"
 
-#: merge.c:96 builtin/am.c:1980 builtin/am.c:2015 builtin/checkout.c:377
-#: builtin/checkout.c:591 builtin/clone.c:753
+#: merge.c:96 builtin/am.c:1978 builtin/am.c:2013 builtin/checkout.c:380
+#: builtin/checkout.c:595 builtin/clone.c:754
 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"
 
-#: merge-recursive.c:210
+#: merge-recursive.c:235
 msgid "(bad commit)\n"
 msgstr "(commit sai)\n"
 
-#: merge-recursive.c:232 merge-recursive.c:240
+#: merge-recursive.c:257 merge-recursive.c:265
 #, c-format
 msgid "addinfo_cache failed for path '%s'"
 msgstr "addinfo_cache gặp lỗi đối với đường dẫn “%s”"
 
-#: merge-recursive.c:304
+#: merge-recursive.c:329
 msgid "error building trees"
 msgstr "gặp lỗi khi xây dựng cây"
 
-#: merge-recursive.c:728
+#: merge-recursive.c:752
 #, 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:739
+#: merge-recursive.c:763
 #, 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:753 merge-recursive.c:772
+#: merge-recursive.c:777 merge-recursive.c:796
 msgid ": perhaps a D/F conflict?"
 msgstr ": có lẽ là một xung đột D/F?"
 
-#: merge-recursive.c:762
+#: merge-recursive.c:786
 #, 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:804 builtin/cat-file.c:36
+#: merge-recursive.c:828 builtin/cat-file.c:37
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr "không thể đọc đối tượng %s “%s”"
 
-#: merge-recursive.c:806
+#: merge-recursive.c:830
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr "đối tượng blob được mong đợi cho %s “%s”"
 
-#: merge-recursive.c:830
+#: merge-recursive.c:854
 #, c-format
 msgid "failed to open '%s': %s"
 msgstr "gặp lỗi khi mở “%s”: %s"
 
-#: merge-recursive.c:841
+#: merge-recursive.c:865
 #, c-format
 msgid "failed to symlink '%s': %s"
 msgstr "gặp lỗi khi tạo liên kết mềm (symlink) “%s”: %s"
 
-#: merge-recursive.c:846
+#: merge-recursive.c:870
 #, 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:986
+#: merge-recursive.c:1010
 msgid "Failed to execute internal merge"
 msgstr "Gặp lỗi khi thực hiện trộn nội bộ"
 
-#: merge-recursive.c:990
+#: merge-recursive.c:1014
 #, 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:1093
+#: merge-recursive.c:1117
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -2099,7 +2116,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:1098
+#: merge-recursive.c:1122
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -2108,7 +2125,7 @@ msgstr ""
 "XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s đến %s trong %s. Phiên bản %s "
 "của %s còn lại trong cây (tree)."
 
-#: merge-recursive.c:1105
+#: merge-recursive.c:1129
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
@@ -2117,7 +2134,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) tại %s."
 
-#: merge-recursive.c:1110
+#: merge-recursive.c:1134
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
@@ -2126,20 +2143,20 @@ msgstr ""
 "XUNG ĐỘT (%s/xóa): %s bị xóa trong %s và %s đến %s trong %s. Phiên bản %s "
 "của %s còn lại trong cây (tree) tại %s."
 
-#: merge-recursive.c:1144
+#: merge-recursive.c:1168
 msgid "rename"
 msgstr "đổi tên"
 
-#: merge-recursive.c:1144
+#: merge-recursive.c:1168
 msgid "renamed"
 msgstr "đã đổi tên"
 
-#: merge-recursive.c:1201
+#: merge-recursive.c:1225
 #, 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:1226
+#: merge-recursive.c:1250
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
@@ -2148,140 +2165,140 @@ 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:1231
+#: merge-recursive.c:1255
 msgid " (left unresolved)"
 msgstr " (cần giải quyết)"
 
-#: merge-recursive.c:1293
+#: merge-recursive.c:1317
 #, 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:1326
+#: merge-recursive.c:1350
 #, 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:1529
+#: merge-recursive.c:1553
 #, 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:1544
+#: merge-recursive.c:1568
 #, c-format
 msgid "Adding merged %s"
 msgstr "Thêm hòa trộn %s"
 
-#: merge-recursive.c:1551 merge-recursive.c:1781
+#: merge-recursive.c:1575 merge-recursive.c:1805
 #, c-format
 msgid "Adding as %s instead"
 msgstr "Thay vào đó thêm vào %s"
 
-#: merge-recursive.c:1608
+#: merge-recursive.c:1632
 #, c-format
 msgid "cannot read object %s"
 msgstr "không thể đọc đối tượng %s"
 
-#: merge-recursive.c:1611
+#: merge-recursive.c:1635
 #, 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:1680
+#: merge-recursive.c:1704
 msgid "modify"
 msgstr "sửa đổi"
 
-#: merge-recursive.c:1680
+#: merge-recursive.c:1704
 msgid "modified"
 msgstr "đã sửa"
 
-#: merge-recursive.c:1690
+#: merge-recursive.c:1714
 msgid "content"
 msgstr "nội dung"
 
-#: merge-recursive.c:1697
+#: merge-recursive.c:1721
 msgid "add/add"
 msgstr "thêm/thêm"
 
-#: merge-recursive.c:1733
+#: merge-recursive.c:1757
 #, 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:1747
+#: merge-recursive.c:1771
 #, c-format
 msgid "Auto-merging %s"
 msgstr "Tự-động-hòa-trộn %s"
 
-#: merge-recursive.c:1751 git-submodule.sh:945
+#: merge-recursive.c:1775 git-submodule.sh:944
 msgid "submodule"
 msgstr "mô-đun-con"
 
-#: merge-recursive.c:1752
+#: merge-recursive.c:1776
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr "XUNG ĐỘT (%s): Xung đột hòa trộn trong %s"
 
-#: merge-recursive.c:1846
+#: merge-recursive.c:1870
 #, c-format
 msgid "Removing %s"
 msgstr "Đang xóa %s"
 
-#: merge-recursive.c:1872
+#: merge-recursive.c:1896
 msgid "file/directory"
 msgstr "tập-tin/thư-mục"
 
-#: merge-recursive.c:1878
+#: merge-recursive.c:1902
 msgid "directory/file"
 msgstr "thư-mục/tập-tin"
 
-#: merge-recursive.c:1884
+#: merge-recursive.c:1908
 #, 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:1893
+#: merge-recursive.c:1917
 #, c-format
 msgid "Adding %s"
 msgstr "Thêm \"%s\""
 
-#: merge-recursive.c:1930
-msgid "Already up-to-date!"
+#: merge-recursive.c:1954
+msgid "Already up to date!"
 msgstr "Đã cập nhật rồi!"
 
-#: merge-recursive.c:1939
+#: merge-recursive.c:1963
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr "hòa trộn các cây %s và %s gặp lỗi"
 
-#: merge-recursive.c:2022
+#: merge-recursive.c:2060
 msgid "Merging:"
 msgstr "Đang trộn:"
 
-#: merge-recursive.c:2035
+#: merge-recursive.c:2073
 #, 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:2074
+#: merge-recursive.c:2112
 msgid "merge returned no commit"
 msgstr "hòa trộn không trả về lần chuyển giao nào"
 
-#: merge-recursive.c:2137
+#: merge-recursive.c:2175
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr "Không thể phân tích đối tượng “%s”"
 
-#: merge-recursive.c:2151 builtin/merge.c:646 builtin/merge.c:793
+#: merge-recursive.c:2189 builtin/merge.c:655 builtin/merge.c:814
 msgid "Unable to write index."
 msgstr "Không thể ghi bảng mục lục"
 
-#: notes-merge.c:273
+#: notes-merge.c:272
 #, c-format
 msgid ""
 "You have not concluded your previous notes merge (%s exists).\n"
@@ -2293,7 +2310,7 @@ msgstr ""
 "chuyển giao hay bãi bỏ lần hòa trộn trước đây và bắt đầu một hòa trộn ghi "
 "chú mới."
 
-#: notes-merge.c:280
+#: notes-merge.c:279
 #, c-format
 msgid "You have not concluded your notes merge (%s exists)."
 msgstr "Bạn chưa kết thúc việc hòa trộn ghi chú (%s vẫn tồn tại)."
@@ -2323,16 +2340,31 @@ msgstr "Từ chối ghi đè ghi chú trong %s (nằm ngoài refs/notes/)"
 msgid "Bad %s value: '%s'"
 msgstr "Giá trị %s sai: “%s”"
 
-#: object.c:240
+#: object.c:239
 #, c-format
 msgid "unable to parse object: %s"
 msgstr "không thể phân tích đối tượng: “%s”"
 
+#: packfile.c:556
+msgid "offset before end of packfile (broken .idx?)"
+msgstr "vị trí tương đối trước điểm kết thúc của tập tin gói (.idx hỏng à?)"
+
+#: packfile.c:1683
+#, c-format
+msgid "offset before start of pack index for %s (corrupt index?)"
+msgstr "vị trí tương đối nằm trước chỉ mục gói cho %s (mục lục bị hỏng à?)"
+
+#: packfile.c:1687
+#, c-format
+msgid "offset beyond end of pack index for %s (truncated index?)"
+msgstr ""
+"vị trí tương đối vượt quá cuối của chỉ mục gói cho %s (mục lục bị cắt cụt à?)"
+
 #: parse-options.c:573
 msgid "..."
 msgstr "…"
 
-#: parse-options.c:591
+#: parse-options.c:592
 #, c-format
 msgid "usage: %s"
 msgstr "cách dùng: %s"
@@ -2340,17 +2372,17 @@ msgstr "cách dùng: %s"
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation.
 #.
-#: parse-options.c:597
+#: parse-options.c:598
 #, c-format
 msgid "   or: %s"
 msgstr "     hoặc: %s"
 
-#: parse-options.c:600
+#: parse-options.c:601
 #, c-format
 msgid "    %s"
 msgstr "    %s"
 
-#: parse-options.c:634
+#: parse-options.c:640
 msgid "-NUM"
 msgstr "-SỐ"
 
@@ -2359,7 +2391,7 @@ msgstr "-SỐ"
 msgid "malformed object name '%s'"
 msgstr "tên đối tượng dị hình “%s”"
 
-#: path.c:890
+#: path.c:891
 #, c-format
 msgid "Could not make %s writable by group"
 msgstr "Không thể làm %s được ghi bởi nhóm"
@@ -2434,7 +2466,7 @@ msgstr "“%s” (mnemonic: “%c”)"
 msgid "%s: pathspec magic not supported by this command: %s"
 msgstr "%s: số mầu nhiệm đặc tả đường dẫn chưa được hỗ trợ bởi lệnh này: %s"
 
-#: pathspec.c:575
+#: pathspec.c:571
 msgid ""
 "empty strings as pathspecs will be made invalid in upcoming releases. please "
 "use . instead if you meant to match all paths"
@@ -2442,12 +2474,12 @@ msgstr ""
 "chuỗi rỗng làm đặc tả đường dẫn không hợp lệ ở lần phát hành kế tiếp. Vui "
 "lòng dùng . để thay thế nếu ý bạn là khớp mọi đường dẫn"
 
-#: pathspec.c:599
+#: pathspec.c:595
 #, c-format
 msgid "pathspec '%s' is beyond a symbolic link"
 msgstr "đặc tả đường dẫn “%s” vượt ra ngoài liên kết mềm"
 
-#: pretty.c:963
+#: pretty.c:962
 msgid "unable to parse --pretty format"
 msgstr "không thể phân tích định dạng --pretty"
 
@@ -2469,50 +2501,51 @@ 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"
 
-#: read-cache.c:2308 builtin/merge.c:1019
+#: read-cache.c:2316 builtin/merge.c:1046
 #, c-format
 msgid "could not close '%s'"
 msgstr "không thể đóng “%s”"
 
-#: read-cache.c:2383 sequencer.c:1353 sequencer.c:2054
+#: read-cache.c:2394 sequencer.c:1355 sequencer.c:2077
 #, c-format
 msgid "could not stat '%s'"
 msgstr "không thể lấy thông tin thống kê về “%s”"
 
-#: read-cache.c:2396
+#: read-cache.c:2407
 #, c-format
 msgid "unable to open git dir: %s"
 msgstr "không thể mở thư mục git: %s"
 
-#: read-cache.c:2408
+#: read-cache.c:2419
 #, c-format
 msgid "unable to unlink: %s"
 msgstr "không thể bỏ liên kết (unlink): “%s”"
 
-#: refs.c:622
+#: refs.c:638
 #, c-format
 msgid "Could not open '%s' for writing"
 msgstr "Không thể mở “%s” để ghi"
 
-#: refs.c:1769
+#: refs.c:1779
 msgid "ref updates forbidden inside quarantine environment"
 msgstr "cập nhật tham chiếu bị cấm trong môi trường kiểm tra"
 
-#: refs/files-backend.c:1664
+#: refs/files-backend.c:1136
+#, c-format
+msgid "could not remove reference %s"
+msgstr "không thể gỡ bỏ tham chiếu: %s"
+
+#: refs/files-backend.c:1150 refs/packed-backend.c:1430
+#: refs/packed-backend.c:1440
 #, c-format
 msgid "could not delete reference %s: %s"
 msgstr "không thể xóa bỏ tham chiếu %s: %s"
 
-#: refs/files-backend.c:1667
+#: refs/files-backend.c:1153 refs/packed-backend.c:1443
 #, c-format
 msgid "could not delete references: %s"
 msgstr "không thể xóa bỏ tham chiếu: %s"
 
-#: refs/files-backend.c:1676
-#, c-format
-msgid "could not remove reference %s"
-msgstr "không thể gỡ bỏ tham chiếu: %s"
-
 #: ref-filter.c:35 wt-status.c:1811
 msgid "gone"
 msgstr "đã ra đi"
@@ -2532,157 +2565,157 @@ msgstr "đằng sau %d"
 msgid "ahead %d, behind %d"
 msgstr "trước %d, sau %d"
 
-#: ref-filter.c:105
+#: ref-filter.c:104
 #, c-format
 msgid "expected format: %%(color:<color>)"
 msgstr "cần định dạng: %%(color:<color>)"
 
-#: ref-filter.c:107
+#: ref-filter.c:106
 #, c-format
 msgid "unrecognized color: %%(color:%s)"
 msgstr "không nhận ra màu: %%(màu:%s)"
 
-#: ref-filter.c:121
+#: ref-filter.c:126
 #, c-format
 msgid "Integer value expected refname:lstrip=%s"
 msgstr "Giá trị nguyên cần tên tham chiếu:lstrip=%s"
 
-#: ref-filter.c:125
+#: ref-filter.c:130
 #, c-format
 msgid "Integer value expected refname:rstrip=%s"
 msgstr "Giá trị nguyên cần tên tham chiếu:rstrip=%s"
 
-#: ref-filter.c:127
+#: ref-filter.c:132
 #, c-format
 msgid "unrecognized %%(%s) argument: %s"
 msgstr "đối số không được thừa nhận %%(%s): %s"
 
-#: ref-filter.c:167
+#: ref-filter.c:172
 #, c-format
 msgid "%%(body) does not take arguments"
 msgstr "%%(body) không nhận các đối số"
 
-#: ref-filter.c:174
+#: ref-filter.c:179
 #, c-format
 msgid "%%(subject) does not take arguments"
 msgstr "%%(subject) không nhận các đối số"
 
-#: ref-filter.c:181
+#: ref-filter.c:186
 #, c-format
 msgid "%%(trailers) does not take arguments"
 msgstr "%%(trailers) không nhận các đối số"
 
-#: ref-filter.c:200
+#: ref-filter.c:205
 #, 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:202
+#: ref-filter.c:207
 #, c-format
 msgid "unrecognized %%(contents) argument: %s"
 msgstr "đối số không được thừa nhận %%(contents): %s"
 
-#: ref-filter.c:215
+#: ref-filter.c:220
 #, c-format
 msgid "positive value expected objectname:short=%s"
 msgstr "cần nội dung mang giá trị dương:shot=%s"
 
-#: ref-filter.c:219
+#: ref-filter.c:224
 #, c-format
 msgid "unrecognized %%(objectname) argument: %s"
 msgstr "đối số không được thừa nhận %%(objectname): %s"
 
-#: ref-filter.c:246
+#: ref-filter.c:251
 #, c-format
 msgid "expected format: %%(align:<width>,<position>)"
 msgstr "cần định dạng: %%(align:<width>,<position>)"
 
-#: ref-filter.c:258
+#: ref-filter.c:263
 #, c-format
 msgid "unrecognized position:%s"
 msgstr "vị trí không được thừa nhận:%s"
 
-#: ref-filter.c:262
+#: ref-filter.c:267
 #, c-format
 msgid "unrecognized width:%s"
 msgstr "chiều rộng không được thừa nhận:%s"
 
-#: ref-filter.c:268
+#: ref-filter.c:273
 #, c-format
 msgid "unrecognized %%(align) argument: %s"
 msgstr "đối số không được thừa nhận %%(align): %s"
 
-#: ref-filter.c:272
+#: ref-filter.c:277
 #, 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:287
+#: ref-filter.c:292
 #, c-format
 msgid "unrecognized %%(if) argument: %s"
 msgstr "đối số không được thừa nhận %%(if): %s"
 
-#: ref-filter.c:378
+#: ref-filter.c:382
 #, c-format
 msgid "malformed field name: %.*s"
 msgstr "tên trường dị hình: %.*s"
 
-#: ref-filter.c:404
+#: ref-filter.c:408
 #, c-format
 msgid "unknown field name: %.*s"
 msgstr "không hiểu tên trường: %.*s"
 
-#: ref-filter.c:508
+#: ref-filter.c:520
 #, c-format
 msgid "format: %%(if) atom used without a %%(then) atom"
 msgstr "định dạng: nguyên tử %%(if) được dùng mà không có nguyên tử %%(then)"
 
-#: ref-filter.c:568
+#: ref-filter.c:580
 #, c-format
 msgid "format: %%(then) atom used without an %%(if) atom"
 msgstr "định dạng: nguyên tử %%(then) được dùng mà không có nguyên tử %%(if)"
 
-#: ref-filter.c:570
+#: ref-filter.c:582
 #, c-format
 msgid "format: %%(then) atom used more than once"
 msgstr "định dạng: nguyên tử %%(then) được dùng nhiều hơn một lần"
 
-#: ref-filter.c:572
+#: ref-filter.c:584
 #, c-format
 msgid "format: %%(then) atom used after %%(else)"
 msgstr "định dạng: nguyên tử %%(then) được dùng sau %%(else)"
 
-#: ref-filter.c:598
+#: ref-filter.c:610
 #, c-format
 msgid "format: %%(else) atom used without an %%(if) atom"
 msgstr "định dạng: nguyên tử %%(else) được dùng mà không có nguyên tử %%(if)"
 
-#: ref-filter.c:600
+#: ref-filter.c:612
 #, c-format
 msgid "format: %%(else) atom used without a %%(then) atom"
 msgstr "định dạng: nguyên tử %%(else) được dùng mà không có nguyên tử %%(then)"
 
-#: ref-filter.c:602
+#: ref-filter.c:614
 #, c-format
 msgid "format: %%(else) atom used more than once"
 msgstr "định dạng: nguyên tử %%(else) được dùng nhiều hơn một lần"
 
-#: ref-filter.c:615
+#: ref-filter.c:627
 #, 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:670
+#: ref-filter.c:682
 #, c-format
 msgid "malformed format string %s"
 msgstr "chuỗi định dạng dị hình %s"
 
-#: ref-filter.c:1254
+#: ref-filter.c:1268
 #, c-format
 msgid "(no branch, rebasing %s)"
 msgstr "(không nhánh, đang cải tổ %s)"
 
-#: ref-filter.c:1257
+#: ref-filter.c:1271
 #, 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)"
@@ -2690,7 +2723,7 @@ msgstr "(không nhánh, di chuyển nửa bước được bắt đầu tại %s
 #. TRANSLATORS: make sure this matches "HEAD
 #. detached at " in wt-status.c
 #.
-#: ref-filter.c:1265
+#: ref-filter.c:1279
 #, c-format
 msgid "(HEAD detached at %s)"
 msgstr "(HEAD được tách rời tại %s)"
@@ -2698,109 +2731,109 @@ msgstr "(HEAD được tách rời tại %s)"
 #. TRANSLATORS: make sure this matches "HEAD
 #. detached from " in wt-status.c
 #.
-#: ref-filter.c:1272
+#: ref-filter.c:1286
 #, c-format
 msgid "(HEAD detached from %s)"
 msgstr "(HEAD được tách rời từ %s)"
 
-#: ref-filter.c:1276
+#: ref-filter.c:1290
 msgid "(no branch)"
 msgstr "(không nhánh)"
 
-#: ref-filter.c:1426 ref-filter.c:1457
+#: ref-filter.c:1439 ref-filter.c:1470
 #, c-format
 msgid "missing object %s for %s"
 msgstr "thiếu đối tượng %s cho %s"
 
-#: ref-filter.c:1429 ref-filter.c:1460
+#: ref-filter.c:1442 ref-filter.c:1473
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr "parse_object_buffer gặp lỗi trên %s cho %s"
 
-#: ref-filter.c:1760
+#: ref-filter.c:1773
 #, c-format
 msgid "malformed object at '%s'"
 msgstr "đối tượng dị hình tại “%s”"
 
-#: ref-filter.c:1827
+#: ref-filter.c:1840
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr "đang lờ đi tham chiếu với tên hỏng %s"
 
-#: ref-filter.c:1832
+#: ref-filter.c:1845
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr "đang lờ đi tham chiếu hỏng %s"
 
-#: ref-filter.c:2095
+#: ref-filter.c:2107
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr "định dạng: thiếu nguyên tử %%(end)"
 
-#: ref-filter.c:2176
+#: ref-filter.c:2201
 #, c-format
 msgid "malformed object name %s"
 msgstr "tên đối tượng dị hình %s"
 
-#: remote.c:747
+#: remote.c:750
 #, 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:751
+#: remote.c:754
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr "%s thường theo dõi %s, không phải %s"
 
-#: remote.c:755
+#: remote.c:758
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr "%s theo dõi cả %s và %s"
 
-#: remote.c:763
+#: remote.c:766
 msgid "Internal error"
 msgstr "Lỗi nội bộ"
 
-#: remote.c:1680 remote.c:1782
+#: remote.c:1681 remote.c:1783
 msgid "HEAD does not point to a branch"
 msgstr "HEAD không chỉ đến một nhánh nào cả"
 
-#: remote.c:1689
+#: remote.c:1690
 #, c-format
 msgid "no such branch: '%s'"
 msgstr "không có nhánh nào như thế: “%s”"
 
-#: remote.c:1692
+#: remote.c:1693
 #, 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:1698
+#: remote.c:1699
 #, 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:1713
+#: remote.c:1714
 #, 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:1725
+#: remote.c:1726
 #, 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:1736
+#: remote.c:1737
 #, c-format
 msgid "push refspecs for '%s' do not include '%s'"
 msgstr "đẩy refspecs cho “%s” không bao gồm “%s”"
 
-#: remote.c:1749
+#: remote.c:1750
 msgid "push has no destination (push.default is 'nothing')"
 msgstr "đẩy lên mà không có đích (push.default là “nothing”)"
 
-#: remote.c:1771
+#: remote.c:1772
 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"
 
@@ -2816,7 +2849,7 @@ msgstr "   (dùng \" git branch --unset-upstream\" để sửa)\n"
 
 #: remote.c:2083
 #, c-format
-msgid "Your branch is up-to-date with '%s'.\n"
+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:2087
@@ -2861,16 +2894,16 @@ 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:2187
+#: revision.c:2256
 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:2190
+#: revision.c:2259
 #, 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:2384
+#: revision.c:2453
 msgid "--first-parent is incompatible with --bisect"
 msgstr "--first-parent xung khắc với --bisect"
 
@@ -2912,24 +2945,24 @@ msgstr "kết thúc nhận không hỗ trợ đẩy --atomic"
 msgid "the receiving end does not support push options"
 msgstr "kết thúc nhận không hỗ trợ các tùy chọn của lệnh push"
 
-#: sequencer.c:216
+#: sequencer.c:218
 msgid "revert"
 msgstr "hoàn nguyên"
 
-#: sequencer.c:218
+#: sequencer.c:220
 msgid "cherry-pick"
 msgstr "cherry-pick"
 
-#: sequencer.c:220
+#: sequencer.c:222
 msgid "rebase -i"
 msgstr "rebase -i"
 
-#: sequencer.c:222
+#: sequencer.c:224
 #, c-format
 msgid "Unknown action: %d"
 msgstr "Không nhận ra thao tác: %d"
 
-#: sequencer.c:279
+#: sequencer.c:281
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
@@ -2937,7 +2970,7 @@ msgstr ""
 "sau khi giải quyết các xung đột, đánh dấu đường dẫn đã sửa\n"
 "với lệnh “git add <đường_dẫn>” hoặc “git rm <đường_dẫn>”"
 
-#: sequencer.c:282
+#: sequencer.c:284
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
@@ -2947,42 +2980,43 @@ msgstr ""
 "với lệnh “git add <đường_dẫn>” hoặc “git rm <đường_dẫn>”\n"
 "và chuyển giao kết quả bằng lệnh “git commit”"
 
-#: sequencer.c:295 sequencer.c:1685
+#: sequencer.c:297 sequencer.c:1704
 #, c-format
 msgid "could not lock '%s'"
 msgstr "không thể khóa “%s”"
 
-#: sequencer.c:298 sequencer.c:1563 sequencer.c:1690 sequencer.c:1704
+#: sequencer.c:300 sequencer.c:1581 sequencer.c:1709 sequencer.c:1723
+#: sequencer.c:2733 sequencer.c:2749
 #, c-format
 msgid "could not write to '%s'"
 msgstr "không thể ghi vào “%s”"
 
-#: sequencer.c:302
+#: sequencer.c:304
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr "không thể ghi eol vào “%s”"
 
-#: sequencer.c:306 sequencer.c:1568 sequencer.c:1692
+#: sequencer.c:308 sequencer.c:1586 sequencer.c:1711
 #, c-format
 msgid "failed to finalize '%s'."
 msgstr "gặp lỗi khi finalize “%s”"
 
-#: sequencer.c:330 sequencer.c:817 sequencer.c:1589 builtin/am.c:258
-#: builtin/commit.c:750 builtin/merge.c:1017
+#: sequencer.c:332 sequencer.c:819 sequencer.c:1607 builtin/am.c:259
+#: builtin/commit.c:754 builtin/merge.c:1044
 #, c-format
 msgid "could not read '%s'"
 msgstr "Không thể đọc “%s”."
 
-#: sequencer.c:356
+#: sequencer.c:358
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr "các thay đổi nội bộ của bạn có thể bị ghi đè bởi lệnh %s."
 
-#: sequencer.c:360
+#: sequencer.c:362
 msgid "commit your changes or stash them to proceed."
 msgstr "chuyển giao các thay đổi của bạn hay tạm cất (stash) chúng để xử lý."
 
-#: sequencer.c:389
+#: sequencer.c:391
 #, c-format
 msgid "%s: fast-forward"
 msgstr "%s: chuyển-tiếp-nhanh"
@@ -2990,20 +3024,20 @@ msgstr "%s: chuyển-tiếp-nhanh"
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
 #. "rebase -i".
 #.
-#: sequencer.c:472
+#: sequencer.c:474
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr "%s: Không thể ghi tập tin lưu bảng mục lục mới"
 
-#: sequencer.c:491
+#: sequencer.c:493
 msgid "could not resolve HEAD commit\n"
 msgstr "không thể phân giải lần chuyển giao HEAD\n"
 
-#: sequencer.c:511
+#: sequencer.c:513
 msgid "unable to update cache tree\n"
 msgstr "không thể cập nhật cây bộ nhớ đệm\n"
 
-#: sequencer.c:595
+#: sequencer.c:597
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -3032,17 +3066,17 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: sequencer.c:697
+#: sequencer.c:699
 #, c-format
 msgid "could not parse commit %s\n"
 msgstr "không thể phân tích lần chuyển giao %s\n"
 
-#: sequencer.c:702
+#: sequencer.c:704
 #, c-format
 msgid "could not parse parent commit %s\n"
 msgstr "không thể phân tích lần chuyển giao cha mẹ “%s”\n"
 
-#: sequencer.c:824
+#: sequencer.c:826
 #, c-format
 msgid ""
 "unexpected 1st line of squash message:\n"
@@ -3053,7 +3087,7 @@ msgstr ""
 "\n"
 "\t%.*s"
 
-#: sequencer.c:830
+#: sequencer.c:832
 #, c-format
 msgid ""
 "invalid 1st line of squash message:\n"
@@ -3064,233 +3098,234 @@ msgstr ""
 "\n"
 "\t%.*s"
 
-#: sequencer.c:836 sequencer.c:861
+#: sequencer.c:838 sequencer.c:863
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr "Đây là tổ hợp của %d lần chuyển giao."
 
-#: sequencer.c:845
+#: sequencer.c:847 sequencer.c:2681
 msgid "need a HEAD to fixup"
 msgstr "cần một HEAD để sửa"
 
-#: sequencer.c:847
+#: sequencer.c:849
 msgid "could not read HEAD"
 msgstr "không thể đọc HEAD"
 
-#: sequencer.c:849
+#: sequencer.c:851
 msgid "could not read HEAD's commit message"
 msgstr "không thể đọc phần chú thích (message) của HEAD"
 
-#: sequencer.c:855
+#: sequencer.c:857
 #, c-format
 msgid "cannot write '%s'"
 msgstr "không thể ghi “%s”"
 
-#: sequencer.c:864 git-rebase--interactive.sh:445
+#: sequencer.c:866 git-rebase--interactive.sh:446
 msgid "This is the 1st commit message:"
 msgstr "Đây là chú thích cho lần chuyển giao thứ nhất:"
 
-#: sequencer.c:872
+#: sequencer.c:874
 #, c-format
 msgid "could not read commit message of %s"
 msgstr "không thể đọc phần chú thích (message) của %s"
 
-#: sequencer.c:879
+#: sequencer.c:881
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr "Đây là chú thích cho lần chuyển giao thứ #%d:"
 
-#: sequencer.c:884
+#: sequencer.c:886
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr "Chú thích cho lần chuyển giao thứ #%d sẽ bị bỏ qua:"
 
-#: sequencer.c:889
+#: sequencer.c:891
 #, c-format
 msgid "unknown command: %d"
 msgstr "không hiểu câu lệnh %d"
 
-#: sequencer.c:955
+#: sequencer.c:957
 msgid "your index file is unmerged."
 msgstr "tập tin lưu mục lục của bạn không được hòa trộn."
 
-#: sequencer.c:973
+#: sequencer.c:975
 #, c-format
 msgid "commit %s is a merge but no -m option was given."
 msgstr "lần chuyển giao %s là một lần hòa trộn nhưng không đưa ra tùy chọn -m."
 
-#: sequencer.c:981
+#: sequencer.c:983
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr "lần chuyển giao %s không có cha mẹ %d"
 
-#: sequencer.c:985
+#: sequencer.c:987
 #, c-format
 msgid "mainline was specified but commit %s is not a merge."
 msgstr ""
 "luồng chính đã được chỉ ra nhưng lần chuyển giao %s không phải là một lần "
 "hòa trộn."
 
-#: sequencer.c:991
+#: sequencer.c:993
 #, c-format
 msgid "cannot get commit message for %s"
 msgstr "không thể lấy ghi chú lần chuyển giao cho %s"
 
 #. TRANSLATORS: The first %s will be a "todo" command like
 #. "revert" or "pick", the second %s a SHA1.
-#: sequencer.c:1012
+#: sequencer.c:1014
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr "%s: không thể phân tích lần chuyển giao mẹ của %s"
 
-#: sequencer.c:1075 sequencer.c:1830
+#: sequencer.c:1077 sequencer.c:1853
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr "không thể đổi tên “%s” thành “%s”"
 
-#: sequencer.c:1126
+#: sequencer.c:1128
 #, c-format
 msgid "could not revert %s... %s"
 msgstr "không thể hoàn nguyên %s… %s"
 
-#: sequencer.c:1127
+#: sequencer.c:1129
 #, c-format
 msgid "could not apply %s... %s"
 msgstr "không thể áp dụng miếng vá %s… %s"
 
-#: sequencer.c:1169
+#: sequencer.c:1171
 msgid "empty commit set passed"
 msgstr "lần chuyển giao trống rỗng đặt là hợp quy cách"
 
-#: sequencer.c:1179
+#: sequencer.c:1181
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr "git %s: gặp lỗi đọc bảng mục lục"
 
-#: sequencer.c:1186
+#: sequencer.c:1188
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr "git %s: gặp lỗi khi làm tươi mới bảng mục lục"
 
-#: sequencer.c:1306
+#: sequencer.c:1308
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr "dòng không hợp lệ %d: %.*s"
 
-#: sequencer.c:1314
+#: sequencer.c:1316
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr "không thể “%s” thể mà không có lần chuyển giao kế trước"
 
-#: sequencer.c:1347
+#: sequencer.c:1349 sequencer.c:2503 sequencer.c:2588 sequencer.c:2614
+#: sequencer.c:2691 sequencer.c:2810 sequencer.c:2951
 #, c-format
 msgid "could not read '%s'."
 msgstr "không thể đọc “%s”."
 
-#: sequencer.c:1359
+#: sequencer.c:1361
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr "vui lòng sửa lỗi này bằng cách dùng “git rebase --edit-todo”."
 
-#: sequencer.c:1361
+#: sequencer.c:1363
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr "bảng chỉ thị không thể dùng được: %s"
 
-#: sequencer.c:1366
+#: sequencer.c:1368
 msgid "no commits parsed."
 msgstr "không có lần chuyển giao nào được phân tích."
 
-#: sequencer.c:1377
+#: sequencer.c:1379
 msgid "cannot cherry-pick during a revert."
 msgstr "không thể cherry-pick trong khi hoàn nguyên."
 
-#: sequencer.c:1379
+#: sequencer.c:1381
 msgid "cannot revert during a cherry-pick."
 msgstr "không thể thực hiện việc hoàn nguyên trong khi đang cherry-pick."
 
-#: sequencer.c:1442
+#: sequencer.c:1448
 #, c-format
 msgid "invalid key: %s"
 msgstr "khóa không đúng: %s"
 
-#: sequencer.c:1445
+#: sequencer.c:1451
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr "giá trị cho %s không hợp lệ: %s"
 
-#: sequencer.c:1502
+#: sequencer.c:1517
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr "bảng tùy chọn dị hình: “%s”"
 
-#: sequencer.c:1540
+#: sequencer.c:1555
 msgid "a cherry-pick or revert is already in progress"
 msgstr "có một thao tác “cherry-pick” hoặc “revert” đang được thực hiện"
 
-#: sequencer.c:1541
+#: sequencer.c:1556
 msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
 msgstr "hãy thử \"git cherry-pick (--continue | --quit | --abort)\""
 
-#: sequencer.c:1544
+#: sequencer.c:1559
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr "không thể tạo thư mục xếp dãy “%s”"
 
-#: sequencer.c:1558
+#: sequencer.c:1574
 msgid "could not lock HEAD"
 msgstr "không thể khóa HEAD"
 
-#: sequencer.c:1614 sequencer.c:2188
+#: sequencer.c:1632 sequencer.c:2211
 msgid "no cherry-pick or revert in progress"
 msgstr "không cherry-pick hay hoàn nguyên trong tiến trình"
 
-#: sequencer.c:1616
+#: sequencer.c:1634
 msgid "cannot resolve HEAD"
 msgstr "không thể phân giải HEAD"
 
-#: sequencer.c:1618 sequencer.c:1652
+#: sequencer.c:1636 sequencer.c:1671
 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:1638 builtin/grep.c:929
+#: sequencer.c:1657 builtin/grep.c:711
 #, c-format
 msgid "cannot open '%s'"
 msgstr "không mở được “%s”"
 
-#: sequencer.c:1640
+#: sequencer.c:1659
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr "không thể đọc “%s”: %s"
 
-#: sequencer.c:1641
+#: sequencer.c:1660
 msgid "unexpected end of file"
 msgstr "gặp kết thúc tập tin đột xuất"
 
-#: sequencer.c:1647
+#: sequencer.c:1666
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr "tập tin HEAD “pre-cherry-pick” đã lưu “%s” bị hỏng"
 
-#: sequencer.c:1658
+#: sequencer.c:1677
 msgid "You seem to have moved HEAD. Not rewinding, check your HEAD!"
 msgstr ""
 "Bạn có lẽ đã có HEAD đã bị di chuyển đi, Không thể tua, kiểm tra HEAD của "
 "bạn!"
 
-#: sequencer.c:1795 sequencer.c:2086
+#: sequencer.c:1818 sequencer.c:2109
 msgid "cannot read HEAD"
 msgstr "không thể đọc HEAD"
 
-#: sequencer.c:1835 builtin/difftool.c:633
+#: sequencer.c:1858 builtin/difftool.c:640
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr "không thể chép “%s” sang “%s”"
 
-#: sequencer.c:1851
+#: sequencer.c:1874
 msgid "could not read index"
 msgstr "không thể đọc bảng mục lục"
 
-#: sequencer.c:1856
+#: sequencer.c:1879
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -3305,11 +3340,11 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:1862
+#: sequencer.c:1885
 msgid "and made changes to the index and/or the working tree\n"
 msgstr "và tạo các thay đổi bảng mục lục và/hay cây làm việc\n"
 
-#: sequencer.c:1868
+#: sequencer.c:1891
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -3326,17 +3361,17 @@ msgstr ""
 "  git rebase --continue\n"
 "\n"
 
-#: sequencer.c:1925
+#: sequencer.c:1948
 #, c-format
 msgid "Applied autostash.\n"
 msgstr "Đã áp dụng autostash.\n"
 
-#: sequencer.c:1937
+#: sequencer.c:1960
 #, c-format
 msgid "cannot store %s"
 msgstr "không thử lưu “%s”"
 
-#: sequencer.c:1940 git-rebase.sh:173
+#: sequencer.c:1963 git-rebase.sh:175
 #, c-format
 msgid ""
 "Applying autostash resulted in conflicts.\n"
@@ -3348,57 +3383,57 @@ msgstr ""
 "Bạn có thể chạy lệnh \"git stash pop\" hay \"git stash drop\" bất kỳ lúc "
 "nào.\n"
 
-#: sequencer.c:2022
+#: sequencer.c:2045
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr "Dừng lại ở %s…  %.*s\n"
 
-#: sequencer.c:2064
+#: sequencer.c:2087
 #, c-format
 msgid "unknown command %d"
 msgstr "không hiểu câu lệnh %d"
 
-#: sequencer.c:2094
+#: sequencer.c:2117
 msgid "could not read orig-head"
 msgstr "không thể đọc orig-head"
 
-#: sequencer.c:2099
+#: sequencer.c:2122 sequencer.c:2678
 msgid "could not read 'onto'"
 msgstr "không thể đọc “onto”."
 
-#: sequencer.c:2106
+#: sequencer.c:2129
 #, c-format
 msgid "could not update %s"
 msgstr "không thể cập nhật %s"
 
-#: sequencer.c:2113
+#: sequencer.c:2136
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr "không thể cập nhật HEAD thành %s"
 
-#: sequencer.c:2197
+#: sequencer.c:2220
 msgid "cannot rebase: You have unstaged changes."
 msgstr "không thể cải tổ: Bạn có các thay đổi chưa được đưa lên bệ phóng."
 
-#: sequencer.c:2202
+#: sequencer.c:2225
 msgid "could not remove CHERRY_PICK_HEAD"
 msgstr "không thể xóa bỏ CHERRY_PICK_HEAD"
 
-#: sequencer.c:2211
+#: sequencer.c:2234
 msgid "cannot amend non-existing commit"
 msgstr "không thể tu bỏ một lần chuyển giao không tồn tại"
 
-#: sequencer.c:2213
+#: sequencer.c:2236
 #, c-format
 msgid "invalid file: '%s'"
 msgstr "tập tin không hợp lệ: “%s”"
 
-#: sequencer.c:2215
+#: sequencer.c:2238
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr "nội dung không hợp lệ: “%s”"
 
-#: sequencer.c:2218
+#: sequencer.c:2241
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
@@ -3408,24 +3443,111 @@ msgstr ""
 "Bạn có các thay đổi chưa chuyển giao trong thư mục làm việc. Vui lòng\n"
 "chuyển giao chúng trước và sau đó chạy lệnh “git rebase --continue” lần nữa."
 
-#: sequencer.c:2228
+#: sequencer.c:2251
 msgid "could not commit staged changes."
 msgstr "không thể chuyển giao các thay đổi đã đưa lên bệ phóng."
 
-#: sequencer.c:2308
+#: sequencer.c:2331
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr "%s: không thể cherry-pick một %s"
 
-#: sequencer.c:2312
+#: sequencer.c:2335
 #, c-format
 msgid "%s: bad revision"
 msgstr "%s: điểm xét duyệt sai"
 
-#: sequencer.c:2345
+#: sequencer.c:2368
 msgid "can't revert as initial commit"
 msgstr "không thể hoàn nguyên một lần chuyển giao khởi tạo"
 
+#: sequencer.c:2471
+msgid "make_script: unhandled options"
+msgstr "make_script: các tùy chọn được không xử lý"
+
+#: sequencer.c:2474
+msgid "make_script: error preparing revisions"
+msgstr "make_script: lỗi chuẩn bị điểm hiệu chỉnh"
+
+#: sequencer.c:2510
+#, c-format
+msgid "unusable todo list: '%s'"
+msgstr "danh sách cần làm không dùng được: “%s”"
+
+#: sequencer.c:2516
+#, c-format
+msgid "unable to open '%s' for writing"
+msgstr "không thể mở “%s” để ghi"
+
+#: sequencer.c:2561
+#, c-format
+msgid "unrecognized setting %s for optionrebase.missingCommitsCheck. Ignoring."
+msgstr ""
+"không nhận ra cài đặt %s cho optionrebase.missingCommitsCheck. Nên bỏ qua."
+
+#: sequencer.c:2641
+#, c-format
+msgid ""
+"Warning: some commits may have been dropped accidentally.\n"
+"Dropped commits (newer to older):\n"
+msgstr ""
+"Cảnh báo: một số lần chuyển giao có lẽ đã bị xóa một cách tình cờ.\n"
+"Các lần chuyển giao bị xóa (từ mới đến cũ):\n"
+
+#: sequencer.c:2648
+#, c-format
+msgid ""
+"To avoid this message, use \"drop\" to explicitly remove a commit.\n"
+"\n"
+"Use 'git config rebase.missingCommitsCheck' to change the level of "
+"warnings.\n"
+"The possible behaviours are: ignore, warn, error.\n"
+"\n"
+msgstr ""
+"Để tránh thông báo này, dùng \"drop\" một cách rõ ràng để xóa bỏ một lần "
+"chuyển giao.\n"
+"\n"
+"Dùng “git config rebase.missingCommitsCheck” để thay đổi mức độ của cảnh "
+"báo.\n"
+"Cánh ứng xử có thể là: ignore, warn, error.\n"
+"\n"
+
+#: sequencer.c:2660
+#, c-format
+msgid ""
+"You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
+"continue'.\n"
+"Or you can abort the rebase with 'git rebase --abort'.\n"
+msgstr ""
+"Bạn có thể sửa nó bằng “git rebase --edit-todo” và sau đó chạy “git rebase --"
+"continue”.\n"
+"Hoặc là bạn có thể bãi bỏ việc cải tổ bằng “git rebase --abort”.\n"
+
+#: sequencer.c:2708
+#, c-format
+msgid "could not parse commit '%s'"
+msgstr "không thể phân tích lần chuyển giao “%s”"
+
+#: sequencer.c:2727 sequencer.c:2742 wrapper.c:225 wrapper.c:395
+#: builtin/am.c:775
+#, c-format
+msgid "could not open '%s' for writing"
+msgstr "không thể mở “%s” để ghi"
+
+#: sequencer.c:2756
+#, c-format
+msgid "could not truncate '%s'"
+msgstr "không thể cắt cụt “%s”"
+
+#: sequencer.c:2848
+msgid "the script was already rearranged."
+msgstr "văn lệnh đã sẵn được sắp đặt rồi."
+
+#: sequencer.c:2953
+#, c-format
+msgid "could not finish '%s'"
+msgstr "không thể hoàn thành “%s”"
+
 #: setup.c:171
 #, c-format
 msgid ""
@@ -3459,34 +3581,34 @@ msgstr ""
 "Dùng “--” để ngăn cách các đường dẫn khỏi điểm xem xét, như thế này:\n"
 "“git <lệnh> [<điểm xem xét>…] -- [<tập tin>…]”"
 
-#: setup.c:504
+#: setup.c:499
 #, c-format
 msgid "Expected git repo version <= %d, found %d"
 msgstr "Cần phiên bản kho git <= %d, nhưng lại nhận được %d"
 
-#: setup.c:512
+#: setup.c:507
 msgid "unknown repository extensions found:"
 msgstr "tìm thấy phần mở rộng kho chưa biết:"
 
-#: setup.c:810
+#: setup.c:806
 #, c-format
 msgid "Not a git repository (or any of the parent directories): %s"
 msgstr "Không phải là kho git (hoặc bất kỳ thư mục cha mẹ nào): %s"
 
-#: setup.c:812 builtin/index-pack.c:1652
+#: setup.c:808 builtin/index-pack.c:1653
 msgid "Cannot come back to cwd"
 msgstr "Không thể quay lại cwd"
 
-#: setup.c:1050
+#: setup.c:1046
 msgid "Unable to read current working directory"
 msgstr "Không thể đọc thư mục làm việc hiện hành"
 
-#: setup.c:1062 setup.c:1068
+#: setup.c:1058 setup.c:1064
 #, c-format
 msgid "Cannot change to '%s'"
 msgstr "Không thể chuyển sang “%s”"
 
-#: setup.c:1081
+#: setup.c:1077
 #, c-format
 msgid ""
 "Not a git repository (or any parent up to mount point %s)\n"
@@ -3496,7 +3618,7 @@ msgstr ""
 "Dừng tại biên của hệ thống tập tin (GIT_DISCOVERY_ACROSS_FILESYSTEM chưa "
 "đặt)."
 
-#: setup.c:1173
+#: setup.c:1159
 #, c-format
 msgid ""
 "Problem with core.sharedRepository filemode value (0%.3o).\n"
@@ -3505,56 +3627,41 @@ msgstr ""
 "Gặp vấn đề với gía trị chế độ tập tin core.sharedRepository (0%.3o).\n"
 "người sở hữu tập tin phải luôn có quyền đọc và ghi."
 
-#: sha1_file.c:560
+#: sha1_file.c:528
 #, c-format
 msgid "path '%s' does not exist"
 msgstr "đường dẫn “%s” không tồn tại"
 
-#: sha1_file.c:586
+#: sha1_file.c:554
 #, c-format
 msgid "reference repository '%s' as a linked checkout is not supported yet."
 msgstr "kho tham chiếu “%s” như là lấy ra liên kết vẫn chưa được hỗ trợ."
 
-#: sha1_file.c:592
+#: sha1_file.c:560
 #, c-format
 msgid "reference repository '%s' is not a local repository."
 msgstr "kho tham chiếu “%s” không phải là một kho nội bộ."
 
-#: sha1_file.c:598
+#: sha1_file.c:566
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr "kho tham chiếu “%s” là nông"
 
-#: sha1_file.c:606
+#: sha1_file.c:574
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr "kho tham chiếu “%s” bị cấy ghép"
 
-#: sha1_file.c:1245
-msgid "offset before end of packfile (broken .idx?)"
-msgstr "vị trí tương đối trước điểm kết thúc của tập tin gói (.idx hỏng à?)"
-
-#: sha1_file.c:2729
-#, c-format
-msgid "offset before start of pack index for %s (corrupt index?)"
-msgstr "vị trí tương đối nằm trước chỉ mục gói cho %s (mục lục bị hỏng à?)"
-
-#: sha1_file.c:2733
-#, c-format
-msgid "offset beyond end of pack index for %s (truncated index?)"
-msgstr ""
-"vị trí tương đối vượt quá cuối của chỉ mục gói cho %s (mục lục bị cắt cụt à?)"
-
-#: sha1_name.c:419
+#: sha1_name.c:420
 #, c-format
 msgid "short SHA1 %s is ambiguous"
 msgstr "tóm lược SHA1 %s chưa rõ ràng"
 
-#: sha1_name.c:430
+#: sha1_name.c:431
 msgid "The candidates are:"
 msgstr "Các ứng cử là:"
 
-#: sha1_name.c:589
+#: sha1_name.c:590
 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"
@@ -3578,66 +3685,72 @@ msgstr ""
 "này\n"
 "bằng cách chạy lệnh \"git config advice.objectNameWarning false\""
 
-#: submodule.c:70 submodule.c:104
+#: submodule.c:93 submodule.c:127
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
 "Không thể thay đổi .gitmodules chưa hòa trộn, hãy giải quyết xung đột trộn "
 "trước"
 
-#: submodule.c:74 submodule.c:108
+#: submodule.c:97 submodule.c:131
 #, c-format
 msgid "Could not find section in .gitmodules where path=%s"
 msgstr "Không thể tìm thấy phần trong .gitmodules nơi mà đường_dẫn=%s"
 
-#: submodule.c:82
+#: submodule.c:105
 #, c-format
 msgid "Could not update .gitmodules entry %s"
 msgstr "Không thể cập nhật mục .gitmodules %s"
 
-#: submodule.c:115
+#: submodule.c:138
 #, c-format
 msgid "Could not remove .gitmodules entry for %s"
 msgstr "Không thể gỡ bỏ mục .gitmodules dành cho %s"
 
-#: submodule.c:126
+#: submodule.c:149
 msgid "staging updated .gitmodules failed"
 msgstr "gặp lỗi khi tổ chức .gitmodules đã cập nhật"
 
-#: submodule.c:165
-msgid "negative values not allowed for submodule.fetchJobs"
-msgstr "không cho phép giá trị âm ở submodule.fetchJobs"
-
-#: submodule.c:376
+#: submodule.c:309
 #, c-format
 msgid "in unpopulated submodule '%s'"
 msgstr "Trong mô-đun-con không có gì “%s”"
 
-#: submodule.c:407
+#: submodule.c:340
 #, c-format
 msgid "Pathspec '%s' is in submodule '%.*s'"
 msgstr "Đặc tả đường dẫn “%s” thì ở trong mô-đun-con “%.*s”"
 
-#: submodule.c:1337
+#: submodule.c:799
+#, c-format
+msgid "submodule entry '%s' (%s) is a %s, not a commit"
+msgstr ""
+"mục tin mô-đun-con “%s” (%s) là một %s, không phải là một lần chuyển giao"
+
+#: submodule.c:1021 builtin/branch.c:641 builtin/submodule--helper.c:1149
+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ệ."
+
+#: submodule.c:1304
 #, c-format
 msgid "'%s' not recognized as a git repository"
 msgstr "không nhận ra “%s” là một kho git"
 
-#: submodule.c:1475
+#: submodule.c:1442
 #, c-format
 msgid "could not start 'git status' in submodule '%s'"
 msgstr "không thể lấy thống kê “git status” trong mô-đun-con “%s”"
 
-#: submodule.c:1488
+#: submodule.c:1455
 #, c-format
 msgid "could not run 'git status' in submodule '%s'"
 msgstr "không thể chạy “git status” trong mô-đun-con “%s”"
 
-#: submodule.c:1581
+#: submodule.c:1548
 #, c-format
 msgid "submodule '%s' has dirty index"
 msgstr "mô-đun-con “%s” có mục lục còn bẩn"
 
-#: submodule.c:1845
+#: submodule.c:1809
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
@@ -3645,18 +3758,18 @@ msgstr ""
 "relocate_gitdir cho mô-đun-con “%s” với nhiều hơn một cây làm việc là chưa "
 "được hỗ trợ"
 
-#: submodule.c:1857 submodule.c:1913
+#: submodule.c:1821 submodule.c:1877
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr "không thể tìm kiếm tên cho mô-đun-con “%s”"
 
-#: submodule.c:1861 builtin/submodule--helper.c:678
-#: builtin/submodule--helper.c:688
+#: submodule.c:1825 builtin/submodule--helper.c:671
+#: builtin/submodule--helper.c:681
 #, c-format
 msgid "could not create directory '%s'"
 msgstr "không thể tạo thư mục “%s”"
 
-#: submodule.c:1864
+#: submodule.c:1828
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -3667,94 +3780,98 @@ msgstr ""
 "“%s” sang\n"
 "“%s”\n"
 
-#: submodule.c:1948
+#: submodule.c:1912
 #, c-format
 msgid "could not recurse into submodule '%s'"
 msgstr "không thể đệ quy vào trong mô-đun-con “%s”"
 
-#: submodule.c:1992
+#: submodule.c:1956
 msgid "could not start ls-files in .."
 msgstr "không thể lấy thông tin thống kê về ls-files trong .."
 
-#: submodule.c:2012
+#: submodule.c:1976
 msgid "BUG: returned path string doesn't match cwd?"
 msgstr "LỖI: trả về chuỗi đường dẫn không khớp cwd?"
 
-#: submodule.c:2031
+#: submodule.c:1995
 #, c-format
 msgid "ls-tree returned unexpected return code %d"
 msgstr "ls-tree trả về mã không như mong đợi %d"
 
-#: submodule-config.c:420
+#: submodule-config.c:263
+msgid "negative values not allowed for submodule.fetchjobs"
+msgstr "không cho phép giá trị âm ở submodule.fetchJobs"
+
+#: submodule-config.c:436
 #, c-format
 msgid "invalid value for %s"
 msgstr "giá trị cho %s không hợp lệ"
 
-#: trailer.c:241
+#: trailer.c:238
 #, c-format
 msgid "running trailer command '%s' failed"
 msgstr "chạy lệnh kéo theo “%s” gặp lỗi"
 
-#: trailer.c:474 trailer.c:478 trailer.c:482 trailer.c:536 trailer.c:540
-#: trailer.c:544
+#: trailer.c:485 trailer.c:490 trailer.c:495 trailer.c:549 trailer.c:553
+#: trailer.c:557
 #, c-format
 msgid "unknown value '%s' for key '%s'"
 msgstr "không hiểu giá trị “%s” cho khóa “%s”"
 
-#: trailer.c:526 trailer.c:531 builtin/remote.c:290
+#: trailer.c:539 trailer.c:544 builtin/remote.c:290
 #, c-format
 msgid "more than one %s"
 msgstr "nhiều hơn một %s"
 
-#: trailer.c:703
+#: trailer.c:730
 #, c-format
 msgid "empty trailer token in trailer '%.*s'"
 msgstr "thẻ thừa trống rỗng trong phần thừa “%.*s”"
 
-#: trailer.c:723
+#: trailer.c:750
 #, c-format
 msgid "could not read input file '%s'"
 msgstr "không đọc được tập tin đầu vào “%s”"
 
-#: trailer.c:726
+#: trailer.c:753
 msgid "could not read from stdin"
 msgstr "không thể đọc từ đầu vào tiêu chuẩn"
 
-#: trailer.c:950 builtin/am.c:45
+#: trailer.c:1008 builtin/am.c:46
 #, c-format
 msgid "could not stat %s"
 msgstr "không thể lấy thông tin thống kê về %s"
 
-#: trailer.c:952
+#: trailer.c:1010
 #, c-format
 msgid "file %s is not a regular file"
 msgstr "\"%s\" không phải là tập tin bình thường"
 
-#: trailer.c:954
+#: trailer.c:1012
 #, c-format
 msgid "file %s is not writable by user"
 msgstr "tập tin %s người dùng không thể ghi được"
 
-#: trailer.c:966
+#: trailer.c:1024
 msgid "could not open temporary file"
 msgstr "không thể tạo tập tin tạm thời"
 
-#: trailer.c:1002
+#: trailer.c:1064
 #, c-format
 msgid "could not rename temporary file to %s"
 msgstr "không thể đổi tên tập tin tạm thời thành %s"
 
-#: transport.c:63
+#: transport.c:62
 #, c-format
 msgid "Would set upstream of '%s' to '%s' of '%s'\n"
 msgstr "Không thể đặt thượng nguồn của “%s” thành “%s” của “%s”\n"
 
-#: transport.c:152
+#: transport.c:151
 #, c-format
 msgid "transport: invalid depth option '%s'"
 msgstr "vận chuyển: tùy chọn độ sâu “%s” không hợp lệ"
 
-#: transport.c:890
+#: transport.c:888
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
@@ -3763,7 +3880,7 @@ msgstr ""
 "Các đường dẫn mô-đun-con sau đây có chứa các thay đổi cái mà\n"
 "có thể được tìm thấy trên mọi máy phục vụ:\n"
 
-#: transport.c:894
+#: transport.c:892
 #, c-format
 msgid ""
 "\n"
@@ -3790,7 +3907,7 @@ msgstr ""
 "để đẩy chúng lên máy phục vụ.\n"
 "\n"
 
-#: transport.c:902
+#: transport.c:900
 msgid "Aborting."
 msgstr "Bãi bỏ."
 
@@ -3811,11 +3928,11 @@ msgstr "chế độ dị hình trong đề mục cây"
 msgid "empty filename in tree entry"
 msgstr "tên tập tin trống rỗng trong mục tin cây"
 
-#: tree-walk.c:113
+#: tree-walk.c:114
 msgid "too-short tree file"
 msgstr "tập tin cây quá ngắn"
 
-#: unpack-trees.c:105
+#: unpack-trees.c:106
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -3826,7 +3943,7 @@ msgstr ""
 "%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn "
 "chuyển nhánh."
 
-#: unpack-trees.c:107
+#: unpack-trees.c:108
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
@@ -3836,7 +3953,7 @@ msgstr ""
 "checkout:\n"
 "%%s"
 
-#: unpack-trees.c:110
+#: unpack-trees.c:111
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -3847,7 +3964,7 @@ msgstr ""
 "%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn hòa "
 "trộn."
 
-#: unpack-trees.c:112
+#: unpack-trees.c:113
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
@@ -3857,7 +3974,7 @@ msgstr ""
 "hòa trộn:\n"
 "%%s"
 
-#: unpack-trees.c:115
+#: unpack-trees.c:116
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -3867,7 +3984,7 @@ msgstr ""
 "%s:\n"
 "%%sVui lòng chuyển giao các thay đổi hay tạm cất chúng đi trước khi bạn %s."
 
-#: unpack-trees.c:117
+#: unpack-trees.c:118
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
@@ -3877,7 +3994,7 @@ msgstr ""
 "%s:\n"
 "%%s"
 
-#: unpack-trees.c:122
+#: unpack-trees.c:123
 #, c-format
 msgid ""
 "Updating the following directories would lose untracked files in them:\n"
@@ -3887,7 +4004,7 @@ msgstr ""
 "trong nó:\n"
 "%s"
 
-#: unpack-trees.c:126
+#: unpack-trees.c:127
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -3897,7 +4014,7 @@ msgstr ""
 "checkout:\n"
 "%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn chuyển nhánh."
 
-#: unpack-trees.c:128
+#: unpack-trees.c:129
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
@@ -3907,7 +4024,7 @@ msgstr ""
 "checkout:\n"
 "%%s"
 
-#: unpack-trees.c:131
+#: unpack-trees.c:132
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
@@ -3917,7 +4034,7 @@ msgstr ""
 "trộn:\n"
 "%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn hòa trộn."
 
-#: unpack-trees.c:133
+#: unpack-trees.c:134
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
@@ -3927,7 +4044,7 @@ msgstr ""
 "trộn:\n"
 "%%s"
 
-#: unpack-trees.c:136
+#: unpack-trees.c:137
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -3936,7 +4053,7 @@ msgstr ""
 "Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi %s:\n"
 "%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn %s."
 
-#: unpack-trees.c:138
+#: unpack-trees.c:139
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
@@ -3945,7 +4062,7 @@ msgstr ""
 "Các tập tin cây làm việc chưa được theo dõi sau đây sẽ bị gỡ bỏ bởi %s:\n"
 "%%s"
 
-#: unpack-trees.c:143
+#: unpack-trees.c:144
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -3956,7 +4073,7 @@ msgstr ""
 "checkout:\n"
 "%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn chuyển nhánh."
 
-#: unpack-trees.c:145
+#: unpack-trees.c:146
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -3967,7 +4084,7 @@ msgstr ""
 "checkout:\n"
 "%%s"
 
-#: unpack-trees.c:148
+#: unpack-trees.c:149
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
@@ -3977,7 +4094,7 @@ msgstr ""
 "hòa trộn:\n"
 "%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn hòa trộn."
 
-#: unpack-trees.c:150
+#: unpack-trees.c:151
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
@@ -3987,7 +4104,7 @@ msgstr ""
 "hòa trộn:\n"
 "%%s"
 
-#: unpack-trees.c:153
+#: unpack-trees.c:154
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -3997,7 +4114,7 @@ msgstr ""
 "%s:\n"
 "%%sVui lòng di chuyển hay gỡ bỏ chúng trước khi bạn %s."
 
-#: unpack-trees.c:155
+#: unpack-trees.c:156
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
@@ -4007,21 +4124,21 @@ msgstr ""
 "%s:\n"
 "%%s"
 
-#: unpack-trees.c:162
+#: unpack-trees.c:163
 #, c-format
 msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
 msgstr "Mục “%s” đè lên “%s”. Không thể buộc."
 
-#: unpack-trees.c:165
+#: unpack-trees.c:166
 #, c-format
 msgid ""
-"Cannot update sparse checkout: the following entries are not up-to-date:\n"
+"Cannot update sparse checkout: the following entries are not up to date:\n"
 "%s"
 msgstr ""
 "Không thể cập nhật checkout rải rác: các mục tin sau đây chưa cập nhật:\n"
 "%s"
 
-#: unpack-trees.c:167
+#: unpack-trees.c:168
 #, c-format
 msgid ""
 "The following working tree files would be overwritten by sparse checkout "
@@ -4032,7 +4149,7 @@ msgstr ""
 "nhật checkout rải rác:\n"
 "%s"
 
-#: unpack-trees.c:169
+#: unpack-trees.c:170
 #, c-format
 msgid ""
 "The following working tree files would be removed by sparse checkout "
@@ -4043,7 +4160,7 @@ msgstr ""
 "nhật checkout rải rác:\n"
 "%s"
 
-#: unpack-trees.c:171
+#: unpack-trees.c:172
 #, c-format
 msgid ""
 "Cannot update submodule:\n"
@@ -4052,17 +4169,12 @@ msgstr ""
 "Không thể cập nhật mô-đun-con:\n"
 "%s"
 
-#: unpack-trees.c:248
+#: unpack-trees.c:249
 #, c-format
 msgid "Aborting\n"
 msgstr "Bãi bỏ\n"
 
-#: unpack-trees.c:277
-#, c-format
-msgid "submodule update strategy not supported for submodule '%s'"
-msgstr "chiến lược cập nhật mô-đun-con không được hỗ trợ cho mô-đun-con “%s”"
-
-#: unpack-trees.c:346
+#: unpack-trees.c:331
 msgid "Checking out files"
 msgstr "Đang lấy ra các tập tin"
 
@@ -4105,13 +4217,8 @@ msgstr "gặp lỗi khi đọc “%s”"
 msgid "could not open '%s' for reading and writing"
 msgstr "không thể mở “%s” để đọc và ghi"
 
-#: wrapper.c:225 wrapper.c:395 builtin/am.c:766
-#, c-format
-msgid "could not open '%s' for writing"
-msgstr "không thể mở “%s” để ghi"
-
-#: wrapper.c:227 wrapper.c:397 builtin/am.c:319 builtin/am.c:757
-#: builtin/am.c:849 builtin/merge.c:1014
+#: wrapper.c:227 wrapper.c:397 builtin/am.c:320 builtin/am.c:766
+#: builtin/am.c:858 builtin/merge.c:1041
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr "không thể mở “%s” để đọc"
@@ -4135,200 +4242,200 @@ msgstr "không thể ghi vào %s"
 msgid "could not close %s"
 msgstr "không thể đóng %s"
 
-#: wt-status.c:152
+#: wt-status.c:150
 msgid "Unmerged paths:"
 msgstr "Những đường dẫn chưa được hòa trộn:"
 
-#: wt-status.c:179 wt-status.c:206
+#: wt-status.c:177 wt-status.c:204
 #, c-format
 msgid "  (use \"git reset %s <file>...\" to unstage)"
 msgstr "  (dùng \"git reset %s <tập-tin>…\" để bỏ ra khỏi bệ phóng)"
 
-#: wt-status.c:181 wt-status.c:208
+#: wt-status.c:179 wt-status.c:206
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
 msgstr "  (dùng \"git rm --cached <tập-tin>…\" để bỏ ra khỏi bệ phóng)"
 
-#: wt-status.c:185
+#: wt-status.c:183
 msgid "  (use \"git add <file>...\" to mark resolution)"
 msgstr "  (dùng \"git add <tập-tin>…\" để đánh dấu là cần giải quyết)"
 
-#: wt-status.c:187 wt-status.c:191
+#: wt-status.c:185 wt-status.c:189
 msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
 msgstr ""
 "  (dùng \"git add/rm <tập-tin>…\" như là một cách thích hợp để đánh dấu là "
 "cần được giải quyết)"
 
-#: wt-status.c:189
+#: wt-status.c:187
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr "  (dùng \"git rm <tập-tin>…\" để đánh dấu là cần giải quyết)"
 
-#: wt-status.c:200 wt-status.c:981
+#: wt-status.c:198 wt-status.c:979
 msgid "Changes to be committed:"
 msgstr "Những thay đổi sẽ được chuyển giao:"
 
-#: wt-status.c:218 wt-status.c:990
+#: wt-status.c:216 wt-status.c:988
 msgid "Changes not staged for commit:"
 msgstr "Các thay đổi chưa được đặt lên bệ phóng để chuyển giao:"
 
-#: wt-status.c:222
+#: wt-status.c:220
 msgid "  (use \"git add <file>...\" to update what will be committed)"
 msgstr "  (dùng \"git add <tập-tin>…\" để cập nhật những gì sẽ chuyển giao)"
 
-#: wt-status.c:224
+#: wt-status.c:222
 msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
 msgstr ""
 "  (dùng \"git add/rm <tập-tin>…\" để cập nhật những gì sẽ được chuyển giao)"
 
-#: wt-status.c:225
+#: wt-status.c:223
 msgid ""
 "  (use \"git checkout -- <file>...\" to discard changes in working directory)"
 msgstr ""
 "  (dùng \"git checkout -- <tập-tin>…\" để loại bỏ các thay đổi trong thư mục "
 "làm việc)"
 
-#: wt-status.c:227
+#: wt-status.c:225
 msgid "  (commit or discard the untracked or modified content in submodules)"
 msgstr ""
 "  (chuyển giao hoặc là loại bỏ các nội dung chưa được theo dõi hay đã sửa "
 "chữa trong mô-đun-con)"
 
-#: wt-status.c:239
+#: wt-status.c:237
 #, c-format
 msgid "  (use \"git %s <file>...\" to include in what will be committed)"
 msgstr ""
 "  (dùng \"git %s <tập-tin>…\" để thêm vào những gì cần được chuyển giao)"
 
-#: wt-status.c:254
+#: wt-status.c:252
 msgid "both deleted:"
 msgstr "bị xóa bởi cả hai:"
 
-#: wt-status.c:256
+#: wt-status.c:254
 msgid "added by us:"
 msgstr "được thêm vào bởi chúng ta:"
 
-#: wt-status.c:258
+#: wt-status.c:256
 msgid "deleted by them:"
 msgstr "bị xóa đi bởi họ:"
 
-#: wt-status.c:260
+#: wt-status.c:258
 msgid "added by them:"
 msgstr "được thêm vào bởi họ:"
 
-#: wt-status.c:262
+#: wt-status.c:260
 msgid "deleted by us:"
 msgstr "bị xóa bởi chúng ta:"
 
-#: wt-status.c:264
+#: wt-status.c:262
 msgid "both added:"
 msgstr "được thêm vào bởi cả hai:"
 
-#: wt-status.c:266
+#: wt-status.c:264
 msgid "both modified:"
 msgstr "bị sửa bởi cả hai:"
 
-#: wt-status.c:276
+#: wt-status.c:274
 msgid "new file:"
 msgstr "tập tin mới:"
 
-#: wt-status.c:278
+#: wt-status.c:276
 msgid "copied:"
 msgstr "đã chép:"
 
-#: wt-status.c:280
+#: wt-status.c:278
 msgid "deleted:"
 msgstr "đã xóa:"
 
-#: wt-status.c:282
+#: wt-status.c:280
 msgid "modified:"
 msgstr "đã sửa:"
 
-#: wt-status.c:284
+#: wt-status.c:282
 msgid "renamed:"
 msgstr "đã đổi tên:"
 
-#: wt-status.c:286
+#: wt-status.c:284
 msgid "typechange:"
 msgstr "đổi-kiểu:"
 
-#: wt-status.c:288
+#: wt-status.c:286
 msgid "unknown:"
 msgstr "không hiểu:"
 
-#: wt-status.c:290
+#: wt-status.c:288
 msgid "unmerged:"
 msgstr "chưa hòa trộn:"
 
-#: wt-status.c:372
+#: wt-status.c:370
 msgid "new commits, "
 msgstr "lần chuyển giao mới, "
 
-#: wt-status.c:374
+#: wt-status.c:372
 msgid "modified content, "
 msgstr "nội dung bị sửa đổi, "
 
-#: wt-status.c:376
+#: wt-status.c:374
 msgid "untracked content, "
 msgstr "nội dung chưa được theo dõi, "
 
-#: wt-status.c:821
+#: wt-status.c:819
 #, c-format
 msgid "Your stash currently has %d entry"
 msgid_plural "Your stash currently has %d entries"
 msgstr[0] "Bạn hiện nay ở trong phần cất đi đang có %d mục"
 
-#: wt-status.c:853
+#: wt-status.c:851
 msgid "Submodules changed but not updated:"
 msgstr "Những mô-đun-con đã bị thay đổi nhưng chưa được cập nhật:"
 
-#: wt-status.c:855
+#: wt-status.c:853
 msgid "Submodule changes to be committed:"
 msgstr "Những mô-đun-con thay đổi đã được chuyển giao:"
 
-#: wt-status.c:937
+#: wt-status.c:935
 msgid ""
-"Do not touch the line above.\n"
-"Everything below will be removed."
+"Do not modify or remove the line above.\n"
+"Everything below it will be ignored."
 msgstr ""
-"Không động đến đường ở trên.\n"
+"Không sửa hay xóa bỏ đường ở trên.\n"
 "Mọi thứ phía dưới sẽ được xóa bỏ."
 
-#: wt-status.c:1049
+#: wt-status.c:1048
 msgid "You have unmerged paths."
 msgstr "Bạn có những đường dẫn chưa được hòa trộn."
 
-#: wt-status.c:1052
+#: wt-status.c:1051
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr "  (sửa các xung đột rồi chạy \"git commit\")"
 
-#: wt-status.c:1054
+#: wt-status.c:1053
 msgid "  (use \"git merge --abort\" to abort the merge)"
 msgstr "  (dùng \"git merge --abort\" để bãi bỏ việc hòa trộn)"
 
-#: wt-status.c:1059
+#: wt-status.c:1058
 msgid "All conflicts fixed but you are still merging."
 msgstr "Tất cả các xung đột đã được giải quyết nhưng bạn vẫn đang hòa trộn."
 
-#: wt-status.c:1062
+#: wt-status.c:1061
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr "  (dùng \"git commit\" để hoàn tất việc hòa trộn)"
 
-#: wt-status.c:1072
+#: wt-status.c:1071
 msgid "You are in the middle of an am session."
 msgstr "Bạn đang ở giữa của một phiên “am”."
 
-#: wt-status.c:1075
+#: wt-status.c:1074
 msgid "The current patch is empty."
 msgstr "Miếng vá hiện tại bị trống rỗng."
 
-#: wt-status.c:1079
+#: wt-status.c:1078
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr "  (sửa các xung đột và sau đó chạy lệnh \"git am --continue\")"
 
-#: wt-status.c:1081
+#: wt-status.c:1080
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr "  (dùng \"git am --skip\" để bỏ qua miếng vá này)"
 
-#: wt-status.c:1083
+#: wt-status.c:1082
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr "  (dùng \"git am --abort\" để phục hồi lại nhánh nguyên thủy)"
 
@@ -4638,7 +4745,7 @@ msgid "cannot %s: Your index contains uncommitted changes."
 msgstr ""
 "không thể %s: Mục lục của bạn có chứa các thay đổi chưa được chuyển giao."
 
-#: compat/precompose_utf8.c:58 builtin/clone.c:436
+#: compat/precompose_utf8.c:58 builtin/clone.c:437
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr "gặp lỗi khi bỏ liên kết (unlink) “%s”"
@@ -4652,7 +4759,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:87 builtin/commit.c:292
+#: builtin/add.c:87 builtin/commit.c:291
 msgid "updating files failed"
 msgstr "Cập nhật tập tin gặp lỗi"
 
@@ -4661,115 +4768,115 @@ msgstr "Cập nhật tập tin gặp lỗi"
 msgid "remove '%s'\n"
 msgstr "gỡ bỏ “%s”\n"
 
-#: builtin/add.c:151
+#: builtin/add.c:153
 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:211 builtin/rev-parse.c:873
+#: builtin/add.c:213 builtin/rev-parse.c:888
 msgid "Could not read the index"
 msgstr "Không thể đọc bảng mục lục"
 
-#: builtin/add.c:222
+#: builtin/add.c:224
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Không thể mở “%s” để ghi."
 
-#: builtin/add.c:226
+#: builtin/add.c:228
 msgid "Could not write patch"
 msgstr "Không thể ghi ra miếng vá"
 
-#: builtin/add.c:229
+#: builtin/add.c:231
 msgid "editing patch failed"
 msgstr "gặp lỗi khi sửa miếng vá"
 
-#: builtin/add.c:232
+#: builtin/add.c:234
 #, c-format
 msgid "Could not stat '%s'"
 msgstr "Không thể lấy thông tin thống kê về “%s”"
 
-#: builtin/add.c:234
+#: builtin/add.c:236
 msgid "Empty patch. Aborted."
 msgstr "Miếng vá trống rỗng. Nên bỏ qua."
 
-#: builtin/add.c:239
+#: builtin/add.c:241
 #, c-format
 msgid "Could not apply '%s'"
 msgstr "Không thể áp dụng miếng vá “%s”"
 
-#: builtin/add.c:249
+#: builtin/add.c:251
 msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr ""
 "Các đường dẫn theo sau đây sẽ bị lờ đi bởi một trong các tập tin .gitignore "
 "của bạn:\n"
 
-#: builtin/add.c:269 builtin/clean.c:907 builtin/fetch.c:110 builtin/mv.c:124
+#: builtin/add.c:271 builtin/clean.c:910 builtin/fetch.c:132 builtin/mv.c:124
 #: builtin/prune-packed.c:55 builtin/pull.c:201 builtin/push.c:529
-#: builtin/remote.c:1332 builtin/rm.c:242 builtin/send-pack.c:164
+#: builtin/remote.c:1333 builtin/rm.c:242 builtin/send-pack.c:164
 msgid "dry run"
 msgstr "chạy thử"
 
-#: builtin/add.c:272
+#: builtin/add.c:274
 msgid "interactive picking"
 msgstr "sửa bằng cách tương tác"
 
-#: builtin/add.c:273 builtin/checkout.c:1162 builtin/reset.c:299
+#: builtin/add.c:275 builtin/checkout.c:1172 builtin/reset.c:310
 msgid "select hunks interactively"
 msgstr "chọn “hunks” theo kiểu tương tác"
 
-#: builtin/add.c:274
+#: builtin/add.c:276
 msgid "edit current diff and apply"
 msgstr "sửa diff hiện nay và áp dụng nó"
 
-#: builtin/add.c:275
+#: builtin/add.c:277
 msgid "allow adding otherwise ignored files"
 msgstr "cho phép thêm các tập tin bị bỏ qua khác"
 
-#: builtin/add.c:276
+#: builtin/add.c:278
 msgid "update tracked files"
 msgstr "cập nhật các tập tin được theo dõi"
 
-#: builtin/add.c:277
+#: builtin/add.c:279
 msgid "record only the fact that the path will be added later"
 msgstr "chỉ ghi lại sự việc mà đường dẫn sẽ được thêm vào sau"
 
-#: builtin/add.c:278
+#: builtin/add.c:280
 msgid "add changes from all tracked and untracked files"
 msgstr ""
 "thêm các thay đổi từ tất cả các tập tin có cũng như không được theo dõi dấu "
 "vết"
 
-#: builtin/add.c:281
+#: builtin/add.c:283
 msgid "ignore paths removed in the working tree (same as --no-all)"
 msgstr ""
 "lờ đi các đường dẫn bị gỡ bỏ trong cây thư mục làm việc (giống với --no-all)"
 
-#: builtin/add.c:283
+#: builtin/add.c:285
 msgid "don't add, only refresh the index"
 msgstr "không thêm, chỉ làm tươi mới bảng mục lục"
 
-#: builtin/add.c:284
+#: builtin/add.c:286
 msgid "just skip files which cannot be added because of errors"
 msgstr "chie bỏ qua những tập tin mà nó không thể được thêm vào bởi vì gặp lỗi"
 
-#: builtin/add.c:285
+#: builtin/add.c:287
 msgid "check if - even missing - files are ignored in dry run"
 msgstr ""
 "kiểm tra xem - thậm chí thiếu - tập tin bị bỏ qua trong quá trình chạy thử"
 
-#: builtin/add.c:286 builtin/update-index.c:952
+#: builtin/add.c:288 builtin/update-index.c:954
 msgid "(+/-)x"
 msgstr "(+/-)x"
 
-#: builtin/add.c:286 builtin/update-index.c:953
+#: builtin/add.c:288 builtin/update-index.c:955
 msgid "override the executable bit of the listed files"
 msgstr "ghi đè lên bít thi hành của các tập tin được liệt kê"
 
-#: builtin/add.c:288
+#: builtin/add.c:290
 msgid "warn when adding an embedded repository"
 msgstr "cảnh báo khi thêm một kho nhúng"
 
-#: builtin/add.c:303
+#: builtin/add.c:305
 #, c-format
 msgid ""
 "You've added another git repository inside your current repository.\n"
@@ -4800,151 +4907,151 @@ msgstr ""
 "\n"
 "Xem \"git help submodule\" để biết thêm chi tiết."
 
-#: builtin/add.c:331
+#: builtin/add.c:333
 #, c-format
 msgid "adding embedded git repository: %s"
 msgstr "thêm cần một kho git nhúng: %s"
 
-#: builtin/add.c:349
+#: builtin/add.c:351
 #, c-format
 msgid "Use -f if you really want to add them.\n"
 msgstr "Sử dụng tùy chọn -f nếu bạn thực sự muốn thêm chúng vào.\n"
 
-#: builtin/add.c:357
+#: builtin/add.c:359
 msgid "adding files failed"
 msgstr "thêm tập tin gặp lỗi"
 
-#: builtin/add.c:394
+#: builtin/add.c:396
 msgid "-A and -u are mutually incompatible"
 msgstr "-A và -u xung khắc nhau"
 
-#: builtin/add.c:401
+#: builtin/add.c:403
 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:405
+#: builtin/add.c:407
 #, c-format
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr "--chmod tham số “%s” phải hoặc là -x hay +x"
 
-#: builtin/add.c:420
+#: builtin/add.c:422
 #, 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:421
+#: builtin/add.c:423
 #, 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:426 builtin/check-ignore.c:176 builtin/checkout.c:282
-#: builtin/checkout.c:475 builtin/clean.c:954 builtin/commit.c:351
-#: builtin/mv.c:144 builtin/reset.c:238 builtin/rm.c:272
-#: builtin/submodule--helper.c:244
+#: builtin/add.c:428 builtin/check-ignore.c:176 builtin/checkout.c:282
+#: builtin/checkout.c:479 builtin/clean.c:957 builtin/commit.c:350
+#: builtin/mv.c:143 builtin/reset.c:249 builtin/rm.c:271
+#: builtin/submodule--helper.c:243
 msgid "index file corrupt"
 msgstr "tập tin ghi bảng mục lục bị hỏng"
 
-#: builtin/am.c:413
+#: builtin/am.c:414
 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:489
+#: builtin/am.c:498
 #, 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:530
+#: builtin/am.c:539
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr "Dòng đầu vào dị hình: “%s”."
 
-#: builtin/am.c:567
+#: builtin/am.c:576
 #, 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:593
+#: builtin/am.c:602
 msgid "fseek failed"
 msgstr "fseek gặp lỗi"
 
-#: builtin/am.c:777
+#: builtin/am.c:786
 #, c-format
 msgid "could not parse patch '%s'"
 msgstr "không thể phân tích cú pháp “%s”"
 
-#: builtin/am.c:842
+#: builtin/am.c:851
 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:889
+#: builtin/am.c:899
 msgid "invalid timestamp"
 msgstr "dấu thời gian không hợp lệ"
 
-#: builtin/am.c:892 builtin/am.c:900
+#: builtin/am.c:904 builtin/am.c:916
 msgid "invalid Date line"
 msgstr "dòng Ngày tháng không hợp lệ"
 
-#: builtin/am.c:897
+#: builtin/am.c:911
 msgid "invalid timezone offset"
 msgstr "độ lệch múi giờ không hợp lệ"
 
-#: builtin/am.c:986
+#: builtin/am.c:1004
 msgid "Patch format detection failed."
 msgstr "Dò tìm định dạng miếng vá gặp lỗi."
 
-#: builtin/am.c:991 builtin/clone.c:401
+#: builtin/am.c:1009 builtin/clone.c:402
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr "tạo thư mục \"%s\" gặp lỗi"
 
-#: builtin/am.c:995
+#: builtin/am.c:1013
 msgid "Failed to split patches."
 msgstr "Gặp lỗi khi chia nhỏ các miếng vá."
 
-#: builtin/am.c:1120 builtin/commit.c:377
+#: builtin/am.c:1142 builtin/commit.c:376
 msgid "unable to write index file"
 msgstr "không thể ghi tập tin lưu mục lục"
 
-#: builtin/am.c:1171
+#: builtin/am.c:1193
 #, 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:1172
+#: builtin/am.c:1194
 #, 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:1173
+#: builtin/am.c:1195
 #, 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:1304
+#: builtin/am.c:1302
 msgid "Patch is empty."
 msgstr "Miếng vá trống rỗng."
 
-#: builtin/am.c:1370
+#: builtin/am.c:1368
 #, c-format
 msgid "invalid ident line: %.*s"
 msgstr "dòng thụt lề không hợp lệ: %.*s"
 
-#: builtin/am.c:1392
+#: builtin/am.c:1390
 #, 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:1586
+#: builtin/am.c:1584
 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:1588
+#: builtin/am.c:1586
 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:1607
+#: builtin/am.c:1605
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
@@ -4952,38 +5059,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:1613
+#: builtin/am.c:1611
 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:1638
+#: builtin/am.c:1636
 msgid "Failed to merge in the changes."
 msgstr "Gặp lỗi khi trộn vào các thay đổi."
 
-#: builtin/am.c:1662 builtin/merge.c:632
+#: builtin/am.c:1660 builtin/merge.c:641
 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:1669
+#: builtin/am.c:1667
 msgid "applying to an empty history"
 msgstr "áp dụng vào một lịch sử trống rỗng"
 
-#: builtin/am.c:1682 builtin/commit.c:1767 builtin/merge.c:803
-#: builtin/merge.c:828
+#: builtin/am.c:1680 builtin/commit.c:1776 builtin/merge.c:824
+#: builtin/merge.c:849
 msgid "failed to write commit object"
 msgstr "gặp lỗi khi ghi đối tượng chuyển giao"
 
-#: builtin/am.c:1715 builtin/am.c:1719
+#: builtin/am.c:1713 builtin/am.c:1717
 #, 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:1735
+#: builtin/am.c:1733
 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:1740
+#: builtin/am.c:1738
 msgid "Commit Body is:"
 msgstr "Thân của lần chuyển giao là:"
 
@@ -4991,37 +5098,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:1750
+#: builtin/am.c:1748
 msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
 msgstr ""
 "Áp dụng? đồng ý [y]/khô[n]g/chỉnh sửa [e]/hiển thị miếng [v]á/chấp nhận tất "
 "cả [a]: "
 
-#: builtin/am.c:1800
+#: builtin/am.c:1798
 #, 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:1840 builtin/am.c:1912
+#: builtin/am.c:1838 builtin/am.c:1910
 #, c-format
 msgid "Applying: %.*s"
 msgstr "Áp dụng: %.*s"
 
-#: builtin/am.c:1856
+#: builtin/am.c:1854
 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:1864
+#: builtin/am.c:1862
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr "Gặp lỗi khi vá tại %s %.*s"
 
-#: builtin/am.c:1870
+#: builtin/am.c:1868
 #, 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:1915
+#: builtin/am.c:1913
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
@@ -5032,7 +5139,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:1922
+#: builtin/am.c:1920
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -5045,17 +5152,17 @@ msgstr ""
 "Bạn có lẽ muốn chạy “git rm“ trên một tập tin để chấp nhận \"được xóa bởi họ"
 "\" cho nó."
 
-#: builtin/am.c:2031 builtin/am.c:2035 builtin/am.c:2047 builtin/reset.c:323
-#: builtin/reset.c:331
+#: builtin/am.c:2029 builtin/am.c:2033 builtin/am.c:2045 builtin/reset.c:332
+#: builtin/reset.c:340
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr "không thể phân tích đối tượng “%s”."
 
-#: builtin/am.c:2083
+#: builtin/am.c:2081
 msgid "failed to clean index"
 msgstr "gặp lỗi khi dọn bảng mục lục"
 
-#: builtin/am.c:2117
+#: builtin/am.c:2116
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
@@ -5063,135 +5170,134 @@ 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:2180
+#: builtin/am.c:2179
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr "Giá trị không hợp lệ cho --patch-format: %s"
 
-#: builtin/am.c:2213
+#: builtin/am.c:2212
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr "git am [<các-tùy-chọn>] [(<mbox>|<Maildir>)…]"
 
-#: builtin/am.c:2214
+#: builtin/am.c:2213
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr "git am [<các-tùy-chọn>] (--continue | --skip | --abort)"
 
-#: builtin/am.c:2220
+#: builtin/am.c:2219
 msgid "run interactively"
 msgstr "chạy kiểu tương tác"
 
-#: builtin/am.c:2222
+#: builtin/am.c:2221
 msgid "historical option -- no-op"
 msgstr "tùy chọn lịch sử -- không-toán-tử"
 
-#: builtin/am.c:2224
+#: builtin/am.c:2223
 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:2225 builtin/init-db.c:484 builtin/prune-packed.c:57
+#: builtin/am.c:2224 builtin/init-db.c:484 builtin/prune-packed.c:57
 #: builtin/repack.c:180
 msgid "be quiet"
 msgstr "im lặng"
 
-#: builtin/am.c:2227
+#: builtin/am.c:2226
 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:2230
+#: builtin/am.c:2229
 msgid "recode into utf8 (default)"
 msgstr "chuyển mã thành utf8 (mặc định)"
 
-#: builtin/am.c:2232
+#: builtin/am.c:2231
 msgid "pass -k flag to git-mailinfo"
 msgstr "chuyển cờ -k cho git-mailinfo"
 
-#: builtin/am.c:2234
+#: builtin/am.c:2233
 msgid "pass -b flag to git-mailinfo"
 msgstr "chuyển cờ -b cho git-mailinfo"
 
-#: builtin/am.c:2236
+#: builtin/am.c:2235
 msgid "pass -m flag to git-mailinfo"
 msgstr "chuyển cờ -m cho git-mailinfo"
 
-#: builtin/am.c:2238
+#: builtin/am.c:2237
 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:2241
+#: builtin/am.c:2240
 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:2244
+#: builtin/am.c:2243
 msgid "strip everything before a scissors line"
 msgstr "cắt mọi thứ trước dòng scissors"
 
-#: builtin/am.c:2246 builtin/am.c:2249 builtin/am.c:2252 builtin/am.c:2255
-#: builtin/am.c:2258 builtin/am.c:2261 builtin/am.c:2264 builtin/am.c:2267
-#: builtin/am.c:2273
+#: builtin/am.c:2245 builtin/am.c:2248 builtin/am.c:2251 builtin/am.c:2254
+#: builtin/am.c:2257 builtin/am.c:2260 builtin/am.c:2263 builtin/am.c:2266
+#: builtin/am.c:2272
 msgid "pass it through git-apply"
 msgstr "chuyển nó qua git-apply"
 
-#: builtin/am.c:2263 builtin/fmt-merge-msg.c:663 builtin/fmt-merge-msg.c:666
-#: builtin/grep.c:1064 builtin/merge.c:202 builtin/pull.c:142
-#: builtin/pull.c:197 builtin/repack.c:189 builtin/repack.c:193
-#: builtin/repack.c:195 builtin/show-branch.c:631 builtin/show-ref.c:169
-#: builtin/tag.c:399 parse-options.h:132 parse-options.h:134
-#: parse-options.h:245
+#: builtin/am.c:2262 builtin/fmt-merge-msg.c:664 builtin/fmt-merge-msg.c:667
+#: builtin/grep.c:843 builtin/merge.c:205 builtin/pull.c:142 builtin/pull.c:197
+#: builtin/repack.c:189 builtin/repack.c:193 builtin/repack.c:195
+#: builtin/show-branch.c:631 builtin/show-ref.c:169 builtin/tag.c:377
+#: parse-options.h:132 parse-options.h:134 parse-options.h:245
 msgid "n"
 msgstr "n"
 
-#: builtin/am.c:2269 builtin/branch.c:596 builtin/for-each-ref.c:38
-#: builtin/replace.c:444 builtin/tag.c:434 builtin/verify-tag.c:39
+#: builtin/am.c:2268 builtin/branch.c:622 builtin/for-each-ref.c:38
+#: builtin/replace.c:444 builtin/tag.c:412 builtin/verify-tag.c:39
 msgid "format"
 msgstr "định dạng"
 
-#: builtin/am.c:2270
+#: builtin/am.c:2269
 msgid "format the patch(es) are in"
 msgstr "định dạng (các) miếng vá theo"
 
-#: builtin/am.c:2276
+#: builtin/am.c:2275
 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:2278
+#: builtin/am.c:2277
 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:2281
+#: builtin/am.c:2280
 msgid "synonyms for --continue"
 msgstr "đồng nghĩa với --continue"
 
-#: builtin/am.c:2284
+#: builtin/am.c:2283
 msgid "skip the current patch"
 msgstr "bỏ qua miếng vá hiện hành"
 
-#: builtin/am.c:2287
+#: builtin/am.c:2286
 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:2291
+#: builtin/am.c:2290
 msgid "lie about committer date"
 msgstr "nói dối về ngày chuyển giao"
 
-#: builtin/am.c:2293
+#: builtin/am.c:2292
 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:2295 builtin/commit.c:1605 builtin/merge.c:233
-#: builtin/pull.c:172 builtin/revert.c:112 builtin/tag.c:414
+#: builtin/am.c:2294 builtin/commit.c:1614 builtin/merge.c:236
+#: builtin/pull.c:172 builtin/revert.c:112 builtin/tag.c:392
 msgid "key-id"
 msgstr "mã-số-khóa"
 
-#: builtin/am.c:2296
+#: builtin/am.c:2295
 msgid "GPG-sign commits"
 msgstr "lần chuyển giao ký-GPG"
 
-#: builtin/am.c:2299
+#: builtin/am.c:2298
 msgid "(internal use for git-rebase)"
 msgstr "(dùng nội bộ cho git-rebase)"
 
-#: builtin/am.c:2317
+#: builtin/am.c:2316
 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."
@@ -5199,16 +5305,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:2324
+#: builtin/am.c:2323
 msgid "failed to read the index"
 msgstr "gặp lỗi đọc bảng mục lục"
 
-#: builtin/am.c:2339
+#: builtin/am.c:2338
 #, 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:2363
+#: builtin/am.c:2362
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
@@ -5217,7 +5323,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:2369
+#: builtin/am.c:2368
 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."
 
@@ -5422,14 +5528,18 @@ 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:31
+msgid "git branch [<options>] (-c | -C) [<old-branch>] <new-branch>"
+msgstr "git branch [<các-tùy-chọn>] (-c | -C) [<nhánh-cũ>] <nhánh-mới>"
+
+#: builtin/branch.c:32
 msgid "git branch [<options>] [-r | -a] [--points-at]"
 msgstr "git branch [<các-tùy-chọn>] [-r | -a] [--points-at]"
 
-#: builtin/branch.c:32
+#: builtin/branch.c:33
 msgid "git branch [<options>] [-r | -a] [--format]"
 msgstr "git branch [<các-tùy-chọn>] [-r | -a] [--format]"
 
-#: builtin/branch.c:145
+#: builtin/branch.c:146
 #, c-format
 msgid ""
 "deleting branch '%s' that has been merged to\n"
@@ -5438,7 +5548,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:149
+#: builtin/branch.c:150
 #, c-format
 msgid ""
 "not deleting branch '%s' that is not yet merged to\n"
@@ -5447,12 +5557,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:163
+#: builtin/branch.c:164
 #, 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:167
+#: builtin/branch.c:168
 #, c-format
 msgid ""
 "The branch '%s' is not fully merged.\n"
@@ -5461,91 +5571,112 @@ 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:180
+#: builtin/branch.c:181
 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:211
+#: builtin/branch.c:212
 msgid "cannot use -a with -d"
 msgstr "không thể dùng tùy chọn -a với -d"
 
-#: builtin/branch.c:217
+#: builtin/branch.c:218
 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:231
+#: builtin/branch.c:232
 #, c-format
 msgid "Cannot delete branch '%s' checked out at '%s'"
 msgstr "Không thể xóa nhánh “%s” đã được lấy ra tại “%s”"
 
-#: builtin/branch.c:246
+#: builtin/branch.c:247
 #, 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:247
+#: builtin/branch.c:248
 #, c-format
 msgid "branch '%s' not found."
 msgstr "không tìm thấy nhánh “%s”."
 
-#: builtin/branch.c:262
+#: builtin/branch.c:263
 #, 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:263
+#: builtin/branch.c:264
 #, c-format
 msgid "Error deleting branch '%s'"
 msgstr "Gặp lỗi khi xóa bỏ nhánh “%s”"
 
-#: builtin/branch.c:270
+#: builtin/branch.c:271
 #, 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:271
+#: builtin/branch.c:272
 #, c-format
 msgid "Deleted branch %s (was %s).\n"
 msgstr "Nhánh “%s” đã bị xóa (từng là %s)\n"
 
-#: builtin/branch.c:445
+#: builtin/branch.c:417 builtin/tag.c:58
+msgid "unable to parse format string"
+msgstr "không thể phân tích chuỗi định dạng"
+
+#: builtin/branch.c:450
 #, c-format
 msgid "Branch %s is being rebased at %s"
 msgstr "Nhánh %s đang được cải tổ lại tại %s"
 
-#: builtin/branch.c:449
+#: builtin/branch.c:454
 #, c-format
 msgid "Branch %s is being bisected at %s"
 msgstr "Nhánh %s đang được di chuyển phân đôi (bisect) tại %s"
 
-#: builtin/branch.c:464
+#: builtin/branch.c:470
+msgid "cannot copy the current branch while not on any."
+msgstr "không thể sao chép nhánh hiện hành trong khi nó chẳng ở đâu cả."
+
+#: builtin/branch.c:472
 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:474
+#: builtin/branch.c:483
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr "Tên nhánh không hợp lệ: “%s”"
 
-#: builtin/branch.c:491
+#: builtin/branch.c:504
 msgid "Branch rename failed"
 msgstr "Gặp lỗi khi đổi tên nhánh"
 
-#: builtin/branch.c:494
+#: builtin/branch.c:506
+msgid "Branch copy failed"
+msgstr "Gặp lỗi khi sao chép nhánh"
+
+#: builtin/branch.c:510
+#, c-format
+msgid "Copied a misnamed branch '%s' away"
+msgstr "Đã chép nhánh khuyết danh “%s” đi"
+
+#: builtin/branch.c:513
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr "Đã đổi tên nhánh khuyết danh “%s” đi"
 
-#: builtin/branch.c:497
+#: builtin/branch.c:519
 #, 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:506
+#: builtin/branch.c:528
 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:522
+#: builtin/branch.c:530
+msgid "Branch is copied, but update of config-file failed"
+msgstr "Nhánh đã được sao chép, nhưng cập nhật tập tin cấu hình gặp lỗi"
+
+#: builtin/branch.c:546
 #, c-format
 msgid ""
 "Please edit the description for the branch\n"
@@ -5556,176 +5687,184 @@ msgstr ""
 "  %s\n"
 "Những dòng được bắt đầu bằng “%c” sẽ được cắt bỏ.\n"
 
-#: builtin/branch.c:555
+#: builtin/branch.c:579
 msgid "Generic options"
 msgstr "Tùy chọn chung"
 
-#: builtin/branch.c:557
+#: builtin/branch.c:581
 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:558
+#: builtin/branch.c:582
 msgid "suppress informational messages"
 msgstr "không xuất các thông tin"
 
-#: builtin/branch.c:559
+#: builtin/branch.c:583
 msgid "set up tracking mode (see git-pull(1))"
 msgstr "cài đặt chế độ theo dõi (xem git-pull(1))"
 
-#: builtin/branch.c:561
-msgid "change upstream info"
-msgstr "thay đổi thông tin thượng nguồn"
+#: builtin/branch.c:585
+msgid "do not use"
+msgstr "không dùng"
 
-#: builtin/branch.c:563
+#: builtin/branch.c:587
 msgid "upstream"
 msgstr "thượng nguồn"
 
-#: builtin/branch.c:563
+#: builtin/branch.c:587
 msgid "change the upstream info"
 msgstr "thay đổi thông tin thượng nguồn"
 
-#: builtin/branch.c:564
+#: builtin/branch.c:588
 msgid "Unset the upstream info"
 msgstr "Bỏ đặt thông tin thượng nguồn"
 
-#: builtin/branch.c:565
+#: builtin/branch.c:589
 msgid "use colored output"
 msgstr "tô màu kết xuất"
 
-#: builtin/branch.c:566
+#: builtin/branch.c:590
 msgid "act on remote-tracking branches"
 msgstr "thao tác trên nhánh “remote-tracking”"
 
-#: builtin/branch.c:568 builtin/branch.c:570
+#: builtin/branch.c:592 builtin/branch.c:594
 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:569 builtin/branch.c:571
+#: builtin/branch.c:593 builtin/branch.c:595
 msgid "print only branches that don't contain the commit"
 msgstr "chỉ hiển thị những nhánh mà nó không chứa lần chuyển giao"
 
-#: builtin/branch.c:574
+#: builtin/branch.c:598
 msgid "Specific git-branch actions:"
 msgstr "Hành động git-branch:"
 
-#: builtin/branch.c:575
+#: builtin/branch.c:599
 msgid "list both remote-tracking and local branches"
 msgstr "liệt kê cả nhánh “remote-tracking” và nội bộ"
 
-#: builtin/branch.c:577
+#: builtin/branch.c:601
 msgid "delete fully merged branch"
 msgstr "xóa một toàn bộ nhánh đã hòa trộn"
 
-#: builtin/branch.c:578
+#: builtin/branch.c:602
 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:579
+#: builtin/branch.c:603
 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:580
+#: builtin/branch.c:604
 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:581
+#: builtin/branch.c:605
+msgid "copy a branch and its reflog"
+msgstr "sao chép một nhánh và reflog của nó"
+
+#: builtin/branch.c:606
+msgid "copy a branch, even if target exists"
+msgstr "sao chép một nhánh ngay cả khi đích đã có sẵn"
+
+#: builtin/branch.c:607
 msgid "list branch names"
 msgstr "liệt kê các tên nhánh"
 
-#: builtin/branch.c:582
+#: builtin/branch.c:608
 msgid "create the branch's reflog"
 msgstr "tạo reflog của nhánh"
 
-#: builtin/branch.c:584
+#: builtin/branch.c:610
 msgid "edit the description for the branch"
 msgstr "sửa mô tả cho nhánh"
 
-#: builtin/branch.c:585
+#: builtin/branch.c:611
 msgid "force creation, move/rename, deletion"
 msgstr "buộc tạo, di chuyển/đổi tên, xóa"
 
-#: builtin/branch.c:586
+#: builtin/branch.c:612
 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:587
+#: builtin/branch.c:613
 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:588
+#: builtin/branch.c:614
 msgid "list branches in columns"
 msgstr "liệt kê các nhánh trong các cột"
 
-#: builtin/branch.c:589 builtin/for-each-ref.c:39 builtin/tag.c:427
+#: builtin/branch.c:615 builtin/for-each-ref.c:40 builtin/tag.c:405
 msgid "key"
 msgstr "khóa"
 
-#: builtin/branch.c:590 builtin/for-each-ref.c:40 builtin/tag.c:428
+#: builtin/branch.c:616 builtin/for-each-ref.c:41 builtin/tag.c:406
 msgid "field name to sort on"
 msgstr "tên trường cần sắp xếp"
 
-#: builtin/branch.c:592 builtin/for-each-ref.c:42 builtin/notes.c:407
-#: builtin/notes.c:410 builtin/notes.c:570 builtin/notes.c:573
-#: builtin/tag.c:430
+#: builtin/branch.c:618 builtin/for-each-ref.c:43 builtin/notes.c:408
+#: builtin/notes.c:411 builtin/notes.c:571 builtin/notes.c:574
+#: builtin/tag.c:408
 msgid "object"
 msgstr "đối tượng"
 
-#: builtin/branch.c:593
+#: builtin/branch.c:619
 msgid "print only branches of the object"
 msgstr "chỉ hiển thị các nhánh của đối tượng"
 
-#: builtin/branch.c:595 builtin/for-each-ref.c:48 builtin/tag.c:435
+#: builtin/branch.c:621 builtin/for-each-ref.c:49 builtin/tag.c:415
 msgid "sorting and filtering are case insensitive"
 msgstr "sắp xếp và lọc là phân biệt HOA thường"
 
-#: builtin/branch.c:596 builtin/for-each-ref.c:38 builtin/tag.c:434
+#: builtin/branch.c:622 builtin/for-each-ref.c:38 builtin/tag.c:413
 #: builtin/verify-tag.c:39
 msgid "format to use for the output"
 msgstr "định dạng sẽ dùng cho đầu ra"
 
-#: builtin/branch.c:615
-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:619 builtin/clone.c:728
+#: builtin/branch.c:645 builtin/clone.c:729
 msgid "HEAD not found below refs/heads!"
 msgstr "không tìm thấy HEAD ở dưới refs/heads!"
 
-#: builtin/branch.c:642
+#: builtin/branch.c:668
 msgid "--column and --verbose are incompatible"
 msgstr "tùy chọn --column và --verbose xung khắc nhau"
 
-#: builtin/branch.c:653 builtin/branch.c:705
+#: builtin/branch.c:680 builtin/branch.c:732 builtin/branch.c:741
 msgid "branch name required"
 msgstr "cần chỉ ra tên nhánh"
 
-#: builtin/branch.c:681
+#: builtin/branch.c:708
 msgid "Cannot give description to detached HEAD"
 msgstr "Không thể đưa ra mô tả HEAD đã tách rời"
 
-#: builtin/branch.c:686
+#: builtin/branch.c:713
 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:693
+#: builtin/branch.c:720
 #, 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:696
+#: builtin/branch.c:723
 #, c-format
 msgid "No branch named '%s'."
 msgstr "Không có nhánh nào có tên “%s”."
 
-#: builtin/branch.c:711
-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:738
+msgid "too many branches for a copy operation"
+msgstr "quá nhiều nhánh dành cho thao tác sao chép"
 
-#: builtin/branch.c:716
-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:747
+msgid "too many arguments for a rename operation"
+msgstr "quá nhiều tham số cho thao tác đổi tên"
 
-#: builtin/branch.c:720
+#: builtin/branch.c:752
+msgid "too many arguments to set new upstream"
+msgstr "quá nhiều tham số để đặt thượng nguồn mới"
+
+#: builtin/branch.c:756
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
@@ -5733,58 +5872,46 @@ 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:723 builtin/branch.c:745 builtin/branch.c:766
+#: builtin/branch.c:759 builtin/branch.c:781 builtin/branch.c:800
 #, c-format
 msgid "no such branch '%s'"
 msgstr "không có nhánh nào như thế “%s”"
 
-#: builtin/branch.c:727
+#: builtin/branch.c:763
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr "chưa có nhánh “%s”"
 
-#: builtin/branch.c:739
-msgid "too many branches to unset upstream"
-msgstr "quá nhiều nhánh để bỏ đặt thượng nguồn"
+#: builtin/branch.c:775
+msgid "too many arguments to unset upstream"
+msgstr "quá nhiều tham số để bỏ đặt thượng nguồn"
 
-#: builtin/branch.c:743
+#: builtin/branch.c:779
 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:749
+#: builtin/branch.c:785
 #, 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:763
+#: builtin/branch.c:797
 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:769
+#: builtin/branch.c:803
 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:772
-#, c-format
+#: builtin/branch.c:806
 msgid ""
-"The --set-upstream flag is deprecated and will be removed. Consider using --"
-"track or --set-upstream-to\n"
+"the '--set-upstream' option is no longer supported. Please use '--track' or "
+"'--set-upstream-to' instead."
 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:789
-#, c-format
-msgid ""
-"\n"
-"If you wanted to make '%s' track '%s', do this:\n"
-"\n"
-msgstr ""
-"\n"
-"Nếu bạn muốn “%s” theo dõi “%s”, thực hiện lệnh sau:\n"
-"\n"
+"tùy chọn --set-upstream đã không còn được hỗ trợ nữa. Vui lòng dùng “--"
+"track” hoặc “--set-upstream-to” để thay thế."
 
 #: builtin/bundle.c:45
 #, c-format
@@ -5799,7 +5926,7 @@ msgstr "Cần một kho chứa để có thể tạo một bundle."
 msgid "Need a repository to unbundle."
 msgstr "Cần một kho chứa để có thể giải nén một bundle."
 
-#: builtin/cat-file.c:519
+#: builtin/cat-file.c:521
 msgid ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <type> | --textconv | --filters) [--path=<path>] <object>"
@@ -5807,7 +5934,7 @@ msgstr ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <kiểu> | --textconv) | --filters) [--path=<đường/dẫn>] <đối_tượng>"
 
-#: builtin/cat-file.c:520
+#: builtin/cat-file.c:522
 msgid ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
@@ -5815,64 +5942,64 @@ msgstr ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
 
-#: builtin/cat-file.c:557
+#: builtin/cat-file.c:559
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr "<kiểu> là một trong số: blob, tree, commit hoặc tag"
 
-#: builtin/cat-file.c:558
+#: builtin/cat-file.c:560
 msgid "show object type"
 msgstr "hiển thị kiểu đối tượng"
 
-#: builtin/cat-file.c:559
+#: builtin/cat-file.c:561
 msgid "show object size"
 msgstr "hiển thị kích thước đối tượng"
 
-#: builtin/cat-file.c:561
+#: builtin/cat-file.c:563
 msgid "exit with zero when there's no error"
 msgstr "thoát với 0 khi không có lỗi"
 
-#: builtin/cat-file.c:562
+#: builtin/cat-file.c:564
 msgid "pretty-print object's content"
 msgstr "in nội dung đối tượng dạng dễ đọc"
 
-#: builtin/cat-file.c:564
+#: builtin/cat-file.c:566
 msgid "for blob objects, run textconv on object's content"
 msgstr "với đối tượng blob, chạy lệnh textconv trên nội dung của đối tượng"
 
-#: builtin/cat-file.c:566
+#: builtin/cat-file.c:568
 msgid "for blob objects, run filters on object's content"
 msgstr "với đối tượng blob, chạy lệnh filters trên nội dung của đối tượng"
 
-#: builtin/cat-file.c:567 git-submodule.sh:944
+#: builtin/cat-file.c:569 git-submodule.sh:943
 msgid "blob"
 msgstr "blob"
 
-#: builtin/cat-file.c:568
+#: builtin/cat-file.c:570
 msgid "use a specific path for --textconv/--filters"
 msgstr "dùng một đường dẫn rõ ràng cho --textconv/--filters"
 
-#: builtin/cat-file.c:570
+#: builtin/cat-file.c:572
 msgid "allow -s and -t to work with broken/corrupt objects"
 msgstr "cho phép -s và -t để làm việc với các đối tượng sai/hỏng"
 
-#: builtin/cat-file.c:571
+#: builtin/cat-file.c:573
 msgid "buffer --batch output"
 msgstr "đệm kết xuất --batch"
 
-#: builtin/cat-file.c:573
+#: builtin/cat-file.c:575
 msgid "show info and content of objects fed from the standard input"
 msgstr ""
 "hiển thị thông tin và nội dung của các đối tượng lấy từ đầu vào tiêu chuẩn"
 
-#: builtin/cat-file.c:576
+#: builtin/cat-file.c:578
 msgid "show info about objects fed from the standard input"
 msgstr "hiển thị các thông tin về đối tượng fed  từ đầu vào tiêu chuẩn"
 
-#: builtin/cat-file.c:579
+#: builtin/cat-file.c:581
 msgid "follow in-tree symlinks (used with --batch or --batch-check)"
 msgstr "theo liên kết mềm trong-cây (được dùng với --batch hay --batch-check)"
 
-#: builtin/cat-file.c:581
+#: builtin/cat-file.c:583
 msgid "show all objects with --batch or --batch-check"
 msgstr "hiển thị mọi đối tượng với --batch hay --batch-check"
 
@@ -5900,7 +6027,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:20 builtin/checkout.c:1143 builtin/gc.c:357
+#: builtin/check-ignore.c:20 builtin/checkout.c:1153 builtin/gc.c:358
 msgid "suppress progress reporting"
 msgstr "chặn các báo cáo tiến trình hoạt động"
 
@@ -5991,9 +6118,9 @@ msgid "write the content to temporary files"
 msgstr "ghi nội dung vào tập tin tạm"
 
 #: builtin/checkout-index.c:175 builtin/column.c:31
-#: builtin/submodule--helper.c:635 builtin/submodule--helper.c:638
-#: builtin/submodule--helper.c:644 builtin/submodule--helper.c:980
-#: builtin/worktree.c:478
+#: builtin/submodule--helper.c:628 builtin/submodule--helper.c:631
+#: builtin/submodule--helper.c:637 builtin/submodule--helper.c:999
+#: builtin/worktree.c:498
 msgid "string"
 msgstr "chuỗi"
 
@@ -6065,54 +6192,54 @@ msgstr ""
 msgid "path '%s' is unmerged"
 msgstr "đường dẫn “%s” không được hòa trộn"
 
-#: builtin/checkout.c:497
+#: builtin/checkout.c:501
 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:628
+#: builtin/checkout.c:632
 #, 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:669
+#: builtin/checkout.c:673
 msgid "HEAD is now at"
 msgstr "HEAD hiện giờ tại"
 
-#: builtin/checkout.c:673 builtin/clone.c:682
+#: builtin/checkout.c:677 builtin/clone.c:683
 msgid "unable to update HEAD"
 msgstr "không thể cập nhật HEAD"
 
-#: builtin/checkout.c:677
+#: builtin/checkout.c:681
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr "Đặt lại nhánh “%s”\n"
 
-#: builtin/checkout.c:680
+#: builtin/checkout.c:684
 #, c-format
 msgid "Already on '%s'\n"
 msgstr "Đã sẵn sàng trên “%s”\n"
 
-#: builtin/checkout.c:684
+#: builtin/checkout.c:688
 #, 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:686 builtin/checkout.c:1075
+#: builtin/checkout.c:690 builtin/checkout.c:1086
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr "Đã chuyển đến nhánh mới “%s”\n"
 
-#: builtin/checkout.c:688
+#: builtin/checkout.c:692
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr "Đã chuyển đến nhánh “%s”\n"
 
-#: builtin/checkout.c:739
+#: builtin/checkout.c:743
 #, c-format
 msgid " ... and %d more.\n"
 msgstr " … và nhiều hơn %d.\n"
 
-#: builtin/checkout.c:745
+#: builtin/checkout.c:749
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -6131,7 +6258,7 @@ msgstr[0] ""
 "\n"
 "%s\n"
 
-#: builtin/checkout.c:764
+#: builtin/checkout.c:768
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -6152,164 +6279,164 @@ msgstr[0] ""
 " git branch <tên_nhánh_mới> %s\n"
 "\n"
 
-#: builtin/checkout.c:800
+#: builtin/checkout.c:809
 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:804
+#: builtin/checkout.c:813
 msgid "Previous HEAD position was"
 msgstr "Vị trí trước kia của HEAD là"
 
-#: builtin/checkout.c:832 builtin/checkout.c:1070
+#: builtin/checkout.c:843 builtin/checkout.c:1081
 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:976
+#: builtin/checkout.c:987
 #, 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:1016 builtin/worktree.c:215
+#: builtin/checkout.c:1027 builtin/worktree.c:233
 #, c-format
 msgid "invalid reference: %s"
 msgstr "tham chiếu không hợp lệ: %s"
 
-#: builtin/checkout.c:1045
+#: builtin/checkout.c:1056
 #, 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:1084
+#: builtin/checkout.c:1095
 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:1087 builtin/checkout.c:1091
+#: builtin/checkout.c:1098 builtin/checkout.c:1102
 #, 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:1095 builtin/checkout.c:1098 builtin/checkout.c:1103
-#: builtin/checkout.c:1106
+#: builtin/checkout.c:1106 builtin/checkout.c:1109 builtin/checkout.c:1114
+#: builtin/checkout.c:1117
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr "“%s” không thể được dùng với “%s”"
 
-#: builtin/checkout.c:1111
+#: builtin/checkout.c:1122
 #, 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:1144 builtin/checkout.c:1146 builtin/clone.c:113
-#: builtin/remote.c:166 builtin/remote.c:168 builtin/worktree.c:328
-#: builtin/worktree.c:330
+#: builtin/checkout.c:1154 builtin/checkout.c:1156 builtin/clone.c:114
+#: builtin/remote.c:166 builtin/remote.c:168 builtin/worktree.c:346
+#: builtin/worktree.c:348
 msgid "branch"
 msgstr "nhánh"
 
-#: builtin/checkout.c:1145
+#: builtin/checkout.c:1155
 msgid "create and checkout a new branch"
 msgstr "tạo và checkout một nhánh mới"
 
-#: builtin/checkout.c:1147
+#: builtin/checkout.c:1157
 msgid "create/reset and checkout a branch"
 msgstr "tạo/đặt_lại và checkout một nhánh"
 
-#: builtin/checkout.c:1148
+#: builtin/checkout.c:1158
 msgid "create reflog for new branch"
 msgstr "tạo reflog cho nhánh mới"
 
-#: builtin/checkout.c:1149 builtin/worktree.c:332
+#: builtin/checkout.c:1159 builtin/worktree.c:350
 msgid "detach HEAD at named commit"
 msgstr "rời bỏ HEAD tại lần chuyển giao theo tên"
 
-#: builtin/checkout.c:1150
+#: builtin/checkout.c:1160
 msgid "set upstream info for new branch"
 msgstr "đặt thông tin thượng nguồn cho nhánh mới"
 
-#: builtin/checkout.c:1152
+#: builtin/checkout.c:1162
 msgid "new-branch"
 msgstr "nhánh-mới"
 
-#: builtin/checkout.c:1152
+#: builtin/checkout.c:1162
 msgid "new unparented branch"
 msgstr "nhánh không cha mới"
 
-#: builtin/checkout.c:1153
+#: builtin/checkout.c:1163
 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:1155
+#: builtin/checkout.c:1165
 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:1157
+#: builtin/checkout.c:1167
 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:1158
+#: builtin/checkout.c:1168
 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:1159 builtin/merge.c:235
+#: builtin/checkout.c:1169 builtin/merge.c:238
 msgid "update ignored files (default)"
 msgstr "cập nhật các tập tin bị bỏ qua (mặc định)"
 
-#: builtin/checkout.c:1160 builtin/log.c:1483 parse-options.h:251
+#: builtin/checkout.c:1170 builtin/log.c:1489 parse-options.h:251
 msgid "style"
 msgstr "kiểu"
 
-#: builtin/checkout.c:1161
+#: builtin/checkout.c:1171
 msgid "conflict style (merge or diff3)"
 msgstr "xung đột kiểu (hòa trộn hoặc diff3)"
 
-#: builtin/checkout.c:1164
+#: builtin/checkout.c:1174
 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:1166
+#: builtin/checkout.c:1176
 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:1168
+#: builtin/checkout.c:1178
 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:1172 builtin/clone.c:80 builtin/fetch.c:114
-#: builtin/merge.c:232 builtin/pull.c:120 builtin/push.c:544
+#: builtin/checkout.c:1182 builtin/clone.c:81 builtin/fetch.c:136
+#: builtin/merge.c:235 builtin/pull.c:120 builtin/push.c:544
 #: builtin/send-pack.c:173
 msgid "force progress reporting"
 msgstr "ép buộc báo cáo tiến triển công việc"
 
-#: builtin/checkout.c:1203
+#: builtin/checkout.c:1212
 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:1220
+#: builtin/checkout.c:1229
 msgid "--track needs a branch name"
 msgstr "--track cần tên một nhánh"
 
-#: builtin/checkout.c:1225
+#: builtin/checkout.c:1234
 msgid "Missing branch name; try -b"
 msgstr "Thiếu tên nhánh; hãy thử -b"
 
-#: builtin/checkout.c:1261
+#: builtin/checkout.c:1270
 msgid "invalid path specification"
 msgstr "đường dẫn đã cho không hợp lệ"
 
-#: builtin/checkout.c:1268
+#: builtin/checkout.c:1277
 #, c-format
 msgid "'%s' is not a commit and a branch '%s' cannot be created from it"
 msgstr ""
 "“%s” không phải là một lần chuyển giao và một nhánh'%s” không thể được tạo "
 "từ đó"
 
-#: builtin/checkout.c:1272
+#: builtin/checkout.c:1281
 #, 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:1276
+#: builtin/checkout.c:1285
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -6348,7 +6475,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:298 git-add--interactive.perl:572
+#: builtin/clean.c:301 git-add--interactive.perl:572
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -6361,7 +6488,7 @@ msgstr ""
 "foo        - chọn mục trên cơ sở tiền tố duy nhất\n"
 "           - (để trống) không chọn gì cả\n"
 
-#: builtin/clean.c:302 git-add--interactive.perl:581
+#: builtin/clean.c:305 git-add--interactive.perl:581
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -6382,38 +6509,38 @@ msgstr ""
 "*          - chọn tất\n"
 "           - (để trống) kết thúc việc chọn\n"
 
-#: builtin/clean.c:518 git-add--interactive.perl:547
+#: builtin/clean.c:521 git-add--interactive.perl:547
 #: git-add--interactive.perl:552
 #, c-format, perl-format
 msgid "Huh (%s)?\n"
 msgstr "Hả (%s)?\n"
 
-#: builtin/clean.c:660
+#: builtin/clean.c:663
 #, 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:697
+#: builtin/clean.c:700
 #, 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:718
+#: builtin/clean.c:721
 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:759
+#: builtin/clean.c:762
 #, c-format
 msgid "Remove %s [y/N]? "
 msgstr "Xóa bỏ “%s” [y/N]? "
 
-#: builtin/clean.c:784 git-add--interactive.perl:1616
+#: builtin/clean.c:787 git-add--interactive.perl:1616
 #, c-format
 msgid "Bye.\n"
 msgstr "Tạm biệt.\n"
 
-#: builtin/clean.c:792
+#: builtin/clean.c:795
 msgid ""
 "clean               - start cleaning\n"
 "filter by pattern   - exclude items from deletion\n"
@@ -6431,62 +6558,62 @@ 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:819 git-add--interactive.perl:1692
+#: builtin/clean.c:822 git-add--interactive.perl:1692
 msgid "*** Commands ***"
 msgstr "*** Lệnh ***"
 
-#: builtin/clean.c:820 git-add--interactive.perl:1689
+#: builtin/clean.c:823 git-add--interactive.perl:1689
 msgid "What now"
 msgstr "Giờ thì sao"
 
-#: builtin/clean.c:828
+#: builtin/clean.c:831
 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:844
+#: builtin/clean.c:847
 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:906
+#: builtin/clean.c:909
 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:908
+#: builtin/clean.c:911
 msgid "force"
 msgstr "ép buộc"
 
-#: builtin/clean.c:909
+#: builtin/clean.c:912
 msgid "interactive cleaning"
 msgstr "dọn bằng kiểu tương tác"
 
-#: builtin/clean.c:911
+#: builtin/clean.c:914
 msgid "remove whole directories"
 msgstr "gỡ bỏ toàn bộ thư mục"
 
-#: builtin/clean.c:912 builtin/describe.c:452 builtin/describe.c:454
-#: builtin/grep.c:1082 builtin/ls-files.c:546 builtin/name-rev.c:397
+#: builtin/clean.c:915 builtin/describe.c:463 builtin/describe.c:465
+#: builtin/grep.c:861 builtin/ls-files.c:544 builtin/name-rev.c:397
 #: builtin/name-rev.c:399 builtin/show-ref.c:176
 msgid "pattern"
 msgstr "mẫu"
 
-#: builtin/clean.c:913
+#: builtin/clean.c:916
 msgid "add <pattern> to ignore rules"
 msgstr "thêm <mẫu> vào trong qui tắc bỏ qua"
 
-#: builtin/clean.c:914
+#: builtin/clean.c:917
 msgid "remove ignored files, too"
 msgstr "đồng thời gỡ bỏ cả các tập tin bị bỏ qua"
 
-#: builtin/clean.c:916
+#: builtin/clean.c:919
 msgid "remove only ignored files"
 msgstr "chỉ gỡ bỏ những tập tin bị bỏ qua"
 
-#: builtin/clean.c:934
+#: builtin/clean.c:937
 msgid "-x and -X cannot be used together"
 msgstr "-x và -X không thể dùng cùng nhau"
 
-#: builtin/clean.c:938
+#: builtin/clean.c:941
 msgid ""
 "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
@@ -6494,7 +6621,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:941
+#: builtin/clean.c:944
 msgid ""
 "clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
@@ -6502,144 +6629,144 @@ msgstr ""
 "clean.requireForce mặc định được đặt là true và không đưa ra tùy chọn -i, -n "
 "mà cũng không -f; từ chối lệnh dọn dẹp (clean)"
 
-#: builtin/clone.c:38
+#: builtin/clone.c:39
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr "git clone [<các-tùy-chọn>] [--] <kho> [<t.mục>]"
 
-#: builtin/clone.c:82
+#: builtin/clone.c:83
 msgid "don't create a checkout"
 msgstr "không tạo một checkout"
 
-#: builtin/clone.c:83 builtin/clone.c:85 builtin/init-db.c:479
+#: builtin/clone.c:84 builtin/clone.c:86 builtin/init-db.c:479
 msgid "create a bare repository"
 msgstr "tạo kho thuần"
 
-#: builtin/clone.c:87
+#: builtin/clone.c:88
 msgid "create a mirror repository (implies bare)"
 msgstr "tạo kho bản sao (ý là kho thuần)"
 
-#: builtin/clone.c:89
+#: builtin/clone.c:90
 msgid "to clone from a local repository"
 msgstr "để nhân bản từ kho nội bộ"
 
-#: builtin/clone.c:91
+#: builtin/clone.c:92
 msgid "don't use local hardlinks, always copy"
 msgstr "không sử dụng liên kết cứng nội bộ, luôn sao chép"
 
-#: builtin/clone.c:93
+#: builtin/clone.c:94
 msgid "setup as shared repository"
 msgstr "cài đặt đây là kho chia sẻ"
 
-#: builtin/clone.c:95 builtin/clone.c:99
+#: builtin/clone.c:96 builtin/clone.c:100
 msgid "pathspec"
 msgstr "đặc-tả-đường-dẫn"
 
-#: builtin/clone.c:95 builtin/clone.c:99
+#: builtin/clone.c:96 builtin/clone.c:100
 msgid "initialize submodules in the clone"
 msgstr "khởi tạo mô-đun-con trong bản sao"
 
-#: builtin/clone.c:102
+#: builtin/clone.c:103
 msgid "number of submodules cloned in parallel"
 msgstr "số lượng mô-đun-con được nhân bản đồng thời"
 
-#: builtin/clone.c:103 builtin/init-db.c:476
+#: builtin/clone.c:104 builtin/init-db.c:476
 msgid "template-directory"
 msgstr "thư-mục-mẫu"
 
-#: builtin/clone.c:104 builtin/init-db.c:477
+#: builtin/clone.c:105 builtin/init-db.c:477
 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:106 builtin/clone.c:108 builtin/submodule--helper.c:642
-#: builtin/submodule--helper.c:983
+#: builtin/clone.c:107 builtin/clone.c:109 builtin/submodule--helper.c:635
+#: builtin/submodule--helper.c:1002
 msgid "reference repository"
 msgstr "kho tham chiếu"
 
-#: builtin/clone.c:110
+#: builtin/clone.c:111
 msgid "use --reference only while cloning"
 msgstr "chỉ dùng --reference khi nhân bản"
 
-#: builtin/clone.c:111 builtin/column.c:27 builtin/merge-file.c:44
+#: builtin/clone.c:112 builtin/column.c:27 builtin/merge-file.c:44
 msgid "name"
 msgstr "tên"
 
-#: builtin/clone.c:112
+#: builtin/clone.c:113
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr "dùng <tên> thay cho “origin” để theo dõi thượng nguồn"
 
-#: builtin/clone.c:114
+#: builtin/clone.c:115
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr "lấy ra <nhánh> thay cho HEAD của máy chủ"
 
-#: builtin/clone.c:116
+#: builtin/clone.c:117
 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:117 builtin/fetch.c:115 builtin/grep.c:1025
+#: builtin/clone.c:118 builtin/fetch.c:137 builtin/grep.c:804
 #: builtin/pull.c:205
 msgid "depth"
 msgstr "độ-sâu"
 
-#: builtin/clone.c:118
+#: builtin/clone.c:119
 msgid "create a shallow clone of that depth"
 msgstr "tạo bản sao không đầy đủ cho mức sâu đã cho"
 
-#: builtin/clone.c:119 builtin/fetch.c:117 builtin/pack-objects.c:2932
+#: builtin/clone.c:120 builtin/fetch.c:139 builtin/pack-objects.c:2938
 #: parse-options.h:142
 msgid "time"
 msgstr "thời-gian"
 
-#: builtin/clone.c:120
+#: builtin/clone.c:121
 msgid "create a shallow clone since a specific time"
 msgstr "tạo bản sao không đầy đủ từ thời điểm đã cho"
 
-#: builtin/clone.c:121 builtin/fetch.c:119
+#: builtin/clone.c:122 builtin/fetch.c:141
 msgid "revision"
 msgstr "điểm xét duyệt"
 
-#: builtin/clone.c:122 builtin/fetch.c:120
+#: builtin/clone.c:123 builtin/fetch.c:142
 msgid "deepen history of shallow clone, excluding rev"
 msgstr "làm sâu hơn lịch sử của bản sao shallow, bằng điểm xét duyệt loại trừ"
 
-#: builtin/clone.c:124
+#: builtin/clone.c:125
 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:126
+#: builtin/clone.c:127
 msgid "don't clone any tags, and make later fetches not to follow them"
 msgstr ""
 "đứng có nhân bản bất kỳ nhánh nào, và làm cho những lần lấy về sau không "
 "theo chúng nữa"
 
-#: builtin/clone.c:128
+#: builtin/clone.c:129
 msgid "any cloned submodules will be shallow"
 msgstr "mọi mô-đun-con nhân bản sẽ là shallow (nông)"
 
-#: builtin/clone.c:129 builtin/init-db.c:485
+#: builtin/clone.c:130 builtin/init-db.c:485
 msgid "gitdir"
 msgstr "gitdir"
 
-#: builtin/clone.c:130 builtin/init-db.c:486
+#: builtin/clone.c:131 builtin/init-db.c:486
 msgid "separate git dir from working tree"
 msgstr "không dùng chung thư mục dành riêng cho git và thư mục làm việc"
 
-#: builtin/clone.c:131
+#: builtin/clone.c:132
 msgid "key=value"
 msgstr "khóa=giá_trị"
 
-#: builtin/clone.c:132
+#: builtin/clone.c:133
 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:133 builtin/fetch.c:137 builtin/push.c:555
+#: builtin/clone.c:134 builtin/fetch.c:159 builtin/push.c:555
 msgid "use IPv4 addresses only"
 msgstr "chỉ dùng địa chỉ IPv4"
 
-#: builtin/clone.c:135 builtin/fetch.c:139 builtin/push.c:557
+#: builtin/clone.c:136 builtin/fetch.c:161 builtin/push.c:557
 msgid "use IPv6 addresses only"
 msgstr "chỉ dùng địa chỉ IPv6"
 
-#: builtin/clone.c:272
+#: builtin/clone.c:273
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
@@ -6647,42 +6774,42 @@ msgstr ""
 "Không đoán được thư mục tên là gì.\n"
 "Vui lòng chỉ định tên một thư mục trên dòng lệnh"
 
-#: builtin/clone.c:325
+#: builtin/clone.c:326
 #, c-format
 msgid "info: Could not add alternate for '%s': %s\n"
 msgstr "thông tin: không thể thêm thay thế cho “%s”: %s\n"
 
-#: builtin/clone.c:397
+#: builtin/clone.c:398
 #, c-format
 msgid "failed to open '%s'"
 msgstr "gặp lỗi khi mở “%s”"
 
-#: builtin/clone.c:405
+#: builtin/clone.c:406
 #, 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:419
+#: builtin/clone.c:420
 #, 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:441
+#: builtin/clone.c:442
 #, 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:445
+#: builtin/clone.c:446
 #, 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:470
+#: builtin/clone.c:471
 #, c-format
 msgid "done.\n"
 msgstr "hoàn tất.\n"
 
-#: builtin/clone.c:482
+#: builtin/clone.c:483
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
@@ -6692,99 +6819,99 @@ 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:559
+#: builtin/clone.c:560
 #, 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:654
+#: builtin/clone.c:655
 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:670
+#: builtin/clone.c:671
 #, c-format
 msgid "unable to update %s"
 msgstr "không thể cập nhật %s"
 
-#: builtin/clone.c:719
+#: builtin/clone.c:720
 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:750
+#: builtin/clone.c:751
 msgid "unable to checkout working tree"
 msgstr "không thể lấy ra (checkout) cây làm việc"
 
-#: builtin/clone.c:792
+#: builtin/clone.c:796
 msgid "unable to write parameters to config file"
 msgstr "không thể ghi các tham số vào tập tin cấu hình"
 
-#: builtin/clone.c:855
+#: builtin/clone.c:859
 msgid "cannot repack to clean up"
 msgstr "không thể đóng gói để dọn dẹp"
 
-#: builtin/clone.c:857
+#: builtin/clone.c:861
 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:890 builtin/receive-pack.c:1945
+#: builtin/clone.c:894 builtin/receive-pack.c:1944
 msgid "Too many arguments."
 msgstr "Có quá nhiều đối số."
 
-#: builtin/clone.c:894
+#: builtin/clone.c:898
 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:907
+#: builtin/clone.c:911
 #, 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:910
+#: builtin/clone.c:914
 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:923
+#: builtin/clone.c:927
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr "kho chứa “%s” chưa tồn tại"
 
-#: builtin/clone.c:929 builtin/fetch.c:1337
+#: builtin/clone.c:933 builtin/fetch.c:1360
 #, 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:939
+#: builtin/clone.c:943
 #, 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:949
+#: builtin/clone.c:953
 #, 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:964 builtin/clone.c:975 builtin/difftool.c:260
-#: builtin/worktree.c:222 builtin/worktree.c:252
+#: builtin/clone.c:968 builtin/clone.c:979 builtin/difftool.c:270
+#: builtin/worktree.c:240 builtin/worktree.c:270
 #, 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:967
+#: builtin/clone.c:971
 #, 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:979
+#: builtin/clone.c:983
 #, 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:981
+#: builtin/clone.c:985
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr "Đang nhân bản thành “%s”…\n"
 
-#: builtin/clone.c:1005
+#: builtin/clone.c:1009
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
@@ -6792,41 +6919,41 @@ msgstr ""
 "nhân bản --recursive không tương thích với cả hai --reference và --reference-"
 "if-able"
 
-#: builtin/clone.c:1067
+#: builtin/clone.c:1071
 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:1069
+#: builtin/clone.c:1073
 msgid "--shallow-since is ignored in local clones; use file:// instead."
 msgstr ""
 "--shallow-since bị lờ đi khi nhân bản nội bộ; hãy sử dụng file:// để thay "
 "thế."
 
-#: builtin/clone.c:1071
+#: builtin/clone.c:1075
 msgid "--shallow-exclude is ignored in local clones; use file:// instead."
 msgstr ""
 "--shallow-exclude bị lờ đi khi nhân bản nội bộ; hãy sử dụng file:// để thay "
 "thế."
 
-#: builtin/clone.c:1074
+#: builtin/clone.c:1078
 msgid "source repository is shallow, ignoring --local"
 msgstr "kho nguồn là nông, nên bỏ qua --local"
 
-#: builtin/clone.c:1079
+#: builtin/clone.c:1083
 msgid "--local is ignored"
 msgstr "--local bị lờ đi"
 
-#: builtin/clone.c:1083
+#: builtin/clone.c:1087
 #, 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:1138 builtin/clone.c:1146
+#: builtin/clone.c:1142 builtin/clone.c:1150
 #, 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:1149
+#: builtin/clone.c:1153
 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."
 
@@ -6977,63 +7104,63 @@ 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:319
+#: builtin/commit.c:318
 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:360
+#: builtin/commit.c:359
 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:366
+#: builtin/commit.c:365
 msgid "interactive add failed"
 msgstr "gặp lỗi khi thêm bằng cách tương"
 
-#: builtin/commit.c:379
+#: builtin/commit.c:378
 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:381
+#: builtin/commit.c:380
 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:405 builtin/commit.c:428 builtin/commit.c:477
+#: builtin/commit.c:405 builtin/commit.c:429 builtin/commit.c:478
 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:459
+#: builtin/commit.c:461
 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:461
+#: builtin/commit.c:463
 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:470
+#: builtin/commit.c:471
 msgid "cannot read the index"
 msgstr "không đọc được bảng mục lục"
 
-#: builtin/commit.c:489
+#: builtin/commit.c:490
 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:583
+#: builtin/commit.c:587
 #, 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:585
+#: builtin/commit.c:589
 #, 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:604
+#: builtin/commit.c:608
 msgid "malformed --author parameter"
 msgstr "đối số cho --author bị dị hình"
 
-#: builtin/commit.c:656
+#: builtin/commit.c:660
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
@@ -7041,38 +7168,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:693 builtin/commit.c:726 builtin/commit.c:1093
+#: builtin/commit.c:697 builtin/commit.c:730 builtin/commit.c:1100
 #, 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:705 builtin/shortlog.c:295
+#: builtin/commit.c:709 builtin/shortlog.c:309
 #, 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:707
+#: builtin/commit.c:711
 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:711
+#: builtin/commit.c:715
 #, c-format
 msgid "could not read log file '%s'"
 msgstr "không đọc được tệp nhật ký “%s”"
 
-#: builtin/commit.c:738 builtin/commit.c:746
+#: builtin/commit.c:742 builtin/commit.c:750
 msgid "could not read SQUASH_MSG"
 msgstr "không thể đọc SQUASH_MSG"
 
-#: builtin/commit.c:743
+#: builtin/commit.c:747
 msgid "could not read MERGE_MSG"
 msgstr "không thể đọc MERGE_MSG"
 
-#: builtin/commit.c:797
+#: builtin/commit.c:801
 msgid "could not write commit template"
 msgstr "không thể ghi mẫu chuyển giao"
 
-#: builtin/commit.c:815
+#: builtin/commit.c:819
 #, c-format
 msgid ""
 "\n"
@@ -7087,7 +7214,7 @@ msgstr ""
 "\t%s\n"
 "và thử lại.\n"
 
-#: builtin/commit.c:820
+#: builtin/commit.c:824
 #, c-format
 msgid ""
 "\n"
@@ -7102,7 +7229,7 @@ msgstr ""
 "\t%s\n"
 "và thử lại.\n"
 
-#: builtin/commit.c:833
+#: builtin/commit.c:837
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -7113,7 +7240,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:840
+#: builtin/commit.c:844
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -7125,155 +7252,155 @@ 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:857
+#: builtin/commit.c:861
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr "%sTác giả:           %.*s <%.*s>"
 
-#: builtin/commit.c:865
+#: builtin/commit.c:869
 #, c-format
 msgid "%sDate:      %s"
 msgstr "%sNgày tháng:        %s"
 
-#: builtin/commit.c:872
+#: builtin/commit.c:876
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr "%sNgười chuyển giao: %.*s <%.*s>"
 
-#: builtin/commit.c:889
+#: builtin/commit.c:893
 msgid "Cannot read index"
 msgstr "Không đọc được bảng mục lục"
 
-#: builtin/commit.c:951
+#: builtin/commit.c:958
 msgid "Error building trees"
 msgstr "Gặp lỗi khi xây dựng cây"
 
-#: builtin/commit.c:965 builtin/tag.c:274
+#: builtin/commit.c:972 builtin/tag.c:252
 #, 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:1068
+#: builtin/commit.c:1075
 #, 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:1083 builtin/commit.c:1328
+#: builtin/commit.c:1090 builtin/commit.c:1335
 #, 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:1121
+#: builtin/commit.c:1128
 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:1151
+#: builtin/commit.c:1158
 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:1160
+#: builtin/commit.c:1167
 msgid "You have nothing to amend."
 msgstr "Không có gì để mà “tu bổ” cả."
 
-#: builtin/commit.c:1163
+#: builtin/commit.c:1170
 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:1165
+#: builtin/commit.c:1172
 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:1168
+#: builtin/commit.c:1175
 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:1178
+#: builtin/commit.c:1185
 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:1180
+#: builtin/commit.c:1187
 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:1188
+#: builtin/commit.c:1195
 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:1205
+#: builtin/commit.c:1212
 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:1207
+#: builtin/commit.c:1214
 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:1219 builtin/tag.c:552
+#: builtin/commit.c:1226 builtin/tag.c:535
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr "Chế độ dọn dẹp không hợp lệ %s"
 
-#: builtin/commit.c:1224
+#: builtin/commit.c:1231
 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:1342 builtin/commit.c:1617
+#: builtin/commit.c:1349 builtin/commit.c:1626
 msgid "show status concisely"
 msgstr "hiển thị trạng thái ở dạng súc tích"
 
-#: builtin/commit.c:1344 builtin/commit.c:1619
+#: builtin/commit.c:1351 builtin/commit.c:1628
 msgid "show branch information"
 msgstr "hiển thị thông tin nhánh"
 
-#: builtin/commit.c:1346
+#: builtin/commit.c:1353
 msgid "show stash information"
 msgstr "hiển thị thông tin về tạm cất"
 
-#: builtin/commit.c:1348
+#: builtin/commit.c:1355
 msgid "version"
 msgstr "phiên bản"
 
-#: builtin/commit.c:1348 builtin/commit.c:1621 builtin/push.c:530
-#: builtin/worktree.c:449
+#: builtin/commit.c:1355 builtin/commit.c:1630 builtin/push.c:530
+#: builtin/worktree.c:469
 msgid "machine-readable output"
 msgstr "kết xuất dạng máy-có-thể-đọc"
 
-#: builtin/commit.c:1351 builtin/commit.c:1623
+#: builtin/commit.c:1358 builtin/commit.c:1632
 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:1354 builtin/commit.c:1626
+#: builtin/commit.c:1361 builtin/commit.c:1635
 msgid "terminate entries with NUL"
 msgstr "chấm dứt các mục bằng NUL"
 
-#: builtin/commit.c:1356 builtin/commit.c:1629 builtin/fast-export.c:983
-#: builtin/fast-export.c:986 builtin/tag.c:412
+#: builtin/commit.c:1363 builtin/commit.c:1638 builtin/fast-export.c:999
+#: builtin/fast-export.c:1002 builtin/tag.c:390
 msgid "mode"
 msgstr "chế độ"
 
-#: builtin/commit.c:1357 builtin/commit.c:1629
+#: builtin/commit.c:1364 builtin/commit.c:1638
 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:1360
+#: builtin/commit.c:1367
 msgid "show ignored files"
 msgstr "hiển thị các tập tin ẩn"
 
-#: builtin/commit.c:1361 parse-options.h:155
+#: builtin/commit.c:1368 parse-options.h:155
 msgid "when"
 msgstr "khi"
 
-#: builtin/commit.c:1362
+#: builtin/commit.c:1369
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
@@ -7281,205 +7408,206 @@ 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:1364
+#: builtin/commit.c:1371
 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:1440
+#: builtin/commit.c:1449
 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:1442
+#: builtin/commit.c:1451
 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:1487
+#: builtin/commit.c:1496
 msgid "detached HEAD"
 msgstr "đã rời khỏi HEAD"
 
-#: builtin/commit.c:1490
+#: builtin/commit.c:1499
 msgid " (root-commit)"
 msgstr " (root-commit)"
 
-#: builtin/commit.c:1587
+#: builtin/commit.c:1596
 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:1588
+#: builtin/commit.c:1597
 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:1590
+#: builtin/commit.c:1599
 msgid "Commit message options"
 msgstr "Các tùy chọn ghi chú commit"
 
-#: builtin/commit.c:1591 builtin/tag.c:410
+#: builtin/commit.c:1600 builtin/tag.c:388
 msgid "read message from file"
 msgstr "đọc chú thích từ tập tin"
 
-#: builtin/commit.c:1592
+#: builtin/commit.c:1601
 msgid "author"
 msgstr "tác giả"
 
-#: builtin/commit.c:1592
+#: builtin/commit.c:1601
 msgid "override author for commit"
 msgstr "ghi đè tác giả cho commit"
 
-#: builtin/commit.c:1593 builtin/gc.c:358
+#: builtin/commit.c:1602 builtin/gc.c:359
 msgid "date"
 msgstr "ngày tháng"
 
-#: builtin/commit.c:1593
+#: builtin/commit.c:1602
 msgid "override date for commit"
 msgstr "ghi đè ngày tháng cho lần chuyển giao"
 
-#: builtin/commit.c:1594 builtin/merge.c:222 builtin/notes.c:401
-#: builtin/notes.c:564 builtin/tag.c:408
+#: builtin/commit.c:1603 builtin/merge.c:225 builtin/notes.c:402
+#: builtin/notes.c:565 builtin/tag.c:386
 msgid "message"
 msgstr "chú thích"
 
-#: builtin/commit.c:1594
+#: builtin/commit.c:1603
 msgid "commit message"
 msgstr "chú thích của lần chuyển giao"
 
-#: builtin/commit.c:1595 builtin/commit.c:1596 builtin/commit.c:1597
-#: builtin/commit.c:1598 parse-options.h:257 ref-filter.h:77
+#: builtin/commit.c:1604 builtin/commit.c:1605 builtin/commit.c:1606
+#: builtin/commit.c:1607 parse-options.h:257 ref-filter.h:92
 msgid "commit"
 msgstr "lần_chuyển_giao"
 
-#: builtin/commit.c:1595
+#: builtin/commit.c:1604
 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:1596
+#: builtin/commit.c:1605
 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:1597
+#: builtin/commit.c:1606
 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:1598
+#: builtin/commit.c:1607
 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:1599
+#: builtin/commit.c:1608
 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:1600 builtin/log.c:1430 builtin/revert.c:105
+#: builtin/commit.c:1609 builtin/log.c:1436 builtin/merge.c:239
+#: builtin/revert.c:105
 msgid "add Signed-off-by:"
 msgstr "(nên dùng) thêm dòng Signed-off-by:"
 
-#: builtin/commit.c:1601
+#: builtin/commit.c:1610
 msgid "use specified template file"
 msgstr "sử dụng tập tin mẫu đã cho"
 
-#: builtin/commit.c:1602
+#: builtin/commit.c:1611
 msgid "force edit of commit"
 msgstr "ép buộc sửa lần commit"
 
-#: builtin/commit.c:1603
+#: builtin/commit.c:1612
 msgid "default"
 msgstr "mặc định"
 
-#: builtin/commit.c:1603 builtin/tag.c:413
+#: builtin/commit.c:1612 builtin/tag.c:391
 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:1604
+#: builtin/commit.c:1613
 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:1606 builtin/merge.c:234 builtin/pull.c:173
+#: builtin/commit.c:1615 builtin/merge.c:237 builtin/pull.c:173
 #: builtin/revert.c:113
 msgid "GPG sign commit"
 msgstr "ký lần chuyển giao dùng GPG"
 
-#: builtin/commit.c:1609
+#: builtin/commit.c:1618
 msgid "Commit contents options"
 msgstr "Các tùy nội dung ghi chú commit"
 
-#: builtin/commit.c:1610
+#: builtin/commit.c:1619
 msgid "commit all changed files"
 msgstr "chuyển giao tất cả các tập tin có thay đổi"
 
-#: builtin/commit.c:1611
+#: builtin/commit.c:1620
 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:1612
+#: builtin/commit.c:1621
 msgid "interactively add files"
 msgstr "thêm các tập-tin bằng tương tác"
 
-#: builtin/commit.c:1613
+#: builtin/commit.c:1622
 msgid "interactively add changes"
 msgstr "thêm các thay đổi bằng tương tác"
 
-#: builtin/commit.c:1614
+#: builtin/commit.c:1623
 msgid "commit only specified files"
 msgstr "chỉ chuyển giao các tập tin đã chỉ ra"
 
-#: builtin/commit.c:1615
+#: builtin/commit.c:1624
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr "vòng qua móc (hook) pre-commit và commit-msg"
 
-#: builtin/commit.c:1616
+#: builtin/commit.c:1625
 msgid "show what would be committed"
 msgstr "hiển thị xem cái gì có thể được chuyển giao"
 
-#: builtin/commit.c:1627
+#: builtin/commit.c:1636
 msgid "amend previous commit"
 msgstr "“tu bổ” (amend) lần commit trước"
 
-#: builtin/commit.c:1628
+#: builtin/commit.c:1637
 msgid "bypass post-rewrite hook"
 msgstr "vòng qua móc (hook) post-rewrite"
 
-#: builtin/commit.c:1633
+#: builtin/commit.c:1642
 msgid "ok to record an empty change"
 msgstr "ok để ghi lại một thay đổi trống rỗng"
 
-#: builtin/commit.c:1635
+#: builtin/commit.c:1644
 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:1665
+#: builtin/commit.c:1674
 msgid "could not parse HEAD commit"
 msgstr "không thể phân tích commit (lần chuyển giao) HEAD"
 
-#: builtin/commit.c:1710
+#: builtin/commit.c:1719
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr "Tập tin MERGE_HEAD sai hỏng (%s)"
 
-#: builtin/commit.c:1717
+#: builtin/commit.c:1726
 msgid "could not read MERGE_MODE"
 msgstr "không thể đọc MERGE_MODE"
 
-#: builtin/commit.c:1736
+#: builtin/commit.c:1745
 #, c-format
 msgid "could not read commit message: %s"
 msgstr "không thể đọc phần chú thích (message) của lần chuyển giao: %s"
 
-#: builtin/commit.c:1747
+#: builtin/commit.c:1756
+#, 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:1761
 #, 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:1752
-#, 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:1800
+#: builtin/commit.c:1809
 msgid ""
 "Repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
@@ -7647,12 +7775,12 @@ msgstr ""
 msgid "--local can only be used inside a git repository"
 msgstr "--local chỉ có thể được dùng bên trong một kho git"
 
-#: builtin/config.c:621
+#: builtin/config.c:624
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr "không thể tạo tập tin cấu hình “%s”"
 
-#: builtin/config.c:633
+#: builtin/config.c:637
 #, c-format
 msgid ""
 "cannot overwrite multiple values with a single value\n"
@@ -7661,11 +7789,11 @@ msgstr ""
 "không thể ghi đè nhiều giá trị với một giá trị đơn\n"
 "      Dùng một biểu thức chính quy, --add hay --replace-all để thay đổi %s."
 
-#: builtin/count-objects.c:87
+#: builtin/count-objects.c:88
 msgid "git count-objects [-v] [-H | --human-readable]"
 msgstr "git count-objects [-v] [-H | --human-readable]"
 
-#: builtin/count-objects.c:97
+#: builtin/count-objects.c:98
 msgid "print sizes in human readable format"
 msgstr "hiển thị kích cỡ theo định dạng dành cho người đọc"
 
@@ -7689,47 +7817,47 @@ msgstr "hạng nhẹ"
 msgid "annotated"
 msgstr "có diễn giải"
 
-#: builtin/describe.c:253
+#: builtin/describe.c:264
 #, c-format
 msgid "annotated tag %s not available"
 msgstr "thẻ đã được ghi chú %s không sẵn để dùng"
 
-#: builtin/describe.c:257
+#: builtin/describe.c:268
 #, c-format
 msgid "annotated tag %s has no embedded name"
 msgstr "thẻ được chú giải %s không có tên nhúng"
 
-#: builtin/describe.c:259
+#: builtin/describe.c:270
 #, c-format
 msgid "tag '%s' is really '%s' here"
 msgstr "thẻ “%s” đã thực sự ở đây “%s” rồi"
 
-#: builtin/describe.c:286 builtin/log.c:489
+#: builtin/describe.c:297 builtin/log.c:493
 #, c-format
 msgid "Not a valid object name %s"
 msgstr "Không phải tên đối tượng %s hợp lệ"
 
-#: builtin/describe.c:289
+#: builtin/describe.c:300
 #, c-format
 msgid "%s is not a valid '%s' object"
 msgstr "%s không phải là một đối tượng “%s” hợp lệ"
 
-#: builtin/describe.c:306
+#: builtin/describe.c:317
 #, c-format
 msgid "no tag exactly matches '%s'"
 msgstr "không có thẻ nào khớp chính xác với “%s”"
 
-#: builtin/describe.c:308
+#: builtin/describe.c:319
 #, c-format
 msgid "searching to describe %s\n"
 msgstr "Đang tìm kiếm để mô tả %s\n"
 
-#: builtin/describe.c:355
+#: builtin/describe.c:366
 #, c-format
 msgid "finished search at %s\n"
 msgstr "việc tìm kiếm đã kết thúc tại %s\n"
 
-#: builtin/describe.c:382
+#: builtin/describe.c:393
 #, c-format
 msgid ""
 "No annotated tags can describe '%s'.\n"
@@ -7738,7 +7866,7 @@ msgstr ""
 "Không có thẻ được chú giải nào được mô tả là “%s”.\n"
 "Tuy nhiên, ở đây có những thẻ không được chú giải: hãy thử --tags."
 
-#: builtin/describe.c:386
+#: builtin/describe.c:397
 #, c-format
 msgid ""
 "No tags can describe '%s'.\n"
@@ -7747,12 +7875,12 @@ msgstr ""
 "Không có thẻ có thể mô tả “%s”.\n"
 "Hãy thử --always, hoặc tạo một số thẻ."
 
-#: builtin/describe.c:416
+#: builtin/describe.c:427
 #, c-format
 msgid "traversed %lu commits\n"
 msgstr "đã xuyên %lu qua lần chuyển giao\n"
 
-#: builtin/describe.c:419
+#: builtin/describe.c:430
 #, c-format
 msgid ""
 "more than %i tags found; listed %i most recent\n"
@@ -7761,75 +7889,75 @@ msgstr ""
 "tìm thấy nhiều hơn %i thẻ; đã liệt kê %i cái gần\n"
 "đây nhất bỏ đi tìm kiếm tại %s\n"
 
-#: builtin/describe.c:441
+#: builtin/describe.c:452
 msgid "find the tag that comes after the commit"
 msgstr "tìm các thẻ mà nó đến trước lần chuyển giao"
 
-#: builtin/describe.c:442
+#: builtin/describe.c:453
 msgid "debug search strategy on stderr"
 msgstr "chiến lược tìm kiếm gỡ lỗi trên đầu ra lỗi chuẩn stderr"
 
-#: builtin/describe.c:443
+#: builtin/describe.c:454
 msgid "use any ref"
 msgstr "dùng ref bất kỳ"
 
-#: builtin/describe.c:444
+#: builtin/describe.c:455
 msgid "use any tag, even unannotated"
 msgstr "dùng thẻ bất kỳ, cả khi “unannotated”"
 
-#: builtin/describe.c:445
+#: builtin/describe.c:456
 msgid "always use long format"
 msgstr "luôn dùng định dạng dài"
 
-#: builtin/describe.c:446
+#: builtin/describe.c:457
 msgid "only follow first parent"
 msgstr "chỉ theo cha mẹ đầu tiên"
 
-#: builtin/describe.c:449
+#: builtin/describe.c:460
 msgid "only output exact matches"
 msgstr "chỉ xuất những gì khớp chính xác"
 
-#: builtin/describe.c:451
+#: builtin/describe.c:462
 msgid "consider <n> most recent tags (default: 10)"
 msgstr "coi như <n> thẻ gần đây nhất (mặc định: 10)"
 
-#: builtin/describe.c:453
+#: builtin/describe.c:464
 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:455
+#: builtin/describe.c:466
 msgid "do not consider tags matching <pattern>"
 msgstr "không coi rằng các thẻ khớp với <mẫu>"
 
-#: builtin/describe.c:457 builtin/name-rev.c:406
+#: builtin/describe.c:468 builtin/name-rev.c:406
 msgid "show abbreviated commit object as fallback"
 msgstr "hiển thị đối tượng chuyển giao vắn tắt như là fallback"
 
-#: builtin/describe.c:458 builtin/describe.c:461
+#: builtin/describe.c:469 builtin/describe.c:472
 msgid "mark"
 msgstr "dấu"
 
-#: builtin/describe.c:459
+#: builtin/describe.c:470
 msgid "append <mark> on dirty working tree (default: \"-dirty\")"
 msgstr "thêm <dấu> trên cây thư mục làm việc bẩn (mặc định \"-dirty\")"
 
-#: builtin/describe.c:462
+#: builtin/describe.c:473
 msgid "append <mark> on broken working tree (default: \"-broken\")"
 msgstr "thêm <dấu> trên cây thư mục làm việc bị hỏng (mặc định \"-broken\")"
 
-#: builtin/describe.c:480
+#: builtin/describe.c:491
 msgid "--long is incompatible with --abbrev=0"
 msgstr "--long là xung khắc với tùy chọn --abbrev=0"
 
-#: builtin/describe.c:509
+#: builtin/describe.c:520
 msgid "No names found, cannot describe anything."
 msgstr "Không tìm thấy các tên, không thể mô tả gì cả."
 
-#: builtin/describe.c:552
+#: builtin/describe.c:563
 msgid "--dirty is incompatible with commit-ishes"
 msgstr "--dirty là xung khắc với các tùy chọn commit-ish"
 
-#: builtin/describe.c:554
+#: builtin/describe.c:565
 msgid "--broken is incompatible with commit-ishes"
 msgstr "--broken là xung khắc với commit-ishes"
 
@@ -7843,21 +7971,21 @@ msgstr "“%s”: không phải tập tin bình thường hay liên kết mềm"
 msgid "invalid option: %s"
 msgstr "tùy chọn không hợp lệ: %s"
 
-#: builtin/diff.c:359
+#: builtin/diff.c:357
 msgid "Not a git repository"
 msgstr "Không phải là kho git"
 
-#: builtin/diff.c:402
+#: builtin/diff.c:400
 #, c-format
 msgid "invalid object '%s' given."
 msgstr "đối tượng đã cho “%s” không hợp lệ."
 
-#: builtin/diff.c:411
+#: builtin/diff.c:409
 #, c-format
 msgid "more than two blobs given: '%s'"
 msgstr "đã cho nhiều hơn hai đối tượng blob: “%s”"
 
-#: builtin/diff.c:416
+#: builtin/diff.c:414
 #, c-format
 msgid "unhandled object '%s' given."
 msgstr "đã cho đối tượng không thể nắm giữ “%s”."
@@ -7868,27 +7996,27 @@ msgstr ""
 "git difftool [<các-tùy-chọn>] [<lần_chuyển_giao> [<lần_chuyển_giao>]] [--] "
 "<đường-dẫn>…]"
 
-#: builtin/difftool.c:249
+#: builtin/difftool.c:259
 #, c-format
 msgid "failed: %d"
 msgstr "gặp lỗi: %d"
 
-#: builtin/difftool.c:291
+#: builtin/difftool.c:301
 #, c-format
 msgid "could not read symlink %s"
 msgstr "không thể đọc liên kết mềm %s"
 
-#: builtin/difftool.c:293
+#: builtin/difftool.c:303
 #, c-format
 msgid "could not read symlink file %s"
 msgstr "không đọc được tập tin liên kết mềm %s"
 
-#: builtin/difftool.c:301
+#: builtin/difftool.c:311
 #, c-format
 msgid "could not read object %s for symlink %s"
 msgstr "Không thể đọc đối tượng %s cho liên kết mềm %s"
 
-#: builtin/difftool.c:403
+#: builtin/difftool.c:412
 msgid ""
 "combined diff formats('-c' and '--cc') are not supported in\n"
 "directory diff mode('-d' and '--dir-diff')."
@@ -7896,53 +8024,53 @@ msgstr ""
 "các định dạng diff tổ hợp(“-c” và “--cc”) chưa được hỗ trợ trong\n"
 "chế độ diff thư mục(“-d” và “--dir-diff”)."
 
-#: builtin/difftool.c:626
+#: builtin/difftool.c:633
 #, c-format
 msgid "both files modified: '%s' and '%s'."
 msgstr "cả hai tập tin đã bị sửa: “%s” và “%s”."
 
-#: builtin/difftool.c:628
+#: builtin/difftool.c:635
 msgid "working tree file has been left."
 msgstr "cây làm việc ở bên trái."
 
-#: builtin/difftool.c:639
+#: builtin/difftool.c:646
 #, c-format
 msgid "temporary files exist in '%s'."
 msgstr "các tập tin tạm đã sẵn có trong “%s”."
 
-#: builtin/difftool.c:640
+#: builtin/difftool.c:647
 msgid "you may want to cleanup or recover these."
 msgstr "bạn có lẽ muốn dọn dẹp hay "
 
-#: builtin/difftool.c:689
+#: builtin/difftool.c:696
 msgid "use `diff.guitool` instead of `diff.tool`"
 msgstr "dùng “diff.guitool“ thay vì dùng “diff.tool“"
 
-#: builtin/difftool.c:691
+#: builtin/difftool.c:698
 msgid "perform a full-directory diff"
 msgstr "thực hiện một diff toàn thư mục"
 
-#: builtin/difftool.c:693
+#: builtin/difftool.c:700
 msgid "do not prompt before launching a diff tool"
 msgstr "đừng nhắc khi khởi chạy công cụ diff"
 
-#: builtin/difftool.c:699
+#: builtin/difftool.c:706
 msgid "use symlinks in dir-diff mode"
 msgstr "dùng liên kết mềm trong diff-thư-mục"
 
-#: builtin/difftool.c:700
+#: builtin/difftool.c:707
 msgid "<tool>"
 msgstr "<công_cụ>"
 
-#: builtin/difftool.c:701
+#: builtin/difftool.c:708
 msgid "use the specified diff tool"
 msgstr "dùng công cụ diff đã cho"
 
-#: builtin/difftool.c:703
+#: builtin/difftool.c:710
 msgid "print a list of diff tools that may be used with `--tool`"
 msgstr "in ra danh sách các công cụ dif cái mà có thẻ dùng với “--tool“"
 
-#: builtin/difftool.c:706
+#: builtin/difftool.c:713
 msgid ""
 "make 'git-difftool' exit when an invoked diff tool returns a non - zero exit "
 "code"
@@ -7950,19 +8078,19 @@ msgstr ""
 "làm cho “git-difftool” thoát khi gọi công cụ diff trả về mã không phải số "
 "không"
 
-#: builtin/difftool.c:708
+#: builtin/difftool.c:715
 msgid "<command>"
 msgstr "<lệnh>"
 
-#: builtin/difftool.c:709
+#: builtin/difftool.c:716
 msgid "specify a custom command for viewing diffs"
 msgstr "chỉ định một lệnh tùy ý để xem diff"
 
-#: builtin/difftool.c:733
+#: builtin/difftool.c:740
 msgid "no <tool> given for --tool=<tool>"
 msgstr "chưa đưa ra <công_cụ> cho --tool=<công_cụ>"
 
-#: builtin/difftool.c:740
+#: builtin/difftool.c:747
 msgid "no <cmd> given for --extcmd=<cmd>"
 msgstr "chưa đưa ra <lệnh> cho --extcmd=<lệnh>"
 
@@ -7970,145 +8098,145 @@ msgstr "chưa đưa ra <lệnh> cho --extcmd=<lệnh>"
 msgid "git fast-export [rev-list-opts]"
 msgstr "git fast-export [rev-list-opts]"
 
-#: builtin/fast-export.c:982
+#: builtin/fast-export.c:998
 msgid "show progress after <n> objects"
 msgstr "hiển thị tiến triển sau <n> đối tượng"
 
-#: builtin/fast-export.c:984
+#: builtin/fast-export.c:1000
 msgid "select handling of signed tags"
 msgstr "chọn điều khiển của thẻ đã ký"
 
-#: builtin/fast-export.c:987
+#: builtin/fast-export.c:1003
 msgid "select handling of tags that tag filtered objects"
 msgstr "chọn sự xử lý của các thẻ, cái mà đánh thẻ các đối tượng được lọc ra"
 
-#: builtin/fast-export.c:990
+#: builtin/fast-export.c:1006
 msgid "Dump marks to this file"
 msgstr "Đổ các đánh dấu này vào tập-tin"
 
-#: builtin/fast-export.c:992
+#: builtin/fast-export.c:1008
 msgid "Import marks from this file"
 msgstr "nhập vào đánh dấu từ tập tin này"
 
-#: builtin/fast-export.c:994
+#: builtin/fast-export.c:1010
 msgid "Fake a tagger when tags lack one"
 msgstr "Làm giả một cái thẻ khi thẻ bị thiếu một cái"
 
-#: builtin/fast-export.c:996
+#: builtin/fast-export.c:1012
 msgid "Output full tree for each commit"
 msgstr "Xuất ra toàn bộ cây cho mỗi lần chuyển giao"
 
-#: builtin/fast-export.c:998
+#: builtin/fast-export.c:1014
 msgid "Use the done feature to terminate the stream"
 msgstr "Sử dụng tính năng done để chấm dứt luồng dữ liệu"
 
-#: builtin/fast-export.c:999
+#: builtin/fast-export.c:1015
 msgid "Skip output of blob data"
 msgstr "Bỏ qua kết xuất của dữ liệu blob"
 
-#: builtin/fast-export.c:1000
+#: builtin/fast-export.c:1016
 msgid "refspec"
 msgstr "refspec"
 
-#: builtin/fast-export.c:1001
+#: builtin/fast-export.c:1017
 msgid "Apply refspec to exported refs"
 msgstr "Áp dụng refspec cho refs đã xuất"
 
-#: builtin/fast-export.c:1002
+#: builtin/fast-export.c:1018
 msgid "anonymize output"
 msgstr "kết xuất anonymize"
 
-#: builtin/fetch.c:22
+#: builtin/fetch.c:23
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr "git fetch [<các-tùy-chọn>] [<kho-chứa> [<refspec>…]]"
 
-#: builtin/fetch.c:23
+#: builtin/fetch.c:24
 msgid "git fetch [<options>] <group>"
 msgstr "git fetch [<các-tùy-chọn>] [<nhóm>"
 
-#: builtin/fetch.c:24
+#: builtin/fetch.c:25
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
 msgstr "git fetch --multiple [<các-tùy-chọn>] [(<kho> | <nhóm>)…]"
 
-#: builtin/fetch.c:25
+#: builtin/fetch.c:26
 msgid "git fetch --all [<options>]"
 msgstr "git fetch --all [<các-tùy-chọn>]"
 
-#: builtin/fetch.c:90 builtin/pull.c:182
+#: builtin/fetch.c:112 builtin/pull.c:182
 msgid "fetch from all remotes"
 msgstr "lấy về từ tất cả các máy chủ"
 
-#: builtin/fetch.c:92 builtin/pull.c:185
+#: builtin/fetch.c:114 builtin/pull.c:185
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr "nối thêm vào .git/FETCH_HEAD thay vì ghi đè lên nó"
 
-#: builtin/fetch.c:94 builtin/pull.c:188
+#: builtin/fetch.c:116 builtin/pull.c:188
 msgid "path to upload pack on remote end"
 msgstr "đường dẫn đến gói tải lên trên máy chủ cuối"
 
-#: builtin/fetch.c:95 builtin/pull.c:190
+#: builtin/fetch.c:117 builtin/pull.c:190
 msgid "force overwrite of local branch"
 msgstr "ép buộc ghi đè lên nhánh nội bộ"
 
-#: builtin/fetch.c:97
+#: builtin/fetch.c:119
 msgid "fetch from multiple remotes"
 msgstr "lấy từ nhiều máy chủ cùng lúc"
 
-#: builtin/fetch.c:99 builtin/pull.c:192
+#: builtin/fetch.c:121 builtin/pull.c:192
 msgid "fetch all tags and associated objects"
 msgstr "lấy tất cả các thẻ cùng với các đối tượng liên quan đến nó"
 
-#: builtin/fetch.c:101
+#: builtin/fetch.c:123
 msgid "do not fetch all tags (--no-tags)"
 msgstr "không lấy tất cả các thẻ (--no-tags)"
 
-#: builtin/fetch.c:103
+#: builtin/fetch.c:125
 msgid "number of submodules fetched in parallel"
 msgstr "số lượng mô-đun-con được lấy đồng thời"
 
-#: builtin/fetch.c:105 builtin/pull.c:195
+#: builtin/fetch.c:127 builtin/pull.c:195
 msgid "prune remote-tracking branches no longer on remote"
 msgstr ""
 "cắt cụt (prune) các nhánh “remote-tracking” không còn tồn tại trên máy chủ "
 "nữa"
 
-#: builtin/fetch.c:106 builtin/fetch.c:129 builtin/pull.c:123
+#: builtin/fetch.c:128 builtin/fetch.c:151 builtin/pull.c:123
 msgid "on-demand"
 msgstr "khi-cần"
 
-#: builtin/fetch.c:107
+#: builtin/fetch.c:129
 msgid "control recursive fetching of submodules"
 msgstr "điều khiển việc lấy về đệ quy trong các mô-đun-con"
 
-#: builtin/fetch.c:111 builtin/pull.c:203
+#: builtin/fetch.c:133 builtin/pull.c:203
 msgid "keep downloaded pack"
 msgstr "giữ lại gói đã tải về"
 
-#: builtin/fetch.c:113
+#: builtin/fetch.c:135
 msgid "allow updating of HEAD ref"
 msgstr "cho phép cập nhật th.chiếu HEAD"
 
-#: builtin/fetch.c:116 builtin/fetch.c:122 builtin/pull.c:206
+#: builtin/fetch.c:138 builtin/fetch.c:144 builtin/pull.c:206
 msgid "deepen history of shallow clone"
 msgstr "làm sâu hơn lịch sử của bản sao"
 
-#: builtin/fetch.c:118
+#: builtin/fetch.c:140
 msgid "deepen history of shallow repository based on time"
 msgstr "làm sâu hơn lịch sử của kho bản sao shallow dựa trên thời gian"
 
-#: builtin/fetch.c:124 builtin/pull.c:209
+#: builtin/fetch.c:146 builtin/pull.c:209
 msgid "convert to a complete repository"
 msgstr "chuyển đổi hoàn toàn sang kho git"
 
-#: builtin/fetch.c:126 builtin/log.c:1450
+#: builtin/fetch.c:148 builtin/log.c:1456
 msgid "dir"
 msgstr "tmục"
 
-#: builtin/fetch.c:127
+#: builtin/fetch.c:149
 msgid "prepend this to submodule path output"
 msgstr "soạn sẵn cái này cho kết xuất đường dẫn mô-đun-con"
 
-#: builtin/fetch.c:130
+#: builtin/fetch.c:152
 msgid ""
 "default for recursive fetching of submodules (lower priority than config "
 "files)"
@@ -8116,89 +8244,89 @@ msgstr ""
 "mặc định cho việc lấy đệ quy các mô-đun-con (có mức ưu tiên thấp hơn các tập "
 "tin cấu hình config)"
 
-#: builtin/fetch.c:134 builtin/pull.c:212
+#: builtin/fetch.c:156 builtin/pull.c:212
 msgid "accept refs that update .git/shallow"
 msgstr "chấp nhận tham chiếu cập nhật .git/shallow"
 
-#: builtin/fetch.c:135 builtin/pull.c:214
+#: builtin/fetch.c:157 builtin/pull.c:214
 msgid "refmap"
 msgstr "refmap"
 
-#: builtin/fetch.c:136 builtin/pull.c:215
+#: builtin/fetch.c:158 builtin/pull.c:215
 msgid "specify fetch refmap"
 msgstr "chỉ ra refmap cần lấy về"
 
-#: builtin/fetch.c:394
+#: builtin/fetch.c:416
 msgid "Couldn't find remote ref HEAD"
 msgstr "Không thể tìm thấy máy chủ cho tham chiếu HEAD"
 
-#: builtin/fetch.c:512
+#: builtin/fetch.c:534
 #, c-format
 msgid "configuration fetch.output contains invalid value %s"
 msgstr "phần cấu hình fetch.output có chứa giá-trị không hợp lệ %s"
 
-#: builtin/fetch.c:605
+#: builtin/fetch.c:627
 #, c-format
 msgid "object %s not found"
 msgstr "Không tìm thấy đối tượng %s"
 
-#: builtin/fetch.c:609
+#: builtin/fetch.c:631
 msgid "[up to date]"
 msgstr "[đã cập nhật]"
 
-#: builtin/fetch.c:622 builtin/fetch.c:702
+#: builtin/fetch.c:644 builtin/fetch.c:724
 msgid "[rejected]"
 msgstr "[Bị từ chối]"
 
-#: builtin/fetch.c:623
+#: builtin/fetch.c:645
 msgid "can't fetch in current branch"
 msgstr "không thể fetch (lấy) về nhánh hiện hành"
 
-#: builtin/fetch.c:632
+#: builtin/fetch.c:654
 msgid "[tag update]"
 msgstr "[cập nhật thẻ]"
 
-#: builtin/fetch.c:633 builtin/fetch.c:666 builtin/fetch.c:682
-#: builtin/fetch.c:697
+#: builtin/fetch.c:655 builtin/fetch.c:688 builtin/fetch.c:704
+#: builtin/fetch.c:719
 msgid "unable to update local ref"
 msgstr "không thể cập nhật tham chiếu nội bộ"
 
-#: builtin/fetch.c:652
+#: builtin/fetch.c:674
 msgid "[new tag]"
 msgstr "[thẻ mới]"
 
-#: builtin/fetch.c:655
+#: builtin/fetch.c:677
 msgid "[new branch]"
 msgstr "[nhánh mới]"
 
-#: builtin/fetch.c:658
+#: builtin/fetch.c:680
 msgid "[new ref]"
 msgstr "[ref (tham chiếu) mới]"
 
-#: builtin/fetch.c:697
+#: builtin/fetch.c:719
 msgid "forced update"
 msgstr "cưỡng bức cập nhật"
 
-#: builtin/fetch.c:702
+#: builtin/fetch.c:724
 msgid "non-fast-forward"
 msgstr "không-phải-chuyển-tiếp-nhanh"
 
-#: builtin/fetch.c:747
+#: builtin/fetch.c:769
 #, 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:767
+#: builtin/fetch.c:789
 #, 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:855 builtin/fetch.c:951
+#: builtin/fetch.c:877 builtin/fetch.c:973
 #, c-format
 msgid "From %.*s\n"
 msgstr "Từ %.*s\n"
 
-#: builtin/fetch.c:866
+#: builtin/fetch.c:888
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
@@ -8207,57 +8335,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:921
+#: builtin/fetch.c:943
 #, 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:922
+#: builtin/fetch.c:944
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr "   (%s đã trở thành không đầu (không được quản lý))"
 
-#: builtin/fetch.c:954
+#: builtin/fetch.c:976
 msgid "[deleted]"
 msgstr "[đã xóa]"
 
-#: builtin/fetch.c:955 builtin/remote.c:1023
+#: builtin/fetch.c:977 builtin/remote.c:1024
 msgid "(none)"
 msgstr "(không)"
 
-#: builtin/fetch.c:978
+#: builtin/fetch.c:1000
 #, 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:997
+#: builtin/fetch.c:1019
 #, 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:1000
+#: builtin/fetch.c:1022
 #, 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:1076
+#: builtin/fetch.c:1098
 #, 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:1236
+#: builtin/fetch.c:1258
 #, c-format
 msgid "Fetching %s\n"
 msgstr "Đang lấy “%s” về\n"
 
-#: builtin/fetch.c:1238 builtin/remote.c:97
+#: builtin/fetch.c:1260 builtin/remote.c:97
 #, c-format
 msgid "Could not fetch %s"
 msgstr "không thể “%s” về"
 
-#: builtin/fetch.c:1256
+#: builtin/fetch.c:1278
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
@@ -8265,40 +8393,40 @@ 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:1279
+#: builtin/fetch.c:1301
 msgid "You need to specify a tag name."
 msgstr "Bạn phải định rõ tên thẻ."
 
-#: builtin/fetch.c:1321
+#: builtin/fetch.c:1344
 msgid "Negative depth in --deepen is not supported"
 msgstr "Mức sâu là số âm trong --deepen là không được hỗ trợ"
 
-#: builtin/fetch.c:1323
+#: builtin/fetch.c:1346
 msgid "--deepen and --depth are mutually exclusive"
 msgstr "Các tùy chọn--deepen và --depth loại từ lẫn nhau"
 
-#: builtin/fetch.c:1328
+#: builtin/fetch.c:1351
 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:1330
+#: builtin/fetch.c:1353
 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:1349
+#: builtin/fetch.c:1366
 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:1351
+#: builtin/fetch.c:1368
 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:1362
+#: builtin/fetch.c:1379
 #, 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:1370
+#: builtin/fetch.c:1387
 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ý"
 
@@ -8309,23 +8437,23 @@ msgstr ""
 "git fmt-merge-msg [-m <chú_thích>] [--log[=<n>] | --no-log] [--file <tập-"
 "tin>]"
 
-#: builtin/fmt-merge-msg.c:664
+#: builtin/fmt-merge-msg.c:665
 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:667
+#: builtin/fmt-merge-msg.c:668
 msgid "alias for --log (deprecated)"
 msgstr "bí danh cho --log (không được dùng)"
 
-#: builtin/fmt-merge-msg.c:670
+#: builtin/fmt-merge-msg.c:671
 msgid "text"
 msgstr "văn bản"
 
-#: builtin/fmt-merge-msg.c:671
+#: builtin/fmt-merge-msg.c:672
 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:672
+#: builtin/fmt-merge-msg.c:673
 msgid "file to read from"
 msgstr "tập tin để đọc dữ liệu từ đó"
 
@@ -8367,101 +8495,105 @@ msgstr "trích dẫn để phù hợp cho Tcl"
 msgid "show only <n> matched refs"
 msgstr "hiển thị chỉ <n> tham chiếu khớp"
 
-#: builtin/for-each-ref.c:42
+#: builtin/for-each-ref.c:39 builtin/tag.c:414
+msgid "respect format colors"
+msgstr "các màu định dạng lưu tâm"
+
+#: builtin/for-each-ref.c:43
 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:44
+#: builtin/for-each-ref.c:45
 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:45
+#: builtin/for-each-ref.c:46
 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:46
+#: builtin/for-each-ref.c:47
 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/for-each-ref.c:47
+#: builtin/for-each-ref.c:48
 msgid "print only refs which don't contain the commit"
 msgstr "chỉ hiển thị những tham chiếu mà nó không chứa lần chuyển giao"
 
-#: builtin/fsck.c:554
+#: builtin/fsck.c:543
 msgid "Checking object directories"
 msgstr "Đang kiểm tra các thư mục đối tượng"
 
-#: builtin/fsck.c:646
+#: builtin/fsck.c:635
 msgid "git fsck [<options>] [<object>...]"
 msgstr "git fsck [<các-tùy-chọn>] [<đối-tượng>…]"
 
-#: builtin/fsck.c:652
+#: builtin/fsck.c:641
 msgid "show unreachable objects"
 msgstr "hiển thị các đối tượng không thể đọc được"
 
-#: builtin/fsck.c:653
+#: builtin/fsck.c:642
 msgid "show dangling objects"
 msgstr "hiển thị các đối tượng không được quản lý"
 
-#: builtin/fsck.c:654
+#: builtin/fsck.c:643
 msgid "report tags"
 msgstr "báo cáo các thẻ"
 
-#: builtin/fsck.c:655
+#: builtin/fsck.c:644
 msgid "report root nodes"
 msgstr "báo cáo node gốc"
 
-#: builtin/fsck.c:656
+#: builtin/fsck.c:645
 msgid "make index objects head nodes"
 msgstr "tạo “index objects head nodes”"
 
-#: builtin/fsck.c:657
+#: builtin/fsck.c:646
 msgid "make reflogs head nodes (default)"
 msgstr "tạo “reflogs head nodes” (mặc định)"
 
-#: builtin/fsck.c:658
+#: builtin/fsck.c:647
 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:659
+#: builtin/fsck.c:648
 msgid "check only connectivity"
 msgstr "chỉ kiểm tra kết nối"
 
-#: builtin/fsck.c:660
+#: builtin/fsck.c:649
 msgid "enable more strict checking"
 msgstr "cho phép kiểm tra hạn chế hơn"
 
-#: builtin/fsck.c:662
+#: builtin/fsck.c:651
 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:663 builtin/prune.c:107
+#: builtin/fsck.c:652 builtin/prune.c:107
 msgid "show progress"
 msgstr "hiển thị quá trình"
 
-#: builtin/fsck.c:664
+#: builtin/fsck.c:653
 msgid "show verbose names for reachable objects"
 msgstr "hiển thị tên chi tiết cho các đối tượng đọc được"
 
-#: builtin/fsck.c:725
+#: builtin/fsck.c:714
 msgid "Checking objects"
 msgstr "Đang kiểm tra các đối tượng"
 
-#: builtin/gc.c:26
+#: builtin/gc.c:27
 msgid "git gc [<options>]"
 msgstr "git gc [<các-tùy-chọn>]"
 
-#: builtin/gc.c:79
+#: builtin/gc.c:80
 #, c-format
 msgid "Failed to fstat %s: %s"
 msgstr "Gặp lỗi khi lấy thông tin thống kê về tập tin %s: %s"
 
-#: builtin/gc.c:311
+#: builtin/gc.c:312
 #, c-format
 msgid "Can't stat %s"
 msgstr "không thể lấy thông tin thống kê về “%s”"
 
-#: builtin/gc.c:320
+#: builtin/gc.c:321
 #, c-format
 msgid ""
 "The last gc run reported the following. Please correct the root cause\n"
@@ -8476,45 +8608,45 @@ msgstr ""
 "\n"
 "%s"
 
-#: builtin/gc.c:359
+#: builtin/gc.c:360
 msgid "prune unreferenced objects"
 msgstr "xóa bỏ các đối tượng không được tham chiếu"
 
-#: builtin/gc.c:361
+#: builtin/gc.c:362
 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:362
+#: builtin/gc.c:363
 msgid "enable auto-gc mode"
 msgstr "bật chế độ auto-gc"
 
-#: builtin/gc.c:363
+#: builtin/gc.c:364
 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:380
+#: builtin/gc.c:381
 #, c-format
 msgid "Failed to parse gc.logexpiry value %s"
 msgstr "Gặp lỗi khi phân tích giá trị gc.logexpiry %s"
 
-#: builtin/gc.c:408
+#: builtin/gc.c:409
 #, 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:410
+#: builtin/gc.c:411
 #, 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:411
+#: builtin/gc.c:412
 #, 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:436
+#: builtin/gc.c:437
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
@@ -8522,7 +8654,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:480
+#: builtin/gc.c:481
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
@@ -8533,12 +8665,12 @@ msgstr ""
 msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
 msgstr "git grep [<các-tùy-chọn>] [-e] <mẫu> [<rev>…] [[--] <đường-dẫn>…]"
 
-#: builtin/grep.c:235
+#: builtin/grep.c:226
 #, c-format
 msgid "grep: failed to create thread: %s"
 msgstr "grep: gặp lỗi tạo tuyến (thread): %s"
 
-#: builtin/grep.c:293
+#: builtin/grep.c:284
 #, c-format
 msgid "invalid number of threads specified (%d) for %s"
 msgstr "số tuyến đã cho không hợp lệ (%d) cho %s"
@@ -8547,250 +8679,242 @@ msgstr "số tuyến đã cho không hợp lệ (%d) cho %s"
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c:302 builtin/index-pack.c:1494 builtin/index-pack.c:1692
+#: builtin/grep.c:293 builtin/index-pack.c:1495 builtin/index-pack.c:1693
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr "không hỗ trợ đa tuyến, bỏ qua %s"
 
-#: builtin/grep.c:788 builtin/grep.c:829
+#: builtin/grep.c:451 builtin/grep.c:571 builtin/grep.c:613
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr "không thể đọc cây (%s)"
 
-#: builtin/grep.c:848
+#: builtin/grep.c:628
 #, c-format
 msgid "unable to grep from object of type %s"
 msgstr "không thể thực hiện lệnh grep (lọc tìm) từ đối tượng thuộc kiểu %s"
 
-#: builtin/grep.c:912
+#: builtin/grep.c:694
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr "chuyển đến “%c” cần một giá trị bằng số"
 
-#: builtin/grep.c:999
+#: builtin/grep.c:781
 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:1001
+#: builtin/grep.c:783
 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:1003
+#: builtin/grep.c:785
 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:1005
+#: builtin/grep.c:787
 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:1007
+#: builtin/grep.c:789
 msgid "recursively search in each submodule"
 msgstr "tìm kiếm đệ quy trong từng mô-đun-con"
 
-#: builtin/grep.c:1009
-msgid "basename"
-msgstr "tên cơ sở"
-
-#: builtin/grep.c:1010
-msgid "prepend parent project's basename to output"
-msgstr "treo vào trước tên cơ sở cha mẹ của đường dẫn vào kết xuất"
-
-#: builtin/grep.c:1013
+#: builtin/grep.c:792
 msgid "show non-matching lines"
 msgstr "hiển thị những dòng không khớp với mẫu"
 
-#: builtin/grep.c:1015
+#: builtin/grep.c:794
 msgid "case insensitive matching"
 msgstr "phân biệt HOA/thường"
 
-#: builtin/grep.c:1017
+#: builtin/grep.c:796
 msgid "match patterns only at word boundaries"
 msgstr "chỉ khớp mẫu tại đường ranh giới từ"
 
-#: builtin/grep.c:1019
+#: builtin/grep.c:798
 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:1021
+#: builtin/grep.c:800
 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:1024
+#: builtin/grep.c:803
 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:1026
+#: builtin/grep.c:805
 msgid "descend at most <depth> levels"
 msgstr "hạ xuống ít nhất là mức <sâu>"
 
-#: builtin/grep.c:1030
+#: builtin/grep.c:809
 msgid "use extended POSIX regular expressions"
 msgstr "dùng biểu thức chính qui POSIX có mở rộng"
 
-#: builtin/grep.c:1033
+#: builtin/grep.c:812
 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:1036
+#: builtin/grep.c:815
 msgid "interpret patterns as fixed strings"
 msgstr "diễn dịch các mẫu như là chuỗi cố định"
 
-#: builtin/grep.c:1039
+#: builtin/grep.c:818
 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:1042
+#: builtin/grep.c:821
 msgid "show line numbers"
 msgstr "hiển thị số của dòng"
 
-#: builtin/grep.c:1043
+#: builtin/grep.c:822
 msgid "don't show filenames"
 msgstr "không hiển thị tên tập tin"
 
-#: builtin/grep.c:1044
+#: builtin/grep.c:823
 msgid "show filenames"
 msgstr "hiển thị các tên tập tin"
 
-#: builtin/grep.c:1046
+#: builtin/grep.c:825
 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:1048
+#: builtin/grep.c:827
 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:1050
+#: builtin/grep.c:829
 msgid "synonym for --files-with-matches"
 msgstr "đồng nghĩa với --files-with-matches"
 
-#: builtin/grep.c:1053
+#: builtin/grep.c:832
 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:1055
+#: builtin/grep.c:834
 msgid "print NUL after filenames"
 msgstr "thêm NUL vào sau tên tập tin"
 
-#: builtin/grep.c:1057
+#: builtin/grep.c:836
 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:1058
+#: builtin/grep.c:837
 msgid "highlight matches"
 msgstr "tô sáng phần khớp mẫu"
 
-#: builtin/grep.c:1060
+#: builtin/grep.c:839
 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:1062
+#: builtin/grep.c:841
 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:1065
+#: builtin/grep.c:844
 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:1068
+#: builtin/grep.c:847
 msgid "show <n> context lines before matches"
 msgstr "hiển thị <n> dòng nội dung trước khớp"
 
-#: builtin/grep.c:1070
+#: builtin/grep.c:849
 msgid "show <n> context lines after matches"
 msgstr "hiển thị <n> dòng nội dung sau khớp"
 
-#: builtin/grep.c:1072
+#: builtin/grep.c:851
 msgid "use <n> worker threads"
 msgstr "dùng <n> tuyến trình làm việc"
 
-#: builtin/grep.c:1073
+#: builtin/grep.c:852
 msgid "shortcut for -C NUM"
 msgstr "dạng viết tắt của -C SỐ"
 
-#: builtin/grep.c:1076
+#: builtin/grep.c:855
 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:1078
+#: builtin/grep.c:857
 msgid "show the surrounding function"
 msgstr "hiển thị hàm bao quanh"
 
-#: builtin/grep.c:1081
+#: builtin/grep.c:860
 msgid "read patterns from file"
 msgstr "đọc mẫu từ tập-tin"
 
-#: builtin/grep.c:1083
+#: builtin/grep.c:862
 msgid "match <pattern>"
 msgstr "match <mẫu>"
 
-#: builtin/grep.c:1085
+#: builtin/grep.c:864
 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:1097
+#: builtin/grep.c:876
 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:1099
+#: builtin/grep.c:878
 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:1101
+#: builtin/grep.c:880
 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:1105
+#: builtin/grep.c:884
 msgid "pager"
 msgstr "dàn trang"
 
-#: builtin/grep.c:1105
+#: builtin/grep.c:884
 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:1108
+#: builtin/grep.c:887
 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:1172
+#: builtin/grep.c:950
 msgid "no pattern given."
 msgstr "chưa chỉ ra mẫu."
 
-#: builtin/grep.c:1204
+#: builtin/grep.c:982
 msgid "--no-index or --untracked cannot be used with revs"
 msgstr "--no-index hay --untracked không được sử dụng cùng với revs"
 
-#: builtin/grep.c:1211
+#: builtin/grep.c:989
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr "không thể phân giải điểm xét duyệt: %s"
 
-#: builtin/grep.c:1245 builtin/index-pack.c:1490
+#: builtin/grep.c:1023 builtin/index-pack.c:1491
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr "số tuyến chỉ ra không hợp lệ (%d)"
 
-#: builtin/grep.c:1250
+#: builtin/grep.c:1028
 msgid "no threads support, ignoring --threads"
 msgstr "không hỗ trợ đa tuyến, bỏ qua --threads"
 
-#: builtin/grep.c:1281
+#: builtin/grep.c:1052
 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:1304
+#: builtin/grep.c:1075
 msgid "option not supported with --recurse-submodules."
 msgstr "tùy chọn không được hỗ trợ với --recurse-submodules."
 
-#: builtin/grep.c:1310
+#: builtin/grep.c:1081
 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:1316
+#: builtin/grep.c:1087
 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:1324
+#: builtin/grep.c:1095
 msgid "both --cached and trees are given."
 msgstr "cả hai --cached và các cây phải được chỉ ra."
 
@@ -8881,12 +9005,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:133 builtin/help.c:154 builtin/help.c:163 builtin/help.c:171
+#: builtin/help.c:133 builtin/help.c:155 builtin/help.c:165 builtin/help.c:173
 #, c-format
 msgid "failed to exec '%s'"
 msgstr "gặp lỗi khi thực thi “%s”"
 
-#: builtin/help.c:208
+#: builtin/help.c:211
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
@@ -8895,7 +9019,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:220
+#: builtin/help.c:223
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
@@ -8904,345 +9028,345 @@ 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:337
+#: builtin/help.c:340
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr "“%s”: không rõ chương trình xem man."
 
-#: builtin/help.c:354
+#: builtin/help.c:357
 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:362
+#: builtin/help.c:365
 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:404
+#: builtin/help.c:407
 msgid "Defining attributes per path"
 msgstr "Định nghĩa các thuộc tính cho mỗi đường dẫn"
 
-#: builtin/help.c:405
+#: builtin/help.c:408
 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:406
+#: builtin/help.c:409
 msgid "A Git glossary"
 msgstr "Thuật ngữ chuyên môn Git"
 
-#: builtin/help.c:407
+#: builtin/help.c:410
 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:408
+#: builtin/help.c:411
 msgid "Defining submodule properties"
 msgstr "Định nghĩa thuộc tính mô-đun-con"
 
-#: builtin/help.c:409
+#: builtin/help.c:412
 msgid "Specifying revisions and ranges for Git"
 msgstr "Chỉ định điểm xét duyệt và vùng cho Git"
 
-#: builtin/help.c:410
+#: builtin/help.c:413
 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:411
+#: builtin/help.c:414
 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:423
+#: builtin/help.c:426
 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:441
+#: builtin/help.c:444
 #, c-format
-msgid "`git %s' is aliased to `%s'"
-msgstr "“git %s” được đặt bí danh thành “%s”"
+msgid "'%s' is aliased to '%s'"
+msgstr "“%s” được đặt bí danh thành “%s”"
 
-#: builtin/help.c:463 builtin/help.c:480
+#: builtin/help.c:466 builtin/help.c:483
 #, c-format
 msgid "usage: %s%s"
 msgstr "cách dùng: %s%s"
 
-#: builtin/index-pack.c:155
+#: builtin/index-pack.c:156
 #, c-format
 msgid "unable to open %s"
 msgstr "không thể mở %s"
 
-#: builtin/index-pack.c:205
+#: builtin/index-pack.c:206
 #, c-format
 msgid "object type mismatch at %s"
 msgstr "kiểu đối tượng không khớp tại %s"
 
-#: builtin/index-pack.c:225
+#: builtin/index-pack.c:226
 #, c-format
 msgid "did not receive expected object %s"
 msgstr "Không thể lấy về đối tượng cần %s"
 
-#: builtin/index-pack.c:228
+#: builtin/index-pack.c:229
 #, c-format
 msgid "object %s: expected type %s, found %s"
 msgstr "đối tượng %s: cần kiểu %s nhưng lại nhận được %s"
 
-#: builtin/index-pack.c:270
+#: builtin/index-pack.c:271
 #, c-format
 msgid "cannot fill %d byte"
 msgid_plural "cannot fill %d bytes"
 msgstr[0] "không thể điền thêm vào %d byte"
 
-#: builtin/index-pack.c:280
+#: builtin/index-pack.c:281
 msgid "early EOF"
 msgstr "gặp kết thúc tập tin EOF quá sớm"
 
-#: builtin/index-pack.c:281
+#: builtin/index-pack.c:282
 msgid "read error on input"
 msgstr "lỗi đọc ở đầu vào"
 
-#: builtin/index-pack.c:293
+#: builtin/index-pack.c:294
 msgid "used more bytes than were available"
 msgstr "sử dụng nhiều hơn số lượng byte mà nó sẵn có"
 
-#: builtin/index-pack.c:300
+#: builtin/index-pack.c:301
 msgid "pack too large for current definition of off_t"
 msgstr "gói quá lớn so với định nghĩa hiện tại của kiểu off_t"
 
-#: builtin/index-pack.c:303 builtin/unpack-objects.c:93
+#: builtin/index-pack.c:304 builtin/unpack-objects.c:93
 msgid "pack exceeds maximum allowed size"
 msgstr "gói đã vượt quá cỡ tối đa được phép"
 
-#: builtin/index-pack.c:318
+#: builtin/index-pack.c:319
 #, c-format
 msgid "unable to create '%s'"
 msgstr "không thể tạo “%s”"
 
-#: builtin/index-pack.c:324
+#: builtin/index-pack.c:325
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr "không thể mở packfile “%s”"
 
-#: builtin/index-pack.c:338
+#: builtin/index-pack.c:339
 msgid "pack signature mismatch"
 msgstr "chữ ký cho gói không khớp"
 
-#: builtin/index-pack.c:340
+#: builtin/index-pack.c:341
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr "không hỗ trợ phiên bản gói %<PRIu32>"
 
-#: builtin/index-pack.c:358
+#: builtin/index-pack.c:359
 #, c-format
 msgid "pack has bad object at offset %<PRIuMAX>: %s"
 msgstr "gói có đối tượng sai tại khoảng bù %<PRIuMAX>: %s"
 
-#: builtin/index-pack.c:479
+#: builtin/index-pack.c:480
 #, c-format
 msgid "inflate returned %d"
 msgstr "xả nén trả về %d"
 
-#: builtin/index-pack.c:528
+#: builtin/index-pack.c:529
 msgid "offset value overflow for delta base object"
 msgstr "tràn giá trị khoảng bù cho đối tượng delta cơ sở"
 
-#: builtin/index-pack.c:536
+#: builtin/index-pack.c:537
 msgid "delta base offset is out of bound"
 msgstr "khoảng bù cơ sở cho delta nằm ngoài phạm vi"
 
-#: builtin/index-pack.c:544
+#: builtin/index-pack.c:545
 #, c-format
 msgid "unknown object type %d"
 msgstr "không hiểu kiểu đối tượng %d"
 
-#: builtin/index-pack.c:575
+#: builtin/index-pack.c:576
 msgid "cannot pread pack file"
 msgstr "không thể chạy hàm pread cho tập tin gói"
 
-#: builtin/index-pack.c:577
+#: builtin/index-pack.c:578
 #, c-format
 msgid "premature end of pack file, %<PRIuMAX> byte missing"
 msgid_plural "premature end of pack file, %<PRIuMAX> bytes missing"
 msgstr[0] "tập tin gói bị kết thúc sớm, thiếu %<PRIuMAX> byte"
 
-#: builtin/index-pack.c:603
+#: builtin/index-pack.c:604
 msgid "serious inflate inconsistency"
 msgstr "sự mâu thuẫn xả nén nghiêm trọng"
 
-#: builtin/index-pack.c:748 builtin/index-pack.c:754 builtin/index-pack.c:777
-#: builtin/index-pack.c:816 builtin/index-pack.c:825
+#: builtin/index-pack.c:749 builtin/index-pack.c:755 builtin/index-pack.c:778
+#: builtin/index-pack.c:817 builtin/index-pack.c:826
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr "SỰ VA CHẠM SHA1 ĐàXẢY RA VỚI %s!"
 
-#: builtin/index-pack.c:751 builtin/pack-objects.c:167
-#: builtin/pack-objects.c:261
+#: builtin/index-pack.c:752 builtin/pack-objects.c:168
+#: builtin/pack-objects.c:262
 #, c-format
 msgid "unable to read %s"
 msgstr "không thể đọc %s"
 
-#: builtin/index-pack.c:814
+#: builtin/index-pack.c:815
 #, c-format
 msgid "cannot read existing object info %s"
 msgstr "không thể đọc thông tin đối tượng sẵn có %s"
 
-#: builtin/index-pack.c:822
+#: builtin/index-pack.c:823
 #, c-format
 msgid "cannot read existing object %s"
 msgstr "không thể đọc đối tượng đã tồn tại %s"
 
-#: builtin/index-pack.c:836
+#: builtin/index-pack.c:837
 #, c-format
 msgid "invalid blob object %s"
 msgstr "đối tượng blob không hợp lệ %s"
 
-#: builtin/index-pack.c:851
+#: builtin/index-pack.c:852
 #, c-format
 msgid "invalid %s"
 msgstr "%s không hợp lệ"
 
-#: builtin/index-pack.c:854
+#: builtin/index-pack.c:855
 msgid "Error in object"
 msgstr "Lỗi trong đối tượng"
 
-#: builtin/index-pack.c:856
+#: builtin/index-pack.c:857
 #, c-format
 msgid "Not all child objects of %s are reachable"
 msgstr "Không phải tất cả các đối tượng con của %s là có thể với tới được"
 
-#: builtin/index-pack.c:928 builtin/index-pack.c:959
+#: builtin/index-pack.c:929 builtin/index-pack.c:960
 msgid "failed to apply delta"
 msgstr "gặp lỗi khi áp dụng delta"
 
-#: builtin/index-pack.c:1130
+#: builtin/index-pack.c:1131
 msgid "Receiving objects"
 msgstr "Đang nhận về các đối tượng"
 
-#: builtin/index-pack.c:1130
+#: builtin/index-pack.c:1131
 msgid "Indexing objects"
 msgstr "Các đối tượng bảng mục lục"
 
-#: builtin/index-pack.c:1164
+#: builtin/index-pack.c:1165
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr "gói bị sai hỏng (SHA1 không khớp)"
 
-#: builtin/index-pack.c:1169
+#: builtin/index-pack.c:1170
 msgid "cannot fstat packfile"
 msgstr "không thể lấy thông tin thống kê packfile"
 
-#: builtin/index-pack.c:1172
+#: builtin/index-pack.c:1173
 msgid "pack has junk at the end"
 msgstr "pack có phần thừa ở cuối"
 
-#: builtin/index-pack.c:1184
+#: builtin/index-pack.c:1185
 msgid "confusion beyond insanity in parse_pack_objects()"
 msgstr "lộn xộn hơn cả điên rồ khi chạy hàm parse_pack_objects()"
 
-#: builtin/index-pack.c:1207
+#: builtin/index-pack.c:1208
 msgid "Resolving deltas"
 msgstr "Đang phân giải các delta"
 
-#: builtin/index-pack.c:1218
+#: builtin/index-pack.c:1219
 #, c-format
 msgid "unable to create thread: %s"
 msgstr "không thể tạo tuyến: %s"
 
-#: builtin/index-pack.c:1260
+#: builtin/index-pack.c:1261
 msgid "confusion beyond insanity"
 msgstr "lộn xộn hơn cả điên rồ"
 
-#: builtin/index-pack.c:1266
+#: builtin/index-pack.c:1267
 #, c-format
 msgid "completed with %d local object"
 msgid_plural "completed with %d local objects"
 msgstr[0] "đầy đủ với %d đối tượng nội bộ"
 
-#: builtin/index-pack.c:1278
+#: builtin/index-pack.c:1279
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
 msgstr "Gặp tổng kiểm tra tail không cần cho %s (đĩa hỏng?)"
 
-#: builtin/index-pack.c:1282
+#: builtin/index-pack.c:1283
 #, c-format
 msgid "pack has %d unresolved delta"
 msgid_plural "pack has %d unresolved deltas"
 msgstr[0] "gói có %d delta chưa được giải quyết"
 
-#: builtin/index-pack.c:1306
+#: builtin/index-pack.c:1307
 #, c-format
 msgid "unable to deflate appended object (%d)"
 msgstr "không thể xả nén đối tượng nối thêm (%d)"
 
-#: builtin/index-pack.c:1382
+#: builtin/index-pack.c:1383
 #, c-format
 msgid "local object %s is corrupt"
 msgstr "đối tượng nội bộ %s bị hỏng"
 
-#: builtin/index-pack.c:1408
+#: builtin/index-pack.c:1409
 msgid "error while closing pack file"
 msgstr "gặp lỗi trong khi đóng tập tin gói"
 
-#: builtin/index-pack.c:1420
+#: builtin/index-pack.c:1421
 #, c-format
 msgid "cannot write keep file '%s'"
 msgstr "không thể ghi tập tin giữ lại “%s”"
 
-#: builtin/index-pack.c:1428
+#: builtin/index-pack.c:1429
 #, c-format
 msgid "cannot close written keep file '%s'"
 msgstr "không thể đóng tập tin giữ lại đã được ghi “%s”"
 
-#: builtin/index-pack.c:1438
+#: builtin/index-pack.c:1439
 msgid "cannot store pack file"
 msgstr "không thể lưu tập tin gói"
 
-#: builtin/index-pack.c:1446
+#: builtin/index-pack.c:1447
 msgid "cannot store index file"
 msgstr "không thể lưu trữ tập tin ghi mục lục"
 
-#: builtin/index-pack.c:1484
+#: builtin/index-pack.c:1485
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr "sai pack.indexversion=%<PRIu32>"
 
-#: builtin/index-pack.c:1552
+#: builtin/index-pack.c:1553
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr "Không thể mở tập tin gói đã sẵn có “%s”"
 
-#: builtin/index-pack.c:1554
+#: builtin/index-pack.c:1555
 #, c-format
 msgid "Cannot open existing pack idx file for '%s'"
 msgstr "Không thể mở tập tin idx của gói cho “%s”"
 
-#: builtin/index-pack.c:1602
+#: builtin/index-pack.c:1603
 #, c-format
 msgid "non delta: %d object"
 msgid_plural "non delta: %d objects"
 msgstr[0] "không delta: %d đối tượng"
 
-#: builtin/index-pack.c:1609
+#: builtin/index-pack.c:1610
 #, c-format
 msgid "chain length = %d: %lu object"
 msgid_plural "chain length = %d: %lu objects"
 msgstr[0] "chiều dài xích = %d: %lu đối tượng"
 
-#: builtin/index-pack.c:1622
+#: builtin/index-pack.c:1623
 #, c-format
 msgid "packfile name '%s' does not end with '.pack'"
 msgstr "tên tập tin tập tin gói “%s” không được kết thúc bằng đuôi “.pack”"
 
-#: builtin/index-pack.c:1704 builtin/index-pack.c:1707
-#: builtin/index-pack.c:1723 builtin/index-pack.c:1727
+#: builtin/index-pack.c:1705 builtin/index-pack.c:1708
+#: builtin/index-pack.c:1724 builtin/index-pack.c:1728
 #, c-format
 msgid "bad %s"
 msgstr "%s sai"
 
-#: builtin/index-pack.c:1743
+#: builtin/index-pack.c:1744
 msgid "--fix-thin cannot be used without --stdin"
 msgstr "--fix-thin không thể được dùng mà không có --stdin"
 
-#: builtin/index-pack.c:1745
+#: builtin/index-pack.c:1746
 msgid "--stdin requires a git repository"
 msgstr "--stdin cần một kho git"
 
-#: builtin/index-pack.c:1753
+#: builtin/index-pack.c:1754
 msgid "--verify with no packfile name given"
 msgstr "dùng tùy chọn --verify mà không đưa ra tên packfile"
 
@@ -9374,132 +9498,164 @@ msgstr ""
 "git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
 "<thẻ>[(=|:)<giá-trị>])…] [<tập-tin>…]"
 
-#: builtin/interpret-trailers.c:26
+#: builtin/interpret-trailers.c:92
 msgid "edit files in place"
 msgstr "sửa các tập tin tại chỗ"
 
-#: builtin/interpret-trailers.c:27
+#: builtin/interpret-trailers.c:93
 msgid "trim empty trailers"
 msgstr "bộ dò vết cắt bỏ phần trống rỗng"
 
-#: builtin/interpret-trailers.c:28
+#: builtin/interpret-trailers.c:96
+msgid "where to place the new trailer"
+msgstr "đặt phần đuôi mới ở đâu"
+
+#: builtin/interpret-trailers.c:98
+msgid "action if trailer already exists"
+msgstr "thao tác khi đã có phần đuôi"
+
+#: builtin/interpret-trailers.c:100
+msgid "action if trailer is missing"
+msgstr "thao tác khi thiếu phần đuôi"
+
+#: builtin/interpret-trailers.c:102
+msgid "output only the trailers"
+msgstr "chỉ xuất phần đuôi"
+
+#: builtin/interpret-trailers.c:103
+msgid "do not apply config rules"
+msgstr "đừng áp dụng các quy tắc cấu hình"
+
+#: builtin/interpret-trailers.c:104
+msgid "join whitespace-continued values"
+msgstr "nối các giá trị khoảng-trắng-liên-tiếp"
+
+#: builtin/interpret-trailers.c:105
+msgid "set parsing options"
+msgstr "đặt các tùy chọn phân tích cú pháp"
+
+#: builtin/interpret-trailers.c:107
 msgid "trailer"
 msgstr "bộ dò vết"
 
-#: builtin/interpret-trailers.c:29
+#: builtin/interpret-trailers.c:108
 msgid "trailer(s) to add"
 msgstr "bộ dò vết cần thêm"
 
-#: builtin/interpret-trailers.c:42
+#: builtin/interpret-trailers.c:117
+msgid "--trailer with --only-input does not make sense"
+msgstr "--trailer cùng với --only-input không hợp lý"
+
+#: builtin/interpret-trailers.c:127
 msgid "no input file given for in-place editing"
 msgstr "không đưa ra tập tin đầu vào để sửa tại-chỗ"
 
-#: builtin/log.c:45
+#: builtin/log.c:46
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr "git log [<các-tùy-chọn>] [<vùng-xem-xét>] [[--] <đường-dẫn>…]"
 
-#: builtin/log.c:46
+#: builtin/log.c:47
 msgid "git show [<options>] <object>..."
 msgstr "git show [<các-tùy-chọn>] <đối-tượng>…"
 
-#: builtin/log.c:90
+#: builtin/log.c:91
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr "tùy chọn--decorate không hợp lệ: %s"
 
-#: builtin/log.c:147
+#: builtin/log.c:148
 msgid "suppress diff output"
 msgstr "chặn mọi kết xuất từ diff"
 
-#: builtin/log.c:148
+#: builtin/log.c:149
 msgid "show source"
 msgstr "hiển thị mã nguồn"
 
-#: builtin/log.c:149
+#: builtin/log.c:150
 msgid "Use mail map file"
 msgstr "Sử dụng tập tin ánh xạ thư"
 
-#: builtin/log.c:150
+#: builtin/log.c:151
 msgid "decorate options"
 msgstr "các tùy chọn trang trí"
 
-#: builtin/log.c:153
+#: builtin/log.c:154
 msgid "Process line range n,m in file, counting from 1"
 msgstr "Xử lý chỉ dòng vùng n,m trong tập tin, tính từ 1"
 
-#: builtin/log.c:249
+#: builtin/log.c:250
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr "Kết xuất cuối cùng: %d %s\n"
 
-#: builtin/log.c:497
+#: builtin/log.c:501
 #, c-format
 msgid "git show %s: bad file"
 msgstr "git show %s: sai tập tin"
 
-#: builtin/log.c:512 builtin/log.c:606
+#: builtin/log.c:516 builtin/log.c:610
 #, c-format
 msgid "Could not read object %s"
 msgstr "Không thể đọc đối tượng %s"
 
-#: builtin/log.c:630
+#: builtin/log.c:634
 #, c-format
 msgid "Unknown type: %d"
 msgstr "Không nhận ra kiểu: %d"
 
-#: builtin/log.c:751
+#: builtin/log.c:755
 msgid "format.headers without value"
 msgstr "format.headers không có giá trị cụ thể"
 
-#: builtin/log.c:852
+#: builtin/log.c:856
 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:868
+#: builtin/log.c:872
 #, c-format
 msgid "Cannot open patch file %s"
 msgstr "Không thể mở tập tin miếng vá: %s"
 
-#: builtin/log.c:885
+#: builtin/log.c:889
 msgid "Need exactly one range."
 msgstr "Cần chính xác một vùng."
 
-#: builtin/log.c:895
+#: builtin/log.c:899
 msgid "Not a range."
 msgstr "Không phải là một vùng."
 
-#: builtin/log.c:1001
+#: builtin/log.c:1005
 msgid "Cover letter needs email format"
 msgstr "“Cover letter” cần cho định dạng thư"
 
-#: builtin/log.c:1081
+#: builtin/log.c:1085
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr "in-reply-to điên rồ: %s"
 
-#: builtin/log.c:1108
+#: builtin/log.c:1112
 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:1158
+#: builtin/log.c:1162
 msgid "Two output directories?"
 msgstr "Hai thư mục kết xuất?"
 
-#: builtin/log.c:1265 builtin/log.c:1908 builtin/log.c:1910 builtin/log.c:1922
+#: builtin/log.c:1269 builtin/log.c:1920 builtin/log.c:1922 builtin/log.c:1934
 #, c-format
 msgid "Unknown commit %s"
 msgstr "Không hiểu lần chuyển giao %s"
 
-#: builtin/log.c:1275 builtin/notes.c:886 builtin/tag.c:533
+#: builtin/log.c:1279 builtin/notes.c:887 builtin/tag.c:516
 #, c-format
 msgid "Failed to resolve '%s' as a valid ref."
 msgstr "Gặp lỗi khi phân giải “%s” như là một tham chiếu hợp lệ."
 
-#: builtin/log.c:1280
+#: builtin/log.c:1284
 msgid "Could not find exact merge base."
 msgstr "Không tìm thấy nền hòa trộn chính xác."
 
-#: builtin/log.c:1284
+#: builtin/log.c:1288
 msgid ""
 "Failed to get upstream, if you want to record base commit automatically,\n"
 "please use git branch --set-upstream-to to track a remote branch.\n"
@@ -9510,219 +9666,227 @@ msgstr ""
 "nhánh máy chủ. Hoặc là bạn có thể chỉ định lần chuyển giao nền bằng\n"
 "\"--base=<base-commit-id>\" một cách thủ công."
 
-#: builtin/log.c:1304
+#: builtin/log.c:1308
 msgid "Failed to find exact merge base"
 msgstr "Gặp lỗi khi tìm nền hòa trộn chính xác."
 
-#: builtin/log.c:1315
+#: builtin/log.c:1319
 msgid "base commit should be the ancestor of revision list"
 msgstr "lần chuyển giao nền không là tổ tiên của danh sách điểm xét duyệt"
 
-#: builtin/log.c:1319
+#: builtin/log.c:1323
 msgid "base commit shouldn't be in revision list"
 msgstr "lần chuyển giao nền không được trong danh sách điểm xét duyệt"
 
-#: builtin/log.c:1368
+#: builtin/log.c:1372
 msgid "cannot get patch id"
 msgstr "không thể lấy mã miếng vá"
 
-#: builtin/log.c:1425
+#: builtin/log.c:1431
 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:1428
+#: builtin/log.c:1434
 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:1432
+#: builtin/log.c:1438
 msgid "print patches to standard out"
 msgstr "hiển thị miếng vá ra đầu ra chuẩn"
 
-#: builtin/log.c:1434
+#: builtin/log.c:1440
 msgid "generate a cover letter"
 msgstr "tạo bì thư"
 
-#: builtin/log.c:1436
+#: builtin/log.c:1442
 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:1437
+#: builtin/log.c:1443
 msgid "sfx"
 msgstr "sfx"
 
-#: builtin/log.c:1438
+#: builtin/log.c:1444
 msgid "use <sfx> instead of '.patch'"
 msgstr "sử dụng <sfx> thay cho “.patch”"
 
-#: builtin/log.c:1440
+#: builtin/log.c:1446
 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:1442
+#: builtin/log.c:1448
 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:1444
+#: builtin/log.c:1450
 msgid "Use [RFC PATCH] instead of [PATCH]"
 msgstr "Dùng [RFC VÁ] thay cho [VÁ]"
 
-#: builtin/log.c:1447
+#: builtin/log.c:1453
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr "Dùng [<tiền-tố>] thay cho [VÁ]"
 
-#: builtin/log.c:1450
+#: builtin/log.c:1456
 msgid "store resulting files in <dir>"
 msgstr "lưu các tập tin kết quả trong <t.mục>"
 
-#: builtin/log.c:1453
+#: builtin/log.c:1459
 msgid "don't strip/add [PATCH]"
 msgstr "không strip/add [VÁ]"
 
-#: builtin/log.c:1456
+#: builtin/log.c:1462
 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:1458
+#: builtin/log.c:1464
 msgid "output all-zero hash in From header"
 msgstr "xuất mọi mã băm all-zero trong phần đầu From"
 
-#: builtin/log.c:1460
+#: builtin/log.c:1466
 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:1462
+#: builtin/log.c:1468
 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:1464
+#: builtin/log.c:1470
 msgid "Messaging"
 msgstr "Lời nhắn"
 
-#: builtin/log.c:1465
+#: builtin/log.c:1471
 msgid "header"
 msgstr "đầu đề thư"
 
-#: builtin/log.c:1466
+#: builtin/log.c:1472
 msgid "add email header"
 msgstr "thêm đầu đề thư"
 
-#: builtin/log.c:1467 builtin/log.c:1469
+#: builtin/log.c:1473 builtin/log.c:1475
 msgid "email"
 msgstr "thư điện tử"
 
-#: builtin/log.c:1467
+#: builtin/log.c:1473
 msgid "add To: header"
 msgstr "thêm To: đầu đề thư"
 
-#: builtin/log.c:1469
+#: builtin/log.c:1475
 msgid "add Cc: header"
 msgstr "thêm Cc: đầu đề thư"
 
-#: builtin/log.c:1471
+#: builtin/log.c:1477
 msgid "ident"
 msgstr "thụt lề"
 
-#: builtin/log.c:1472
+#: builtin/log.c:1478
 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:1474
+#: builtin/log.c:1480
 msgid "message-id"
 msgstr "message-id"
 
-#: builtin/log.c:1475
+#: builtin/log.c:1481
 msgid "make first mail a reply to <message-id>"
 msgstr "dùng thư đầu tiên để trả lời <message-id>"
 
-#: builtin/log.c:1476 builtin/log.c:1479
+#: builtin/log.c:1482 builtin/log.c:1485
 msgid "boundary"
 msgstr "ranh giới"
 
-#: builtin/log.c:1477
+#: builtin/log.c:1483
 msgid "attach the patch"
 msgstr "đính kèm miếng vá"
 
-#: builtin/log.c:1480
+#: builtin/log.c:1486
 msgid "inline the patch"
 msgstr "dùng miếng vá làm nội dung"
 
-#: builtin/log.c:1484
+#: builtin/log.c:1490
 msgid "enable message threading, styles: shallow, deep"
 msgstr "cho phép luồng lời nhắn, kiểu: “shallow”, “deep”"
 
-#: builtin/log.c:1486
+#: builtin/log.c:1492
 msgid "signature"
 msgstr "chữ ký"
 
-#: builtin/log.c:1487
+#: builtin/log.c:1493
 msgid "add a signature"
 msgstr "thêm chữ ký"
 
-#: builtin/log.c:1488
+#: builtin/log.c:1494
 msgid "base-commit"
 msgstr "lần_chuyển_giao_nền"
 
-#: builtin/log.c:1489
+#: builtin/log.c:1495
 msgid "add prerequisite tree info to the patch series"
 msgstr "add trước hết đòi hỏi thông tin cây tới sê-ri miếng vá"
 
-#: builtin/log.c:1491
+#: builtin/log.c:1497
 msgid "add a signature from a file"
 msgstr "thêm chữ ký từ một tập tin"
 
-#: builtin/log.c:1492
+#: builtin/log.c:1498
 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:1567
+#: builtin/log.c:1500
+msgid "show progress while generating patches"
+msgstr "hiển thị bộ đo tiến triển trong khi tạo các miếng vá"
+
+#: builtin/log.c:1575
 #, c-format
 msgid "invalid ident line: %s"
 msgstr "dòng thụt lề không hợp lệ: %s"
 
-#: builtin/log.c:1582
+#: builtin/log.c:1590
 msgid "-n and -k are mutually exclusive."
 msgstr "-n và  -k loại từ lẫn nhau."
 
-#: builtin/log.c:1584
+#: builtin/log.c:1592
 msgid "--subject-prefix/--rfc and -k are mutually exclusive."
 msgstr "--subject-prefix/--rfc và -k xung khắc nhau."
 
-#: builtin/log.c:1592
+#: builtin/log.c:1600
 msgid "--name-only does not make sense"
 msgstr "--name-only không hợp lý"
 
-#: builtin/log.c:1594
+#: builtin/log.c:1602
 msgid "--name-status does not make sense"
 msgstr "--name-status không hợp lý"
 
-#: builtin/log.c:1596
+#: builtin/log.c:1604
 msgid "--check does not make sense"
 msgstr "--check không hợp lý"
 
-#: builtin/log.c:1626
+#: builtin/log.c:1634
 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:1628
+#: builtin/log.c:1636
 #, c-format
 msgid "Could not create directory '%s'"
 msgstr "Không thể tạo thư mục “%s”"
 
-#: builtin/log.c:1722
+#: builtin/log.c:1729
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr "không thể đọc tập tin chữ ký “%s”"
 
-#: builtin/log.c:1794
+#: builtin/log.c:1761
+msgid "Generating patches"
+msgstr "Đang tạo các miếng vá"
+
+#: builtin/log.c:1805
 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:1843
+#: builtin/log.c:1855
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr "git cherry [-v] [<thượng-nguồn> [<đầu> [<giới-hạn>]]]"
 
-#: builtin/log.c:1897
+#: builtin/log.c:1909
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -9730,106 +9894,106 @@ msgstr ""
 "Không tìm thấy nhánh mạng được theo dõi, hãy chỉ định <thượng-nguồn> một "
 "cách thủ công.\n"
 
-#: builtin/ls-files.c:468
+#: builtin/ls-files.c:466
 msgid "git ls-files [<options>] [<file>...]"
 msgstr "git ls-files [<các-tùy-chọn>] [<tập-tin>…]"
 
-#: builtin/ls-files.c:517
+#: builtin/ls-files.c:515
 msgid "identify the file status with tags"
 msgstr "nhận dạng các trạng thái tập tin với thẻ"
 
-#: builtin/ls-files.c:519
+#: builtin/ls-files.c:517
 msgid "use lowercase letters for 'assume unchanged' files"
 msgstr ""
 "dùng chữ cái viết thường cho các tập tin “assume unchanged” (giả định không "
 "thay đổi)"
 
-#: builtin/ls-files.c:521
+#: builtin/ls-files.c:519
 msgid "show cached files in the output (default)"
 msgstr "hiển thị các tập tin được nhớ tạm vào đầu ra (mặc định)"
 
-#: builtin/ls-files.c:523
+#: builtin/ls-files.c:521
 msgid "show deleted files in the output"
 msgstr "hiển thị các tập tin đã xóa trong kết xuất"
 
-#: builtin/ls-files.c:525
+#: builtin/ls-files.c:523
 msgid "show modified files in the output"
 msgstr "hiển thị các tập tin đã bị sửa đổi ra kết xuất"
 
-#: builtin/ls-files.c:527
+#: builtin/ls-files.c:525
 msgid "show other files in the output"
 msgstr "hiển thị các tập tin khác trong kết xuất"
 
-#: builtin/ls-files.c:529
+#: builtin/ls-files.c:527
 msgid "show ignored files in the output"
 msgstr "hiển thị các tập tin bị bỏ qua trong kết xuất"
 
-#: builtin/ls-files.c:532
+#: builtin/ls-files.c:530
 msgid "show staged contents' object name in the output"
 msgstr "hiển thị tên đối tượng của nội dung được đặt lên bệ phóng ra kết xuất"
 
-#: builtin/ls-files.c:534
+#: builtin/ls-files.c:532
 msgid "show files on the filesystem that need to be removed"
 msgstr "hiển thị các tập tin trên hệ thống tập tin mà nó cần được gỡ bỏ"
 
-#: builtin/ls-files.c:536
+#: builtin/ls-files.c:534
 msgid "show 'other' directories' names only"
 msgstr "chỉ hiển thị tên của các thư mục “khác”"
 
-#: builtin/ls-files.c:538
+#: builtin/ls-files.c:536
 msgid "show line endings of files"
 msgstr "hiển thị kết thúc dòng của các tập tin"
 
-#: builtin/ls-files.c:540
+#: builtin/ls-files.c:538
 msgid "don't show empty directories"
 msgstr "không hiển thị thư mục rỗng"
 
-#: builtin/ls-files.c:543
+#: builtin/ls-files.c:541
 msgid "show unmerged files in the output"
 msgstr "hiển thị các tập tin chưa hòa trộn trong kết xuất"
 
-#: builtin/ls-files.c:545
+#: builtin/ls-files.c:543
 msgid "show resolve-undo information"
 msgstr "hiển thị thông tin resolve-undo"
 
-#: builtin/ls-files.c:547
+#: builtin/ls-files.c:545
 msgid "skip files matching pattern"
 msgstr "bỏ qua những tập tin khớp với một mẫu"
 
-#: builtin/ls-files.c:550
+#: builtin/ls-files.c:548
 msgid "exclude patterns are read from <file>"
 msgstr "mẫu loại trừ được đọc từ <tập tin>"
 
-#: builtin/ls-files.c:553
+#: builtin/ls-files.c:551
 msgid "read additional per-directory exclude patterns in <file>"
 msgstr "đọc thêm các mẫu ngoại trừ mỗi thư mục trong <tập tin>"
 
-#: builtin/ls-files.c:555
+#: builtin/ls-files.c:553
 msgid "add the standard git exclusions"
 msgstr "thêm loại trừ tiêu chuẩn kiểu git"
 
-#: builtin/ls-files.c:558
+#: builtin/ls-files.c:556
 msgid "make the output relative to the project top directory"
 msgstr "làm cho kết xuất liên quan đến thư mục ở mức cao nhất (gốc) của dự án"
 
-#: builtin/ls-files.c:561
+#: builtin/ls-files.c:559
 msgid "recurse through submodules"
 msgstr "đệ quy xuyên qua mô-đun con"
 
-#: builtin/ls-files.c:563
+#: builtin/ls-files.c:561
 msgid "if any <file> is not in the index, treat this as an error"
 msgstr "nếu <tập tin> bất kỳ không ở trong bảng mục lục, xử lý nó như một lỗi"
 
-#: builtin/ls-files.c:564
+#: builtin/ls-files.c:562
 msgid "tree-ish"
 msgstr "tree-ish"
 
-#: builtin/ls-files.c:565
+#: builtin/ls-files.c:563
 msgid "pretend that paths removed since <tree-ish> are still present"
 msgstr ""
 "giả định rằng các đường dẫn đã bị gỡ bỏ kể từ <tree-ish> nay vẫn hiện diện"
 
-#: builtin/ls-files.c:567
+#: builtin/ls-files.c:565
 msgid "show debugging data"
 msgstr "hiển thị dữ liệu gỡ lỗi"
 
@@ -9920,180 +10084,184 @@ msgstr "liệt kê cây mục tin; không chỉ thư mục hiện hành (ngụ 
 msgid "empty mbox: '%s'"
 msgstr "mbox trống rỗng: “%s”"
 
-#: builtin/merge.c:47
+#: builtin/merge.c:48
 msgid "git merge [<options>] [<commit>...]"
 msgstr "git merge [<các-tùy-chọn>] [<commit>…]"
 
-#: builtin/merge.c:48
+#: builtin/merge.c:49
 msgid "git merge --abort"
 msgstr "git merge --abort"
 
-#: builtin/merge.c:49
+#: builtin/merge.c:50
 msgid "git merge --continue"
 msgstr "git merge --continue"
 
-#: builtin/merge.c:104
+#: builtin/merge.c:107
 msgid "switch `m' requires a value"
 msgstr "switch “m” yêu cầu một giá trị"
 
-#: builtin/merge.c:141
+#: builtin/merge.c:144
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr "Không tìm thấy chiến lược hòa trộn “%s”.\n"
 
-#: builtin/merge.c:142
+#: builtin/merge.c:145
 #, c-format
 msgid "Available strategies are:"
 msgstr "Các chiến lược sẵn sàng là:"
 
-#: builtin/merge.c:147
+#: builtin/merge.c:150
 #, c-format
 msgid "Available custom strategies are:"
 msgstr "Các chiến lược tùy chỉnh sẵn sàng là:"
 
-#: builtin/merge.c:197 builtin/pull.c:134
+#: builtin/merge.c:200 builtin/pull.c:134
 msgid "do not show a diffstat at the end of the merge"
 msgstr "không hiển thị thống kê khác biệt tại cuối của lần hòa trộn"
 
-#: builtin/merge.c:200 builtin/pull.c:137
+#: builtin/merge.c:203 builtin/pull.c:137
 msgid "show a diffstat at the end of the merge"
 msgstr "hiển thị thống kê khác biệt tại cuối của hòa trộn"
 
-#: builtin/merge.c:201 builtin/pull.c:140
+#: builtin/merge.c:204 builtin/pull.c:140
 msgid "(synonym to --stat)"
 msgstr "(đồng nghĩa với --stat)"
 
-#: builtin/merge.c:203 builtin/pull.c:143
+#: builtin/merge.c:206 builtin/pull.c:143
 msgid "add (at most <n>) entries from shortlog to merge commit message"
 msgstr "thêm (ít nhất <n>) mục từ shortlog cho ghi chú chuyển giao hòa trộn"
 
-#: builtin/merge.c:206 builtin/pull.c:146
+#: builtin/merge.c:209 builtin/pull.c:146
 msgid "create a single commit instead of doing a merge"
 msgstr "tạo một lần chuyển giao đưon thay vì thực hiện việc hòa trộn"
 
-#: builtin/merge.c:208 builtin/pull.c:149
+#: builtin/merge.c:211 builtin/pull.c:149
 msgid "perform a commit if the merge succeeds (default)"
 msgstr "thực hiện chuyển giao nếu hòa trộn thành công (mặc định)"
 
-#: builtin/merge.c:210 builtin/pull.c:152
+#: builtin/merge.c:213 builtin/pull.c:152
 msgid "edit message before committing"
 msgstr "sửa chú thích trước khi chuyển giao"
 
-#: builtin/merge.c:211
+#: builtin/merge.c:214
 msgid "allow fast-forward (default)"
 msgstr "cho phép chuyển-tiếp-nhanh (mặc định)"
 
-#: builtin/merge.c:213 builtin/pull.c:158
+#: builtin/merge.c:216 builtin/pull.c:158
 msgid "abort if fast-forward is not possible"
 msgstr "bỏ qua nếu chuyển-tiếp-nhanh không thể được"
 
-#: builtin/merge.c:217 builtin/pull.c:161
+#: builtin/merge.c:220 builtin/pull.c:161
 msgid "verify that the named commit has a valid GPG signature"
 msgstr "thẩm tra xem lần chuyển giao có tên đó có chữ ký GPG hợp lệ hay không"
 
-#: builtin/merge.c:218 builtin/notes.c:776 builtin/pull.c:165
+#: builtin/merge.c:221 builtin/notes.c:777 builtin/pull.c:165
 #: builtin/revert.c:109
 msgid "strategy"
 msgstr "chiến lược"
 
-#: builtin/merge.c:219 builtin/pull.c:166
+#: builtin/merge.c:222 builtin/pull.c:166
 msgid "merge strategy to use"
 msgstr "chiến lược hòa trộn sẽ dùng"
 
-#: builtin/merge.c:220 builtin/pull.c:169
+#: builtin/merge.c:223 builtin/pull.c:169
 msgid "option=value"
 msgstr "tùy_chọn=giá_trị"
 
-#: builtin/merge.c:221 builtin/pull.c:170
+#: builtin/merge.c:224 builtin/pull.c:170
 msgid "option for selected merge strategy"
 msgstr "tùy chọn cho chiến lược hòa trộn đã chọn"
 
-#: builtin/merge.c:223
+#: builtin/merge.c:226
 msgid "merge commit message (for a non-fast-forward merge)"
 msgstr ""
 "hòa trộn ghi chú của lần chuyển giao (dành cho hòa trộn không-chuyển-tiếp-"
 "nhanh)"
 
-#: builtin/merge.c:227
+#: builtin/merge.c:230
 msgid "abort the current in-progress merge"
 msgstr "bãi bỏ quá trình hòa trộn hiện tại đang thực hiện"
 
-#: builtin/merge.c:229
+#: builtin/merge.c:232
 msgid "continue the current in-progress merge"
 msgstr "tiếp tục quá trình hòa trộn hiện tại đang thực hiện"
 
-#: builtin/merge.c:231 builtin/pull.c:177
+#: builtin/merge.c:234 builtin/pull.c:177
 msgid "allow merging unrelated histories"
 msgstr "cho phép hòa trộn lịch sử không liên quan"
 
-#: builtin/merge.c:259
+#: builtin/merge.c:240
+msgid "verify commit-msg hook"
+msgstr "thẩm tra móc (hook) commit-msg"
+
+#: builtin/merge.c:265
 msgid "could not run stash."
 msgstr "không thể chạy stash."
 
-#: builtin/merge.c:264
+#: builtin/merge.c:270
 msgid "stash failed"
 msgstr "lệnh tạm cất gặp lỗi"
 
-#: builtin/merge.c:269
+#: builtin/merge.c:275
 #, c-format
 msgid "not a valid object: %s"
 msgstr "không phải là một đối tượng hợp lệ: %s"
 
-#: builtin/merge.c:288 builtin/merge.c:305
+#: builtin/merge.c:297 builtin/merge.c:314
 msgid "read-tree failed"
 msgstr "read-tree gặp lỗi"
 
-#: builtin/merge.c:335
+#: builtin/merge.c:344
 msgid " (nothing to squash)"
 msgstr " (không có gì để squash)"
 
-#: builtin/merge.c:346
+#: builtin/merge.c:355
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr "Squash commit -- không cập nhật HEAD\n"
 
-#: builtin/merge.c:396
+#: builtin/merge.c:405
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr "Không có lời chú thích hòa trộn -- nên không cập nhật HEAD\n"
 
-#: builtin/merge.c:447
+#: builtin/merge.c:456
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr "“%s” không chỉ đến một lần chuyển giao nào cả"
 
-#: builtin/merge.c:537
+#: builtin/merge.c:546
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr "Chuỗi branch.%s.mergeoptions sai: %s"
 
-#: builtin/merge.c:657
+#: builtin/merge.c:666
 msgid "Not handling anything other than two heads merge."
 msgstr "Không cầm nắm gì ngoài hai head hòa trộn"
 
-#: builtin/merge.c:671
+#: builtin/merge.c:680
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr "Không hiểu tùy chọn cho merge-recursive: -X%s"
 
-#: builtin/merge.c:686
+#: builtin/merge.c:695
 #, c-format
 msgid "unable to write %s"
 msgstr "không thể ghi %s"
 
-#: builtin/merge.c:738
+#: builtin/merge.c:747
 #, c-format
 msgid "Could not read from '%s'"
 msgstr "Không thể đọc từ “%s”"
 
-#: builtin/merge.c:747
+#: builtin/merge.c:756
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr ""
 "Vẫn chưa hòa trộn các lần chuyển giao; sử dụng lệnh “git commit” để hoàn tất "
 "việc hòa trộn.\n"
 
-#: builtin/merge.c:753
+#: builtin/merge.c:762
 #, c-format
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
@@ -10111,71 +10279,71 @@ msgstr ""
 "rỗng\n"
 "sẽ hủy bỏ lần chuyển giao.\n"
 
-#: builtin/merge.c:777
+#: builtin/merge.c:798
 msgid "Empty commit message."
 msgstr "Chú thích của lần commit (chuyển giao) bị trống rỗng."
 
-#: builtin/merge.c:797
+#: builtin/merge.c:818
 #, c-format
 msgid "Wonderful.\n"
 msgstr "Tuyệt vời.\n"
 
-#: builtin/merge.c:850
+#: builtin/merge.c:871
 #, c-format
 msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 msgstr ""
 "Việc tự động hòa trộn gặp lỗi; hãy sửa các xung đột sau đó chuyển giao kết "
 "quả.\n"
 
-#: builtin/merge.c:889
+#: builtin/merge.c:910
 msgid "No current branch."
 msgstr "không phải nhánh hiện hành"
 
-#: builtin/merge.c:891
+#: builtin/merge.c:912
 msgid "No remote for the current branch."
 msgstr "Không có máy chủ cho nhánh hiện hành."
 
-#: builtin/merge.c:893
+#: builtin/merge.c:914
 msgid "No default upstream defined for the current branch."
 msgstr "Không có thượng nguồn mặc định được định nghĩa cho nhánh hiện hành."
 
-#: builtin/merge.c:898
+#: builtin/merge.c:919
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr "Không nhánh mạng theo dõi cho %s từ %s"
 
-#: builtin/merge.c:945
+#: builtin/merge.c:972
 #, c-format
 msgid "Bad value '%s' in environment '%s'"
 msgstr "Giá trị sai “%s” trong biến môi trường “%s”"
 
-#: builtin/merge.c:1046
+#: builtin/merge.c:1073
 #, c-format
 msgid "not something we can merge in %s: %s"
 msgstr "không phải là một thứ gì đó mà chúng tôi có thể hòa trộn trong %s: %s"
 
-#: builtin/merge.c:1080
+#: builtin/merge.c:1107
 msgid "not something we can merge"
 msgstr "không phải là thứ gì đó mà chúng tôi có thể hòa trộn"
 
-#: builtin/merge.c:1145
+#: builtin/merge.c:1172
 msgid "--abort expects no arguments"
 msgstr "--abort không nhận các đối số"
 
-#: builtin/merge.c:1149
+#: builtin/merge.c:1176
 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:1161
+#: builtin/merge.c:1188
 msgid "--continue expects no arguments"
 msgstr "--continue không nhận đối số"
 
-#: builtin/merge.c:1165
+#: builtin/merge.c:1192
 msgid "There is no merge in progress (MERGE_HEAD missing)."
 msgstr "Ở đây không có lần hòa trộn nào đang được xử lý cả (thiếu MERGE_HEAD)."
 
-#: builtin/merge.c:1181
+#: builtin/merge.c:1208
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -10183,7 +10351,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:1188
+#: builtin/merge.c:1215
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
@@ -10191,115 +10359,115 @@ 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:1191
+#: builtin/merge.c:1218
 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:1200
+#: builtin/merge.c:1227
 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:1208
+#: builtin/merge.c:1235
 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:1225
+#: builtin/merge.c:1252
 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:1227
+#: builtin/merge.c:1254
 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:1232
+#: builtin/merge.c:1259
 #, c-format
 msgid "%s - not something we can merge"
 msgstr "%s - không phải là thứ gì đó mà chúng tôi có thể hòa trộn"
 
-#: builtin/merge.c:1234
+#: builtin/merge.c:1261
 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:1268
+#: builtin/merge.c:1295
 #, 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:1271
+#: builtin/merge.c:1298
 #, 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:1274
+#: builtin/merge.c:1301
 #, 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:1277
+#: builtin/merge.c:1304
 #, c-format
 msgid "Commit %s has a good GPG signature by %s\n"
 msgstr "Lần chuyển giao %s có một chữ ký GPG tốt bởi %s\n"
 
-#: builtin/merge.c:1339
+#: builtin/merge.c:1366
 msgid "refusing to merge unrelated histories"
 msgstr "từ chối hòa trộn lịch sử không liên quan"
 
-#: builtin/merge.c:1348
-msgid "Already up-to-date."
+#: builtin/merge.c:1375
+msgid "Already up to date."
 msgstr "Đã cập nhật rồi."
 
-#: builtin/merge.c:1358
+#: builtin/merge.c:1385
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr "Đang cập nhật %s..%s\n"
 
-#: builtin/merge.c:1399
+#: builtin/merge.c:1426
 #, 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:1406
+#: builtin/merge.c:1433
 #, c-format
 msgid "Nope.\n"
 msgstr "Không.\n"
 
-#: builtin/merge.c:1431
-msgid "Already up-to-date. Yeeah!"
+#: builtin/merge.c:1458
+msgid "Already up to date. Yeeah!"
 msgstr "Đã cập nhật rồi. Yeeah!"
 
-#: builtin/merge.c:1437
+#: builtin/merge.c:1464
 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:1460 builtin/merge.c:1539
+#: builtin/merge.c:1487 builtin/merge.c:1566
 #, 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:1464
+#: builtin/merge.c:1491
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr "Đang thử chiến lược hòa trộn %s…\n"
 
-#: builtin/merge.c:1530
+#: builtin/merge.c:1557
 #, 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:1532
+#: builtin/merge.c:1559
 #, 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:1541
+#: builtin/merge.c:1568
 #, 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:1553
+#: builtin/merge.c:1580
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -10441,7 +10609,7 @@ msgstr "git mv [<các-tùy-chọn>] <nguồn>… <đích>"
 msgid "Directory %s is in index and no submodule?"
 msgstr "Thư mục “%s” có ở trong chỉ mục mà không có mô-đun con?"
 
-#: builtin/mv.c:85 builtin/rm.c:290
+#: builtin/mv.c:85 builtin/rm.c:289
 msgid "Please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
 "Hãy đưa các thay đổi của bạn vào .gitmodules hay tạm cất chúng đi để xử lý"
@@ -10459,68 +10627,68 @@ msgstr "ép buộc di chuyển hay đổi tên thậm chí cả khi đích đã
 msgid "skip move/rename errors"
 msgstr "bỏ qua các lỗi liên quan đến di chuyển, đổi tên"
 
-#: builtin/mv.c:168
+#: builtin/mv.c:167
 #, c-format
 msgid "destination '%s' is not a directory"
 msgstr "có đích “%s” nhưng đây không phải là một thư mục"
 
-#: builtin/mv.c:179
+#: builtin/mv.c:178
 #, c-format
 msgid "Checking rename of '%s' to '%s'\n"
 msgstr "Đang kiểm tra việc đổi tên của “%s” thành “%s”\n"
 
-#: builtin/mv.c:183
+#: builtin/mv.c:182
 msgid "bad source"
 msgstr "nguồn sai"
 
-#: builtin/mv.c:186
+#: builtin/mv.c:185
 msgid "can not move directory into itself"
 msgstr "không thể di chuyển một thư mục vào trong chính nó được"
 
-#: builtin/mv.c:189
+#: builtin/mv.c:188
 msgid "cannot move directory over file"
 msgstr "không di chuyển được thư mục thông qua tập tin"
 
-#: builtin/mv.c:198
+#: builtin/mv.c:197
 msgid "source directory is empty"
 msgstr "thư mục nguồn là trống rỗng"
 
-#: builtin/mv.c:223
+#: builtin/mv.c:222
 msgid "not under version control"
 msgstr "không nằm dưới sự quản lý mã nguồn"
 
-#: builtin/mv.c:226
+#: builtin/mv.c:225
 msgid "destination exists"
 msgstr "đích đã tồn tại sẵn rồi"
 
-#: builtin/mv.c:234
+#: builtin/mv.c:233
 #, c-format
 msgid "overwriting '%s'"
 msgstr "đang ghi đè lên “%s”"
 
-#: builtin/mv.c:237
+#: builtin/mv.c:236
 msgid "Cannot overwrite"
 msgstr "Không thể ghi đè"
 
-#: builtin/mv.c:240
+#: builtin/mv.c:239
 msgid "multiple sources for the same target"
 msgstr "Nhiều nguồn cho cùng một đích"
 
-#: builtin/mv.c:242
+#: builtin/mv.c:241
 msgid "destination directory does not exist"
 msgstr "thư mục đích không tồn tại"
 
-#: builtin/mv.c:249
+#: builtin/mv.c:248
 #, c-format
 msgid "%s, source=%s, destination=%s"
 msgstr "%s, nguồn=%s, đích=%s"
 
-#: builtin/mv.c:270
+#: builtin/mv.c:269
 #, c-format
 msgid "Renaming %s to %s\n"
 msgstr "Đổi tên %s thành %s\n"
 
-#: builtin/mv.c:276 builtin/remote.c:711 builtin/repack.c:390
+#: builtin/mv.c:275 builtin/remote.c:712 builtin/repack.c:390
 #, c-format
 msgid "renaming '%s' failed"
 msgstr "gặp lỗi khi đổi tên “%s”"
@@ -10712,19 +10880,19 @@ 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:234 builtin/tag.c:517
+#: builtin/notes.c:234 builtin/tag.c:500
 #, c-format
 msgid "cannot read '%s'"
 msgstr "không thể đọc “%s”"
 
-#: builtin/notes.c:236 builtin/tag.c:520
+#: builtin/notes.c:236 builtin/tag.c:503
 #, c-format
 msgid "could not open or read '%s'"
 msgstr "không thể mở hay đọc “%s”"
 
 #: builtin/notes.c:255 builtin/notes.c:306 builtin/notes.c:308
-#: builtin/notes.c:375 builtin/notes.c:430 builtin/notes.c:516
-#: builtin/notes.c:521 builtin/notes.c:599 builtin/notes.c:661
+#: builtin/notes.c:376 builtin/notes.c:431 builtin/notes.c:517
+#: builtin/notes.c:522 builtin/notes.c:600 builtin/notes.c:662
 #, 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ệ."
@@ -10752,47 +10920,47 @@ msgstr "gặp lỗi khi sao chép ghi chú (note) từ “%s” sang “%s”"
 #. TRANSLATORS: the first %s will be replaced by a git
 #. notes command: 'add', 'merge', 'remove', etc.
 #.
-#: builtin/notes.c:348
+#: builtin/notes.c:349
 #, c-format
 msgid "refusing to %s notes in %s (outside of refs/notes/)"
 msgstr "từ chối %s ghi chú trong %s (nằm ngoài refs/notes/)"
 
-#: builtin/notes.c:368 builtin/notes.c:423 builtin/notes.c:499
-#: builtin/notes.c:511 builtin/notes.c:587 builtin/notes.c:654
-#: builtin/notes.c:804 builtin/notes.c:951 builtin/notes.c:972
+#: builtin/notes.c:369 builtin/notes.c:424 builtin/notes.c:500
+#: builtin/notes.c:512 builtin/notes.c:588 builtin/notes.c:655
+#: builtin/notes.c:805 builtin/notes.c:952 builtin/notes.c:973
 msgid "too many parameters"
 msgstr "quá nhiều đối số"
 
-#: builtin/notes.c:381 builtin/notes.c:667
+#: builtin/notes.c:382 builtin/notes.c:668
 #, c-format
 msgid "no note found for object %s."
 msgstr "không tìm thấy ghi chú cho đối tượng %s."
 
-#: builtin/notes.c:402 builtin/notes.c:565
+#: builtin/notes.c:403 builtin/notes.c:566
 msgid "note contents as a string"
 msgstr "nội dung ghi chú (note) nằm trong một chuỗi"
 
-#: builtin/notes.c:405 builtin/notes.c:568
+#: builtin/notes.c:406 builtin/notes.c:569
 msgid "note contents in a file"
 msgstr "nội dung ghi chú (note) nằm trong một tập tin"
 
-#: builtin/notes.c:408 builtin/notes.c:571
+#: builtin/notes.c:409 builtin/notes.c:572
 msgid "reuse and edit specified note object"
 msgstr "dùng lại nhưng có sửa chữa đối tượng note đã chỉ ra"
 
-#: builtin/notes.c:411 builtin/notes.c:574
+#: builtin/notes.c:412 builtin/notes.c:575
 msgid "reuse specified note object"
 msgstr "dùng lại đối tượng ghi chú (note) đã chỉ ra"
 
-#: builtin/notes.c:414 builtin/notes.c:577
+#: builtin/notes.c:415 builtin/notes.c:578
 msgid "allow storing empty note"
 msgstr "cho lưu trữ ghi chú trống rỗng"
 
-#: builtin/notes.c:415 builtin/notes.c:486
+#: builtin/notes.c:416 builtin/notes.c:487
 msgid "replace existing notes"
 msgstr "thay thế ghi chú trước"
 
-#: builtin/notes.c:440
+#: builtin/notes.c:441
 #, c-format
 msgid ""
 "Cannot add notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -10801,29 +10969,29 @@ msgstr ""
 "Không thể thêm các ghi chú. Đã tìm thấy các ghi chú đã có sẵn cho đối tượng "
 "%s. Sử dụng tùy chọn “-f” để ghi đè lên các ghi chú cũ"
 
-#: builtin/notes.c:455 builtin/notes.c:534
+#: builtin/notes.c:456 builtin/notes.c:535
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr "Đang ghi đè lên ghi chú cũ cho đối tượng %s\n"
 
-#: builtin/notes.c:466 builtin/notes.c:626 builtin/notes.c:891
+#: builtin/notes.c:467 builtin/notes.c:627 builtin/notes.c:892
 #, c-format
 msgid "Removing note for object %s\n"
 msgstr "Đang gỡ bỏ ghi chú (note) cho đối tượng %s\n"
 
-#: builtin/notes.c:487
+#: builtin/notes.c:488
 msgid "read objects from stdin"
 msgstr "đọc các đối tượng từ đầu vào tiêu chuẩn"
 
-#: builtin/notes.c:489
+#: builtin/notes.c:490
 msgid "load rewriting config for <command> (implies --stdin)"
 msgstr "tải cấu hình chép lại cho <lệnh> (ngầm định là --stdin)"
 
-#: builtin/notes.c:507
+#: builtin/notes.c:508
 msgid "too few parameters"
 msgstr "quá ít đối số"
 
-#: builtin/notes.c:528
+#: builtin/notes.c:529
 #, c-format
 msgid ""
 "Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
@@ -10832,12 +11000,12 @@ msgstr ""
 "Không thể sao chép các ghi chú. Đã tìm thấy các ghi chú đã có sẵn cho đối "
 "tượng %s. Sử dụng tùy chọn “-f” để ghi đè lên các ghi chú cũ"
 
-#: builtin/notes.c:540
+#: builtin/notes.c:541
 #, c-format
 msgid "missing notes on source object %s. Cannot copy."
 msgstr "thiếu ghi chú trên đối tượng nguồn %s. Không thể sao chép."
 
-#: builtin/notes.c:592
+#: builtin/notes.c:593
 #, c-format
 msgid ""
 "The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
@@ -10846,52 +11014,52 @@ msgstr ""
 "Các tùy chọn -m/-F/-c/-C đã cổ không còn dùng nữa cho lệnh con “edit”.\n"
 "Xin hãy sử dụng lệnh sau để thay thế: “git notes add -f -m/-F/-c/-C”.\n"
 
-#: builtin/notes.c:687
+#: builtin/notes.c:688
 msgid "failed to delete ref NOTES_MERGE_PARTIAL"
 msgstr "gặp lỗi khi xóa tham chiếu NOTES_MERGE_PARTIAL"
 
-#: builtin/notes.c:689
+#: builtin/notes.c:690
 msgid "failed to delete ref NOTES_MERGE_REF"
 msgstr "gặp lỗi khi xóa tham chiếu NOTES_MERGE_REF"
 
-#: builtin/notes.c:691
+#: builtin/notes.c:692
 msgid "failed to remove 'git notes merge' worktree"
 msgstr "gặp lỗi khi gỡ bỏ cây làm việc “git notes merge”"
 
-#: builtin/notes.c:711
+#: builtin/notes.c:712
 msgid "failed to read ref NOTES_MERGE_PARTIAL"
 msgstr "gặp lỗi khi đọc tham chiếu NOTES_MERGE_PARTIAL"
 
-#: builtin/notes.c:713
+#: builtin/notes.c:714
 msgid "could not find commit from NOTES_MERGE_PARTIAL."
 msgstr "không thể tìm thấy lần chuyển giao từ NOTES_MERGE_PARTIAL."
 
-#: builtin/notes.c:715
+#: builtin/notes.c:716
 msgid "could not parse commit from NOTES_MERGE_PARTIAL."
 msgstr "không thể phân tích cú pháp lần chuyển giao từ NOTES_MERGE_PARTIAL."
 
-#: builtin/notes.c:728
+#: builtin/notes.c:729
 msgid "failed to resolve NOTES_MERGE_REF"
 msgstr "gặp lỗi khi phân giải NOTES_MERGE_REF"
 
-#: builtin/notes.c:731
+#: builtin/notes.c:732
 msgid "failed to finalize notes merge"
 msgstr "gặp lỗi khi hoàn thành hòa trộn ghi chú"
 
-#: builtin/notes.c:757
+#: builtin/notes.c:758
 #, c-format
 msgid "unknown notes merge strategy %s"
 msgstr "không hiểu chiến lược hòa trộn ghi chú %s"
 
-#: builtin/notes.c:773
+#: builtin/notes.c:774
 msgid "General options"
 msgstr "Tùy chọn chung"
 
-#: builtin/notes.c:775
+#: builtin/notes.c:776
 msgid "Merge options"
 msgstr "Tùy chọn về hòa trộn"
 
-#: builtin/notes.c:777
+#: builtin/notes.c:778
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
@@ -10899,48 +11067,48 @@ msgstr ""
 "phân giải các xung đột “notes” sử dụng chiến lược đã đưa ra (manual/ours/"
 "theirs/union/cat_sort_uniq)"
 
-#: builtin/notes.c:779
+#: builtin/notes.c:780
 msgid "Committing unmerged notes"
 msgstr "Chuyển giao các note chưa được hòa trộn"
 
-#: builtin/notes.c:781
+#: builtin/notes.c:782
 msgid "finalize notes merge by committing unmerged notes"
 msgstr ""
 "các note cuối cùng được hòa trộn bởi các note chưa hòa trộn của lần chuyển "
 "giao"
 
-#: builtin/notes.c:783
+#: builtin/notes.c:784
 msgid "Aborting notes merge resolution"
 msgstr "Hủy bỏ phân giải ghi chú (note) hòa trộn"
 
-#: builtin/notes.c:785
+#: builtin/notes.c:786
 msgid "abort notes merge"
 msgstr "bỏ qua hòa trộn các ghi chú (note)"
 
-#: builtin/notes.c:796
+#: builtin/notes.c:797
 msgid "cannot mix --commit, --abort or -s/--strategy"
 msgstr "không thể trộn lẫn --commit, --abort hay -s/--strategy"
 
-#: builtin/notes.c:801
+#: builtin/notes.c:802
 msgid "must specify a notes ref to merge"
 msgstr "bạn phải chỉ định tham chiếu ghi chú để hòa trộn"
 
-#: builtin/notes.c:825
+#: builtin/notes.c:826
 #, c-format
 msgid "unknown -s/--strategy: %s"
 msgstr "không hiểu -s/--strategy: %s"
 
-#: builtin/notes.c:862
+#: builtin/notes.c:863
 #, c-format
 msgid "a notes merge into %s is already in-progress at %s"
 msgstr "một ghi chú hòa trộn vào %s đã sẵn trong quá trình xử lý tại %s"
 
-#: builtin/notes.c:865
+#: builtin/notes.c:866
 #, c-format
 msgid "failed to store link to current notes ref (%s)"
 msgstr "gặp lỗi khi lưu liên kết đến tham chiếu ghi chú hiện tại (%s)"
 
-#: builtin/notes.c:867
+#: builtin/notes.c:868
 #, c-format
 msgid ""
 "Automatic notes merge failed. Fix conflicts in %s and commit the result with "
@@ -10951,223 +11119,223 @@ msgstr ""
 "chuyển giao kết quả bằng “git notes merge --commit”, hoặc bãi bỏ việc hòa "
 "trộn bằng “git notes merge --abort”.\n"
 
-#: builtin/notes.c:889
+#: builtin/notes.c:890
 #, c-format
 msgid "Object %s has no note\n"
 msgstr "Đối tượng %s không có ghi chú (note)\n"
 
-#: builtin/notes.c:901
+#: builtin/notes.c:902
 msgid "attempt to remove non-existent note is not an error"
 msgstr "cố gắng gỡ bỏ một note chưa từng tồn tại không phải là một lỗi"
 
-#: builtin/notes.c:904
+#: builtin/notes.c:905
 msgid "read object names from the standard input"
 msgstr "đọc tên đối tượng từ thiết bị nhập chuẩn"
 
-#: builtin/notes.c:942 builtin/prune.c:105 builtin/worktree.c:128
+#: builtin/notes.c:943 builtin/prune.c:105 builtin/worktree.c:146
 msgid "do not remove, show only"
 msgstr "không gỡ bỏ, chỉ hiển thị"
 
-#: builtin/notes.c:943
+#: builtin/notes.c:944
 msgid "report pruned notes"
 msgstr "báo cáo các đối tượng đã prune"
 
-#: builtin/notes.c:985
+#: builtin/notes.c:986
 msgid "notes-ref"
 msgstr "notes-ref"
 
-#: builtin/notes.c:986
+#: builtin/notes.c:987
 msgid "use notes from <notes-ref>"
 msgstr "dùng “notes” từ <notes-ref>"
 
-#: builtin/notes.c:1021
+#: builtin/notes.c:1022
 #, c-format
 msgid "unknown subcommand: %s"
 msgstr "không hiểu câu lệnh con: %s"
 
-#: builtin/pack-objects.c:30
+#: builtin/pack-objects.c:31
 msgid ""
 "git pack-objects --stdout [<options>...] [< <ref-list> | < <object-list>]"
 msgstr ""
 "git pack-objects --stdout [các-tùy-chọn…] [< <danh-sách-tham-chiếu> | < "
 "<danh-sách-đối-tượng>]"
 
-#: builtin/pack-objects.c:31
+#: builtin/pack-objects.c:32
 msgid ""
 "git pack-objects [<options>...] <base-name> [< <ref-list> | < <object-list>]"
 msgstr ""
 "git pack-objects [các-tùy-chọn…] <base-name> [< <danh-sách-ref> | < <danh-"
 "sách-đối-tượng>]"
 
-#: builtin/pack-objects.c:180 builtin/pack-objects.c:183
+#: builtin/pack-objects.c:181 builtin/pack-objects.c:184
 #, c-format
 msgid "deflate error (%d)"
 msgstr "lỗi giải nén (%d)"
 
-#: builtin/pack-objects.c:776
+#: builtin/pack-objects.c:777
 msgid "disabling bitmap writing, packs are split due to pack.packSizeLimit"
 msgstr "tắt ghi bitmap, các gói bị chia nhỏ bởi vì pack.packSizeLimit"
 
-#: builtin/pack-objects.c:789
+#: builtin/pack-objects.c:790
 msgid "Writing objects"
 msgstr "Đang ghi lại các đối tượng"
 
-#: builtin/pack-objects.c:1069
+#: builtin/pack-objects.c:1070
 msgid "disabling bitmap writing, as some objects are not being packed"
 msgstr "tắt ghi bitmap, như vậy một số đối tượng sẽ không được đóng gói"
 
-#: builtin/pack-objects.c:2434
+#: builtin/pack-objects.c:2440
 msgid "Compressing objects"
 msgstr "Đang nén các đối tượng"
 
-#: builtin/pack-objects.c:2843
+#: builtin/pack-objects.c:2849
 #, c-format
 msgid "unsupported index version %s"
 msgstr "phiên bản mục lục không được hỗ trợ %s"
 
-#: builtin/pack-objects.c:2847
+#: builtin/pack-objects.c:2853
 #, c-format
 msgid "bad index version '%s'"
 msgstr "phiên bản mục lục sai “%s”"
 
-#: builtin/pack-objects.c:2877
+#: builtin/pack-objects.c:2883
 msgid "do not show progress meter"
 msgstr "không hiển thị bộ đo tiến trình"
 
-#: builtin/pack-objects.c:2879
+#: builtin/pack-objects.c:2885
 msgid "show progress meter"
 msgstr "hiển thị bộ đo tiến trình"
 
-#: builtin/pack-objects.c:2881
+#: builtin/pack-objects.c:2887
 msgid "show progress meter during object writing phase"
 msgstr "hiển thị bộ đo tiến triển trong suốt pha ghi đối tượng"
 
-#: builtin/pack-objects.c:2884
+#: builtin/pack-objects.c:2890
 msgid "similar to --all-progress when progress meter is shown"
 msgstr "tương tự --all-progress khi bộ đo tiến trình được xuất hiện"
 
-#: builtin/pack-objects.c:2885
+#: builtin/pack-objects.c:2891
 msgid "version[,offset]"
 msgstr "phiên bản[,offset]"
 
-#: builtin/pack-objects.c:2886
+#: builtin/pack-objects.c:2892
 msgid "write the pack index file in the specified idx format version"
 msgstr "ghi tập tin bảng mục lục gói (pack) ở phiên bản định dạng idx đã cho"
 
-#: builtin/pack-objects.c:2889
+#: builtin/pack-objects.c:2895
 msgid "maximum size of each output pack file"
 msgstr "kcíh thước tối đa cho tập tin gói được tạo"
 
-#: builtin/pack-objects.c:2891
+#: builtin/pack-objects.c:2897
 msgid "ignore borrowed objects from alternate object store"
 msgstr "bỏ qua các đối tượng vay mượn từ kho đối tượng thay thế"
 
-#: builtin/pack-objects.c:2893
+#: builtin/pack-objects.c:2899
 msgid "ignore packed objects"
 msgstr "bỏ qua các đối tượng đóng gói"
 
-#: builtin/pack-objects.c:2895
+#: builtin/pack-objects.c:2901
 msgid "limit pack window by objects"
 msgstr "giới hạn cửa sổ đóng gói theo đối tượng"
 
-#: builtin/pack-objects.c:2897
+#: builtin/pack-objects.c:2903
 msgid "limit pack window by memory in addition to object limit"
 msgstr "giới hạn cửa sổ đóng gói theo bộ nhớ cộng thêm với giới hạn đối tượng"
 
-#: builtin/pack-objects.c:2899
+#: builtin/pack-objects.c:2905
 msgid "maximum length of delta chain allowed in the resulting pack"
 msgstr "độ dài tối đa của chuỗi móc xích “delta” được phép trong gói kết quả"
 
-#: builtin/pack-objects.c:2901
+#: builtin/pack-objects.c:2907
 msgid "reuse existing deltas"
 msgstr "dùng lại các delta sẵn có"
 
-#: builtin/pack-objects.c:2903
+#: builtin/pack-objects.c:2909
 msgid "reuse existing objects"
 msgstr "dùng lại các đối tượng sẵn có"
 
-#: builtin/pack-objects.c:2905
+#: builtin/pack-objects.c:2911
 msgid "use OFS_DELTA objects"
 msgstr "dùng các đối tượng OFS_DELTA"
 
-#: builtin/pack-objects.c:2907
+#: builtin/pack-objects.c:2913
 msgid "use threads when searching for best delta matches"
 msgstr "sử dụng các tuyến trình khi tìm kiếm cho các mẫu khớp delta tốt nhất"
 
-#: builtin/pack-objects.c:2909
+#: builtin/pack-objects.c:2915
 msgid "do not create an empty pack output"
 msgstr "không thể tạo kết xuất gói trống rỗng"
 
-#: builtin/pack-objects.c:2911
+#: builtin/pack-objects.c:2917
 msgid "read revision arguments from standard input"
 msgstr " đọc tham số “revision” từ thiết bị nhập chuẩn"
 
-#: builtin/pack-objects.c:2913
+#: builtin/pack-objects.c:2919
 msgid "limit the objects to those that are not yet packed"
 msgstr "giới hạn các đối tượng thành những cái mà chúng vẫn chưa được đóng gói"
 
-#: builtin/pack-objects.c:2916
+#: builtin/pack-objects.c:2922
 msgid "include objects reachable from any reference"
 msgstr "bao gồm các đối tượng có thể đọc được từ bất kỳ tham chiếu nào"
 
-#: builtin/pack-objects.c:2919
+#: builtin/pack-objects.c:2925
 msgid "include objects referred by reflog entries"
 msgstr "bao gồm các đối tượng được tham chiếu bởi các mục reflog"
 
-#: builtin/pack-objects.c:2922
+#: builtin/pack-objects.c:2928
 msgid "include objects referred to by the index"
 msgstr "bao gồm các đối tượng được tham chiếu bởi mục lục"
 
-#: builtin/pack-objects.c:2925
+#: builtin/pack-objects.c:2931
 msgid "output pack to stdout"
 msgstr "xuất gói ra đầu ra tiêu chuẩn"
 
-#: builtin/pack-objects.c:2927
+#: builtin/pack-objects.c:2933
 msgid "include tag objects that refer to objects to be packed"
 msgstr "bao gồm các đối tượng tham chiếu đến các đối tượng được đóng gói"
 
-#: builtin/pack-objects.c:2929
+#: builtin/pack-objects.c:2935
 msgid "keep unreachable objects"
 msgstr "giữ lại các đối tượng không thể đọc được"
 
-#: builtin/pack-objects.c:2931
+#: builtin/pack-objects.c:2937
 msgid "pack loose unreachable objects"
 msgstr "pack mất các đối tượng không thể đọc được"
 
-#: builtin/pack-objects.c:2933
+#: builtin/pack-objects.c:2939
 msgid "unpack unreachable objects newer than <time>"
 msgstr ""
 "xả nén (gỡ khỏi gói) các đối tượng không thể đọc được mới hơn <thời-gian>"
 
-#: builtin/pack-objects.c:2936
+#: builtin/pack-objects.c:2942
 msgid "create thin packs"
 msgstr "tạo gói nhẹ"
 
-#: builtin/pack-objects.c:2938
+#: builtin/pack-objects.c:2944
 msgid "create packs suitable for shallow fetches"
 msgstr "tạo gói để phù hợp cho lấy về nông (shallow)"
 
-#: builtin/pack-objects.c:2940
+#: builtin/pack-objects.c:2946
 msgid "ignore packs that have companion .keep file"
 msgstr "bỏ qua các gói mà nó có tập tin .keep đi kèm"
 
-#: builtin/pack-objects.c:2942
+#: builtin/pack-objects.c:2948
 msgid "pack compression level"
 msgstr "mức nén gói"
 
-#: builtin/pack-objects.c:2944
+#: builtin/pack-objects.c:2950
 msgid "do not hide commits by grafts"
 msgstr "không ẩn các lần chuyển giao bởi “grafts”"
 
-#: builtin/pack-objects.c:2946
+#: builtin/pack-objects.c:2952
 msgid "use a bitmap index if available to speed up counting objects"
 msgstr "dùng mục lục ánh xạ nếu có thể được để nâng cao tốc độ đếm đối tượng"
 
-#: builtin/pack-objects.c:2948
+#: builtin/pack-objects.c:2954
 msgid "write a bitmap index together with the pack index"
 msgstr "ghi một mục lục ánh xạ cùng với mục lục gói"
 
-#: builtin/pack-objects.c:3075
+#: builtin/pack-objects.c:3081
 msgid "Counting objects"
 msgstr "Đang đếm các đối tượng"
 
@@ -11183,11 +11351,11 @@ msgstr "đóng gói mọi thứ"
 msgid "prune loose refs (default)"
 msgstr "prune (cắt cụt) những tham chiếu bị mất (mặc định)"
 
-#: builtin/prune-packed.c:7
+#: builtin/prune-packed.c:8
 msgid "git prune-packed [-n | --dry-run] [-q | --quiet]"
 msgstr "git prune-packed [-n | --dry-run] [-q | --quiet]"
 
-#: builtin/prune-packed.c:40
+#: builtin/prune-packed.c:41
 msgid "Removing duplicate objects"
 msgstr "Đang gỡ các đối tượng trùng lặp"
 
@@ -11228,7 +11396,7 @@ msgstr "Các tùy chọn liên quan đến hòa trộn"
 msgid "incorporate changes by rebasing rather than merging"
 msgstr "các thay đổi hợp nhất bằng cải tổ thay vì hòa trộn"
 
-#: builtin/pull.c:155 builtin/rebase--helper.c:19 builtin/revert.c:121
+#: builtin/pull.c:155 builtin/rebase--helper.c:21 builtin/revert.c:121
 msgid "allow fast-forward"
 msgstr "cho phép chuyển-tiếp-nhanh"
 
@@ -11249,7 +11417,7 @@ msgstr "số lượng mô-đun-con được đẩy lên đồng thời"
 msgid "Invalid value for pull.ff: %s"
 msgstr "Giá trị không hợp lệ cho pull.ff: %s"
 
-#: builtin/pull.c:399
+#: builtin/pull.c:403
 msgid ""
 "There is no candidate for rebasing against among the refs that you just "
 "fetched."
@@ -11257,14 +11425,14 @@ msgstr ""
 "Ở đây không có ứng cử nào để cải tổ lại trong số các tham chiếu mà bạn vừa "
 "lấy về."
 
-#: builtin/pull.c:401
+#: builtin/pull.c:405
 msgid ""
 "There are no candidates for merging among the refs that you just fetched."
 msgstr ""
 "Ở đây không có ứng cử nào để hòa trộn trong số các tham chiếu mà bạn vừa lấy "
 "về."
 
-#: builtin/pull.c:402
+#: builtin/pull.c:406
 msgid ""
 "Generally this means that you provided a wildcard refspec which had no\n"
 "matches on the remote end."
@@ -11273,7 +11441,7 @@ msgstr ""
 "tự\n"
 "đại diện mà nó lại không khớp trên điểm cuối máy phục vụ."
 
-#: builtin/pull.c:405
+#: builtin/pull.c:409
 #, c-format
 msgid ""
 "You asked to pull from the remote '%s', but did not specify\n"
@@ -11285,43 +11453,43 @@ msgstr ""
 "theo mặc định cho nhánh hiện tại của bạn, bạn phải chỉ định\n"
 "một nhánh trên dòng lệnh."
 
-#: builtin/pull.c:410 git-parse-remote.sh:73
+#: builtin/pull.c:414 git-parse-remote.sh:73
 msgid "You are not currently on a branch."
 msgstr "Hiện tại bạn chẳng ở nhánh nào cả."
 
-#: builtin/pull.c:412 builtin/pull.c:427 git-parse-remote.sh:79
+#: builtin/pull.c:416 builtin/pull.c:431 git-parse-remote.sh:79
 msgid "Please specify which branch you want to rebase against."
 msgstr "Vui lòng chỉ định nhánh nào bạn muốn cải tổ lại."
 
-#: builtin/pull.c:414 builtin/pull.c:429 git-parse-remote.sh:82
+#: builtin/pull.c:418 builtin/pull.c:433 git-parse-remote.sh:82
 msgid "Please specify which branch you want to merge with."
 msgstr "Vui lòng chỉ định nhánh nào bạn muốn hòa trộn vào."
 
-#: builtin/pull.c:415 builtin/pull.c:430
+#: builtin/pull.c:419 builtin/pull.c:434
 msgid "See git-pull(1) for details."
 msgstr "Xem git-pull(1) để biết thêm chi tiết."
 
-#: builtin/pull.c:417 builtin/pull.c:423 builtin/pull.c:432
+#: builtin/pull.c:421 builtin/pull.c:427 builtin/pull.c:436
 #: git-parse-remote.sh:64
 msgid "<remote>"
 msgstr "<máy chủ>"
 
-#: builtin/pull.c:417 builtin/pull.c:432 builtin/pull.c:437 git-rebase.sh:456
+#: builtin/pull.c:421 builtin/pull.c:436 builtin/pull.c:441 git-rebase.sh:466
 #: git-parse-remote.sh:65
 msgid "<branch>"
 msgstr "<nhánh>"
 
-#: builtin/pull.c:425 git-parse-remote.sh:75
+#: builtin/pull.c:429 git-parse-remote.sh:75
 msgid "There is no tracking information for the current branch."
 msgstr "Ở đây không có thông tin theo dõi cho nhánh hiện hành."
 
-#: builtin/pull.c:434 git-parse-remote.sh:95
+#: builtin/pull.c:438 git-parse-remote.sh:95
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:"
 msgstr ""
 "Nếu bạn muốn theo dõi thông tin cho nhánh này bạn có thể thực hiện bằng lệnh:"
 
-#: builtin/pull.c:439
+#: builtin/pull.c:443
 #, c-format
 msgid ""
 "Your configuration specifies to merge with the ref '%s'\n"
@@ -11330,29 +11498,29 @@ msgstr ""
 "Các đặc tả cấu hình của bạn để hòa trộn với tham chiếu “%s”\n"
 "từ máy dịch vụ, nhưng không có nhánh nào như thế được lấy về."
 
-#: builtin/pull.c:792
+#: builtin/pull.c:796
 msgid "ignoring --verify-signatures for rebase"
 msgstr "bỏ qua --verify-signatures khi rebase"
 
-#: builtin/pull.c:840
+#: builtin/pull.c:844
 msgid "--[no-]autostash option is only valid with --rebase."
 msgstr "tùy chọn --[no-]autostash chỉ hợp lệ khi dùng với --rebase."
 
-#: builtin/pull.c:848
+#: builtin/pull.c:852
 msgid "Updating an unborn branch with changes added to the index."
 msgstr ""
 "Đang cập nhật một nhánh chưa được sinh ra với các thay đổi được thêm vào "
 "bảng mục lục."
 
-#: builtin/pull.c:851
+#: builtin/pull.c:855
 msgid "pull with rebase"
 msgstr "pull với rebase"
 
-#: builtin/pull.c:852
+#: builtin/pull.c:856
 msgid "please commit or stash them."
 msgstr "xin hãy chuyển giao hoặc tạm cất (stash) chúng."
 
-#: builtin/pull.c:877
+#: builtin/pull.c:881
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -11363,7 +11531,7 @@ msgstr ""
 "đang chuyển-tiếp-nhanh cây làm việc của bạn từ\n"
 "lần chuyển giaot %s."
 
-#: builtin/pull.c:882
+#: builtin/pull.c:886
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -11381,15 +11549,15 @@ msgstr ""
 "$ git reset --hard\n"
 "để khôi phục lại."
 
-#: builtin/pull.c:897
+#: builtin/pull.c:901
 msgid "Cannot merge multiple branches into empty head."
 msgstr "Không thể hòa trộn nhiều nhánh vào trong một head trống rỗng."
 
-#: builtin/pull.c:901
+#: builtin/pull.c:905
 msgid "Cannot rebase onto multiple branches."
 msgstr "Không thể thực hiện lệnh rebase (cải tổ) trên nhiều nhánh."
 
-#: builtin/pull.c:908
+#: builtin/pull.c:912
 msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
 "không thể cải tổ với các thay đổi mô-đun-con được ghi lại một cách cục bộ"
@@ -11776,19 +11944,47 @@ msgstr "gỡ lỗi “unpack-trees”"
 msgid "git rebase--helper [<options>]"
 msgstr "git rebase--helper [<các-tùy-chọn>]"
 
-#: builtin/rebase--helper.c:20
+#: builtin/rebase--helper.c:22
+msgid "keep empty commits"
+msgstr "giữ lại các lần chuyển giao rỗng"
+
+#: builtin/rebase--helper.c:23
 msgid "continue rebase"
 msgstr "tiếp tục cải tổ"
 
-#: builtin/rebase--helper.c:22
+#: builtin/rebase--helper.c:25
 msgid "abort rebase"
 msgstr "bãi bỏ việc cải tổ"
 
-#: builtin/receive-pack.c:28
+#: builtin/rebase--helper.c:28
+msgid "make rebase script"
+msgstr "tạo văn lệnh rebase"
+
+#: builtin/rebase--helper.c:30
+msgid "shorten SHA-1s in the todo list"
+msgstr "Rút ngắn SHA-1 trong danh sách cần làm"
+
+#: builtin/rebase--helper.c:32
+msgid "expand SHA-1s in the todo list"
+msgstr "Khai triển SHA-1 trong danh sách cần làm"
+
+#: builtin/rebase--helper.c:34
+msgid "check the todo list"
+msgstr "kiểm tra danh sách cần làm"
+
+#: builtin/rebase--helper.c:36
+msgid "skip unnecessary picks"
+msgstr "bỏ qua các lệnh cậy (pick) không cần thiết"
+
+#: builtin/rebase--helper.c:38
+msgid "rearrange fixup/squash lines"
+msgstr "sắp xếp lại các dòng fixup/squash"
+
+#: builtin/receive-pack.c:29
 msgid "git receive-pack <git-dir>"
 msgstr "git receive-pack <thư-mục-git>"
 
-#: builtin/receive-pack.c:838
+#: builtin/receive-pack.c:839
 msgid ""
 "By default, updating the current branch in a non-bare repository\n"
 "is denied, because it will make the index and work tree inconsistent\n"
@@ -11818,7 +12014,7 @@ msgstr ""
 "Để chấm dứt lời nhắn này và vẫn giữ cách ứng xử mặc định, hãy đặt\n"
 "biến cấu hình “receive.denyCurrentBranch” thành “refuse”."
 
-#: builtin/receive-pack.c:858
+#: builtin/receive-pack.c:859
 msgid ""
 "By default, deleting the current branch is denied, because the next\n"
 "'git clone' won't result in any file checked out, causing confusion.\n"
@@ -11839,11 +12035,11 @@ msgstr ""
 "\n"
 "Để chấm dứt lời nhắn này, bạn hãy đặt nó thành “refuse”."
 
-#: builtin/receive-pack.c:1933
+#: builtin/receive-pack.c:1932
 msgid "quiet"
 msgstr "im lặng"
 
-#: builtin/receive-pack.c:1947
+#: builtin/receive-pack.c:1946
 msgid "You must specify a directory."
 msgstr "Bạn phải chỉ định thư mục."
 
@@ -11993,12 +12189,12 @@ msgstr "đang chỉ định một nhánh master không hợp lý với tùy ch
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr "chỉ định những nhánh để theo dõi chỉ hợp lý với các “fetch mirror”"
 
-#: builtin/remote.c:191 builtin/remote.c:630
+#: builtin/remote.c:191 builtin/remote.c:631
 #, c-format
 msgid "remote %s already exists."
 msgstr "máy chủ %s đã tồn tại rồi."
 
-#: builtin/remote.c:195 builtin/remote.c:634
+#: builtin/remote.c:195 builtin/remote.c:635
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr "“%s” không phải tên máy chủ hợp lệ"
@@ -12021,17 +12217,17 @@ msgstr "(khớp)"
 msgid "(delete)"
 msgstr "(xóa)"
 
-#: builtin/remote.c:623 builtin/remote.c:758 builtin/remote.c:857
+#: builtin/remote.c:624 builtin/remote.c:759 builtin/remote.c:858
 #, c-format
 msgid "No such remote: %s"
 msgstr "Không có máy chủ nào như thế: %s"
 
-#: builtin/remote.c:640
+#: builtin/remote.c:641
 #, 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:660
+#: builtin/remote.c:661
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -12042,17 +12238,17 @@ msgstr ""
 "\t%s\n"
 "\tXin hãy cập nhật phần cấu hình một cách thủ công nếu thấy cần thiết."
 
-#: builtin/remote.c:696
+#: builtin/remote.c:697
 #, c-format
 msgid "deleting '%s' failed"
 msgstr "gặp lỗi khi xóa “%s”"
 
-#: builtin/remote.c:730
+#: builtin/remote.c:731
 #, c-format
 msgid "creating '%s' failed"
 msgstr "gặp lỗi khi tạo “%s”"
 
-#: builtin/remote.c:795
+#: builtin/remote.c:796
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -12064,113 +12260,113 @@ msgstr[0] ""
 "đi;\n"
 "để xóa đi, sử dụng:"
 
-#: builtin/remote.c:809
+#: builtin/remote.c:810
 #, 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:910
+#: builtin/remote.c:911
 #, 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:913
+#: builtin/remote.c:914
 msgid " tracked"
 msgstr " được theo dõi"
 
-#: builtin/remote.c:915
+#: builtin/remote.c:916
 msgid " stale (use 'git remote prune' to remove)"
 msgstr " cũ rích (dùng “git remote prune” để gỡ bỏ)"
 
-#: builtin/remote.c:917
+#: builtin/remote.c:918
 msgid " ???"
 msgstr " ???"
 
-#: builtin/remote.c:958
+#: builtin/remote.c:959
 #, 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:966
+#: builtin/remote.c:967
 #, c-format
 msgid "rebases interactively onto remote %s"
 msgstr "thực hiện rebase một cách tương tác trên máy chủ %s"
 
-#: builtin/remote.c:967
+#: builtin/remote.c:968
 #, c-format
 msgid "rebases onto remote %s"
 msgstr "thực hiện rebase trên máy chủ %s"
 
-#: builtin/remote.c:970
+#: builtin/remote.c:971
 #, c-format
 msgid " merges with remote %s"
 msgstr " hòa trộn với máy chủ %s"
 
-#: builtin/remote.c:973
+#: builtin/remote.c:974
 #, c-format
 msgid "merges with remote %s"
 msgstr "hòa trộn với máy chủ %s"
 
-#: builtin/remote.c:976
+#: builtin/remote.c:977
 #, c-format
 msgid "%-*s    and with remote %s\n"
 msgstr "%-*s    và với máy chủ %s\n"
 
-#: builtin/remote.c:1019
+#: builtin/remote.c:1020
 msgid "create"
 msgstr "tạo"
 
-#: builtin/remote.c:1022
+#: builtin/remote.c:1023
 msgid "delete"
 msgstr "xóa"
 
-#: builtin/remote.c:1026
+#: builtin/remote.c:1027
 msgid "up to date"
 msgstr "đã cập nhật"
 
-#: builtin/remote.c:1029
+#: builtin/remote.c:1030
 msgid "fast-forwardable"
 msgstr "có-thể-chuyển-tiếp-nhanh"
 
-#: builtin/remote.c:1032
+#: builtin/remote.c:1033
 msgid "local out of date"
 msgstr "dữ liệu nội bộ đã cũ"
 
-#: builtin/remote.c:1039
+#: builtin/remote.c:1040
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr "    %-*s ép buộc thành %-*s (%s)"
 
-#: builtin/remote.c:1042
+#: builtin/remote.c:1043
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr "    %-*s đẩy lên thành %-*s (%s)"
 
-#: builtin/remote.c:1046
+#: builtin/remote.c:1047
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr "    %-*s ép buộc thành %s"
 
-#: builtin/remote.c:1049
+#: builtin/remote.c:1050
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr "    %-*s đẩy lên thành %s"
 
-#: builtin/remote.c:1117
+#: builtin/remote.c:1118
 msgid "do not query remotes"
 msgstr "không truy vấn các máy chủ"
 
-#: builtin/remote.c:1144
+#: builtin/remote.c:1145
 #, c-format
 msgid "* remote %s"
 msgstr "* máy chủ %s"
 
-#: builtin/remote.c:1145
+#: builtin/remote.c:1146
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr "  URL để lấy về: %s"
 
-#: builtin/remote.c:1146 builtin/remote.c:1162 builtin/remote.c:1301
+#: builtin/remote.c:1147 builtin/remote.c:1163 builtin/remote.c:1302
 msgid "(no URL)"
 msgstr "(không có URL)"
 
@@ -12178,181 +12374,181 @@ msgstr "(không có URL)"
 #. with the one in " Fetch URL: %s"
 #. translation.
 #.
-#: builtin/remote.c:1160 builtin/remote.c:1162
+#: builtin/remote.c:1161 builtin/remote.c:1163
 #, c-format
 msgid "  Push  URL: %s"
 msgstr "  URL để đẩy lên: %s"
 
-#: builtin/remote.c:1164 builtin/remote.c:1166 builtin/remote.c:1168
+#: builtin/remote.c:1165 builtin/remote.c:1167 builtin/remote.c:1169
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr "  Nhánh HEAD: %s"
 
-#: builtin/remote.c:1164
+#: builtin/remote.c:1165
 msgid "(not queried)"
 msgstr "(không yêu cầu)"
 
-#: builtin/remote.c:1166
+#: builtin/remote.c:1167
 msgid "(unknown)"
 msgstr "(không hiểu)"
 
-#: builtin/remote.c:1170
+#: builtin/remote.c:1171
 #, 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:1182
+#: builtin/remote.c:1183
 #, 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:1185 builtin/remote.c:1211
+#: builtin/remote.c:1186 builtin/remote.c:1212
 msgid " (status not queried)"
 msgstr " (trạng thái không được yêu cầu)"
 
-#: builtin/remote.c:1194
+#: builtin/remote.c:1195
 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:1202
+#: builtin/remote.c:1203
 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:1208
+#: builtin/remote.c:1209
 #, 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:1229
+#: builtin/remote.c:1230
 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:1231
+#: builtin/remote.c:1232
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr "xóa refs/remotes/<tên>/HEAD"
 
-#: builtin/remote.c:1246
+#: builtin/remote.c:1247
 msgid "Cannot determine remote HEAD"
 msgstr "Không thể xác định được HEAD máy chủ"
 
-#: builtin/remote.c:1248
+#: builtin/remote.c:1249
 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:1258
+#: builtin/remote.c:1259
 #, c-format
 msgid "Could not delete %s"
 msgstr "Không thể xóa bỏ %s"
 
-#: builtin/remote.c:1266
+#: builtin/remote.c:1267
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr "Không phải là tham chiếu hợp lệ: %s"
 
-#: builtin/remote.c:1268
+#: builtin/remote.c:1269
 #, c-format
 msgid "Could not setup %s"
 msgstr "Không thể cài đặt %s"
 
-#: builtin/remote.c:1286
+#: builtin/remote.c:1287
 #, 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:1287
+#: builtin/remote.c:1288
 #, c-format
 msgid " %s has become dangling!"
 msgstr " %s đã trở thành không đầu (không được quản lý)!"
 
-#: builtin/remote.c:1297
+#: builtin/remote.c:1298
 #, c-format
 msgid "Pruning %s"
 msgstr "Đang xén bớt %s"
 
-#: builtin/remote.c:1298
+#: builtin/remote.c:1299
 #, c-format
 msgid "URL: %s"
 msgstr "URL: %s"
 
-#: builtin/remote.c:1314
+#: builtin/remote.c:1315
 #, c-format
 msgid " * [would prune] %s"
 msgstr " * [nên xén bớt] %s"
 
-#: builtin/remote.c:1317
+#: builtin/remote.c:1318
 #, c-format
 msgid " * [pruned] %s"
 msgstr " * [đã bị xén] %s"
 
-#: builtin/remote.c:1362
+#: builtin/remote.c:1363
 msgid "prune remotes after fetching"
 msgstr "cắt máy chủ sau khi lấy về"
 
-#: builtin/remote.c:1425 builtin/remote.c:1479 builtin/remote.c:1547
+#: builtin/remote.c:1426 builtin/remote.c:1480 builtin/remote.c:1548
 #, c-format
 msgid "No such remote '%s'"
 msgstr "Không có máy chủ nào có tên “%s”"
 
-#: builtin/remote.c:1441
+#: builtin/remote.c:1442
 msgid "add branch"
 msgstr "thêm nhánh"
 
-#: builtin/remote.c:1448
+#: builtin/remote.c:1449
 msgid "no remote specified"
 msgstr "chưa chỉ ra máy chủ nào"
 
-#: builtin/remote.c:1465
+#: builtin/remote.c:1466
 msgid "query push URLs rather than fetch URLs"
 msgstr "truy vấn đẩy URL thay vì lấy"
 
-#: builtin/remote.c:1467
+#: builtin/remote.c:1468
 msgid "return all URLs"
 msgstr "trả về mọi URL"
 
-#: builtin/remote.c:1495
+#: builtin/remote.c:1496
 #, 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:1521
+#: builtin/remote.c:1522
 msgid "manipulate push URLs"
 msgstr "đẩy các “URL” bằng tay"
 
-#: builtin/remote.c:1523
+#: builtin/remote.c:1524
 msgid "add URL"
 msgstr "thêm URL"
 
-#: builtin/remote.c:1525
+#: builtin/remote.c:1526
 msgid "delete URLs"
 msgstr "xóa URLs"
 
-#: builtin/remote.c:1532
+#: builtin/remote.c:1533
 msgid "--add --delete doesn't make sense"
 msgstr "--add --delete không hợp lý"
 
-#: builtin/remote.c:1573
+#: builtin/remote.c:1572
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr "Kiểu mẫu URL cũ không hợp lệ: %s"
 
-#: builtin/remote.c:1581
+#: builtin/remote.c:1580
 #, c-format
 msgid "No such URL found: %s"
 msgstr "Không tìm thấy URL như vậy: %s"
 
-#: builtin/remote.c:1583
+#: builtin/remote.c:1582
 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:1597
+#: builtin/remote.c:1598
 msgid "be verbose; must be placed before a subcommand"
 msgstr "chi tiết; phải được đặt trước một lệnh-con"
 
-#: builtin/remote.c:1628
+#: builtin/remote.c:1629
 #, c-format
 msgid "Unknown subcommand: %s"
 msgstr "Không hiểu câu lệnh con: %s"
@@ -12449,7 +12645,7 @@ msgstr "không thể xóa các gói trong một kho đối_tượng_vĩ_đại"
 msgid "--keep-unreachable and -A are incompatible"
 msgstr "--keep-unreachable và -A xung khắc nhau"
 
-#: builtin/repack.c:406 builtin/worktree.c:116
+#: builtin/repack.c:406 builtin/worktree.c:134
 #, c-format
 msgid "failed to remove '%s'"
 msgstr "gặp lỗi khi gỡ bỏ “%s”"
@@ -12583,121 +12779,121 @@ msgstr "hòa trộn"
 msgid "keep"
 msgstr "giữ lại"
 
-#: builtin/reset.c:77
+#: builtin/reset.c:78
 msgid "You do not have a valid HEAD."
 msgstr "Bạn không có HEAD nào hợp lệ."
 
-#: builtin/reset.c:79
+#: builtin/reset.c:80
 msgid "Failed to find tree of HEAD."
 msgstr "Gặp lỗi khi tìm cây của HEAD."
 
-#: builtin/reset.c:85
+#: builtin/reset.c:86
 #, c-format
 msgid "Failed to find tree of %s."
 msgstr "Gặp lỗi khi tìm cây của %s."
 
-#: builtin/reset.c:103
+#: builtin/reset.c:113
 #, c-format
 msgid "HEAD is now at %s"
 msgstr "HEAD hiện giờ tại %s"
 
-#: builtin/reset.c:186
+#: builtin/reset.c:197
 #, c-format
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr "Không thể thực hiện một %s reset ở giữa của quá trình hòa trộn."
 
-#: builtin/reset.c:286
+#: builtin/reset.c:297
 msgid "be quiet, only report errors"
 msgstr "làm việc ở chế độ im lặng, chỉ hiển thị khi có lỗi"
 
-#: builtin/reset.c:288
+#: builtin/reset.c:299
 msgid "reset HEAD and index"
 msgstr "đặt lại (reset) HEAD và bảng mục lục"
 
-#: builtin/reset.c:289
+#: builtin/reset.c:300
 msgid "reset only HEAD"
 msgstr "chỉ đặt lại (reset) HEAD"
 
-#: builtin/reset.c:291 builtin/reset.c:293
+#: builtin/reset.c:302 builtin/reset.c:304
 msgid "reset HEAD, index and working tree"
 msgstr "đặt lại HEAD, bảng mục lục và cây làm việc"
 
-#: builtin/reset.c:295
+#: builtin/reset.c:306
 msgid "reset HEAD but keep local changes"
 msgstr "đặt lại HEAD nhưng giữ lại các thay đổi nội bộ"
 
-#: builtin/reset.c:301
+#: builtin/reset.c:312
 msgid "record only the fact that removed paths will be added later"
 msgstr "chỉ ghi lại những đường dẫn thực sự sẽ được thêm vào sau này"
 
-#: builtin/reset.c:320
+#: builtin/reset.c:329
 #, c-format
 msgid "Failed to resolve '%s' as a valid revision."
 msgstr "Gặp lỗi khi phân giải “%s” như là điểm xét duyệt hợp lệ."
 
-#: builtin/reset.c:328
+#: builtin/reset.c:337
 #, c-format
 msgid "Failed to resolve '%s' as a valid tree."
 msgstr "Gặp lỗi khi phân giải “%s” như là một cây (tree) hợp lệ."
 
-#: builtin/reset.c:337
+#: builtin/reset.c:346
 msgid "--patch is incompatible with --{hard,mixed,soft}"
 msgstr "--patch xung khắc với --{hard,mixed,soft}"
 
-#: builtin/reset.c:346
+#: builtin/reset.c:355
 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
 msgstr ""
 "--mixed với các đường dẫn không còn dùng nữa; hãy thay thế bằng lệnh “git "
 "reset -- <đường_dẫn>”."
 
-#: builtin/reset.c:348
+#: builtin/reset.c:357
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr "Không thể thực hiện lệnh %s reset với các đường dẫn."
 
-#: builtin/reset.c:358
+#: builtin/reset.c:367
 #, c-format
 msgid "%s reset is not allowed in a bare repository"
 msgstr "%s reset không được phép trên kho thuần"
 
-#: builtin/reset.c:362
+#: builtin/reset.c:371
 msgid "-N can only be used with --mixed"
 msgstr "-N chỉ được dùng khi có --mixed"
 
-#: builtin/reset.c:379
+#: builtin/reset.c:388
 msgid "Unstaged changes after reset:"
 msgstr "Những thay đổi được đưa ra khỏi bệ phóng sau khi reset:"
 
-#: builtin/reset.c:385
+#: builtin/reset.c:394
 #, c-format
 msgid "Could not reset index file to revision '%s'."
 msgstr "Không thể đặt lại (reset) bảng mục lục thành điểm xét duyệt “%s”."
 
-#: builtin/reset.c:389
+#: builtin/reset.c:398
 msgid "Could not write new index file."
 msgstr "Không thể ghi tập tin lưu bảng mục lục mới."
 
-#: builtin/rev-list.c:358
+#: builtin/rev-list.c:361
 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:394
+#: builtin/rev-parse.c:402
 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:399
+#: builtin/rev-parse.c:407
 msgid "keep the `--` passed as an arg"
 msgstr "giữ lại “--” chuyển sang làm tham số"
 
-#: builtin/rev-parse.c:401
+#: builtin/rev-parse.c:409
 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:404
+#: builtin/rev-parse.c:412
 msgid "output in stuck long form"
 msgstr "kết xuất trong định dạng gậy dài"
 
-#: builtin/rev-parse.c:535
+#: builtin/rev-parse.c:545
 msgid ""
 "git rev-parse --parseopt [<options>] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
@@ -12788,11 +12984,11 @@ msgstr "chấp nhận chuyển giao mà không ghi chú gì"
 msgid "keep redundant, empty commits"
 msgstr "giữ lại các lần chuyển giao dư thừa, rỗng"
 
-#: builtin/revert.c:212
+#: builtin/revert.c:214
 msgid "revert failed"
 msgstr "hoàn nguyên gặp lỗi"
 
-#: builtin/revert.c:225
+#: builtin/revert.c:227
 msgid "cherry-pick failed"
 msgstr "cherry-pick gặp lỗi"
 
@@ -12857,17 +13053,17 @@ msgstr "cho phép gỡ bỏ đệ qui"
 msgid "exit with a zero status even if nothing matched"
 msgstr "thoát ra với trạng thái khác không thậm chí nếu không có gì khớp"
 
-#: builtin/rm.c:308
+#: builtin/rm.c:307
 #, c-format
 msgid "not removing '%s' recursively without -r"
 msgstr "không thể gỡ bỏ “%s” một cách đệ qui mà không có tùy chọn -r"
 
-#: builtin/rm.c:347
+#: builtin/rm.c:346
 #, c-format
 msgid "git rm: unable to remove %s"
 msgstr "git rm: không thể gỡ bỏ %s"
 
-#: builtin/rm.c:370
+#: builtin/rm.c:369
 #, c-format
 msgid "could not remove '%s'"
 msgstr "không thể gỡ bỏ “%s”"
@@ -12904,27 +13100,27 @@ msgstr "in các trạng thái từ phần hướng dẫn trên máy dịch vụ"
 msgid "git shortlog [<options>] [<revision-range>] [[--] [<path>...]]"
 msgstr "git shortlog [<các-tùy-chọn>] [<vùng-xét-duyệt>] [[--] [<đường-dẫn>…]]"
 
-#: builtin/shortlog.c:249
+#: builtin/shortlog.c:263
 msgid "Group by committer rather than author"
 msgstr "Nhóm theo người chuyển giao thay vì tác giả"
 
-#: builtin/shortlog.c:251
+#: builtin/shortlog.c:265
 msgid "sort output according to the number of commits per author"
 msgstr "sắp xếp kết xuất tuân theo số lượng chuyển giao trên mỗi tác giả"
 
-#: builtin/shortlog.c:253
+#: builtin/shortlog.c:267
 msgid "Suppress commit descriptions, only provides commit count"
 msgstr "Chặn mọi mô tả lần chuyển giao, chỉ đưa ra số lượng lần chuyển giao"
 
-#: builtin/shortlog.c:255
+#: builtin/shortlog.c:269
 msgid "Show the email address of each author"
 msgstr "Hiển thị thư điện tử cho từng tác giả"
 
-#: builtin/shortlog.c:256
+#: builtin/shortlog.c:270
 msgid "w[,i1[,i2]]"
 msgstr "w[,i1[,i2]]"
 
-#: builtin/shortlog.c:257
+#: builtin/shortlog.c:271
 msgid "Linewrap output"
 msgstr "Ngắt dòng khi quá dài"
 
@@ -13125,35 +13321,35 @@ msgstr "giữ và xóa bỏ mọi dòng bắt đầu bằng ký tự ghi chú"
 msgid "prepend comment character and space to each line"
 msgstr "treo trước ký tự ghi chú và ký tự khoảng trắng cho từng dòng"
 
-#: builtin/submodule--helper.c:25 builtin/submodule--helper.c:1075
+#: builtin/submodule--helper.c:24 builtin/submodule--helper.c:1094
 #, c-format
 msgid "No such ref: %s"
 msgstr "Không có tham chiếu nào như thế: %s"
 
-#: builtin/submodule--helper.c:32 builtin/submodule--helper.c:1084
+#: builtin/submodule--helper.c:31 builtin/submodule--helper.c:1103
 #, c-format
 msgid "Expecting a full ref name, got %s"
 msgstr "Cần tên tham chiếu dạng đầy đủ, nhưng lại nhận được %s"
 
-#: builtin/submodule--helper.c:72
+#: builtin/submodule--helper.c:71
 #, c-format
 msgid "cannot strip one component off url '%s'"
 msgstr "không thể cắt bỏ một thành phần ra khỏi “%s” url"
 
-#: builtin/submodule--helper.c:305 builtin/submodule--helper.c:630
+#: builtin/submodule--helper.c:302 builtin/submodule--helper.c:623
 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:310
+#: builtin/submodule--helper.c:307
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
 msgstr "git submodule--helper list [--prefix=</đường/dẫn>] [</đường/dẫn>…]"
 
-#: builtin/submodule--helper.c:356 builtin/submodule--helper.c:380
+#: builtin/submodule--helper.c:350 builtin/submodule--helper.c:374
 #, c-format
 msgid "No url found for submodule path '%s' in .gitmodules"
 msgstr "Không tìm thấy url cho đường dẫn mô-đun-con “%s” trong .gitmodules"
 
-#: builtin/submodule--helper.c:395
+#: builtin/submodule--helper.c:389
 #, c-format
 msgid ""
 "could not lookup configuration '%s'. Assuming this repository is its own "
@@ -13162,81 +13358,81 @@ msgstr ""
 "không thể tìm thấy cấu hình “%s”. Coi rằng kho này là thượng nguồn có quyền "
 "sở hữu chính nó."
 
-#: builtin/submodule--helper.c:406
+#: builtin/submodule--helper.c:400
 #, c-format
 msgid "Failed to register url for submodule path '%s'"
 msgstr "Gặp lỗi khi đăng ký url cho đường dẫn mô-đun-con “%s”"
 
-#: builtin/submodule--helper.c:410
+#: builtin/submodule--helper.c:404
 #, c-format
 msgid "Submodule '%s' (%s) registered for path '%s'\n"
 msgstr "Mô-đun-con “%s” (%s) được đăng ký cho đường dẫn “%s”\n"
 
-#: builtin/submodule--helper.c:420
+#: builtin/submodule--helper.c:414
 #, c-format
 msgid "warning: command update mode suggested for submodule '%s'\n"
 msgstr "cảnh báo: chế độ lệnh cập nhật được gợi ý cho mô-đun-con “%s”\n"
 
-#: builtin/submodule--helper.c:427
+#: builtin/submodule--helper.c:421
 #, c-format
 msgid "Failed to register update mode for submodule path '%s'"
 msgstr "Gặp lỗi khi đăng ký chế độ cập nhật cho đường dẫn mô-đun-con “%s”"
 
-#: builtin/submodule--helper.c:443
+#: builtin/submodule--helper.c:437
 msgid "Suppress output for initializing a submodule"
 msgstr "Chặn kết xuất cho khởi tạo một mô-đun-con"
 
-#: builtin/submodule--helper.c:448
+#: builtin/submodule--helper.c:442
 msgid "git submodule--helper init [<path>]"
 msgstr "git submodule--helper init [</đường/dẫn>]"
 
-#: builtin/submodule--helper.c:476
+#: builtin/submodule--helper.c:470
 msgid "git submodule--helper name <path>"
 msgstr "git submodule--helper name </đường/dẫn>"
 
-#: builtin/submodule--helper.c:482
+#: builtin/submodule--helper.c:475
 #, 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:565 builtin/submodule--helper.c:568
+#: builtin/submodule--helper.c:558 builtin/submodule--helper.c:561
 #, c-format
 msgid "submodule '%s' cannot add alternate: %s"
 msgstr "mô-đun-con “%s” không thể thêm thay thế: %s"
 
-#: builtin/submodule--helper.c:604
+#: builtin/submodule--helper.c:597
 #, c-format
 msgid "Value '%s' for submodule.alternateErrorStrategy is not recognized"
 msgstr "Giá trị “%s” cho submodule.alternateErrorStrategy không được thừa nhận"
 
-#: builtin/submodule--helper.c:611
+#: builtin/submodule--helper.c:604
 #, c-format
 msgid "Value '%s' for submodule.alternateLocation is not recognized"
 msgstr "Giá trị “%s” cho submodule.alternateLocation không được thừa nhận"
 
-#: builtin/submodule--helper.c:633
+#: builtin/submodule--helper.c:626
 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:636
+#: builtin/submodule--helper.c:629
 msgid "name of the new submodule"
 msgstr "tên của mô-đun-con mới"
 
-#: builtin/submodule--helper.c:639
+#: builtin/submodule--helper.c:632
 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:645
+#: builtin/submodule--helper.c:638
 msgid "depth for shallow clones"
 msgstr "chiều sâu lịch sử khi tạo bản sao"
 
-#: builtin/submodule--helper.c:648 builtin/submodule--helper.c:993
+#: builtin/submodule--helper.c:641 builtin/submodule--helper.c:1012
 msgid "force cloning progress"
 msgstr "ép buộc tiến trình nhân bản"
 
-#: builtin/submodule--helper.c:653
+#: builtin/submodule--helper.c:646
 msgid ""
 "git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
 "<repository>] [--name <name>] [--depth <depth>] --url <url> --path <path>"
@@ -13244,84 +13440,84 @@ msgstr ""
 "git submodule--helper clone [--prefix=</đường/dẫn>] [--quiet] [--reference "
 "<kho>] [--name <tên>] [--depth <sâu>] [--url <url>] [</đường/dẫn>…]"
 
-#: builtin/submodule--helper.c:684
+#: builtin/submodule--helper.c:677
 #, 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:699
+#: builtin/submodule--helper.c:692
 #, 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:764
+#: builtin/submodule--helper.c:757
 #, c-format
 msgid "Submodule path '%s' not initialized"
 msgstr "Đường dẫn mô-đun-con “%s” chưa được khởi tạo"
 
-#: builtin/submodule--helper.c:768
+#: builtin/submodule--helper.c:761
 msgid "Maybe you want to use 'update --init'?"
 msgstr "Có lẽ bạn là bạn muốn dùng \"update --init\" phải không?"
 
-#: builtin/submodule--helper.c:793
+#: builtin/submodule--helper.c:790
 #, c-format
 msgid "Skipping unmerged submodule %s"
 msgstr "Bỏ qua các mô-đun-con chưa được hòa trộn %s"
 
-#: builtin/submodule--helper.c:814
+#: builtin/submodule--helper.c:819
 #, c-format
 msgid "Skipping submodule '%s'"
 msgstr "Bỏ qua mô-đun-con “%s”"
 
-#: builtin/submodule--helper.c:942
+#: builtin/submodule--helper.c:952
 #, c-format
 msgid "Failed to clone '%s'. Retry scheduled"
 msgstr "Gặp lỗi khi nhân bản “%s”. Thử lại lịch trình"
 
-#: builtin/submodule--helper.c:953
+#: builtin/submodule--helper.c:963
 #, c-format
 msgid "Failed to clone '%s' a second time, aborting"
 msgstr "Gặp lỗi khi nhân bản “%s” lần thứ hai nên bãi bỏ"
 
-#: builtin/submodule--helper.c:974 builtin/submodule--helper.c:1162
+#: builtin/submodule--helper.c:993 builtin/submodule--helper.c:1213
 msgid "path into the working tree"
 msgstr "đường dẫn đến cây làm việc"
 
-#: builtin/submodule--helper.c:977
+#: builtin/submodule--helper.c:996
 msgid "path into the working tree, across nested submodule boundaries"
 msgstr "đường dẫn đến cây làm việc, chéo biên giới mô-đun-con lồng nhau"
 
-#: builtin/submodule--helper.c:981
+#: builtin/submodule--helper.c:1000
 msgid "rebase, merge, checkout or none"
 msgstr "rebase, merge, checkout hoặc không làm gì cả"
 
-#: builtin/submodule--helper.c:985
+#: builtin/submodule--helper.c:1004
 msgid "Create a shallow clone truncated to the specified number of revisions"
 msgstr ""
 "Tạo một bản sao nông được cắt ngắn thành số lượng điểm xét duyệt đã cho"
 
-#: builtin/submodule--helper.c:988
+#: builtin/submodule--helper.c:1007
 msgid "parallel jobs"
 msgstr "công việc đồng thời"
 
-#: builtin/submodule--helper.c:990
+#: builtin/submodule--helper.c:1009
 msgid "whether the initial clone should follow the shallow recommendation"
 msgstr "nhân bản lần đầu có nên theo khuyến nghị là nông hay không"
 
-#: builtin/submodule--helper.c:991
+#: builtin/submodule--helper.c:1010
 msgid "don't print cloning progress"
 msgstr "đừng in tiến trình nhân bản"
 
-#: builtin/submodule--helper.c:998
+#: builtin/submodule--helper.c:1017
 msgid "git submodule--helper update_clone [--prefix=<path>] [<path>...]"
 msgstr ""
 "git submodule--helper update_clone [--prefix=</đường/dẫn>] [</đường/dẫn>…]"
 
-#: builtin/submodule--helper.c:1008
+#: builtin/submodule--helper.c:1030
 msgid "bad value for update parameter"
 msgstr "giá trị cho  tham số cập nhật bị sai"
 
-#: builtin/submodule--helper.c:1079
+#: builtin/submodule--helper.c:1098
 #, c-format
 msgid ""
 "Submodule (%s) branch configured to inherit branch from superproject, but "
@@ -13330,20 +13526,20 @@ msgstr ""
 "Nhánh mô-đun-con (%s) được cấu hình kế thừa nhánh từ siêu dự án, nhưng siêu "
 "dự án lại không trên bất kỳ nhánh nào"
 
-#: builtin/submodule--helper.c:1163
+#: builtin/submodule--helper.c:1214
 msgid "recurse into submodules"
 msgstr "đệ quy vào trong mô-đun-con"
 
-#: builtin/submodule--helper.c:1169
+#: builtin/submodule--helper.c:1220
 msgid "git submodule--helper embed-git-dir [<path>...]"
 msgstr "git submodule--helper embed-git-dir [</đường/dẫn>…]"
 
-#: builtin/submodule--helper.c:1232
+#: builtin/submodule--helper.c:1278
 #, c-format
 msgid "%s doesn't support --super-prefix"
 msgstr "%s không hỗ trợ --super-prefix"
 
-#: builtin/submodule--helper.c:1238
+#: builtin/submodule--helper.c:1284
 #, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
 msgstr "“%s” không phải là lệnh con submodule--helper hợp lệ"
@@ -13356,23 +13552,23 @@ msgstr "git symbolic-ref [<các-tùy-chọn>] <tên> [<t.chiếu>]"
 msgid "git symbolic-ref -d [-q] <name>"
 msgstr "git symbolic-ref -d [-q] <tên>"
 
-#: builtin/symbolic-ref.c:41
+#: builtin/symbolic-ref.c:40
 msgid "suppress error message for non-symbolic (detached) refs"
 msgstr "chặn các thông tin lỗi cho các tham chiếu “không-mềm” (bị tách ra)"
 
-#: builtin/symbolic-ref.c:42
+#: builtin/symbolic-ref.c:41
 msgid "delete symbolic ref"
 msgstr "xóa tham chiếu mềm"
 
-#: builtin/symbolic-ref.c:43
+#: builtin/symbolic-ref.c:42
 msgid "shorten ref output"
 msgstr "làm ngắn kết xuất ref (tham chiếu)"
 
-#: builtin/symbolic-ref.c:44 builtin/update-ref.c:363
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:362
 msgid "reason"
 msgstr "lý do"
 
-#: builtin/symbolic-ref.c:44 builtin/update-ref.c:363
+#: builtin/symbolic-ref.c:43 builtin/update-ref.c:362
 msgid "reason of the update"
 msgstr "lý do cập nhật"
 
@@ -13402,17 +13598,17 @@ msgstr ""
 msgid "git tag -v [--format=<format>] <tagname>..."
 msgstr "git tag -v [--format=<định_dạng>]  <tên-thẻ>…"
 
-#: builtin/tag.c:84
+#: builtin/tag.c:86
 #, c-format
 msgid "tag '%s' not found."
 msgstr "không tìm thấy tìm thấy thẻ “%s”."
 
-#: builtin/tag.c:100
+#: builtin/tag.c:102
 #, c-format
 msgid "Deleted tag '%s' (was %s)\n"
 msgstr "Thẻ đã bị xóa “%s” (từng là %s)\n"
 
-#: builtin/tag.c:129
+#: builtin/tag.c:131
 #, c-format
 msgid ""
 "\n"
@@ -13425,7 +13621,7 @@ msgstr ""
 "  %s\n"
 "Những dòng được bắt đầu bằng “%c” sẽ được bỏ qua.\n"
 
-#: builtin/tag.c:133
+#: builtin/tag.c:135
 #, c-format
 msgid ""
 "\n"
@@ -13440,143 +13636,143 @@ 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:211
+#: builtin/tag.c:189
 msgid "unable to sign the tag"
 msgstr "không thể ký thẻ"
 
-#: builtin/tag.c:213
+#: builtin/tag.c:191
 msgid "unable to write tag file"
 msgstr "không thể ghi vào tập tin lưu thẻ"
 
-#: builtin/tag.c:237
+#: builtin/tag.c:215
 msgid "bad object type."
 msgstr "kiểu đối tượng sai."
 
-#: builtin/tag.c:283
+#: builtin/tag.c:261
 msgid "no tag message?"
 msgstr "không có chú thích gì cho cho thẻ à?"
 
-#: builtin/tag.c:290
+#: builtin/tag.c:268
 #, 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:398
+#: builtin/tag.c:376
 msgid "list tag names"
 msgstr "chỉ liệt kê tên các thẻ"
 
-#: builtin/tag.c:400
+#: builtin/tag.c:378
 msgid "print <n> lines of each tag message"
 msgstr "hiển thị <n> dòng cho mỗi ghi chú"
 
-#: builtin/tag.c:402
+#: builtin/tag.c:380
 msgid "delete tags"
 msgstr "xóa thẻ"
 
-#: builtin/tag.c:403
+#: builtin/tag.c:381
 msgid "verify tags"
 msgstr "thẩm tra thẻ"
 
-#: builtin/tag.c:405
+#: builtin/tag.c:383
 msgid "Tag creation options"
 msgstr "Tùy chọn tạo thẻ"
 
-#: builtin/tag.c:407
+#: builtin/tag.c:385
 msgid "annotated tag, needs a message"
 msgstr "để chú giải cho thẻ, cần một lời ghi chú"
 
-#: builtin/tag.c:409
+#: builtin/tag.c:387
 msgid "tag message"
 msgstr "phần chú thích cho thẻ"
 
-#: builtin/tag.c:411
+#: builtin/tag.c:389
 msgid "annotated and GPG-signed tag"
 msgstr "thẻ chú giải và ký kiểu GPG"
 
-#: builtin/tag.c:415
+#: builtin/tag.c:393
 msgid "use another key to sign the tag"
 msgstr "dùng kháo khác để ký thẻ"
 
-#: builtin/tag.c:416
+#: builtin/tag.c:394
 msgid "replace the tag if exists"
 msgstr "thay thế nếu thẻ đó đã có trước"
 
-#: builtin/tag.c:417 builtin/update-ref.c:369
+#: builtin/tag.c:395 builtin/update-ref.c:368
 msgid "create a reflog"
 msgstr "tạo một reflog"
 
-#: builtin/tag.c:419
+#: builtin/tag.c:397
 msgid "Tag listing options"
 msgstr "Các tùy chọn liệt kê thẻ"
 
-#: builtin/tag.c:420
+#: builtin/tag.c:398
 msgid "show tag list in columns"
 msgstr "hiển thị danh sách thẻ trong các cột"
 
-#: builtin/tag.c:421 builtin/tag.c:423
+#: builtin/tag.c:399 builtin/tag.c:401
 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:422 builtin/tag.c:424
+#: builtin/tag.c:400 builtin/tag.c:402
 msgid "print only tags that don't contain the commit"
 msgstr "chỉ hiển thị những thẻ mà nó không chứa lần chuyển giao"
 
-#: builtin/tag.c:425
+#: builtin/tag.c:403
 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:426
+#: builtin/tag.c:404
 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:431
+#: builtin/tag.c:409
 msgid "print only tags of the object"
 msgstr "chỉ hiển thị các thẻ của đối tượng"
 
-#: builtin/tag.c:470
+#: builtin/tag.c:453
 msgid "--column and -n are incompatible"
 msgstr "--column và -n xung khắc nhau"
 
-#: builtin/tag.c:492
+#: builtin/tag.c:475
 msgid "-n option is only allowed in list mode"
 msgstr "tùy chọn -n chỉ cho phép dùng trong chế độ liệt kê"
 
-#: builtin/tag.c:494
+#: builtin/tag.c:477
 msgid "--contains option is only allowed in list mode"
 msgstr "tùy chọn --contains chỉ cho phép dùng trong chế độ liệt kê"
 
-#: builtin/tag.c:496
+#: builtin/tag.c:479
 msgid "--no-contains option is only allowed in list mode"
 msgstr "tùy chọn --no-contains chỉ cho phép dùng trong chế độ liệt kê"
 
-#: builtin/tag.c:498
+#: builtin/tag.c:481
 msgid "--points-at option is only allowed in list mode"
 msgstr "tùy chọn --points-at chỉ cho phép dùng trong chế độ liệt kê"
 
-#: builtin/tag.c:500
+#: builtin/tag.c:483
 msgid "--merged and --no-merged options are only allowed in list mode"
 msgstr ""
 "tùy chọn --merged và --no-merged chỉ cho phép dùng trong chế độ liệt kê"
 
-#: builtin/tag.c:511
+#: builtin/tag.c:494
 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:530
+#: builtin/tag.c:513
 msgid "too many params"
 msgstr "quá nhiều đối số"
 
-#: builtin/tag.c:536
+#: builtin/tag.c:519
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr "“%s” không phải thẻ hợp lệ."
 
-#: builtin/tag.c:541
+#: builtin/tag.c:524
 #, c-format
 msgid "tag '%s' already exists"
 msgstr "Thẻ “%s” đã tồn tại rồi"
 
-#: builtin/tag.c:571
+#: builtin/tag.c:554
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr "Đã cập nhật thẻ “%s” (trước là %s)\n"
@@ -13645,131 +13841,131 @@ msgstr "thông tin thống kê thư mục không thay đổi sau khi xóa thư m
 msgid " OK"
 msgstr " Đồng ý"
 
-#: builtin/update-index.c:569
+#: builtin/update-index.c:571
 msgid "git update-index [<options>] [--] [<file>...]"
 msgstr "git update-index [<các-tùy-chọn>] [--] [<tập-tin>…]"
 
-#: builtin/update-index.c:924
+#: builtin/update-index.c:926
 msgid "continue refresh even when index needs update"
 msgstr "tiếp tục làm mới ngay cả khi bảng mục lục cần được cập nhật"
 
-#: builtin/update-index.c:927
+#: builtin/update-index.c:929
 msgid "refresh: ignore submodules"
 msgstr "refresh: lờ đi mô-đun-con"
 
-#: builtin/update-index.c:930
+#: builtin/update-index.c:932
 msgid "do not ignore new files"
 msgstr "không bỏ qua các tập tin mới tạo"
 
-#: builtin/update-index.c:932
+#: builtin/update-index.c:934
 msgid "let files replace directories and vice-versa"
 msgstr "để các tập tin thay thế các thư mục và “vice-versa”"
 
-#: builtin/update-index.c:934
+#: builtin/update-index.c:936
 msgid "notice files missing from worktree"
 msgstr "thông báo các tập-tin thiếu trong thư-mục làm việc"
 
-#: builtin/update-index.c:936
+#: builtin/update-index.c:938
 msgid "refresh even if index contains unmerged entries"
 msgstr ""
 "làm tươi mới thậm chí khi bảng mục lục chứa các mục tin chưa được hòa trộn"
 
-#: builtin/update-index.c:939
+#: builtin/update-index.c:941
 msgid "refresh stat information"
 msgstr "lấy lại thông tin thống kê"
 
-#: builtin/update-index.c:943
+#: builtin/update-index.c:945
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr "giống --refresh, nhưng bỏ qua các cài đặt “assume-unchanged”"
 
-#: builtin/update-index.c:947
+#: builtin/update-index.c:949
 msgid "<mode>,<object>,<path>"
 msgstr "<chế_độ>,<đối_tượng>,<đường_dẫn>"
 
-#: builtin/update-index.c:948
+#: builtin/update-index.c:950
 msgid "add the specified entry to the index"
 msgstr "thêm các tập tin đã chỉ ra vào bảng mục lục"
 
-#: builtin/update-index.c:957
+#: builtin/update-index.c:959
 msgid "mark files as \"not changing\""
 msgstr "Đánh dấu các tập tin là \"không thay đổi\""
 
-#: builtin/update-index.c:960
+#: builtin/update-index.c:962
 msgid "clear assumed-unchanged bit"
 msgstr "xóa bít assumed-unchanged (giả định là không thay đổi)"
 
-#: builtin/update-index.c:963
+#: builtin/update-index.c:965
 msgid "mark files as \"index-only\""
 msgstr "đánh dấu các tập tin là “chỉ-đọc”"
 
-#: builtin/update-index.c:966
+#: builtin/update-index.c:968
 msgid "clear skip-worktree bit"
 msgstr "xóa bít skip-worktree"
 
-#: builtin/update-index.c:969
+#: builtin/update-index.c:971
 msgid "add to index only; do not add content to object database"
 msgstr ""
 "chỉ thêm vào bảng mục lục; không thêm nội dung vào cơ sở dữ liệu đối tượng"
 
-#: builtin/update-index.c:971
+#: builtin/update-index.c:973
 msgid "remove named paths even if present in worktree"
 msgstr ""
 "gỡ bỏ các đường dẫn được đặt tên thậm chí cả khi nó hiện diện trong thư mục "
 "làm việc"
 
-#: builtin/update-index.c:973
+#: builtin/update-index.c:975
 msgid "with --stdin: input lines are terminated by null bytes"
 msgstr "với tùy chọn --stdin: các dòng đầu vào được chấm dứt bởi ký tự null"
 
-#: builtin/update-index.c:975
+#: builtin/update-index.c:977
 msgid "read list of paths to be updated from standard input"
 msgstr "đọc danh sách đường dẫn cần cập nhật từ đầu vào tiêu chuẩn"
 
-#: builtin/update-index.c:979
+#: builtin/update-index.c:981
 msgid "add entries from standard input to the index"
 msgstr "không thể đọc các mục từ đầu vào tiêu chuẩn vào bảng mục lục"
 
-#: builtin/update-index.c:983
+#: builtin/update-index.c:985
 msgid "repopulate stages #2 and #3 for the listed paths"
 msgstr "phục hồi các trạng thái #2 và #3 cho các đường dẫn được liệt kê"
 
-#: builtin/update-index.c:987
+#: builtin/update-index.c:989
 msgid "only update entries that differ from HEAD"
 msgstr "chỉ cập nhật các mục tin mà nó khác biệt so với HEAD"
 
-#: builtin/update-index.c:991
+#: builtin/update-index.c:993
 msgid "ignore files missing from worktree"
 msgstr "bỏ qua các tập-tin thiếu trong thư-mục làm việc"
 
-#: builtin/update-index.c:994
+#: builtin/update-index.c:996
 msgid "report actions to standard output"
 msgstr "báo cáo các thao tác ra thiết bị xuất chuẩn"
 
-#: builtin/update-index.c:996
+#: builtin/update-index.c:998
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr "(cho “porcelains”) quên các xung đột chưa được giải quyết đã ghi"
 
-#: builtin/update-index.c:1000
+#: builtin/update-index.c:1002
 msgid "write index in this format"
 msgstr "ghi mục lục ở định dạng này"
 
-#: builtin/update-index.c:1002
+#: builtin/update-index.c:1004
 msgid "enable or disable split index"
 msgstr "bật/tắt chia cắt bảng mục lục"
 
-#: builtin/update-index.c:1004
+#: builtin/update-index.c:1006
 msgid "enable/disable untracked cache"
 msgstr "bật/tắt bộ đệm không theo vết"
 
-#: builtin/update-index.c:1006
+#: builtin/update-index.c:1008
 msgid "test if the filesystem supports untracked cache"
 msgstr "kiểm tra xem hệ thống tập tin có hỗ trợ đệm không theo dõi hay không"
 
-#: builtin/update-index.c:1008
+#: builtin/update-index.c:1010
 msgid "enable untracked cache without testing the filesystem"
 msgstr "bật bộ đệm không theo vết mà không kiểm tra hệ thống tập tin"
 
-#: builtin/update-index.c:1108
+#: builtin/update-index.c:1107
 msgid ""
 "core.splitIndex is set to false; remove or change it, if you really want to "
 "enable split index"
@@ -13777,7 +13973,7 @@ msgstr ""
 "core.splitIndex được đặt là sai; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
 "muốn bật chia tách mục lục"
 
-#: builtin/update-index.c:1117
+#: builtin/update-index.c:1116
 msgid ""
 "core.splitIndex is set to true; remove or change it, if you really want to "
 "disable split index"
@@ -13785,7 +13981,7 @@ msgstr ""
 "core.splitIndex được đặt là đúng; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
 "muốn tắt chia tách mục lục"
 
-#: builtin/update-index.c:1128
+#: builtin/update-index.c:1127
 msgid ""
 "core.untrackedCache is set to true; remove or change it, if you really want "
 "to disable the untracked cache"
@@ -13793,11 +13989,11 @@ msgstr ""
 "core.untrackedCache được đặt là đúng; xóa bỏ hay thay đổi nó, nếu bạn thực "
 "sự muốn tắt bộ đệm chưa theo dõi"
 
-#: builtin/update-index.c:1132
+#: builtin/update-index.c:1131
 msgid "Untracked cache disabled"
 msgstr "Nhớ đệm không theo vết bị tắt"
 
-#: builtin/update-index.c:1140
+#: builtin/update-index.c:1139
 msgid ""
 "core.untrackedCache is set to false; remove or change it, if you really want "
 "to enable the untracked cache"
@@ -13805,7 +14001,7 @@ msgstr ""
 "core.untrackedCache được đặt là sai; xóa bỏ hay thay đổi nó, nếu bạn thực sự "
 "muốn bật bộ đệm chưa theo dõi"
 
-#: builtin/update-index.c:1144
+#: builtin/update-index.c:1143
 #, c-format
 msgid "Untracked cache enabled for '%s'"
 msgstr "Nhớ đệm không theo vết được bật cho “%s”"
@@ -13822,19 +14018,19 @@ msgstr "git update-ref [<các-tùy-chọn>]    <refname> <biến-mới> [<biến
 msgid "git update-ref [<options>] --stdin [-z]"
 msgstr "git update-ref [<các-tùy-chọn>] --stdin [-z]"
 
-#: builtin/update-ref.c:364
+#: builtin/update-ref.c:363
 msgid "delete the reference"
 msgstr "xóa tham chiếu"
 
-#: builtin/update-ref.c:366
+#: builtin/update-ref.c:365
 msgid "update <refname> not the one it points to"
 msgstr "cập nhật <tên-tham-chiếu> không phải cái nó chỉ tới"
 
-#: builtin/update-ref.c:367
+#: builtin/update-ref.c:366
 msgid "stdin has NUL-terminated arguments"
 msgstr "đầu vào tiêu chuẩn có các đối số được chấm dứt bởi NUL"
 
-#: builtin/update-ref.c:368
+#: builtin/update-ref.c:367
 msgid "read updates from stdin"
 msgstr "đọc cập nhật từ đầu vào tiêu chuẩn"
 
@@ -13898,102 +14094,109 @@ msgstr "git worktree prune [<các-tùy-chọn>]"
 msgid "git worktree unlock <path>"
 msgstr "git worktree unlock </đường/dẫn>"
 
-#: builtin/worktree.c:44
+#: builtin/worktree.c:46
 #, 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:50
+#: builtin/worktree.c:52
 #, 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:55
+#: builtin/worktree.c:57 builtin/worktree.c:66
 #, 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:66
+#: builtin/worktree.c:76
+#, c-format
+msgid ""
+"Removing worktrees/%s: short read (expected %<PRIuMAX> bytes, read "
+"%<PRIuMAX>)"
+msgstr "Gỡ bỏ cây làm việc/%s: đọc ngắn (cần %<PRIuMAX> byte, đọc %<PRIuMAX>)"
+
+#: builtin/worktree.c:84
 #, 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:82
+#: builtin/worktree.c:100
 #, 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:129
+#: builtin/worktree.c:147
 msgid "report pruned working trees"
 msgstr "báo cáo các cây làm việc đã prune"
 
-#: builtin/worktree.c:131
+#: builtin/worktree.c:149
 msgid "expire working trees older than <time>"
 msgstr "các cây làm việc hết hạn cũ hơn khoảng <thời gian>"
 
-#: builtin/worktree.c:205
+#: builtin/worktree.c:223
 #, c-format
 msgid "'%s' already exists"
 msgstr "“%s” đã có từ trước rồi"
 
-#: builtin/worktree.c:236
+#: builtin/worktree.c:254
 #, c-format
 msgid "could not create directory of '%s'"
 msgstr "không thể tạo thư mục của “%s”"
 
-#: builtin/worktree.c:275
+#: builtin/worktree.c:293
 #, c-format
 msgid "Preparing %s (identifier %s)"
 msgstr "Đang chuẩn bị %s (định danh %s)"
 
-#: builtin/worktree.c:327
+#: builtin/worktree.c:345
 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:329
+#: builtin/worktree.c:347
 msgid "create a new branch"
 msgstr "tạo nhánh mới"
 
-#: builtin/worktree.c:331
+#: builtin/worktree.c:349
 msgid "create or reset a branch"
 msgstr "tạo hay đặt lại một nhánh"
 
-#: builtin/worktree.c:333
+#: builtin/worktree.c:351
 msgid "populate the new working tree"
 msgstr "di chuyển cây làm việc mới"
 
-#: builtin/worktree.c:334
+#: builtin/worktree.c:352
 msgid "keep the new working tree locked"
 msgstr "giữ cây làm việc mới bị khóa"
 
-#: builtin/worktree.c:342
+#: builtin/worktree.c:360
 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"
 
-#: builtin/worktree.c:479
+#: builtin/worktree.c:499
 msgid "reason for locking"
 msgstr "lý do khóa"
 
-#: builtin/worktree.c:491 builtin/worktree.c:524
+#: builtin/worktree.c:511 builtin/worktree.c:544
 #, c-format
 msgid "'%s' is not a working tree"
 msgstr "%s không phải là cây làm việc"
 
-#: builtin/worktree.c:493 builtin/worktree.c:526
+#: builtin/worktree.c:513 builtin/worktree.c:546
 msgid "The main working tree cannot be locked or unlocked"
 msgstr "Cây thư mục làm việc chính không thể khóa hay bỏ khóa được"
 
-#: builtin/worktree.c:498
+#: builtin/worktree.c:518
 #, c-format
 msgid "'%s' is already locked, reason: %s"
 msgstr "“%s” đã được khóa rồi, lý do: %s"
 
-#: builtin/worktree.c:500
+#: builtin/worktree.c:520
 #, c-format
 msgid "'%s' is already locked"
 msgstr "“%s” đã được khóa rồi"
 
-#: builtin/worktree.c:528
+#: builtin/worktree.c:548
 #, c-format
 msgid "'%s' is not locked"
 msgstr "“%s” chưa bị khóa"
@@ -14018,23 +14221,23 @@ msgstr "chỉ hữu ích khi cần gỡ lỗi"
 msgid "git upload-pack [<options>] <dir>"
 msgstr "git upload-pack [<các-tùy-chọn>] </đường/dẫn>"
 
-#: upload-pack.c:1041
+#: upload-pack.c:1040
 msgid "quit after a single request/response exchange"
 msgstr "thoát sau khi một trao đổi yêu cầu hay trả lời đơn"
 
-#: upload-pack.c:1043
+#: upload-pack.c:1042
 msgid "exit immediately after initial ref advertisement"
 msgstr "thoát ngay sau khi khởi tạo quảng cáo tham chiếu"
 
-#: upload-pack.c:1045
+#: upload-pack.c:1044
 msgid "do not try <directory>/.git/ if <directory> is no Git directory"
 msgstr "đừng thử <thư_mục>/.git/ nếu <thư_mục> không phải là thư mục Git"
 
-#: upload-pack.c:1047
+#: upload-pack.c:1046
 msgid "interrupt transfer after <n> seconds of inactivity"
 msgstr "ngắt truyền thông sau <n> giây không hoạt động"
 
-#: credential-cache--daemon.c:224
+#: credential-cache--daemon.c:222
 #, c-format
 msgid ""
 "The permissions on your socket directory are too loose; other\n"
@@ -14047,7 +14250,7 @@ msgstr ""
 "\n"
 "\tchmod 0700 %s"
 
-#: credential-cache--daemon.c:272
+#: credential-cache--daemon.c:271
 msgid "print debugging messages to stderr"
 msgstr "in thông tin gỡ lỗi ra đầu ra lỗi tiêu chuẩn"
 
@@ -14061,20 +14264,20 @@ msgstr ""
 "hướng dẫn về khái niệm. Xem “git help <lệnh>” hay “git help <khái-niệm>”\n"
 "để xem các đặc tả cho lệnh hay khái niệm cụ thể."
 
-#: http.c:337
+#: http.c:338
 #, c-format
 msgid "negative value for http.postbuffer; defaulting to %d"
 msgstr "giá trị âm cho http.postbuffer; mặc định là %d"
 
-#: http.c:358
+#: http.c:359
 msgid "Delegation control is not supported with cURL < 7.22.0"
 msgstr "Điều khiển giao quyền không được hỗ trợ với cURL < 7.22.0"
 
-#: http.c:367
+#: http.c:368
 msgid "Public key pinning not supported with cURL < 7.44.0"
 msgstr "Chốt khóa công không được hỗ trợ với cURL < 7.44.0"
 
-#: http.c:1764
+#: http.c:1768
 #, c-format
 msgid ""
 "unable to update url base from redirection:\n"
@@ -14443,7 +14646,7 @@ msgstr "Không thể tìm thấy lần chuyển giao chung với $pretty_name"
 
 #: git-merge-octopus.sh:77
 #, sh-format
-msgid "Already up-to-date with $pretty_name"
+msgid "Already up to date with $pretty_name"
 msgstr "Đã cập nhật với $pretty_name rồi"
 
 #: git-merge-octopus.sh:89
@@ -14462,56 +14665,58 @@ msgstr "Hòa trộn đơn giản không làm việc, thử hòa trộn tự đ
 
 #: git-rebase.sh:58
 msgid ""
-"When you have resolved this problem, run \"git rebase --continue\".\n"
-"If you prefer to skip this patch, run \"git rebase --skip\" instead.\n"
-"To check out the original branch and stop rebasing, run \"git rebase --abort"
-"\"."
+"Resolve all conflicts manually, mark them as resolved with\n"
+"\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
+"You can instead skip this commit: run \"git rebase --skip\".\n"
+"To abort and get back to the state before \"git rebase\", run \"git rebase --"
+"abort\"."
 msgstr ""
-"Khi bạn cần giải quyết vấn đề này hãy chạy lệnh \"git rebase --continue\".\n"
-"Nếu bạn có ý định bỏ qua miếng vá, thay vào đó bạn chạy \"git rebase --skip"
-"\".\n"
-"Để phục hồi lại thành nhánh nguyên thủy và dừng việc vá lại thì chạy \"git "
-"rebase --abort\"."
+"Giải quyết vấn đề này thủ công, hãy đanh dấu chúng đã được giải quyết bằng\n"
+"hãy chạy lệnh \"git add/rm <các_tập_tin_xung_đột>\", sau đó chạy \"git "
+"rebase --continue\".\n"
+"Bạn có thể bỏ qua miếng vá, chạy \"git rebase --skip\".\n"
+"Để bãi bỏ và quay trở lại trạng thái trước \"git rebase\", chạy \"git rebase "
+"--abort\"."
 
-#: git-rebase.sh:158 git-rebase.sh:397
+#: git-rebase.sh:160 git-rebase.sh:402
 #, sh-format
 msgid "Could not move back to $head_name"
 msgstr "Không thể quay trở lại $head_name"
 
-#: git-rebase.sh:169
+#: git-rebase.sh:171
 msgid "Applied autostash."
 msgstr "Đã áp dụng autostash."
 
-#: git-rebase.sh:172
+#: git-rebase.sh:174
 #, sh-format
 msgid "Cannot store $stash_sha1"
 msgstr "Không thể lưu $stash_sha1"
 
-#: git-rebase.sh:212
+#: git-rebase.sh:214
 msgid "The pre-rebase hook refused to rebase."
 msgstr "Móc (hook) pre-rebase từ chối rebase."
 
-#: git-rebase.sh:217
+#: git-rebase.sh:219
 msgid "It looks like git-am is in progress. Cannot rebase."
 msgstr ""
 "Hình như đang trong quá trình thực hiện lệnh git-am. Không thể chạy lệnh "
 "rebase."
 
-#: git-rebase.sh:358
+#: git-rebase.sh:363
 msgid "No rebase in progress?"
 msgstr "Không có tiến trình rebase nào phải không?"
 
-#: git-rebase.sh:369
+#: git-rebase.sh:374
 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:376
+#: git-rebase.sh:381
 msgid "Cannot read HEAD"
 msgstr "Không thể đọc HEAD"
 
-#: git-rebase.sh:379
+#: git-rebase.sh:384
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
@@ -14519,7 +14724,7 @@ 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:419
+#: git-rebase.sh:424
 #, sh-format
 msgid ""
 "It seems that there is already a $state_dir_base directory, and\n"
@@ -14540,102 +14745,102 @@ msgstr ""
 "và chạy TÔI lần nữa. TÔI  dừng lại trong trường hợp bạn vẫn\n"
 "có một số thứ quý giá ở đây."
 
-#: git-rebase.sh:470
+#: git-rebase.sh:480
 #, sh-format
 msgid "invalid upstream $upstream_name"
 msgstr "thượng nguồn không hợp lệ $upstream_name"
 
-#: git-rebase.sh:494
+#: git-rebase.sh:504
 #, 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:497 git-rebase.sh:501
+#: git-rebase.sh:507 git-rebase.sh:511
 #, 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:506
+#: git-rebase.sh:516
 #, 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:529
+#: git-rebase.sh:539
 #, 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:562
+#: git-rebase.sh:572
 msgid "Cannot autostash"
 msgstr "Không thể autostash"
 
-#: git-rebase.sh:567
+#: git-rebase.sh:577
 #, sh-format
 msgid "Created autostash: $stash_abbrev"
 msgstr "Đã tạo autostash: $stash_abbrev"
 
-#: git-rebase.sh:571
+#: git-rebase.sh:581
 msgid "Please commit or stash them."
 msgstr "Xin hãy chuyển giao hoặc tạm cất (stash) chúng."
 
-#: git-rebase.sh:591
+#: git-rebase.sh:601
 #, 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:595
+#: git-rebase.sh:605
 #, 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:606
+#: git-rebase.sh:616
 #, sh-format
 msgid "Changes from $mb to $onto:"
 msgstr "Thay đổi từ $mb thành $onto:"
 
-#: git-rebase.sh:615
+#: git-rebase.sh:625
 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:625
+#: git-rebase.sh:635
 #, sh-format
 msgid "Fast-forwarded $branch_name to $onto_name."
 msgstr "Chuyển-tiếp-nhanh $branch_name thành $onto_name."
 
-#: git-stash.sh:54
+#: git-stash.sh:61
 msgid "git stash clear with parameters is unimplemented"
 msgstr ""
 "git stash clear với các tham số là chưa được thực hiện (không nhận đối số)"
 
-#: git-stash.sh:95
+#: git-stash.sh:102
 msgid "You do not have the initial commit yet"
 msgstr "Bạn chưa còn có lần chuyển giao khởi tạo"
 
-#: git-stash.sh:110
+#: git-stash.sh:117
 msgid "Cannot save the current index state"
 msgstr "Không thể ghi lại trạng thái bảng mục lục hiện hành"
 
-#: git-stash.sh:125
+#: git-stash.sh:132
 msgid "Cannot save the untracked files"
 msgstr "Không thể ghi lại các tập tin chưa theo dõi"
 
-#: git-stash.sh:145 git-stash.sh:158
+#: git-stash.sh:152 git-stash.sh:165
 msgid "Cannot save the current worktree state"
 msgstr "Không thể ghi lại trạng thái cây-làm-việc hiện hành"
 
-#: git-stash.sh:162
+#: git-stash.sh:169
 msgid "No changes selected"
 msgstr "Chưa có thay đổi nào được chọn"
 
-#: git-stash.sh:165
+#: git-stash.sh:172
 msgid "Cannot remove temporary index (can't happen)"
 msgstr "Không thể gỡ bỏ bảng mục lục tạm thời (không thể xảy ra)"
 
-#: git-stash.sh:178
+#: git-stash.sh:185
 msgid "Cannot record working tree state"
 msgstr "Không thể ghi lại trạng thái cây làm việc hiện hành"
 
-#: git-stash.sh:210
+#: git-stash.sh:217
 #, sh-format
 msgid "Cannot update $ref_stash with $w_commit"
 msgstr "Không thể cập nhật $ref_stash với $w_commit"
@@ -14650,7 +14855,7 @@ msgstr "Không thể cập nhật $ref_stash với $w_commit"
 #. $ git stash save --blah-blah 2>&1 | head -n 2
 #. error: unknown option for 'stash save': --blah-blah
 #. To provide a message, use git stash save -- '--blah-blah'
-#: git-stash.sh:266
+#: git-stash.sh:273
 #, sh-format
 msgid ""
 "error: unknown option for 'stash save': $option\n"
@@ -14660,107 +14865,107 @@ msgstr ""
 "     Để có thể dùng lời chú thích có chứa -- ở đầu,\n"
 "     dùng git stash save -- \"$option\""
 
-#: git-stash.sh:281
+#: git-stash.sh:288
 msgid "Can't use --patch and --include-untracked or --all at the same time"
 msgstr "Không thể dùng --patch và --include-untracked hay --all cùng một lúc."
 
-#: git-stash.sh:289
+#: git-stash.sh:296
 msgid "No local changes to save"
 msgstr "Không có thay đổi nội bộ nào được ghi lại"
 
-#: git-stash.sh:294
+#: git-stash.sh:301
 msgid "Cannot initialize stash"
 msgstr "Không thể khởi tạo stash"
 
-#: git-stash.sh:298
+#: git-stash.sh:305
 msgid "Cannot save the current status"
 msgstr "Không thể ghi lại trạng thái hiện hành"
 
-#: git-stash.sh:299
+#: git-stash.sh:306
 #, sh-format
 msgid "Saved working directory and index state $stash_msg"
 msgstr "Đã ghi lại thư mục làm việc và trạng thái mục lục $stash_msg"
 
-#: git-stash.sh:326
+#: git-stash.sh:334
 msgid "Cannot remove worktree changes"
 msgstr "Không thể gỡ bỏ các thay đổi cây-làm-việc"
 
-#: git-stash.sh:474
+#: git-stash.sh:482
 #, sh-format
 msgid "unknown option: $opt"
 msgstr "không hiểu tùy chọn: $opt"
 
-#: git-stash.sh:487
+#: git-stash.sh:495
 msgid "No stash entries found."
 msgstr "Không tìm thấy các mục tạm cất (stash) nào."
 
-#: git-stash.sh:494
+#: git-stash.sh:502
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr "Chỉ ra quá nhiều điểm xét duyệt: $REV"
 
-#: git-stash.sh:509
+#: git-stash.sh:517
 #, 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:537
+#: git-stash.sh:545
 #, 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:548
+#: git-stash.sh:556
 #, sh-format
 msgid "'$args' is not a stash reference"
 msgstr "”$args” không phải tham chiếu đến stash"
 
-#: git-stash.sh:556
+#: git-stash.sh:564
 msgid "unable to refresh index"
 msgstr "không thể làm tươi mới bảng mục lục"
 
-#: git-stash.sh:560
+#: git-stash.sh:568
 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:568
+#: git-stash.sh:576
 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:570
+#: git-stash.sh:578
 msgid "Could not save index tree"
 msgstr "Không thể ghi lại cây chỉ mục"
 
-#: git-stash.sh:579
+#: git-stash.sh:587
 msgid "Could not restore untracked files from stash entry"
 msgstr "Không thể phục hồi các tập tin chưa theo dõi từ mục cất đi (stash)"
 
-#: git-stash.sh:604
+#: git-stash.sh:612
 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:619
+#: git-stash.sh:627
 msgid "Index was not unstashed."
 msgstr "Bảng mục lục đã không được bỏ stash."
 
-#: git-stash.sh:633
+#: git-stash.sh:641
 msgid "The stash entry is kept in case you need it again."
 msgstr "Các mục tạm cất (stash) được giữ trong trường hợp bạn lại cần nó."
 
-#: git-stash.sh:642
+#: git-stash.sh:650
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr "Đã xóa ${REV} ($s)"
 
-#: git-stash.sh:643
+#: git-stash.sh:651
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr "${REV}: Không thể xóa bỏ mục stash"
 
-#: git-stash.sh:651
+#: git-stash.sh:659
 msgid "No branch name specified"
 msgstr "Chưa chỉ ra tên của nhánh"
 
-#: git-stash.sh:730
+#: git-stash.sh:738
 msgid "(To restore them type \"git stash apply\")"
 msgstr "(Để phục hồi lại chúng hãy gõ \"git stash apply\")"
 
@@ -14912,19 +15117,19 @@ msgstr "Không thể tạo thư mục mô-đun-con rỗng “$displaypath”"
 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:638
+#: git-submodule.sh:637
 #, 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:648
+#: git-submodule.sh:647
 #, 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:653
+#: git-submodule.sh:652
 #, sh-format
 msgid ""
 "Unable to find current ${remote_name}/${branch} revision in submodule path "
@@ -14933,12 +15138,12 @@ msgstr ""
 "Không thể tìm thấy điểm xét duyệt hiện hành ${remote_name}/${branch} trong "
 "đường dẫn mô-đun-con “$sm_path”"
 
-#: git-submodule.sh:671
+#: git-submodule.sh:670
 #, 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:677
+#: git-submodule.sh:676
 #, sh-format
 msgid ""
 "Fetched in submodule path '$displaypath', but it did not contain $sha1. "
@@ -14947,86 +15152,86 @@ msgstr ""
 "Đã lấy về từ đường dẫn mô-đun con “$displaypath”, nhưng nó không chứa $sha1. "
 "Lấy về theo định hướng của lần chuyển giao đó gặp lỗi."
 
-#: git-submodule.sh:684
+#: git-submodule.sh:683
 #, 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:685
+#: git-submodule.sh:684
 #, sh-format
 msgid "Submodule path '$displaypath': checked out '$sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: đã checkout “$sha1”"
 
-#: git-submodule.sh:689
+#: git-submodule.sh:688
 #, 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:690
+#: git-submodule.sh:689
 #, 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:695
+#: git-submodule.sh:694
 #, 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:696
+#: git-submodule.sh:695
 #, 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:701
+#: git-submodule.sh:700
 #, sh-format
 msgid "Execution of '$command $sha1' failed in submodule path '$displaypath'"
 msgstr ""
 "Thực hiện không thành công lệnh “$command $sha1” trong đường dẫn mô-đun-con "
 "“$displaypath”"
 
-#: git-submodule.sh:702
+#: git-submodule.sh:701
 #, sh-format
 msgid "Submodule path '$displaypath': '$command $sha1'"
 msgstr "Đường dẫn mô-đun-con “$displaypath”: “$command $sha1”"
 
-#: git-submodule.sh:733
+#: git-submodule.sh:732
 #, 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:841
+#: git-submodule.sh:840
 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:893
+#: git-submodule.sh:892
 #, sh-format
 msgid "unexpected mode $mod_dst"
 msgstr "chế độ không như mong chờ $mod_dst"
 
-#: git-submodule.sh:913
+#: git-submodule.sh:912
 #, 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:916
+#: git-submodule.sh:915
 #, 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:919
+#: git-submodule.sh:918
 #, 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:1065
+#: git-submodule.sh:1064
 #, 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:1137
+#: git-submodule.sh:1136
 #, sh-format
 msgid "Synchronizing submodule url for '$displaypath'"
 msgstr "Url Mô-đun-con đồng bộ hóa cho “$displaypath”"
@@ -15045,13 +15250,13 @@ msgstr "Đang rebase ($new_count/$total)"
 msgid ""
 "\n"
 "Commands:\n"
-" p, pick = use commit\n"
-" r, reword = use commit, but edit the commit message\n"
-" e, edit = use commit, but stop for amending\n"
-" s, squash = use commit, but meld into previous commit\n"
-" f, fixup = like \"squash\", but discard this commit's log message\n"
-" x, exec = run command (the rest of the line) using shell\n"
-" d, drop = remove commit\n"
+"p, pick = use commit\n"
+"r, reword = use commit, but edit the commit message\n"
+"e, edit = use commit, but stop for amending\n"
+"s, squash = use commit, but meld into previous commit\n"
+"f, fixup = like \"squash\", but discard this commit's log message\n"
+"x, exec = run command (the rest of the line) using shell\n"
+"d, drop = remove commit\n"
 "\n"
 "These lines can be re-ordered; they are executed from top to bottom.\n"
 msgstr ""
@@ -15139,48 +15344,48 @@ msgstr "Không thể di chuyển HEAD đến $first_parent"
 msgid "Refusing to squash a merge: $sha1"
 msgstr "Từ chối squash lần hòa trộn: $sha1"
 
-#: git-rebase--interactive.sh:399
+#: git-rebase--interactive.sh:400
 #, sh-format
 msgid "Error redoing merge $sha1"
 msgstr "Gặp lỗi khi hoàn lại bước hòa trộn $sha1"
 
-#: git-rebase--interactive.sh:407
+#: git-rebase--interactive.sh:408
 #, sh-format
 msgid "Could not pick $sha1"
 msgstr "Không thể lấy ra $sha1"
 
-#: git-rebase--interactive.sh:416
+#: git-rebase--interactive.sh:417
 #, sh-format
 msgid "This is the commit message #${n}:"
 msgstr "Đây là chú thích cho lần chuyển giao thứ #${n}:"
 
-#: git-rebase--interactive.sh:421
+#: git-rebase--interactive.sh:422
 #, sh-format
 msgid "The commit message #${n} will be skipped:"
 msgstr "Chú thích cho lần chuyển giao thứ #${n} sẽ bị bỏ qua:"
 
-#: git-rebase--interactive.sh:432
+#: git-rebase--interactive.sh:433
 #, sh-format
 msgid "This is a combination of $count commit."
 msgid_plural "This is a combination of $count commits."
 msgstr[0] "Đây là tổ hợp của $count lần chuyển giao."
 
-#: git-rebase--interactive.sh:441
+#: git-rebase--interactive.sh:442
 #, sh-format
 msgid "Cannot write $fixup_msg"
 msgstr "Không thể $fixup_msg"
 
-#: git-rebase--interactive.sh:444
+#: git-rebase--interactive.sh:445
 msgid "This is a combination of 2 commits."
 msgstr "Đây là tổ hợp của 2 lần chuyển giao."
 
-#: git-rebase--interactive.sh:485 git-rebase--interactive.sh:528
-#: git-rebase--interactive.sh:531
+#: git-rebase--interactive.sh:486 git-rebase--interactive.sh:529
+#: git-rebase--interactive.sh:532
 #, sh-format
 msgid "Could not apply $sha1... $rest"
 msgstr "Không thể áp dụng $sha1… $rest"
 
-#: git-rebase--interactive.sh:559
+#: git-rebase--interactive.sh:560
 #, sh-format
 msgid ""
 "Could not amend commit after successfully picking $sha1... $rest\n"
@@ -15196,31 +15401,31 @@ msgstr ""
 "này\n"
 "trước khi bạn có thể làm việc lại với lần chuyển giao."
 
-#: git-rebase--interactive.sh:574
+#: git-rebase--interactive.sh:575
 #, sh-format
 msgid "Stopped at $sha1_abbrev... $rest"
 msgstr "Bị dừng tại $sha1_abbrev… $rest"
 
-#: git-rebase--interactive.sh:589
+#: git-rebase--interactive.sh:590
 #, sh-format
 msgid "Cannot '$squash_style' without a previous commit"
 msgstr "Không “$squash_style” thể mà không có lần chuyển giao kế trước"
 
-#: git-rebase--interactive.sh:631
+#: git-rebase--interactive.sh:632
 #, sh-format
 msgid "Executing: $rest"
 msgstr "Thực thi: $rest"
 
-#: git-rebase--interactive.sh:639
+#: git-rebase--interactive.sh:640
 #, sh-format
 msgid "Execution failed: $rest"
 msgstr "Thực thi gặp lỗi: $rest"
 
-#: git-rebase--interactive.sh:641
+#: git-rebase--interactive.sh:642
 msgid "and made changes to the index and/or the working tree"
 msgstr "và tạo các thay đổi bảng mục lục và/hay cây làm việc"
 
-#: git-rebase--interactive.sh:643
+#: git-rebase--interactive.sh:644
 msgid ""
 "You can fix the problem, and then run\n"
 "\n"
@@ -15231,7 +15436,7 @@ msgstr ""
 "\tgit rebase --continue"
 
 #. TRANSLATORS: after these lines is a command to be issued by the user
-#: git-rebase--interactive.sh:656
+#: git-rebase--interactive.sh:657
 #, sh-format
 msgid ""
 "Execution succeeded: $rest\n"
@@ -15246,96 +15451,29 @@ msgstr ""
 "\n"
 "\tgit rebase --continue"
 
-#: git-rebase--interactive.sh:667
+#: git-rebase--interactive.sh:668
 #, sh-format
 msgid "Unknown command: $command $sha1 $rest"
 msgstr "Lệnh chưa biết: $command $sha1 $rest"
 
-#: git-rebase--interactive.sh:668
+#: git-rebase--interactive.sh:669
 msgid "Please fix this using 'git rebase --edit-todo'."
 msgstr "Vui lòng sửa lỗi này bằng cách dùng “git rebase --edit-todo”."
 
-#: git-rebase--interactive.sh:703
+#: git-rebase--interactive.sh:704
 #, sh-format
 msgid "Successfully rebased and updated $head_name."
 msgstr "Cài tổ và cập nhật $head_name một cách thành công."
 
-#: git-rebase--interactive.sh:750
-msgid "Could not skip unnecessary pick commands"
-msgstr "Không thể bỏ qua các lệnh cậy (pick) không cần thiết"
-
-#: git-rebase--interactive.sh:908
-#, sh-format
-msgid ""
-"Warning: the SHA-1 is missing or isn't a commit in the following line:\n"
-" - $line"
-msgstr ""
-"Cảnh báo: SHA-1 bị thiếu hoặc không phải là một lần chuyển giao trong dòng "
-"sau đây:\n"
-" - $line"
-
-#: git-rebase--interactive.sh:941
-#, sh-format
-msgid ""
-"Warning: the command isn't recognized in the following line:\n"
-" - $line"
-msgstr ""
-"Cảnh báo: lệnh không nhận ra trong dòng sau đây:\n"
-" - $line"
-
-#: git-rebase--interactive.sh:980
+#: git-rebase--interactive.sh:749
 msgid "could not detach HEAD"
 msgstr "không thể tách rời HEAD"
 
-#: git-rebase--interactive.sh:1018
-msgid ""
-"Warning: some commits may have been dropped accidentally.\n"
-"Dropped commits (newer to older):"
-msgstr ""
-"Cảnh báo: một số lần chuyển giao có lẽ đã bị xóa một cách tình cờ.\n"
-"Các lần chuyển giao bị xóa (từ mới đến cũ):"
-
-#: git-rebase--interactive.sh:1026
-msgid ""
-"To avoid this message, use \"drop\" to explicitly remove a commit.\n"
-"\n"
-"Use 'git config rebase.missingCommitsCheck' to change the level of "
-"warnings.\n"
-"The possible behaviours are: ignore, warn, error."
-msgstr ""
-"Để tránh thông báo này, dùng \"drop\" một cách rõ ràng để xóa bỏ một lần "
-"chuyển giao.\n"
-"\n"
-"Dùng “git config rebase.missingCommitsCheck” để thay đổi mức độ của cảnh "
-"báo.\n"
-"Cánh ứng xử có thể là: ignore, warn, error."
-
-#: git-rebase--interactive.sh:1037
-#, sh-format
-msgid ""
-"Unrecognized setting $check_level for option rebase.missingCommitsCheck. "
-"Ignoring."
-msgstr ""
-"Không thừa nhận cài đặt $check_level for option rebase.missingCommitsCheck. "
-"Nên bỏ qua."
-
-#: git-rebase--interactive.sh:1054
-msgid ""
-"You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
-"continue'."
-msgstr ""
-"Bạn có thể sửa nó bằng “git rebase --edit-todo” và sau đó chạy “git rebase --"
-"continue”."
-
-#: git-rebase--interactive.sh:1055
-msgid "Or you can abort the rebase with 'git rebase --abort'."
-msgstr "Hoặc là bạn có thể bãi bỏ lần cải tổ với lệnh “git rebase --abort”."
-
-#: git-rebase--interactive.sh:1083
+#: git-rebase--interactive.sh:784
 msgid "Could not remove CHERRY_PICK_HEAD"
 msgstr "Không thể xóa bỏ CHERRY_PICK_HEAD"
 
-#: git-rebase--interactive.sh:1088
+#: git-rebase--interactive.sh:789
 #, sh-format
 msgid ""
 "You have staged changes in your working tree.\n"
@@ -15366,11 +15504,11 @@ msgstr ""
 "\n"
 "  git rebase --continue\n"
 
-#: git-rebase--interactive.sh:1105
+#: git-rebase--interactive.sh:806
 msgid "Error trying to find the author identity to amend commit"
 msgstr "Lỗi khi cố tìm định danh của tác giả để tu bổ lần chuyển giao"
 
-#: git-rebase--interactive.sh:1110
+#: git-rebase--interactive.sh:811
 msgid ""
 "You have uncommitted changes in your working tree. Please commit them\n"
 "first and then run 'git rebase --continue' again."
@@ -15379,11 +15517,11 @@ msgstr ""
 "Vui lòng chuyển giao chúng và sau đó chạy lệnh “git rebase --continue” lần "
 "nữa."
 
-#: git-rebase--interactive.sh:1115 git-rebase--interactive.sh:1119
+#: git-rebase--interactive.sh:816 git-rebase--interactive.sh:820
 msgid "Could not commit staged changes."
 msgstr "Không thể chuyển giao các thay đổi đã đưa lên bệ phóng."
 
-#: git-rebase--interactive.sh:1147
+#: git-rebase--interactive.sh:848
 msgid ""
 "\n"
 "You are editing the todo file of an ongoing interactive rebase.\n"
@@ -15397,39 +15535,39 @@ msgstr ""
 "    git rebase --continue\n"
 "\n"
 
-#: git-rebase--interactive.sh:1155 git-rebase--interactive.sh:1313
+#: git-rebase--interactive.sh:856 git-rebase--interactive.sh:1015
 msgid "Could not execute editor"
 msgstr "Không thể thực thi trình biên soạn"
 
-#: git-rebase--interactive.sh:1168
+#: git-rebase--interactive.sh:869
 #, sh-format
 msgid "Could not checkout $switch_to"
 msgstr "Không thể checkout $switch_to"
 
-#: git-rebase--interactive.sh:1173
+#: git-rebase--interactive.sh:874
 msgid "No HEAD?"
 msgstr "Không HEAD?"
 
-#: git-rebase--interactive.sh:1174
+#: git-rebase--interactive.sh:875
 #, sh-format
 msgid "Could not create temporary $state_dir"
 msgstr "Không thể tạo thư mục tạm thời $state_dir"
 
-#: git-rebase--interactive.sh:1176
+#: git-rebase--interactive.sh:877
 msgid "Could not mark as interactive"
 msgstr "Không thể đánh dấu là tương tác"
 
-#: git-rebase--interactive.sh:1186 git-rebase--interactive.sh:1191
+#: git-rebase--interactive.sh:887 git-rebase--interactive.sh:892
 msgid "Could not init rewritten commits"
 msgstr "Không thể khởi tạo các lần chuyển giao ghi lại"
 
-#: git-rebase--interactive.sh:1291
+#: git-rebase--interactive.sh:993
 #, sh-format
 msgid "Rebase $shortrevisions onto $shortonto ($todocount command)"
 msgid_plural "Rebase $shortrevisions onto $shortonto ($todocount commands)"
 msgstr[0] "Cải tổ $shortrevisions vào $shortonto (các lệnh $todocount)"
 
-#: git-rebase--interactive.sh:1296
+#: git-rebase--interactive.sh:998
 msgid ""
 "\n"
 "However, if you remove everything, the rebase will be aborted.\n"
@@ -15438,7 +15576,7 @@ msgstr ""
 "\n"
 "Tuy nhiên, nếu bạn xóa bỏ mọi thứ, việc cải tổ sẽ bị bãi bỏ.\n"
 
-#: git-rebase--interactive.sh:1303
+#: git-rebase--interactive.sh:1005
 msgid "Note that empty commits are commented out"
 msgstr "Chú ý rằng lần chuyển giao trống rỗng là ghi chú"
 
@@ -16024,60 +16162,60 @@ msgstr "múi giờ nội bộ khác biệt với GMT bởi khoảng thời gian
 msgid "local time offset greater than or equal to 24 hours\n"
 msgstr "khoảng bù thời gian nội bộ lớn hơn hoặc bằng 24 giờ\n"
 
-#: git-send-email.perl:208 git-send-email.perl:214
+#: git-send-email.perl:207 git-send-email.perl:213
 msgid "the editor exited uncleanly, aborting everything"
 msgstr "trình soạn thảo thoát không sạch sẽ, bãi bỏ mọi thứ"
 
-#: git-send-email.perl:291
+#: git-send-email.perl:290
 #, perl-format
 msgid ""
 "'%s' contains an intermediate version of the email you were composing.\n"
 msgstr "“%s” có chưa một phiên bản trung gian của thư bạn đã soạn.\n"
 
-#: git-send-email.perl:296
+#: git-send-email.perl:295
 #, perl-format
 msgid "'%s.final' contains the composed email.\n"
 msgstr "“%s.final” chứa thư điện tử đã soạn thảo.\n"
 
-#: git-send-email.perl:314
+#: git-send-email.perl:313
 msgid "--dump-aliases incompatible with other options\n"
 msgstr "--dump-aliases xung khắc với các tùy chọn khác\n"
 
-#: git-send-email.perl:379 git-send-email.perl:634
+#: git-send-email.perl:378 git-send-email.perl:629
 msgid "Cannot run git format-patch from outside a repository\n"
 msgstr "Không thể chạy git format-patch ở ngoài một kho chứa\n"
 
-#: git-send-email.perl:448
+#: git-send-email.perl:447
 #, perl-format
 msgid "Unknown --suppress-cc field: '%s'\n"
 msgstr "Không hiểu trường --suppress-cc: “%s”\n"
 
-#: git-send-email.perl:477
+#: git-send-email.perl:476
 #, perl-format
 msgid "Unknown --confirm setting: '%s'\n"
 msgstr "Không hiểu cài đặt --confirm: “%s”\n"
 
-#: git-send-email.perl:509
+#: git-send-email.perl:504
 #, perl-format
 msgid "warning: sendmail alias with quotes is not supported: %s\n"
 msgstr "cảnh báo: bí danh sendmail với dấu trích dẫn không được hỗ trợ: %s\n"
 
-#: git-send-email.perl:511
+#: git-send-email.perl:506
 #, perl-format
 msgid "warning: `:include:` not supported: %s\n"
 msgstr "cảnh báo: “:include:“ không được hỗ trợ: %s\n"
 
-#: git-send-email.perl:513
+#: git-send-email.perl:508
 #, perl-format
 msgid "warning: `/file` or `|pipe` redirection not supported: %s\n"
 msgstr "cảnh báo: chuyển hướng “/file“ hay “|pipe“ không được hỗ trợ: %s\n"
 
-#: git-send-email.perl:518
+#: git-send-email.perl:513
 #, perl-format
 msgid "warning: sendmail line is not recognized: %s\n"
 msgstr "cảnh báo: dòng sendmail không nhận ra được: %s\n"
 
-#: git-send-email.perl:600
+#: git-send-email.perl:595
 #, perl-format
 msgid ""
 "File '%s' exists but it could also be the range of commits\n"
@@ -16092,12 +16230,12 @@ msgstr ""
 "    * Nói \"./%s\" nếu ý bạn là một tập tin; hoặc\n"
 "    * Đưa ra tùy chọn --format-patch nếu ý bạn là chuẩn bị.\n"
 
-#: git-send-email.perl:621
+#: git-send-email.perl:616
 #, perl-format
 msgid "Failed to opendir %s: %s"
 msgstr "Gặp lỗi khi mở thư mục “%s”: %s"
 
-#: git-send-email.perl:645
+#: git-send-email.perl:640
 #, perl-format
 msgid ""
 "fatal: %s: %s\n"
@@ -16106,7 +16244,7 @@ msgstr ""
 "nghiêm trọng: %s: %s\n"
 "cảnh báo: không có miếng vá nào được gửi đi\n"
 
-#: git-send-email.perl:656
+#: git-send-email.perl:651
 msgid ""
 "\n"
 "No patch files specified!\n"
@@ -16116,17 +16254,17 @@ msgstr ""
 "Chưa chỉ định các tập tin miếng vá!\n"
 "\n"
 
-#: git-send-email.perl:669
+#: git-send-email.perl:664
 #, perl-format
 msgid "No subject line in %s?"
 msgstr "Không có dòng chủ đề trong %s?"
 
-#: git-send-email.perl:679
+#: git-send-email.perl:674
 #, perl-format
 msgid "Failed to open for writing %s: %s"
 msgstr "Gặp lỗi khi mở “%s” để ghi: %s"
 
-#: git-send-email.perl:689
+#: git-send-email.perl:684
 msgid ""
 "Lines beginning in \"GIT:\" will be removed.\n"
 "Consider including an overall diffstat or table of contents\n"
@@ -16140,31 +16278,31 @@ msgstr ""
 "\n"
 "Xóa nội dung phần thân nếu bạn không muốn gửi tóm tắt.\n"
 
-#: git-send-email.perl:712
+#: git-send-email.perl:707
 #, perl-format
 msgid "Failed to open %s.final: %s"
 msgstr "Gặp lỗi khi mở %s.final: %s"
 
-#: git-send-email.perl:715
+#: git-send-email.perl:710
 #, perl-format
 msgid "Failed to open %s: %s"
 msgstr "Gặp lỗi khi mở “%s”: %s"
 
-#: git-send-email.perl:750
+#: git-send-email.perl:745
 msgid "To/Cc/Bcc fields are not interpreted yet, they have been ignored\n"
 msgstr "Các trường To/Cc/Bcc không được phiên dịch, chúng bị bỏ qua\n"
 
-#: git-send-email.perl:759
+#: git-send-email.perl:754
 msgid "Summary email is empty, skipping it\n"
 msgstr "Thư tổng thể là trống rỗng, nên bỏ qua nó\n"
 
 #. TRANSLATORS: please keep [y/N] as is.
-#: git-send-email.perl:791
+#: git-send-email.perl:786
 #, perl-format
 msgid "Are you sure you want to use <%s> [y/N]? "
 msgstr "Bạn có chắc muốn dùng <%s> [y/N]? "
 
-#: git-send-email.perl:820
+#: git-send-email.perl:815
 msgid ""
 "The following files are 8bit, but do not declare a Content-Transfer-"
 "Encoding.\n"
@@ -16172,11 +16310,11 @@ msgstr ""
 "Các trường sau đây là 8bit, nhưng không khai báo một Content-Transfer-"
 "Encoding.\n"
 
-#: git-send-email.perl:825
+#: git-send-email.perl:820
 msgid "Which 8bit encoding should I declare [UTF-8]? "
 msgstr "Bảng mã 8bit nào tôi nên khai báo [UTF-8]? "
 
-#: git-send-email.perl:833
+#: git-send-email.perl:828
 #, perl-format
 msgid ""
 "Refusing to send because the patch\n"
@@ -16189,20 +16327,20 @@ msgstr ""
 "có chủ đề ở dạng mẫu “*** SUBJECT HERE ***”. Dùng --force nếu bạn thực sự "
 "muốn gửi.\n"
 
-#: git-send-email.perl:852
+#: git-send-email.perl:847
 msgid "To whom should the emails be sent (if anyone)?"
 msgstr "Tới người mà thư được gửi (nếu có)?"
 
-#: git-send-email.perl:870
+#: git-send-email.perl:865
 #, perl-format
 msgid "fatal: alias '%s' expands to itself\n"
 msgstr "nghiêm trọng: bí danh “%s” được khai triển thành chính nó\n"
 
-#: git-send-email.perl:882
+#: git-send-email.perl:877
 msgid "Message-ID to be used as In-Reply-To for the first email (if any)? "
 msgstr "Message-ID được dùng như là In-Reply-To cho thư đầu tiên (nếu có)? "
 
-#: git-send-email.perl:932 git-send-email.perl:940
+#: git-send-email.perl:927 git-send-email.perl:935
 #, perl-format
 msgid "error: unable to extract a valid address from: %s\n"
 msgstr "lỗi: không thể rút trích một địa chỉ hợp lệ từ: %s\n"
@@ -16210,16 +16348,16 @@ msgstr "lỗi: không thể rút trích một địa chỉ hợp lệ từ: %s\n
 #. TRANSLATORS: Make sure to include [q] [d] [e] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-send-email.perl:944
+#: git-send-email.perl:939
 msgid "What to do with this address? ([q]uit|[d]rop|[e]dit): "
 msgstr "Làm gì với địa chỉ này? (thoát[q]|xóa[d]|sửa[e]): "
 
-#: git-send-email.perl:1245
+#: git-send-email.perl:1260
 #, perl-format
 msgid "CA path \"%s\" does not exist"
 msgstr "đường dẫn CA “%s” không tồn tại"
 
-#: git-send-email.perl:1320
+#: git-send-email.perl:1335
 msgid ""
 "    The Cc list above has been expanded by additional\n"
 "    addresses found in the patch commit message. By default\n"
@@ -16246,134 +16384,187 @@ msgstr ""
 #. TRANSLATORS: Make sure to include [y] [n] [q] [a] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-send-email.perl:1335
+#: git-send-email.perl:1350
 msgid "Send this email? ([y]es|[n]o|[q]uit|[a]ll): "
 msgstr "Gửi thư này chứ? ([y]có|[n]không|[q]thoát|[a]tất): "
 
-#: git-send-email.perl:1338
+#: git-send-email.perl:1353
 msgid "Send this email reply required"
 msgstr "Gửi thư này trả lời yêu cầu"
 
-#: git-send-email.perl:1364
+#: git-send-email.perl:1379
 msgid "The required SMTP server is not properly defined."
 msgstr "Máy phục vụ SMTP chưa được định nghĩa một cách thích hợp."
 
-#: git-send-email.perl:1411
+#: git-send-email.perl:1426
 #, perl-format
 msgid "Server does not support STARTTLS! %s"
 msgstr "Máy chủ không hỗ trợ STARTTLS! %s"
 
-#: git-send-email.perl:1416 git-send-email.perl:1420
+#: git-send-email.perl:1431 git-send-email.perl:1435
 #, perl-format
 msgid "STARTTLS failed! %s"
 msgstr "STARTTLS gặp lỗi! %s"
 
-#: git-send-email.perl:1430
+#: git-send-email.perl:1445
 msgid "Unable to initialize SMTP properly. Check config and use --smtp-debug."
 msgstr ""
 "Không thể khởi tạo SMTP một cách đúng đắn. Kiểm tra cấu hình và dùng --smtp-"
 "debug."
 
-#: git-send-email.perl:1448
+#: git-send-email.perl:1463
 #, perl-format
 msgid "Failed to send %s\n"
 msgstr "Gặp lỗi khi gửi %s\n"
 
-#: git-send-email.perl:1451
+#: git-send-email.perl:1466
 #, perl-format
 msgid "Dry-Sent %s\n"
 msgstr "Thử gửi %s\n"
 
-#: git-send-email.perl:1451
+#: git-send-email.perl:1466
 #, perl-format
 msgid "Sent %s\n"
 msgstr "Gửi %s\n"
 
-#: git-send-email.perl:1453
+#: git-send-email.perl:1468
 msgid "Dry-OK. Log says:\n"
 msgstr "Dry-OK. Nhật ký nói rằng:\n"
 
-#: git-send-email.perl:1453
+#: git-send-email.perl:1468
 msgid "OK. Log says:\n"
 msgstr "OK. Nhật ký nói rằng:\n"
 
-#: git-send-email.perl:1465
+#: git-send-email.perl:1480
 msgid "Result: "
 msgstr "Kết quả: "
 
-#: git-send-email.perl:1468
+#: git-send-email.perl:1483
 msgid "Result: OK\n"
 msgstr "Kết quả: Tốt\n"
 
-#: git-send-email.perl:1481
+#: git-send-email.perl:1496
 #, perl-format
 msgid "can't open file %s"
 msgstr "không thể mở tập tin “%s”"
 
-#: git-send-email.perl:1528 git-send-email.perl:1548
+#: git-send-email.perl:1543 git-send-email.perl:1563
 #, perl-format
 msgid "(mbox) Adding cc: %s from line '%s'\n"
 msgstr "(mbox) Thêm cc: %s từ dòng “%s”\n"
 
-#: git-send-email.perl:1534
+#: git-send-email.perl:1549
 #, perl-format
 msgid "(mbox) Adding to: %s from line '%s'\n"
 msgstr "(mbox) Đang thêm to: %s từ dòng “%s”\n"
 
-#: git-send-email.perl:1582
+#: git-send-email.perl:1597
 #, perl-format
 msgid "(non-mbox) Adding cc: %s from line '%s'\n"
 msgstr "(non-mbox) Thêm cc: %s từ dòng “%s”\n"
 
-#: git-send-email.perl:1605
+#: git-send-email.perl:1622
 #, perl-format
 msgid "(body) Adding cc: %s from line '%s'\n"
 msgstr "(body) Thêm cc: %s từ dòng “%s”\n"
 
-#: git-send-email.perl:1711
+#: git-send-email.perl:1728
 #, perl-format
 msgid "(%s) Could not execute '%s'"
 msgstr "(%s) Không thể thực thi “%s”"
 
-#: git-send-email.perl:1718
+#: git-send-email.perl:1735
 #, perl-format
 msgid "(%s) Adding %s: %s from: '%s'\n"
 msgstr "(%s) Đang thêm %s: %s từ: “%s”\n"
 
-#: git-send-email.perl:1722
+#: git-send-email.perl:1739
 #, perl-format
 msgid "(%s) failed to close pipe to '%s'"
 msgstr "(%s) gặp lỗi khi đóng đường ống đến “%s”"
 
-#: git-send-email.perl:1749
+#: git-send-email.perl:1766
 msgid "cannot send message as 7bit"
 msgstr "không thể lấy gửi thư dạng 7 bít"
 
-#: git-send-email.perl:1757
+#: git-send-email.perl:1774
 msgid "invalid transfer encoding"
 msgstr "bảng mã truyền không hợp lệ"
 
-#: git-send-email.perl:1795 git-send-email.perl:1846 git-send-email.perl:1856
+#: git-send-email.perl:1812 git-send-email.perl:1863 git-send-email.perl:1873
 #, perl-format
 msgid "unable to open %s: %s\n"
 msgstr "không thể mở %s: %s\n"
 
-#: git-send-email.perl:1798
+#: git-send-email.perl:1815
 #, perl-format
 msgid "%s: patch contains a line longer than 998 characters"
 msgstr "%s: miếng vá có chứa dòng dài hơn 998 ký tự"
 
-#: git-send-email.perl:1814
+#: git-send-email.perl:1831
 #, perl-format
 msgid "Skipping %s with backup suffix '%s'.\n"
 msgstr "Bỏ qua %s với hậu tố sao lưu dự phòng “%s”.\n"
 
 #. TRANSLATORS: please keep "[y|N]" as is.
-#: git-send-email.perl:1818
+#: git-send-email.perl:1835
 #, perl-format
 msgid "Do you really want to send %s? [y|N]: "
 msgstr "Bạn có thực sự muốn gửi %s? [y|N]: "
 
+#~ msgid "submodule update strategy not supported for submodule '%s'"
+#~ msgstr ""
+#~ "chiến lược cập nhật mô-đun-con không được hỗ trợ cho mô-đun-con “%s”"
+
+#~ msgid "change upstream info"
+#~ msgstr "thay đổi thông tin thượng nguồn"
+
+#~ msgid ""
+#~ "\n"
+#~ "If you wanted to make '%s' track '%s', do this:\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Nếu bạn muốn “%s” theo dõi “%s”, thực hiện lệnh sau:\n"
+#~ "\n"
+
+#~ msgid "basename"
+#~ msgstr "tên cơ sở"
+
+#~ msgid "prepend parent project's basename to output"
+#~ msgstr "treo vào trước tên cơ sở cha mẹ của đường dẫn vào kết xuất"
+
+#~ msgid ""
+#~ "When you have resolved this problem, run \"git rebase --continue\".\n"
+#~ "If you prefer to skip this patch, run \"git rebase --skip\" instead.\n"
+#~ "To check out the original branch and stop rebasing, run \"git rebase --"
+#~ "abort\"."
+#~ msgstr ""
+#~ "Khi bạn cần giải quyết vấn đề này hãy chạy lệnh \"git rebase --continue"
+#~ "\".\n"
+#~ "Nếu bạn có ý định bỏ qua miếng vá, thay vào đó bạn chạy \"git rebase --"
+#~ "skip\".\n"
+#~ "Để phục hồi lại thành nhánh nguyên thủy và dừng việc vá lại thì chạy "
+#~ "\"git rebase --abort\"."
+
+#~ msgid ""
+#~ "Warning: the SHA-1 is missing or isn't a commit in the following line:\n"
+#~ " - $line"
+#~ msgstr ""
+#~ "Cảnh báo: SHA-1 bị thiếu hoặc không phải là một lần chuyển giao trong "
+#~ "dòng sau đây:\n"
+#~ " - $line"
+
+#~ msgid ""
+#~ "Warning: the command isn't recognized in the following line:\n"
+#~ " - $line"
+#~ msgstr ""
+#~ "Cảnh báo: lệnh không nhận ra trong dòng sau đây:\n"
+#~ " - $line"
+
+#~ msgid "Or you can abort the rebase with 'git rebase --abort'."
+#~ msgstr "Hoặc là bạn có thể bãi bỏ lần cải tổ với lệnh “git rebase --abort”."
+
 #~ msgid "%"
 #~ msgid_plural "%"
 #~ msgstr[0] "%"
@@ -16834,9 +17025,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N]: "
 #~ msgstr ""
 #~ "Chuyển tiếp những lần chuyển giao nội bộ tới head thượng nguồn đã cập nhật"
 
-#~ msgid "unable to parse format"
-#~ msgstr "không thể phân tích định dạng"
-
 #~ msgid "improper format entered align:%s"
 #~ msgstr "định dạng không đúng chỗ căn chỉnh:%s"
 
@@ -16971,18 +17159,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N]: "
 #~ msgid "-b and -B are mutually exclusive"
 #~ msgstr "-b và -B loại từ lẫn nhau."
 
-#~ msgid ""
-#~ "When you have resolved this problem, run \"$cmdline --continue\".\n"
-#~ "If you prefer to skip this patch, run \"$cmdline --skip\" instead.\n"
-#~ "To restore the original branch and stop patching, run \"$cmdline --abort"
-#~ "\"."
-#~ msgstr ""
-#~ "Khi bạn cần giải quyết vấn đề này hãy chạy lệnh \"$cmdline --continue\".\n"
-#~ "Nếu bạn có ý định bỏ qua miếng vá, thay vào đó bạn chạy \"$cmdline --skip"
-#~ "\".\n"
-#~ "Để phục hồi lại thành nhánh nguyên thủy và dừng việc vá lại thì chạy "
-#~ "\"$cmdline --abort\"."
-
 #~ msgid "Patch format $patch_format is not supported."
 #~ msgstr "Định dạng miếng vá $patch_format không được hỗ trợ."
 
@@ -17056,9 +17232,6 @@ msgstr "Bạn có thực sự muốn gửi %s? [y|N]: "
 #~ msgid "no files added"
 #~ msgstr "chưa có tập tin nào được thêm vào"
 
-#~ msgid "force creation (when already exists)"
-#~ msgstr "ép buộc tạo (khi đã có nhánh cùng tên)"
-
 #~ msgid "slot"
 #~ msgstr "khe"