Merge branch 'dl/complete-cherry-pick-revert-skip'
[gitweb.git] / po / git.pot
index b1179f6982733103af41fb09cc2980046a15d15a..d799696ad09a13f4e4e1279c553ce384781504cb 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: Git Mailing List <git@vger.kernel.org>\n"
-"POT-Creation-Date: 2018-11-20 10:05+0800\n"
+"POT-Creation-Date: 2019-08-10 20:12+0800\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -18,160 +18,175 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
 
-#: advice.c:99
+#: advice.c:109
 #, c-format
 msgid "%shint: %.*s%s\n"
 msgstr ""
 
-#: advice.c:152
+#: advice.c:162
 msgid "Cherry-picking is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:154
+#: advice.c:164
 msgid "Committing is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:156
+#: advice.c:166
 msgid "Merging is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:158
+#: advice.c:168
 msgid "Pulling is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:160
+#: advice.c:170
 msgid "Reverting is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:162
+#: advice.c:172
 #, c-format
 msgid "It is not possible to %s because you have unmerged files."
 msgstr ""
 
-#: advice.c:170
+#: advice.c:180
 msgid ""
 "Fix them up in the work tree, and then use 'git add/rm <file>'\n"
 "as appropriate to mark resolution and make a commit."
 msgstr ""
 
-#: advice.c:178
+#: advice.c:188
 msgid "Exiting because of an unresolved conflict."
 msgstr ""
 
-#: advice.c:183 builtin/merge.c:1289
+#: advice.c:193 builtin/merge.c:1327
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr ""
 
-#: advice.c:185
+#: advice.c:195
 msgid "Please, commit your changes before merging."
 msgstr ""
 
-#: advice.c:186
+#: advice.c:196
 msgid "Exiting because of unfinished merge."
 msgstr ""
 
-#: advice.c:192
+#: advice.c:202
 #, c-format
 msgid ""
-"Note: checking out '%s'.\n"
+"Note: switching to '%s'.\n"
 "\n"
 "You are in 'detached HEAD' state. You can look around, make experimental\n"
 "changes and commit them, and you can discard any commits you make in this\n"
-"state without impacting any branches by performing another checkout.\n"
+"state without impacting any branches by switching back to a branch.\n"
 "\n"
 "If you want to create a new branch to retain commits you create, you may\n"
-"do so (now or later) by using -b with the checkout command again. Example:\n"
+"do so (now or later) by using -c with the switch command. Example:\n"
 "\n"
-"  git checkout -b <new-branch-name>\n"
+"  git switch -c <new-branch-name>\n"
 "\n"
+"Or undo this operation with:\n"
+"\n"
+"  git switch -\n"
+"\n"
+"Turn off this advice by setting config variable advice.detachedHead to "
+"false\n"
+"\n"
+msgstr ""
+
+#: alias.c:50
+msgid "cmdline ends with \\"
+msgstr ""
+
+#: alias.c:51
+msgid "unclosed quote"
 msgstr ""
 
-#: apply.c:59
+#: apply.c:69
 #, c-format
 msgid "unrecognized whitespace option '%s'"
 msgstr ""
 
-#: apply.c:75
+#: apply.c:85
 #, c-format
 msgid "unrecognized whitespace ignore option '%s'"
 msgstr ""
 
-#: apply.c:125
+#: apply.c:135
 msgid "--reject and --3way cannot be used together."
 msgstr ""
 
-#: apply.c:127
+#: apply.c:137
 msgid "--cached and --3way cannot be used together."
 msgstr ""
 
-#: apply.c:130
+#: apply.c:140
 msgid "--3way outside a repository"
 msgstr ""
 
-#: apply.c:141
+#: apply.c:151
 msgid "--index outside a repository"
 msgstr ""
 
-#: apply.c:144
+#: apply.c:154
 msgid "--cached outside a repository"
 msgstr ""
 
-#: apply.c:826
+#: apply.c:801
 #, c-format
 msgid "Cannot prepare timestamp regexp %s"
 msgstr ""
 
-#: apply.c:835
+#: apply.c:810
 #, c-format
 msgid "regexec returned %d for input: %s"
 msgstr ""
 
-#: apply.c:909
+#: apply.c:884
 #, c-format
 msgid "unable to find filename in patch at line %d"
 msgstr ""
 
-#: apply.c:947
+#: apply.c:922
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null, got %s on line %d"
 msgstr ""
 
-#: apply.c:953
+#: apply.c:928
 #, c-format
 msgid "git apply: bad git-diff - inconsistent new filename on line %d"
 msgstr ""
 
-#: apply.c:954
+#: apply.c:929
 #, c-format
 msgid "git apply: bad git-diff - inconsistent old filename on line %d"
 msgstr ""
 
-#: apply.c:959
+#: apply.c:934
 #, c-format
 msgid "git apply: bad git-diff - expected /dev/null on line %d"
 msgstr ""
 
-#: apply.c:988
+#: apply.c:963
 #, c-format
 msgid "invalid mode on line %d: %s"
 msgstr ""
 
-#: apply.c:1307
+#: apply.c:1282
 #, c-format
 msgid "inconsistent header lines %d and %d"
 msgstr ""
 
-#: apply.c:1479
+#: apply.c:1460
 #, c-format
 msgid "recount: unexpected line: %.*s"
 msgstr ""
 
-#: apply.c:1548
+#: apply.c:1529
 #, c-format
 msgid "patch fragment without header at line %d: %.*s"
 msgstr ""
 
-#: apply.c:1568
+#: apply.c:1551
 #, c-format
 msgid ""
 "git diff header lacks filename information when removing %d leading pathname "
@@ -182,527 +197,527 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: apply.c:1581
+#: apply.c:1564
 #, c-format
 msgid "git diff header lacks filename information (line %d)"
 msgstr ""
 
-#: apply.c:1769
+#: apply.c:1752
 msgid "new file depends on old contents"
 msgstr ""
 
-#: apply.c:1771
+#: apply.c:1754
 msgid "deleted file still has contents"
 msgstr ""
 
-#: apply.c:1805
+#: apply.c:1788
 #, c-format
 msgid "corrupt patch at line %d"
 msgstr ""
 
-#: apply.c:1842
+#: apply.c:1825
 #, c-format
 msgid "new file %s depends on old contents"
 msgstr ""
 
-#: apply.c:1844
+#: apply.c:1827
 #, c-format
 msgid "deleted file %s still has contents"
 msgstr ""
 
-#: apply.c:1847
+#: apply.c:1830
 #, c-format
 msgid "** warning: file %s becomes empty but is not deleted"
 msgstr ""
 
-#: apply.c:1994
+#: apply.c:1977
 #, c-format
 msgid "corrupt binary patch at line %d: %.*s"
 msgstr ""
 
-#: apply.c:2031
+#: apply.c:2014
 #, c-format
 msgid "unrecognized binary patch at line %d"
 msgstr ""
 
-#: apply.c:2193
+#: apply.c:2176
 #, c-format
 msgid "patch with only garbage at line %d"
 msgstr ""
 
-#: apply.c:2279
+#: apply.c:2262
 #, c-format
 msgid "unable to read symlink %s"
 msgstr ""
 
-#: apply.c:2283
+#: apply.c:2266
 #, c-format
 msgid "unable to open or read %s"
 msgstr ""
 
-#: apply.c:2942
+#: apply.c:2925
 #, c-format
 msgid "invalid start of line: '%c'"
 msgstr ""
 
-#: apply.c:3063
+#: apply.c:3046
 #, c-format
 msgid "Hunk #%d succeeded at %d (offset %d line)."
 msgid_plural "Hunk #%d succeeded at %d (offset %d lines)."
 msgstr[0] ""
 msgstr[1] ""
 
-#: apply.c:3075
+#: apply.c:3058
 #, c-format
 msgid "Context reduced to (%ld/%ld) to apply fragment at %d"
 msgstr ""
 
-#: apply.c:3081
+#: apply.c:3064
 #, c-format
 msgid ""
 "while searching for:\n"
 "%.*s"
 msgstr ""
 
-#: apply.c:3103
+#: apply.c:3086
 #, c-format
 msgid "missing binary patch data for '%s'"
 msgstr ""
 
-#: apply.c:3111
+#: apply.c:3094
 #, c-format
 msgid "cannot reverse-apply a binary patch without the reverse hunk to '%s'"
 msgstr ""
 
-#: apply.c:3158
+#: apply.c:3141
 #, c-format
 msgid "cannot apply binary patch to '%s' without full index line"
 msgstr ""
 
-#: apply.c:3168
+#: apply.c:3151
 #, c-format
 msgid ""
 "the patch applies to '%s' (%s), which does not match the current contents."
 msgstr ""
 
-#: apply.c:3176
+#: apply.c:3159
 #, c-format
 msgid "the patch applies to an empty '%s' but it is not empty"
 msgstr ""
 
-#: apply.c:3194
+#: apply.c:3177
 #, c-format
 msgid "the necessary postimage %s for '%s' cannot be read"
 msgstr ""
 
-#: apply.c:3207
+#: apply.c:3190
 #, c-format
 msgid "binary patch does not apply to '%s'"
 msgstr ""
 
-#: apply.c:3213
+#: apply.c:3196
 #, c-format
 msgid "binary patch to '%s' creates incorrect result (expecting %s, got %s)"
 msgstr ""
 
-#: apply.c:3234
+#: apply.c:3217
 #, c-format
 msgid "patch failed: %s:%ld"
 msgstr ""
 
-#: apply.c:3356
+#: apply.c:3340
 #, c-format
 msgid "cannot checkout %s"
 msgstr ""
 
-#: apply.c:3408 apply.c:3419 apply.c:3465 midx.c:58 setup.c:278
+#: apply.c:3392 apply.c:3403 apply.c:3449 midx.c:62 setup.c:279
 #, c-format
 msgid "failed to read %s"
 msgstr ""
 
-#: apply.c:3416
+#: apply.c:3400
 #, c-format
 msgid "reading from '%s' beyond a symbolic link"
 msgstr ""
 
-#: apply.c:3445 apply.c:3688
+#: apply.c:3429 apply.c:3672
 #, c-format
 msgid "path %s has been renamed/deleted"
 msgstr ""
 
-#: apply.c:3531 apply.c:3703
+#: apply.c:3515 apply.c:3687
 #, c-format
 msgid "%s: does not exist in index"
 msgstr ""
 
-#: apply.c:3540 apply.c:3711
+#: apply.c:3524 apply.c:3695
 #, c-format
 msgid "%s: does not match index"
 msgstr ""
 
-#: apply.c:3575
+#: apply.c:3559
 msgid "repository lacks the necessary blob to fall back on 3-way merge."
 msgstr ""
 
-#: apply.c:3578
+#: apply.c:3562
 #, c-format
 msgid "Falling back to three-way merge...\n"
 msgstr ""
 
-#: apply.c:3594 apply.c:3598
+#: apply.c:3578 apply.c:3582
 #, c-format
 msgid "cannot read the current contents of '%s'"
 msgstr ""
 
-#: apply.c:3610
+#: apply.c:3594
 #, c-format
 msgid "Failed to fall back on three-way merge...\n"
 msgstr ""
 
-#: apply.c:3624
+#: apply.c:3608
 #, c-format
 msgid "Applied patch to '%s' with conflicts.\n"
 msgstr ""
 
-#: apply.c:3629
+#: apply.c:3613
 #, c-format
 msgid "Applied patch to '%s' cleanly.\n"
 msgstr ""
 
-#: apply.c:3655
+#: apply.c:3639
 msgid "removal patch leaves file contents"
 msgstr ""
 
-#: apply.c:3728
+#: apply.c:3712
 #, c-format
 msgid "%s: wrong type"
 msgstr ""
 
-#: apply.c:3730
+#: apply.c:3714
 #, c-format
 msgid "%s has type %o, expected %o"
 msgstr ""
 
-#: apply.c:3881 apply.c:3883
+#: apply.c:3865 apply.c:3867 read-cache.c:830 read-cache.c:856
+#: read-cache.c:1309
 #, c-format
 msgid "invalid path '%s'"
 msgstr ""
 
-#: apply.c:3939
+#: apply.c:3923
 #, c-format
 msgid "%s: already exists in index"
 msgstr ""
 
-#: apply.c:3942
+#: apply.c:3926
 #, c-format
 msgid "%s: already exists in working directory"
 msgstr ""
 
-#: apply.c:3962
+#: apply.c:3946
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o)"
 msgstr ""
 
-#: apply.c:3967
+#: apply.c:3951
 #, c-format
 msgid "new mode (%o) of %s does not match old mode (%o) of %s"
 msgstr ""
 
-#: apply.c:3987
+#: apply.c:3971
 #, c-format
 msgid "affected file '%s' is beyond a symbolic link"
 msgstr ""
 
-#: apply.c:3991
+#: apply.c:3975
 #, c-format
 msgid "%s: patch does not apply"
 msgstr ""
 
-#: apply.c:4006
+#: apply.c:3990
 #, c-format
 msgid "Checking patch %s..."
 msgstr ""
 
-#: apply.c:4098
+#: apply.c:4082
 #, c-format
 msgid "sha1 information is lacking or useless for submodule %s"
 msgstr ""
 
-#: apply.c:4105
+#: apply.c:4089
 #, c-format
 msgid "mode change for %s, which is not in current HEAD"
 msgstr ""
 
-#: apply.c:4108
+#: apply.c:4092
 #, c-format
 msgid "sha1 information is lacking or useless (%s)."
 msgstr ""
 
-#: apply.c:4113 builtin/checkout.c:244 builtin/reset.c:142
+#: apply.c:4097 builtin/checkout.c:278 builtin/reset.c:143
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr ""
 
-#: apply.c:4117
+#: apply.c:4101
 #, c-format
 msgid "could not add %s to temporary index"
 msgstr ""
 
-#: apply.c:4127
+#: apply.c:4111
 #, c-format
 msgid "could not write temporary index to %s"
 msgstr ""
 
-#: apply.c:4265
+#: apply.c:4249
 #, c-format
 msgid "unable to remove %s from index"
 msgstr ""
 
-#: apply.c:4299
+#: apply.c:4283
 #, c-format
 msgid "corrupt patch for submodule %s"
 msgstr ""
 
-#: apply.c:4305
+#: apply.c:4289
 #, c-format
 msgid "unable to stat newly created file '%s'"
 msgstr ""
 
-#: apply.c:4313
+#: apply.c:4297
 #, c-format
 msgid "unable to create backing store for newly created file %s"
 msgstr ""
 
-#: apply.c:4319 apply.c:4464
+#: apply.c:4303 apply.c:4448
 #, c-format
 msgid "unable to add cache entry for %s"
 msgstr ""
 
-#: apply.c:4362
+#: apply.c:4346
 #, c-format
 msgid "failed to write to '%s'"
 msgstr ""
 
-#: apply.c:4366
+#: apply.c:4350
 #, c-format
 msgid "closing file '%s'"
 msgstr ""
 
-#: apply.c:4436
+#: apply.c:4420
 #, c-format
 msgid "unable to write file '%s' mode %o"
 msgstr ""
 
-#: apply.c:4534
+#: apply.c:4518
 #, c-format
 msgid "Applied patch %s cleanly."
 msgstr ""
 
-#: apply.c:4542
+#: apply.c:4526
 msgid "internal error"
 msgstr ""
 
-#: apply.c:4545
+#: apply.c:4529
 #, c-format
 msgid "Applying patch %%s with %d reject..."
 msgid_plural "Applying patch %%s with %d rejects..."
 msgstr[0] ""
 msgstr[1] ""
 
-#: apply.c:4556
+#: apply.c:4540
 #, c-format
 msgid "truncating .rej filename to %.*s.rej"
 msgstr ""
 
-#: apply.c:4564 builtin/fetch.c:843 builtin/fetch.c:1122
+#: apply.c:4548 builtin/fetch.c:878 builtin/fetch.c:1168
 #, c-format
 msgid "cannot open %s"
 msgstr ""
 
-#: apply.c:4578
+#: apply.c:4562
 #, c-format
 msgid "Hunk #%d applied cleanly."
 msgstr ""
 
-#: apply.c:4582
+#: apply.c:4566
 #, c-format
 msgid "Rejected hunk #%d."
 msgstr ""
 
-#: apply.c:4692
+#: apply.c:4676
 #, c-format
 msgid "Skipped patch '%s'."
 msgstr ""
 
-#: apply.c:4700
+#: apply.c:4684
 msgid "unrecognized input"
 msgstr ""
 
-#: apply.c:4719
+#: apply.c:4704
 msgid "unable to read index file"
 msgstr ""
 
-#: apply.c:4874
+#: apply.c:4859
 #, c-format
 msgid "can't open patch '%s': %s"
 msgstr ""
 
-#: apply.c:4901
+#: apply.c:4886
 #, c-format
 msgid "squelched %d whitespace error"
 msgid_plural "squelched %d whitespace errors"
 msgstr[0] ""
 msgstr[1] ""
 
-#: apply.c:4907 apply.c:4922
+#: apply.c:4892 apply.c:4907
 #, c-format
 msgid "%d line adds whitespace errors."
 msgid_plural "%d lines add whitespace errors."
 msgstr[0] ""
 msgstr[1] ""
 
-#: apply.c:4915
+#: apply.c:4900
 #, c-format
 msgid "%d line applied after fixing whitespace errors."
 msgid_plural "%d lines applied after fixing whitespace errors."
 msgstr[0] ""
 msgstr[1] ""
 
-#: apply.c:4931 builtin/add.c:538 builtin/mv.c:300 builtin/rm.c:389
+#: apply.c:4916 builtin/add.c:540 builtin/mv.c:301 builtin/rm.c:390
 msgid "Unable to write new index file"
 msgstr ""
 
-#: apply.c:4958 apply.c:4961 builtin/am.c:2209 builtin/am.c:2212
-#: builtin/clone.c:121 builtin/fetch.c:118 builtin/merge.c:262
-#: builtin/pull.c:199 builtin/submodule--helper.c:406
-#: builtin/submodule--helper.c:1362 builtin/submodule--helper.c:1365
-#: builtin/submodule--helper.c:1846 builtin/submodule--helper.c:1849
-#: builtin/submodule--helper.c:2088 git-add--interactive.perl:197
+#: apply.c:4943 apply.c:4946 builtin/am.c:2208 builtin/am.c:2211
+#: builtin/clone.c:123 builtin/fetch.c:128 builtin/merge.c:273
+#: builtin/pull.c:208 builtin/submodule--helper.c:407
+#: builtin/submodule--helper.c:1367 builtin/submodule--helper.c:1370
+#: builtin/submodule--helper.c:1850 builtin/submodule--helper.c:1853
+#: builtin/submodule--helper.c:2092 git-add--interactive.perl:211
 msgid "path"
 msgstr ""
 
-#: apply.c:4959
+#: apply.c:4944
 msgid "don't apply changes matching the given path"
 msgstr ""
 
-#: apply.c:4962
+#: apply.c:4947
 msgid "apply changes matching the given path"
 msgstr ""
 
-#: apply.c:4964 builtin/am.c:2218
+#: apply.c:4949 builtin/am.c:2217
 msgid "num"
 msgstr ""
 
-#: apply.c:4965
+#: apply.c:4950
 msgid "remove <num> leading slashes from traditional diff paths"
 msgstr ""
 
-#: apply.c:4968
+#: apply.c:4953
 msgid "ignore additions made by the patch"
 msgstr ""
 
-#: apply.c:4970
+#: apply.c:4955
 msgid "instead of applying the patch, output diffstat for the input"
 msgstr ""
 
-#: apply.c:4974
+#: apply.c:4959
 msgid "show number of added and deleted lines in decimal notation"
 msgstr ""
 
-#: apply.c:4976
+#: apply.c:4961
 msgid "instead of applying the patch, output a summary for the input"
 msgstr ""
 
-#: apply.c:4978
+#: apply.c:4963
 msgid "instead of applying the patch, see if the patch is applicable"
 msgstr ""
 
-#: apply.c:4980
+#: apply.c:4965
 msgid "make sure the patch is applicable to the current index"
 msgstr ""
 
-#: apply.c:4982
+#: apply.c:4967
 msgid "mark new files with `git add --intent-to-add`"
 msgstr ""
 
-#: apply.c:4984
+#: apply.c:4969
 msgid "apply a patch without touching the working tree"
 msgstr ""
 
-#: apply.c:4986
+#: apply.c:4971
 msgid "accept a patch that touches outside the working area"
 msgstr ""
 
-#: apply.c:4989
+#: apply.c:4974
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr ""
 
-#: apply.c:4991
+#: apply.c:4976
 msgid "attempt three-way merge if a patch does not apply"
 msgstr ""
 
-#: apply.c:4993
+#: apply.c:4978
 msgid "build a temporary index based on embedded index information"
 msgstr ""
 
-#: apply.c:4996 builtin/checkout-index.c:170 builtin/ls-files.c:523
+#: apply.c:4981 builtin/checkout-index.c:173 builtin/ls-files.c:524
 msgid "paths are separated with NUL character"
 msgstr ""
 
-#: apply.c:4998
+#: apply.c:4983
 msgid "ensure at least <n> lines of context match"
 msgstr ""
 
-#: apply.c:4999 builtin/am.c:2197 builtin/interpret-trailers.c:97
-#: builtin/interpret-trailers.c:99 builtin/interpret-trailers.c:101
-#: builtin/pack-objects.c:3310 builtin/rebase.c:839
+#: apply.c:4984 builtin/am.c:2196 builtin/interpret-trailers.c:98
+#: builtin/interpret-trailers.c:100 builtin/interpret-trailers.c:102
+#: builtin/pack-objects.c:3330 builtin/rebase.c:1421
 msgid "action"
 msgstr ""
 
-#: apply.c:5000
+#: apply.c:4985
 msgid "detect new or modified lines that have whitespace errors"
 msgstr ""
 
-#: apply.c:5003 apply.c:5006
+#: apply.c:4988 apply.c:4991
 msgid "ignore changes in whitespace when finding context"
 msgstr ""
 
-#: apply.c:5009
+#: apply.c:4994
 msgid "apply the patch in reverse"
 msgstr ""
 
-#: apply.c:5011
+#: apply.c:4996
 msgid "don't expect at least one line of context"
 msgstr ""
 
-#: apply.c:5013
+#: apply.c:4998
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr ""
 
-#: apply.c:5015
+#: apply.c:5000
 msgid "allow overlapping hunks"
 msgstr ""
 
-#: apply.c:5016 builtin/add.c:290 builtin/check-ignore.c:21
-#: builtin/commit.c:1309 builtin/count-objects.c:98 builtin/fsck.c:698
-#: builtin/log.c:2023 builtin/mv.c:122 builtin/read-tree.c:127
-#: builtin/rebase--interactive.c:157
+#: apply.c:5001 builtin/add.c:291 builtin/check-ignore.c:22
+#: builtin/commit.c:1337 builtin/count-objects.c:98 builtin/fsck.c:786
+#: builtin/log.c:2068 builtin/mv.c:123 builtin/read-tree.c:128
 msgid "be verbose"
 msgstr ""
 
-#: apply.c:5018
+#: apply.c:5003
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr ""
 
-#: apply.c:5021
+#: apply.c:5006
 msgid "do not trust the line counts in the hunk headers"
 msgstr ""
 
-#: apply.c:5023 builtin/am.c:2206
+#: apply.c:5008 builtin/am.c:2205
 msgid "root"
 msgstr ""
 
-#: apply.c:5024
+#: apply.c:5009
 msgid "prepend <root> to all filenames"
 msgstr ""
 
@@ -723,99 +738,118 @@ msgstr ""
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr ""
 
-#: archive.c:370 builtin/add.c:176 builtin/add.c:514 builtin/rm.c:298
+#: archive.c:372 builtin/add.c:177 builtin/add.c:516 builtin/rm.c:299
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr ""
 
-#: archive.c:453
+#: archive.c:396
+#, c-format
+msgid "no such ref: %.*s"
+msgstr ""
+
+#: archive.c:401
+#, c-format
+msgid "not a valid object name: %s"
+msgstr ""
+
+#: archive.c:414
+#, c-format
+msgid "not a tree object: %s"
+msgstr ""
+
+#: archive.c:426
+msgid "current working directory is untracked"
+msgstr ""
+
+#: archive.c:457
 msgid "fmt"
 msgstr ""
 
-#: archive.c:453
+#: archive.c:457
 msgid "archive format"
 msgstr ""
 
-#: archive.c:454 builtin/log.c:1536
+#: archive.c:458 builtin/log.c:1580
 msgid "prefix"
 msgstr ""
 
-#: archive.c:455
+#: archive.c:459
 msgid "prepend prefix to each pathname in the archive"
 msgstr ""
 
-#: archive.c:456 builtin/blame.c:820 builtin/blame.c:821 builtin/config.c:129
-#: builtin/fast-export.c:1013 builtin/fast-export.c:1015 builtin/grep.c:884
-#: builtin/hash-object.c:104 builtin/ls-files.c:559 builtin/ls-files.c:562
-#: builtin/notes.c:412 builtin/notes.c:575 builtin/read-tree.c:122
-#: parse-options.h:162
+#: archive.c:460 builtin/blame.c:862 builtin/blame.c:874 builtin/blame.c:875
+#: builtin/commit-tree.c:117 builtin/config.c:129 builtin/fast-export.c:1134
+#: builtin/fast-export.c:1136 builtin/grep.c:897 builtin/hash-object.c:105
+#: builtin/ls-files.c:560 builtin/ls-files.c:563 builtin/notes.c:412
+#: builtin/notes.c:578 builtin/read-tree.c:123 parse-options.h:177
 msgid "file"
 msgstr ""
 
-#: archive.c:457 builtin/archive.c:89
+#: archive.c:461 builtin/archive.c:90
 msgid "write the archive to this file"
 msgstr ""
 
-#: archive.c:459
+#: archive.c:463
 msgid "read .gitattributes in working directory"
 msgstr ""
 
-#: archive.c:460
+#: archive.c:464
 msgid "report archived files on stderr"
 msgstr ""
 
-#: archive.c:461
+#: archive.c:465
 msgid "store only"
 msgstr ""
 
-#: archive.c:462
+#: archive.c:466
 msgid "compress faster"
 msgstr ""
 
-#: archive.c:470
+#: archive.c:474
 msgid "compress better"
 msgstr ""
 
-#: archive.c:473
+#: archive.c:477
 msgid "list supported archive formats"
 msgstr ""
 
-#: archive.c:475 builtin/archive.c:90 builtin/clone.c:111 builtin/clone.c:114
-#: builtin/submodule--helper.c:1374 builtin/submodule--helper.c:1855
+#: archive.c:479 builtin/archive.c:91 builtin/clone.c:113 builtin/clone.c:116
+#: builtin/submodule--helper.c:1379 builtin/submodule--helper.c:1859
 msgid "repo"
 msgstr ""
 
-#: archive.c:476 builtin/archive.c:91
+#: archive.c:480 builtin/archive.c:92
 msgid "retrieve the archive from remote repository <repo>"
 msgstr ""
 
-#: archive.c:477 builtin/archive.c:92 builtin/difftool.c:714
-#: builtin/notes.c:496
+#: archive.c:481 builtin/archive.c:93 builtin/difftool.c:707
+#: builtin/notes.c:498
 msgid "command"
 msgstr ""
 
-#: archive.c:478 builtin/archive.c:93
+#: archive.c:482 builtin/archive.c:94
 msgid "path to the remote git-upload-archive command"
 msgstr ""
 
-#: archive.c:485
+#: archive.c:489
 msgid "Unexpected option --remote"
 msgstr ""
 
-#: archive.c:487
+#: archive.c:491
 msgid "Option --exec can only be used together with --remote"
 msgstr ""
 
-#: archive.c:489
+#: archive.c:493
 msgid "Unexpected option --output"
 msgstr ""
 
-#: archive.c:511
+#: archive.c:515
 #, c-format
 msgid "Unknown archive format '%s'"
 msgstr ""
 
-#: archive.c:518
+#: archive.c:522
 #, c-format
 msgid "Argument not supported for format '%s': -%d"
 msgstr ""
@@ -835,16 +869,16 @@ msgstr ""
 msgid "cannot read %s"
 msgstr ""
 
-#: archive-tar.c:458
+#: archive-tar.c:459
 #, c-format
 msgid "unable to start '%s' filter"
 msgstr ""
 
-#: archive-tar.c:461
+#: archive-tar.c:462
 msgid "unable to redirect descriptor"
 msgstr ""
 
-#: archive-tar.c:468
+#: archive-tar.c:469
 #, c-format
 msgid "'%s' filter reported error"
 msgstr ""
@@ -859,7 +893,7 @@ msgstr ""
 msgid "path too long (%d chars, SHA1: %s): %s"
 msgstr ""
 
-#: archive-zip.c:474 builtin/pack-objects.c:224 builtin/pack-objects.c:227
+#: archive-zip.c:474 builtin/pack-objects.c:230 builtin/pack-objects.c:233
 #, c-format
 msgid "deflate error (%d)"
 msgstr ""
@@ -869,12 +903,17 @@ msgstr ""
 msgid "timestamp too large for this system: %<PRIuMAX>"
 msgstr ""
 
-#: attr.c:212
+#: attr.c:211
 #, c-format
 msgid "%.*s is not a valid attribute name"
 msgstr ""
 
-#: attr.c:409
+#: attr.c:368
+#, c-format
+msgid "%s not allowed: %s:%d"
+msgstr ""
+
+#: attr.c:408
 msgid ""
 "Negative patterns are ignored in git attributes\n"
 "Use '\\!' for literal leading exclamation."
@@ -885,38 +924,38 @@ msgstr ""
 msgid "Badly quoted content in file '%s': %s"
 msgstr ""
 
-#: bisect.c:676
+#: bisect.c:678
 #, c-format
 msgid "We cannot bisect more!\n"
 msgstr ""
 
-#: bisect.c:730
+#: bisect.c:733
 #, c-format
 msgid "Not a valid commit name %s"
 msgstr ""
 
-#: bisect.c:754
+#: bisect.c:758
 #, c-format
 msgid ""
 "The merge base %s is bad.\n"
 "This means the bug has been fixed between %s and [%s].\n"
 msgstr ""
 
-#: bisect.c:759
+#: bisect.c:763
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
 "The property has changed between %s and [%s].\n"
 msgstr ""
 
-#: bisect.c:764
+#: bisect.c:768
 #, c-format
 msgid ""
 "The merge base %s is %s.\n"
 "This means the first '%s' commit is between %s and [%s].\n"
 msgstr ""
 
-#: bisect.c:772
+#: bisect.c:776
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -924,7 +963,7 @@ msgid ""
 "Maybe you mistook %s and %s revs?\n"
 msgstr ""
 
-#: bisect.c:785
+#: bisect.c:789
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -932,22 +971,22 @@ msgid ""
 "We continue anyway."
 msgstr ""
 
-#: bisect.c:818
+#: bisect.c:822
 #, c-format
 msgid "Bisecting: a merge base must be tested\n"
 msgstr ""
 
-#: bisect.c:858
+#: bisect.c:865
 #, c-format
 msgid "a %s revision is needed"
 msgstr ""
 
-#: bisect.c:877 builtin/notes.c:177 builtin/tag.c:237
+#: bisect.c:884 builtin/notes.c:177 builtin/tag.c:254
 #, c-format
 msgid "could not create file '%s'"
 msgstr ""
 
-#: bisect.c:928 builtin/merge.c:138
+#: bisect.c:928 builtin/merge.c:148
 #, c-format
 msgid "could not read file '%s'"
 msgstr ""
@@ -985,42 +1024,42 @@ msgid_plural "Bisecting: %d revisions left to test after this %s\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: blame.c:1787
+#: blame.c:2697
 msgid "--contents and --reverse do not blend well."
 msgstr ""
 
-#: blame.c:1801
+#: blame.c:2711
 msgid "cannot use --contents with final commit object name"
 msgstr ""
 
-#: blame.c:1822
+#: blame.c:2732
 msgid "--reverse and --first-parent together require specified latest commit"
 msgstr ""
 
-#: blame.c:1831 bundle.c:162 ref-filter.c:2046 sequencer.c:1963
-#: sequencer.c:4002 builtin/commit.c:1001 builtin/log.c:377 builtin/log.c:932
-#: builtin/log.c:1407 builtin/log.c:1783 builtin/log.c:2072 builtin/merge.c:406
-#: builtin/pack-objects.c:3135 builtin/pack-objects.c:3150
+#: blame.c:2741 bundle.c:167 ref-filter.c:2196 remote.c:1938 sequencer.c:2033
+#: sequencer.c:4348 builtin/commit.c:1020 builtin/log.c:387 builtin/log.c:963
+#: builtin/log.c:1451 builtin/log.c:1827 builtin/log.c:2117 builtin/merge.c:411
+#: builtin/pack-objects.c:3148 builtin/pack-objects.c:3163
 #: builtin/shortlog.c:192
 msgid "revision walk setup failed"
 msgstr ""
 
-#: blame.c:1849
+#: blame.c:2759
 msgid ""
 "--reverse --first-parent together require range along first-parent chain"
 msgstr ""
 
-#: blame.c:1860
+#: blame.c:2770
 #, c-format
 msgid "no such path %s in %s"
 msgstr ""
 
-#: blame.c:1871
+#: blame.c:2781
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr ""
 
-#: branch.c:52
+#: branch.c:53
 #, c-format
 msgid ""
 "\n"
@@ -1029,85 +1068,85 @@ msgid ""
 "\"git branch --set-upstream-to=%s%s%s\"."
 msgstr ""
 
-#: branch.c:66
+#: branch.c:67
 #, c-format
 msgid "Not setting branch %s as its own upstream."
 msgstr ""
 
-#: branch.c:92
+#: branch.c:93
 #, c-format
 msgid "Branch '%s' set up to track remote branch '%s' from '%s' by rebasing."
 msgstr ""
 
-#: branch.c:93
+#: branch.c:94
 #, c-format
 msgid "Branch '%s' set up to track remote branch '%s' from '%s'."
 msgstr ""
 
-#: branch.c:97
+#: branch.c:98
 #, c-format
 msgid "Branch '%s' set up to track local branch '%s' by rebasing."
 msgstr ""
 
-#: branch.c:98
+#: branch.c:99
 #, c-format
 msgid "Branch '%s' set up to track local branch '%s'."
 msgstr ""
 
-#: branch.c:103
+#: branch.c:104
 #, c-format
 msgid "Branch '%s' set up to track remote ref '%s' by rebasing."
 msgstr ""
 
-#: branch.c:104
+#: branch.c:105
 #, c-format
 msgid "Branch '%s' set up to track remote ref '%s'."
 msgstr ""
 
-#: branch.c:108
+#: branch.c:109
 #, c-format
 msgid "Branch '%s' set up to track local ref '%s' by rebasing."
 msgstr ""
 
-#: branch.c:109
+#: branch.c:110
 #, c-format
 msgid "Branch '%s' set up to track local ref '%s'."
 msgstr ""
 
-#: branch.c:118
+#: branch.c:119
 msgid "Unable to write upstream branch configuration"
 msgstr ""
 
-#: branch.c:155
+#: branch.c:156
 #, c-format
 msgid "Not tracking: ambiguous information for ref %s"
 msgstr ""
 
-#: branch.c:188
+#: branch.c:189
 #, c-format
 msgid "'%s' is not a valid branch name."
 msgstr ""
 
-#: branch.c:207
+#: branch.c:208
 #, c-format
 msgid "A branch named '%s' already exists."
 msgstr ""
 
-#: branch.c:212
+#: branch.c:213
 msgid "Cannot force update the current branch."
 msgstr ""
 
-#: branch.c:232
+#: branch.c:233
 #, c-format
 msgid "Cannot setup tracking information; starting point '%s' is not a branch."
 msgstr ""
 
-#: branch.c:234
+#: branch.c:235
 #, c-format
 msgid "the requested upstream branch '%s' does not exist"
 msgstr ""
 
-#: branch.c:236
+#: branch.c:237
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -1119,27 +1158,27 @@ msgid ""
 "\"git push -u\" to set the upstream config as you push."
 msgstr ""
 
-#: branch.c:279
+#: branch.c:281
 #, c-format
 msgid "Not a valid object name: '%s'."
 msgstr ""
 
-#: branch.c:299
+#: branch.c:301
 #, c-format
 msgid "Ambiguous object name: '%s'."
 msgstr ""
 
-#: branch.c:304
+#: branch.c:306
 #, c-format
 msgid "Not a valid branch point: '%s'."
 msgstr ""
 
-#: branch.c:358
+#: branch.c:364
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr ""
 
-#: branch.c:381
+#: branch.c:387
 #, c-format
 msgid "HEAD of working tree %s is not updated"
 msgstr ""
@@ -1154,70 +1193,74 @@ msgstr ""
 msgid "unrecognized header: %s%s (%d)"
 msgstr ""
 
-#: bundle.c:90 rerere.c:480 rerere.c:690 sequencer.c:2182 sequencer.c:2722
-#: builtin/commit.c:774
+#: bundle.c:90 rerere.c:480 rerere.c:690 sequencer.c:2283 sequencer.c:3024
+#: builtin/commit.c:791
 #, c-format
 msgid "could not open '%s'"
 msgstr ""
 
-#: bundle.c:141
+#: bundle.c:143
 msgid "Repository lacks these prerequisite commits:"
 msgstr ""
 
-#: bundle.c:192
+#: bundle.c:146
+msgid "need a repository to verify a bundle"
+msgstr ""
+
+#: bundle.c:197
 #, c-format
 msgid "The bundle contains this ref:"
 msgid_plural "The bundle contains these %d refs:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: bundle.c:199
+#: bundle.c:204
 msgid "The bundle records a complete history."
 msgstr ""
 
-#: bundle.c:201
+#: bundle.c:206
 #, c-format
 msgid "The bundle requires this ref:"
 msgid_plural "The bundle requires these %d refs:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: bundle.c:267
+#: bundle.c:272
 msgid "unable to dup bundle descriptor"
 msgstr ""
 
-#: bundle.c:274
+#: bundle.c:279
 msgid "Could not spawn pack-objects"
 msgstr ""
 
-#: bundle.c:285
+#: bundle.c:290
 msgid "pack-objects died"
 msgstr ""
 
-#: bundle.c:327
+#: bundle.c:332
 msgid "rev-list died"
 msgstr ""
 
-#: bundle.c:376
+#: bundle.c:381
 #, c-format
 msgid "ref '%s' is excluded by the rev-list options"
 msgstr ""
 
-#: bundle.c:456 builtin/log.c:192 builtin/log.c:1688 builtin/shortlog.c:304
+#: bundle.c:460 builtin/log.c:202 builtin/log.c:1732 builtin/shortlog.c:306
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr ""
 
-#: bundle.c:464
+#: bundle.c:468
 msgid "Refusing to create empty bundle."
 msgstr ""
 
-#: bundle.c:474
+#: bundle.c:478
 #, c-format
 msgid "cannot create '%s'"
 msgstr ""
 
-#: bundle.c:498
+#: bundle.c:503
 msgid "index-pack died"
 msgstr ""
 
@@ -1226,9 +1269,8 @@ msgstr ""
 msgid "invalid color value: %.*s"
 msgstr ""
 
-#: commit.c:50 sequencer.c:2528 builtin/am.c:370 builtin/am.c:414
-#: builtin/am.c:1390 builtin/am.c:2025 builtin/replace.c:376
-#: builtin/replace.c:448
+#: commit.c:50 sequencer.c:2727 builtin/am.c:355 builtin/am.c:399
+#: builtin/am.c:1378 builtin/am.c:2020 builtin/replace.c:455
 #, c-format
 msgid "could not parse %s"
 msgstr ""
@@ -1238,7 +1280,7 @@ msgstr ""
 msgid "%s %s is not a commit!"
 msgstr ""
 
-#: commit.c:193
+#: commit.c:192
 msgid ""
 "Support for <GIT_DIR>/info/grafts is deprecated\n"
 "and will be removed in a future Git version.\n"
@@ -1250,122 +1292,279 @@ msgid ""
 "\"git config advice.graftFileDeprecated false\""
 msgstr ""
 
-#: commit.c:1115
+#: commit.c:1127
 #, c-format
 msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
 msgstr ""
 
-#: commit.c:1118
+#: commit.c:1130
 #, c-format
 msgid "Commit %s has a bad GPG signature allegedly by %s."
 msgstr ""
 
-#: commit.c:1121
+#: commit.c:1133
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr ""
 
-#: commit.c:1124
+#: commit.c:1136
 #, c-format
 msgid "Commit %s has a good GPG signature by %s\n"
 msgstr ""
 
-#: commit.c:1378
+#: commit.c:1390
 msgid ""
 "Warning: commit message did not conform to UTF-8.\n"
 "You may want to amend it after fixing the message, or set the config\n"
 "variable i18n.commitencoding to the encoding your project uses.\n"
 msgstr ""
 
-#: commit-graph.c:108
+#: commit-graph.c:127
+msgid "commit-graph file is too small"
+msgstr ""
+
+#: commit-graph.c:192
 #, c-format
-msgid "graph file %s is too small"
+msgid "commit-graph signature %X does not match signature %X"
 msgstr ""
 
-#: commit-graph.c:115
+#: commit-graph.c:199
 #, c-format
-msgid "graph signature %X does not match signature %X"
+msgid "commit-graph version %X does not match version %X"
 msgstr ""
 
-#: commit-graph.c:122
+#: commit-graph.c:206
 #, c-format
-msgid "graph version %X does not match version %X"
+msgid "commit-graph hash version %X does not match version %X"
+msgstr ""
+
+#: commit-graph.c:229
+msgid "commit-graph chunk lookup table entry missing; file may be incomplete"
 msgstr ""
 
-#: commit-graph.c:129
+#: commit-graph.c:240
 #, c-format
-msgid "hash version %X does not match version %X"
+msgid "commit-graph improper chunk offset %08x%08x"
 msgstr ""
 
-#: commit-graph.c:153
+#: commit-graph.c:283
 #, c-format
-msgid "improper chunk offset %08x%08x"
+msgid "commit-graph chunk id %08x appears multiple times"
+msgstr ""
+
+#: commit-graph.c:347
+msgid "commit-graph has no base graphs chunk"
+msgstr ""
+
+#: commit-graph.c:357
+msgid "commit-graph chain does not match"
 msgstr ""
 
-#: commit-graph.c:189
+#: commit-graph.c:404
 #, c-format
-msgid "chunk id %08x appears multiple times"
+msgid "invalid commit-graph chain: line '%s' not a hash"
+msgstr ""
+
+#: commit-graph.c:430
+msgid "unable to find all commit-graph files"
+msgstr ""
+
+#: commit-graph.c:554 commit-graph.c:614
+msgid "invalid commit position. commit-graph is likely corrupt"
 msgstr ""
 
-#: commit-graph.c:308
+#: commit-graph.c:575
 #, c-format
 msgid "could not find commit %s"
 msgstr ""
 
-#: commit-graph.c:617 builtin/pack-objects.c:2652
+#: commit-graph.c:1002 builtin/pack-objects.c:2657
 #, c-format
 msgid "unable to get type of object %s"
 msgstr ""
 
-#: commit-graph.c:651
-msgid "Annotating commits in commit graph"
+#: commit-graph.c:1034
+msgid "Loading known commits in commit graph"
 msgstr ""
 
-#: commit-graph.c:691
-msgid "Computing commit graph generation numbers"
+#: commit-graph.c:1051
+msgid "Expanding reachable commits in commit graph"
 msgstr ""
 
-#: commit-graph.c:803 commit-graph.c:826 commit-graph.c:852
-msgid "Finding commits for commit graph"
+#: commit-graph.c:1070
+msgid "Clearing commit marks in commit graph"
 msgstr ""
 
-#: commit-graph.c:812
+#: commit-graph.c:1089
+msgid "Computing commit graph generation numbers"
+msgstr ""
+
+#: commit-graph.c:1163
+#, c-format
+msgid "Finding commits for commit graph in %d pack"
+msgid_plural "Finding commits for commit graph in %d packs"
+msgstr[0] ""
+msgstr[1] ""
+
+#: commit-graph.c:1176
 #, c-format
 msgid "error adding pack %s"
 msgstr ""
 
-#: commit-graph.c:814
+#: commit-graph.c:1180
 #, c-format
 msgid "error opening index for %s"
 msgstr ""
 
-#: commit-graph.c:868
+#: commit-graph.c:1204
 #, c-format
-msgid "the commit graph format cannot write %d commits"
+msgid "Finding commits for commit graph from %d ref"
+msgid_plural "Finding commits for commit graph from %d refs"
+msgstr[0] ""
+msgstr[1] ""
+
+#: commit-graph.c:1238
+msgid "Finding commits for commit graph among packed objects"
 msgstr ""
 
-#: commit-graph.c:895
-msgid "too many commits to write graph"
+#: commit-graph.c:1253
+msgid "Counting distinct commits in commit graph"
 msgstr ""
 
-#: commit-graph.c:902 midx.c:769
+#: commit-graph.c:1284
+msgid "Finding extra edges in commit graph"
+msgstr ""
+
+#: commit-graph.c:1332
+msgid "failed to write correct number of base graph ids"
+msgstr ""
+
+#: commit-graph.c:1365 midx.c:811
 #, c-format
 msgid "unable to create leading directories of %s"
 msgstr ""
 
-#: commit-graph.c:1002
+#: commit-graph.c:1377 builtin/index-pack.c:306 builtin/repack.c:240
+#, c-format
+msgid "unable to create '%s'"
+msgstr ""
+
+#: commit-graph.c:1437
+#, c-format
+msgid "Writing out commit graph in %d pass"
+msgid_plural "Writing out commit graph in %d passes"
+msgstr[0] ""
+msgstr[1] ""
+
+#: commit-graph.c:1478
+msgid "unable to open commit-graph chain file"
+msgstr ""
+
+#: commit-graph.c:1490
+msgid "failed to rename base commit-graph file"
+msgstr ""
+
+#: commit-graph.c:1510
+msgid "failed to rename temporary commit-graph file"
+msgstr ""
+
+#: commit-graph.c:1621
+msgid "Scanning merged commits"
+msgstr ""
+
+#: commit-graph.c:1632
+#, c-format
+msgid "unexpected duplicate commit id %s"
+msgstr ""
+
+#: commit-graph.c:1657
+msgid "Merging commit-graph"
+msgstr ""
+
+#: commit-graph.c:1844
+#, c-format
+msgid "the commit graph format cannot write %d commits"
+msgstr ""
+
+#: commit-graph.c:1855
+msgid "too many commits to write graph"
+msgstr ""
+
+#: commit-graph.c:1945
 msgid "the commit-graph file has incorrect checksum and is likely corrupt"
 msgstr ""
 
-#: commit-graph.c:1046
+#: commit-graph.c:1955
+#, c-format
+msgid "commit-graph has incorrect OID order: %s then %s"
+msgstr ""
+
+#: commit-graph.c:1965 commit-graph.c:1980
+#, c-format
+msgid "commit-graph has incorrect fanout value: fanout[%d] = %u != %u"
+msgstr ""
+
+#: commit-graph.c:1972
+#, c-format
+msgid "failed to parse commit %s from commit-graph"
+msgstr ""
+
+#: commit-graph.c:1989
 msgid "Verifying commits in commit graph"
 msgstr ""
 
-#: compat/obstack.c:405 compat/obstack.c:407
+#: commit-graph.c:2002
+#, c-format
+msgid "failed to parse commit %s from object database for commit-graph"
+msgstr ""
+
+#: commit-graph.c:2009
+#, c-format
+msgid "root tree OID for commit %s in commit-graph is %s != %s"
+msgstr ""
+
+#: commit-graph.c:2019
+#, c-format
+msgid "commit-graph parent list for commit %s is too long"
+msgstr ""
+
+#: commit-graph.c:2028
+#, c-format
+msgid "commit-graph parent for %s is %s != %s"
+msgstr ""
+
+#: commit-graph.c:2041
+#, c-format
+msgid "commit-graph parent list for commit %s terminates early"
+msgstr ""
+
+#: commit-graph.c:2046
+#, c-format
+msgid ""
+"commit-graph has generation number zero for commit %s, but non-zero elsewhere"
+msgstr ""
+
+#: commit-graph.c:2050
+#, c-format
+msgid ""
+"commit-graph has non-zero generation number for commit %s, but zero elsewhere"
+msgstr ""
+
+#: commit-graph.c:2065
+#, c-format
+msgid "commit-graph generation for commit %s is %u != %u"
+msgstr ""
+
+#: commit-graph.c:2071
+#, c-format
+msgid "commit date for commit %s in commit-graph is %<PRIuMAX> != %<PRIuMAX>"
+msgstr ""
+
+#: compat/obstack.c:406 compat/obstack.c:408
 msgid "memory exhausted"
 msgstr ""
 
-#: config.c:123
+#: config.c:124
 #, c-format
 msgid ""
 "exceeded maximum include depth (%d) while including\n"
@@ -1375,294 +1574,294 @@ msgid ""
 "This might be due to circular includes."
 msgstr ""
 
-#: config.c:139
+#: config.c:140
 #, c-format
 msgid "could not expand include path '%s'"
 msgstr ""
 
-#: config.c:150
+#: config.c:151
 msgid "relative config includes must come from files"
 msgstr ""
 
-#: config.c:190
+#: config.c:197
 msgid "relative config include conditionals must come from files"
 msgstr ""
 
-#: config.c:348
+#: config.c:376
 #, c-format
 msgid "key does not contain a section: %s"
 msgstr ""
 
-#: config.c:354
+#: config.c:382
 #, c-format
 msgid "key does not contain variable name: %s"
 msgstr ""
 
-#: config.c:378 sequencer.c:2296
+#: config.c:406 sequencer.c:2463
 #, c-format
 msgid "invalid key: %s"
 msgstr ""
 
-#: config.c:384
+#: config.c:412
 #, c-format
 msgid "invalid key (newline): %s"
 msgstr ""
 
-#: config.c:420 config.c:432
+#: config.c:448 config.c:460
 #, c-format
 msgid "bogus config parameter: %s"
 msgstr ""
 
-#: config.c:467
+#: config.c:495
 #, c-format
 msgid "bogus format in %s"
 msgstr ""
 
-#: config.c:793
+#: config.c:821
 #, c-format
 msgid "bad config line %d in blob %s"
 msgstr ""
 
-#: config.c:797
+#: config.c:825
 #, c-format
 msgid "bad config line %d in file %s"
 msgstr ""
 
-#: config.c:801
+#: config.c:829
 #, c-format
 msgid "bad config line %d in standard input"
 msgstr ""
 
-#: config.c:805
+#: config.c:833
 #, c-format
 msgid "bad config line %d in submodule-blob %s"
 msgstr ""
 
-#: config.c:809
+#: config.c:837
 #, c-format
 msgid "bad config line %d in command line %s"
 msgstr ""
 
-#: config.c:813
+#: config.c:841
 #, c-format
 msgid "bad config line %d in %s"
 msgstr ""
 
-#: config.c:952
+#: config.c:978
 msgid "out of range"
 msgstr ""
 
-#: config.c:952
+#: config.c:978
 msgid "invalid unit"
 msgstr ""
 
-#: config.c:958
+#: config.c:979
 #, c-format
 msgid "bad numeric config value '%s' for '%s': %s"
 msgstr ""
 
-#: config.c:963
+#: config.c:998
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in blob %s: %s"
 msgstr ""
 
-#: config.c:966
+#: config.c:1001
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in file %s: %s"
 msgstr ""
 
-#: config.c:969
+#: config.c:1004
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in standard input: %s"
 msgstr ""
 
-#: config.c:972
+#: config.c:1007
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in submodule-blob %s: %s"
 msgstr ""
 
-#: config.c:975
+#: config.c:1010
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
 msgstr ""
 
-#: config.c:978
+#: config.c:1013
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in %s: %s"
 msgstr ""
 
-#: config.c:1073
+#: config.c:1108
 #, c-format
 msgid "failed to expand user dir in: '%s'"
 msgstr ""
 
-#: config.c:1082
+#: config.c:1117
 #, c-format
 msgid "'%s' for '%s' is not a valid timestamp"
 msgstr ""
 
-#: config.c:1173
+#: config.c:1208
 #, c-format
 msgid "abbrev length out of range: %d"
 msgstr ""
 
-#: config.c:1187 config.c:1198
+#: config.c:1222 config.c:1233
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr ""
 
-#: config.c:1290
+#: config.c:1325
 msgid "core.commentChar should only be one character"
 msgstr ""
 
-#: config.c:1323
+#: config.c:1358
 #, c-format
 msgid "invalid mode for object creation: %s"
 msgstr ""
 
-#: config.c:1395
+#: config.c:1430
 #, c-format
 msgid "malformed value for %s"
 msgstr ""
 
-#: config.c:1421
+#: config.c:1456
 #, c-format
 msgid "malformed value for %s: %s"
 msgstr ""
 
-#: config.c:1422
+#: config.c:1457
 msgid "must be one of nothing, matching, simple, upstream or current"
 msgstr ""
 
-#: config.c:1481 builtin/pack-objects.c:3389
+#: config.c:1518 builtin/pack-objects.c:3410
 #, c-format
 msgid "bad pack compression level %d"
 msgstr ""
 
-#: config.c:1602
+#: config.c:1639
 #, c-format
 msgid "unable to load config blob object '%s'"
 msgstr ""
 
-#: config.c:1605
+#: config.c:1642
 #, c-format
 msgid "reference '%s' does not point to a blob"
 msgstr ""
 
-#: config.c:1622
+#: config.c:1659
 #, c-format
 msgid "unable to resolve config blob '%s'"
 msgstr ""
 
-#: config.c:1652
+#: config.c:1689
 #, c-format
 msgid "failed to parse %s"
 msgstr ""
 
-#: config.c:1705
+#: config.c:1745
 msgid "unable to parse command-line config"
 msgstr ""
 
-#: config.c:2037
+#: config.c:2094
 msgid "unknown error occurred while reading the configuration files"
 msgstr ""
 
-#: config.c:2207
+#: config.c:2264
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr ""
 
-#: config.c:2250
+#: config.c:2307
 #, c-format
 msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
 msgstr ""
 
-#: config.c:2276
+#: config.c:2333
 #, c-format
 msgid "splitIndex.maxPercentChange value '%d' should be between 0 and 100"
 msgstr ""
 
-#: config.c:2319
+#: config.c:2379
 #, c-format
 msgid "unable to parse '%s' from command-line config"
 msgstr ""
 
-#: config.c:2321
+#: config.c:2381
 #, c-format
 msgid "bad config variable '%s' in file '%s' at line %d"
 msgstr ""
 
-#: config.c:2402
+#: config.c:2462
 #, c-format
 msgid "invalid section name '%s'"
 msgstr ""
 
-#: config.c:2434
+#: config.c:2494
 #, c-format
 msgid "%s has multiple values"
 msgstr ""
 
-#: config.c:2463
+#: config.c:2523
 #, c-format
 msgid "failed to write new configuration file %s"
 msgstr ""
 
-#: config.c:2714 config.c:3038
+#: config.c:2775 config.c:3099
 #, c-format
 msgid "could not lock config file %s"
 msgstr ""
 
-#: config.c:2725
+#: config.c:2786
 #, c-format
 msgid "opening %s"
 msgstr ""
 
-#: config.c:2760 builtin/config.c:327
+#: config.c:2821 builtin/config.c:328
 #, c-format
 msgid "invalid pattern: %s"
 msgstr ""
 
-#: config.c:2785
+#: config.c:2846
 #, c-format
 msgid "invalid config file %s"
 msgstr ""
 
-#: config.c:2798 config.c:3051
+#: config.c:2859 config.c:3112
 #, c-format
 msgid "fstat on %s failed"
 msgstr ""
 
-#: config.c:2809
+#: config.c:2870
 #, c-format
 msgid "unable to mmap '%s'"
 msgstr ""
 
-#: config.c:2818 config.c:3056
+#: config.c:2879 config.c:3117
 #, c-format
 msgid "chmod on %s failed"
 msgstr ""
 
-#: config.c:2903 config.c:3153
+#: config.c:2964 config.c:3214
 #, c-format
 msgid "could not write config file %s"
 msgstr ""
 
-#: config.c:2937
+#: config.c:2998
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr ""
 
-#: config.c:2939 builtin/remote.c:782
+#: config.c:3000 builtin/remote.c:782
 #, c-format
 msgid "could not unset '%s'"
 msgstr ""
 
-#: config.c:3029
+#: config.c:3090
 #, c-format
 msgid "invalid section name: %s"
 msgstr ""
 
-#: config.c:3196
+#: config.c:3257
 #, c-format
 msgid "missing value for '%s'"
 msgstr ""
@@ -1711,57 +1910,52 @@ msgstr ""
 msgid "repository on the other end cannot be shallow"
 msgstr ""
 
-#: connect.c:310 fetch-pack.c:182 builtin/archive.c:63
-#, c-format
-msgid "remote error: %s"
-msgstr ""
-
-#: connect.c:316
+#: connect.c:313
 msgid "invalid packet"
 msgstr ""
 
-#: connect.c:336
+#: connect.c:333
 #, c-format
 msgid "protocol error: unexpected '%s'"
 msgstr ""
 
-#: connect.c:444
+#: connect.c:441
 #, c-format
 msgid "invalid ls-refs response: %s"
 msgstr ""
 
-#: connect.c:448
+#: connect.c:445
 msgid "expected flush after ref listing"
 msgstr ""
 
-#: connect.c:547
+#: connect.c:544
 #, c-format
 msgid "protocol '%s' is not supported"
 msgstr ""
 
-#: connect.c:598
+#: connect.c:595
 msgid "unable to set SO_KEEPALIVE on socket"
 msgstr ""
 
-#: connect.c:638 connect.c:701
+#: connect.c:635 connect.c:698
 #, c-format
 msgid "Looking up %s ... "
 msgstr ""
 
-#: connect.c:642
+#: connect.c:639
 #, c-format
 msgid "unable to look up %s (port %s) (%s)"
 msgstr ""
 
 #. TRANSLATORS: this is the end of "Looking up %s ... "
-#: connect.c:646 connect.c:717
+#: connect.c:643 connect.c:714
 #, c-format
 msgid ""
 "done.\n"
 "Connecting to %s (port %s) ... "
 msgstr ""
 
-#: connect.c:668 connect.c:745
+#: connect.c:665 connect.c:742
 #, c-format
 msgid ""
 "unable to connect to %s:\n"
@@ -1769,52 +1963,52 @@ msgid ""
 msgstr ""
 
 #. TRANSLATORS: this is the end of "Connecting to %s (port %s) ... "
-#: connect.c:674 connect.c:751
+#: connect.c:671 connect.c:748
 msgid "done."
 msgstr ""
 
-#: connect.c:705
+#: connect.c:702
 #, c-format
 msgid "unable to look up %s (%s)"
 msgstr ""
 
-#: connect.c:711
+#: connect.c:708
 #, c-format
 msgid "unknown port %s"
 msgstr ""
 
-#: connect.c:848 connect.c:1174
+#: connect.c:845 connect.c:1171
 #, c-format
 msgid "strange hostname '%s' blocked"
 msgstr ""
 
-#: connect.c:850
+#: connect.c:847
 #, c-format
 msgid "strange port '%s' blocked"
 msgstr ""
 
-#: connect.c:860
+#: connect.c:857
 #, c-format
 msgid "cannot start proxy %s"
 msgstr ""
 
-#: connect.c:927
+#: connect.c:924
 msgid "no path specified; see 'git help pull' for valid url syntax"
 msgstr ""
 
-#: connect.c:1122
+#: connect.c:1119
 msgid "ssh variant 'simple' does not support -4"
 msgstr ""
 
-#: connect.c:1134
+#: connect.c:1131
 msgid "ssh variant 'simple' does not support -6"
 msgstr ""
 
-#: connect.c:1151
+#: connect.c:1148
 msgid "ssh variant 'simple' does not support setting port"
 msgstr ""
 
-#: connect.c:1262
+#: connect.c:1260
 #, c-format
 msgid "strange pathname '%s' blocked"
 msgstr ""
@@ -1823,106 +2017,106 @@ msgstr ""
 msgid "unable to fork"
 msgstr ""
 
-#: connected.c:68 builtin/fsck.c:202 builtin/prune.c:147
+#: connected.c:86 builtin/fsck.c:221 builtin/prune.c:43
 msgid "Checking connectivity"
 msgstr ""
 
-#: connected.c:80
+#: connected.c:98
 msgid "Could not run 'git rev-list'"
 msgstr ""
 
-#: connected.c:100
+#: connected.c:118
 msgid "failed write to rev-list"
 msgstr ""
 
-#: connected.c:107
+#: connected.c:125
 msgid "failed to close rev-list's stdin"
 msgstr ""
 
-#: convert.c:194
+#: convert.c:193
 #, c-format
 msgid "illegal crlf_action %d"
 msgstr ""
 
-#: convert.c:207
+#: convert.c:206
 #, c-format
 msgid "CRLF would be replaced by LF in %s"
 msgstr ""
 
-#: convert.c:209
+#: convert.c:208
 #, c-format
 msgid ""
 "CRLF will be replaced by LF in %s.\n"
 "The file will have its original line endings in your working directory"
 msgstr ""
 
-#: convert.c:217
+#: convert.c:216
 #, c-format
 msgid "LF would be replaced by CRLF in %s"
 msgstr ""
 
-#: convert.c:219
+#: convert.c:218
 #, c-format
 msgid ""
 "LF will be replaced by CRLF in %s.\n"
 "The file will have its original line endings in your working directory"
 msgstr ""
 
-#: convert.c:280
+#: convert.c:279
 #, c-format
 msgid "BOM is prohibited in '%s' if encoded as %s"
 msgstr ""
 
-#: convert.c:287
+#: convert.c:286
 #, c-format
 msgid ""
 "The file '%s' contains a byte order mark (BOM). Please use UTF-%s as working-"
 "tree-encoding."
 msgstr ""
 
-#: convert.c:305
+#: convert.c:304
 #, c-format
 msgid "BOM is required in '%s' if encoded as %s"
 msgstr ""
 
-#: convert.c:307
+#: convert.c:306
 #, c-format
 msgid ""
 "The file '%s' is missing a byte order mark (BOM). Please use UTF-%sBE or UTF-"
 "%sLE (depending on the byte order) as working-tree-encoding."
 msgstr ""
 
-#: convert.c:425 convert.c:496
+#: convert.c:424 convert.c:495
 #, c-format
 msgid "failed to encode '%s' from %s to %s"
 msgstr ""
 
-#: convert.c:468
+#: convert.c:467
 #, c-format
 msgid "encoding '%s' from %s to %s and back is not the same"
 msgstr ""
 
-#: convert.c:674
+#: convert.c:673
 #, c-format
 msgid "cannot fork to run external filter '%s'"
 msgstr ""
 
-#: convert.c:694
+#: convert.c:693
 #, c-format
 msgid "cannot feed the input to external filter '%s'"
 msgstr ""
 
-#: convert.c:701
+#: convert.c:700
 #, c-format
 msgid "external filter '%s' failed %d"
 msgstr ""
 
-#: convert.c:736 convert.c:739
+#: convert.c:735 convert.c:738
 #, c-format
 msgid "read from external filter '%s' failed"
 msgstr ""
 
-#: convert.c:742 convert.c:796
+#: convert.c:741 convert.c:796
 #, c-format
 msgid "external filter '%s' failed"
 msgstr ""
@@ -1956,53 +2150,53 @@ msgstr ""
 msgid "%s: smudge filter %s failed"
 msgstr ""
 
-#: date.c:116
+#: date.c:137
 msgid "in the future"
 msgstr ""
 
-#: date.c:122
+#: date.c:143
 #, c-format
 msgid "%<PRIuMAX> second ago"
 msgid_plural "%<PRIuMAX> seconds ago"
 msgstr[0] ""
 msgstr[1] ""
 
-#: date.c:129
+#: date.c:150
 #, c-format
 msgid "%<PRIuMAX> minute ago"
 msgid_plural "%<PRIuMAX> minutes ago"
 msgstr[0] ""
 msgstr[1] ""
 
-#: date.c:136
+#: date.c:157
 #, c-format
 msgid "%<PRIuMAX> hour ago"
 msgid_plural "%<PRIuMAX> hours ago"
 msgstr[0] ""
 msgstr[1] ""
 
-#: date.c:143
+#: date.c:164
 #, c-format
 msgid "%<PRIuMAX> day ago"
 msgid_plural "%<PRIuMAX> days ago"
 msgstr[0] ""
 msgstr[1] ""
 
-#: date.c:149
+#: date.c:170
 #, c-format
 msgid "%<PRIuMAX> week ago"
 msgid_plural "%<PRIuMAX> weeks ago"
 msgstr[0] ""
 msgstr[1] ""
 
-#: date.c:156
+#: date.c:177
 #, c-format
 msgid "%<PRIuMAX> month ago"
 msgid_plural "%<PRIuMAX> months ago"
 msgstr[0] ""
 msgstr[1] ""
 
-#: date.c:167
+#: date.c:188
 #, c-format
 msgid "%<PRIuMAX> year"
 msgid_plural "%<PRIuMAX> years"
@@ -2010,40 +2204,40 @@ msgstr[0] ""
 msgstr[1] ""
 
 #. TRANSLATORS: "%s" is "<n> years"
-#: date.c:170
+#: date.c:191
 #, c-format
 msgid "%s, %<PRIuMAX> month ago"
 msgid_plural "%s, %<PRIuMAX> months ago"
 msgstr[0] ""
 msgstr[1] ""
 
-#: date.c:175 date.c:180
+#: date.c:196 date.c:201
 #, c-format
 msgid "%<PRIuMAX> year ago"
 msgid_plural "%<PRIuMAX> years ago"
 msgstr[0] ""
 msgstr[1] ""
 
-#: delta-islands.c:268
+#: delta-islands.c:272
 msgid "Propagating island marks"
 msgstr ""
 
-#: delta-islands.c:286
+#: delta-islands.c:290
 #, c-format
 msgid "bad tree object %s"
 msgstr ""
 
-#: delta-islands.c:330
+#: delta-islands.c:334
 #, c-format
 msgid "failed to load island regex for '%s': %s"
 msgstr ""
 
-#: delta-islands.c:386
+#: delta-islands.c:390
 #, c-format
 msgid "island regex from config has too many capture groups (max=%d)"
 msgstr ""
 
-#: delta-islands.c:462
+#: delta-islands.c:467
 #, c-format
 msgid "Marked %d islands, done.\n"
 msgstr ""
@@ -2057,410 +2251,884 @@ msgstr ""
 msgid "Performing inexact rename detection"
 msgstr ""
 
-#: diff.c:108
-#, c-format
-msgid "option '%s' requires a value"
+#: diff-no-index.c:238
+msgid "git diff --no-index [<options>] <path> <path>"
+msgstr ""
+
+#: diff-no-index.c:263
+msgid ""
+"Not a git repository. Use --no-index to compare two paths outside a working "
+"tree"
 msgstr ""
 
-#: diff.c:158
+#: diff.c:155
 #, c-format
 msgid "  Failed to parse dirstat cut-off percentage '%s'\n"
 msgstr ""
 
-#: diff.c:163
+#: diff.c:160
 #, c-format
 msgid "  Unknown dirstat parameter '%s'\n"
 msgstr ""
 
-#: diff.c:291
+#: diff.c:296
 msgid ""
 "color moved setting must be one of 'no', 'default', 'blocks', 'zebra', "
 "'dimmed-zebra', 'plain'"
 msgstr ""
 
-#: diff.c:316
+#: diff.c:324
 #, c-format
-msgid "ignoring unknown color-moved-ws mode '%s'"
+msgid ""
+"unknown color-moved-ws mode '%s', possible values are 'ignore-space-change', "
+"'ignore-space-at-eol', 'ignore-all-space', 'allow-indentation-change'"
 msgstr ""
 
-#: diff.c:323
+#: diff.c:332
 msgid ""
-"color-moved-ws: allow-indentation-change cannot be combined with other white "
-"space modes"
+"color-moved-ws: allow-indentation-change cannot be combined with other "
+"whitespace modes"
 msgstr ""
 
-#: diff.c:394
+#: diff.c:405
 #, c-format
 msgid "Unknown value for 'diff.submodule' config variable: '%s'"
 msgstr ""
 
-#: diff.c:454
+#: diff.c:465
 #, c-format
 msgid ""
 "Found errors in 'diff.dirstat' config variable:\n"
 "%s"
 msgstr ""
 
-#: diff.c:4140
+#: diff.c:4215
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr ""
 
-#: diff.c:4482
+#: diff.c:4560
 msgid "--name-only, --name-status, --check and -s are mutually exclusive"
 msgstr ""
 
-#: diff.c:4485
+#: diff.c:4563
 msgid "-G, -S and --find-object are mutually exclusive"
 msgstr ""
 
-#: diff.c:4563
+#: diff.c:4641
 msgid "--follow requires exactly one pathspec"
 msgstr ""
 
-#: diff.c:4729
+#: diff.c:4689
+#, c-format
+msgid "invalid --stat value: %s"
+msgstr ""
+
+#: diff.c:4694 diff.c:4699 diff.c:4704 diff.c:4709 diff.c:5222
+#: parse-options.c:199 parse-options.c:203
+#, c-format
+msgid "%s expects a numerical value"
+msgstr ""
+
+#: diff.c:4726
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
 "%s"
 msgstr ""
 
-#: diff.c:4743
+#: diff.c:4811
 #, c-format
-msgid "Failed to parse --submodule option parameter: '%s'"
+msgid "unknown change class '%c' in --diff-filter=%s"
 msgstr ""
 
-#: diff.c:5823
-msgid "inexact rename detection was skipped due to too many files."
+#: diff.c:4835
+#, c-format
+msgid "unknown value after ws-error-highlight=%.*s"
 msgstr ""
 
-#: diff.c:5826
-msgid "only found copies from modified paths due to too many files."
+#: diff.c:4849
+#, c-format
+msgid "unable to resolve '%s'"
 msgstr ""
 
-#: diff.c:5829
+#: diff.c:4899 diff.c:4905
 #, c-format
-msgid ""
-"you may want to set your %s variable to at least %d and retry the command."
+msgid "%s expects <n>/<m> form"
 msgstr ""
 
-#: dir.c:576
+#: diff.c:4917
 #, c-format
-msgid "pathspec '%s' did not match any file(s) known to git"
+msgid "%s expects a character, got '%s'"
 msgstr ""
 
-#: dir.c:965
+#: diff.c:4938
 #, c-format
-msgid "cannot use %s as an exclude file"
+msgid "bad --color-moved argument: %s"
 msgstr ""
 
-#: dir.c:1880
+#: diff.c:4957
 #, c-format
-msgid "could not open directory '%s'"
+msgid "invalid mode '%s' in --color-moved-ws"
 msgstr ""
 
-#: dir.c:2122
-msgid "failed to get kernel name and information"
+#: diff.c:4997
+msgid ""
+"option diff-algorithm accepts \"myers\", \"minimal\", \"patience\" and "
+"\"histogram\""
 msgstr ""
 
-#: dir.c:2246
-msgid "untracked cache is disabled on this system or location"
+#: diff.c:5033 diff.c:5053
+#, c-format
+msgid "invalid argument to %s"
 msgstr ""
 
-#: dir.c:3047
+#: diff.c:5191
 #, c-format
-msgid "index file corrupt in repo %s"
+msgid "failed to parse --submodule option parameter: '%s'"
 msgstr ""
 
-#: dir.c:3092 dir.c:3097
+#: diff.c:5247
 #, c-format
-msgid "could not create directories for %s"
+msgid "bad --word-diff argument: %s"
 msgstr ""
 
-#: dir.c:3126
-#, c-format
-msgid "could not migrate git directory from '%s' to '%s'"
+#: diff.c:5270
+msgid "Diff output format options"
 msgstr ""
 
-#: editor.c:73
-#, c-format
-msgid "hint: Waiting for your editor to close the file...%c"
+#: diff.c:5272 diff.c:5278
+msgid "generate patch"
 msgstr ""
 
-#: entry.c:178
-msgid "Filtering content"
+#: diff.c:5275 builtin/log.c:172
+msgid "suppress diff output"
 msgstr ""
 
-#: entry.c:465
-#, c-format
-msgid "could not stat file '%s'"
+#: diff.c:5280 diff.c:5394 diff.c:5401
+msgid "<n>"
 msgstr ""
 
-#: environment.c:150
-#, c-format
-msgid "bad git namespace path \"%s\""
+#: diff.c:5281 diff.c:5284
+msgid "generate diffs with <n> lines context"
 msgstr ""
 
-#: environment.c:332
-#, c-format
-msgid "could not set GIT_DIR to '%s'"
+#: diff.c:5286
+msgid "generate the diff in raw format"
 msgstr ""
 
-#: exec-cmd.c:361
-#, c-format
-msgid "too many args to run %s"
+#: diff.c:5289
+msgid "synonym for '-p --raw'"
 msgstr ""
 
-#: fetch-object.c:17
-msgid "Remote with no URL"
+#: diff.c:5293
+msgid "synonym for '-p --stat'"
 msgstr ""
 
-#: fetch-pack.c:151
-msgid "git fetch-pack: expected shallow list"
+#: diff.c:5297
+msgid "machine friendly --stat"
 msgstr ""
 
-#: fetch-pack.c:163
-msgid "git fetch-pack: expected ACK/NAK, got a flush packet"
+#: diff.c:5300
+msgid "output only the last line of --stat"
 msgstr ""
 
-#: fetch-pack.c:183
-#, c-format
-msgid "git fetch-pack: expected ACK/NAK, got '%s'"
+#: diff.c:5302 diff.c:5310
+msgid "<param1,param2>..."
 msgstr ""
 
-#: fetch-pack.c:253
-msgid "--stateless-rpc requires multi_ack_detailed"
+#: diff.c:5303
+msgid ""
+"output the distribution of relative amount of changes for each sub-directory"
 msgstr ""
 
-#: fetch-pack.c:347 fetch-pack.c:1277
-#, c-format
-msgid "invalid shallow line: %s"
+#: diff.c:5307
+msgid "synonym for --dirstat=cumulative"
 msgstr ""
 
-#: fetch-pack.c:353 fetch-pack.c:1283
-#, c-format
-msgid "invalid unshallow line: %s"
+#: diff.c:5311
+msgid "synonym for --dirstat=files,param1,param2..."
 msgstr ""
 
-#: fetch-pack.c:355 fetch-pack.c:1285
-#, c-format
-msgid "object not found: %s"
+#: diff.c:5315
+msgid "warn if changes introduce conflict markers or whitespace errors"
 msgstr ""
 
-#: fetch-pack.c:358 fetch-pack.c:1288
-#, c-format
-msgid "error in object: %s"
+#: diff.c:5318
+msgid "condensed summary such as creations, renames and mode changes"
 msgstr ""
 
-#: fetch-pack.c:360 fetch-pack.c:1290
-#, c-format
-msgid "no shallow found: %s"
+#: diff.c:5321
+msgid "show only names of changed files"
 msgstr ""
 
-#: fetch-pack.c:363 fetch-pack.c:1293
-#, c-format
-msgid "expected shallow/unshallow, got %s"
+#: diff.c:5324
+msgid "show only names and status of changed files"
 msgstr ""
 
-#: fetch-pack.c:404
-#, c-format
-msgid "got %s %d %s"
+#: diff.c:5326
+msgid "<width>[,<name-width>[,<count>]]"
 msgstr ""
 
-#: fetch-pack.c:421
-#, c-format
-msgid "invalid commit %s"
+#: diff.c:5327
+msgid "generate diffstat"
 msgstr ""
 
-#: fetch-pack.c:452
-msgid "giving up"
+#: diff.c:5329 diff.c:5332 diff.c:5335
+msgid "<width>"
 msgstr ""
 
-#: fetch-pack.c:464 progress.c:229
-msgid "done"
+#: diff.c:5330
+msgid "generate diffstat with a given width"
 msgstr ""
 
-#: fetch-pack.c:476
-#, c-format
-msgid "got %s (%d) %s"
+#: diff.c:5333
+msgid "generate diffstat with a given name width"
 msgstr ""
 
-#: fetch-pack.c:522
-#, c-format
-msgid "Marking %s as complete"
+#: diff.c:5336
+msgid "generate diffstat with a given graph width"
 msgstr ""
 
-#: fetch-pack.c:764
-#, c-format
-msgid "already have %s (%s)"
+#: diff.c:5338
+msgid "<count>"
 msgstr ""
 
-#: fetch-pack.c:803
-msgid "fetch-pack: unable to fork off sideband demultiplexer"
+#: diff.c:5339
+msgid "generate diffstat with limited lines"
 msgstr ""
 
-#: fetch-pack.c:811
-msgid "protocol error: bad pack header"
+#: diff.c:5342
+msgid "generate compact summary in diffstat"
 msgstr ""
 
-#: fetch-pack.c:879
-#, c-format
-msgid "fetch-pack: unable to fork off %s"
+#: diff.c:5345
+msgid "output a binary diff that can be applied"
 msgstr ""
 
-#: fetch-pack.c:895
-#, c-format
-msgid "%s failed"
+#: diff.c:5348
+msgid "show full pre- and post-image object names on the \"index\" lines"
 msgstr ""
 
-#: fetch-pack.c:897
-msgid "error in sideband demultiplexer"
+#: diff.c:5350
+msgid "show colored diff"
 msgstr ""
 
-#: fetch-pack.c:926
-msgid "Server does not support shallow clients"
+#: diff.c:5351
+msgid "<kind>"
 msgstr ""
 
-#: fetch-pack.c:930
-msgid "Server supports multi_ack_detailed"
+#: diff.c:5352
+msgid ""
+"highlight whitespace errors in the 'context', 'old' or 'new' lines in the "
+"diff"
 msgstr ""
 
-#: fetch-pack.c:933
-msgid "Server supports no-done"
+#: diff.c:5355
+msgid ""
+"do not munge pathnames and use NULs as output field terminators in --raw or "
+"--numstat"
 msgstr ""
 
-#: fetch-pack.c:939
-msgid "Server supports multi_ack"
+#: diff.c:5358 diff.c:5361 diff.c:5364 diff.c:5470
+msgid "<prefix>"
 msgstr ""
 
-#: fetch-pack.c:943
-msgid "Server supports side-band-64k"
+#: diff.c:5359
+msgid "show the given source prefix instead of \"a/\""
 msgstr ""
 
-#: fetch-pack.c:947
-msgid "Server supports side-band"
+#: diff.c:5362
+msgid "show the given destination prefix instead of \"b/\""
 msgstr ""
 
-#: fetch-pack.c:951
-msgid "Server supports allow-tip-sha1-in-want"
+#: diff.c:5365
+msgid "prepend an additional prefix to every line of output"
 msgstr ""
 
-#: fetch-pack.c:955
-msgid "Server supports allow-reachable-sha1-in-want"
+#: diff.c:5368
+msgid "do not show any source or destination prefix"
 msgstr ""
 
-#: fetch-pack.c:965
-msgid "Server supports ofs-delta"
+#: diff.c:5371
+msgid "show context between diff hunks up to the specified number of lines"
 msgstr ""
 
-#: fetch-pack.c:971 fetch-pack.c:1158
-msgid "Server supports filter"
+#: diff.c:5375 diff.c:5380 diff.c:5385
+msgid "<char>"
 msgstr ""
 
-#: fetch-pack.c:979
-#, c-format
-msgid "Server version is %.*s"
+#: diff.c:5376
+msgid "specify the character to indicate a new line instead of '+'"
 msgstr ""
 
-#: fetch-pack.c:985
-msgid "Server does not support --shallow-since"
+#: diff.c:5381
+msgid "specify the character to indicate an old line instead of '-'"
 msgstr ""
 
-#: fetch-pack.c:989
-msgid "Server does not support --shallow-exclude"
+#: diff.c:5386
+msgid "specify the character to indicate a context instead of ' '"
 msgstr ""
 
-#: fetch-pack.c:991
-msgid "Server does not support --deepen"
+#: diff.c:5389
+msgid "Diff rename options"
 msgstr ""
 
-#: fetch-pack.c:1008
+#: diff.c:5390
+msgid "<n>[/<m>]"
+msgstr ""
+
+#: diff.c:5391
+msgid "break complete rewrite changes into pairs of delete and create"
+msgstr ""
+
+#: diff.c:5395
+msgid "detect renames"
+msgstr ""
+
+#: diff.c:5399
+msgid "omit the preimage for deletes"
+msgstr ""
+
+#: diff.c:5402
+msgid "detect copies"
+msgstr ""
+
+#: diff.c:5406
+msgid "use unmodified files as source to find copies"
+msgstr ""
+
+#: diff.c:5408
+msgid "disable rename detection"
+msgstr ""
+
+#: diff.c:5411
+msgid "use empty blobs as rename source"
+msgstr ""
+
+#: diff.c:5413
+msgid "continue listing the history of a file beyond renames"
+msgstr ""
+
+#: diff.c:5416
+msgid ""
+"prevent rename/copy detection if the number of rename/copy targets exceeds "
+"given limit"
+msgstr ""
+
+#: diff.c:5418
+msgid "Diff algorithm options"
+msgstr ""
+
+#: diff.c:5420
+msgid "produce the smallest possible diff"
+msgstr ""
+
+#: diff.c:5423
+msgid "ignore whitespace when comparing lines"
+msgstr ""
+
+#: diff.c:5426
+msgid "ignore changes in amount of whitespace"
+msgstr ""
+
+#: diff.c:5429
+msgid "ignore changes in whitespace at EOL"
+msgstr ""
+
+#: diff.c:5432
+msgid "ignore carrier-return at the end of line"
+msgstr ""
+
+#: diff.c:5435
+msgid "ignore changes whose lines are all blank"
+msgstr ""
+
+#: diff.c:5438
+msgid "heuristic to shift diff hunk boundaries for easy reading"
+msgstr ""
+
+#: diff.c:5441
+msgid "generate diff using the \"patience diff\" algorithm"
+msgstr ""
+
+#: diff.c:5445
+msgid "generate diff using the \"histogram diff\" algorithm"
+msgstr ""
+
+#: diff.c:5447
+msgid "<algorithm>"
+msgstr ""
+
+#: diff.c:5448
+msgid "choose a diff algorithm"
+msgstr ""
+
+#: diff.c:5450
+msgid "<text>"
+msgstr ""
+
+#: diff.c:5451
+msgid "generate diff using the \"anchored diff\" algorithm"
+msgstr ""
+
+#: diff.c:5453 diff.c:5462 diff.c:5465
+msgid "<mode>"
+msgstr ""
+
+#: diff.c:5454
+msgid "show word diff, using <mode> to delimit changed words"
+msgstr ""
+
+#: diff.c:5456 diff.c:5459 diff.c:5504
+msgid "<regex>"
+msgstr ""
+
+#: diff.c:5457
+msgid "use <regex> to decide what a word is"
+msgstr ""
+
+#: diff.c:5460
+msgid "equivalent to --word-diff=color --word-diff-regex=<regex>"
+msgstr ""
+
+#: diff.c:5463
+msgid "moved lines of code are colored differently"
+msgstr ""
+
+#: diff.c:5466
+msgid "how white spaces are ignored in --color-moved"
+msgstr ""
+
+#: diff.c:5469
+msgid "Other diff options"
+msgstr ""
+
+#: diff.c:5471
+msgid "when run from subdir, exclude changes outside and show relative paths"
+msgstr ""
+
+#: diff.c:5475
+msgid "treat all files as text"
+msgstr ""
+
+#: diff.c:5477
+msgid "swap two inputs, reverse the diff"
+msgstr ""
+
+#: diff.c:5479
+msgid "exit with 1 if there were differences, 0 otherwise"
+msgstr ""
+
+#: diff.c:5481
+msgid "disable all output of the program"
+msgstr ""
+
+#: diff.c:5483
+msgid "allow an external diff helper to be executed"
+msgstr ""
+
+#: diff.c:5485
+msgid "run external text conversion filters when comparing binary files"
+msgstr ""
+
+#: diff.c:5487
+msgid "<when>"
+msgstr ""
+
+#: diff.c:5488
+msgid "ignore changes to submodules in the diff generation"
+msgstr ""
+
+#: diff.c:5491
+msgid "<format>"
+msgstr ""
+
+#: diff.c:5492
+msgid "specify how differences in submodules are shown"
+msgstr ""
+
+#: diff.c:5496
+msgid "hide 'git add -N' entries from the index"
+msgstr ""
+
+#: diff.c:5499
+msgid "treat 'git add -N' entries as real in the index"
+msgstr ""
+
+#: diff.c:5501
+msgid "<string>"
+msgstr ""
+
+#: diff.c:5502
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"string"
+msgstr ""
+
+#: diff.c:5505
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"regex"
+msgstr ""
+
+#: diff.c:5508
+msgid "show all changes in the changeset with -S or -G"
+msgstr ""
+
+#: diff.c:5511
+msgid "treat <string> in -S as extended POSIX regular expression"
+msgstr ""
+
+#: diff.c:5514
+msgid "control the order in which files appear in the output"
+msgstr ""
+
+#: diff.c:5515
+msgid "<object-id>"
+msgstr ""
+
+#: diff.c:5516
+msgid ""
+"look for differences that change the number of occurrences of the specified "
+"object"
+msgstr ""
+
+#: diff.c:5518
+msgid "[(A|C|D|M|R|T|U|X|B)...[*]]"
+msgstr ""
+
+#: diff.c:5519
+msgid "select files by diff type"
+msgstr ""
+
+#: diff.c:5521
+msgid "<file>"
+msgstr ""
+
+#: diff.c:5522
+msgid "Output to a specific file"
+msgstr ""
+
+#: diff.c:6177
+msgid "inexact rename detection was skipped due to too many files."
+msgstr ""
+
+#: diff.c:6180
+msgid "only found copies from modified paths due to too many files."
+msgstr ""
+
+#: diff.c:6183
+#, c-format
+msgid ""
+"you may want to set your %s variable to at least %d and retry the command."
+msgstr ""
+
+#: dir.c:537
+#, c-format
+msgid "pathspec '%s' did not match any file(s) known to git"
+msgstr ""
+
+#: dir.c:926
+#, c-format
+msgid "cannot use %s as an exclude file"
+msgstr ""
+
+#: dir.c:1843
+#, c-format
+msgid "could not open directory '%s'"
+msgstr ""
+
+#: dir.c:2085
+msgid "failed to get kernel name and information"
+msgstr ""
+
+#: dir.c:2209
+msgid "untracked cache is disabled on this system or location"
+msgstr ""
+
+#: dir.c:3013
+#, c-format
+msgid "index file corrupt in repo %s"
+msgstr ""
+
+#: dir.c:3058 dir.c:3063
+#, c-format
+msgid "could not create directories for %s"
+msgstr ""
+
+#: dir.c:3092
+#, c-format
+msgid "could not migrate git directory from '%s' to '%s'"
+msgstr ""
+
+#: editor.c:73
+#, c-format
+msgid "hint: Waiting for your editor to close the file...%c"
+msgstr ""
+
+#: entry.c:178
+msgid "Filtering content"
+msgstr ""
+
+#: entry.c:476
+#, c-format
+msgid "could not stat file '%s'"
+msgstr ""
+
+#: environment.c:150
+#, c-format
+msgid "bad git namespace path \"%s\""
+msgstr ""
+
+#: environment.c:332
+#, c-format
+msgid "could not set GIT_DIR to '%s'"
+msgstr ""
+
+#: exec-cmd.c:363
+#, c-format
+msgid "too many args to run %s"
+msgstr ""
+
+#: fetch-object.c:17
+msgid "Remote with no URL"
+msgstr ""
+
+#: fetch-pack.c:151
+msgid "git fetch-pack: expected shallow list"
+msgstr ""
+
+#: fetch-pack.c:154
+msgid "git fetch-pack: expected a flush packet after shallow list"
+msgstr ""
+
+#: fetch-pack.c:165
+msgid "git fetch-pack: expected ACK/NAK, got a flush packet"
+msgstr ""
+
+#: fetch-pack.c:185
+#, c-format
+msgid "git fetch-pack: expected ACK/NAK, got '%s'"
+msgstr ""
+
+#: fetch-pack.c:196
+msgid "unable to write to remote"
+msgstr ""
+
+#: fetch-pack.c:258
+msgid "--stateless-rpc requires multi_ack_detailed"
+msgstr ""
+
+#: fetch-pack.c:360 fetch-pack.c:1284
+#, c-format
+msgid "invalid shallow line: %s"
+msgstr ""
+
+#: fetch-pack.c:366 fetch-pack.c:1290
+#, c-format
+msgid "invalid unshallow line: %s"
+msgstr ""
+
+#: fetch-pack.c:368 fetch-pack.c:1292
+#, c-format
+msgid "object not found: %s"
+msgstr ""
+
+#: fetch-pack.c:371 fetch-pack.c:1295
+#, c-format
+msgid "error in object: %s"
+msgstr ""
+
+#: fetch-pack.c:373 fetch-pack.c:1297
+#, c-format
+msgid "no shallow found: %s"
+msgstr ""
+
+#: fetch-pack.c:376 fetch-pack.c:1301
+#, c-format
+msgid "expected shallow/unshallow, got %s"
+msgstr ""
+
+#: fetch-pack.c:417
+#, c-format
+msgid "got %s %d %s"
+msgstr ""
+
+#: fetch-pack.c:434
+#, c-format
+msgid "invalid commit %s"
+msgstr ""
+
+#: fetch-pack.c:465
+msgid "giving up"
+msgstr ""
+
+#: fetch-pack.c:477 progress.c:277
+msgid "done"
+msgstr ""
+
+#: fetch-pack.c:489
+#, c-format
+msgid "got %s (%d) %s"
+msgstr ""
+
+#: fetch-pack.c:535
+#, c-format
+msgid "Marking %s as complete"
+msgstr ""
+
+#: fetch-pack.c:744
+#, c-format
+msgid "already have %s (%s)"
+msgstr ""
+
+#: fetch-pack.c:783
+msgid "fetch-pack: unable to fork off sideband demultiplexer"
+msgstr ""
+
+#: fetch-pack.c:791
+msgid "protocol error: bad pack header"
+msgstr ""
+
+#: fetch-pack.c:859
+#, c-format
+msgid "fetch-pack: unable to fork off %s"
+msgstr ""
+
+#: fetch-pack.c:875
+#, c-format
+msgid "%s failed"
+msgstr ""
+
+#: fetch-pack.c:877
+msgid "error in sideband demultiplexer"
+msgstr ""
+
+#: fetch-pack.c:908
+#, c-format
+msgid "Server version is %.*s"
+msgstr ""
+
+#: fetch-pack.c:913 fetch-pack.c:919 fetch-pack.c:922 fetch-pack.c:928
+#: fetch-pack.c:932 fetch-pack.c:936 fetch-pack.c:940 fetch-pack.c:944
+#: fetch-pack.c:948 fetch-pack.c:952 fetch-pack.c:956 fetch-pack.c:960
+#: fetch-pack.c:966 fetch-pack.c:972 fetch-pack.c:977 fetch-pack.c:982
+#, c-format
+msgid "Server supports %s"
+msgstr ""
+
+#: fetch-pack.c:915
+msgid "Server does not support shallow clients"
+msgstr ""
+
+#: fetch-pack.c:975
+msgid "Server does not support --shallow-since"
+msgstr ""
+
+#: fetch-pack.c:980
+msgid "Server does not support --shallow-exclude"
+msgstr ""
+
+#: fetch-pack.c:984
+msgid "Server does not support --deepen"
+msgstr ""
+
+#: fetch-pack.c:1001
 msgid "no common commits"
 msgstr ""
 
-#: fetch-pack.c:1020 fetch-pack.c:1418
+#: fetch-pack.c:1013 fetch-pack.c:1462
 msgid "git fetch-pack: fetch failed."
 msgstr ""
 
-#: fetch-pack.c:1153
+#: fetch-pack.c:1151
 msgid "Server does not support shallow requests"
 msgstr ""
 
-#: fetch-pack.c:1199
+#: fetch-pack.c:1157
+msgid "Server supports filter"
+msgstr ""
+
+#: fetch-pack.c:1184
+msgid "unable to write request to remote"
+msgstr ""
+
+#: fetch-pack.c:1202
 #, c-format
 msgid "error reading section header '%s'"
 msgstr ""
 
-#: fetch-pack.c:1205
+#: fetch-pack.c:1208
 #, c-format
 msgid "expected '%s', received '%s'"
 msgstr ""
 
-#: fetch-pack.c:1244
+#: fetch-pack.c:1247
 #, c-format
 msgid "unexpected acknowledgment line: '%s'"
 msgstr ""
 
-#: fetch-pack.c:1249
+#: fetch-pack.c:1252
 #, c-format
 msgid "error processing acks: %d"
 msgstr ""
 
-#: fetch-pack.c:1259
+#: fetch-pack.c:1262
 msgid "expected packfile to be sent after 'ready'"
 msgstr ""
 
-#: fetch-pack.c:1261
+#: fetch-pack.c:1264
 msgid "expected no other sections to be sent after no 'ready'"
 msgstr ""
 
-#: fetch-pack.c:1298
+#: fetch-pack.c:1306
 #, c-format
 msgid "error processing shallow info: %d"
 msgstr ""
 
-#: fetch-pack.c:1314
+#: fetch-pack.c:1353
 #, c-format
 msgid "expected wanted-ref, got '%s'"
 msgstr ""
 
-#: fetch-pack.c:1324
+#: fetch-pack.c:1358
 #, c-format
 msgid "unexpected wanted-ref: '%s'"
 msgstr ""
 
-#: fetch-pack.c:1328
+#: fetch-pack.c:1363
 #, c-format
 msgid "error processing wanted refs: %d"
 msgstr ""
 
-#: fetch-pack.c:1642
+#: fetch-pack.c:1689
 msgid "no matching remote head"
 msgstr ""
 
-#: fetch-pack.c:1660 builtin/clone.c:664
+#: fetch-pack.c:1712 builtin/clone.c:686
 msgid "remote did not send all necessary objects"
 msgstr ""
 
-#: fetch-pack.c:1686
+#: fetch-pack.c:1739
 #, c-format
 msgid "no such remote ref %s"
 msgstr ""
 
-#: fetch-pack.c:1689
+#: fetch-pack.c:1742
 #, c-format
 msgid "Server does not allow request for unadvertised object %s"
 msgstr ""
 
-#: gpg-interface.c:318
+#: gpg-interface.c:321
 msgid "gpg failed to sign the data"
 msgstr ""
 
-#: gpg-interface.c:344
+#: gpg-interface.c:347
 msgid "could not create temporary file"
 msgstr ""
 
-#: gpg-interface.c:347
+#: gpg-interface.c:350
 #, c-format
 msgid "failed writing detached signature to '%s'"
 msgstr ""
@@ -2470,18 +3138,18 @@ msgstr ""
 msgid "ignore invalid color '%.*s' in log.graphColors"
 msgstr ""
 
-#: grep.c:2113
+#: grep.c:2117
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr ""
 
-#: grep.c:2130 setup.c:164 builtin/clone.c:410 builtin/diff.c:81
-#: builtin/rm.c:134
+#: grep.c:2134 setup.c:164 builtin/clone.c:409 builtin/diff.c:82
+#: builtin/rm.c:135
 #, c-format
 msgid "failed to stat '%s'"
 msgstr ""
 
-#: grep.c:2141
+#: grep.c:2145
 #, c-format
 msgid "'%s': short read"
 msgstr ""
@@ -2538,72 +3206,72 @@ msgstr ""
 msgid "Low-level Commands / Internal Helpers"
 msgstr ""
 
-#: help.c:296
+#: help.c:298
 #, c-format
 msgid "available git commands in '%s'"
 msgstr ""
 
-#: help.c:303
+#: help.c:305
 msgid "git commands available from elsewhere on your $PATH"
 msgstr ""
 
-#: help.c:312
+#: help.c:314
 msgid "These are common Git commands used in various situations:"
 msgstr ""
 
-#: help.c:361 git.c:90
+#: help.c:363 git.c:98
 #, c-format
 msgid "unsupported command listing type '%s'"
 msgstr ""
 
-#: help.c:408
+#: help.c:403
 msgid "The common Git guides are:"
 msgstr ""
 
-#: help.c:517
+#: help.c:512
 msgid "See 'git help <command>' to read about a specific subcommand"
 msgstr ""
 
-#: help.c:522
+#: help.c:517
 msgid "External commands"
 msgstr ""
 
-#: help.c:530
+#: help.c:532
 msgid "Command aliases"
 msgstr ""
 
-#: help.c:594
+#: help.c:596
 #, c-format
 msgid ""
 "'%s' appears to be a git command, but we were not\n"
 "able to execute it. Maybe git-%s is broken?"
 msgstr ""
 
-#: help.c:653
+#: help.c:655
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr ""
 
-#: help.c:675
+#: help.c:677
 #, c-format
 msgid "WARNING: You called a Git command named '%s', which does not exist."
 msgstr ""
 
-#: help.c:680
+#: help.c:682
 #, c-format
 msgid "Continuing under the assumption that you meant '%s'."
 msgstr ""
 
-#: help.c:685
+#: help.c:687
 #, c-format
 msgid "Continuing in %0.1f seconds, assuming that you meant '%s'."
 msgstr ""
 
-#: help.c:693
+#: help.c:695
 #, c-format
 msgid "git: '%s' is not a git command. See 'git --help'."
 msgstr ""
 
-#: help.c:697
+#: help.c:699
 msgid ""
 "\n"
 "The most similar command is"
@@ -2613,16 +3281,16 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: help.c:712
+#: help.c:714
 msgid "git version [<options>]"
 msgstr ""
 
-#: help.c:780
+#: help.c:782
 #, c-format
 msgid "%s: %s - %s"
 msgstr ""
 
-#: help.c:784
+#: help.c:786
 msgid ""
 "\n"
 "Did you mean this?"
@@ -2632,7 +3300,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: ident.c:345
+#: ident.c:349
 msgid ""
 "\n"
 "*** Please tell me who you are.\n"
@@ -2647,48 +3315,72 @@ msgid ""
 "\n"
 msgstr ""
 
-#: ident.c:369
+#: ident.c:379
 msgid "no email was given and auto-detection is disabled"
 msgstr ""
 
-#: ident.c:374
+#: ident.c:384
 #, c-format
 msgid "unable to auto-detect email address (got '%s')"
 msgstr ""
 
-#: ident.c:384
+#: ident.c:401
 msgid "no name was given and auto-detection is disabled"
 msgstr ""
 
-#: ident.c:390
+#: ident.c:407
 #, c-format
 msgid "unable to auto-detect name (got '%s')"
 msgstr ""
 
-#: ident.c:398
+#: ident.c:415
 #, c-format
 msgid "empty ident name (for <%s>) not allowed"
 msgstr ""
 
-#: ident.c:404
+#: ident.c:421
 #, c-format
 msgid "name consists only of disallowed characters: %s"
 msgstr ""
 
-#: ident.c:419 builtin/commit.c:606
+#: ident.c:436 builtin/commit.c:611
 #, c-format
 msgid "invalid date format: %s"
 msgstr ""
 
-#: list-objects-filter-options.c:35
+#: list-objects.c:129
+#, c-format
+msgid "entry '%s' in tree %s has tree mode, but is not a tree"
+msgstr ""
+
+#: list-objects.c:142
+#, c-format
+msgid "entry '%s' in tree %s has blob mode, but is not a blob"
+msgstr ""
+
+#: list-objects.c:378
+#, c-format
+msgid "unable to load root tree for commit %s"
+msgstr ""
+
+#: list-objects-filter-options.c:36
 msgid "multiple filter-specs cannot be combined"
 msgstr ""
 
 #: list-objects-filter-options.c:58
-msgid "only 'tree:0' is supported"
+msgid "expected 'tree:<depth>'"
+msgstr ""
+
+#: list-objects-filter-options.c:84
+msgid "sparse:path filters support has been dropped"
+msgstr ""
+
+#: list-objects-filter-options.c:94
+#, c-format
+msgid "invalid filter-spec '%s'"
 msgstr ""
 
-#: list-objects-filter-options.c:137
+#: list-objects-filter-options.c:158
 msgid "cannot change partial clone promisor remote"
 msgstr ""
 
@@ -2713,12 +3405,13 @@ msgstr ""
 msgid "failed to read the cache"
 msgstr ""
 
-#: merge.c:107 rerere.c:720 builtin/am.c:1899 builtin/am.c:1933
-#: builtin/checkout.c:387 builtin/checkout.c:708 builtin/clone.c:764
+#: merge.c:107 rerere.c:720 builtin/am.c:1885 builtin/am.c:1919
+#: builtin/checkout.c:536 builtin/checkout.c:796 builtin/clone.c:786
+#: builtin/stash.c:264
 msgid "unable to write new index file"
 msgstr ""
 
-#: merge-recursive.c:323
+#: merge-recursive.c:322
 msgid "(bad commit)\n"
 msgstr ""
 
@@ -2727,99 +3420,99 @@ msgstr ""
 msgid "add_cacheinfo failed for path '%s'; merge aborting."
 msgstr ""
 
-#: merge-recursive.c:353
+#: merge-recursive.c:354
 #, c-format
 msgid "add_cacheinfo failed to refresh for path '%s'; merge aborting."
 msgstr ""
 
-#: merge-recursive.c:435
+#: merge-recursive.c:437
 msgid "error building trees"
 msgstr ""
 
-#: merge-recursive.c:906
+#: merge-recursive.c:863
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr ""
 
-#: merge-recursive.c:917
+#: merge-recursive.c:874
 #, c-format
 msgid "Removing %s to make room for subdirectory\n"
 msgstr ""
 
-#: merge-recursive.c:931 merge-recursive.c:950
+#: merge-recursive.c:888 merge-recursive.c:907
 msgid ": perhaps a D/F conflict?"
 msgstr ""
 
-#: merge-recursive.c:940
+#: merge-recursive.c:897
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr ""
 
-#: merge-recursive.c:982 builtin/cat-file.c:39
+#: merge-recursive.c:938 builtin/cat-file.c:40
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr ""
 
-#: merge-recursive.c:984
+#: merge-recursive.c:941
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr ""
 
-#: merge-recursive.c:1008
+#: merge-recursive.c:965
 #, c-format
 msgid "failed to open '%s': %s"
 msgstr ""
 
-#: merge-recursive.c:1019
+#: merge-recursive.c:976
 #, c-format
 msgid "failed to symlink '%s': %s"
 msgstr ""
 
-#: merge-recursive.c:1024
+#: merge-recursive.c:981
 #, c-format
 msgid "do not know what to do with %06o %s '%s'"
 msgstr ""
 
-#: merge-recursive.c:1212
+#: merge-recursive.c:1177
 #, c-format
 msgid "Failed to merge submodule %s (not checked out)"
 msgstr ""
 
-#: merge-recursive.c:1219
+#: merge-recursive.c:1184
 #, c-format
 msgid "Failed to merge submodule %s (commits not present)"
 msgstr ""
 
-#: merge-recursive.c:1226
+#: merge-recursive.c:1191
 #, c-format
 msgid "Failed to merge submodule %s (commits don't follow merge-base)"
 msgstr ""
 
-#: merge-recursive.c:1234 merge-recursive.c:1246
+#: merge-recursive.c:1199 merge-recursive.c:1211
 #, c-format
 msgid "Fast-forwarding submodule %s to the following commit:"
 msgstr ""
 
-#: merge-recursive.c:1237 merge-recursive.c:1249
+#: merge-recursive.c:1202 merge-recursive.c:1214
 #, c-format
 msgid "Fast-forwarding submodule %s"
 msgstr ""
 
-#: merge-recursive.c:1271
+#: merge-recursive.c:1237
 #, c-format
 msgid "Failed to merge submodule %s (merge following commits not found)"
 msgstr ""
 
-#: merge-recursive.c:1275
+#: merge-recursive.c:1241
 #, c-format
 msgid "Failed to merge submodule %s (not fast-forward)"
 msgstr ""
 
-#: merge-recursive.c:1276
+#: merge-recursive.c:1242
 msgid "Found a possible merge resolution for the submodule:\n"
 msgstr ""
 
-#: merge-recursive.c:1279
+#: merge-recursive.c:1245
 #, c-format
 msgid ""
 "If this is correct simply add it to the index for example\n"
@@ -2830,109 +3523,108 @@ msgid ""
 "which will accept this suggestion.\n"
 msgstr ""
 
-#: merge-recursive.c:1288
+#: merge-recursive.c:1254
 #, c-format
 msgid "Failed to merge submodule %s (multiple merges found)"
 msgstr ""
 
-#: merge-recursive.c:1358
+#: merge-recursive.c:1327
 msgid "Failed to execute internal merge"
 msgstr ""
 
-#: merge-recursive.c:1363
+#: merge-recursive.c:1332
 #, c-format
 msgid "Unable to add %s to database"
 msgstr ""
 
-#: merge-recursive.c:1395
+#: merge-recursive.c:1364
 #, c-format
 msgid "Auto-merging %s"
 msgstr ""
 
-#: merge-recursive.c:1416
+#: merge-recursive.c:1387
 #, c-format
 msgid "Error: Refusing to lose untracked file at %s; writing to %s instead."
 msgstr ""
 
-#: merge-recursive.c:1483
+#: merge-recursive.c:1459
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
 "in tree."
 msgstr ""
 
-#: merge-recursive.c:1488
+#: merge-recursive.c:1464
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
 "left in tree."
 msgstr ""
 
-#: merge-recursive.c:1495
+#: merge-recursive.c:1471
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s in %s. Version %s of %s left "
 "in tree at %s."
 msgstr ""
 
-#: merge-recursive.c:1500
+#: merge-recursive.c:1476
 #, c-format
 msgid ""
 "CONFLICT (%s/delete): %s deleted in %s and %s to %s in %s. Version %s of %s "
 "left in tree at %s."
 msgstr ""
 
-#: merge-recursive.c:1534
+#: merge-recursive.c:1511
 msgid "rename"
 msgstr ""
 
-#: merge-recursive.c:1534
+#: merge-recursive.c:1511
 msgid "renamed"
 msgstr ""
 
-#: merge-recursive.c:1588 merge-recursive.c:1737 merge-recursive.c:2369
-#: merge-recursive.c:3124
+#: merge-recursive.c:1591 merge-recursive.c:2450 merge-recursive.c:3094
 #, c-format
 msgid "Refusing to lose dirty file at %s"
 msgstr ""
 
-#: merge-recursive.c:1602
+#: merge-recursive.c:1601
+#, c-format
+msgid "Refusing to lose untracked file at %s, even though it's in the way."
+msgstr ""
+
+#: merge-recursive.c:1659
+#, c-format
+msgid "CONFLICT (rename/add): Rename %s->%s in %s.  Added %s in %s"
+msgstr ""
+
+#: merge-recursive.c:1690
 #, c-format
 msgid "%s is a directory in %s adding as %s instead"
 msgstr ""
 
-#: merge-recursive.c:1607
+#: merge-recursive.c:1695
 #, c-format
 msgid "Refusing to lose untracked file at %s; adding as %s instead"
 msgstr ""
 
-#: merge-recursive.c:1633
+#: merge-recursive.c:1714
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
 "\"->\"%s\" in \"%s\"%s"
 msgstr ""
 
-#: merge-recursive.c:1638
+#: merge-recursive.c:1719
 msgid " (left unresolved)"
 msgstr ""
 
-#: merge-recursive.c:1699
+#: merge-recursive.c:1828
 #, c-format
 msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
 msgstr ""
 
-#: merge-recursive.c:1734
-#, c-format
-msgid "Renaming %s to %s and %s to %s instead"
-msgstr ""
-
-#: merge-recursive.c:1746
-#, c-format
-msgid "Refusing to lose untracked file at %s, even though it's in the way."
-msgstr ""
-
-#: merge-recursive.c:1952
+#: merge-recursive.c:2035
 #, c-format
 msgid ""
 "CONFLICT (directory rename split): Unclear where to place %s because "
@@ -2940,64 +3632,49 @@ msgid ""
 "getting a majority of the files."
 msgstr ""
 
-#: merge-recursive.c:1984
+#: merge-recursive.c:2067
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Existing file/dir at %s in the way of "
 "implicit directory rename(s) putting the following path(s) there: %s."
 msgstr ""
 
-#: merge-recursive.c:1994
+#: merge-recursive.c:2077
 #, c-format
 msgid ""
 "CONFLICT (implicit dir rename): Cannot map more than one path to %s; "
 "implicit directory renames tried to put these paths there: %s"
 msgstr ""
 
-#: merge-recursive.c:2086
+#: merge-recursive.c:2169
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
 ">%s in %s"
 msgstr ""
 
-#: merge-recursive.c:2331
+#: merge-recursive.c:2413
 #, c-format
 msgid ""
 "WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
 "renamed."
 msgstr ""
 
-#: merge-recursive.c:2737
-#, c-format
-msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s"
-msgstr ""
-
-#: merge-recursive.c:2763
-#, c-format
-msgid "Adding merged %s"
-msgstr ""
-
-#: merge-recursive.c:2770 merge-recursive.c:3127
-#, c-format
-msgid "Adding as %s instead"
-msgstr ""
-
-#: merge-recursive.c:2934
+#: merge-recursive.c:2938
 #, c-format
 msgid "cannot read object %s"
 msgstr ""
 
-#: merge-recursive.c:2937
+#: merge-recursive.c:2941
 #, c-format
 msgid "object %s is not a blob"
 msgstr ""
 
-#: merge-recursive.c:3006
+#: merge-recursive.c:3005
 msgid "modify"
 msgstr ""
 
-#: merge-recursive.c:3006
+#: merge-recursive.c:3005
 msgid "modified"
 msgstr ""
 
@@ -3005,199 +3682,262 @@ msgstr ""
 msgid "content"
 msgstr ""
 
-#: merge-recursive.c:3024
+#: merge-recursive.c:3021
 msgid "add/add"
 msgstr ""
 
-#: merge-recursive.c:3071
+#: merge-recursive.c:3044
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr ""
 
-#: merge-recursive.c:3093 git-submodule.sh:858
+#: merge-recursive.c:3066 git-submodule.sh:937
 msgid "submodule"
 msgstr ""
 
-#: merge-recursive.c:3094
+#: merge-recursive.c:3067
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr ""
 
-#: merge-recursive.c:3216
+#: merge-recursive.c:3097
+#, c-format
+msgid "Adding as %s instead"
+msgstr ""
+
+#: merge-recursive.c:3179
+#, c-format
+msgid ""
+"Path updated: %s added in %s inside a directory that was renamed in %s; "
+"moving it to %s."
+msgstr ""
+
+#: merge-recursive.c:3182
+#, c-format
+msgid ""
+"CONFLICT (file location): %s added in %s inside a directory that was renamed "
+"in %s, suggesting it should perhaps be moved to %s."
+msgstr ""
+
+#: merge-recursive.c:3186
+#, c-format
+msgid ""
+"Path updated: %s renamed to %s in %s, inside a directory that was renamed in "
+"%s; moving it to %s."
+msgstr ""
+
+#: merge-recursive.c:3189
+#, c-format
+msgid ""
+"CONFLICT (file location): %s renamed to %s in %s, inside a directory that "
+"was renamed in %s, suggesting it should perhaps be moved to %s."
+msgstr ""
+
+#: merge-recursive.c:3303
 #, c-format
 msgid "Removing %s"
 msgstr ""
 
-#: merge-recursive.c:3242
+#: merge-recursive.c:3326
 msgid "file/directory"
 msgstr ""
 
-#: merge-recursive.c:3248
+#: merge-recursive.c:3331
 msgid "directory/file"
 msgstr ""
 
-#: merge-recursive.c:3255
+#: merge-recursive.c:3338
 #, c-format
 msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
 msgstr ""
 
-#: merge-recursive.c:3264
+#: merge-recursive.c:3347
 #, c-format
 msgid "Adding %s"
 msgstr ""
 
-#: merge-recursive.c:3300
+#: merge-recursive.c:3356
+#, c-format
+msgid "CONFLICT (add/add): Merge conflict in %s"
+msgstr ""
+
+#: merge-recursive.c:3394
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
 "  %s"
 msgstr ""
 
-#: merge-recursive.c:3311
+#: merge-recursive.c:3405
 msgid "Already up to date!"
 msgstr ""
 
-#: merge-recursive.c:3320
+#: merge-recursive.c:3414
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr ""
 
-#: merge-recursive.c:3419
+#: merge-recursive.c:3513
 msgid "Merging:"
 msgstr ""
 
-#: merge-recursive.c:3432
+#: merge-recursive.c:3526
 #, c-format
 msgid "found %u common ancestor:"
 msgid_plural "found %u common ancestors:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: merge-recursive.c:3471
+#: merge-recursive.c:3565
 msgid "merge returned no commit"
 msgstr ""
 
-#: merge-recursive.c:3537
+#: merge-recursive.c:3631
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr ""
 
-#: merge-recursive.c:3553 builtin/merge.c:691 builtin/merge.c:849
+#: merge-recursive.c:3647 builtin/merge.c:698 builtin/merge.c:869
 msgid "Unable to write index."
 msgstr ""
 
-#: midx.c:65
+#: midx.c:69
 #, c-format
 msgid "multi-pack-index file %s is too small"
 msgstr ""
 
-#: midx.c:81
+#: midx.c:85
 #, c-format
 msgid "multi-pack-index signature 0x%08x does not match signature 0x%08x"
 msgstr ""
 
-#: midx.c:86
+#: midx.c:90
 #, c-format
 msgid "multi-pack-index version %d not recognized"
 msgstr ""
 
-#: midx.c:91
+#: midx.c:95
 #, c-format
 msgid "hash version %u does not match"
 msgstr ""
 
-#: midx.c:105
+#: midx.c:109
 msgid "invalid chunk offset (too large)"
 msgstr ""
 
-#: midx.c:129
+#: midx.c:133
 msgid "terminating multi-pack-index chunk id appears earlier than expected"
 msgstr ""
 
-#: midx.c:142
+#: midx.c:146
 msgid "multi-pack-index missing required pack-name chunk"
 msgstr ""
 
-#: midx.c:144
+#: midx.c:148
 msgid "multi-pack-index missing required OID fanout chunk"
 msgstr ""
 
-#: midx.c:146
+#: midx.c:150
 msgid "multi-pack-index missing required OID lookup chunk"
 msgstr ""
 
-#: midx.c:148
+#: midx.c:152
 msgid "multi-pack-index missing required object offsets chunk"
 msgstr ""
 
-#: midx.c:162
+#: midx.c:166
 #, c-format
 msgid "multi-pack-index pack names out of order: '%s' before '%s'"
 msgstr ""
 
-#: midx.c:205
+#: midx.c:211
 #, c-format
-msgid "bad pack-int-id: %u (%u total packs"
+msgid "bad pack-int-id: %u (%u total packs)"
 msgstr ""
 
-#: midx.c:246
+#: midx.c:261
 msgid "multi-pack-index stores a 64-bit offset, but off_t is too small"
 msgstr ""
 
-#: midx.c:271
+#: midx.c:289
 msgid "error preparing packfile from multi-pack-index"
 msgstr ""
 
-#: midx.c:407
+#: midx.c:470
 #, c-format
 msgid "failed to add packfile '%s'"
 msgstr ""
 
-#: midx.c:413
+#: midx.c:476
 #, c-format
 msgid "failed to open pack-index '%s'"
 msgstr ""
 
-#: midx.c:507
+#: midx.c:536
 #, c-format
 msgid "failed to locate object %d in packfile"
 msgstr ""
 
-#: midx.c:943
+#: midx.c:865
+#, c-format
+msgid "did not see pack-file %s to drop"
+msgstr ""
+
+#: midx.c:1036
 #, c-format
 msgid "failed to clear multi-pack-index at %s"
 msgstr ""
 
-#: midx.c:981
+#: midx.c:1091
+msgid "Looking for referenced packfiles"
+msgstr ""
+
+#: midx.c:1106
 #, c-format
 msgid ""
 "oid fanout out of order: fanout[%d] = %<PRIx32> > %<PRIx32> = fanout[%d]"
 msgstr ""
 
-#: midx.c:992
+#: midx.c:1110
+msgid "Verifying OID order in MIDX"
+msgstr ""
+
+#: midx.c:1119
 #, c-format
 msgid "oid lookup out of order: oid[%d] = %s >= %s = oid[%d]"
 msgstr ""
 
-#: midx.c:996
+#: midx.c:1138
+msgid "Sorting objects by packfile"
+msgstr ""
+
+#: midx.c:1144
 msgid "Verifying object offsets"
 msgstr ""
 
-#: midx.c:1004
+#: midx.c:1160
 #, c-format
 msgid "failed to load pack entry for oid[%d] = %s"
 msgstr ""
 
-#: midx.c:1010
+#: midx.c:1166
 #, c-format
 msgid "failed to load pack-index for packfile %s"
 msgstr ""
 
-#: midx.c:1019
+#: midx.c:1175
 #, c-format
 msgid "incorrect object offset for oid[%d] = %s: %<PRIx64> != %<PRIx64>"
 msgstr ""
 
+#: midx.c:1350
+msgid "could not start pack-objects"
+msgstr ""
+
+#: midx.c:1369
+msgid "could not finish pack-objects"
+msgstr ""
+
 #: name-hash.c:532
 #, c-format
 msgid "unable to create lazy_dir thread: %s"
@@ -3213,7 +3953,7 @@ msgstr ""
 msgid "unable to join lazy_name thread: %s"
 msgstr ""
 
-#: notes-merge.c:275
+#: notes-merge.c:277
 #, c-format
 msgid ""
 "You have not concluded your previous notes merge (%s exists).\n"
@@ -3221,21 +3961,21 @@ msgid ""
 "commit/abort the previous merge before you start a new notes merge."
 msgstr ""
 
-#: notes-merge.c:282
+#: notes-merge.c:284
 #, c-format
 msgid "You have not concluded your notes merge (%s exists)."
 msgstr ""
 
-#: notes-utils.c:45
+#: notes-utils.c:46
 msgid "Cannot commit uninitialized/unreferenced notes tree"
 msgstr ""
 
-#: notes-utils.c:104
+#: notes-utils.c:105
 #, c-format
 msgid "Bad notes.rewriteMode value: '%s'"
 msgstr ""
 
-#: notes-utils.c:114
+#: notes-utils.c:115
 #, c-format
 msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
 msgstr ""
@@ -3244,7 +3984,7 @@ msgstr ""
 #. the environment variable, the second %s is
 #. its value.
 #.
-#: notes-utils.c:144
+#: notes-utils.c:145
 #, c-format
 msgid "Bad %s value: '%s'"
 msgstr ""
@@ -3254,45 +3994,100 @@ msgstr ""
 msgid "invalid object type \"%s\""
 msgstr ""
 
-#: object.c:173
+#: object.c:174
 #, c-format
 msgid "object %s is a %s, not a %s"
 msgstr ""
 
-#: object.c:233
+#: object.c:234
 #, c-format
 msgid "object %s has unknown type id %d"
 msgstr ""
 
-#: object.c:246
+#: object.c:247
 #, c-format
 msgid "unable to parse object: %s"
 msgstr ""
 
-#: object.c:266 object.c:277
+#: object.c:267 object.c:278
 #, c-format
-msgid "sha1 mismatch %s"
+msgid "hash mismatch %s"
 msgstr ""
 
-#: packfile.c:607
+#: packfile.c:648
 msgid "offset before end of packfile (broken .idx?)"
 msgstr ""
 
-#: packfile.c:1864
+#: packfile.c:1899
 #, c-format
 msgid "offset before start of pack index for %s (corrupt index?)"
 msgstr ""
 
-#: packfile.c:1868
+#: packfile.c:1903
 #, c-format
 msgid "offset beyond end of pack index for %s (truncated index?)"
 msgstr ""
 
-#: parse-options.c:672
+#: parse-options.c:38
+#, c-format
+msgid "%s requires a value"
+msgstr ""
+
+#: parse-options.c:73
+#, c-format
+msgid "%s is incompatible with %s"
+msgstr ""
+
+#: parse-options.c:78
+#, c-format
+msgid "%s : incompatible with something else"
+msgstr ""
+
+#: parse-options.c:92 parse-options.c:96 parse-options.c:319
+#, c-format
+msgid "%s takes no value"
+msgstr ""
+
+#: parse-options.c:94
+#, c-format
+msgid "%s isn't available"
+msgstr ""
+
+#: parse-options.c:219
+#, c-format
+msgid "%s expects a non-negative integer value with an optional k/m/g suffix"
+msgstr ""
+
+#: parse-options.c:389
+#, c-format
+msgid "ambiguous option: %s (could be --%s%s or --%s%s)"
+msgstr ""
+
+#: parse-options.c:423 parse-options.c:431
+#, c-format
+msgid "did you mean `--%s` (with two dashes ?)"
+msgstr ""
+
+#: parse-options.c:859
+#, c-format
+msgid "unknown option `%s'"
+msgstr ""
+
+#: parse-options.c:861
+#, c-format
+msgid "unknown switch `%c'"
+msgstr ""
+
+#: parse-options.c:863
+#, c-format
+msgid "unknown non-ascii option in string: `%s'"
+msgstr ""
+
+#: parse-options.c:887
 msgid "..."
 msgstr ""
 
-#: parse-options.c:691
+#: parse-options.c:906
 #, c-format
 msgid "usage: %s"
 msgstr ""
@@ -3300,251 +4095,412 @@ msgstr ""
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation.
 #.
-#: parse-options.c:697
+#: parse-options.c:912
 #, c-format
 msgid "   or: %s"
 msgstr ""
 
-#: parse-options.c:700
+#: parse-options.c:915
 #, c-format
 msgid "    %s"
 msgstr ""
 
-#: parse-options.c:739
+#: parse-options.c:954
 msgid "-NUM"
 msgstr ""
 
-#: parse-options-cb.c:37
+#: parse-options.c:968
+#, c-format
+msgid "alias of --%s"
+msgstr ""
+
+#: parse-options-cb.c:20 parse-options-cb.c:24
+#, c-format
+msgid "option `%s' expects a numerical value"
+msgstr ""
+
+#: parse-options-cb.c:41
 #, c-format
 msgid "malformed expiration date '%s'"
 msgstr ""
 
-#: parse-options-cb.c:109
+#: parse-options-cb.c:54
+#, c-format
+msgid "option `%s' expects \"always\", \"auto\", or \"never\""
+msgstr ""
+
+#: parse-options-cb.c:130 parse-options-cb.c:147
 #, c-format
 msgid "malformed object name '%s'"
 msgstr ""
 
-#: path.c:894
+#: path.c:897
 #, c-format
 msgid "Could not make %s writable by group"
 msgstr ""
 
-#: pathspec.c:129
+#: pathspec.c:128
 msgid "Escape character '\\' not allowed as last character in attr value"
 msgstr ""
 
-#: pathspec.c:147
+#: pathspec.c:146
 msgid "Only one 'attr:' specification is allowed."
 msgstr ""
 
-#: pathspec.c:150
+#: pathspec.c:149
 msgid "attr spec must not be empty"
 msgstr ""
 
-#: pathspec.c:193
+#: pathspec.c:192
 #, c-format
 msgid "invalid attribute name %s"
 msgstr ""
 
-#: pathspec.c:258
+#: pathspec.c:257
 msgid "global 'glob' and 'noglob' pathspec settings are incompatible"
 msgstr ""
 
-#: pathspec.c:265
+#: pathspec.c:264
 msgid ""
 "global 'literal' pathspec setting is incompatible with all other global "
 "pathspec settings"
 msgstr ""
 
-#: pathspec.c:305
+#: pathspec.c:304
 msgid "invalid parameter for pathspec magic 'prefix'"
 msgstr ""
 
-#: pathspec.c:326
+#: pathspec.c:325
 #, c-format
 msgid "Invalid pathspec magic '%.*s' in '%s'"
 msgstr ""
 
-#: pathspec.c:331
+#: pathspec.c:330
 #, c-format
 msgid "Missing ')' at the end of pathspec magic in '%s'"
 msgstr ""
 
-#: pathspec.c:369
+#: pathspec.c:368
 #, c-format
 msgid "Unimplemented pathspec magic '%c' in '%s'"
 msgstr ""
 
-#: pathspec.c:428
+#: pathspec.c:427
 #, c-format
 msgid "%s: 'literal' and 'glob' are incompatible"
 msgstr ""
 
-#: pathspec.c:441
+#: pathspec.c:440
 #, c-format
 msgid "%s: '%s' is outside repository"
 msgstr ""
 
-#: pathspec.c:515
+#: pathspec.c:514
 #, c-format
 msgid "'%s' (mnemonic: '%c')"
 msgstr ""
 
-#: pathspec.c:525
+#: pathspec.c:524
 #, c-format
 msgid "%s: pathspec magic not supported by this command: %s"
 msgstr ""
 
-#: pathspec.c:592
+#: pathspec.c:591
 #, c-format
 msgid "pathspec '%s' is beyond a symbolic link"
 msgstr ""
 
-#: pkt-line.c:104
+#: pkt-line.c:92
+msgid "unable to write flush packet"
+msgstr ""
+
+#: pkt-line.c:99
+msgid "unable to write delim packet"
+msgstr ""
+
+#: pkt-line.c:106
 msgid "flush packet write failed"
 msgstr ""
 
-#: pkt-line.c:142 pkt-line.c:228
+#: pkt-line.c:146 pkt-line.c:232
 msgid "protocol error: impossibly long line"
 msgstr ""
 
-#: pkt-line.c:158 pkt-line.c:160
+#: pkt-line.c:162 pkt-line.c:164
 msgid "packet write with format failed"
 msgstr ""
 
-#: pkt-line.c:192
+#: pkt-line.c:196
 msgid "packet write failed - data exceeds max packet size"
 msgstr ""
 
-#: pkt-line.c:199 pkt-line.c:206
+#: pkt-line.c:203 pkt-line.c:210
 msgid "packet write failed"
 msgstr ""
 
-#: pkt-line.c:291
+#: pkt-line.c:295
 msgid "read error"
 msgstr ""
 
-#: pkt-line.c:299
+#: pkt-line.c:303
 msgid "the remote end hung up unexpectedly"
 msgstr ""
 
-#: pkt-line.c:327
+#: pkt-line.c:331
 #, c-format
 msgid "protocol error: bad line length character: %.4s"
 msgstr ""
 
-#: pkt-line.c:337 pkt-line.c:342
+#: pkt-line.c:341 pkt-line.c:346
 #, c-format
 msgid "protocol error: bad line length %d"
 msgstr ""
 
-#: preload-index.c:118
+#: pkt-line.c:362
+#, c-format
+msgid "remote error: %s"
+msgstr ""
+
+#: preload-index.c:119
 msgid "Refreshing index"
 msgstr ""
 
-#: preload-index.c:137
+#: preload-index.c:138
 #, c-format
 msgid "unable to create threaded lstat: %s"
 msgstr ""
 
-#: pretty.c:962
-msgid "unable to parse --pretty format"
+#: pretty.c:966
+msgid "unable to parse --pretty format"
+msgstr ""
+
+#: range-diff.c:70
+msgid "could not start `log`"
+msgstr ""
+
+#: range-diff.c:72
+msgid "could not read `log` output"
+msgstr ""
+
+#: range-diff.c:91 sequencer.c:5021
+#, c-format
+msgid "could not parse commit '%s'"
+msgstr ""
+
+#: range-diff.c:117
+#, c-format
+msgid "could not parse git header '%.*s'"
+msgstr ""
+
+#: range-diff.c:274
+msgid "failed to generate diff"
+msgstr ""
+
+#: range-diff.c:506 range-diff.c:508
+#, c-format
+msgid "could not parse log for '%s'"
+msgstr ""
+
+#: read-cache.c:680
+#, c-format
+msgid "will not add file alias '%s' ('%s' already exists in index)"
+msgstr ""
+
+#: read-cache.c:696
+msgid "cannot create an empty blob in the object database"
+msgstr ""
+
+#: read-cache.c:718
+#, c-format
+msgid "%s: can only add regular files, symbolic links or git-directories"
+msgstr ""
+
+#: read-cache.c:723
+#, c-format
+msgid "'%s' does not have a commit checked out"
+msgstr ""
+
+#: read-cache.c:775
+#, c-format
+msgid "unable to index file '%s'"
+msgstr ""
+
+#: read-cache.c:794
+#, c-format
+msgid "unable to add '%s' to index"
+msgstr ""
+
+#: read-cache.c:805
+#, c-format
+msgid "unable to stat '%s'"
+msgstr ""
+
+#: read-cache.c:1314
+#, c-format
+msgid "'%s' appears as both a file and as a directory"
+msgstr ""
+
+#: read-cache.c:1499
+msgid "Refresh index"
+msgstr ""
+
+#: read-cache.c:1613
+#, c-format
+msgid ""
+"index.version set, but the value is invalid.\n"
+"Using version %i"
+msgstr ""
+
+#: read-cache.c:1623
+#, c-format
+msgid ""
+"GIT_INDEX_VERSION set, but the value is invalid.\n"
+"Using version %i"
+msgstr ""
+
+#: read-cache.c:1679
+#, c-format
+msgid "bad signature 0x%08x"
+msgstr ""
+
+#: read-cache.c:1682
+#, c-format
+msgid "bad index version %d"
+msgstr ""
+
+#: read-cache.c:1691
+msgid "bad index file sha1 signature"
+msgstr ""
+
+#: read-cache.c:1721
+#, c-format
+msgid "index uses %.4s extension, which we do not understand"
+msgstr ""
+
+#: read-cache.c:1723
+#, c-format
+msgid "ignoring %.4s extension"
+msgstr ""
+
+#: read-cache.c:1760
+#, c-format
+msgid "unknown index entry format 0x%08x"
+msgstr ""
+
+#: read-cache.c:1776
+#, c-format
+msgid "malformed name field in the index, near path '%s'"
 msgstr ""
 
-#: range-diff.c:56
-msgid "could not start `log`"
+#: read-cache.c:1833
+msgid "unordered stage entries in index"
 msgstr ""
 
-#: range-diff.c:59
-msgid "could not read `log` output"
+#: read-cache.c:1836
+#, c-format
+msgid "multiple stage entries for merged file '%s'"
 msgstr ""
 
-#: range-diff.c:74 sequencer.c:4764
+#: read-cache.c:1839
 #, c-format
-msgid "could not parse commit '%s'"
+msgid "unordered stage entries for '%s'"
 msgstr ""
 
-#: range-diff.c:224
-msgid "failed to generate diff"
+#: read-cache.c:1946 read-cache.c:2234 rerere.c:565 rerere.c:599 rerere.c:1111
+#: builtin/add.c:460 builtin/check-ignore.c:178 builtin/checkout.c:467
+#: builtin/checkout.c:651 builtin/clean.c:956 builtin/commit.c:347
+#: builtin/diff-tree.c:120 builtin/grep.c:499 builtin/mv.c:145
+#: builtin/reset.c:245 builtin/rm.c:271 builtin/submodule--helper.c:330
+msgid "index file corrupt"
 msgstr ""
 
-#: range-diff.c:455 range-diff.c:457
+#: read-cache.c:2087
 #, c-format
-msgid "could not parse log for '%s'"
+msgid "unable to create load_cache_entries thread: %s"
 msgstr ""
 
-#: read-cache.c:1490
-msgid "Refresh index"
+#: read-cache.c:2100
+#, c-format
+msgid "unable to join load_cache_entries thread: %s"
 msgstr ""
 
-#: read-cache.c:1604
+#: read-cache.c:2133
 #, c-format
-msgid ""
-"index.version set, but the value is invalid.\n"
-"Using version %i"
+msgid "%s: index file open failed"
 msgstr ""
 
-#: read-cache.c:1614
+#: read-cache.c:2137
 #, c-format
-msgid ""
-"GIT_INDEX_VERSION set, but the value is invalid.\n"
-"Using version %i"
+msgid "%s: cannot stat the open index"
 msgstr ""
 
-#: read-cache.c:1792
+#: read-cache.c:2141
 #, c-format
-msgid "malformed name field in the index, near path '%s'"
+msgid "%s: index file smaller than expected"
 msgstr ""
 
-#: read-cache.c:1960 rerere.c:565 rerere.c:599 rerere.c:1111 builtin/add.c:458
-#: builtin/check-ignore.c:177 builtin/checkout.c:289 builtin/checkout.c:585
-#: builtin/checkout.c:953 builtin/clean.c:954 builtin/commit.c:343
-#: builtin/diff-tree.c:115 builtin/grep.c:489 builtin/mv.c:144
-#: builtin/reset.c:244 builtin/rm.c:270 builtin/submodule--helper.c:329
-msgid "index file corrupt"
+#: read-cache.c:2145
+#, c-format
+msgid "%s: unable to map index file"
 msgstr ""
 
-#: read-cache.c:2101
+#: read-cache.c:2187
 #, c-format
-msgid "unable to create load_cache_entries thread: %s"
+msgid "unable to create load_index_extensions thread: %s"
 msgstr ""
 
-#: read-cache.c:2114
+#: read-cache.c:2214
 #, c-format
-msgid "unable to join load_cache_entries thread: %s"
+msgid "unable to join load_index_extensions thread: %s"
 msgstr ""
 
-#: read-cache.c:2200
+#: read-cache.c:2246
 #, c-format
-msgid "unable to create load_index_extensions thread: %s"
+msgid "could not freshen shared index '%s'"
 msgstr ""
 
-#: read-cache.c:2227
+#: read-cache.c:2293
 #, c-format
-msgid "unable to join load_index_extensions thread: %s"
+msgid "broken index, expect %s in %s, got %s"
 msgstr ""
 
-#: read-cache.c:2953 sequencer.c:4727 wrapper.c:658 builtin/merge.c:1086
+#: read-cache.c:2989 wrapper.c:658 builtin/merge.c:1114
 #, c-format
 msgid "could not close '%s'"
 msgstr ""
 
-#: read-cache.c:3026 sequencer.c:2203 sequencer.c:3592
+#: read-cache.c:3092 sequencer.c:2358 sequencer.c:3928
 #, c-format
 msgid "could not stat '%s'"
 msgstr ""
 
-#: read-cache.c:3039
+#: read-cache.c:3105
 #, c-format
 msgid "unable to open git dir: %s"
 msgstr ""
 
-#: read-cache.c:3051
+#: read-cache.c:3117
 #, c-format
 msgid "unable to unlink: %s"
 msgstr ""
 
-#: rebase-interactive.c:10
+#: read-cache.c:3142
+#, c-format
+msgid "cannot fix permission bits on '%s'"
+msgstr ""
+
+#: read-cache.c:3291
+#, c-format
+msgid "%s: cannot drop to stage #0"
+msgstr ""
+
+#: rebase-interactive.c:26
+#, c-format
+msgid ""
+"unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
+msgstr ""
+
+#: rebase-interactive.c:35
 msgid ""
 "\n"
 "Commands:\n"
@@ -3566,19 +4522,26 @@ msgid ""
 "These lines can be re-ordered; they are executed from top to bottom.\n"
 msgstr ""
 
-#: rebase-interactive.c:31 git-rebase--preserve-merges.sh:173
+#: rebase-interactive.c:56
+#, c-format
+msgid "Rebase %s onto %s (%d command)"
+msgid_plural "Rebase %s onto %s (%d commands)"
+msgstr[0] ""
+msgstr[1] ""
+
+#: rebase-interactive.c:65 git-rebase--preserve-merges.sh:228
 msgid ""
 "\n"
 "Do not remove any line. Use 'drop' explicitly to remove a commit.\n"
 msgstr ""
 
-#: rebase-interactive.c:34 git-rebase--preserve-merges.sh:177
+#: rebase-interactive.c:68 git-rebase--preserve-merges.sh:232
 msgid ""
 "\n"
 "If you remove a line here THAT COMMIT WILL BE LOST.\n"
 msgstr ""
 
-#: rebase-interactive.c:40 git-rebase--preserve-merges.sh:816
+#: rebase-interactive.c:74 git-rebase--preserve-merges.sh:871
 msgid ""
 "\n"
 "You are editing the todo file of an ongoing interactive rebase.\n"
@@ -3587,132 +4550,154 @@ msgid ""
 "\n"
 msgstr ""
 
-#: rebase-interactive.c:45 git-rebase--preserve-merges.sh:893
+#: rebase-interactive.c:79 git-rebase--preserve-merges.sh:948
 msgid ""
 "\n"
 "However, if you remove everything, the rebase will be aborted.\n"
 "\n"
 msgstr ""
 
-#: rebase-interactive.c:51 git-rebase--preserve-merges.sh:900
+#: rebase-interactive.c:85 git-rebase--preserve-merges.sh:955
 msgid "Note that empty commits are commented out"
 msgstr ""
 
-#: rebase-interactive.c:62 rebase-interactive.c:75 sequencer.c:2186
-#: sequencer.c:4505 sequencer.c:4561 sequencer.c:4836
+#: rebase-interactive.c:105 rerere.c:485 rerere.c:692 sequencer.c:3447
+#: sequencer.c:3473 sequencer.c:5120 builtin/fsck.c:356 builtin/rebase.c:235
 #, c-format
-msgid "could not read '%s'."
+msgid "could not write '%s'"
+msgstr ""
+
+#: rebase-interactive.c:108
+#, c-format
+msgid "could not copy '%s' to '%s'."
+msgstr ""
+
+#: rebase-interactive.c:173
+#, c-format
+msgid ""
+"Warning: some commits may have been dropped accidentally.\n"
+"Dropped commits (newer to older):\n"
+msgstr ""
+
+#: rebase-interactive.c:180
+#, 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 ""
 
-#: refs.c:192
+#: refs.c:262
 #, c-format
 msgid "%s does not point to a valid object!"
 msgstr ""
 
-#: refs.c:583
+#: refs.c:667
 #, c-format
 msgid "ignoring dangling symref %s"
 msgstr ""
 
-#: refs.c:585 ref-filter.c:1951
+#: refs.c:669 ref-filter.c:2092
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr ""
 
-#: refs.c:711
+#: refs.c:804
 #, c-format
 msgid "could not open '%s' for writing: %s"
 msgstr ""
 
-#: refs.c:721 refs.c:772
+#: refs.c:814 refs.c:865
 #, c-format
 msgid "could not read ref '%s'"
 msgstr ""
 
-#: refs.c:727
+#: refs.c:820
 #, c-format
 msgid "ref '%s' already exists"
 msgstr ""
 
-#: refs.c:732
+#: refs.c:825
 #, c-format
 msgid "unexpected object ID when writing '%s'"
 msgstr ""
 
-#: refs.c:740 sequencer.c:394 sequencer.c:2510 sequencer.c:2636
-#: sequencer.c:2650 sequencer.c:2877 sequencer.c:4725 sequencer.c:4788
-#: wrapper.c:656
+#: refs.c:833 sequencer.c:403 sequencer.c:2709 sequencer.c:2913
+#: sequencer.c:2927 sequencer.c:3184 sequencer.c:5037 wrapper.c:656
 #, c-format
 msgid "could not write to '%s'"
 msgstr ""
 
-#: refs.c:767 sequencer.c:4723 sequencer.c:4782 wrapper.c:225 wrapper.c:395
-#: builtin/am.c:728
+#: refs.c:860 wrapper.c:225 wrapper.c:395 builtin/am.c:715
+#: builtin/rebase.c:1003
 #, c-format
 msgid "could not open '%s' for writing"
 msgstr ""
 
-#: refs.c:774
+#: refs.c:867
 #, c-format
 msgid "unexpected object ID when deleting '%s'"
 msgstr ""
 
-#: refs.c:905
+#: refs.c:998
 #, c-format
 msgid "log for ref %s has gap after %s"
 msgstr ""
 
-#: refs.c:911
+#: refs.c:1004
 #, c-format
 msgid "log for ref %s unexpectedly ended on %s"
 msgstr ""
 
-#: refs.c:969
+#: refs.c:1063
 #, c-format
 msgid "log for %s is empty"
 msgstr ""
 
-#: refs.c:1061
+#: refs.c:1155
 #, c-format
 msgid "refusing to update ref with bad name '%s'"
 msgstr ""
 
-#: refs.c:1137
+#: refs.c:1231
 #, c-format
 msgid "update_ref failed for ref '%s': %s"
 msgstr ""
 
-#: refs.c:1911
+#: refs.c:2012
 #, c-format
 msgid "multiple updates for ref '%s' not allowed"
 msgstr ""
 
-#: refs.c:1943
+#: refs.c:2044
 msgid "ref updates forbidden inside quarantine environment"
 msgstr ""
 
-#: refs.c:2039 refs.c:2069
+#: refs.c:2140 refs.c:2170
 #, c-format
 msgid "'%s' exists; cannot create '%s'"
 msgstr ""
 
-#: refs.c:2045 refs.c:2080
+#: refs.c:2146 refs.c:2181
 #, c-format
 msgid "cannot process '%s' and '%s' at the same time"
 msgstr ""
 
-#: refs/files-backend.c:1227
+#: refs/files-backend.c:1234
 #, c-format
 msgid "could not remove reference %s"
 msgstr ""
 
-#: refs/files-backend.c:1241 refs/packed-backend.c:1532
+#: refs/files-backend.c:1248 refs/packed-backend.c:1532
 #: refs/packed-backend.c:1542
 #, c-format
 msgid "could not delete reference %s: %s"
 msgstr ""
 
-#: refs/files-backend.c:1244 refs/packed-backend.c:1545
+#: refs/files-backend.c:1251 refs/packed-backend.c:1545
 #, c-format
 msgid "could not delete references: %s"
 msgstr ""
@@ -3722,348 +4707,461 @@ msgstr ""
 msgid "invalid refspec '%s'"
 msgstr ""
 
-#: ref-filter.c:39 wt-status.c:1855
+#: ref-filter.c:42 wt-status.c:1934
 msgid "gone"
 msgstr ""
 
-#: ref-filter.c:40
+#: ref-filter.c:43
 #, c-format
 msgid "ahead %d"
 msgstr ""
 
-#: ref-filter.c:41
+#: ref-filter.c:44
 #, c-format
 msgid "behind %d"
 msgstr ""
 
-#: ref-filter.c:42
+#: ref-filter.c:45
 #, c-format
 msgid "ahead %d, behind %d"
 msgstr ""
 
-#: ref-filter.c:138
+#: ref-filter.c:162
 #, c-format
 msgid "expected format: %%(color:<color>)"
 msgstr ""
 
-#: ref-filter.c:140
+#: ref-filter.c:164
 #, c-format
 msgid "unrecognized color: %%(color:%s)"
 msgstr ""
 
-#: ref-filter.c:162
+#: ref-filter.c:186
 #, c-format
 msgid "Integer value expected refname:lstrip=%s"
 msgstr ""
 
-#: ref-filter.c:166
+#: ref-filter.c:190
 #, c-format
 msgid "Integer value expected refname:rstrip=%s"
 msgstr ""
 
-#: ref-filter.c:168
+#: ref-filter.c:192
 #, c-format
 msgid "unrecognized %%(%s) argument: %s"
 msgstr ""
 
-#: ref-filter.c:223
+#: ref-filter.c:247
 #, c-format
 msgid "%%(objecttype) does not take arguments"
 msgstr ""
 
-#: ref-filter.c:235
+#: ref-filter.c:269
 #, c-format
-msgid "%%(objectsize) does not take arguments"
+msgid "unrecognized %%(objectsize) argument: %s"
 msgstr ""
 
-#: ref-filter.c:247
+#: ref-filter.c:277
+#, c-format
+msgid "%%(deltabase) does not take arguments"
+msgstr ""
+
+#: ref-filter.c:289
 #, c-format
 msgid "%%(body) does not take arguments"
 msgstr ""
 
-#: ref-filter.c:256
+#: ref-filter.c:298
 #, c-format
 msgid "%%(subject) does not take arguments"
 msgstr ""
 
-#: ref-filter.c:278
+#: ref-filter.c:320
 #, c-format
 msgid "unknown %%(trailers) argument: %s"
 msgstr ""
 
-#: ref-filter.c:307
+#: ref-filter.c:349
 #, c-format
 msgid "positive value expected contents:lines=%s"
 msgstr ""
 
-#: ref-filter.c:309
+#: ref-filter.c:351
 #, c-format
 msgid "unrecognized %%(contents) argument: %s"
 msgstr ""
 
-#: ref-filter.c:324
+#: ref-filter.c:366
 #, c-format
 msgid "positive value expected objectname:short=%s"
 msgstr ""
 
-#: ref-filter.c:328
+#: ref-filter.c:370
 #, c-format
 msgid "unrecognized %%(objectname) argument: %s"
 msgstr ""
 
-#: ref-filter.c:358
+#: ref-filter.c:400
 #, c-format
 msgid "expected format: %%(align:<width>,<position>)"
 msgstr ""
 
-#: ref-filter.c:370
+#: ref-filter.c:412
 #, c-format
 msgid "unrecognized position:%s"
 msgstr ""
 
-#: ref-filter.c:377
+#: ref-filter.c:419
 #, c-format
 msgid "unrecognized width:%s"
 msgstr ""
 
-#: ref-filter.c:386
+#: ref-filter.c:428
 #, c-format
 msgid "unrecognized %%(align) argument: %s"
 msgstr ""
 
-#: ref-filter.c:394
+#: ref-filter.c:436
 #, c-format
 msgid "positive width expected with the %%(align) atom"
 msgstr ""
 
-#: ref-filter.c:412
+#: ref-filter.c:454
 #, c-format
 msgid "unrecognized %%(if) argument: %s"
 msgstr ""
 
-#: ref-filter.c:508
+#: ref-filter.c:556
 #, c-format
 msgid "malformed field name: %.*s"
 msgstr ""
 
-#: ref-filter.c:535
+#: ref-filter.c:583
 #, c-format
 msgid "unknown field name: %.*s"
 msgstr ""
 
-#: ref-filter.c:539
+#: ref-filter.c:587
 #, c-format
 msgid ""
 "not a git repository, but the field '%.*s' requires access to object data"
 msgstr ""
 
-#: ref-filter.c:663
+#: ref-filter.c:711
 #, c-format
 msgid "format: %%(if) atom used without a %%(then) atom"
 msgstr ""
 
-#: ref-filter.c:726
+#: ref-filter.c:774
 #, c-format
 msgid "format: %%(then) atom used without an %%(if) atom"
 msgstr ""
 
-#: ref-filter.c:728
+#: ref-filter.c:776
 #, c-format
 msgid "format: %%(then) atom used more than once"
 msgstr ""
 
-#: ref-filter.c:730
+#: ref-filter.c:778
 #, c-format
 msgid "format: %%(then) atom used after %%(else)"
 msgstr ""
 
-#: ref-filter.c:758
+#: ref-filter.c:806
 #, c-format
 msgid "format: %%(else) atom used without an %%(if) atom"
 msgstr ""
 
-#: ref-filter.c:760
+#: ref-filter.c:808
 #, c-format
 msgid "format: %%(else) atom used without a %%(then) atom"
 msgstr ""
 
-#: ref-filter.c:762
+#: ref-filter.c:810
 #, c-format
 msgid "format: %%(else) atom used more than once"
 msgstr ""
 
-#: ref-filter.c:777
+#: ref-filter.c:825
 #, c-format
 msgid "format: %%(end) atom used without corresponding atom"
 msgstr ""
 
-#: ref-filter.c:834
+#: ref-filter.c:882
 #, c-format
 msgid "malformed format string %s"
 msgstr ""
 
-#: ref-filter.c:1424
-#, c-format
-msgid "(no branch, rebasing %s)"
-msgstr ""
-
-#: ref-filter.c:1427
-#, c-format
-msgid "(no branch, rebasing detached HEAD %s)"
-msgstr ""
-
-#: ref-filter.c:1430
+#: ref-filter.c:1485
 #, c-format
-msgid "(no branch, bisect started on %s)"
+msgid "no branch, rebasing %s"
 msgstr ""
 
-#. TRANSLATORS: make sure this matches "HEAD
-#. detached at " in wt-status.c
-#.
-#: ref-filter.c:1438
+#: ref-filter.c:1488
 #, c-format
-msgid "(HEAD detached at %s)"
+msgid "no branch, rebasing detached HEAD %s"
 msgstr ""
 
-#. TRANSLATORS: make sure this matches "HEAD
-#. detached from " in wt-status.c
-#.
-#: ref-filter.c:1445
+#: ref-filter.c:1491
 #, c-format
-msgid "(HEAD detached from %s)"
+msgid "no branch, bisect started on %s"
 msgstr ""
 
-#: ref-filter.c:1449
-msgid "(no branch)"
+#: ref-filter.c:1501
+msgid "no branch"
 msgstr ""
 
-#: ref-filter.c:1483 ref-filter.c:1638
+#: ref-filter.c:1537 ref-filter.c:1743
 #, c-format
 msgid "missing object %s for %s"
 msgstr ""
 
-#: ref-filter.c:1491
+#: ref-filter.c:1547
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr ""
 
-#: ref-filter.c:1857
+#: ref-filter.c:1998
 #, c-format
 msgid "malformed object at '%s'"
 msgstr ""
 
-#: ref-filter.c:1946
+#: ref-filter.c:2087
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr ""
 
-#: ref-filter.c:2232
+#: ref-filter.c:2382
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr ""
 
-#: ref-filter.c:2338
+#: ref-filter.c:2482
+#, c-format
+msgid "option `%s' is incompatible with --merged"
+msgstr ""
+
+#: ref-filter.c:2485
+#, c-format
+msgid "option `%s' is incompatible with --no-merged"
+msgstr ""
+
+#: ref-filter.c:2495
 #, c-format
 msgid "malformed object name %s"
 msgstr ""
 
-#: remote.c:607
+#: ref-filter.c:2500
+#, c-format
+msgid "option `%s' must point to a commit"
+msgstr ""
+
+#: remote.c:363
+#, c-format
+msgid "config remote shorthand cannot begin with '/': %s"
+msgstr ""
+
+#: remote.c:410
+msgid "more than one receivepack given, using the first"
+msgstr ""
+
+#: remote.c:418
+msgid "more than one uploadpack given, using the first"
+msgstr ""
+
+#: remote.c:608
 #, c-format
 msgid "Cannot fetch both %s and %s to %s"
 msgstr ""
 
-#: remote.c:611
+#: remote.c:612
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr ""
 
-#: remote.c:615
+#: remote.c:616
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr ""
 
-#: remote.c:623
-msgid "Internal error"
+#: remote.c:684
+#, c-format
+msgid "key '%s' of pattern had no '*'"
+msgstr ""
+
+#: remote.c:694
+#, c-format
+msgid "value '%s' of pattern has no '*'"
+msgstr ""
+
+#: remote.c:1000
+#, c-format
+msgid "src refspec %s does not match any"
+msgstr ""
+
+#: remote.c:1005
+#, c-format
+msgid "src refspec %s matches more than one"
+msgstr ""
+
+#. TRANSLATORS: "matches '%s'%" is the <dst> part of "git push
+#. <remote> <src>:<dst>" push, and "being pushed ('%s')" is
+#. the <src>.
+#.
+#: remote.c:1020
+#, c-format
+msgid ""
+"The destination you provided is not a full refname (i.e.,\n"
+"starting with \"refs/\"). We tried to guess what you meant by:\n"
+"\n"
+"- Looking for a ref that matches '%s' on the remote side.\n"
+"- Checking if the <src> being pushed ('%s')\n"
+"  is a ref in \"refs/{heads,tags}/\". If so we add a corresponding\n"
+"  refs/{heads,tags}/ prefix on the remote side.\n"
+"\n"
+"Neither worked, so we gave up. You must fully qualify the ref."
+msgstr ""
+
+#: remote.c:1040
+#, c-format
+msgid ""
+"The <src> part of the refspec is a commit object.\n"
+"Did you mean to create a new branch by pushing to\n"
+"'%s:refs/heads/%s'?"
+msgstr ""
+
+#: remote.c:1045
+#, c-format
+msgid ""
+"The <src> part of the refspec is a tag object.\n"
+"Did you mean to create a new tag by pushing to\n"
+"'%s:refs/tags/%s'?"
+msgstr ""
+
+#: remote.c:1050
+#, c-format
+msgid ""
+"The <src> part of the refspec is a tree object.\n"
+"Did you mean to tag a new tree by pushing to\n"
+"'%s:refs/tags/%s'?"
+msgstr ""
+
+#: remote.c:1055
+#, c-format
+msgid ""
+"The <src> part of the refspec is a blob object.\n"
+"Did you mean to tag a new blob by pushing to\n"
+"'%s:refs/tags/%s'?"
+msgstr ""
+
+#: remote.c:1091
+#, c-format
+msgid "%s cannot be resolved to branch"
+msgstr ""
+
+#: remote.c:1102
+#, c-format
+msgid "unable to delete '%s': remote ref does not exist"
 msgstr ""
 
-#: remote.c:1569 remote.c:1670
+#: remote.c:1114
+#, c-format
+msgid "dst refspec %s matches more than one"
+msgstr ""
+
+#: remote.c:1121
+#, c-format
+msgid "dst ref %s receives from more than one src"
+msgstr ""
+
+#: remote.c:1624 remote.c:1725
 msgid "HEAD does not point to a branch"
 msgstr ""
 
-#: remote.c:1578
+#: remote.c:1633
 #, c-format
 msgid "no such branch: '%s'"
 msgstr ""
 
-#: remote.c:1581
+#: remote.c:1636
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr ""
 
-#: remote.c:1587
+#: remote.c:1642
 #, c-format
 msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr ""
 
-#: remote.c:1602
+#: remote.c:1657
 #, c-format
 msgid "push destination '%s' on remote '%s' has no local tracking branch"
 msgstr ""
 
-#: remote.c:1614
+#: remote.c:1669
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr ""
 
-#: remote.c:1624
+#: remote.c:1679
 #, c-format
 msgid "push refspecs for '%s' do not include '%s'"
 msgstr ""
 
-#: remote.c:1637
+#: remote.c:1692
 msgid "push has no destination (push.default is 'nothing')"
 msgstr ""
 
-#: remote.c:1659
+#: remote.c:1714
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr ""
 
-#: remote.c:1935
+#: remote.c:1840
+#, c-format
+msgid "couldn't find remote ref %s"
+msgstr ""
+
+#: remote.c:1853
+#, c-format
+msgid "* Ignoring funny ref '%s' locally"
+msgstr ""
+
+#: remote.c:2016
 #, c-format
 msgid "Your branch is based on '%s', but the upstream is gone.\n"
 msgstr ""
 
-#: remote.c:1939
+#: remote.c:2020
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr ""
 
-#: remote.c:1942
+#: remote.c:2023
 #, c-format
 msgid "Your branch is up to date with '%s'.\n"
 msgstr ""
 
-#: remote.c:1946
+#: remote.c:2027
 #, c-format
 msgid "Your branch and '%s' refer to different commits.\n"
 msgstr ""
 
-#: remote.c:1949
+#: remote.c:2030
 #, c-format
 msgid "  (use \"%s\" for details)\n"
 msgstr ""
 
-#: remote.c:1953
+#: remote.c:2034
 #, c-format
 msgid "Your branch is ahead of '%s' by %d commit.\n"
 msgid_plural "Your branch is ahead of '%s' by %d commits.\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: remote.c:1959
+#: remote.c:2040
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr ""
 
-#: remote.c:1962
+#: remote.c:2043
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -4071,11 +5169,11 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: remote.c:1970
+#: remote.c:2051
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr ""
 
-#: remote.c:1973
+#: remote.c:2054
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -4086,10 +5184,15 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: remote.c:1983
+#: remote.c:2064
 msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr ""
 
+#: remote.c:2247
+#, c-format
+msgid "cannot parse expected object name '%s'"
+msgstr ""
+
 #: replace-object.c:21
 #, c-format
 msgid "bad replace ref name: %s"
@@ -4113,11 +5216,6 @@ msgstr ""
 msgid "unable to write rerere record"
 msgstr ""
 
-#: rerere.c:485 rerere.c:692 sequencer.c:3136 sequencer.c:3162
-#, c-format
-msgid "could not write '%s'"
-msgstr ""
-
 #: rerere.c:495
 #, c-format
 msgid "there were errors while writing '%s' (%s)"
@@ -4168,8 +5266,8 @@ msgstr ""
 msgid "Recorded preimage for '%s'"
 msgstr ""
 
-#: rerere.c:881 submodule.c:1763 builtin/submodule--helper.c:1413
-#: builtin/submodule--helper.c:1423
+#: rerere.c:881 submodule.c:2023 builtin/log.c:1773
+#: builtin/submodule--helper.c:1418 builtin/submodule--helper.c:1428
 #, c-format
 msgid "could not create directory '%s'"
 msgstr ""
@@ -4203,215 +5301,229 @@ msgstr ""
 msgid "unable to open rr-cache directory"
 msgstr ""
 
-#: revision.c:2324
+#: revision.c:2507
 msgid "your current branch appears to be broken"
 msgstr ""
 
-#: revision.c:2327
+#: revision.c:2510
 #, c-format
 msgid "your current branch '%s' does not have any commits yet"
 msgstr ""
 
-#: revision.c:2523
+#: revision.c:2710
 msgid "--first-parent is incompatible with --bisect"
 msgstr ""
 
-#: run-command.c:740
+#: revision.c:2714
+msgid "-L does not yet support diff formats besides -p and -s"
+msgstr ""
+
+#: run-command.c:763
 msgid "open /dev/null failed"
 msgstr ""
 
-#: run-command.c:1229
+#: run-command.c:1269
 #, c-format
 msgid "cannot create async thread: %s"
 msgstr ""
 
-#: run-command.c:1293
+#: run-command.c:1333
 #, c-format
 msgid ""
 "The '%s' hook was ignored because it's not set as executable.\n"
 "You can disable this warning with `git config advice.ignoredHook false`."
 msgstr ""
 
-#: send-pack.c:142
+#: send-pack.c:141
 msgid "unexpected flush packet while reading remote unpack status"
 msgstr ""
 
-#: send-pack.c:144
+#: send-pack.c:143
 #, c-format
 msgid "unable to parse remote unpack status: %s"
 msgstr ""
 
-#: send-pack.c:146
+#: send-pack.c:145
 #, c-format
 msgid "remote unpack failed: %s"
 msgstr ""
 
-#: send-pack.c:308
+#: send-pack.c:306
 msgid "failed to sign the push certificate"
 msgstr ""
 
-#: send-pack.c:421
+#: send-pack.c:420
 msgid "the receiving end does not support --signed push"
 msgstr ""
 
-#: send-pack.c:423
+#: send-pack.c:422
 msgid ""
 "not sending a push certificate since the receiving end does not support --"
 "signed push"
 msgstr ""
 
-#: send-pack.c:435
+#: send-pack.c:434
 msgid "the receiving end does not support --atomic push"
 msgstr ""
 
-#: send-pack.c:440
+#: send-pack.c:439
 msgid "the receiving end does not support push options"
 msgstr ""
 
-#: sequencer.c:183
+#: sequencer.c:187
 #, c-format
 msgid "invalid commit message cleanup mode '%s'"
 msgstr ""
 
-#: sequencer.c:287
+#: sequencer.c:292
 #, c-format
 msgid "could not delete '%s'"
 msgstr ""
 
-#: sequencer.c:313
+#: sequencer.c:311 builtin/rebase.c:759 builtin/rebase.c:1645 builtin/rm.c:369
+#, c-format
+msgid "could not remove '%s'"
+msgstr ""
+
+#: sequencer.c:321
 msgid "revert"
 msgstr ""
 
-#: sequencer.c:315
+#: sequencer.c:323
 msgid "cherry-pick"
 msgstr ""
 
-#: sequencer.c:317
+#: sequencer.c:325
 msgid "rebase -i"
 msgstr ""
 
-#: sequencer.c:319
+#: sequencer.c:327
 #, c-format
 msgid "unknown action: %d"
 msgstr ""
 
-#: sequencer.c:376
+#: sequencer.c:385
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
 msgstr ""
 
-#: sequencer.c:379
+#: sequencer.c:388
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'\n"
 "and commit the result with 'git commit'"
 msgstr ""
 
-#: sequencer.c:392 sequencer.c:2632
+#: sequencer.c:401 sequencer.c:2909
 #, c-format
 msgid "could not lock '%s'"
 msgstr ""
 
-#: sequencer.c:399
+#: sequencer.c:408
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr ""
 
-#: sequencer.c:404 sequencer.c:2515 sequencer.c:2638 sequencer.c:2652
-#: sequencer.c:2885
+#: sequencer.c:413 sequencer.c:2714 sequencer.c:2915 sequencer.c:2929
+#: sequencer.c:3192
 #, c-format
 msgid "failed to finalize '%s'"
 msgstr ""
 
-#: sequencer.c:427 sequencer.c:921 sequencer.c:1594 sequencer.c:2535
-#: sequencer.c:2867 sequencer.c:2974 builtin/am.c:260 builtin/commit.c:746
-#: builtin/merge.c:1084 builtin/rebase.c:152
+#: sequencer.c:436 sequencer.c:981 sequencer.c:1655 sequencer.c:2734
+#: sequencer.c:3174 sequencer.c:3283 builtin/am.c:245 builtin/commit.c:763
+#: builtin/merge.c:1112 builtin/rebase.c:567
 #, c-format
 msgid "could not read '%s'"
 msgstr ""
 
-#: sequencer.c:453
+#: sequencer.c:462
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr ""
 
-#: sequencer.c:457
+#: sequencer.c:466
 msgid "commit your changes or stash them to proceed."
 msgstr ""
 
-#: sequencer.c:486
+#: sequencer.c:498
 #, c-format
 msgid "%s: fast-forward"
 msgstr ""
 
+#: sequencer.c:537 builtin/tag.c:565
+#, c-format
+msgid "Invalid cleanup mode %s"
+msgstr ""
+
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
 #. "rebase -i".
 #.
-#: sequencer.c:575
+#: sequencer.c:632
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr ""
 
-#: sequencer.c:591
+#: sequencer.c:649
 msgid "unable to update cache tree"
 msgstr ""
 
-#: sequencer.c:604
+#: sequencer.c:663
 msgid "could not resolve HEAD commit"
 msgstr ""
 
-#: sequencer.c:684
+#: sequencer.c:743
 #, c-format
 msgid "no key present in '%.*s'"
 msgstr ""
 
-#: sequencer.c:695
+#: sequencer.c:754
 #, c-format
 msgid "unable to dequote value of '%s'"
 msgstr ""
 
-#: sequencer.c:732 wrapper.c:227 wrapper.c:397 builtin/am.c:719
-#: builtin/am.c:811 builtin/merge.c:1081
+#: sequencer.c:791 wrapper.c:227 wrapper.c:397 builtin/am.c:706
+#: builtin/am.c:798 builtin/merge.c:1109 builtin/rebase.c:1045
 #, c-format
 msgid "could not open '%s' for reading"
 msgstr ""
 
-#: sequencer.c:742
+#: sequencer.c:801
 msgid "'GIT_AUTHOR_NAME' already given"
 msgstr ""
 
-#: sequencer.c:747
+#: sequencer.c:806
 msgid "'GIT_AUTHOR_EMAIL' already given"
 msgstr ""
 
-#: sequencer.c:752
+#: sequencer.c:811
 msgid "'GIT_AUTHOR_DATE' already given"
 msgstr ""
 
-#: sequencer.c:756
+#: sequencer.c:815
 #, c-format
 msgid "unknown variable '%s'"
 msgstr ""
 
-#: sequencer.c:761
+#: sequencer.c:820
 msgid "missing 'GIT_AUTHOR_NAME'"
 msgstr ""
 
-#: sequencer.c:763
+#: sequencer.c:822
 msgid "missing 'GIT_AUTHOR_EMAIL'"
 msgstr ""
 
-#: sequencer.c:765
+#: sequencer.c:824
 msgid "missing 'GIT_AUTHOR_DATE'"
 msgstr ""
 
-#: sequencer.c:825
+#: sequencer.c:884
 #, c-format
 msgid "invalid date format '%s' in '%s'"
 msgstr ""
 
-#: sequencer.c:842
+#: sequencer.c:901
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -4428,15 +5540,15 @@ msgid ""
 "  git rebase --continue\n"
 msgstr ""
 
-#: sequencer.c:935
+#: sequencer.c:995
 msgid "writing root commit"
 msgstr ""
 
-#: sequencer.c:1142
+#: sequencer.c:1216
 msgid "'prepare-commit-msg' hook failed"
 msgstr ""
 
-#: sequencer.c:1149
+#: sequencer.c:1223
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -4451,7 +5563,7 @@ msgid ""
 "    git commit --amend --reset-author\n"
 msgstr ""
 
-#: sequencer.c:1162
+#: sequencer.c:1236
 msgid ""
 "Your name and email address were configured automatically based\n"
 "on your username and hostname. Please check that they are accurate.\n"
@@ -4465,299 +5577,346 @@ msgid ""
 "    git commit --amend --reset-author\n"
 msgstr ""
 
-#: sequencer.c:1202
+#: sequencer.c:1278
 msgid "couldn't look up newly created commit"
 msgstr ""
 
-#: sequencer.c:1204
+#: sequencer.c:1280
 msgid "could not parse newly created commit"
 msgstr ""
 
-#: sequencer.c:1250
+#: sequencer.c:1326
 msgid "unable to resolve HEAD after creating commit"
 msgstr ""
 
-#: sequencer.c:1252
+#: sequencer.c:1328
 msgid "detached HEAD"
 msgstr ""
 
-#: sequencer.c:1256
+#: sequencer.c:1332
 msgid " (root-commit)"
 msgstr ""
 
-#: sequencer.c:1277
+#: sequencer.c:1353
 msgid "could not parse HEAD"
 msgstr ""
 
-#: sequencer.c:1279
+#: sequencer.c:1355
 #, c-format
 msgid "HEAD %s is not a commit!"
 msgstr ""
 
-#: sequencer.c:1283 builtin/commit.c:1543
+#: sequencer.c:1359 builtin/commit.c:1571
 msgid "could not parse HEAD commit"
 msgstr ""
 
-#: sequencer.c:1334 sequencer.c:1934
+#: sequencer.c:1411 sequencer.c:2004
 msgid "unable to parse commit author"
 msgstr ""
 
-#: sequencer.c:1344 builtin/am.c:1585 builtin/merge.c:677
+#: sequencer.c:1421 builtin/am.c:1573 builtin/merge.c:684
 msgid "git write-tree failed to write a tree"
 msgstr ""
 
-#: sequencer.c:1361 sequencer.c:1416
+#: sequencer.c:1438 sequencer.c:1499
 #, c-format
 msgid "unable to read commit message from '%s'"
 msgstr ""
 
-#: sequencer.c:1383 builtin/am.c:1606 builtin/commit.c:1646 builtin/merge.c:858
-#: builtin/merge.c:883
+#: sequencer.c:1465 builtin/am.c:1595 builtin/commit.c:1670 builtin/merge.c:878
+#: builtin/merge.c:903
 msgid "failed to write commit object"
 msgstr ""
 
-#: sequencer.c:1443
+#: sequencer.c:1526
 #, c-format
 msgid "could not parse commit %s"
 msgstr ""
 
-#: sequencer.c:1448
+#: sequencer.c:1531
 #, c-format
 msgid "could not parse parent commit %s"
 msgstr ""
 
-#: sequencer.c:1546 sequencer.c:1654
+#: sequencer.c:1605 sequencer.c:1715
 #, c-format
 msgid "unknown command: %d"
 msgstr ""
 
-#: sequencer.c:1601 sequencer.c:1626
+#: sequencer.c:1662 sequencer.c:1687
 #, c-format
 msgid "This is a combination of %d commits."
 msgstr ""
 
-#: sequencer.c:1611 sequencer.c:4744
+#: sequencer.c:1672
 msgid "need a HEAD to fixup"
 msgstr ""
 
-#: sequencer.c:1613 sequencer.c:2912
+#: sequencer.c:1674 sequencer.c:3219
 msgid "could not read HEAD"
 msgstr ""
 
-#: sequencer.c:1615
+#: sequencer.c:1676
 msgid "could not read HEAD's commit message"
 msgstr ""
 
-#: sequencer.c:1621
+#: sequencer.c:1682
 #, c-format
 msgid "cannot write '%s'"
 msgstr ""
 
-#: sequencer.c:1628 git-rebase--preserve-merges.sh:441
+#: sequencer.c:1689 git-rebase--preserve-merges.sh:496
 msgid "This is the 1st commit message:"
 msgstr ""
 
-#: sequencer.c:1636
+#: sequencer.c:1697
 #, c-format
 msgid "could not read commit message of %s"
 msgstr ""
 
-#: sequencer.c:1643
+#: sequencer.c:1704
 #, c-format
 msgid "This is the commit message #%d:"
 msgstr ""
 
-#: sequencer.c:1649
+#: sequencer.c:1710
 #, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr ""
 
-#: sequencer.c:1732
+#: sequencer.c:1798
 msgid "your index file is unmerged."
 msgstr ""
 
-#: sequencer.c:1739
+#: sequencer.c:1805
 msgid "cannot fixup root commit"
 msgstr ""
 
-#: sequencer.c:1758
+#: sequencer.c:1824
 #, c-format
 msgid "commit %s is a merge but no -m option was given."
 msgstr ""
 
-#: sequencer.c:1766
+#: sequencer.c:1832 sequencer.c:1840
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr ""
 
-#: sequencer.c:1770
-#, c-format
-msgid "mainline was specified but commit %s is not a merge."
-msgstr ""
-
-#: sequencer.c:1776
+#: sequencer.c:1846
 #, c-format
 msgid "cannot get commit message for %s"
 msgstr ""
 
 #. TRANSLATORS: The first %s will be a "todo" command like
 #. "revert" or "pick", the second %s a SHA1.
-#: sequencer.c:1795
+#: sequencer.c:1865
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr ""
 
-#: sequencer.c:1860
+#: sequencer.c:1930
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr ""
 
-#: sequencer.c:1915
+#: sequencer.c:1985
 #, c-format
 msgid "could not revert %s... %s"
 msgstr ""
 
-#: sequencer.c:1916
+#: sequencer.c:1986
 #, c-format
 msgid "could not apply %s... %s"
 msgstr ""
 
-#: sequencer.c:1974
+#: sequencer.c:2045
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr ""
 
-#: sequencer.c:1981
+#: sequencer.c:2052
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr ""
 
-#: sequencer.c:2062
+#: sequencer.c:2128
 #, c-format
 msgid "%s does not accept arguments: '%s'"
 msgstr ""
 
-#: sequencer.c:2071
+#: sequencer.c:2137
 #, c-format
 msgid "missing arguments for %s"
 msgstr ""
 
-#: sequencer.c:2130
+#: sequencer.c:2174
+#, c-format
+msgid "could not parse '%.*s'"
+msgstr ""
+
+#: sequencer.c:2228
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr ""
 
-#: sequencer.c:2138
+#: sequencer.c:2239
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr ""
 
-#: sequencer.c:2209
+#: sequencer.c:2287 builtin/rebase.c:153 builtin/rebase.c:178
+#: builtin/rebase.c:204 builtin/rebase.c:229
+#, c-format
+msgid "could not read '%s'."
+msgstr ""
+
+#: sequencer.c:2323
+msgid "cancelling a cherry picking in progress"
+msgstr ""
+
+#: sequencer.c:2330
+msgid "cancelling a revert in progress"
+msgstr ""
+
+#: sequencer.c:2364
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr ""
 
-#: sequencer.c:2211
+#: sequencer.c:2366
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr ""
 
-#: sequencer.c:2216
+#: sequencer.c:2371
 msgid "no commits parsed."
 msgstr ""
 
-#: sequencer.c:2227
+#: sequencer.c:2382
 msgid "cannot cherry-pick during a revert."
 msgstr ""
 
-#: sequencer.c:2229
+#: sequencer.c:2384
 msgid "cannot revert during a cherry-pick."
 msgstr ""
 
-#: sequencer.c:2299
+#: sequencer.c:2466
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr ""
 
-#: sequencer.c:2380
+#: sequencer.c:2553
 msgid "unusable squash-onto"
 msgstr ""
 
-#: sequencer.c:2396
+#: sequencer.c:2569
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr ""
 
-#: sequencer.c:2479 sequencer.c:4005
+#: sequencer.c:2652 sequencer.c:4351
 msgid "empty commit set passed"
 msgstr ""
 
-#: sequencer.c:2487
-msgid "a cherry-pick or revert is already in progress"
+#: sequencer.c:2668
+msgid "revert is already in progress"
+msgstr ""
+
+#: sequencer.c:2670
+#, c-format
+msgid "try \"git revert (--continue | %s--abort | --quit)\""
+msgstr ""
+
+#: sequencer.c:2673
+msgid "cherry-pick is already in progress"
 msgstr ""
 
-#: sequencer.c:2488
-msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
+#: sequencer.c:2675
+#, c-format
+msgid "try \"git cherry-pick (--continue | %s--abort | --quit)\""
 msgstr ""
 
-#: sequencer.c:2491
+#: sequencer.c:2689
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr ""
 
-#: sequencer.c:2505
+#: sequencer.c:2704
 msgid "could not lock HEAD"
 msgstr ""
 
-#: sequencer.c:2560 sequencer.c:3761
+#: sequencer.c:2764 sequencer.c:4103
 msgid "no cherry-pick or revert in progress"
 msgstr ""
 
-#: sequencer.c:2562
+#: sequencer.c:2766 sequencer.c:2777
 msgid "cannot resolve HEAD"
 msgstr ""
 
-#: sequencer.c:2564 sequencer.c:2599
+#: sequencer.c:2768 sequencer.c:2812
 msgid "cannot abort from a branch yet to be born"
 msgstr ""
 
-#: sequencer.c:2585 builtin/grep.c:721
+#: sequencer.c:2798 builtin/grep.c:734
 #, c-format
 msgid "cannot open '%s'"
 msgstr ""
 
-#: sequencer.c:2587
+#: sequencer.c:2800
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr ""
 
-#: sequencer.c:2588
+#: sequencer.c:2801
 msgid "unexpected end of file"
 msgstr ""
 
-#: sequencer.c:2594
+#: sequencer.c:2807
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr ""
 
-#: sequencer.c:2605
+#: sequencer.c:2818
 msgid "You seem to have moved HEAD. Not rewinding, check your HEAD!"
 msgstr ""
 
-#: sequencer.c:2709 sequencer.c:3679
+#: sequencer.c:2859
+msgid "no revert in progress"
+msgstr ""
+
+#: sequencer.c:2867
+msgid "no cherry-pick in progress"
+msgstr ""
+
+#: sequencer.c:2877
+msgid "failed to skip the commit"
+msgstr ""
+
+#: sequencer.c:2884
+msgid "there is nothing to skip"
+msgstr ""
+
+#: sequencer.c:2887
+#, c-format
+msgid ""
+"have you committed already?\n"
+"try \"git %s --continue\""
+msgstr ""
+
+#: sequencer.c:3011 sequencer.c:4015
 #, c-format
 msgid "could not update %s"
 msgstr ""
 
-#: sequencer.c:2747 sequencer.c:3659
+#: sequencer.c:3049 sequencer.c:3995
 msgid "cannot read HEAD"
 msgstr ""
 
-#: sequencer.c:2762
+#: sequencer.c:3066
 #, c-format
 msgid "unable to copy '%s' to '%s'"
 msgstr ""
 
-#: sequencer.c:2770
+#: sequencer.c:3074
 #, c-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -4769,27 +5928,27 @@ msgid ""
 "  git rebase --continue\n"
 msgstr ""
 
-#: sequencer.c:2780
+#: sequencer.c:3084
 #, c-format
 msgid "Could not apply %s... %.*s"
 msgstr ""
 
-#: sequencer.c:2787
+#: sequencer.c:3091
 #, c-format
 msgid "Could not merge %.*s"
 msgstr ""
 
-#: sequencer.c:2798 sequencer.c:2802 builtin/difftool.c:640
+#: sequencer.c:3105 sequencer.c:3109 builtin/difftool.c:633
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr ""
 
-#: sequencer.c:2824 sequencer.c:3242 builtin/rebase.c:580 builtin/rebase.c:999
-#: builtin/rebase.c:1350 builtin/rebase.c:1404
+#: sequencer.c:3131 sequencer.c:3558 builtin/rebase.c:849 builtin/rebase.c:1582
+#: builtin/rebase.c:1953 builtin/rebase.c:2008
 msgid "could not read index"
 msgstr ""
 
-#: sequencer.c:2829
+#: sequencer.c:3136
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -4799,11 +5958,11 @@ msgid ""
 "\n"
 msgstr ""
 
-#: sequencer.c:2835
+#: sequencer.c:3142
 msgid "and made changes to the index and/or the working tree\n"
 msgstr ""
 
-#: sequencer.c:2841
+#: sequencer.c:3148
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -4814,76 +5973,76 @@ msgid ""
 "\n"
 msgstr ""
 
-#: sequencer.c:2902
+#: sequencer.c:3209
 #, c-format
 msgid "illegal label name: '%.*s'"
 msgstr ""
 
-#: sequencer.c:2954
+#: sequencer.c:3263
 msgid "writing fake root commit"
 msgstr ""
 
-#: sequencer.c:2959
+#: sequencer.c:3268
 msgid "writing squash-onto"
 msgstr ""
 
-#: sequencer.c:2997 builtin/rebase.c:585 builtin/rebase.c:590
+#: sequencer.c:3306 builtin/rebase.c:854 builtin/rebase.c:860
 #, c-format
 msgid "failed to find tree of %s"
 msgstr ""
 
-#: sequencer.c:3015 builtin/rebase.c:603
+#: sequencer.c:3324 builtin/rebase.c:873
 msgid "could not write index"
 msgstr ""
 
-#: sequencer.c:3042
+#: sequencer.c:3351
 #, c-format
 msgid "could not resolve '%s'"
 msgstr ""
 
-#: sequencer.c:3068
+#: sequencer.c:3379
 msgid "cannot merge without a current revision"
 msgstr ""
 
-#: sequencer.c:3090
+#: sequencer.c:3401
 #, c-format
 msgid "unable to parse '%.*s'"
 msgstr ""
 
-#: sequencer.c:3099
+#: sequencer.c:3410
 #, c-format
 msgid "nothing to merge: '%.*s'"
 msgstr ""
 
-#: sequencer.c:3111
+#: sequencer.c:3422
 msgid "octopus merge cannot be executed on top of a [new root]"
 msgstr ""
 
-#: sequencer.c:3126
+#: sequencer.c:3437
 #, c-format
 msgid "could not get commit message of '%s'"
 msgstr ""
 
-#: sequencer.c:3274
+#: sequencer.c:3590
 #, c-format
 msgid "could not even attempt to merge '%.*s'"
 msgstr ""
 
-#: sequencer.c:3290
+#: sequencer.c:3606
 msgid "merge: Unable to write new index file"
 msgstr ""
 
-#: sequencer.c:3358 builtin/rebase.c:268
+#: sequencer.c:3675 builtin/rebase.c:711
 #, c-format
 msgid "Applied autostash.\n"
 msgstr ""
 
-#: sequencer.c:3370
+#: sequencer.c:3687
 #, c-format
 msgid "cannot store %s"
 msgstr ""
 
-#: sequencer.c:3373 builtin/rebase.c:284
+#: sequencer.c:3690 builtin/rebase.c:727 git-rebase--preserve-merges.sh:113
 #, c-format
 msgid ""
 "Applying autostash resulted in conflicts.\n"
@@ -4891,31 +6050,31 @@ msgid ""
 "You can run \"git stash pop\" or \"git stash drop\" at any time.\n"
 msgstr ""
 
-#: sequencer.c:3427
+#: sequencer.c:3751
 #, c-format
 msgid "could not checkout %s"
 msgstr ""
 
-#: sequencer.c:3441
+#: sequencer.c:3765
 #, c-format
 msgid "%s: not a valid OID"
 msgstr ""
 
-#: sequencer.c:3446 git-rebase--preserve-merges.sh:724
+#: sequencer.c:3770 git-rebase--preserve-merges.sh:779
 msgid "could not detach HEAD"
 msgstr ""
 
-#: sequencer.c:3461
+#: sequencer.c:3785
 #, c-format
 msgid "Stopped at HEAD\n"
 msgstr ""
 
-#: sequencer.c:3463
+#: sequencer.c:3787
 #, c-format
 msgid "Stopped at %s\n"
 msgstr ""
 
-#: sequencer.c:3471
+#: sequencer.c:3795
 #, c-format
 msgid ""
 "Could not execute the todo command\n"
@@ -4928,151 +6087,105 @@ msgid ""
 "    git rebase --continue\n"
 msgstr ""
 
-#: sequencer.c:3543
+#: sequencer.c:3877
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr ""
 
-#: sequencer.c:3622
+#: sequencer.c:3958
 #, c-format
 msgid "unknown command %d"
 msgstr ""
 
-#: sequencer.c:3667
+#: sequencer.c:4003
 msgid "could not read orig-head"
 msgstr ""
 
-#: sequencer.c:3672 sequencer.c:4741
+#: sequencer.c:4008
 msgid "could not read 'onto'"
 msgstr ""
 
-#: sequencer.c:3686
+#: sequencer.c:4022
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr ""
 
-#: sequencer.c:3772
+#: sequencer.c:4115
 msgid "cannot rebase: You have unstaged changes."
 msgstr ""
 
-#: sequencer.c:3781
+#: sequencer.c:4124
 msgid "cannot amend non-existing commit"
 msgstr ""
 
-#: sequencer.c:3783
+#: sequencer.c:4126
 #, c-format
 msgid "invalid file: '%s'"
 msgstr ""
 
-#: sequencer.c:3785
+#: sequencer.c:4128
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr ""
 
-#: sequencer.c:3788
+#: sequencer.c:4131
 msgid ""
 "\n"
 "You have uncommitted changes in your working tree. Please, commit them\n"
 "first and then run 'git rebase --continue' again."
 msgstr ""
 
-#: sequencer.c:3824 sequencer.c:3862
+#: sequencer.c:4167 sequencer.c:4205
 #, c-format
 msgid "could not write file: '%s'"
 msgstr ""
 
-#: sequencer.c:3877
+#: sequencer.c:4220
 msgid "could not remove CHERRY_PICK_HEAD"
 msgstr ""
 
-#: sequencer.c:3884
+#: sequencer.c:4227
 msgid "could not commit staged changes."
 msgstr ""
 
-#: sequencer.c:3982
+#: sequencer.c:4328
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr ""
 
-#: sequencer.c:3986
+#: sequencer.c:4332
 #, c-format
 msgid "%s: bad revision"
 msgstr ""
 
-#: sequencer.c:4021
+#: sequencer.c:4367
 msgid "can't revert as initial commit"
 msgstr ""
 
-#: sequencer.c:4466
+#: sequencer.c:4810
 msgid "make_script: unhandled options"
 msgstr ""
 
-#: sequencer.c:4469
+#: sequencer.c:4813
 msgid "make_script: error preparing revisions"
 msgstr ""
 
-#: sequencer.c:4509 sequencer.c:4565 sequencer.c:4840
-#, c-format
-msgid "unusable todo list: '%s'"
-msgstr ""
-
-#: sequencer.c:4620
-#, c-format
-msgid ""
-"unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
-msgstr ""
-
-#: sequencer.c:4690
-#, c-format
-msgid ""
-"Warning: some commits may have been dropped accidentally.\n"
-"Dropped commits (newer to older):\n"
-msgstr ""
-
-#: sequencer.c:4697
-#, 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 ""
-
-#: sequencer.c:4710
-#, c-format
+#: sequencer.c:4971
 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 ""
 
-#: sequencer.c:4848 sequencer.c:4886
+#: sequencer.c:5083 sequencer.c:5100
 msgid "nothing to do"
 msgstr ""
 
-#: sequencer.c:4852
-#, c-format
-msgid "Rebase %s onto %s (%d command)"
-msgid_plural "Rebase %s onto %s (%d commands)"
-msgstr[0] ""
-msgstr[1] ""
-
-#: sequencer.c:4864
-#, c-format
-msgid "could not copy '%s' to '%s'."
-msgstr ""
-
-#: sequencer.c:4868 sequencer.c:4897
-msgid "could not transform the todo list"
-msgstr ""
-
-#: sequencer.c:4900
+#: sequencer.c:5114
 msgid "could not skip unnecessary pick commands"
 msgstr ""
 
-#: sequencer.c:4983
+#: sequencer.c:5197
 msgid "the script was already rearranged."
 msgstr ""
 
@@ -5081,14 +6194,14 @@ msgstr ""
 msgid "'%s' is outside repository"
 msgstr ""
 
-#: setup.c:172
+#: setup.c:173
 #, c-format
 msgid ""
 "%s: no such path in the working tree.\n"
 "Use 'git <command> -- <path>...' to specify paths that do not exist locally."
 msgstr ""
 
-#: setup.c:185
+#: setup.c:186
 #, c-format
 msgid ""
 "ambiguous argument '%s': unknown revision or path not in the working tree.\n"
@@ -5096,12 +6209,12 @@ msgid ""
 "'git <command> [<revision>...] -- [<file>...]'"
 msgstr ""
 
-#: setup.c:234
+#: setup.c:235
 #, c-format
 msgid "option '%s' must come before non-option arguments"
 msgstr ""
 
-#: setup.c:253
+#: setup.c:254
 #, c-format
 msgid ""
 "ambiguous argument '%s': both revision and filename\n"
@@ -5109,91 +6222,91 @@ msgid ""
 "'git <command> [<revision>...] -- [<file>...]'"
 msgstr ""
 
-#: setup.c:389
+#: setup.c:390
 msgid "unable to set up work tree using invalid config"
 msgstr ""
 
-#: setup.c:393
+#: setup.c:394
 msgid "this operation must be run in a work tree"
 msgstr ""
 
-#: setup.c:527
+#: setup.c:540
 #, c-format
 msgid "Expected git repo version <= %d, found %d"
 msgstr ""
 
-#: setup.c:535
+#: setup.c:548
 msgid "unknown repository extensions found:"
 msgstr ""
 
-#: setup.c:554
+#: setup.c:567
 #, c-format
 msgid "error opening '%s'"
 msgstr ""
 
-#: setup.c:556
+#: setup.c:569
 #, c-format
 msgid "too large to be a .git file: '%s'"
 msgstr ""
 
-#: setup.c:558
+#: setup.c:571
 #, c-format
 msgid "error reading %s"
 msgstr ""
 
-#: setup.c:560
+#: setup.c:573
 #, c-format
 msgid "invalid gitfile format: %s"
 msgstr ""
 
-#: setup.c:562
+#: setup.c:575
 #, c-format
 msgid "no path in gitfile: %s"
 msgstr ""
 
-#: setup.c:564
+#: setup.c:577
 #, c-format
 msgid "not a git repository: %s"
 msgstr ""
 
-#: setup.c:663
+#: setup.c:676
 #, c-format
 msgid "'$%s' too big"
 msgstr ""
 
-#: setup.c:677
+#: setup.c:690
 #, c-format
 msgid "not a git repository: '%s'"
 msgstr ""
 
-#: setup.c:706 setup.c:708 setup.c:739
+#: setup.c:719 setup.c:721 setup.c:752
 #, c-format
 msgid "cannot chdir to '%s'"
 msgstr ""
 
-#: setup.c:711 setup.c:767 setup.c:777 setup.c:816 setup.c:824 setup.c:839
+#: setup.c:724 setup.c:780 setup.c:790 setup.c:829 setup.c:837
 msgid "cannot come back to cwd"
 msgstr ""
 
-#: setup.c:837
-#, c-format
-msgid "not a git repository (or any of the parent directories): %s"
-msgstr ""
-
-#: setup.c:848
+#: setup.c:851
 #, c-format
 msgid "failed to stat '%*s%s%s'"
 msgstr ""
 
-#: setup.c:1078
+#: setup.c:1083
 msgid "Unable to read current working directory"
 msgstr ""
 
-#: setup.c:1090 setup.c:1096
+#: setup.c:1092 setup.c:1098
 #, c-format
 msgid "cannot change to '%s'"
 msgstr ""
 
+#: setup.c:1103
+#, c-format
+msgid "not a git repository (or any of the parent directories): %s"
+msgstr ""
+
 #: setup.c:1109
 #, c-format
 msgid ""
@@ -5201,370 +6314,437 @@ msgid ""
 "Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set)."
 msgstr ""
 
-#: setup.c:1192
+#: setup.c:1220
 #, c-format
 msgid ""
 "problem with core.sharedRepository filemode value (0%.3o).\n"
 "The owner of files must always have read and write permissions."
 msgstr ""
 
-#: setup.c:1235
+#: setup.c:1264
 msgid "open /dev/null or dup failed"
 msgstr ""
 
-#: setup.c:1250
+#: setup.c:1279
 msgid "fork failed"
 msgstr ""
 
-#: setup.c:1255
+#: setup.c:1284
 msgid "setsid failed"
 msgstr ""
 
-#: sha1-file.c:381
+#: sha1-file.c:453
 #, c-format
 msgid "object directory %s does not exist; check .git/objects/info/alternates"
 msgstr ""
 
-#: sha1-file.c:432
+#: sha1-file.c:504
 #, c-format
 msgid "unable to normalize alternate object path: %s"
 msgstr ""
 
-#: sha1-file.c:503
+#: sha1-file.c:576
 #, c-format
 msgid "%s: ignoring alternate object stores, nesting too deep"
 msgstr ""
 
-#: sha1-file.c:510
+#: sha1-file.c:583
 #, c-format
 msgid "unable to normalize object directory: %s"
 msgstr ""
 
-#: sha1-file.c:565
+#: sha1-file.c:626
 msgid "unable to fdopen alternates lockfile"
 msgstr ""
 
-#: sha1-file.c:583
+#: sha1-file.c:644
 msgid "unable to read alternates file"
 msgstr ""
 
-#: sha1-file.c:590
+#: sha1-file.c:651
 msgid "unable to move new alternates file into place"
 msgstr ""
 
-#: sha1-file.c:625
+#: sha1-file.c:686
 #, c-format
 msgid "path '%s' does not exist"
 msgstr ""
 
-#: sha1-file.c:651
+#: sha1-file.c:712
 #, c-format
 msgid "reference repository '%s' as a linked checkout is not supported yet."
 msgstr ""
 
-#: sha1-file.c:657
+#: sha1-file.c:718
 #, c-format
 msgid "reference repository '%s' is not a local repository."
 msgstr ""
 
-#: sha1-file.c:663
+#: sha1-file.c:724
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr ""
 
-#: sha1-file.c:671
+#: sha1-file.c:732
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr ""
 
-#: sha1-file.c:781
+#: sha1-file.c:792
+#, c-format
+msgid "invalid line while parsing alternate refs: %s"
+msgstr ""
+
+#: sha1-file.c:944
 #, c-format
 msgid "attempting to mmap %<PRIuMAX> over limit %<PRIuMAX>"
 msgstr ""
 
-#: sha1-file.c:806
+#: sha1-file.c:969
 msgid "mmap failed"
 msgstr ""
 
-#: sha1-file.c:973
+#: sha1-file.c:1133
 #, c-format
 msgid "object file %s is empty"
 msgstr ""
 
-#: sha1-file.c:1093 sha1-file.c:2215
+#: sha1-file.c:1257 sha1-file.c:2396
 #, c-format
 msgid "corrupt loose object '%s'"
 msgstr ""
 
-#: sha1-file.c:1095 sha1-file.c:2219
+#: sha1-file.c:1259 sha1-file.c:2400
 #, c-format
 msgid "garbage at end of loose object '%s'"
 msgstr ""
 
-#: sha1-file.c:1137
+#: sha1-file.c:1301
 msgid "invalid object type"
 msgstr ""
 
-#: sha1-file.c:1219
+#: sha1-file.c:1385
 #, c-format
 msgid "unable to unpack %s header with --allow-unknown-type"
 msgstr ""
 
-#: sha1-file.c:1222
+#: sha1-file.c:1388
 #, c-format
 msgid "unable to unpack %s header"
 msgstr ""
 
-#: sha1-file.c:1228
+#: sha1-file.c:1394
 #, c-format
 msgid "unable to parse %s header with --allow-unknown-type"
 msgstr ""
 
-#: sha1-file.c:1231
+#: sha1-file.c:1397
 #, c-format
 msgid "unable to parse %s header"
 msgstr ""
 
-#: sha1-file.c:1422
+#: sha1-file.c:1588
 #, c-format
 msgid "failed to read object %s"
 msgstr ""
 
-#: sha1-file.c:1426
+#: sha1-file.c:1592
 #, c-format
 msgid "replacement %s not found for %s"
 msgstr ""
 
-#: sha1-file.c:1430
+#: sha1-file.c:1596
 #, c-format
 msgid "loose object %s (stored in %s) is corrupt"
 msgstr ""
 
-#: sha1-file.c:1434
+#: sha1-file.c:1600
 #, c-format
 msgid "packed object %s (stored in %s) is corrupt"
 msgstr ""
 
-#: sha1-file.c:1536
+#: sha1-file.c:1703
 #, c-format
-msgid "unable to write sha1 filename %s"
+msgid "unable to write file %s"
 msgstr ""
 
-#: sha1-file.c:1543
+#: sha1-file.c:1710
 #, c-format
 msgid "unable to set permission to '%s'"
 msgstr ""
 
-#: sha1-file.c:1550
+#: sha1-file.c:1717
 msgid "file write error"
 msgstr ""
 
-#: sha1-file.c:1569
-msgid "error when closing sha1 file"
+#: sha1-file.c:1736
+msgid "error when closing loose object file"
 msgstr ""
 
-#: sha1-file.c:1635
+#: sha1-file.c:1801
 #, c-format
 msgid "insufficient permission for adding an object to repository database %s"
 msgstr ""
 
-#: sha1-file.c:1637
+#: sha1-file.c:1803
 msgid "unable to create temporary file"
 msgstr ""
 
-#: sha1-file.c:1661
-msgid "unable to write sha1 file"
+#: sha1-file.c:1827
+msgid "unable to write loose object file"
 msgstr ""
 
-#: sha1-file.c:1667
+#: sha1-file.c:1833
 #, c-format
 msgid "unable to deflate new object %s (%d)"
 msgstr ""
 
-#: sha1-file.c:1671
+#: sha1-file.c:1837
 #, c-format
 msgid "deflateEnd on object %s failed (%d)"
 msgstr ""
 
-#: sha1-file.c:1675
+#: sha1-file.c:1841
 #, c-format
 msgid "confused by unstable object source data for %s"
 msgstr ""
 
-#: sha1-file.c:1685 builtin/pack-objects.c:918
+#: sha1-file.c:1851 builtin/pack-objects.c:925
 #, c-format
 msgid "failed utime() on %s"
 msgstr ""
 
-#: sha1-file.c:1760
+#: sha1-file.c:1926
 #, c-format
-msgid "cannot read sha1_file for %s"
+msgid "cannot read object for %s"
 msgstr ""
 
-#: sha1-file.c:1805
+#: sha1-file.c:1966
 msgid "corrupt commit"
 msgstr ""
 
-#: sha1-file.c:1813
+#: sha1-file.c:1974
 msgid "corrupt tag"
 msgstr ""
 
-#: sha1-file.c:1912
+#: sha1-file.c:2073
 #, c-format
 msgid "read error while indexing %s"
 msgstr ""
 
-#: sha1-file.c:1915
+#: sha1-file.c:2076
 #, c-format
 msgid "short read while indexing %s"
 msgstr ""
 
-#: sha1-file.c:1988 sha1-file.c:1997
+#: sha1-file.c:2149 sha1-file.c:2158
 #, c-format
 msgid "%s: failed to insert into database"
 msgstr ""
 
-#: sha1-file.c:2003
+#: sha1-file.c:2164
 #, c-format
 msgid "%s: unsupported file type"
 msgstr ""
 
-#: sha1-file.c:2027
+#: sha1-file.c:2188
 #, c-format
 msgid "%s is not a valid object"
 msgstr ""
 
-#: sha1-file.c:2029
+#: sha1-file.c:2190
 #, c-format
 msgid "%s is not a valid '%s' object"
 msgstr ""
 
-#: sha1-file.c:2056 builtin/index-pack.c:154
+#: sha1-file.c:2217 builtin/index-pack.c:155
 #, c-format
 msgid "unable to open %s"
 msgstr ""
 
-#: sha1-file.c:2226 sha1-file.c:2278
+#: sha1-file.c:2407 sha1-file.c:2459
 #, c-format
-msgid "sha1 mismatch for %s (expected %s)"
+msgid "hash mismatch for %s (expected %s)"
 msgstr ""
 
-#: sha1-file.c:2250
+#: sha1-file.c:2431
 #, c-format
 msgid "unable to mmap %s"
 msgstr ""
 
-#: sha1-file.c:2255
+#: sha1-file.c:2436
 #, c-format
 msgid "unable to unpack header of %s"
 msgstr ""
 
-#: sha1-file.c:2261
+#: sha1-file.c:2442
 #, c-format
 msgid "unable to parse header of %s"
 msgstr ""
 
-#: sha1-file.c:2272
+#: sha1-file.c:2453
 #, c-format
 msgid "unable to unpack contents of %s"
 msgstr ""
 
-#: sha1-name.c:476
+#: sha1-name.c:490
 #, c-format
 msgid "short SHA1 %s is ambiguous"
 msgstr ""
 
-#: sha1-name.c:487
+#: sha1-name.c:501
 msgid "The candidates are:"
 msgstr ""
 
-#: sha1-name.c:770
+#: sha1-name.c:800
 msgid ""
 "Git normally never creates a ref that ends with 40 hex characters\n"
 "because it will be ignored when you just specify 40-hex. These refs\n"
 "may be created by mistake. For example,\n"
 "\n"
-"  git checkout -b $br $(git rev-parse ...)\n"
+"  git switch -c $br $(git rev-parse ...)\n"
 "\n"
 "where \"$br\" is somehow empty and a 40-hex ref is created. Please\n"
 "examine these refs and maybe delete them. Turn this message off by\n"
 "running \"git config advice.objectNameWarning false\""
 msgstr ""
 
-#: submodule.c:116 submodule.c:145
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte
+#: strbuf.c:821
+#, c-format
+msgid "%u.%2.2u GiB"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 gibibyte/second
+#: strbuf.c:823
+#, c-format
+msgid "%u.%2.2u GiB/s"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte
+#: strbuf.c:831
+#, c-format
+msgid "%u.%2.2u MiB"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 mebibyte/second
+#: strbuf.c:833
+#, c-format
+msgid "%u.%2.2u MiB/s"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte
+#: strbuf.c:840
+#, c-format
+msgid "%u.%2.2u KiB"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 kibibyte/second
+#: strbuf.c:842
+#, c-format
+msgid "%u.%2.2u KiB/s"
+msgstr ""
+
+#. TRANSLATORS: IEC 80000-13:2008 byte
+#: strbuf.c:848
+#, c-format
+msgid "%u byte"
+msgid_plural "%u bytes"
+msgstr[0] ""
+msgstr[1] ""
+
+#. TRANSLATORS: IEC 80000-13:2008 byte/second
+#: strbuf.c:850
+#, c-format
+msgid "%u byte/s"
+msgid_plural "%u bytes/s"
+msgstr[0] ""
+msgstr[1] ""
+
+#: submodule.c:114 submodule.c:143
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
 
-#: submodule.c:120 submodule.c:149
+#: submodule.c:118 submodule.c:147
 #, c-format
 msgid "Could not find section in .gitmodules where path=%s"
 msgstr ""
 
-#: submodule.c:156
+#: submodule.c:154
 #, c-format
 msgid "Could not remove .gitmodules entry for %s"
 msgstr ""
 
-#: submodule.c:167
+#: submodule.c:165
 msgid "staging updated .gitmodules failed"
 msgstr ""
 
-#: submodule.c:329
+#: submodule.c:327
 #, c-format
 msgid "in unpopulated submodule '%s'"
 msgstr ""
 
-#: submodule.c:360
+#: submodule.c:358
 #, c-format
 msgid "Pathspec '%s' is in submodule '%.*s'"
 msgstr ""
 
-#: submodule.c:857
+#: submodule.c:910
 #, c-format
 msgid "submodule entry '%s' (%s) is a %s, not a commit"
 msgstr ""
 
-#: submodule.c:1097 builtin/branch.c:656 builtin/submodule--helper.c:1985
+#: submodule.c:1147 builtin/branch.c:680 builtin/submodule--helper.c:1989
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr ""
 
-#: submodule.c:1404
+#: submodule.c:1481
+#, c-format
+msgid "Could not access submodule '%s'"
+msgstr ""
+
+#: submodule.c:1651
 #, c-format
 msgid "'%s' not recognized as a git repository"
 msgstr ""
 
-#: submodule.c:1542
+#: submodule.c:1789
 #, c-format
 msgid "could not start 'git status' in submodule '%s'"
 msgstr ""
 
-#: submodule.c:1555
+#: submodule.c:1802
 #, c-format
 msgid "could not run 'git status' in submodule '%s'"
 msgstr ""
 
-#: submodule.c:1648
+#: submodule.c:1817
+#, c-format
+msgid "Could not unset core.worktree setting in submodule '%s'"
+msgstr ""
+
+#: submodule.c:1907
 #, c-format
 msgid "submodule '%s' has dirty index"
 msgstr ""
 
-#: submodule.c:1700
+#: submodule.c:1959
 #, c-format
 msgid "Submodule '%s' could not be updated."
 msgstr ""
 
-#: submodule.c:1747
+#: submodule.c:2007
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
 msgstr ""
 
-#: submodule.c:1759 submodule.c:1815
+#: submodule.c:2019 submodule.c:2074
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr ""
 
-#: submodule.c:1766
+#: submodule.c:2026
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -5572,16 +6752,16 @@ msgid ""
 "'%s'\n"
 msgstr ""
 
-#: submodule.c:1850
+#: submodule.c:2109
 #, c-format
 msgid "could not recurse into submodule '%s'"
 msgstr ""
 
-#: submodule.c:1894
+#: submodule.c:2153
 msgid "could not start ls-files in .."
 msgstr ""
 
-#: submodule.c:1933
+#: submodule.c:2192
 #, c-format
 msgid "ls-tree returned unexpected return code %d"
 msgstr ""
@@ -5591,21 +6771,21 @@ msgstr ""
 msgid "ignoring suspicious submodule name: %s"
 msgstr ""
 
-#: submodule-config.c:296
+#: submodule-config.c:299
 msgid "negative values not allowed for submodule.fetchjobs"
 msgstr ""
 
-#: submodule-config.c:390
+#: submodule-config.c:397
 #, c-format
 msgid "ignoring '%s' which may be interpreted as a command-line option: %s"
 msgstr ""
 
-#: submodule-config.c:479
+#: submodule-config.c:486
 #, c-format
 msgid "invalid value for %s"
 msgstr ""
 
-#: submodule-config.c:754
+#: submodule-config.c:755
 #, c-format
 msgid "Could not update .gitmodules entry %s"
 msgstr ""
@@ -5640,7 +6820,7 @@ msgstr ""
 msgid "could not read from stdin"
 msgstr ""
 
-#: trailer.c:1011 builtin/am.c:47
+#: trailer.c:1011 wrapper.c:701
 #, c-format
 msgid "could not stat %s"
 msgstr ""
@@ -5679,36 +6859,44 @@ msgstr ""
 msgid "transport: invalid depth option '%s'"
 msgstr ""
 
-#: transport.c:616
+#: transport.c:259
+msgid "see protocol.version in 'git help config' for more details"
+msgstr ""
+
+#: transport.c:260
+msgid "server options require protocol version 2 or later"
+msgstr ""
+
+#: transport.c:625
 msgid "could not parse transport.color.* config"
 msgstr ""
 
-#: transport.c:689
+#: transport.c:698
 msgid "support for protocol v2 not implemented yet"
 msgstr ""
 
-#: transport.c:816
+#: transport.c:825
 #, c-format
 msgid "unknown value for config '%s': %s"
 msgstr ""
 
-#: transport.c:882
+#: transport.c:891
 #, c-format
 msgid "transport '%s' not allowed"
 msgstr ""
 
-#: transport.c:936
+#: transport.c:945
 msgid "git-over-rsync is no longer supported"
 msgstr ""
 
-#: transport.c:1031
+#: transport.c:1040
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
 "not be found on any remote:\n"
 msgstr ""
 
-#: transport.c:1035
+#: transport.c:1044
 #, c-format
 msgid ""
 "\n"
@@ -5724,183 +6912,178 @@ msgid ""
 "\n"
 msgstr ""
 
-#: transport.c:1043
+#: transport.c:1052
 msgid "Aborting."
 msgstr ""
 
-#: transport.c:1182
+#: transport.c:1193
 msgid "failed to push all needed submodules"
 msgstr ""
 
-#: transport.c:1315 transport-helper.c:643
+#: transport.c:1340 transport-helper.c:645
 msgid "operation not supported by protocol"
 msgstr ""
 
-#: transport.c:1419
-#, c-format
-msgid "invalid line while parsing alternate refs: %s"
-msgstr ""
-
 #: transport-helper.c:51 transport-helper.c:80
 msgid "full write to remote helper failed"
 msgstr ""
 
-#: transport-helper.c:132
+#: transport-helper.c:134
 #, c-format
 msgid "unable to find remote helper for '%s'"
 msgstr ""
 
-#: transport-helper.c:148 transport-helper.c:557
+#: transport-helper.c:150 transport-helper.c:559
 msgid "can't dup helper output fd"
 msgstr ""
 
-#: transport-helper.c:199
+#: transport-helper.c:201
 #, c-format
 msgid ""
 "unknown mandatory capability %s; this remote helper probably needs newer "
 "version of Git"
 msgstr ""
 
-#: transport-helper.c:205
+#: transport-helper.c:207
 msgid "this remote helper should implement refspec capability"
 msgstr ""
 
-#: transport-helper.c:272 transport-helper.c:412
+#: transport-helper.c:274 transport-helper.c:414
 #, c-format
 msgid "%s unexpectedly said: '%s'"
 msgstr ""
 
-#: transport-helper.c:401
+#: transport-helper.c:403
 #, c-format
 msgid "%s also locked %s"
 msgstr ""
 
-#: transport-helper.c:479
+#: transport-helper.c:481
 msgid "couldn't run fast-import"
 msgstr ""
 
-#: transport-helper.c:502
+#: transport-helper.c:504
 msgid "error while running fast-import"
 msgstr ""
 
-#: transport-helper.c:531 transport-helper.c:1091
+#: transport-helper.c:533 transport-helper.c:1105
 #, c-format
 msgid "could not read ref %s"
 msgstr ""
 
-#: transport-helper.c:576
+#: transport-helper.c:578
 #, c-format
 msgid "unknown response to connect: %s"
 msgstr ""
 
-#: transport-helper.c:598
+#: transport-helper.c:600
 msgid "setting remote service path not supported by protocol"
 msgstr ""
 
-#: transport-helper.c:600
+#: transport-helper.c:602
 msgid "invalid remote service path"
 msgstr ""
 
-#: transport-helper.c:646
+#: transport-helper.c:648
 #, c-format
 msgid "can't connect to subservice %s"
 msgstr ""
 
-#: transport-helper.c:713
+#: transport-helper.c:720
 #, c-format
 msgid "expected ok/error, helper said '%s'"
 msgstr ""
 
-#: transport-helper.c:766
+#: transport-helper.c:773
 #, c-format
 msgid "helper reported unexpected status of %s"
 msgstr ""
 
-#: transport-helper.c:827
+#: transport-helper.c:834
 #, c-format
 msgid "helper %s does not support dry-run"
 msgstr ""
 
-#: transport-helper.c:830
+#: transport-helper.c:837
 #, c-format
 msgid "helper %s does not support --signed"
 msgstr ""
 
-#: transport-helper.c:833
+#: transport-helper.c:840
 #, c-format
 msgid "helper %s does not support --signed=if-asked"
 msgstr ""
 
-#: transport-helper.c:840
+#: transport-helper.c:847
 #, c-format
 msgid "helper %s does not support 'push-option'"
 msgstr ""
 
-#: transport-helper.c:932
+#: transport-helper.c:945
 msgid "remote-helper doesn't support push; refspec needed"
 msgstr ""
 
-#: transport-helper.c:937
+#: transport-helper.c:950
 #, c-format
 msgid "helper %s does not support 'force'"
 msgstr ""
 
-#: transport-helper.c:984
+#: transport-helper.c:997
 msgid "couldn't run fast-export"
 msgstr ""
 
-#: transport-helper.c:989
+#: transport-helper.c:1002
 msgid "error while running fast-export"
 msgstr ""
 
-#: transport-helper.c:1014
+#: transport-helper.c:1027
 #, c-format
 msgid ""
 "No refs in common and none specified; doing nothing.\n"
 "Perhaps you should specify a branch such as 'master'.\n"
 msgstr ""
 
-#: transport-helper.c:1077
+#: transport-helper.c:1091
 #, c-format
 msgid "malformed response in ref list: %s"
 msgstr ""
 
-#: transport-helper.c:1231
+#: transport-helper.c:1244
 #, c-format
 msgid "read(%s) failed"
 msgstr ""
 
-#: transport-helper.c:1258
+#: transport-helper.c:1271
 #, c-format
 msgid "write(%s) failed"
 msgstr ""
 
-#: transport-helper.c:1307
+#: transport-helper.c:1320
 #, c-format
 msgid "%s thread failed"
 msgstr ""
 
-#: transport-helper.c:1311
+#: transport-helper.c:1324
 #, c-format
 msgid "%s thread failed to join: %s"
 msgstr ""
 
-#: transport-helper.c:1330 transport-helper.c:1334
+#: transport-helper.c:1343 transport-helper.c:1347
 #, c-format
 msgid "can't start thread for copying data: %s"
 msgstr ""
 
-#: transport-helper.c:1371
+#: transport-helper.c:1384
 #, c-format
 msgid "%s process failed to wait"
 msgstr ""
 
-#: transport-helper.c:1375
+#: transport-helper.c:1388
 #, c-format
 msgid "%s process failed"
 msgstr ""
 
-#: transport-helper.c:1393 transport-helper.c:1402
+#: transport-helper.c:1406 transport-helper.c:1415
 msgid "can't start thread for copying data"
 msgstr ""
 
@@ -5916,102 +7099,102 @@ msgstr ""
 msgid "empty filename in tree entry"
 msgstr ""
 
-#: tree-walk.c:115
+#: tree-walk.c:118
 msgid "too-short tree file"
 msgstr ""
 
-#: unpack-trees.c:112
+#: unpack-trees.c:111
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
 "%%sPlease commit your changes or stash them before you switch branches."
 msgstr ""
 
-#: unpack-trees.c:114
+#: unpack-trees.c:113
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by checkout:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:117
+#: unpack-trees.c:116
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
 "%%sPlease commit your changes or stash them before you merge."
 msgstr ""
 
-#: unpack-trees.c:119
+#: unpack-trees.c:118
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by merge:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:122
+#: unpack-trees.c:121
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
 "%%sPlease commit your changes or stash them before you %s."
 msgstr ""
 
-#: unpack-trees.c:124
+#: unpack-trees.c:123
 #, c-format
 msgid ""
 "Your local changes to the following files would be overwritten by %s:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:129
+#: unpack-trees.c:128
 #, c-format
 msgid ""
 "Updating the following directories would lose untracked files in them:\n"
 "%s"
 msgstr ""
 
-#: unpack-trees.c:133
+#: unpack-trees.c:132
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
 "%%sPlease move or remove them before you switch branches."
 msgstr ""
 
-#: unpack-trees.c:135
+#: unpack-trees.c:134
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:138
+#: unpack-trees.c:137
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
 "%%sPlease move or remove them before you merge."
 msgstr ""
 
-#: unpack-trees.c:140
+#: unpack-trees.c:139
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:143
+#: unpack-trees.c:142
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
 "%%sPlease move or remove them before you %s."
 msgstr ""
 
-#: unpack-trees.c:145
+#: unpack-trees.c:144
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:151
+#: unpack-trees.c:150
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -6019,7 +7202,7 @@ msgid ""
 "%%sPlease move or remove them before you switch branches."
 msgstr ""
 
-#: unpack-trees.c:153
+#: unpack-trees.c:152
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -6027,47 +7210,47 @@ msgid ""
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:156
+#: unpack-trees.c:155
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
 "%%sPlease move or remove them before you merge."
 msgstr ""
 
-#: unpack-trees.c:158
+#: unpack-trees.c:157
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:161
+#: unpack-trees.c:160
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
 "%%sPlease move or remove them before you %s."
 msgstr ""
 
-#: unpack-trees.c:163
+#: unpack-trees.c:162
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:171
+#: unpack-trees.c:170
 #, c-format
 msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
 msgstr ""
 
-#: unpack-trees.c:174
+#: unpack-trees.c:173
 #, c-format
 msgid ""
 "Cannot update sparse checkout: the following entries are not up to date:\n"
 "%s"
 msgstr ""
 
-#: unpack-trees.c:176
+#: unpack-trees.c:175
 #, c-format
 msgid ""
 "The following working tree files would be overwritten by sparse checkout "
@@ -6075,7 +7258,7 @@ msgid ""
 "%s"
 msgstr ""
 
-#: unpack-trees.c:178
+#: unpack-trees.c:177
 #, c-format
 msgid ""
 "The following working tree files would be removed by sparse checkout "
@@ -6083,23 +7266,23 @@ msgid ""
 "%s"
 msgstr ""
 
-#: unpack-trees.c:180
+#: unpack-trees.c:179
 #, c-format
 msgid ""
 "Cannot update submodule:\n"
 "%s"
 msgstr ""
 
-#: unpack-trees.c:254
+#: unpack-trees.c:256
 #, c-format
 msgid "Aborting\n"
 msgstr ""
 
-#: unpack-trees.c:336
-msgid "Checking out files"
+#: unpack-trees.c:318
+msgid "Updating files"
 msgstr ""
 
-#: unpack-trees.c:368
+#: unpack-trees.c:350
 msgid ""
 "the following paths have collided (e.g. case-sensitive paths\n"
 "on a case-insensitive filesystem) and only one from the same\n"
@@ -6135,32 +7318,32 @@ msgstr ""
 msgid "invalid '..' path segment"
 msgstr ""
 
-#: worktree.c:249 builtin/am.c:2100
+#: worktree.c:258 builtin/am.c:2095
 #, c-format
 msgid "failed to read '%s'"
 msgstr ""
 
-#: worktree.c:295
+#: worktree.c:304
 #, c-format
 msgid "'%s' at main working tree is not the repository directory"
 msgstr ""
 
-#: worktree.c:306
+#: worktree.c:315
 #, c-format
 msgid "'%s' file does not contain absolute path to the working tree location"
 msgstr ""
 
-#: worktree.c:318
+#: worktree.c:327
 #, c-format
 msgid "'%s' does not exist"
 msgstr ""
 
-#: worktree.c:324
+#: worktree.c:333
 #, c-format
 msgid "'%s' is not a .git file, error code %d"
 msgstr ""
 
-#: worktree.c:332
+#: worktree.c:341
 #, c-format
 msgid "'%s' does not point back to '%s'"
 msgstr ""
@@ -6179,374 +7362,394 @@ msgstr ""
 msgid "unable to get current working directory"
 msgstr ""
 
-#: wt-status.c:154
+#: wt-status.c:158
 msgid "Unmerged paths:"
 msgstr ""
 
-#: wt-status.c:181 wt-status.c:208
+#: wt-status.c:187 wt-status.c:219
+msgid "  (use \"git restore --staged <file>...\" to unstage)"
+msgstr ""
+
+#: wt-status.c:190 wt-status.c:222
 #, c-format
-msgid "  (use \"git reset %s <file>...\" to unstage)"
+msgid "  (use \"git restore --source=%s --staged <file>...\" to unstage)"
 msgstr ""
 
-#: wt-status.c:183 wt-status.c:210
+#: wt-status.c:193 wt-status.c:225
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
 msgstr ""
 
-#: wt-status.c:187
+#: wt-status.c:197
 msgid "  (use \"git add <file>...\" to mark resolution)"
 msgstr ""
 
-#: wt-status.c:189 wt-status.c:193
+#: wt-status.c:199 wt-status.c:203
 msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
 msgstr ""
 
-#: wt-status.c:191
+#: wt-status.c:201
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr ""
 
-#: wt-status.c:202 wt-status.c:1042
+#: wt-status.c:211 wt-status.c:1074
 msgid "Changes to be committed:"
 msgstr ""
 
-#: wt-status.c:220 wt-status.c:1051
+#: wt-status.c:234 wt-status.c:1083
 msgid "Changes not staged for commit:"
 msgstr ""
 
-#: wt-status.c:224
+#: wt-status.c:238
 msgid "  (use \"git add <file>...\" to update what will be committed)"
 msgstr ""
 
-#: wt-status.c:226
+#: wt-status.c:240
 msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
 msgstr ""
 
-#: wt-status.c:227
+#: wt-status.c:241
 msgid ""
-"  (use \"git checkout -- <file>...\" to discard changes in working directory)"
+"  (use \"git restore <file>...\" to discard changes in working directory)"
 msgstr ""
 
-#: wt-status.c:229
+#: wt-status.c:243
 msgid "  (commit or discard the untracked or modified content in submodules)"
 msgstr ""
 
-#: wt-status.c:241
+#: wt-status.c:254
 #, c-format
 msgid "  (use \"git %s <file>...\" to include in what will be committed)"
 msgstr ""
 
-#: wt-status.c:256
+#: wt-status.c:268
 msgid "both deleted:"
 msgstr ""
 
-#: wt-status.c:258
+#: wt-status.c:270
 msgid "added by us:"
 msgstr ""
 
-#: wt-status.c:260
+#: wt-status.c:272
 msgid "deleted by them:"
 msgstr ""
 
-#: wt-status.c:262
+#: wt-status.c:274
 msgid "added by them:"
 msgstr ""
 
-#: wt-status.c:264
+#: wt-status.c:276
 msgid "deleted by us:"
 msgstr ""
 
-#: wt-status.c:266
+#: wt-status.c:278
 msgid "both added:"
 msgstr ""
 
-#: wt-status.c:268
+#: wt-status.c:280
 msgid "both modified:"
 msgstr ""
 
-#: wt-status.c:278
+#: wt-status.c:290
 msgid "new file:"
 msgstr ""
 
-#: wt-status.c:280
+#: wt-status.c:292
 msgid "copied:"
 msgstr ""
 
-#: wt-status.c:282
+#: wt-status.c:294
 msgid "deleted:"
 msgstr ""
 
-#: wt-status.c:284
+#: wt-status.c:296
 msgid "modified:"
 msgstr ""
 
-#: wt-status.c:286
+#: wt-status.c:298
 msgid "renamed:"
 msgstr ""
 
-#: wt-status.c:288
+#: wt-status.c:300
 msgid "typechange:"
 msgstr ""
 
-#: wt-status.c:290
+#: wt-status.c:302
 msgid "unknown:"
 msgstr ""
 
-#: wt-status.c:292
+#: wt-status.c:304
 msgid "unmerged:"
 msgstr ""
 
-#: wt-status.c:372
+#: wt-status.c:384
 msgid "new commits, "
 msgstr ""
 
-#: wt-status.c:374
+#: wt-status.c:386
 msgid "modified content, "
 msgstr ""
 
-#: wt-status.c:376
+#: wt-status.c:388
 msgid "untracked content, "
 msgstr ""
 
-#: wt-status.c:880
+#: wt-status.c:906
 #, c-format
 msgid "Your stash currently has %d entry"
 msgid_plural "Your stash currently has %d entries"
 msgstr[0] ""
 msgstr[1] ""
 
-#: wt-status.c:912
+#: wt-status.c:938
 msgid "Submodules changed but not updated:"
 msgstr ""
 
-#: wt-status.c:914
+#: wt-status.c:940
 msgid "Submodule changes to be committed:"
 msgstr ""
 
-#: wt-status.c:996
+#: wt-status.c:1022
 msgid ""
 "Do not modify or remove the line above.\n"
 "Everything below it will be ignored."
 msgstr ""
 
-#: wt-status.c:1097
+#: wt-status.c:1114
+#, c-format
+msgid ""
+"\n"
+"It took %.2f seconds to compute the branch ahead/behind values.\n"
+"You can use '--no-ahead-behind' to avoid this.\n"
+msgstr ""
+
+#: wt-status.c:1144
 msgid "You have unmerged paths."
 msgstr ""
 
-#: wt-status.c:1100
+#: wt-status.c:1147
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr ""
 
-#: wt-status.c:1102
+#: wt-status.c:1149
 msgid "  (use \"git merge --abort\" to abort the merge)"
 msgstr ""
 
-#: wt-status.c:1106
+#: wt-status.c:1153
 msgid "All conflicts fixed but you are still merging."
 msgstr ""
 
-#: wt-status.c:1109
+#: wt-status.c:1156
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr ""
 
-#: wt-status.c:1118
+#: wt-status.c:1165
 msgid "You are in the middle of an am session."
 msgstr ""
 
-#: wt-status.c:1121
+#: wt-status.c:1168
 msgid "The current patch is empty."
 msgstr ""
 
-#: wt-status.c:1125
+#: wt-status.c:1172
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr ""
 
-#: wt-status.c:1127
+#: wt-status.c:1174
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr ""
 
-#: wt-status.c:1129
+#: wt-status.c:1176
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr ""
 
-#: wt-status.c:1260
+#: wt-status.c:1309
 msgid "git-rebase-todo is missing."
 msgstr ""
 
-#: wt-status.c:1262
+#: wt-status.c:1311
 msgid "No commands done."
 msgstr ""
 
-#: wt-status.c:1265
+#: wt-status.c:1314
 #, c-format
 msgid "Last command done (%d command done):"
 msgid_plural "Last commands done (%d commands done):"
 msgstr[0] ""
 msgstr[1] ""
 
-#: wt-status.c:1276
+#: wt-status.c:1325
 #, c-format
 msgid "  (see more in file %s)"
 msgstr ""
 
-#: wt-status.c:1281
+#: wt-status.c:1330
 msgid "No commands remaining."
 msgstr ""
 
-#: wt-status.c:1284
+#: wt-status.c:1333
 #, c-format
 msgid "Next command to do (%d remaining command):"
 msgid_plural "Next commands to do (%d remaining commands):"
 msgstr[0] ""
 msgstr[1] ""
 
-#: wt-status.c:1292
+#: wt-status.c:1341
 msgid "  (use \"git rebase --edit-todo\" to view and edit)"
 msgstr ""
 
-#: wt-status.c:1304
+#: wt-status.c:1353
 #, c-format
 msgid "You are currently rebasing branch '%s' on '%s'."
 msgstr ""
 
-#: wt-status.c:1309
+#: wt-status.c:1358
 msgid "You are currently rebasing."
 msgstr ""
 
-#: wt-status.c:1322
+#: wt-status.c:1371
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr ""
 
-#: wt-status.c:1324
+#: wt-status.c:1373
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr ""
 
-#: wt-status.c:1326
+#: wt-status.c:1375
 msgid "  (use \"git rebase --abort\" to check out the original branch)"
 msgstr ""
 
-#: wt-status.c:1333
+#: wt-status.c:1382
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr ""
 
-#: wt-status.c:1337
+#: wt-status.c:1386
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
 msgstr ""
 
-#: wt-status.c:1342
+#: wt-status.c:1391
 msgid "You are currently splitting a commit during a rebase."
 msgstr ""
 
-#: wt-status.c:1345
+#: wt-status.c:1394
 msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
 msgstr ""
 
-#: wt-status.c:1349
+#: wt-status.c:1398
 #, c-format
 msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
 msgstr ""
 
-#: wt-status.c:1354
+#: wt-status.c:1403
 msgid "You are currently editing a commit during a rebase."
 msgstr ""
 
-#: wt-status.c:1357
+#: wt-status.c:1406
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr ""
 
-#: wt-status.c:1359
+#: wt-status.c:1408
 msgid ""
 "  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr ""
 
-#: wt-status.c:1368
+#: wt-status.c:1419
+msgid "Cherry-pick currently in progress."
+msgstr ""
+
+#: wt-status.c:1422
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr ""
 
-#: wt-status.c:1373
+#: wt-status.c:1429
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr ""
 
-#: wt-status.c:1376
+#: wt-status.c:1432
+msgid "  (run \"git cherry-pick --continue\" to continue)"
+msgstr ""
+
+#: wt-status.c:1435
 msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
 msgstr ""
 
-#: wt-status.c:1378
+#: wt-status.c:1437
 msgid "  (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
 msgstr ""
 
-#: wt-status.c:1386
+#: wt-status.c:1447
+msgid "Revert currently in progress."
+msgstr ""
+
+#: wt-status.c:1450
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr ""
 
-#: wt-status.c:1391
+#: wt-status.c:1456
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr ""
 
-#: wt-status.c:1394
+#: wt-status.c:1459
+msgid "  (run \"git revert --continue\" to continue)"
+msgstr ""
+
+#: wt-status.c:1462
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr ""
 
-#: wt-status.c:1396
+#: wt-status.c:1464
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr ""
 
-#: wt-status.c:1406
+#: wt-status.c:1474
 #, c-format
 msgid "You are currently bisecting, started from branch '%s'."
 msgstr ""
 
-#: wt-status.c:1410
+#: wt-status.c:1478
 msgid "You are currently bisecting."
 msgstr ""
 
-#: wt-status.c:1413
+#: wt-status.c:1481
 msgid "  (use \"git bisect reset\" to get back to the original branch)"
 msgstr ""
 
-#: wt-status.c:1611
+#: wt-status.c:1690
 msgid "On branch "
 msgstr ""
 
-#: wt-status.c:1618
+#: wt-status.c:1697
 msgid "interactive rebase in progress; onto "
 msgstr ""
 
-#: wt-status.c:1620
+#: wt-status.c:1699
 msgid "rebase in progress; onto "
 msgstr ""
 
-#: wt-status.c:1625
-msgid "HEAD detached at "
-msgstr ""
-
-#: wt-status.c:1627
-msgid "HEAD detached from "
-msgstr ""
-
-#: wt-status.c:1630
+#: wt-status.c:1709
 msgid "Not currently on any branch."
 msgstr ""
 
-#: wt-status.c:1647
+#: wt-status.c:1726
 msgid "Initial commit"
 msgstr ""
 
-#: wt-status.c:1648
+#: wt-status.c:1727
 msgid "No commits yet"
 msgstr ""
 
-#: wt-status.c:1662
+#: wt-status.c:1741
 msgid "Untracked files"
 msgstr ""
 
-#: wt-status.c:1664
+#: wt-status.c:1743
 msgid "Ignored files"
 msgstr ""
 
-#: wt-status.c:1668
+#: wt-status.c:1747
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -6554,216 +7757,216 @@ msgid ""
 "new files yourself (see 'git help status')."
 msgstr ""
 
-#: wt-status.c:1674
+#: wt-status.c:1753
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr ""
 
-#: wt-status.c:1676
+#: wt-status.c:1755
 msgid " (use -u option to show untracked files)"
 msgstr ""
 
-#: wt-status.c:1682
+#: wt-status.c:1761
 msgid "No changes"
 msgstr ""
 
-#: wt-status.c:1687
+#: wt-status.c:1766
 #, c-format
 msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
 msgstr ""
 
-#: wt-status.c:1690
+#: wt-status.c:1769
 #, c-format
 msgid "no changes added to commit\n"
 msgstr ""
 
-#: wt-status.c:1693
+#: wt-status.c:1772
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
 "track)\n"
 msgstr ""
 
-#: wt-status.c:1696
+#: wt-status.c:1775
 #, c-format
 msgid "nothing added to commit but untracked files present\n"
 msgstr ""
 
-#: wt-status.c:1699
+#: wt-status.c:1778
 #, c-format
 msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
 msgstr ""
 
-#: wt-status.c:1702 wt-status.c:1707
+#: wt-status.c:1781 wt-status.c:1786
 #, c-format
 msgid "nothing to commit\n"
 msgstr ""
 
-#: wt-status.c:1705
+#: wt-status.c:1784
 #, c-format
 msgid "nothing to commit (use -u to show untracked files)\n"
 msgstr ""
 
-#: wt-status.c:1709
+#: wt-status.c:1788
 #, c-format
 msgid "nothing to commit, working tree clean\n"
 msgstr ""
 
-#: wt-status.c:1822
+#: wt-status.c:1901
 msgid "No commits yet on "
 msgstr ""
 
-#: wt-status.c:1826
+#: wt-status.c:1905
 msgid "HEAD (no branch)"
 msgstr ""
 
-#: wt-status.c:1857
+#: wt-status.c:1936
 msgid "different"
 msgstr ""
 
-#: wt-status.c:1859 wt-status.c:1867
+#: wt-status.c:1938 wt-status.c:1946
 msgid "behind "
 msgstr ""
 
-#: wt-status.c:1862 wt-status.c:1865
+#: wt-status.c:1941 wt-status.c:1944
 msgid "ahead "
 msgstr ""
 
 #. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2374
+#: wt-status.c:2466
 #, c-format
 msgid "cannot %s: You have unstaged changes."
 msgstr ""
 
-#: wt-status.c:2380
+#: wt-status.c:2472
 msgid "additionally, your index contains uncommitted changes."
 msgstr ""
 
-#: wt-status.c:2382
+#: wt-status.c:2474
 #, c-format
 msgid "cannot %s: Your index contains uncommitted changes."
 msgstr ""
 
-#: builtin/add.c:24
+#: builtin/add.c:25
 msgid "git add [<options>] [--] <pathspec>..."
 msgstr ""
 
-#: builtin/add.c:83
+#: builtin/add.c:84
 #, c-format
 msgid "unexpected diff status %c"
 msgstr ""
 
-#: builtin/add.c:88 builtin/commit.c:284
+#: builtin/add.c:89 builtin/commit.c:288
 msgid "updating files failed"
 msgstr ""
 
-#: builtin/add.c:98
+#: builtin/add.c:99
 #, c-format
 msgid "remove '%s'\n"
 msgstr ""
 
-#: builtin/add.c:173
+#: builtin/add.c:174
 msgid "Unstaged changes after refreshing the index:"
 msgstr ""
 
-#: builtin/add.c:233 builtin/rev-parse.c:895
+#: builtin/add.c:234 builtin/rev-parse.c:896
 msgid "Could not read the index"
 msgstr ""
 
-#: builtin/add.c:244
+#: builtin/add.c:245
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr ""
 
-#: builtin/add.c:248
+#: builtin/add.c:249
 msgid "Could not write patch"
 msgstr ""
 
-#: builtin/add.c:251
+#: builtin/add.c:252
 msgid "editing patch failed"
 msgstr ""
 
-#: builtin/add.c:254
+#: builtin/add.c:255
 #, c-format
 msgid "Could not stat '%s'"
 msgstr ""
 
-#: builtin/add.c:256
+#: builtin/add.c:257
 msgid "Empty patch. Aborted."
 msgstr ""
 
-#: builtin/add.c:261
+#: builtin/add.c:262
 #, c-format
 msgid "Could not apply '%s'"
 msgstr ""
 
-#: builtin/add.c:269
+#: builtin/add.c:270
 msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr ""
 
-#: builtin/add.c:289 builtin/clean.c:907 builtin/fetch.c:137 builtin/mv.c:123
-#: builtin/prune-packed.c:56 builtin/pull.c:213 builtin/push.c:557
-#: builtin/remote.c:1345 builtin/rm.c:240 builtin/send-pack.c:165
+#: builtin/add.c:290 builtin/clean.c:909 builtin/fetch.c:147 builtin/mv.c:124
+#: builtin/prune-packed.c:56 builtin/pull.c:222 builtin/push.c:560
+#: builtin/remote.c:1345 builtin/rm.c:241 builtin/send-pack.c:165
 msgid "dry run"
 msgstr ""
 
-#: builtin/add.c:292
+#: builtin/add.c:293
 msgid "interactive picking"
 msgstr ""
 
-#: builtin/add.c:293 builtin/checkout.c:1258 builtin/reset.c:305
+#: builtin/add.c:294 builtin/checkout.c:1480 builtin/reset.c:306
 msgid "select hunks interactively"
 msgstr ""
 
-#: builtin/add.c:294
+#: builtin/add.c:295
 msgid "edit current diff and apply"
 msgstr ""
 
-#: builtin/add.c:295
+#: builtin/add.c:296
 msgid "allow adding otherwise ignored files"
 msgstr ""
 
-#: builtin/add.c:296
+#: builtin/add.c:297
 msgid "update tracked files"
 msgstr ""
 
-#: builtin/add.c:297
+#: builtin/add.c:298
 msgid "renormalize EOL of tracked files (implies -u)"
 msgstr ""
 
-#: builtin/add.c:298
+#: builtin/add.c:299
 msgid "record only the fact that the path will be added later"
 msgstr ""
 
-#: builtin/add.c:299
+#: builtin/add.c:300
 msgid "add changes from all tracked and untracked files"
 msgstr ""
 
-#: builtin/add.c:302
+#: builtin/add.c:303
 msgid "ignore paths removed in the working tree (same as --no-all)"
 msgstr ""
 
-#: builtin/add.c:304
+#: builtin/add.c:305
 msgid "don't add, only refresh the index"
 msgstr ""
 
-#: builtin/add.c:305
+#: builtin/add.c:306
 msgid "just skip files which cannot be added because of errors"
 msgstr ""
 
-#: builtin/add.c:306
+#: builtin/add.c:307
 msgid "check if - even missing - files are ignored in dry run"
 msgstr ""
 
-#: builtin/add.c:308 builtin/update-index.c:990
+#: builtin/add.c:309 builtin/update-index.c:1001
 msgid "override the executable bit of the listed files"
 msgstr ""
 
-#: builtin/add.c:310
+#: builtin/add.c:311
 msgid "warn when adding an embedded repository"
 msgstr ""
 
-#: builtin/add.c:325
+#: builtin/add.c:326
 #, c-format
 msgid ""
 "You've added another git repository inside your current repository.\n"
@@ -6781,12 +7984,12 @@ msgid ""
 "See \"git help submodule\" for more information."
 msgstr ""
 
-#: builtin/add.c:353
+#: builtin/add.c:354
 #, c-format
 msgid "adding embedded git repository: %s"
 msgstr ""
 
-#: builtin/add.c:371
+#: builtin/add.c:372
 #, c-format
 msgid "Use -f if you really want to add them.\n"
 msgstr ""
@@ -6795,159 +7998,155 @@ msgstr ""
 msgid "adding files failed"
 msgstr ""
 
-#: builtin/add.c:417
+#: builtin/add.c:419
 msgid "-A and -u are mutually incompatible"
 msgstr ""
 
-#: builtin/add.c:424
+#: builtin/add.c:426
 msgid "Option --ignore-missing can only be used together with --dry-run"
 msgstr ""
 
-#: builtin/add.c:428
+#: builtin/add.c:430
 #, c-format
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr ""
 
-#: builtin/add.c:443
+#: builtin/add.c:445
 #, c-format
 msgid "Nothing specified, nothing added.\n"
 msgstr ""
 
-#: builtin/add.c:444
+#: builtin/add.c:446
 #, c-format
 msgid "Maybe you wanted to say 'git add .'?\n"
 msgstr ""
 
-#: builtin/am.c:363
+#: builtin/am.c:348
 msgid "could not parse author script"
 msgstr ""
 
-#: builtin/am.c:447
+#: builtin/am.c:432
 #, c-format
 msgid "'%s' was deleted by the applypatch-msg hook"
 msgstr ""
 
-#: builtin/am.c:488
+#: builtin/am.c:474
 #, c-format
 msgid "Malformed input line: '%s'."
 msgstr ""
 
-#: builtin/am.c:525
+#: builtin/am.c:512
 #, c-format
 msgid "Failed to copy notes from '%s' to '%s'"
 msgstr ""
 
-#: builtin/am.c:551
+#: builtin/am.c:538
 msgid "fseek failed"
 msgstr ""
 
-#: builtin/am.c:739
+#: builtin/am.c:726
 #, c-format
 msgid "could not parse patch '%s'"
 msgstr ""
 
-#: builtin/am.c:804
+#: builtin/am.c:791
 msgid "Only one StGIT patch series can be applied at once"
 msgstr ""
 
-#: builtin/am.c:852
+#: builtin/am.c:839
 msgid "invalid timestamp"
 msgstr ""
 
-#: builtin/am.c:857 builtin/am.c:869
+#: builtin/am.c:844 builtin/am.c:856
 msgid "invalid Date line"
 msgstr ""
 
-#: builtin/am.c:864
+#: builtin/am.c:851
 msgid "invalid timezone offset"
 msgstr ""
 
-#: builtin/am.c:957
+#: builtin/am.c:944
 msgid "Patch format detection failed."
 msgstr ""
 
-#: builtin/am.c:962 builtin/clone.c:408
+#: builtin/am.c:949 builtin/clone.c:407
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr ""
 
-#: builtin/am.c:967
+#: builtin/am.c:954
 msgid "Failed to split patches."
 msgstr ""
 
-#: builtin/am.c:1097 builtin/commit.c:369
+#: builtin/am.c:1084 builtin/commit.c:374
 msgid "unable to write index file"
 msgstr ""
 
-#: builtin/am.c:1111
+#: builtin/am.c:1098
 #, c-format
 msgid "When you have resolved this problem, run \"%s --continue\"."
 msgstr ""
 
-#: builtin/am.c:1112
+#: builtin/am.c:1099
 #, c-format
 msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
 msgstr ""
 
-#: builtin/am.c:1113
+#: builtin/am.c:1100
 #, c-format
 msgid "To restore the original branch and stop patching, run \"%s --abort\"."
 msgstr ""
 
-#: builtin/am.c:1196
+#: builtin/am.c:1183
 msgid "Patch sent with format=flowed; space at the end of lines might be lost."
 msgstr ""
 
-#: builtin/am.c:1224
+#: builtin/am.c:1211
 msgid "Patch is empty."
 msgstr ""
 
-#: builtin/am.c:1290
+#: builtin/am.c:1277
 #, c-format
 msgid "invalid ident line: %.*s"
 msgstr ""
 
-#: builtin/am.c:1312
+#: builtin/am.c:1299
 #, c-format
 msgid "unable to parse commit %s"
 msgstr ""
 
-#: builtin/am.c:1508
+#: builtin/am.c:1496
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
 msgstr ""
 
-#: builtin/am.c:1510
+#: builtin/am.c:1498
 msgid "Using index info to reconstruct a base tree..."
 msgstr ""
 
-#: builtin/am.c:1529
+#: builtin/am.c:1517
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
 msgstr ""
 
-#: builtin/am.c:1535
+#: builtin/am.c:1523
 msgid "Falling back to patching base and 3-way merge..."
 msgstr ""
 
-#: builtin/am.c:1561
+#: builtin/am.c:1549
 msgid "Failed to merge in the changes."
 msgstr ""
 
-#: builtin/am.c:1593
+#: builtin/am.c:1581
 msgid "applying to an empty history"
 msgstr ""
 
-#: builtin/am.c:1639 builtin/am.c:1643
+#: builtin/am.c:1628 builtin/am.c:1632
 #, c-format
 msgid "cannot resume: %s does not exist."
 msgstr ""
 
-#: builtin/am.c:1659
-msgid "cannot be interactive without stdin connected to a terminal."
-msgstr ""
-
-#: builtin/am.c:1664
+#: builtin/am.c:1650
 msgid "Commit Body is:"
 msgstr ""
 
@@ -6955,41 +8154,42 @@ msgstr ""
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1674
+#: builtin/am.c:1660
+#, c-format
 msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
 msgstr ""
 
-#: builtin/am.c:1724
+#: builtin/am.c:1710
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr ""
 
-#: builtin/am.c:1764 builtin/am.c:1832
+#: builtin/am.c:1750 builtin/am.c:1818
 #, c-format
 msgid "Applying: %.*s"
 msgstr ""
 
-#: builtin/am.c:1781
+#: builtin/am.c:1767
 msgid "No changes -- Patch already applied."
 msgstr ""
 
-#: builtin/am.c:1787
+#: builtin/am.c:1773
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr ""
 
-#: builtin/am.c:1791
+#: builtin/am.c:1777
 msgid "Use 'git am --show-current-patch' to see the failed patch"
 msgstr ""
 
-#: builtin/am.c:1835
+#: builtin/am.c:1821
 msgid ""
 "No changes - did you forget to use 'git add'?\n"
 "If there is nothing left to stage, chances are that something else\n"
 "already introduced the same changes; you might want to skip this patch."
 msgstr ""
 
-#: builtin/am.c:1842
+#: builtin/am.c:1828
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -6997,416 +8197,631 @@ msgid ""
 "You might run `git rm` on a file to accept \"deleted by them\" for it."
 msgstr ""
 
-#: builtin/am.c:1949 builtin/am.c:1953 builtin/am.c:1965 builtin/reset.c:328
-#: builtin/reset.c:336
+#: builtin/am.c:1935 builtin/am.c:1939 builtin/am.c:1951 builtin/reset.c:329
+#: builtin/reset.c:337
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr ""
 
-#: builtin/am.c:2001
+#: builtin/am.c:1987
 msgid "failed to clean index"
 msgstr ""
 
-#: builtin/am.c:2036
+#: builtin/am.c:2031
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
 msgstr ""
 
-#: builtin/am.c:2129
+#: builtin/am.c:2128
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr ""
 
-#: builtin/am.c:2165
+#: builtin/am.c:2164
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr ""
 
-#: builtin/am.c:2166
+#: builtin/am.c:2165
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr ""
 
-#: builtin/am.c:2172
+#: builtin/am.c:2171
 msgid "run interactively"
 msgstr ""
 
-#: builtin/am.c:2174
+#: builtin/am.c:2173
 msgid "historical option -- no-op"
 msgstr ""
 
-#: builtin/am.c:2176
+#: builtin/am.c:2175
 msgid "allow fall back on 3way merging if needed"
 msgstr ""
 
-#: builtin/am.c:2177 builtin/init-db.c:486 builtin/prune-packed.c:58
-#: builtin/repack.c:306
+#: builtin/am.c:2176 builtin/init-db.c:494 builtin/prune-packed.c:58
+#: builtin/repack.c:296 builtin/stash.c:806
 msgid "be quiet"
 msgstr ""
 
-#: builtin/am.c:2179
-msgid "add a Signed-off-by line to the commit message"
+#: builtin/am.c:2178
+msgid "add a Signed-off-by line to the commit message"
+msgstr ""
+
+#: builtin/am.c:2181
+msgid "recode into utf8 (default)"
+msgstr ""
+
+#: builtin/am.c:2183
+msgid "pass -k flag to git-mailinfo"
+msgstr ""
+
+#: builtin/am.c:2185
+msgid "pass -b flag to git-mailinfo"
+msgstr ""
+
+#: builtin/am.c:2187
+msgid "pass -m flag to git-mailinfo"
+msgstr ""
+
+#: builtin/am.c:2189
+msgid "pass --keep-cr flag to git-mailsplit for mbox format"
+msgstr ""
+
+#: builtin/am.c:2192
+msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
+msgstr ""
+
+#: builtin/am.c:2195
+msgid "strip everything before a scissors line"
+msgstr ""
+
+#: builtin/am.c:2197 builtin/am.c:2200 builtin/am.c:2203 builtin/am.c:2206
+#: builtin/am.c:2209 builtin/am.c:2212 builtin/am.c:2215 builtin/am.c:2218
+#: builtin/am.c:2224
+msgid "pass it through git-apply"
+msgstr ""
+
+#: builtin/am.c:2214 builtin/commit.c:1368 builtin/fmt-merge-msg.c:671
+#: builtin/fmt-merge-msg.c:674 builtin/grep.c:881 builtin/merge.c:249
+#: builtin/pull.c:159 builtin/pull.c:218 builtin/rebase.c:1418
+#: builtin/repack.c:307 builtin/repack.c:311 builtin/repack.c:313
+#: builtin/show-branch.c:650 builtin/show-ref.c:172 builtin/tag.c:403
+#: parse-options.h:141 parse-options.h:162 parse-options.h:312
+msgid "n"
+msgstr ""
+
+#: builtin/am.c:2220 builtin/branch.c:661 builtin/for-each-ref.c:38
+#: builtin/replace.c:554 builtin/tag.c:437 builtin/verify-tag.c:38
+msgid "format"
+msgstr ""
+
+#: builtin/am.c:2221
+msgid "format the patch(es) are in"
+msgstr ""
+
+#: builtin/am.c:2227
+msgid "override error message when patch failure occurs"
+msgstr ""
+
+#: builtin/am.c:2229
+msgid "continue applying patches after resolving a conflict"
+msgstr ""
+
+#: builtin/am.c:2232
+msgid "synonyms for --continue"
+msgstr ""
+
+#: builtin/am.c:2235
+msgid "skip the current patch"
+msgstr ""
+
+#: builtin/am.c:2238
+msgid "restore the original branch and abort the patching operation."
+msgstr ""
+
+#: builtin/am.c:2241
+msgid "abort the patching operation but keep HEAD where it is."
+msgstr ""
+
+#: builtin/am.c:2244
+msgid "show the patch being applied."
+msgstr ""
+
+#: builtin/am.c:2248
+msgid "lie about committer date"
+msgstr ""
+
+#: builtin/am.c:2250
+msgid "use current timestamp for author date"
+msgstr ""
+
+#: builtin/am.c:2252 builtin/commit-tree.c:120 builtin/commit.c:1511
+#: builtin/merge.c:286 builtin/pull.c:193 builtin/rebase.c:489
+#: builtin/rebase.c:1459 builtin/revert.c:117 builtin/tag.c:418
+msgid "key-id"
+msgstr ""
+
+#: builtin/am.c:2253 builtin/rebase.c:490 builtin/rebase.c:1460
+msgid "GPG-sign commits"
+msgstr ""
+
+#: builtin/am.c:2256
+msgid "(internal use for git-rebase)"
+msgstr ""
+
+#: builtin/am.c:2274
+msgid ""
+"The -b/--binary option has been a no-op for long time, and\n"
+"it will be removed. Please do not use it anymore."
+msgstr ""
+
+#: builtin/am.c:2281
+msgid "failed to read the index"
+msgstr ""
+
+#: builtin/am.c:2296
+#, c-format
+msgid "previous rebase directory %s still exists but mbox given."
+msgstr ""
+
+#: builtin/am.c:2320
+#, c-format
+msgid ""
+"Stray %s directory found.\n"
+"Use \"git am --abort\" to remove it."
+msgstr ""
+
+#: builtin/am.c:2326
+msgid "Resolve operation not in progress, we are not resuming."
+msgstr ""
+
+#: builtin/am.c:2336
+msgid "interactive mode requires patches on the command line"
+msgstr ""
+
+#: builtin/apply.c:8
+msgid "git apply [<options>] [<patch>...]"
+msgstr ""
+
+#: builtin/archive.c:17
+#, c-format
+msgid "could not create archive file '%s'"
+msgstr ""
+
+#: builtin/archive.c:20
+msgid "could not redirect output"
+msgstr ""
+
+#: builtin/archive.c:37
+msgid "git archive: Remote with no URL"
+msgstr ""
+
+#: builtin/archive.c:61
+msgid "git archive: expected ACK/NAK, got a flush packet"
+msgstr ""
+
+#: builtin/archive.c:64
+#, c-format
+msgid "git archive: NACK %s"
+msgstr ""
+
+#: builtin/archive.c:65
+msgid "git archive: protocol error"
+msgstr ""
+
+#: builtin/archive.c:69
+msgid "git archive: expected a flush"
+msgstr ""
+
+#: builtin/bisect--helper.c:22
+msgid "git bisect--helper --next-all [--no-checkout]"
+msgstr ""
+
+#: builtin/bisect--helper.c:23
+msgid "git bisect--helper --write-terms <bad_term> <good_term>"
+msgstr ""
+
+#: builtin/bisect--helper.c:24
+msgid "git bisect--helper --bisect-clean-state"
 msgstr ""
 
-#: builtin/am.c:2182
-msgid "recode into utf8 (default)"
+#: builtin/bisect--helper.c:25
+msgid "git bisect--helper --bisect-reset [<commit>]"
 msgstr ""
 
-#: builtin/am.c:2184
-msgid "pass -k flag to git-mailinfo"
+#: builtin/bisect--helper.c:26
+msgid ""
+"git bisect--helper --bisect-write [--no-log] <state> <revision> <good_term> "
+"<bad_term>"
 msgstr ""
 
-#: builtin/am.c:2186
-msgid "pass -b flag to git-mailinfo"
+#: builtin/bisect--helper.c:27
+msgid ""
+"git bisect--helper --bisect-check-and-set-terms <command> <good_term> "
+"<bad_term>"
 msgstr ""
 
-#: builtin/am.c:2188
-msgid "pass -m flag to git-mailinfo"
+#: builtin/bisect--helper.c:28
+msgid "git bisect--helper --bisect-next-check <good_term> <bad_term> [<term>]"
 msgstr ""
 
-#: builtin/am.c:2190
-msgid "pass --keep-cr flag to git-mailsplit for mbox format"
+#: builtin/bisect--helper.c:29
+msgid ""
+"git bisect--helper --bisect-terms [--term-good | --term-old | --term-bad | --"
+"term-new]"
 msgstr ""
 
-#: builtin/am.c:2193
-msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
+#: builtin/bisect--helper.c:30
+msgid ""
+"git bisect--helper --bisect-start [--term-{old,good}=<term> --term-{new,bad}"
+"=<term>][--no-checkout] [<bad> [<good>...]] [--] [<paths>...]"
 msgstr ""
 
-#: builtin/am.c:2196
-msgid "strip everything before a scissors line"
+#: builtin/bisect--helper.c:86
+#, c-format
+msgid "'%s' is not a valid term"
 msgstr ""
 
-#: builtin/am.c:2198 builtin/am.c:2201 builtin/am.c:2204 builtin/am.c:2207
-#: builtin/am.c:2210 builtin/am.c:2213 builtin/am.c:2216 builtin/am.c:2219
-#: builtin/am.c:2225
-msgid "pass it through git-apply"
+#: builtin/bisect--helper.c:90
+#, c-format
+msgid "can't use the builtin command '%s' as a term"
 msgstr ""
 
-#: builtin/am.c:2215 builtin/commit.c:1340 builtin/fmt-merge-msg.c:671
-#: builtin/fmt-merge-msg.c:674 builtin/grep.c:868 builtin/merge.c:239
-#: builtin/pull.c:151 builtin/pull.c:209 builtin/rebase.c:836
-#: builtin/repack.c:317 builtin/repack.c:321 builtin/repack.c:323
-#: builtin/show-branch.c:651 builtin/show-ref.c:171 builtin/tag.c:386
-#: parse-options.h:144 parse-options.h:146 parse-options.h:268
-msgid "n"
+#: builtin/bisect--helper.c:100
+#, c-format
+msgid "can't change the meaning of the term '%s'"
 msgstr ""
 
-#: builtin/am.c:2221 builtin/branch.c:637 builtin/for-each-ref.c:38
-#: builtin/replace.c:543 builtin/tag.c:422 builtin/verify-tag.c:39
-msgid "format"
+#: builtin/bisect--helper.c:111
+msgid "please use two different terms"
 msgstr ""
 
-#: builtin/am.c:2222
-msgid "format the patch(es) are in"
+#: builtin/bisect--helper.c:118
+msgid "could not open the file BISECT_TERMS"
 msgstr ""
 
-#: builtin/am.c:2228
-msgid "override error message when patch failure occurs"
+#: builtin/bisect--helper.c:155
+#, c-format
+msgid "We are not bisecting.\n"
 msgstr ""
 
-#: builtin/am.c:2230
-msgid "continue applying patches after resolving a conflict"
+#: builtin/bisect--helper.c:163
+#, c-format
+msgid "'%s' is not a valid commit"
 msgstr ""
 
-#: builtin/am.c:2233
-msgid "synonyms for --continue"
+#: builtin/bisect--helper.c:174
+#, c-format
+msgid ""
+"could not check out original HEAD '%s'. Try 'git bisect reset <commit>'."
 msgstr ""
 
-#: builtin/am.c:2236
-msgid "skip the current patch"
+#: builtin/bisect--helper.c:215
+#, c-format
+msgid "Bad bisect_write argument: %s"
 msgstr ""
 
-#: builtin/am.c:2239
-msgid "restore the original branch and abort the patching operation."
+#: builtin/bisect--helper.c:220
+#, c-format
+msgid "couldn't get the oid of the rev '%s'"
 msgstr ""
 
-#: builtin/am.c:2242
-msgid "abort the patching operation but keep HEAD where it is."
+#: builtin/bisect--helper.c:232
+#, c-format
+msgid "couldn't open the file '%s'"
 msgstr ""
 
-#: builtin/am.c:2245
-msgid "show the patch being applied."
+#: builtin/bisect--helper.c:258
+#, c-format
+msgid "Invalid command: you're currently in a %s/%s bisect"
 msgstr ""
 
-#: builtin/am.c:2249
-msgid "lie about committer date"
+#: builtin/bisect--helper.c:285
+#, c-format
+msgid ""
+"You need to give me at least one %s and %s revision.\n"
+"You can use \"git bisect %s\" and \"git bisect %s\" for that."
 msgstr ""
 
-#: builtin/am.c:2251
-msgid "use current timestamp for author date"
+#: builtin/bisect--helper.c:289
+#, c-format
+msgid ""
+"You need to start by \"git bisect start\".\n"
+"You then need to give me at least one %s and %s revision.\n"
+"You can use \"git bisect %s\" and \"git bisect %s\" for that."
 msgstr ""
 
-#: builtin/am.c:2253 builtin/commit.c:1483 builtin/merge.c:273
-#: builtin/pull.c:184 builtin/rebase.c:880 builtin/rebase--interactive.c:183
-#: builtin/revert.c:113 builtin/tag.c:402
-msgid "key-id"
+#: builtin/bisect--helper.c:321
+#, c-format
+msgid "bisecting only with a %s commit"
 msgstr ""
 
-#: builtin/am.c:2254 builtin/rebase.c:881 builtin/rebase--interactive.c:184
-msgid "GPG-sign commits"
+#. TRANSLATORS: Make sure to include [Y] and [n] in your
+#. translation. The program will only accept English input
+#. at this point.
+#.
+#: builtin/bisect--helper.c:329
+msgid "Are you sure [Y/n]? "
 msgstr ""
 
-#: builtin/am.c:2257
-msgid "(internal use for git-rebase)"
+#: builtin/bisect--helper.c:376
+msgid "no terms defined"
 msgstr ""
 
-#: builtin/am.c:2275
+#: builtin/bisect--helper.c:379
+#, c-format
 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."
+"Your current terms are %s for the old state\n"
+"and %s for the new state.\n"
 msgstr ""
 
-#: builtin/am.c:2282
-msgid "failed to read the index"
+#: builtin/bisect--helper.c:389
+#, c-format
+msgid ""
+"invalid argument %s for 'git bisect terms'.\n"
+"Supported options are: --term-good|--term-old and --term-bad|--term-new."
 msgstr ""
 
-#: builtin/am.c:2297
+#: builtin/bisect--helper.c:475
 #, c-format
-msgid "previous rebase directory %s still exists but mbox given."
+msgid "unrecognized option: '%s'"
 msgstr ""
 
-#: builtin/am.c:2321
+#: builtin/bisect--helper.c:479
 #, c-format
-msgid ""
-"Stray %s directory found.\n"
-"Use \"git am --abort\" to remove it."
+msgid "'%s' does not appear to be a valid revision"
 msgstr ""
 
-#: builtin/am.c:2327
-msgid "Resolve operation not in progress, we are not resuming."
+#: builtin/bisect--helper.c:511
+msgid "bad HEAD - I need a HEAD"
 msgstr ""
 
-#: builtin/apply.c:8
-msgid "git apply [<options>] [<patch>...]"
+#: builtin/bisect--helper.c:526
+#, c-format
+msgid "checking out '%s' failed. Try 'git bisect start <valid-branch>'."
 msgstr ""
 
-#: builtin/archive.c:17
-#, c-format
-msgid "could not create archive file '%s'"
+#: builtin/bisect--helper.c:547
+msgid "won't bisect on cg-seek'ed tree"
 msgstr ""
 
-#: builtin/archive.c:20
-msgid "could not redirect output"
+#: builtin/bisect--helper.c:550
+msgid "bad HEAD - strange symbolic ref"
 msgstr ""
 
-#: builtin/archive.c:37
-msgid "git archive: Remote with no URL"
+#: builtin/bisect--helper.c:574
+#, c-format
+msgid "invalid ref: '%s'"
 msgstr ""
 
-#: builtin/archive.c:58
-msgid "git archive: expected ACK/NAK, got a flush packet"
+#: builtin/bisect--helper.c:630
+msgid "perform 'git bisect next'"
 msgstr ""
 
-#: builtin/archive.c:61
-#, c-format
-msgid "git archive: NACK %s"
+#: builtin/bisect--helper.c:632
+msgid "write the terms to .git/BISECT_TERMS"
 msgstr ""
 
-#: builtin/archive.c:64
-msgid "git archive: protocol error"
+#: builtin/bisect--helper.c:634
+msgid "cleanup the bisection state"
 msgstr ""
 
-#: builtin/archive.c:68
-msgid "git archive: expected a flush"
+#: builtin/bisect--helper.c:636
+msgid "check for expected revs"
 msgstr ""
 
-#: builtin/bisect--helper.c:12
-msgid "git bisect--helper --next-all [--no-checkout]"
+#: builtin/bisect--helper.c:638
+msgid "reset the bisection state"
 msgstr ""
 
-#: builtin/bisect--helper.c:13
-msgid "git bisect--helper --write-terms <bad_term> <good_term>"
+#: builtin/bisect--helper.c:640
+msgid "write out the bisection state in BISECT_LOG"
 msgstr ""
 
-#: builtin/bisect--helper.c:14
-msgid "git bisect--helper --bisect-clean-state"
+#: builtin/bisect--helper.c:642
+msgid "check and set terms in a bisection state"
 msgstr ""
 
-#: builtin/bisect--helper.c:46
-#, c-format
-msgid "'%s' is not a valid term"
+#: builtin/bisect--helper.c:644
+msgid "check whether bad or good terms exist"
 msgstr ""
 
-#: builtin/bisect--helper.c:50
-#, c-format
-msgid "can't use the builtin command '%s' as a term"
+#: builtin/bisect--helper.c:646
+msgid "print out the bisect terms"
 msgstr ""
 
-#: builtin/bisect--helper.c:60
-#, c-format
-msgid "can't change the meaning of the term '%s'"
+#: builtin/bisect--helper.c:648
+msgid "start the bisect session"
 msgstr ""
 
-#: builtin/bisect--helper.c:71
-msgid "please use two different terms"
+#: builtin/bisect--helper.c:650
+msgid "update BISECT_HEAD instead of checking out the current commit"
 msgstr ""
 
-#: builtin/bisect--helper.c:78
-msgid "could not open the file BISECT_TERMS"
+#: builtin/bisect--helper.c:652
+msgid "no log for BISECT_WRITE"
 msgstr ""
 
-#: builtin/bisect--helper.c:120
-msgid "perform 'git bisect next'"
+#: builtin/bisect--helper.c:669
+msgid "--write-terms requires two arguments"
 msgstr ""
 
-#: builtin/bisect--helper.c:122
-msgid "write the terms to .git/BISECT_TERMS"
+#: builtin/bisect--helper.c:673
+msgid "--bisect-clean-state requires no arguments"
 msgstr ""
 
-#: builtin/bisect--helper.c:124
-msgid "cleanup the bisection state"
+#: builtin/bisect--helper.c:680
+msgid "--bisect-reset requires either no argument or a commit"
 msgstr ""
 
-#: builtin/bisect--helper.c:126
-msgid "check for expected revs"
+#: builtin/bisect--helper.c:684
+msgid "--bisect-write requires either 4 or 5 arguments"
 msgstr ""
 
-#: builtin/bisect--helper.c:128
-msgid "update BISECT_HEAD instead of checking out the current commit"
+#: builtin/bisect--helper.c:690
+msgid "--check-and-set-terms requires 3 arguments"
 msgstr ""
 
-#: builtin/bisect--helper.c:143
-msgid "--write-terms requires two arguments"
+#: builtin/bisect--helper.c:696
+msgid "--bisect-next-check requires 2 or 3 arguments"
 msgstr ""
 
-#: builtin/bisect--helper.c:147
-msgid "--bisect-clean-state requires no arguments"
+#: builtin/bisect--helper.c:702
+msgid "--bisect-terms requires 0 or 1 argument"
 msgstr ""
 
-#: builtin/blame.c:31
+#: builtin/blame.c:32
 msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
 msgstr ""
 
-#: builtin/blame.c:36
+#: builtin/blame.c:37
 msgid "<rev-opts> are documented in git-rev-list(1)"
 msgstr ""
 
-#: builtin/blame.c:406
+#: builtin/blame.c:410
 #, c-format
 msgid "expecting a color: %s"
 msgstr ""
 
-#: builtin/blame.c:413
+#: builtin/blame.c:417
 msgid "must end with a color"
 msgstr ""
 
-#: builtin/blame.c:700
+#: builtin/blame.c:730
 #, c-format
 msgid "invalid color '%s' in color.blame.repeatedLines"
 msgstr ""
 
-#: builtin/blame.c:718
+#: builtin/blame.c:748
 msgid "invalid value for blame.coloring"
 msgstr ""
 
-#: builtin/blame.c:793
+#: builtin/blame.c:823
+#, c-format
+msgid "cannot find revision %s to ignore"
+msgstr ""
+
+#: builtin/blame.c:845
 msgid "Show blame entries as we find them, incrementally"
 msgstr ""
 
-#: builtin/blame.c:794
+#: builtin/blame.c:846
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:795
+#: builtin/blame.c:847
 msgid "Do not treat root commits as boundaries (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:796
+#: builtin/blame.c:848
 msgid "Show work cost statistics"
 msgstr ""
 
-#: builtin/blame.c:797
+#: builtin/blame.c:849
 msgid "Force progress reporting"
 msgstr ""
 
-#: builtin/blame.c:798
+#: builtin/blame.c:850
 msgid "Show output score for blame entries"
 msgstr ""
 
-#: builtin/blame.c:799
+#: builtin/blame.c:851
 msgid "Show original filename (Default: auto)"
 msgstr ""
 
-#: builtin/blame.c:800
+#: builtin/blame.c:852
 msgid "Show original linenumber (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:801
+#: builtin/blame.c:853
 msgid "Show in a format designed for machine consumption"
 msgstr ""
 
-#: builtin/blame.c:802
+#: builtin/blame.c:854
 msgid "Show porcelain format with per-line commit information"
 msgstr ""
 
-#: builtin/blame.c:803
+#: builtin/blame.c:855
 msgid "Use the same output mode as git-annotate (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:804
+#: builtin/blame.c:856
 msgid "Show raw timestamp (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:805
+#: builtin/blame.c:857
 msgid "Show long commit SHA1 (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:806
+#: builtin/blame.c:858
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:807
+#: builtin/blame.c:859
 msgid "Show author email instead of name (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:808
+#: builtin/blame.c:860
 msgid "Ignore whitespace differences"
 msgstr ""
 
-#: builtin/blame.c:809
+#: builtin/blame.c:861 builtin/log.c:1629
+msgid "rev"
+msgstr ""
+
+#: builtin/blame.c:861
+msgid "Ignore <rev> when blaming"
+msgstr ""
+
+#: builtin/blame.c:862
+msgid "Ignore revisions from <file>"
+msgstr ""
+
+#: builtin/blame.c:863
 msgid "color redundant metadata from previous line differently"
 msgstr ""
 
-#: builtin/blame.c:810
+#: builtin/blame.c:864
 msgid "color lines by age"
 msgstr ""
 
-#: builtin/blame.c:817
+#: builtin/blame.c:871
 msgid "Use an experimental heuristic to improve diffs"
 msgstr ""
 
-#: builtin/blame.c:819
+#: builtin/blame.c:873
 msgid "Spend extra cycles to find better match"
 msgstr ""
 
-#: builtin/blame.c:820
+#: builtin/blame.c:874
 msgid "Use revisions from <file> instead of calling git-rev-list"
 msgstr ""
 
-#: builtin/blame.c:821
+#: builtin/blame.c:875
 msgid "Use <file>'s contents as the final image"
 msgstr ""
 
-#: builtin/blame.c:822 builtin/blame.c:823
+#: builtin/blame.c:876 builtin/blame.c:877
 msgid "score"
 msgstr ""
 
-#: builtin/blame.c:822
+#: builtin/blame.c:876
 msgid "Find line copies within and across files"
 msgstr ""
 
-#: builtin/blame.c:823
+#: builtin/blame.c:877
 msgid "Find line movements within and across files"
 msgstr ""
 
-#: builtin/blame.c:824
+#: builtin/blame.c:878
 msgid "n,m"
 msgstr ""
 
-#: builtin/blame.c:824
+#: builtin/blame.c:878
 msgid "Process only line range n,m, counting from 1"
 msgstr ""
 
-#: builtin/blame.c:873
+#: builtin/blame.c:929
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 
@@ -7418,18 +8833,18 @@ msgstr ""
 #. your language may need more or fewer display
 #. columns.
 #.
-#: builtin/blame.c:924
+#: builtin/blame.c:980
 msgid "4 years, 11 months ago"
 msgstr ""
 
-#: builtin/blame.c:1011
+#: builtin/blame.c:1087
 #, c-format
 msgid "file %s has only %lu line"
 msgid_plural "file %s has only %lu lines"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/blame.c:1057
+#: builtin/blame.c:1133
 msgid "Blaming lines"
 msgstr ""
 
@@ -7461,138 +8876,147 @@ msgstr ""
 msgid "git branch [<options>] [-r | -a] [--format]"
 msgstr ""
 
-#: builtin/branch.c:151
+#: builtin/branch.c:154
 #, c-format
 msgid ""
 "deleting branch '%s' that has been merged to\n"
 "         '%s', but not yet merged to HEAD."
 msgstr ""
 
-#: builtin/branch.c:155
+#: builtin/branch.c:158
 #, c-format
 msgid ""
 "not deleting branch '%s' that is not yet merged to\n"
 "         '%s', even though it is merged to HEAD."
 msgstr ""
 
-#: builtin/branch.c:169
+#: builtin/branch.c:172
 #, c-format
 msgid "Couldn't look up commit object for '%s'"
 msgstr ""
 
-#: builtin/branch.c:173
+#: builtin/branch.c:176
 #, c-format
 msgid ""
 "The branch '%s' is not fully merged.\n"
 "If you are sure you want to delete it, run 'git branch -D %s'."
 msgstr ""
 
-#: builtin/branch.c:186
+#: builtin/branch.c:189
 msgid "Update of config-file failed"
 msgstr ""
 
-#: builtin/branch.c:217
+#: builtin/branch.c:220
 msgid "cannot use -a with -d"
 msgstr ""
 
-#: builtin/branch.c:223
+#: builtin/branch.c:226
 msgid "Couldn't look up commit object for HEAD"
 msgstr ""
 
-#: builtin/branch.c:237
+#: builtin/branch.c:240
 #, c-format
 msgid "Cannot delete branch '%s' checked out at '%s'"
 msgstr ""
 
-#: builtin/branch.c:252
+#: builtin/branch.c:255
 #, c-format
 msgid "remote-tracking branch '%s' not found."
 msgstr ""
 
-#: builtin/branch.c:253
+#: builtin/branch.c:256
 #, c-format
 msgid "branch '%s' not found."
 msgstr ""
 
-#: builtin/branch.c:268
+#: builtin/branch.c:271
 #, c-format
 msgid "Error deleting remote-tracking branch '%s'"
 msgstr ""
 
-#: builtin/branch.c:269
+#: builtin/branch.c:272
 #, c-format
 msgid "Error deleting branch '%s'"
 msgstr ""
 
-#: builtin/branch.c:276
+#: builtin/branch.c:279
 #, c-format
 msgid "Deleted remote-tracking branch %s (was %s).\n"
 msgstr ""
 
-#: builtin/branch.c:277
+#: builtin/branch.c:280
 #, c-format
 msgid "Deleted branch %s (was %s).\n"
 msgstr ""
 
-#: builtin/branch.c:421 builtin/tag.c:59
+#: builtin/branch.c:429 builtin/tag.c:61
 msgid "unable to parse format string"
 msgstr ""
 
-#: builtin/branch.c:458
+#: builtin/branch.c:460
+msgid "could not resolve HEAD"
+msgstr ""
+
+#: builtin/branch.c:466
+#, c-format
+msgid "HEAD (%s) points outside of refs/heads/"
+msgstr ""
+
+#: builtin/branch.c:481
 #, c-format
 msgid "Branch %s is being rebased at %s"
 msgstr ""
 
-#: builtin/branch.c:462
+#: builtin/branch.c:485
 #, c-format
 msgid "Branch %s is being bisected at %s"
 msgstr ""
 
-#: builtin/branch.c:479
+#: builtin/branch.c:502
 msgid "cannot copy the current branch while not on any."
 msgstr ""
 
-#: builtin/branch.c:481
+#: builtin/branch.c:504
 msgid "cannot rename the current branch while not on any."
 msgstr ""
 
-#: builtin/branch.c:492
+#: builtin/branch.c:515
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr ""
 
-#: builtin/branch.c:519
+#: builtin/branch.c:542
 msgid "Branch rename failed"
 msgstr ""
 
-#: builtin/branch.c:521
+#: builtin/branch.c:544
 msgid "Branch copy failed"
 msgstr ""
 
-#: builtin/branch.c:525
+#: builtin/branch.c:548
 #, c-format
 msgid "Created a copy of a misnamed branch '%s'"
 msgstr ""
 
-#: builtin/branch.c:528
+#: builtin/branch.c:551
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr ""
 
-#: builtin/branch.c:534
+#: builtin/branch.c:557
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr ""
 
-#: builtin/branch.c:543
+#: builtin/branch.c:566
 msgid "Branch is renamed, but update of config-file failed"
 msgstr ""
 
-#: builtin/branch.c:545
+#: builtin/branch.c:568
 msgid "Branch is copied, but update of config-file failed"
 msgstr ""
 
-#: builtin/branch.c:561
+#: builtin/branch.c:584
 #, c-format
 msgid ""
 "Please edit the description for the branch\n"
@@ -7600,219 +9024,215 @@ msgid ""
 "Lines starting with '%c' will be stripped.\n"
 msgstr ""
 
-#: builtin/branch.c:594
+#: builtin/branch.c:618
 msgid "Generic options"
 msgstr ""
 
-#: builtin/branch.c:596
+#: builtin/branch.c:620
 msgid "show hash and subject, give twice for upstream branch"
 msgstr ""
 
-#: builtin/branch.c:597
+#: builtin/branch.c:621
 msgid "suppress informational messages"
 msgstr ""
 
-#: builtin/branch.c:598
+#: builtin/branch.c:622
 msgid "set up tracking mode (see git-pull(1))"
 msgstr ""
 
-#: builtin/branch.c:600
+#: builtin/branch.c:624
 msgid "do not use"
 msgstr ""
 
-#: builtin/branch.c:602 builtin/rebase--interactive.c:180
+#: builtin/branch.c:626 builtin/rebase.c:485
 msgid "upstream"
 msgstr ""
 
-#: builtin/branch.c:602
+#: builtin/branch.c:626
 msgid "change the upstream info"
 msgstr ""
 
-#: builtin/branch.c:603
+#: builtin/branch.c:627
 msgid "Unset the upstream info"
 msgstr ""
 
-#: builtin/branch.c:604
+#: builtin/branch.c:628
 msgid "use colored output"
 msgstr ""
 
-#: builtin/branch.c:605
+#: builtin/branch.c:629
 msgid "act on remote-tracking branches"
 msgstr ""
 
-#: builtin/branch.c:607 builtin/branch.c:609
+#: builtin/branch.c:631 builtin/branch.c:633
 msgid "print only branches that contain the commit"
 msgstr ""
 
-#: builtin/branch.c:608 builtin/branch.c:610
+#: builtin/branch.c:632 builtin/branch.c:634
 msgid "print only branches that don't contain the commit"
 msgstr ""
 
-#: builtin/branch.c:613
+#: builtin/branch.c:637
 msgid "Specific git-branch actions:"
 msgstr ""
 
-#: builtin/branch.c:614
+#: builtin/branch.c:638
 msgid "list both remote-tracking and local branches"
 msgstr ""
 
-#: builtin/branch.c:616
+#: builtin/branch.c:640
 msgid "delete fully merged branch"
 msgstr ""
 
-#: builtin/branch.c:617
+#: builtin/branch.c:641
 msgid "delete branch (even if not merged)"
 msgstr ""
 
-#: builtin/branch.c:618
+#: builtin/branch.c:642
 msgid "move/rename a branch and its reflog"
 msgstr ""
 
-#: builtin/branch.c:619
+#: builtin/branch.c:643
 msgid "move/rename a branch, even if target exists"
 msgstr ""
 
-#: builtin/branch.c:620
+#: builtin/branch.c:644
 msgid "copy a branch and its reflog"
 msgstr ""
 
-#: builtin/branch.c:621
+#: builtin/branch.c:645
 msgid "copy a branch, even if target exists"
 msgstr ""
 
-#: builtin/branch.c:622
+#: builtin/branch.c:646
 msgid "list branch names"
 msgstr ""
 
-#: builtin/branch.c:623
+#: builtin/branch.c:647
+msgid "show current branch name"
+msgstr ""
+
+#: builtin/branch.c:648
 msgid "create the branch's reflog"
 msgstr ""
 
-#: builtin/branch.c:625
+#: builtin/branch.c:650
 msgid "edit the description for the branch"
 msgstr ""
 
-#: builtin/branch.c:626
+#: builtin/branch.c:651
 msgid "force creation, move/rename, deletion"
 msgstr ""
 
-#: builtin/branch.c:627
+#: builtin/branch.c:652
 msgid "print only branches that are merged"
 msgstr ""
 
-#: builtin/branch.c:628
+#: builtin/branch.c:653
 msgid "print only branches that are not merged"
 msgstr ""
 
-#: builtin/branch.c:629
+#: builtin/branch.c:654
 msgid "list branches in columns"
 msgstr ""
 
-#: builtin/branch.c:630 builtin/for-each-ref.c:40 builtin/ls-remote.c:70
-#: builtin/tag.c:415
-msgid "key"
-msgstr ""
-
-#: builtin/branch.c:631 builtin/for-each-ref.c:41 builtin/ls-remote.c:71
-#: builtin/tag.c:416
-msgid "field name to sort on"
-msgstr ""
-
-#: builtin/branch.c:633 builtin/for-each-ref.c:43 builtin/notes.c:415
-#: builtin/notes.c:418 builtin/notes.c:578 builtin/notes.c:581
-#: builtin/tag.c:418
+#: builtin/branch.c:657 builtin/for-each-ref.c:42 builtin/notes.c:415
+#: builtin/notes.c:418 builtin/notes.c:581 builtin/notes.c:584
+#: builtin/tag.c:433
 msgid "object"
 msgstr ""
 
-#: builtin/branch.c:634
+#: builtin/branch.c:658
 msgid "print only branches of the object"
 msgstr ""
 
-#: builtin/branch.c:636 builtin/for-each-ref.c:49 builtin/tag.c:425
+#: builtin/branch.c:660 builtin/for-each-ref.c:48 builtin/tag.c:440
 msgid "sorting and filtering are case insensitive"
 msgstr ""
 
-#: builtin/branch.c:637 builtin/for-each-ref.c:38 builtin/tag.c:423
-#: builtin/verify-tag.c:39
+#: builtin/branch.c:661 builtin/for-each-ref.c:38 builtin/tag.c:438
+#: builtin/verify-tag.c:38
 msgid "format to use for the output"
 msgstr ""
 
-#: builtin/branch.c:660 builtin/clone.c:739
+#: builtin/branch.c:684 builtin/clone.c:761
 msgid "HEAD not found below refs/heads!"
 msgstr ""
 
-#: builtin/branch.c:683
+#: builtin/branch.c:708
 msgid "--column and --verbose are incompatible"
 msgstr ""
 
-#: builtin/branch.c:698 builtin/branch.c:749 builtin/branch.c:758
+#: builtin/branch.c:723 builtin/branch.c:777 builtin/branch.c:786
 msgid "branch name required"
 msgstr ""
 
-#: builtin/branch.c:725
+#: builtin/branch.c:753
 msgid "Cannot give description to detached HEAD"
 msgstr ""
 
-#: builtin/branch.c:730
+#: builtin/branch.c:758
 msgid "cannot edit description of more than one branch"
 msgstr ""
 
-#: builtin/branch.c:737
+#: builtin/branch.c:765
 #, c-format
 msgid "No commit on branch '%s' yet."
 msgstr ""
 
-#: builtin/branch.c:740
+#: builtin/branch.c:768
 #, c-format
 msgid "No branch named '%s'."
 msgstr ""
 
-#: builtin/branch.c:755
+#: builtin/branch.c:783
 msgid "too many branches for a copy operation"
 msgstr ""
 
-#: builtin/branch.c:764
+#: builtin/branch.c:792
 msgid "too many arguments for a rename operation"
 msgstr ""
 
-#: builtin/branch.c:769
+#: builtin/branch.c:797
 msgid "too many arguments to set new upstream"
 msgstr ""
 
-#: builtin/branch.c:773
+#: builtin/branch.c:801
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
 msgstr ""
 
-#: builtin/branch.c:776 builtin/branch.c:798
+#: builtin/branch.c:804 builtin/branch.c:827
 #, c-format
 msgid "no such branch '%s'"
 msgstr ""
 
-#: builtin/branch.c:780
+#: builtin/branch.c:808
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr ""
 
-#: builtin/branch.c:792
+#: builtin/branch.c:821
 msgid "too many arguments to unset upstream"
 msgstr ""
 
-#: builtin/branch.c:796
+#: builtin/branch.c:825
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr ""
 
-#: builtin/branch.c:802
+#: builtin/branch.c:831
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr ""
 
-#: builtin/branch.c:812
-msgid "-a and -r options to 'git branch' do not make sense with a branch name"
+#: builtin/branch.c:841
+msgid ""
+"The -a, and -r, options to 'git branch' do not take a branch name.\n"
+"Did you mean to use: -a|-r --list <pattern>?"
 msgstr ""
 
-#: builtin/branch.c:815
+#: builtin/branch.c:845
 msgid ""
 "the '--set-upstream' option is no longer supported. Please use '--track' or "
 "'--set-upstream-to' instead."
@@ -7831,144 +9251,144 @@ msgstr ""
 msgid "Need a repository to unbundle."
 msgstr ""
 
-#: builtin/cat-file.c:587
+#: builtin/cat-file.c:594
 msgid ""
 "git cat-file (-t [--allow-unknown-type] | -s [--allow-unknown-type] | -e | -"
 "p | <type> | --textconv | --filters) [--path=<path>] <object>"
 msgstr ""
 
-#: builtin/cat-file.c:588
+#: builtin/cat-file.c:595
 msgid ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
 msgstr ""
 
-#: builtin/cat-file.c:609
+#: builtin/cat-file.c:616
 msgid "only one batch option may be specified"
 msgstr ""
 
-#: builtin/cat-file.c:627
+#: builtin/cat-file.c:634
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr ""
 
-#: builtin/cat-file.c:628
+#: builtin/cat-file.c:635
 msgid "show object type"
 msgstr ""
 
-#: builtin/cat-file.c:629
+#: builtin/cat-file.c:636
 msgid "show object size"
 msgstr ""
 
-#: builtin/cat-file.c:631
+#: builtin/cat-file.c:638
 msgid "exit with zero when there's no error"
 msgstr ""
 
-#: builtin/cat-file.c:632
+#: builtin/cat-file.c:639
 msgid "pretty-print object's content"
 msgstr ""
 
-#: builtin/cat-file.c:634
+#: builtin/cat-file.c:641
 msgid "for blob objects, run textconv on object's content"
 msgstr ""
 
-#: builtin/cat-file.c:636
+#: builtin/cat-file.c:643
 msgid "for blob objects, run filters on object's content"
 msgstr ""
 
-#: builtin/cat-file.c:637 git-submodule.sh:857
+#: builtin/cat-file.c:644 git-submodule.sh:936
 msgid "blob"
 msgstr ""
 
-#: builtin/cat-file.c:638
+#: builtin/cat-file.c:645
 msgid "use a specific path for --textconv/--filters"
 msgstr ""
 
-#: builtin/cat-file.c:640
+#: builtin/cat-file.c:647
 msgid "allow -s and -t to work with broken/corrupt objects"
 msgstr ""
 
-#: builtin/cat-file.c:641
+#: builtin/cat-file.c:648
 msgid "buffer --batch output"
 msgstr ""
 
-#: builtin/cat-file.c:643
+#: builtin/cat-file.c:650
 msgid "show info and content of objects fed from the standard input"
 msgstr ""
 
-#: builtin/cat-file.c:647
+#: builtin/cat-file.c:654
 msgid "show info about objects fed from the standard input"
 msgstr ""
 
-#: builtin/cat-file.c:651
+#: builtin/cat-file.c:658
 msgid "follow in-tree symlinks (used with --batch or --batch-check)"
 msgstr ""
 
-#: builtin/cat-file.c:653
+#: builtin/cat-file.c:660
 msgid "show all objects with --batch or --batch-check"
 msgstr ""
 
-#: builtin/cat-file.c:655
+#: builtin/cat-file.c:662
 msgid "do not order --batch-all-objects output"
 msgstr ""
 
-#: builtin/check-attr.c:12
+#: builtin/check-attr.c:13
 msgid "git check-attr [-a | --all | <attr>...] [--] <pathname>..."
 msgstr ""
 
-#: builtin/check-attr.c:13
+#: builtin/check-attr.c:14
 msgid "git check-attr --stdin [-z] [-a | --all | <attr>...]"
 msgstr ""
 
-#: builtin/check-attr.c:20
+#: builtin/check-attr.c:21
 msgid "report all attributes set on file"
 msgstr ""
 
-#: builtin/check-attr.c:21
+#: builtin/check-attr.c:22
 msgid "use .gitattributes only from the index"
 msgstr ""
 
-#: builtin/check-attr.c:22 builtin/check-ignore.c:24 builtin/hash-object.c:101
+#: builtin/check-attr.c:23 builtin/check-ignore.c:25 builtin/hash-object.c:102
 msgid "read file names from stdin"
 msgstr ""
 
-#: builtin/check-attr.c:24 builtin/check-ignore.c:26
+#: builtin/check-attr.c:25 builtin/check-ignore.c:27
 msgid "terminate input and output records by a NUL character"
 msgstr ""
 
-#: builtin/check-ignore.c:20 builtin/checkout.c:1234 builtin/gc.c:517
-#: builtin/worktree.c:495
+#: builtin/check-ignore.c:21 builtin/checkout.c:1433 builtin/gc.c:538
+#: builtin/worktree.c:507
 msgid "suppress progress reporting"
 msgstr ""
 
-#: builtin/check-ignore.c:28
+#: builtin/check-ignore.c:29
 msgid "show non-matching input paths"
 msgstr ""
 
-#: builtin/check-ignore.c:30
+#: builtin/check-ignore.c:31
 msgid "ignore index when checking"
 msgstr ""
 
-#: builtin/check-ignore.c:159
+#: builtin/check-ignore.c:160
 msgid "cannot specify pathnames with --stdin"
 msgstr ""
 
-#: builtin/check-ignore.c:162
+#: builtin/check-ignore.c:163
 msgid "-z only makes sense with --stdin"
 msgstr ""
 
-#: builtin/check-ignore.c:164
+#: builtin/check-ignore.c:165
 msgid "no path specified"
 msgstr ""
 
-#: builtin/check-ignore.c:168
+#: builtin/check-ignore.c:169
 msgid "--quiet is only valid with a single pathname"
 msgstr ""
 
-#: builtin/check-ignore.c:170
+#: builtin/check-ignore.c:171
 msgid "cannot have both --quiet and --verbose"
 msgstr ""
 
-#: builtin/check-ignore.c:173
+#: builtin/check-ignore.c:174
 msgid "--non-matching is only valid with --verbose"
 msgstr ""
 
@@ -7989,54 +9409,54 @@ msgstr ""
 msgid "no contacts specified"
 msgstr ""
 
-#: builtin/checkout-index.c:128
+#: builtin/checkout-index.c:131
 msgid "git checkout-index [<options>] [--] [<file>...]"
 msgstr ""
 
-#: builtin/checkout-index.c:145
+#: builtin/checkout-index.c:148
 msgid "stage should be between 1 and 3 or all"
 msgstr ""
 
-#: builtin/checkout-index.c:161
+#: builtin/checkout-index.c:164
 msgid "check out all files in the index"
 msgstr ""
 
-#: builtin/checkout-index.c:162
+#: builtin/checkout-index.c:165
 msgid "force overwrite of existing files"
 msgstr ""
 
-#: builtin/checkout-index.c:164
+#: builtin/checkout-index.c:167
 msgid "no warning for existing files and files not in index"
 msgstr ""
 
-#: builtin/checkout-index.c:166
+#: builtin/checkout-index.c:169
 msgid "don't checkout new files"
 msgstr ""
 
-#: builtin/checkout-index.c:168
+#: builtin/checkout-index.c:171
 msgid "update stat information in the index file"
 msgstr ""
 
-#: builtin/checkout-index.c:172
+#: builtin/checkout-index.c:175
 msgid "read list of paths from the standard input"
 msgstr ""
 
-#: builtin/checkout-index.c:174
+#: builtin/checkout-index.c:177
 msgid "write the content to temporary files"
 msgstr ""
 
-#: builtin/checkout-index.c:175 builtin/column.c:31
-#: builtin/submodule--helper.c:1368 builtin/submodule--helper.c:1371
-#: builtin/submodule--helper.c:1379 builtin/submodule--helper.c:1853
-#: builtin/worktree.c:668
+#: builtin/checkout-index.c:178 builtin/column.c:31
+#: builtin/submodule--helper.c:1373 builtin/submodule--helper.c:1376
+#: builtin/submodule--helper.c:1384 builtin/submodule--helper.c:1857
+#: builtin/worktree.c:680
 msgid "string"
 msgstr ""
 
-#: builtin/checkout-index.c:176
+#: builtin/checkout-index.c:179
 msgid "when creating files, prepend <string>"
 msgstr ""
 
-#: builtin/checkout-index.c:178
+#: builtin/checkout-index.c:181
 msgid "copy out the files from named stage"
 msgstr ""
 
@@ -8048,105 +9468,161 @@ msgstr ""
 msgid "git checkout [<options>] [<branch>] -- <file>..."
 msgstr ""
 
-#: builtin/checkout.c:144 builtin/checkout.c:177
+#: builtin/checkout.c:37
+msgid "git switch [<options>] [<branch>]"
+msgstr ""
+
+#: builtin/checkout.c:42
+msgid "git restore [<options>] [--source=<branch>] <file>..."
+msgstr ""
+
+#: builtin/checkout.c:172 builtin/checkout.c:211
 #, c-format
 msgid "path '%s' does not have our version"
 msgstr ""
 
-#: builtin/checkout.c:146 builtin/checkout.c:179
+#: builtin/checkout.c:174 builtin/checkout.c:213
 #, c-format
 msgid "path '%s' does not have their version"
 msgstr ""
 
-#: builtin/checkout.c:162
+#: builtin/checkout.c:190
 #, c-format
 msgid "path '%s' does not have all necessary versions"
 msgstr ""
 
-#: builtin/checkout.c:206
+#: builtin/checkout.c:240
 #, c-format
 msgid "path '%s' does not have necessary versions"
 msgstr ""
 
-#: builtin/checkout.c:224
+#: builtin/checkout.c:258
 #, c-format
 msgid "path '%s': cannot merge"
 msgstr ""
 
-#: builtin/checkout.c:240
+#: builtin/checkout.c:274
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr ""
 
-#: builtin/checkout.c:262 builtin/checkout.c:265 builtin/checkout.c:268
-#: builtin/checkout.c:271
+#: builtin/checkout.c:374
+#, c-format
+msgid "Recreated %d merge conflict"
+msgid_plural "Recreated %d merge conflicts"
+msgstr[0] ""
+msgstr[1] ""
+
+#: builtin/checkout.c:379
+#, c-format
+msgid "Updated %d path from %s"
+msgid_plural "Updated %d paths from %s"
+msgstr[0] ""
+msgstr[1] ""
+
+#: builtin/checkout.c:386
+#, c-format
+msgid "Updated %d path from the index"
+msgid_plural "Updated %d paths from the index"
+msgstr[0] ""
+msgstr[1] ""
+
+#: builtin/checkout.c:409 builtin/checkout.c:412 builtin/checkout.c:415
+#: builtin/checkout.c:419
 #, c-format
 msgid "'%s' cannot be used with updating paths"
 msgstr ""
 
-#: builtin/checkout.c:274 builtin/checkout.c:277
+#: builtin/checkout.c:422 builtin/checkout.c:425
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr ""
 
-#: builtin/checkout.c:280
+#: builtin/checkout.c:429
 #, c-format
 msgid "Cannot update paths and switch to branch '%s' at the same time."
 msgstr ""
 
-#: builtin/checkout.c:349 builtin/checkout.c:356
+#: builtin/checkout.c:433
+#, c-format
+msgid "neither '%s' or '%s' is specified"
+msgstr ""
+
+#: builtin/checkout.c:437
+#, c-format
+msgid "'%s' must be used when '%s' is not specified"
+msgstr ""
+
+#: builtin/checkout.c:442 builtin/checkout.c:447
+#, c-format
+msgid "'%s' or '%s' cannot be used with %s"
+msgstr ""
+
+#: builtin/checkout.c:506 builtin/checkout.c:513
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr ""
 
-#: builtin/checkout.c:608
+#: builtin/checkout.c:679
 msgid "you need to resolve your current index first"
 msgstr ""
 
-#: builtin/checkout.c:745
+#: builtin/checkout.c:729
+#, c-format
+msgid ""
+"cannot continue with staged changes in the following files:\n"
+"%s"
+msgstr ""
+
+#: builtin/checkout.c:736
+#, c-format
+msgid "staged changes in the following files may be lost: %s"
+msgstr ""
+
+#: builtin/checkout.c:833
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr ""
 
-#: builtin/checkout.c:786
+#: builtin/checkout.c:875
 msgid "HEAD is now at"
 msgstr ""
 
-#: builtin/checkout.c:790 builtin/clone.c:692
+#: builtin/checkout.c:879 builtin/clone.c:714
 msgid "unable to update HEAD"
 msgstr ""
 
-#: builtin/checkout.c:794
+#: builtin/checkout.c:883
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:797
+#: builtin/checkout.c:886
 #, c-format
 msgid "Already on '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:801
+#: builtin/checkout.c:890
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:803 builtin/checkout.c:1166
+#: builtin/checkout.c:892 builtin/checkout.c:1289
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:805
+#: builtin/checkout.c:894
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:856
+#: builtin/checkout.c:945
 #, c-format
 msgid " ... and %d more.\n"
 msgstr ""
 
-#: builtin/checkout.c:862
+#: builtin/checkout.c:951
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -8161,7 +9637,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/checkout.c:881
+#: builtin/checkout.c:970
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -8178,166 +9654,231 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/checkout.c:913
+#: builtin/checkout.c:1005
 msgid "internal error in revision walk"
 msgstr ""
 
-#: builtin/checkout.c:917
+#: builtin/checkout.c:1009
 msgid "Previous HEAD position was"
 msgstr ""
 
-#: builtin/checkout.c:945 builtin/checkout.c:1161
+#: builtin/checkout.c:1049 builtin/checkout.c:1284
 msgid "You are on a branch yet to be born"
 msgstr ""
 
-#: builtin/checkout.c:1066
+#: builtin/checkout.c:1176
+msgid "only one reference expected"
+msgstr ""
+
+#: builtin/checkout.c:1193
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr ""
 
-#: builtin/checkout.c:1107 builtin/worktree.c:289 builtin/worktree.c:444
+#: builtin/checkout.c:1230
+#, c-format
+msgid ""
+"'%s' could be both a local file and a tracking branch.\n"
+"Please use -- (and optionally --no-guess) to disambiguate"
+msgstr ""
+
+#: builtin/checkout.c:1243 builtin/worktree.c:291 builtin/worktree.c:456
 #, c-format
 msgid "invalid reference: %s"
 msgstr ""
 
-#: builtin/checkout.c:1136
+#: builtin/checkout.c:1256 builtin/checkout.c:1618
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr ""
 
-#: builtin/checkout.c:1175
+#: builtin/checkout.c:1303
+#, c-format
+msgid "a branch is expected, got tag '%s'"
+msgstr ""
+
+#: builtin/checkout.c:1305
+#, c-format
+msgid "a branch is expected, got remote branch '%s'"
+msgstr ""
+
+#: builtin/checkout.c:1306 builtin/checkout.c:1314
+#, c-format
+msgid "a branch is expected, got '%s'"
+msgstr ""
+
+#: builtin/checkout.c:1309
+#, c-format
+msgid "a branch is expected, got commit '%s'"
+msgstr ""
+
+#: builtin/checkout.c:1325
+msgid ""
+"cannot switch branch while merging\n"
+"Consider \"git merge --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1329
+msgid ""
+"cannot switch branch in the middle of an am session\n"
+"Consider \"git am --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1333
+msgid ""
+"cannot switch branch while rebasing\n"
+"Consider \"git rebase --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1337
+msgid ""
+"cannot switch branch while cherry-picking\n"
+"Consider \"git cherry-pick --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1341
+msgid ""
+"cannot switch branch while reverting\n"
+"Consider \"git revert --quit\" or \"git worktree add\"."
+msgstr ""
+
+#: builtin/checkout.c:1345
+msgid "you are switching branch while bisecting"
+msgstr ""
+
+#: builtin/checkout.c:1352
 msgid "paths cannot be used with switching branches"
 msgstr ""
 
-#: builtin/checkout.c:1178 builtin/checkout.c:1182
+#: builtin/checkout.c:1355 builtin/checkout.c:1359 builtin/checkout.c:1363
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr ""
 
-#: builtin/checkout.c:1186 builtin/checkout.c:1189 builtin/checkout.c:1194
-#: builtin/checkout.c:1197
+#: builtin/checkout.c:1367 builtin/checkout.c:1370 builtin/checkout.c:1373
+#: builtin/checkout.c:1378 builtin/checkout.c:1383
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr ""
 
-#: builtin/checkout.c:1202
+#: builtin/checkout.c:1380
 #, c-format
-msgid "Cannot switch branch to a non-commit '%s'"
+msgid "'%s' cannot take <start-point>"
 msgstr ""
 
-#: builtin/checkout.c:1235 builtin/checkout.c:1237 builtin/clone.c:119
-#: builtin/remote.c:169 builtin/remote.c:171 builtin/worktree.c:488
-#: builtin/worktree.c:490
-msgid "branch"
+#: builtin/checkout.c:1388
+#, c-format
+msgid "Cannot switch branch to a non-commit '%s'"
 msgstr ""
 
-#: builtin/checkout.c:1236
-msgid "create and checkout a new branch"
+#: builtin/checkout.c:1395
+msgid "missing branch or commit argument"
 msgstr ""
 
-#: builtin/checkout.c:1238
-msgid "create/reset and checkout a branch"
+#: builtin/checkout.c:1437 builtin/clone.c:91 builtin/fetch.c:151
+#: builtin/merge.c:285 builtin/pull.c:137 builtin/push.c:575
+#: builtin/send-pack.c:174
+msgid "force progress reporting"
 msgstr ""
 
-#: builtin/checkout.c:1239
-msgid "create reflog for new branch"
+#: builtin/checkout.c:1438
+msgid "perform a 3-way merge with the new branch"
 msgstr ""
 
-#: builtin/checkout.c:1240 builtin/worktree.c:492
-msgid "detach HEAD at named commit"
+#: builtin/checkout.c:1439 builtin/log.c:1617 parse-options.h:318
+msgid "style"
 msgstr ""
 
-#: builtin/checkout.c:1241
-msgid "set upstream info for new branch"
+#: builtin/checkout.c:1440
+msgid "conflict style (merge or diff3)"
 msgstr ""
 
-#: builtin/checkout.c:1243
-msgid "new-branch"
+#: builtin/checkout.c:1452 builtin/worktree.c:504
+msgid "detach HEAD at named commit"
 msgstr ""
 
-#: builtin/checkout.c:1243
-msgid "new unparented branch"
+#: builtin/checkout.c:1453
+msgid "set upstream info for new branch"
 msgstr ""
 
-#: builtin/checkout.c:1245
-msgid "checkout our version for unmerged files"
+#: builtin/checkout.c:1455
+msgid "force checkout (throw away local modifications)"
 msgstr ""
 
-#: builtin/checkout.c:1248
-msgid "checkout their version for unmerged files"
+#: builtin/checkout.c:1457
+msgid "new-branch"
 msgstr ""
 
-#: builtin/checkout.c:1250
-msgid "force checkout (throw away local modifications)"
+#: builtin/checkout.c:1457
+msgid "new unparented branch"
 msgstr ""
 
-#: builtin/checkout.c:1252
-msgid "perform a 3-way merge with the new branch"
+#: builtin/checkout.c:1459 builtin/merge.c:288
+msgid "update ignored files (default)"
 msgstr ""
 
-#: builtin/checkout.c:1254 builtin/merge.c:275
-msgid "update ignored files (default)"
+#: builtin/checkout.c:1462
+msgid "do not check if another worktree is holding the given ref"
 msgstr ""
 
-#: builtin/checkout.c:1256 builtin/log.c:1573 parse-options.h:274
-msgid "style"
+#: builtin/checkout.c:1475
+msgid "checkout our version for unmerged files"
 msgstr ""
 
-#: builtin/checkout.c:1257
-msgid "conflict style (merge or diff3)"
+#: builtin/checkout.c:1478
+msgid "checkout their version for unmerged files"
 msgstr ""
 
-#: builtin/checkout.c:1260
+#: builtin/checkout.c:1482
 msgid "do not limit pathspecs to sparse entries only"
 msgstr ""
 
-#: builtin/checkout.c:1262
-msgid "second guess 'git checkout <no-such-branch>'"
+#: builtin/checkout.c:1533
+msgid "-b, -B and --orphan are mutually exclusive"
 msgstr ""
 
-#: builtin/checkout.c:1264
-msgid "do not check if another worktree is holding the given ref"
+#: builtin/checkout.c:1536
+msgid "-p and --overlay are mutually exclusive"
 msgstr ""
 
-#: builtin/checkout.c:1268 builtin/clone.c:86 builtin/fetch.c:141
-#: builtin/merge.c:272 builtin/pull.c:129 builtin/push.c:572
-#: builtin/send-pack.c:174
-msgid "force progress reporting"
+#: builtin/checkout.c:1573
+msgid "--track needs a branch name"
 msgstr ""
 
-#: builtin/checkout.c:1298
-msgid "-b, -B and --orphan are mutually exclusive"
+#: builtin/checkout.c:1578
+msgid "missing branch name; try -b"
 msgstr ""
 
-#: builtin/checkout.c:1315
-msgid "--track needs a branch name"
+#: builtin/checkout.c:1611
+#, c-format
+msgid "could not resolve %s"
 msgstr ""
 
-#: builtin/checkout.c:1320
-msgid "missing branch name; try -b"
+#: builtin/checkout.c:1623
+msgid "you must specify path(s) to restore"
 msgstr ""
 
-#: builtin/checkout.c:1357
+#: builtin/checkout.c:1631
 msgid "invalid path specification"
 msgstr ""
 
-#: builtin/checkout.c:1364
+#: builtin/checkout.c:1638
 #, c-format
 msgid "'%s' is not a commit and a branch '%s' cannot be created from it"
 msgstr ""
 
-#: builtin/checkout.c:1368
+#: builtin/checkout.c:1642
 #, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
 msgstr ""
 
-#: builtin/checkout.c:1372
+#: builtin/checkout.c:1646
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
 msgstr ""
 
-#: builtin/checkout.c:1392
+#: builtin/checkout.c:1666
 #, c-format
 msgid ""
 "'%s' matched more than one remote tracking branch.\n"
@@ -8354,37 +9895,104 @@ msgid ""
 "checkout.defaultRemote=origin in your config."
 msgstr ""
 
-#: builtin/clean.c:27
+#: builtin/checkout.c:1691 builtin/checkout.c:1693 builtin/checkout.c:1733
+#: builtin/checkout.c:1735 builtin/clone.c:121 builtin/remote.c:169
+#: builtin/remote.c:171 builtin/worktree.c:500 builtin/worktree.c:502
+msgid "branch"
+msgstr ""
+
+#: builtin/checkout.c:1692
+msgid "create and checkout a new branch"
+msgstr ""
+
+#: builtin/checkout.c:1694
+msgid "create/reset and checkout a branch"
+msgstr ""
+
+#: builtin/checkout.c:1695
+msgid "create reflog for new branch"
+msgstr ""
+
+#: builtin/checkout.c:1697
+msgid "second guess 'git checkout <no-such-branch>' (default)"
+msgstr ""
+
+#: builtin/checkout.c:1698
+msgid "use overlay mode (default)"
+msgstr ""
+
+#: builtin/checkout.c:1734
+msgid "create and switch to a new branch"
+msgstr ""
+
+#: builtin/checkout.c:1736
+msgid "create/reset and switch to a branch"
+msgstr ""
+
+#: builtin/checkout.c:1738
+msgid "second guess 'git switch <no-such-branch>'"
+msgstr ""
+
+#: builtin/checkout.c:1740
+msgid "throw away local modifications"
+msgstr ""
+
+#: builtin/checkout.c:1772
+msgid "which tree-ish to checkout from"
+msgstr ""
+
+#: builtin/checkout.c:1774
+msgid "restore the index"
+msgstr ""
+
+#: builtin/checkout.c:1776
+msgid "restore the working tree (default)"
+msgstr ""
+
+#: builtin/checkout.c:1778
+msgid "ignore unmerged entries"
+msgstr ""
+
+#: builtin/checkout.c:1779
+msgid "use overlay mode"
+msgstr ""
+
+#: builtin/clean.c:28
 msgid ""
 "git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <paths>..."
 msgstr ""
 
-#: builtin/clean.c:31
+#: builtin/clean.c:32
 #, c-format
 msgid "Removing %s\n"
 msgstr ""
 
-#: builtin/clean.c:32
+#: builtin/clean.c:33
 #, c-format
 msgid "Would remove %s\n"
 msgstr ""
 
-#: builtin/clean.c:33
+#: builtin/clean.c:34
 #, c-format
 msgid "Skipping repository %s\n"
 msgstr ""
 
-#: builtin/clean.c:34
+#: builtin/clean.c:35
 #, c-format
 msgid "Would skip repository %s\n"
 msgstr ""
 
-#: builtin/clean.c:35
+#: builtin/clean.c:36
 #, c-format
 msgid "failed to remove %s"
 msgstr ""
 
-#: builtin/clean.c:298 git-add--interactive.perl:579
+#: builtin/clean.c:37
+#, c-format
+msgid "could not lstat %s\n"
+msgstr ""
+
+#: builtin/clean.c:300 git-add--interactive.perl:593
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -8393,7 +10001,7 @@ msgid ""
 "           - (empty) select nothing\n"
 msgstr ""
 
-#: builtin/clean.c:302 git-add--interactive.perl:588
+#: builtin/clean.c:304 git-add--interactive.perl:602
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -8406,38 +10014,38 @@ msgid ""
 "           - (empty) finish selecting\n"
 msgstr ""
 
-#: builtin/clean.c:518 git-add--interactive.perl:554
-#: git-add--interactive.perl:559
+#: builtin/clean.c:520 git-add--interactive.perl:568
+#: git-add--interactive.perl:573
 #, c-format, perl-format
 msgid "Huh (%s)?\n"
 msgstr ""
 
-#: builtin/clean.c:660
+#: builtin/clean.c:662
 #, c-format
 msgid "Input ignore patterns>> "
 msgstr ""
 
-#: builtin/clean.c:697
+#: builtin/clean.c:699
 #, c-format
 msgid "WARNING: Cannot find items matched by: %s"
 msgstr ""
 
-#: builtin/clean.c:718
+#: builtin/clean.c:720
 msgid "Select items to delete"
 msgstr ""
 
 #. TRANSLATORS: Make sure to keep [y/N] as is
-#: builtin/clean.c:759
+#: builtin/clean.c:761
 #, c-format
 msgid "Remove %s [y/N]? "
 msgstr ""
 
-#: builtin/clean.c:784 git-add--interactive.perl:1717
+#: builtin/clean.c:786 git-add--interactive.perl:1763
 #, c-format
 msgid "Bye.\n"
 msgstr ""
 
-#: builtin/clean.c:792
+#: builtin/clean.c:794
 msgid ""
 "clean               - start cleaning\n"
 "filter by pattern   - exclude items from deletion\n"
@@ -8448,391 +10056,405 @@ msgid ""
 "?                   - help for prompt selection"
 msgstr ""
 
-#: builtin/clean.c:819 git-add--interactive.perl:1793
+#: builtin/clean.c:821 git-add--interactive.perl:1849
 msgid "*** Commands ***"
 msgstr ""
 
-#: builtin/clean.c:820 git-add--interactive.perl:1790
+#: builtin/clean.c:822 git-add--interactive.perl:1846
 msgid "What now"
 msgstr ""
 
-#: builtin/clean.c:828
+#: builtin/clean.c:830
 msgid "Would remove the following item:"
 msgid_plural "Would remove the following items:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/clean.c:844
+#: builtin/clean.c:846
 msgid "No more files to clean, exiting."
 msgstr ""
 
-#: builtin/clean.c:906
+#: builtin/clean.c:908
 msgid "do not print names of files removed"
 msgstr ""
 
-#: builtin/clean.c:908
+#: builtin/clean.c:910
 msgid "force"
 msgstr ""
 
-#: builtin/clean.c:909
+#: builtin/clean.c:911
 msgid "interactive cleaning"
 msgstr ""
 
-#: builtin/clean.c:911
+#: builtin/clean.c:913
 msgid "remove whole directories"
 msgstr ""
 
-#: builtin/clean.c:912 builtin/describe.c:545 builtin/describe.c:547
-#: builtin/grep.c:886 builtin/log.c:166 builtin/log.c:168
-#: builtin/ls-files.c:556 builtin/name-rev.c:415 builtin/name-rev.c:417
-#: builtin/show-ref.c:178
+#: builtin/clean.c:914 builtin/describe.c:546 builtin/describe.c:548
+#: builtin/grep.c:899 builtin/log.c:176 builtin/log.c:178
+#: builtin/ls-files.c:557 builtin/name-rev.c:413 builtin/name-rev.c:415
+#: builtin/show-ref.c:179
 msgid "pattern"
 msgstr ""
 
-#: builtin/clean.c:913
+#: builtin/clean.c:915
 msgid "add <pattern> to ignore rules"
 msgstr ""
 
-#: builtin/clean.c:914
+#: builtin/clean.c:916
 msgid "remove ignored files, too"
 msgstr ""
 
-#: builtin/clean.c:916
+#: builtin/clean.c:918
 msgid "remove only ignored files"
 msgstr ""
 
-#: builtin/clean.c:934
+#: builtin/clean.c:936
 msgid "-x and -X cannot be used together"
 msgstr ""
 
-#: builtin/clean.c:938
+#: builtin/clean.c:940
 msgid ""
 "clean.requireForce set to true and neither -i, -n, nor -f given; refusing to "
 "clean"
 msgstr ""
 
-#: builtin/clean.c:941
+#: builtin/clean.c:943
 msgid ""
 "clean.requireForce defaults to true and neither -i, -n, nor -f given; "
 "refusing to clean"
 msgstr ""
 
-#: builtin/clone.c:43
+#: builtin/clone.c:46
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr ""
 
-#: builtin/clone.c:88
+#: builtin/clone.c:93
 msgid "don't create a checkout"
 msgstr ""
 
-#: builtin/clone.c:89 builtin/clone.c:91 builtin/init-db.c:481
+#: builtin/clone.c:94 builtin/clone.c:96 builtin/init-db.c:489
 msgid "create a bare repository"
 msgstr ""
 
-#: builtin/clone.c:93
+#: builtin/clone.c:98
 msgid "create a mirror repository (implies bare)"
 msgstr ""
 
-#: builtin/clone.c:95
+#: builtin/clone.c:100
 msgid "to clone from a local repository"
 msgstr ""
 
-#: builtin/clone.c:97
+#: builtin/clone.c:102
 msgid "don't use local hardlinks, always copy"
 msgstr ""
 
-#: builtin/clone.c:99
+#: builtin/clone.c:104
 msgid "setup as shared repository"
 msgstr ""
 
-#: builtin/clone.c:101 builtin/clone.c:105
+#: builtin/clone.c:107
 msgid "pathspec"
 msgstr ""
 
-#: builtin/clone.c:101 builtin/clone.c:105
+#: builtin/clone.c:107
 msgid "initialize submodules in the clone"
 msgstr ""
 
-#: builtin/clone.c:108
+#: builtin/clone.c:110
 msgid "number of submodules cloned in parallel"
 msgstr ""
 
-#: builtin/clone.c:109 builtin/init-db.c:478
+#: builtin/clone.c:111 builtin/init-db.c:486
 msgid "template-directory"
 msgstr ""
 
-#: builtin/clone.c:110 builtin/init-db.c:479
+#: builtin/clone.c:112 builtin/init-db.c:487
 msgid "directory from which templates will be used"
 msgstr ""
 
-#: builtin/clone.c:112 builtin/clone.c:114 builtin/submodule--helper.c:1375
-#: builtin/submodule--helper.c:1856
+#: builtin/clone.c:114 builtin/clone.c:116 builtin/submodule--helper.c:1380
+#: builtin/submodule--helper.c:1860
 msgid "reference repository"
 msgstr ""
 
-#: builtin/clone.c:116 builtin/submodule--helper.c:1377
-#: builtin/submodule--helper.c:1858
+#: builtin/clone.c:118 builtin/submodule--helper.c:1382
+#: builtin/submodule--helper.c:1862
 msgid "use --reference only while cloning"
 msgstr ""
 
-#: builtin/clone.c:117 builtin/column.c:27 builtin/merge-file.c:46
-#: builtin/pack-objects.c:3299 builtin/repack.c:329
+#: builtin/clone.c:119 builtin/column.c:27 builtin/merge-file.c:46
+#: builtin/pack-objects.c:3314 builtin/repack.c:319
 msgid "name"
 msgstr ""
 
-#: builtin/clone.c:118
+#: builtin/clone.c:120
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr ""
 
-#: builtin/clone.c:120
+#: builtin/clone.c:122
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr ""
 
-#: builtin/clone.c:122
+#: builtin/clone.c:124
 msgid "path to git-upload-pack on the remote"
 msgstr ""
 
-#: builtin/clone.c:123 builtin/fetch.c:142 builtin/grep.c:825
-#: builtin/pull.c:217
+#: builtin/clone.c:125 builtin/fetch.c:152 builtin/grep.c:838
+#: builtin/pull.c:226
 msgid "depth"
 msgstr ""
 
-#: builtin/clone.c:124
+#: builtin/clone.c:126
 msgid "create a shallow clone of that depth"
 msgstr ""
 
-#: builtin/clone.c:125 builtin/fetch.c:144 builtin/pack-objects.c:3290
+#: builtin/clone.c:127 builtin/fetch.c:154 builtin/pack-objects.c:3303
 msgid "time"
 msgstr ""
 
-#: builtin/clone.c:126
+#: builtin/clone.c:128
 msgid "create a shallow clone since a specific time"
 msgstr ""
 
-#: builtin/clone.c:127 builtin/fetch.c:146 builtin/fetch.c:169
-#: builtin/rebase.c:813
+#: builtin/clone.c:129 builtin/fetch.c:156 builtin/fetch.c:179
+#: builtin/rebase.c:1395
 msgid "revision"
 msgstr ""
 
-#: builtin/clone.c:128 builtin/fetch.c:147
+#: builtin/clone.c:130 builtin/fetch.c:157
 msgid "deepen history of shallow clone, excluding rev"
 msgstr ""
 
-#: builtin/clone.c:130
+#: builtin/clone.c:132
 msgid "clone only one branch, HEAD or --branch"
 msgstr ""
 
-#: builtin/clone.c:132
+#: builtin/clone.c:134
 msgid "don't clone any tags, and make later fetches not to follow them"
 msgstr ""
 
-#: builtin/clone.c:134
+#: builtin/clone.c:136
 msgid "any cloned submodules will be shallow"
 msgstr ""
 
-#: builtin/clone.c:135 builtin/init-db.c:487
+#: builtin/clone.c:137 builtin/init-db.c:495
 msgid "gitdir"
 msgstr ""
 
-#: builtin/clone.c:136 builtin/init-db.c:488
+#: builtin/clone.c:138 builtin/init-db.c:496
 msgid "separate git dir from working tree"
 msgstr ""
 
-#: builtin/clone.c:137
+#: builtin/clone.c:139
 msgid "key=value"
 msgstr ""
 
-#: builtin/clone.c:138
+#: builtin/clone.c:140
 msgid "set config inside the new repository"
 msgstr ""
 
-#: builtin/clone.c:139 builtin/fetch.c:165 builtin/pull.c:230
-#: builtin/push.c:583
+#: builtin/clone.c:142 builtin/fetch.c:174 builtin/ls-remote.c:76
+#: builtin/push.c:585 builtin/send-pack.c:172
+msgid "server-specific"
+msgstr ""
+
+#: builtin/clone.c:142 builtin/fetch.c:174 builtin/ls-remote.c:76
+#: builtin/push.c:585 builtin/send-pack.c:173
+msgid "option to transmit"
+msgstr ""
+
+#: builtin/clone.c:143 builtin/fetch.c:175 builtin/pull.c:239
+#: builtin/push.c:586
 msgid "use IPv4 addresses only"
 msgstr ""
 
-#: builtin/clone.c:141 builtin/fetch.c:167 builtin/pull.c:233
-#: builtin/push.c:585
+#: builtin/clone.c:145 builtin/fetch.c:177 builtin/pull.c:242
+#: builtin/push.c:588
 msgid "use IPv6 addresses only"
 msgstr ""
 
-#: builtin/clone.c:279
+#: builtin/clone.c:149
+msgid "any cloned submodules will use their remote-tracking branch"
+msgstr ""
+
+#: builtin/clone.c:285
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
 msgstr ""
 
-#: builtin/clone.c:332
+#: builtin/clone.c:338
 #, c-format
 msgid "info: Could not add alternate for '%s': %s\n"
 msgstr ""
 
-#: builtin/clone.c:404
-#, c-format
-msgid "failed to open '%s'"
-msgstr ""
-
-#: builtin/clone.c:412
+#: builtin/clone.c:411
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr ""
 
-#: builtin/clone.c:426
+#: builtin/clone.c:428
 #, c-format
-msgid "failed to stat %s\n"
+msgid "failed to start iterator over '%s'"
 msgstr ""
 
-#: builtin/clone.c:443
+#: builtin/clone.c:453
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr ""
 
-#: builtin/clone.c:448
+#: builtin/clone.c:458
 #, c-format
 msgid "failed to create link '%s'"
 msgstr ""
 
-#: builtin/clone.c:452
+#: builtin/clone.c:462
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr ""
 
-#: builtin/clone.c:478
+#: builtin/clone.c:467
 #, c-format
-msgid "done.\n"
+msgid "failed to iterate over '%s'"
 msgstr ""
 
 #: builtin/clone.c:492
+#, c-format
+msgid "done.\n"
+msgstr ""
+
+#: builtin/clone.c:506
 msgid ""
 "Clone succeeded, but checkout failed.\n"
 "You can inspect what was checked out with 'git status'\n"
-"and retry the checkout with 'git checkout -f HEAD'\n"
+"and retry with 'git restore --source=HEAD :/'\n"
 msgstr ""
 
-#: builtin/clone.c:569
+#: builtin/clone.c:583
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr ""
 
-#: builtin/clone.c:680
+#: builtin/clone.c:702
 #, c-format
 msgid "unable to update %s"
 msgstr ""
 
-#: builtin/clone.c:730
+#: builtin/clone.c:752
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr ""
 
-#: builtin/clone.c:761
+#: builtin/clone.c:783
 msgid "unable to checkout working tree"
 msgstr ""
 
-#: builtin/clone.c:806
+#: builtin/clone.c:833
 msgid "unable to write parameters to config file"
 msgstr ""
 
-#: builtin/clone.c:869
+#: builtin/clone.c:896
 msgid "cannot repack to clean up"
 msgstr ""
 
-#: builtin/clone.c:871
+#: builtin/clone.c:898
 msgid "cannot unlink temporary alternates file"
 msgstr ""
 
-#: builtin/clone.c:911 builtin/receive-pack.c:1941
+#: builtin/clone.c:938 builtin/receive-pack.c:1950
 msgid "Too many arguments."
 msgstr ""
 
-#: builtin/clone.c:915
+#: builtin/clone.c:942
 msgid "You must specify a repository to clone."
 msgstr ""
 
-#: builtin/clone.c:928
+#: builtin/clone.c:955
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr ""
 
-#: builtin/clone.c:931
+#: builtin/clone.c:958
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr ""
 
-#: builtin/clone.c:944
+#: builtin/clone.c:971
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr ""
 
-#: builtin/clone.c:950 builtin/fetch.c:1606
+#: builtin/clone.c:977 builtin/fetch.c:1660
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr ""
 
-#: builtin/clone.c:960
+#: builtin/clone.c:987
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr ""
 
-#: builtin/clone.c:970
+#: builtin/clone.c:997
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr ""
 
-#: builtin/clone.c:985 builtin/clone.c:1006 builtin/difftool.c:271
-#: builtin/worktree.c:295 builtin/worktree.c:325
+#: builtin/clone.c:1012 builtin/clone.c:1033 builtin/difftool.c:264
+#: builtin/worktree.c:303 builtin/worktree.c:335
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr ""
 
-#: builtin/clone.c:990
+#: builtin/clone.c:1017
 #, c-format
 msgid "could not create work tree dir '%s'"
 msgstr ""
 
-#: builtin/clone.c:1010
+#: builtin/clone.c:1037
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr ""
 
-#: builtin/clone.c:1012
+#: builtin/clone.c:1039
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr ""
 
-#: builtin/clone.c:1036
+#: builtin/clone.c:1063
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
 msgstr ""
 
-#: builtin/clone.c:1097
+#: builtin/clone.c:1124
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr ""
 
-#: builtin/clone.c:1099
+#: builtin/clone.c:1126
 msgid "--shallow-since is ignored in local clones; use file:// instead."
 msgstr ""
 
-#: builtin/clone.c:1101
+#: builtin/clone.c:1128
 msgid "--shallow-exclude is ignored in local clones; use file:// instead."
 msgstr ""
 
-#: builtin/clone.c:1103
+#: builtin/clone.c:1130
 msgid "--filter is ignored in local clones; use file:// instead."
 msgstr ""
 
-#: builtin/clone.c:1106
+#: builtin/clone.c:1133
 msgid "source repository is shallow, ignoring --local"
 msgstr ""
 
-#: builtin/clone.c:1111
+#: builtin/clone.c:1138
 msgid "--local is ignored"
 msgstr ""
 
-#: builtin/clone.c:1181 builtin/clone.c:1189
+#: builtin/clone.c:1215 builtin/clone.c:1223
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr ""
 
-#: builtin/clone.c:1192
+#: builtin/clone.c:1226
 msgid "You appear to have cloned an empty repository."
 msgstr ""
 
@@ -8868,22 +10490,88 @@ msgstr ""
 msgid "--command must be the first argument"
 msgstr ""
 
-#: builtin/commit.c:40
+#: builtin/commit-tree.c:18
+msgid ""
+"git commit-tree [(-p <parent>)...] [-S[<keyid>]] [(-m <message>)...] [(-F "
+"<file>)...] <tree>"
+msgstr ""
+
+#: builtin/commit-tree.c:31
+#, c-format
+msgid "duplicate parent %s ignored"
+msgstr ""
+
+#: builtin/commit-tree.c:56 builtin/commit-tree.c:136 builtin/log.c:525
+#, c-format
+msgid "not a valid object name %s"
+msgstr ""
+
+#: builtin/commit-tree.c:93
+#, c-format
+msgid "git commit-tree: failed to open '%s'"
+msgstr ""
+
+#: builtin/commit-tree.c:96
+#, c-format
+msgid "git commit-tree: failed to read '%s'"
+msgstr ""
+
+#: builtin/commit-tree.c:98
+#, c-format
+msgid "git commit-tree: failed to close '%s'"
+msgstr ""
+
+#: builtin/commit-tree.c:111
+msgid "parent"
+msgstr ""
+
+#: builtin/commit-tree.c:112
+msgid "id of a parent commit object"
+msgstr ""
+
+#: builtin/commit-tree.c:114 builtin/commit.c:1500 builtin/merge.c:270
+#: builtin/notes.c:409 builtin/notes.c:575 builtin/stash.c:1460
+#: builtin/tag.c:412
+msgid "message"
+msgstr ""
+
+#: builtin/commit-tree.c:115 builtin/commit.c:1500
+msgid "commit message"
+msgstr ""
+
+#: builtin/commit-tree.c:118
+msgid "read commit log message from file"
+msgstr ""
+
+#: builtin/commit-tree.c:121 builtin/commit.c:1512 builtin/merge.c:287
+#: builtin/pull.c:194 builtin/revert.c:118
+msgid "GPG sign commit"
+msgstr ""
+
+#: builtin/commit-tree.c:133
+msgid "must give exactly one tree"
+msgstr ""
+
+#: builtin/commit-tree.c:140
+msgid "git commit-tree: failed to read"
+msgstr ""
+
+#: builtin/commit.c:41
 msgid "git commit [<options>] [--] <pathspec>..."
 msgstr ""
 
-#: builtin/commit.c:45
+#: builtin/commit.c:46
 msgid "git status [<options>] [--] <pathspec>..."
 msgstr ""
 
-#: builtin/commit.c:50
+#: builtin/commit.c:51
 msgid ""
 "You asked to amend the most recent commit, but doing so would make\n"
 "it empty. You can repeat your command with --allow-empty, or you can\n"
 "remove the commit entirely with \"git reset HEAD^\".\n"
 msgstr ""
 
-#: builtin/commit.c:55
+#: builtin/commit.c:56
 msgid ""
 "The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
 "If you wish to commit it anyway, use:\n"
@@ -8892,112 +10580,115 @@ msgid ""
 "\n"
 msgstr ""
 
-#: builtin/commit.c:62
-msgid "Otherwise, please use 'git reset'\n"
+#: builtin/commit.c:63
+msgid "Otherwise, please use 'git cherry-pick --skip'\n"
 msgstr ""
 
-#: builtin/commit.c:65
+#: builtin/commit.c:66
 msgid ""
+"and then use:\n"
+"\n"
+"    git cherry-pick --continue\n"
+"\n"
+"to resume cherry-picking the remaining commits.\n"
 "If you wish to skip this commit, use:\n"
 "\n"
-"    git reset\n"
+"    git cherry-pick --skip\n"
 "\n"
-"Then \"git cherry-pick --continue\" will resume cherry-picking\n"
-"the remaining commits.\n"
 msgstr ""
 
-#: builtin/commit.c:311
+#: builtin/commit.c:315
 msgid "failed to unpack HEAD tree object"
 msgstr ""
 
-#: builtin/commit.c:352
+#: builtin/commit.c:356
 msgid "unable to create temporary index"
 msgstr ""
 
-#: builtin/commit.c:358
+#: builtin/commit.c:362
 msgid "interactive add failed"
 msgstr ""
 
-#: builtin/commit.c:371
+#: builtin/commit.c:376
 msgid "unable to update temporary index"
 msgstr ""
 
-#: builtin/commit.c:373
+#: builtin/commit.c:378
 msgid "Failed to update main cache tree"
 msgstr ""
 
-#: builtin/commit.c:398 builtin/commit.c:421 builtin/commit.c:467
+#: builtin/commit.c:403 builtin/commit.c:426 builtin/commit.c:472
 msgid "unable to write new_index file"
 msgstr ""
 
-#: builtin/commit.c:450
+#: builtin/commit.c:455
 msgid "cannot do a partial commit during a merge."
 msgstr ""
 
-#: builtin/commit.c:452
+#: builtin/commit.c:457
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr ""
 
-#: builtin/commit.c:460
+#: builtin/commit.c:465
 msgid "cannot read the index"
 msgstr ""
 
-#: builtin/commit.c:479
+#: builtin/commit.c:484
 msgid "unable to write temporary index file"
 msgstr ""
 
-#: builtin/commit.c:577
+#: builtin/commit.c:582
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr ""
 
-#: builtin/commit.c:579
+#: builtin/commit.c:584
 #, c-format
 msgid "commit '%s' has malformed author line"
 msgstr ""
 
-#: builtin/commit.c:598
+#: builtin/commit.c:603
 msgid "malformed --author parameter"
 msgstr ""
 
-#: builtin/commit.c:650
+#: builtin/commit.c:656
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
 msgstr ""
 
-#: builtin/commit.c:687 builtin/commit.c:720 builtin/commit.c:1049
+#: builtin/commit.c:694 builtin/commit.c:727 builtin/commit.c:1072
 #, c-format
 msgid "could not lookup commit %s"
 msgstr ""
 
-#: builtin/commit.c:699 builtin/shortlog.c:317
+#: builtin/commit.c:706 builtin/shortlog.c:319
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr ""
 
-#: builtin/commit.c:701
+#: builtin/commit.c:708
 msgid "could not read log from standard input"
 msgstr ""
 
-#: builtin/commit.c:705
+#: builtin/commit.c:712
 #, c-format
 msgid "could not read log file '%s'"
 msgstr ""
 
-#: builtin/commit.c:734 builtin/commit.c:742
+#: builtin/commit.c:743 builtin/commit.c:759
 msgid "could not read SQUASH_MSG"
 msgstr ""
 
-#: builtin/commit.c:739
+#: builtin/commit.c:750
 msgid "could not read MERGE_MSG"
 msgstr ""
 
-#: builtin/commit.c:793
+#: builtin/commit.c:810
 msgid "could not write commit template"
 msgstr ""
 
-#: builtin/commit.c:811
+#: builtin/commit.c:829
 #, c-format
 msgid ""
 "\n"
@@ -9007,7 +10698,7 @@ msgid ""
 "and try again.\n"
 msgstr ""
 
-#: builtin/commit.c:816
+#: builtin/commit.c:834
 #, c-format
 msgid ""
 "\n"
@@ -9017,14 +10708,14 @@ msgid ""
 "and try again.\n"
 msgstr ""
 
-#: builtin/commit.c:829
+#: builtin/commit.c:847
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
 "with '%c' will be ignored, and an empty message aborts the commit.\n"
 msgstr ""
 
-#: builtin/commit.c:837
+#: builtin/commit.c:855
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -9032,398 +10723,393 @@ msgid ""
 "An empty message aborts the commit.\n"
 msgstr ""
 
-#: builtin/commit.c:854
+#: builtin/commit.c:872
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr ""
 
-#: builtin/commit.c:862
+#: builtin/commit.c:880
 #, c-format
 msgid "%sDate:      %s"
 msgstr ""
 
-#: builtin/commit.c:869
+#: builtin/commit.c:887
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr ""
 
-#: builtin/commit.c:887
+#: builtin/commit.c:905
 msgid "Cannot read index"
 msgstr ""
 
-#: builtin/commit.c:953
+#: builtin/commit.c:972
 msgid "Error building trees"
 msgstr ""
 
-#: builtin/commit.c:967 builtin/tag.c:258
+#: builtin/commit.c:986 builtin/tag.c:275
 #, c-format
 msgid "Please supply the message using either -m or -F option.\n"
 msgstr ""
 
-#: builtin/commit.c:1011
+#: builtin/commit.c:1030
 #, c-format
 msgid "--author '%s' is not 'Name <email>' and matches no existing author"
 msgstr ""
 
-#: builtin/commit.c:1025
+#: builtin/commit.c:1044
 #, c-format
 msgid "Invalid ignored mode '%s'"
 msgstr ""
 
-#: builtin/commit.c:1039 builtin/commit.c:1276
+#: builtin/commit.c:1062 builtin/commit.c:1304
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr ""
 
-#: builtin/commit.c:1077
+#: builtin/commit.c:1102
 msgid "--long and -z are incompatible"
 msgstr ""
 
-#: builtin/commit.c:1110
+#: builtin/commit.c:1146
 msgid "Using both --reset-author and --author does not make sense"
 msgstr ""
 
-#: builtin/commit.c:1119
+#: builtin/commit.c:1155
 msgid "You have nothing to amend."
 msgstr ""
 
-#: builtin/commit.c:1122
+#: builtin/commit.c:1158
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr ""
 
-#: builtin/commit.c:1124
+#: builtin/commit.c:1160
 msgid "You are in the middle of a cherry-pick -- cannot amend."
 msgstr ""
 
-#: builtin/commit.c:1127
+#: builtin/commit.c:1163
 msgid "Options --squash and --fixup cannot be used together"
 msgstr ""
 
-#: builtin/commit.c:1137
+#: builtin/commit.c:1173
 msgid "Only one of -c/-C/-F/--fixup can be used."
 msgstr ""
 
-#: builtin/commit.c:1139
+#: builtin/commit.c:1175
 msgid "Option -m cannot be combined with -c/-C/-F."
 msgstr ""
 
-#: builtin/commit.c:1147
+#: builtin/commit.c:1183
 msgid "--reset-author can be used only with -C, -c or --amend."
 msgstr ""
 
-#: builtin/commit.c:1164
+#: builtin/commit.c:1200
 msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
 msgstr ""
 
-#: builtin/commit.c:1166
+#: builtin/commit.c:1202
 msgid "No paths with --include/--only does not make sense."
 msgstr ""
 
-#: builtin/commit.c:1180 builtin/tag.c:546
+#: builtin/commit.c:1208
 #, c-format
-msgid "Invalid cleanup mode %s"
-msgstr ""
-
-#: builtin/commit.c:1185
-msgid "Paths with -a does not make sense."
+msgid "paths '%s ...' with -a does not make sense"
 msgstr ""
 
-#: builtin/commit.c:1311 builtin/commit.c:1495
+#: builtin/commit.c:1339 builtin/commit.c:1523
 msgid "show status concisely"
 msgstr ""
 
-#: builtin/commit.c:1313 builtin/commit.c:1497
+#: builtin/commit.c:1341 builtin/commit.c:1525
 msgid "show branch information"
 msgstr ""
 
-#: builtin/commit.c:1315
+#: builtin/commit.c:1343
 msgid "show stash information"
 msgstr ""
 
-#: builtin/commit.c:1317 builtin/commit.c:1499
+#: builtin/commit.c:1345 builtin/commit.c:1527
 msgid "compute full ahead/behind values"
 msgstr ""
 
-#: builtin/commit.c:1319
+#: builtin/commit.c:1347
 msgid "version"
 msgstr ""
 
-#: builtin/commit.c:1319 builtin/commit.c:1501 builtin/push.c:558
-#: builtin/worktree.c:639
+#: builtin/commit.c:1347 builtin/commit.c:1529 builtin/push.c:561
+#: builtin/worktree.c:651
 msgid "machine-readable output"
 msgstr ""
 
-#: builtin/commit.c:1322 builtin/commit.c:1503
+#: builtin/commit.c:1350 builtin/commit.c:1531
 msgid "show status in long format (default)"
 msgstr ""
 
-#: builtin/commit.c:1325 builtin/commit.c:1506
+#: builtin/commit.c:1353 builtin/commit.c:1534
 msgid "terminate entries with NUL"
 msgstr ""
 
-#: builtin/commit.c:1327 builtin/commit.c:1331 builtin/commit.c:1509
-#: builtin/fast-export.c:1007 builtin/fast-export.c:1010 builtin/rebase.c:892
-#: builtin/tag.c:400
+#: builtin/commit.c:1355 builtin/commit.c:1359 builtin/commit.c:1537
+#: builtin/fast-export.c:1125 builtin/fast-export.c:1128
+#: builtin/fast-export.c:1131 builtin/rebase.c:1471 parse-options.h:332
 msgid "mode"
 msgstr ""
 
-#: builtin/commit.c:1328 builtin/commit.c:1509
+#: builtin/commit.c:1356 builtin/commit.c:1537
 msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
 msgstr ""
 
-#: builtin/commit.c:1332
+#: builtin/commit.c:1360
 msgid ""
 "show ignored files, optional modes: traditional, matching, no. (Default: "
 "traditional)"
 msgstr ""
 
-#: builtin/commit.c:1334 parse-options.h:164
+#: builtin/commit.c:1362 parse-options.h:179
 msgid "when"
 msgstr ""
 
-#: builtin/commit.c:1335
+#: builtin/commit.c:1363
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
 msgstr ""
 
-#: builtin/commit.c:1337
+#: builtin/commit.c:1365
 msgid "list untracked files in columns"
 msgstr ""
 
-#: builtin/commit.c:1338
+#: builtin/commit.c:1366
 msgid "do not detect renames"
 msgstr ""
 
-#: builtin/commit.c:1340
+#: builtin/commit.c:1368
 msgid "detect renames, optionally set similarity index"
 msgstr ""
 
-#: builtin/commit.c:1360
+#: builtin/commit.c:1388
 msgid "Unsupported combination of ignored and untracked-files arguments"
 msgstr ""
 
-#: builtin/commit.c:1465
+#: builtin/commit.c:1493
 msgid "suppress summary after successful commit"
 msgstr ""
 
-#: builtin/commit.c:1466
+#: builtin/commit.c:1494
 msgid "show diff in commit message template"
 msgstr ""
 
-#: builtin/commit.c:1468
+#: builtin/commit.c:1496
 msgid "Commit message options"
 msgstr ""
 
-#: builtin/commit.c:1469 builtin/merge.c:263 builtin/tag.c:397
+#: builtin/commit.c:1497 builtin/merge.c:274 builtin/tag.c:414
 msgid "read message from file"
 msgstr ""
 
-#: builtin/commit.c:1470
+#: builtin/commit.c:1498
 msgid "author"
 msgstr ""
 
-#: builtin/commit.c:1470
+#: builtin/commit.c:1498
 msgid "override author for commit"
 msgstr ""
 
-#: builtin/commit.c:1471 builtin/gc.c:518
+#: builtin/commit.c:1499 builtin/gc.c:539
 msgid "date"
 msgstr ""
 
-#: builtin/commit.c:1471
+#: builtin/commit.c:1499
 msgid "override date for commit"
 msgstr ""
 
-#: builtin/commit.c:1472 builtin/merge.c:259 builtin/notes.c:409
-#: builtin/notes.c:572 builtin/tag.c:395
-msgid "message"
-msgstr ""
-
-#: builtin/commit.c:1472
-msgid "commit message"
-msgstr ""
-
-#: builtin/commit.c:1473 builtin/commit.c:1474 builtin/commit.c:1475
-#: builtin/commit.c:1476 ref-filter.h:92 parse-options.h:280
+#: builtin/commit.c:1501 builtin/commit.c:1502 builtin/commit.c:1503
+#: builtin/commit.c:1504 parse-options.h:324 ref-filter.h:92
 msgid "commit"
 msgstr ""
 
-#: builtin/commit.c:1473
+#: builtin/commit.c:1501
 msgid "reuse and edit message from specified commit"
 msgstr ""
 
-#: builtin/commit.c:1474
+#: builtin/commit.c:1502
 msgid "reuse message from specified commit"
 msgstr ""
 
-#: builtin/commit.c:1475
+#: builtin/commit.c:1503
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
 
-#: builtin/commit.c:1476
+#: builtin/commit.c:1504
 msgid "use autosquash formatted message to squash specified commit"
 msgstr ""
 
-#: builtin/commit.c:1477
+#: builtin/commit.c:1505
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr ""
 
-#: builtin/commit.c:1478 builtin/log.c:1520 builtin/merge.c:276
-#: builtin/pull.c:155 builtin/revert.c:106
+#: builtin/commit.c:1506 builtin/log.c:1564 builtin/merge.c:289
+#: builtin/pull.c:163 builtin/revert.c:110
 msgid "add Signed-off-by:"
 msgstr ""
 
-#: builtin/commit.c:1479
+#: builtin/commit.c:1507
 msgid "use specified template file"
 msgstr ""
 
-#: builtin/commit.c:1480
+#: builtin/commit.c:1508
 msgid "force edit of commit"
 msgstr ""
 
-#: builtin/commit.c:1481
-msgid "default"
-msgstr ""
-
-#: builtin/commit.c:1481 builtin/tag.c:401
-msgid "how to strip spaces and #comments from message"
-msgstr ""
-
-#: builtin/commit.c:1482
+#: builtin/commit.c:1510
 msgid "include status in commit message template"
 msgstr ""
 
-#: builtin/commit.c:1484 builtin/merge.c:274 builtin/pull.c:185
-#: builtin/revert.c:114
-msgid "GPG sign commit"
-msgstr ""
-
-#: builtin/commit.c:1487
+#: builtin/commit.c:1515
 msgid "Commit contents options"
 msgstr ""
 
-#: builtin/commit.c:1488
+#: builtin/commit.c:1516
 msgid "commit all changed files"
 msgstr ""
 
-#: builtin/commit.c:1489
+#: builtin/commit.c:1517
 msgid "add specified files to index for commit"
 msgstr ""
 
-#: builtin/commit.c:1490
+#: builtin/commit.c:1518
 msgid "interactively add files"
 msgstr ""
 
-#: builtin/commit.c:1491
+#: builtin/commit.c:1519
 msgid "interactively add changes"
 msgstr ""
 
-#: builtin/commit.c:1492
+#: builtin/commit.c:1520
 msgid "commit only specified files"
 msgstr ""
 
-#: builtin/commit.c:1493
+#: builtin/commit.c:1521
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr ""
 
-#: builtin/commit.c:1494
+#: builtin/commit.c:1522
 msgid "show what would be committed"
 msgstr ""
 
-#: builtin/commit.c:1507
+#: builtin/commit.c:1535
 msgid "amend previous commit"
 msgstr ""
 
-#: builtin/commit.c:1508
+#: builtin/commit.c:1536
 msgid "bypass post-rewrite hook"
 msgstr ""
 
-#: builtin/commit.c:1513
+#: builtin/commit.c:1541
 msgid "ok to record an empty change"
 msgstr ""
 
-#: builtin/commit.c:1515
+#: builtin/commit.c:1543
 msgid "ok to record a change with an empty message"
 msgstr ""
 
-#: builtin/commit.c:1588
+#: builtin/commit.c:1616
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr ""
 
-#: builtin/commit.c:1595
+#: builtin/commit.c:1623
 msgid "could not read MERGE_MODE"
 msgstr ""
 
-#: builtin/commit.c:1614
+#: builtin/commit.c:1642
 #, c-format
 msgid "could not read commit message: %s"
 msgstr ""
 
-#: builtin/commit.c:1625
+#: builtin/commit.c:1649
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr ""
 
-#: builtin/commit.c:1630
+#: builtin/commit.c:1654
 #, c-format
 msgid "Aborting commit; you did not edit the message.\n"
 msgstr ""
 
-#: builtin/commit.c:1665
+#: builtin/commit.c:1688
 msgid ""
 "repository has been updated, but unable to write\n"
 "new_index file. Check that disk is not full and quota is\n"
-"not exceeded, and then \"git reset HEAD\" to recover."
+"not exceeded, and then \"git restore --staged :/\" to recover."
 msgstr ""
 
-#: builtin/commit-graph.c:10
+#: builtin/commit-graph.c:11
 msgid "git commit-graph [--object-dir <objdir>]"
 msgstr ""
 
-#: builtin/commit-graph.c:11 builtin/commit-graph.c:23
+#: builtin/commit-graph.c:12 builtin/commit-graph.c:24
 msgid "git commit-graph read [--object-dir <objdir>]"
 msgstr ""
 
-#: builtin/commit-graph.c:12 builtin/commit-graph.c:18
-msgid "git commit-graph verify [--object-dir <objdir>]"
+#: builtin/commit-graph.c:13 builtin/commit-graph.c:19
+msgid "git commit-graph verify [--object-dir <objdir>] [--shallow]"
 msgstr ""
 
-#: builtin/commit-graph.c:13 builtin/commit-graph.c:28
+#: builtin/commit-graph.c:14 builtin/commit-graph.c:29
 msgid ""
-"git commit-graph write [--object-dir <objdir>] [--append] [--reachable|--"
-"stdin-packs|--stdin-commits]"
+"git commit-graph write [--object-dir <objdir>] [--append|--split] [--"
+"reachable|--stdin-packs|--stdin-commits] <split options>"
 msgstr ""
 
-#: builtin/commit-graph.c:48 builtin/commit-graph.c:78
-#: builtin/commit-graph.c:132 builtin/commit-graph.c:190 builtin/fetch.c:153
-#: builtin/log.c:1540
+#: builtin/commit-graph.c:54 builtin/commit-graph.c:100
+#: builtin/commit-graph.c:161 builtin/commit-graph.c:237 builtin/fetch.c:163
+#: builtin/log.c:1584
 msgid "dir"
 msgstr ""
 
-#: builtin/commit-graph.c:49 builtin/commit-graph.c:79
-#: builtin/commit-graph.c:133 builtin/commit-graph.c:191
+#: builtin/commit-graph.c:55 builtin/commit-graph.c:101
+#: builtin/commit-graph.c:162 builtin/commit-graph.c:238
 msgid "The object directory to store the graph"
 msgstr ""
 
-#: builtin/commit-graph.c:135
+#: builtin/commit-graph.c:57
+msgid "if the commit-graph is split, only verify the tip file"
+msgstr ""
+
+#: builtin/commit-graph.c:73 builtin/commit-graph.c:116
+#, c-format
+msgid "Could not open commit-graph '%s'"
+msgstr ""
+
+#: builtin/commit-graph.c:164
 msgid "start walk at all refs"
 msgstr ""
 
-#: builtin/commit-graph.c:137
+#: builtin/commit-graph.c:166
 msgid "scan pack-indexes listed by stdin for commits"
 msgstr ""
 
-#: builtin/commit-graph.c:139
+#: builtin/commit-graph.c:168
 msgid "start walk at commits listed by stdin"
 msgstr ""
 
-#: builtin/commit-graph.c:141
+#: builtin/commit-graph.c:170
 msgid "include all commits already in the commit-graph file"
 msgstr ""
 
-#: builtin/commit-graph.c:150
+#: builtin/commit-graph.c:172
+msgid "allow writing an incremental commit-graph file"
+msgstr ""
+
+#: builtin/commit-graph.c:174 builtin/commit-graph.c:178
+msgid "maximum number of commits in a non-base split commit-graph"
+msgstr ""
+
+#: builtin/commit-graph.c:176
+msgid "maximum ratio between two levels of a split commit-graph"
+msgstr ""
+
+#: builtin/commit-graph.c:191
 msgid "use at most one of --reachable, --stdin-commits, or --stdin-packs"
 msgstr ""
 
@@ -9431,7 +11117,7 @@ msgstr ""
 msgid "git config [<options>]"
 msgstr ""
 
-#: builtin/config.c:103
+#: builtin/config.c:103 builtin/env--helper.c:23
 #, c-format
 msgid "unrecognized --type argument, %s"
 msgstr ""
@@ -9536,7 +11222,7 @@ msgstr ""
 msgid "Type"
 msgstr ""
 
-#: builtin/config.c:147
+#: builtin/config.c:147 builtin/env--helper.c:38
 msgid "value is given this type"
 msgstr ""
 
@@ -9580,7 +11266,7 @@ msgstr ""
 msgid "show origin of config (file, standard input, blob, command line)"
 msgstr ""
 
-#: builtin/config.c:158
+#: builtin/config.c:158 builtin/env--helper.c:40
 msgid "value"
 msgstr ""
 
@@ -9588,48 +11274,48 @@ msgstr ""
 msgid "with --get, use default value when missing entry"
 msgstr ""
 
-#: builtin/config.c:171
+#: builtin/config.c:172
 #, c-format
 msgid "wrong number of arguments, should be %d"
 msgstr ""
 
-#: builtin/config.c:173
+#: builtin/config.c:174
 #, c-format
 msgid "wrong number of arguments, should be from %d to %d"
 msgstr ""
 
-#: builtin/config.c:307
+#: builtin/config.c:308
 #, c-format
 msgid "invalid key pattern: %s"
 msgstr ""
 
-#: builtin/config.c:343
+#: builtin/config.c:344
 #, c-format
 msgid "failed to format default config value: %s"
 msgstr ""
 
-#: builtin/config.c:400
+#: builtin/config.c:401
 #, c-format
 msgid "cannot parse color '%s'"
 msgstr ""
 
-#: builtin/config.c:442
+#: builtin/config.c:443
 msgid "unable to parse default color value"
 msgstr ""
 
-#: builtin/config.c:495 builtin/config.c:741
+#: builtin/config.c:496 builtin/config.c:742
 msgid "not in a git directory"
 msgstr ""
 
-#: builtin/config.c:498
+#: builtin/config.c:499
 msgid "writing to stdin is not supported"
 msgstr ""
 
-#: builtin/config.c:501
+#: builtin/config.c:502
 msgid "writing config blobs is not supported"
 msgstr ""
 
-#: builtin/config.c:586
+#: builtin/config.c:587
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -9639,81 +11325,81 @@ msgid ""
 "#\temail = %s\n"
 msgstr ""
 
-#: builtin/config.c:610
+#: builtin/config.c:611
 msgid "only one config file at a time"
 msgstr ""
 
-#: builtin/config.c:615
+#: builtin/config.c:616
 msgid "--local can only be used inside a git repository"
 msgstr ""
 
-#: builtin/config.c:618
+#: builtin/config.c:619
 msgid "--blob can only be used inside a git repository"
 msgstr ""
 
-#: builtin/config.c:637
+#: builtin/config.c:638
 msgid "$HOME not set"
 msgstr ""
 
-#: builtin/config.c:657
+#: builtin/config.c:658
 msgid ""
 "--worktree cannot be used with multiple working trees unless the config\n"
 "extension worktreeConfig is enabled. Please read \"CONFIGURATION FILE\"\n"
 "section in \"git help worktree\" for details"
 msgstr ""
 
-#: builtin/config.c:687
+#: builtin/config.c:688
 msgid "--get-color and variable type are incoherent"
 msgstr ""
 
-#: builtin/config.c:692
+#: builtin/config.c:693
 msgid "only one action at a time"
 msgstr ""
 
-#: builtin/config.c:705
+#: builtin/config.c:706
 msgid "--name-only is only applicable to --list or --get-regexp"
 msgstr ""
 
-#: builtin/config.c:711
+#: builtin/config.c:712
 msgid ""
 "--show-origin is only applicable to --get, --get-all, --get-regexp, and --"
 "list"
 msgstr ""
 
-#: builtin/config.c:717
+#: builtin/config.c:718
 msgid "--default is only applicable to --get"
 msgstr ""
 
-#: builtin/config.c:730
+#: builtin/config.c:731
 #, c-format
 msgid "unable to read config file '%s'"
 msgstr ""
 
-#: builtin/config.c:733
+#: builtin/config.c:734
 msgid "error processing config file(s)"
 msgstr ""
 
-#: builtin/config.c:743
+#: builtin/config.c:744
 msgid "editing stdin is not supported"
 msgstr ""
 
-#: builtin/config.c:745
+#: builtin/config.c:746
 msgid "editing blobs is not supported"
 msgstr ""
 
-#: builtin/config.c:759
+#: builtin/config.c:760
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr ""
 
-#: builtin/config.c:772
+#: builtin/config.c:773
 #, c-format
 msgid ""
 "cannot overwrite multiple values with a single value\n"
 "       Use a regexp, --add or --replace-all to change %s."
 msgstr ""
 
-#: builtin/config.c:846 builtin/config.c:857
+#: builtin/config.c:847 builtin/config.c:858
 #, c-format
 msgid "no such section: %s"
 msgstr ""
@@ -9726,194 +11412,194 @@ msgstr ""
 msgid "print sizes in human readable format"
 msgstr ""
 
-#: builtin/describe.c:26
+#: builtin/describe.c:27
 msgid "git describe [<options>] [<commit-ish>...]"
 msgstr ""
 
-#: builtin/describe.c:27
+#: builtin/describe.c:28
 msgid "git describe [<options>] --dirty"
 msgstr ""
 
-#: builtin/describe.c:62
+#: builtin/describe.c:63
 msgid "head"
 msgstr ""
 
-#: builtin/describe.c:62
+#: builtin/describe.c:63
 msgid "lightweight"
 msgstr ""
 
-#: builtin/describe.c:62
+#: builtin/describe.c:63
 msgid "annotated"
 msgstr ""
 
-#: builtin/describe.c:272
+#: builtin/describe.c:273
 #, c-format
 msgid "annotated tag %s not available"
 msgstr ""
 
-#: builtin/describe.c:276
+#: builtin/describe.c:277
 #, c-format
 msgid "annotated tag %s has no embedded name"
 msgstr ""
 
-#: builtin/describe.c:278
+#: builtin/describe.c:279
 #, c-format
 msgid "tag '%s' is really '%s' here"
 msgstr ""
 
-#: builtin/describe.c:322
+#: builtin/describe.c:323
 #, c-format
 msgid "no tag exactly matches '%s'"
 msgstr ""
 
-#: builtin/describe.c:324
+#: builtin/describe.c:325
 #, c-format
 msgid "No exact match on refs or tags, searching to describe\n"
 msgstr ""
 
-#: builtin/describe.c:378
+#: builtin/describe.c:379
 #, c-format
 msgid "finished search at %s\n"
 msgstr ""
 
-#: builtin/describe.c:404
+#: builtin/describe.c:405
 #, c-format
 msgid ""
 "No annotated tags can describe '%s'.\n"
 "However, there were unannotated tags: try --tags."
 msgstr ""
 
-#: builtin/describe.c:408
+#: builtin/describe.c:409
 #, c-format
 msgid ""
 "No tags can describe '%s'.\n"
 "Try --always, or create some tags."
 msgstr ""
 
-#: builtin/describe.c:438
+#: builtin/describe.c:439
 #, c-format
 msgid "traversed %lu commits\n"
 msgstr ""
 
-#: builtin/describe.c:441
+#: builtin/describe.c:442
 #, c-format
 msgid ""
 "more than %i tags found; listed %i most recent\n"
 "gave up search at %s\n"
 msgstr ""
 
-#: builtin/describe.c:509
+#: builtin/describe.c:510
 #, c-format
 msgid "describe %s\n"
 msgstr ""
 
-#: builtin/describe.c:512 builtin/log.c:513
+#: builtin/describe.c:513
 #, c-format
 msgid "Not a valid object name %s"
 msgstr ""
 
-#: builtin/describe.c:520
+#: builtin/describe.c:521
 #, c-format
 msgid "%s is neither a commit nor blob"
 msgstr ""
 
-#: builtin/describe.c:534
+#: builtin/describe.c:535
 msgid "find the tag that comes after the commit"
 msgstr ""
 
-#: builtin/describe.c:535
+#: builtin/describe.c:536
 msgid "debug search strategy on stderr"
 msgstr ""
 
-#: builtin/describe.c:536
+#: builtin/describe.c:537
 msgid "use any ref"
 msgstr ""
 
-#: builtin/describe.c:537
+#: builtin/describe.c:538
 msgid "use any tag, even unannotated"
 msgstr ""
 
-#: builtin/describe.c:538
+#: builtin/describe.c:539
 msgid "always use long format"
 msgstr ""
 
-#: builtin/describe.c:539
+#: builtin/describe.c:540
 msgid "only follow first parent"
 msgstr ""
 
-#: builtin/describe.c:542
+#: builtin/describe.c:543
 msgid "only output exact matches"
 msgstr ""
 
-#: builtin/describe.c:544
+#: builtin/describe.c:545
 msgid "consider <n> most recent tags (default: 10)"
 msgstr ""
 
-#: builtin/describe.c:546
+#: builtin/describe.c:547
 msgid "only consider tags matching <pattern>"
 msgstr ""
 
-#: builtin/describe.c:548
+#: builtin/describe.c:549
 msgid "do not consider tags matching <pattern>"
 msgstr ""
 
-#: builtin/describe.c:550 builtin/name-rev.c:424
+#: builtin/describe.c:551 builtin/name-rev.c:422
 msgid "show abbreviated commit object as fallback"
 msgstr ""
 
-#: builtin/describe.c:551 builtin/describe.c:554
+#: builtin/describe.c:552 builtin/describe.c:555
 msgid "mark"
 msgstr ""
 
-#: builtin/describe.c:552
+#: builtin/describe.c:553
 msgid "append <mark> on dirty working tree (default: \"-dirty\")"
 msgstr ""
 
-#: builtin/describe.c:555
+#: builtin/describe.c:556
 msgid "append <mark> on broken working tree (default: \"-broken\")"
 msgstr ""
 
-#: builtin/describe.c:573
+#: builtin/describe.c:574
 msgid "--long is incompatible with --abbrev=0"
 msgstr ""
 
-#: builtin/describe.c:602
+#: builtin/describe.c:603
 msgid "No names found, cannot describe anything."
 msgstr ""
 
-#: builtin/describe.c:652
+#: builtin/describe.c:654
 msgid "--dirty is incompatible with commit-ishes"
 msgstr ""
 
-#: builtin/describe.c:654
+#: builtin/describe.c:656
 msgid "--broken is incompatible with commit-ishes"
 msgstr ""
 
-#: builtin/diff.c:83
+#: builtin/diff.c:84
 #, c-format
 msgid "'%s': not a regular file or symlink"
 msgstr ""
 
-#: builtin/diff.c:234
+#: builtin/diff.c:235
 #, c-format
 msgid "invalid option: %s"
 msgstr ""
 
-#: builtin/diff.c:363
+#: builtin/diff.c:350
 msgid "Not a git repository"
 msgstr ""
 
-#: builtin/diff.c:407
+#: builtin/diff.c:394
 #, c-format
 msgid "invalid object '%s' given."
 msgstr ""
 
-#: builtin/diff.c:416
+#: builtin/diff.c:403
 #, c-format
 msgid "more than two blobs given: '%s'"
 msgstr ""
 
-#: builtin/diff.c:421
+#: builtin/diff.c:408
 #, c-format
 msgid "unhandled object '%s' given."
 msgstr ""
@@ -9922,440 +11608,517 @@ msgstr ""
 msgid "git difftool [<options>] [<commit> [<commit>]] [--] [<path>...]"
 msgstr ""
 
-#: builtin/difftool.c:260
+#: builtin/difftool.c:253
 #, c-format
 msgid "failed: %d"
 msgstr ""
 
-#: builtin/difftool.c:302
+#: builtin/difftool.c:295
 #, c-format
 msgid "could not read symlink %s"
 msgstr ""
 
-#: builtin/difftool.c:304
+#: builtin/difftool.c:297
 #, c-format
 msgid "could not read symlink file %s"
 msgstr ""
 
-#: builtin/difftool.c:312
+#: builtin/difftool.c:305
 #, c-format
 msgid "could not read object %s for symlink %s"
 msgstr ""
 
-#: builtin/difftool.c:413
+#: builtin/difftool.c:406
 msgid ""
 "combined diff formats('-c' and '--cc') are not supported in\n"
 "directory diff mode('-d' and '--dir-diff')."
 msgstr ""
 
-#: builtin/difftool.c:633
+#: builtin/difftool.c:626
 #, c-format
 msgid "both files modified: '%s' and '%s'."
 msgstr ""
 
-#: builtin/difftool.c:635
+#: builtin/difftool.c:628
 msgid "working tree file has been left."
 msgstr ""
 
-#: builtin/difftool.c:646
+#: builtin/difftool.c:639
 #, c-format
 msgid "temporary files exist in '%s'."
 msgstr ""
 
-#: builtin/difftool.c:647
+#: builtin/difftool.c:640
 msgid "you may want to cleanup or recover these."
 msgstr ""
 
-#: builtin/difftool.c:696
+#: builtin/difftool.c:689
 msgid "use `diff.guitool` instead of `diff.tool`"
 msgstr ""
 
-#: builtin/difftool.c:698
+#: builtin/difftool.c:691
 msgid "perform a full-directory diff"
 msgstr ""
 
-#: builtin/difftool.c:700
+#: builtin/difftool.c:693
 msgid "do not prompt before launching a diff tool"
 msgstr ""
 
-#: builtin/difftool.c:705
-msgid "use symlinks in dir-diff mode"
+#: builtin/difftool.c:698
+msgid "use symlinks in dir-diff mode"
+msgstr ""
+
+#: builtin/difftool.c:699
+msgid "tool"
+msgstr ""
+
+#: builtin/difftool.c:700
+msgid "use the specified diff tool"
+msgstr ""
+
+#: builtin/difftool.c:702
+msgid "print a list of diff tools that may be used with `--tool`"
+msgstr ""
+
+#: builtin/difftool.c:705
+msgid ""
+"make 'git-difftool' exit when an invoked diff tool returns a non - zero exit "
+"code"
+msgstr ""
+
+#: builtin/difftool.c:708
+msgid "specify a custom command for viewing diffs"
+msgstr ""
+
+#: builtin/difftool.c:709
+msgid "passed to `diff`"
+msgstr ""
+
+#: builtin/difftool.c:724
+msgid "difftool requires worktree or --no-index"
+msgstr ""
+
+#: builtin/difftool.c:731
+msgid "--dir-diff is incompatible with --no-index"
+msgstr ""
+
+#: builtin/difftool.c:734
+msgid "--gui, --tool and --extcmd are mutually exclusive"
+msgstr ""
+
+#: builtin/difftool.c:742
+msgid "no <tool> given for --tool=<tool>"
 msgstr ""
 
-#: builtin/difftool.c:706
-msgid "tool"
+#: builtin/difftool.c:749
+msgid "no <cmd> given for --extcmd=<cmd>"
 msgstr ""
 
-#: builtin/difftool.c:707
-msgid "use the specified diff tool"
+#: builtin/env--helper.c:6
+msgid "git env--helper --type=[bool|ulong] <options> <env-var>"
 msgstr ""
 
-#: builtin/difftool.c:709
-msgid "print a list of diff tools that may be used with `--tool`"
+#: builtin/env--helper.c:37 builtin/hash-object.c:98
+msgid "type"
 msgstr ""
 
-#: builtin/difftool.c:712
-msgid ""
-"make 'git-difftool' exit when an invoked diff tool returns a non - zero exit "
-"code"
+#: builtin/env--helper.c:41
+msgid "default for git_env_*(...) to fall back on"
 msgstr ""
 
-#: builtin/difftool.c:715
-msgid "specify a custom command for viewing diffs"
+#: builtin/env--helper.c:43
+msgid "be quiet only use git_env_*() value as exit code"
 msgstr ""
 
-#: builtin/difftool.c:739
-msgid "no <tool> given for --tool=<tool>"
+#: builtin/env--helper.c:62
+#, c-format
+msgid "option `--default' expects a boolean value with `--type=bool`, not `%s`"
 msgstr ""
 
-#: builtin/difftool.c:746
-msgid "no <cmd> given for --extcmd=<cmd>"
+#: builtin/env--helper.c:77
+#, c-format
+msgid ""
+"option `--default' expects an unsigned long value with `--type=ulong`, not `"
+"%s`"
 msgstr ""
 
 #: builtin/fast-export.c:29
 msgid "git fast-export [rev-list-opts]"
 msgstr ""
 
-#: builtin/fast-export.c:1006
+#: builtin/fast-export.c:1124
 msgid "show progress after <n> objects"
 msgstr ""
 
-#: builtin/fast-export.c:1008
+#: builtin/fast-export.c:1126
 msgid "select handling of signed tags"
 msgstr ""
 
-#: builtin/fast-export.c:1011
+#: builtin/fast-export.c:1129
 msgid "select handling of tags that tag filtered objects"
 msgstr ""
 
-#: builtin/fast-export.c:1014
+#: builtin/fast-export.c:1132
+msgid "select handling of commit messages in an alternate encoding"
+msgstr ""
+
+#: builtin/fast-export.c:1135
 msgid "Dump marks to this file"
 msgstr ""
 
-#: builtin/fast-export.c:1016
+#: builtin/fast-export.c:1137
 msgid "Import marks from this file"
 msgstr ""
 
-#: builtin/fast-export.c:1018
+#: builtin/fast-export.c:1139
 msgid "Fake a tagger when tags lack one"
 msgstr ""
 
-#: builtin/fast-export.c:1020
+#: builtin/fast-export.c:1141
 msgid "Output full tree for each commit"
 msgstr ""
 
-#: builtin/fast-export.c:1022
+#: builtin/fast-export.c:1143
 msgid "Use the done feature to terminate the stream"
 msgstr ""
 
-#: builtin/fast-export.c:1023
+#: builtin/fast-export.c:1144
 msgid "Skip output of blob data"
 msgstr ""
 
-#: builtin/fast-export.c:1024 builtin/log.c:1588
+#: builtin/fast-export.c:1145 builtin/log.c:1632
 msgid "refspec"
 msgstr ""
 
-#: builtin/fast-export.c:1025
+#: builtin/fast-export.c:1146
 msgid "Apply refspec to exported refs"
 msgstr ""
 
-#: builtin/fast-export.c:1026
+#: builtin/fast-export.c:1147
 msgid "anonymize output"
 msgstr ""
 
-#: builtin/fetch.c:28
+#: builtin/fast-export.c:1149
+msgid "Reference parents which are not in fast-export stream by object id"
+msgstr ""
+
+#: builtin/fast-export.c:1151
+msgid "Show original object ids of blobs/commits"
+msgstr ""
+
+#: builtin/fetch.c:30
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr ""
 
-#: builtin/fetch.c:29
+#: builtin/fetch.c:31
 msgid "git fetch [<options>] <group>"
 msgstr ""
 
-#: builtin/fetch.c:30
+#: builtin/fetch.c:32
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
 msgstr ""
 
-#: builtin/fetch.c:31
+#: builtin/fetch.c:33
 msgid "git fetch --all [<options>]"
 msgstr ""
 
-#: builtin/fetch.c:115 builtin/pull.c:194
+#: builtin/fetch.c:125 builtin/pull.c:203
 msgid "fetch from all remotes"
 msgstr ""
 
-#: builtin/fetch.c:117 builtin/pull.c:197
+#: builtin/fetch.c:127 builtin/pull.c:206
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr ""
 
-#: builtin/fetch.c:119 builtin/pull.c:200
+#: builtin/fetch.c:129 builtin/pull.c:209
 msgid "path to upload pack on remote end"
 msgstr ""
 
-#: builtin/fetch.c:120
+#: builtin/fetch.c:130
 msgid "force overwrite of local reference"
 msgstr ""
 
-#: builtin/fetch.c:122
+#: builtin/fetch.c:132
 msgid "fetch from multiple remotes"
 msgstr ""
 
-#: builtin/fetch.c:124 builtin/pull.c:204
+#: builtin/fetch.c:134 builtin/pull.c:213
 msgid "fetch all tags and associated objects"
 msgstr ""
 
-#: builtin/fetch.c:126
+#: builtin/fetch.c:136
 msgid "do not fetch all tags (--no-tags)"
 msgstr ""
 
-#: builtin/fetch.c:128
+#: builtin/fetch.c:138
 msgid "number of submodules fetched in parallel"
 msgstr ""
 
-#: builtin/fetch.c:130 builtin/pull.c:207
+#: builtin/fetch.c:140 builtin/pull.c:216
 msgid "prune remote-tracking branches no longer on remote"
 msgstr ""
 
-#: builtin/fetch.c:132
+#: builtin/fetch.c:142
 msgid "prune local tags no longer on remote and clobber changed tags"
 msgstr ""
 
-#: builtin/fetch.c:133 builtin/fetch.c:156 builtin/pull.c:132
+#: builtin/fetch.c:143 builtin/fetch.c:166 builtin/pull.c:140
 msgid "on-demand"
 msgstr ""
 
-#: builtin/fetch.c:134
+#: builtin/fetch.c:144
 msgid "control recursive fetching of submodules"
 msgstr ""
 
-#: builtin/fetch.c:138 builtin/pull.c:215
+#: builtin/fetch.c:148 builtin/pull.c:224
 msgid "keep downloaded pack"
 msgstr ""
 
-#: builtin/fetch.c:140
+#: builtin/fetch.c:150
 msgid "allow updating of HEAD ref"
 msgstr ""
 
-#: builtin/fetch.c:143 builtin/fetch.c:149 builtin/pull.c:218
+#: builtin/fetch.c:153 builtin/fetch.c:159 builtin/pull.c:227
 msgid "deepen history of shallow clone"
 msgstr ""
 
-#: builtin/fetch.c:145
+#: builtin/fetch.c:155
 msgid "deepen history of shallow repository based on time"
 msgstr ""
 
-#: builtin/fetch.c:151 builtin/pull.c:221
+#: builtin/fetch.c:161 builtin/pull.c:230
 msgid "convert to a complete repository"
 msgstr ""
 
-#: builtin/fetch.c:154
+#: builtin/fetch.c:164
 msgid "prepend this to submodule path output"
 msgstr ""
 
-#: builtin/fetch.c:157
+#: builtin/fetch.c:167
 msgid ""
 "default for recursive fetching of submodules (lower priority than config "
 "files)"
 msgstr ""
 
-#: builtin/fetch.c:161 builtin/pull.c:224
+#: builtin/fetch.c:171 builtin/pull.c:233
 msgid "accept refs that update .git/shallow"
 msgstr ""
 
-#: builtin/fetch.c:162 builtin/pull.c:226
+#: builtin/fetch.c:172 builtin/pull.c:235
 msgid "refmap"
 msgstr ""
 
-#: builtin/fetch.c:163 builtin/pull.c:227
+#: builtin/fetch.c:173 builtin/pull.c:236
 msgid "specify fetch refmap"
 msgstr ""
 
-#: builtin/fetch.c:164 builtin/ls-remote.c:77 builtin/push.c:582
-#: builtin/send-pack.c:172
-msgid "server-specific"
+#: builtin/fetch.c:180
+msgid "report that we have only objects reachable from this object"
 msgstr ""
 
-#: builtin/fetch.c:164 builtin/ls-remote.c:77 builtin/push.c:582
-#: builtin/send-pack.c:173
-msgid "option to transmit"
+#: builtin/fetch.c:183
+msgid "run 'gc --auto' after fetching"
 msgstr ""
 
-#: builtin/fetch.c:170
-msgid "report that we have only objects reachable from this object"
+#: builtin/fetch.c:185 builtin/pull.c:245
+msgid "check for forced-updates on all updated branches"
 msgstr ""
 
-#: builtin/fetch.c:470
+#: builtin/fetch.c:491
 msgid "Couldn't find remote ref HEAD"
 msgstr ""
 
-#: builtin/fetch.c:609
+#: builtin/fetch.c:630
 #, c-format
 msgid "configuration fetch.output contains invalid value %s"
 msgstr ""
 
-#: builtin/fetch.c:702
+#: builtin/fetch.c:728
 #, c-format
 msgid "object %s not found"
 msgstr ""
 
-#: builtin/fetch.c:706
+#: builtin/fetch.c:732
 msgid "[up to date]"
 msgstr ""
 
-#: builtin/fetch.c:719 builtin/fetch.c:735 builtin/fetch.c:807
+#: builtin/fetch.c:745 builtin/fetch.c:761 builtin/fetch.c:833
 msgid "[rejected]"
 msgstr ""
 
-#: builtin/fetch.c:720
+#: builtin/fetch.c:746
 msgid "can't fetch in current branch"
 msgstr ""
 
-#: builtin/fetch.c:730
+#: builtin/fetch.c:756
 msgid "[tag update]"
 msgstr ""
 
-#: builtin/fetch.c:731 builtin/fetch.c:771 builtin/fetch.c:787
-#: builtin/fetch.c:802
+#: builtin/fetch.c:757 builtin/fetch.c:794 builtin/fetch.c:816
+#: builtin/fetch.c:828
 msgid "unable to update local ref"
 msgstr ""
 
-#: builtin/fetch.c:735
+#: builtin/fetch.c:761
 msgid "would clobber existing tag"
 msgstr ""
 
-#: builtin/fetch.c:757
+#: builtin/fetch.c:783
 msgid "[new tag]"
 msgstr ""
 
-#: builtin/fetch.c:760
+#: builtin/fetch.c:786
 msgid "[new branch]"
 msgstr ""
 
-#: builtin/fetch.c:763
+#: builtin/fetch.c:789
 msgid "[new ref]"
 msgstr ""
 
-#: builtin/fetch.c:802
+#: builtin/fetch.c:828
 msgid "forced update"
 msgstr ""
 
-#: builtin/fetch.c:807
+#: builtin/fetch.c:833
 msgid "non-fast-forward"
 msgstr ""
 
-#: builtin/fetch.c:853
+#: builtin/fetch.c:854
+msgid ""
+"Fetch normally indicates which branches had a forced update,\n"
+"but that check has been disabled. To re-enable, use '--show-forced-updates'\n"
+"flag or run 'git config fetch.showForcedUpdates true'."
+msgstr ""
+
+#: builtin/fetch.c:858
+#, c-format
+msgid ""
+"It took %.2f seconds to check forced updates. You can use\n"
+"'--no-show-forced-updates' or run 'git config fetch.showForcedUpdates "
+"false'\n"
+" to avoid this check.\n"
+msgstr ""
+
+#: builtin/fetch.c:888
 #, c-format
 msgid "%s did not send all necessary objects\n"
 msgstr ""
 
-#: builtin/fetch.c:874
+#: builtin/fetch.c:909
 #, c-format
 msgid "reject %s because shallow roots are not allowed to be updated"
 msgstr ""
 
-#: builtin/fetch.c:963 builtin/fetch.c:1085
+#: builtin/fetch.c:1000 builtin/fetch.c:1131
 #, c-format
 msgid "From %.*s\n"
 msgstr ""
 
-#: builtin/fetch.c:974
+#: builtin/fetch.c:1011
 #, c-format
 msgid ""
 "some local refs could not be updated; try running\n"
 " 'git remote prune %s' to remove any old, conflicting branches"
 msgstr ""
 
-#: builtin/fetch.c:1055
+#: builtin/fetch.c:1101
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr ""
 
-#: builtin/fetch.c:1056
+#: builtin/fetch.c:1102
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr ""
 
-#: builtin/fetch.c:1088
+#: builtin/fetch.c:1134
 msgid "[deleted]"
 msgstr ""
 
-#: builtin/fetch.c:1089 builtin/remote.c:1036
+#: builtin/fetch.c:1135 builtin/remote.c:1036
 msgid "(none)"
 msgstr ""
 
-#: builtin/fetch.c:1112
+#: builtin/fetch.c:1158
 #, c-format
 msgid "Refusing to fetch into current branch %s of non-bare repository"
 msgstr ""
 
-#: builtin/fetch.c:1131
+#: builtin/fetch.c:1177
 #, c-format
 msgid "Option \"%s\" value \"%s\" is not valid for %s"
 msgstr ""
 
-#: builtin/fetch.c:1134
+#: builtin/fetch.c:1180
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr ""
 
-#: builtin/fetch.c:1433
+#: builtin/fetch.c:1484
 #, c-format
 msgid "Fetching %s\n"
 msgstr ""
 
-#: builtin/fetch.c:1435 builtin/remote.c:100
+#: builtin/fetch.c:1486 builtin/remote.c:100
 #, c-format
 msgid "Could not fetch %s"
 msgstr ""
 
-#: builtin/fetch.c:1481 builtin/fetch.c:1649
+#: builtin/fetch.c:1532
 msgid ""
-"--filter can only be used with the remote configured in core.partialClone"
+"--filter can only be used with the remote configured in extensions."
+"partialClone"
 msgstr ""
 
-#: builtin/fetch.c:1504
+#: builtin/fetch.c:1556
 msgid ""
 "No remote repository specified.  Please, specify either a URL or a\n"
 "remote name from which new revisions should be fetched."
 msgstr ""
 
-#: builtin/fetch.c:1541
+#: builtin/fetch.c:1593
 msgid "You need to specify a tag name."
 msgstr ""
 
-#: builtin/fetch.c:1590
+#: builtin/fetch.c:1644
 msgid "Negative depth in --deepen is not supported"
 msgstr ""
 
-#: builtin/fetch.c:1592
+#: builtin/fetch.c:1646
 msgid "--deepen and --depth are mutually exclusive"
 msgstr ""
 
-#: builtin/fetch.c:1597
+#: builtin/fetch.c:1651
 msgid "--depth and --unshallow cannot be used together"
 msgstr ""
 
-#: builtin/fetch.c:1599
+#: builtin/fetch.c:1653
 msgid "--unshallow on a complete repository does not make sense"
 msgstr ""
 
-#: builtin/fetch.c:1615
+#: builtin/fetch.c:1669
 msgid "fetch --all does not take a repository argument"
 msgstr ""
 
-#: builtin/fetch.c:1617
+#: builtin/fetch.c:1671
 msgid "fetch --all does not make sense with refspecs"
 msgstr ""
 
-#: builtin/fetch.c:1626
+#: builtin/fetch.c:1680
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr ""
 
-#: builtin/fetch.c:1633
+#: builtin/fetch.c:1687
 msgid "Fetching a group and specifying refspecs does not make sense"
 msgstr ""
 
+#: builtin/fetch.c:1703
+msgid ""
+"--filter can only be used with the remote configured in extensions."
+"partialclone"
+msgstr ""
+
 #: builtin/fmt-merge-msg.c:18
 msgid ""
 "git fmt-merge-msg [-m <message>] [--log[=<n>] | --no-log] [--file <file>]"
@@ -10417,90 +12180,271 @@ msgstr ""
 msgid "show only <n> matched refs"
 msgstr ""
 
-#: builtin/for-each-ref.c:39 builtin/tag.c:424
+#: builtin/for-each-ref.c:39 builtin/tag.c:439
 msgid "respect format colors"
 msgstr ""
 
-#: builtin/for-each-ref.c:43
+#: builtin/for-each-ref.c:42
 msgid "print only refs which points at the given object"
 msgstr ""
 
-#: builtin/for-each-ref.c:45
+#: builtin/for-each-ref.c:44
 msgid "print only refs that are merged"
 msgstr ""
 
-#: builtin/for-each-ref.c:46
+#: builtin/for-each-ref.c:45
 msgid "print only refs that are not merged"
 msgstr ""
 
-#: builtin/for-each-ref.c:47
+#: builtin/for-each-ref.c:46
 msgid "print only refs which contain the commit"
 msgstr ""
 
-#: builtin/for-each-ref.c:48
+#: builtin/for-each-ref.c:47
 msgid "print only refs which don't contain the commit"
 msgstr ""
 
-#: builtin/fsck.c:598
+#: builtin/fsck.c:88 builtin/fsck.c:160 builtin/fsck.c:161
+msgid "unknown"
+msgstr ""
+
+#. TRANSLATORS: e.g. error in tree 01bfda: <more explanation>
+#: builtin/fsck.c:120 builtin/fsck.c:136
+#, c-format
+msgid "error in %s %s: %s"
+msgstr ""
+
+#. TRANSLATORS: e.g. warning in tree 01bfda: <more explanation>
+#: builtin/fsck.c:131
+#, c-format
+msgid "warning in %s %s: %s"
+msgstr ""
+
+#: builtin/fsck.c:157 builtin/fsck.c:159
+#, c-format
+msgid "broken link from %7s %s"
+msgstr ""
+
+#: builtin/fsck.c:168
+msgid "wrong object type in link"
+msgstr ""
+
+#: builtin/fsck.c:184
+#, c-format
+msgid ""
+"broken link from %7s %s\n"
+"              to %7s %s"
+msgstr ""
+
+#: builtin/fsck.c:295
+#, c-format
+msgid "missing %s %s"
+msgstr ""
+
+#: builtin/fsck.c:321
+#, c-format
+msgid "unreachable %s %s"
+msgstr ""
+
+#: builtin/fsck.c:340
+#, c-format
+msgid "dangling %s %s"
+msgstr ""
+
+#: builtin/fsck.c:349
+msgid "could not create lost-found"
+msgstr ""
+
+#: builtin/fsck.c:360
+#, c-format
+msgid "could not finish '%s'"
+msgstr ""
+
+#: builtin/fsck.c:377
+#, c-format
+msgid "Checking %s"
+msgstr ""
+
+#: builtin/fsck.c:415
+#, c-format
+msgid "Checking connectivity (%d objects)"
+msgstr ""
+
+#: builtin/fsck.c:434
+#, c-format
+msgid "Checking %s %s"
+msgstr ""
+
+#: builtin/fsck.c:438
+msgid "broken links"
+msgstr ""
+
+#: builtin/fsck.c:447
+#, c-format
+msgid "root %s"
+msgstr ""
+
+#: builtin/fsck.c:455
+#, c-format
+msgid "tagged %s %s (%s) in %s"
+msgstr ""
+
+#: builtin/fsck.c:484
+#, c-format
+msgid "%s: object corrupt or missing"
+msgstr ""
+
+#: builtin/fsck.c:509
+#, c-format
+msgid "%s: invalid reflog entry %s"
+msgstr ""
+
+#: builtin/fsck.c:523
+#, c-format
+msgid "Checking reflog %s->%s"
+msgstr ""
+
+#: builtin/fsck.c:557
+#, c-format
+msgid "%s: invalid sha1 pointer %s"
+msgstr ""
+
+#: builtin/fsck.c:564
+#, c-format
+msgid "%s: not a commit"
+msgstr ""
+
+#: builtin/fsck.c:619
+msgid "notice: No default references"
+msgstr ""
+
+#: builtin/fsck.c:634
+#, c-format
+msgid "%s: object corrupt or missing: %s"
+msgstr ""
+
+#: builtin/fsck.c:647
+#, c-format
+msgid "%s: object could not be parsed: %s"
+msgstr ""
+
+#: builtin/fsck.c:667
+#, c-format
+msgid "bad sha1 file: %s"
+msgstr ""
+
+#: builtin/fsck.c:682
+msgid "Checking object directory"
+msgstr ""
+
+#: builtin/fsck.c:685
 msgid "Checking object directories"
 msgstr ""
 
-#: builtin/fsck.c:693
+#: builtin/fsck.c:700
+#, c-format
+msgid "Checking %s link"
+msgstr ""
+
+#: builtin/fsck.c:705 builtin/index-pack.c:842
+#, c-format
+msgid "invalid %s"
+msgstr ""
+
+#: builtin/fsck.c:712
+#, c-format
+msgid "%s points to something strange (%s)"
+msgstr ""
+
+#: builtin/fsck.c:718
+#, c-format
+msgid "%s: detached HEAD points at nothing"
+msgstr ""
+
+#: builtin/fsck.c:722
+#, c-format
+msgid "notice: %s points to an unborn branch (%s)"
+msgstr ""
+
+#: builtin/fsck.c:734
+msgid "Checking cache tree"
+msgstr ""
+
+#: builtin/fsck.c:739
+#, c-format
+msgid "%s: invalid sha1 pointer in cache-tree"
+msgstr ""
+
+#: builtin/fsck.c:750
+msgid "non-tree in cache-tree"
+msgstr ""
+
+#: builtin/fsck.c:781
 msgid "git fsck [<options>] [<object>...]"
 msgstr ""
 
-#: builtin/fsck.c:699
+#: builtin/fsck.c:787
 msgid "show unreachable objects"
 msgstr ""
 
-#: builtin/fsck.c:700
+#: builtin/fsck.c:788
 msgid "show dangling objects"
 msgstr ""
 
-#: builtin/fsck.c:701
+#: builtin/fsck.c:789
 msgid "report tags"
 msgstr ""
 
-#: builtin/fsck.c:702
+#: builtin/fsck.c:790
 msgid "report root nodes"
 msgstr ""
 
-#: builtin/fsck.c:703
+#: builtin/fsck.c:791
 msgid "make index objects head nodes"
 msgstr ""
 
-#: builtin/fsck.c:704
+#: builtin/fsck.c:792
 msgid "make reflogs head nodes (default)"
 msgstr ""
 
-#: builtin/fsck.c:705
+#: builtin/fsck.c:793
 msgid "also consider packs and alternate objects"
 msgstr ""
 
-#: builtin/fsck.c:706
+#: builtin/fsck.c:794
 msgid "check only connectivity"
 msgstr ""
 
-#: builtin/fsck.c:707
+#: builtin/fsck.c:795
 msgid "enable more strict checking"
 msgstr ""
 
-#: builtin/fsck.c:709
+#: builtin/fsck.c:797
 msgid "write dangling objects in .git/lost-found"
 msgstr ""
 
-#: builtin/fsck.c:710 builtin/prune.c:110
+#: builtin/fsck.c:798 builtin/prune.c:132
 msgid "show progress"
 msgstr ""
 
-#: builtin/fsck.c:711
+#: builtin/fsck.c:799
 msgid "show verbose names for reachable objects"
 msgstr ""
 
-#: builtin/fsck.c:776
+#: builtin/fsck.c:859 builtin/index-pack.c:225
 msgid "Checking objects"
 msgstr ""
 
+#: builtin/fsck.c:887
+#, c-format
+msgid "%s: object missing"
+msgstr ""
+
+#: builtin/fsck.c:899
+#, c-format
+msgid "invalid parameter: expected sha1, got '%s'"
+msgstr ""
+
 #: builtin/gc.c:34
 msgid "git gc [<options>]"
 msgstr ""
@@ -10510,17 +12454,22 @@ msgstr ""
 msgid "Failed to fstat %s: %s"
 msgstr ""
 
-#: builtin/gc.c:461 builtin/init-db.c:55
+#: builtin/gc.c:126
+#, c-format
+msgid "failed to parse '%s' value '%s'"
+msgstr ""
+
+#: builtin/gc.c:476 builtin/init-db.c:55
 #, c-format
 msgid "cannot stat '%s'"
 msgstr ""
 
-#: builtin/gc.c:470 builtin/notes.c:240 builtin/tag.c:510
+#: builtin/gc.c:485 builtin/notes.c:240 builtin/tag.c:529
 #, c-format
 msgid "cannot read '%s'"
 msgstr ""
 
-#: builtin/gc.c:477
+#: builtin/gc.c:492
 #, c-format
 msgid ""
 "The last gc run reported the following. Please correct the root cause\n"
@@ -10530,72 +12479,72 @@ msgid ""
 "%s"
 msgstr ""
 
-#: builtin/gc.c:519
+#: builtin/gc.c:540
 msgid "prune unreferenced objects"
 msgstr ""
 
-#: builtin/gc.c:521
+#: builtin/gc.c:542
 msgid "be more thorough (increased runtime)"
 msgstr ""
 
-#: builtin/gc.c:522
+#: builtin/gc.c:543
 msgid "enable auto-gc mode"
 msgstr ""
 
-#: builtin/gc.c:525
+#: builtin/gc.c:546
 msgid "force running gc even if there may be another gc running"
 msgstr ""
 
-#: builtin/gc.c:528
+#: builtin/gc.c:549
 msgid "repack all other packs except the largest pack"
 msgstr ""
 
-#: builtin/gc.c:545
+#: builtin/gc.c:566
 #, c-format
 msgid "failed to parse gc.logexpiry value %s"
 msgstr ""
 
-#: builtin/gc.c:556
+#: builtin/gc.c:577
 #, c-format
 msgid "failed to parse prune expiry value %s"
 msgstr ""
 
-#: builtin/gc.c:576
+#: builtin/gc.c:597
 #, c-format
 msgid "Auto packing the repository in background for optimum performance.\n"
 msgstr ""
 
-#: builtin/gc.c:578
+#: builtin/gc.c:599
 #, c-format
 msgid "Auto packing the repository for optimum performance.\n"
 msgstr ""
 
-#: builtin/gc.c:579
+#: builtin/gc.c:600
 #, c-format
 msgid "See \"git help gc\" for manual housekeeping.\n"
 msgstr ""
 
-#: builtin/gc.c:619
+#: builtin/gc.c:640
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
 msgstr ""
 
-#: builtin/gc.c:670
+#: builtin/gc.c:695
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
 
-#: builtin/grep.c:28
+#: builtin/grep.c:29
 msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
 msgstr ""
 
-#: builtin/grep.c:224
+#: builtin/grep.c:225
 #, c-format
 msgid "grep: failed to create thread: %s"
 msgstr ""
 
-#: builtin/grep.c:278
+#: builtin/grep.c:279
 #, c-format
 msgid "invalid number of threads specified (%d) for %s"
 msgstr ""
@@ -10604,297 +12553,293 @@ msgstr ""
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c:286 builtin/index-pack.c:1506 builtin/index-pack.c:1697
-#: builtin/pack-objects.c:2719
+#: builtin/grep.c:287 builtin/index-pack.c:1534 builtin/index-pack.c:1727
+#: builtin/pack-objects.c:2728
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr ""
 
-#: builtin/grep.c:458 builtin/grep.c:579 builtin/grep.c:620
+#: builtin/grep.c:467 builtin/grep.c:591 builtin/grep.c:633
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr ""
 
-#: builtin/grep.c:635
+#: builtin/grep.c:648
 #, c-format
 msgid "unable to grep from object of type %s"
 msgstr ""
 
-#: builtin/grep.c:701
+#: builtin/grep.c:714
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr ""
 
-#: builtin/grep.c:800
+#: builtin/grep.c:813
 msgid "search in index instead of in the work tree"
 msgstr ""
 
-#: builtin/grep.c:802
+#: builtin/grep.c:815
 msgid "find in contents not managed by git"
 msgstr ""
 
-#: builtin/grep.c:804
+#: builtin/grep.c:817
 msgid "search in both tracked and untracked files"
 msgstr ""
 
-#: builtin/grep.c:806
+#: builtin/grep.c:819
 msgid "ignore files specified via '.gitignore'"
 msgstr ""
 
-#: builtin/grep.c:808
+#: builtin/grep.c:821
 msgid "recursively search in each submodule"
 msgstr ""
 
-#: builtin/grep.c:811
+#: builtin/grep.c:824
 msgid "show non-matching lines"
 msgstr ""
 
-#: builtin/grep.c:813
+#: builtin/grep.c:826
 msgid "case insensitive matching"
 msgstr ""
 
-#: builtin/grep.c:815
+#: builtin/grep.c:828
 msgid "match patterns only at word boundaries"
 msgstr ""
 
-#: builtin/grep.c:817
+#: builtin/grep.c:830
 msgid "process binary files as text"
 msgstr ""
 
-#: builtin/grep.c:819
+#: builtin/grep.c:832
 msgid "don't match patterns in binary files"
 msgstr ""
 
-#: builtin/grep.c:822
+#: builtin/grep.c:835
 msgid "process binary files with textconv filters"
 msgstr ""
 
-#: builtin/grep.c:824
+#: builtin/grep.c:837
 msgid "search in subdirectories (default)"
 msgstr ""
 
-#: builtin/grep.c:826
+#: builtin/grep.c:839
 msgid "descend at most <depth> levels"
 msgstr ""
 
-#: builtin/grep.c:830
+#: builtin/grep.c:843
 msgid "use extended POSIX regular expressions"
 msgstr ""
 
-#: builtin/grep.c:833
+#: builtin/grep.c:846
 msgid "use basic POSIX regular expressions (default)"
 msgstr ""
 
-#: builtin/grep.c:836
+#: builtin/grep.c:849
 msgid "interpret patterns as fixed strings"
 msgstr ""
 
-#: builtin/grep.c:839
+#: builtin/grep.c:852
 msgid "use Perl-compatible regular expressions"
 msgstr ""
 
-#: builtin/grep.c:842
+#: builtin/grep.c:855
 msgid "show line numbers"
 msgstr ""
 
-#: builtin/grep.c:843
+#: builtin/grep.c:856
 msgid "show column number of first match"
 msgstr ""
 
-#: builtin/grep.c:844
+#: builtin/grep.c:857
 msgid "don't show filenames"
 msgstr ""
 
-#: builtin/grep.c:845
+#: builtin/grep.c:858
 msgid "show filenames"
 msgstr ""
 
-#: builtin/grep.c:847
+#: builtin/grep.c:860
 msgid "show filenames relative to top directory"
 msgstr ""
 
-#: builtin/grep.c:849
+#: builtin/grep.c:862
 msgid "show only filenames instead of matching lines"
 msgstr ""
 
-#: builtin/grep.c:851
+#: builtin/grep.c:864
 msgid "synonym for --files-with-matches"
 msgstr ""
 
-#: builtin/grep.c:854
+#: builtin/grep.c:867
 msgid "show only the names of files without match"
 msgstr ""
 
-#: builtin/grep.c:856
+#: builtin/grep.c:869
 msgid "print NUL after filenames"
 msgstr ""
 
-#: builtin/grep.c:859
+#: builtin/grep.c:872
 msgid "show only matching parts of a line"
 msgstr ""
 
-#: builtin/grep.c:861
+#: builtin/grep.c:874
 msgid "show the number of matches instead of matching lines"
 msgstr ""
 
-#: builtin/grep.c:862
+#: builtin/grep.c:875
 msgid "highlight matches"
 msgstr ""
 
-#: builtin/grep.c:864
+#: builtin/grep.c:877
 msgid "print empty line between matches from different files"
 msgstr ""
 
-#: builtin/grep.c:866
+#: builtin/grep.c:879
 msgid "show filename only once above matches from same file"
 msgstr ""
 
-#: builtin/grep.c:869
+#: builtin/grep.c:882
 msgid "show <n> context lines before and after matches"
 msgstr ""
 
-#: builtin/grep.c:872
+#: builtin/grep.c:885
 msgid "show <n> context lines before matches"
 msgstr ""
 
-#: builtin/grep.c:874
+#: builtin/grep.c:887
 msgid "show <n> context lines after matches"
 msgstr ""
 
-#: builtin/grep.c:876
+#: builtin/grep.c:889
 msgid "use <n> worker threads"
 msgstr ""
 
-#: builtin/grep.c:877
+#: builtin/grep.c:890
 msgid "shortcut for -C NUM"
 msgstr ""
 
-#: builtin/grep.c:880
+#: builtin/grep.c:893
 msgid "show a line with the function name before matches"
 msgstr ""
 
-#: builtin/grep.c:882
+#: builtin/grep.c:895
 msgid "show the surrounding function"
 msgstr ""
 
-#: builtin/grep.c:885
+#: builtin/grep.c:898
 msgid "read patterns from file"
 msgstr ""
 
-#: builtin/grep.c:887
+#: builtin/grep.c:900
 msgid "match <pattern>"
 msgstr ""
 
-#: builtin/grep.c:889
+#: builtin/grep.c:902
 msgid "combine patterns specified with -e"
 msgstr ""
 
-#: builtin/grep.c:901
+#: builtin/grep.c:914
 msgid "indicate hit with exit status without output"
 msgstr ""
 
-#: builtin/grep.c:903
+#: builtin/grep.c:916
 msgid "show only matches from files that match all patterns"
 msgstr ""
 
-#: builtin/grep.c:905
+#: builtin/grep.c:918
 msgid "show parse tree for grep expression"
 msgstr ""
 
-#: builtin/grep.c:909
+#: builtin/grep.c:922
 msgid "pager"
 msgstr ""
 
-#: builtin/grep.c:909
+#: builtin/grep.c:922
 msgid "show matching files in the pager"
 msgstr ""
 
-#: builtin/grep.c:913
+#: builtin/grep.c:926
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr ""
 
-#: builtin/grep.c:977
+#: builtin/grep.c:990
 msgid "no pattern given"
 msgstr ""
 
-#: builtin/grep.c:1013
+#: builtin/grep.c:1026
 msgid "--no-index or --untracked cannot be used with revs"
 msgstr ""
 
-#: builtin/grep.c:1020
+#: builtin/grep.c:1034
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr ""
 
-#: builtin/grep.c:1051
+#: builtin/grep.c:1065
 msgid "invalid option combination, ignoring --threads"
 msgstr ""
 
-#: builtin/grep.c:1054 builtin/pack-objects.c:3395
+#: builtin/grep.c:1068 builtin/pack-objects.c:3416
 msgid "no threads support, ignoring --threads"
 msgstr ""
 
-#: builtin/grep.c:1057 builtin/index-pack.c:1503 builtin/pack-objects.c:2716
+#: builtin/grep.c:1071 builtin/index-pack.c:1531 builtin/pack-objects.c:2725
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr ""
 
-#: builtin/grep.c:1080
+#: builtin/grep.c:1094
 msgid "--open-files-in-pager only works on the worktree"
 msgstr ""
 
-#: builtin/grep.c:1103
+#: builtin/grep.c:1117
 msgid "option not supported with --recurse-submodules"
 msgstr ""
 
-#: builtin/grep.c:1109
+#: builtin/grep.c:1123
 msgid "--cached or --untracked cannot be used with --no-index"
 msgstr ""
 
-#: builtin/grep.c:1115
+#: builtin/grep.c:1129
 msgid "--[no-]exclude-standard cannot be used for tracked contents"
 msgstr ""
 
-#: builtin/grep.c:1123
+#: builtin/grep.c:1137
 msgid "both --cached and trees are given"
 msgstr ""
 
-#: builtin/hash-object.c:84
+#: builtin/hash-object.c:85
 msgid ""
 "git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
 "[--] <file>..."
 msgstr ""
 
-#: builtin/hash-object.c:85
+#: builtin/hash-object.c:86
 msgid "git hash-object  --stdin-paths"
 msgstr ""
 
-#: builtin/hash-object.c:97
-msgid "type"
-msgstr ""
-
-#: builtin/hash-object.c:97
+#: builtin/hash-object.c:98
 msgid "object type"
 msgstr ""
 
-#: builtin/hash-object.c:98
+#: builtin/hash-object.c:99
 msgid "write the object into the object database"
 msgstr ""
 
-#: builtin/hash-object.c:100
+#: builtin/hash-object.c:101
 msgid "read the object from stdin"
 msgstr ""
 
-#: builtin/hash-object.c:102
+#: builtin/hash-object.c:103
 msgid "store file as is without filters"
 msgstr ""
 
-#: builtin/hash-object.c:103
+#: builtin/hash-object.c:104
 msgid ""
 "just hash any random garbage to create corrupt objects for debugging Git"
 msgstr ""
 
-#: builtin/hash-object.c:104
+#: builtin/hash-object.c:105
 msgid "process file as it were from this path"
 msgstr ""
 
@@ -10934,364 +12879,354 @@ msgstr ""
 msgid "git help [--all] [--guides] [--man | --web | --info] [<command>]"
 msgstr ""
 
-#: builtin/help.c:73
+#: builtin/help.c:77
 #, c-format
 msgid "unrecognized help format '%s'"
 msgstr ""
 
-#: builtin/help.c:100
+#: builtin/help.c:104
 msgid "Failed to start emacsclient."
 msgstr ""
 
-#: builtin/help.c:113
+#: builtin/help.c:117
 msgid "Failed to parse emacsclient version."
 msgstr ""
 
-#: builtin/help.c:121
+#: builtin/help.c:125
 #, c-format
 msgid "emacsclient version '%d' too old (< 22)."
 msgstr ""
 
-#: builtin/help.c:139 builtin/help.c:161 builtin/help.c:171 builtin/help.c:179
+#: builtin/help.c:143 builtin/help.c:165 builtin/help.c:175 builtin/help.c:183
 #, c-format
 msgid "failed to exec '%s'"
 msgstr ""
 
-#: builtin/help.c:217
+#: builtin/help.c:221
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
 "Please consider using 'man.<tool>.cmd' instead."
 msgstr ""
 
-#: builtin/help.c:229
+#: builtin/help.c:233
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
 "Please consider using 'man.<tool>.path' instead."
 msgstr ""
 
-#: builtin/help.c:346
+#: builtin/help.c:350
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr ""
 
-#: builtin/help.c:363
+#: builtin/help.c:367
 msgid "no man viewer handled the request"
 msgstr ""
 
-#: builtin/help.c:371
+#: builtin/help.c:375
 msgid "no info viewer handled the request"
 msgstr ""
 
-#: builtin/help.c:430 builtin/help.c:441 git.c:322
+#: builtin/help.c:434 builtin/help.c:445 git.c:336
 #, c-format
 msgid "'%s' is aliased to '%s'"
 msgstr ""
 
-#: builtin/help.c:444
+#: builtin/help.c:448 git.c:365
 #, c-format
 msgid "bad alias.%s string: %s"
 msgstr ""
 
-#: builtin/help.c:473 builtin/help.c:503
+#: builtin/help.c:477 builtin/help.c:507
 #, c-format
 msgid "usage: %s%s"
 msgstr ""
 
-#: builtin/help.c:487
+#: builtin/help.c:491
 msgid "'git help config' for more information"
 msgstr ""
 
-#: builtin/index-pack.c:184
+#: builtin/index-pack.c:185
 #, c-format
 msgid "object type mismatch at %s"
 msgstr ""
 
-#: builtin/index-pack.c:204
+#: builtin/index-pack.c:205
 #, c-format
 msgid "did not receive expected object %s"
 msgstr ""
 
-#: builtin/index-pack.c:207
+#: builtin/index-pack.c:208
 #, c-format
 msgid "object %s: expected type %s, found %s"
 msgstr ""
 
-#: builtin/index-pack.c:249
+#: builtin/index-pack.c:258
 #, c-format
 msgid "cannot fill %d byte"
 msgid_plural "cannot fill %d bytes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:259
+#: builtin/index-pack.c:268
 msgid "early EOF"
 msgstr ""
 
-#: builtin/index-pack.c:260
+#: builtin/index-pack.c:269
 msgid "read error on input"
 msgstr ""
 
-#: builtin/index-pack.c:272
+#: builtin/index-pack.c:281
 msgid "used more bytes than were available"
 msgstr ""
 
-#: builtin/index-pack.c:279 builtin/pack-objects.c:598
+#: builtin/index-pack.c:288 builtin/pack-objects.c:604
 msgid "pack too large for current definition of off_t"
 msgstr ""
 
-#: builtin/index-pack.c:282 builtin/unpack-objects.c:94
+#: builtin/index-pack.c:291 builtin/unpack-objects.c:94
 msgid "pack exceeds maximum allowed size"
 msgstr ""
 
-#: builtin/index-pack.c:297
-#, c-format
-msgid "unable to create '%s'"
-msgstr ""
-
-#: builtin/index-pack.c:303
+#: builtin/index-pack.c:312
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:317
+#: builtin/index-pack.c:326
 msgid "pack signature mismatch"
 msgstr ""
 
-#: builtin/index-pack.c:319
+#: builtin/index-pack.c:328
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr ""
 
-#: builtin/index-pack.c:337
+#: builtin/index-pack.c:346
 #, c-format
 msgid "pack has bad object at offset %<PRIuMAX>: %s"
 msgstr ""
 
-#: builtin/index-pack.c:457
+#: builtin/index-pack.c:466
 #, c-format
 msgid "inflate returned %d"
 msgstr ""
 
-#: builtin/index-pack.c:506
+#: builtin/index-pack.c:515
 msgid "offset value overflow for delta base object"
 msgstr ""
 
-#: builtin/index-pack.c:514
+#: builtin/index-pack.c:523
 msgid "delta base offset is out of bound"
 msgstr ""
 
-#: builtin/index-pack.c:522
+#: builtin/index-pack.c:531
 #, c-format
 msgid "unknown object type %d"
 msgstr ""
 
-#: builtin/index-pack.c:553
+#: builtin/index-pack.c:562
 msgid "cannot pread pack file"
 msgstr ""
 
-#: builtin/index-pack.c:555
+#: builtin/index-pack.c:564
 #, c-format
 msgid "premature end of pack file, %<PRIuMAX> byte missing"
 msgid_plural "premature end of pack file, %<PRIuMAX> bytes missing"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:581
+#: builtin/index-pack.c:590
 msgid "serious inflate inconsistency"
 msgstr ""
 
-#: builtin/index-pack.c:726 builtin/index-pack.c:732 builtin/index-pack.c:755
-#: builtin/index-pack.c:794 builtin/index-pack.c:803
+#: builtin/index-pack.c:735 builtin/index-pack.c:741 builtin/index-pack.c:764
+#: builtin/index-pack.c:803 builtin/index-pack.c:812
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr ""
 
-#: builtin/index-pack.c:729 builtin/pack-objects.c:151
-#: builtin/pack-objects.c:211 builtin/pack-objects.c:305
+#: builtin/index-pack.c:738 builtin/pack-objects.c:157
+#: builtin/pack-objects.c:217 builtin/pack-objects.c:311
 #, c-format
 msgid "unable to read %s"
 msgstr ""
 
-#: builtin/index-pack.c:792
+#: builtin/index-pack.c:801
 #, c-format
 msgid "cannot read existing object info %s"
 msgstr ""
 
-#: builtin/index-pack.c:800
+#: builtin/index-pack.c:809
 #, c-format
 msgid "cannot read existing object %s"
 msgstr ""
 
-#: builtin/index-pack.c:814
+#: builtin/index-pack.c:823
 #, c-format
 msgid "invalid blob object %s"
 msgstr ""
 
-#: builtin/index-pack.c:817 builtin/index-pack.c:836
+#: builtin/index-pack.c:826 builtin/index-pack.c:845
 msgid "fsck error in packed object"
 msgstr ""
 
-#: builtin/index-pack.c:833
-#, c-format
-msgid "invalid %s"
-msgstr ""
-
-#: builtin/index-pack.c:838
+#: builtin/index-pack.c:847
 #, c-format
 msgid "Not all child objects of %s are reachable"
 msgstr ""
 
-#: builtin/index-pack.c:910 builtin/index-pack.c:941
+#: builtin/index-pack.c:919 builtin/index-pack.c:950
 msgid "failed to apply delta"
 msgstr ""
 
-#: builtin/index-pack.c:1109
+#: builtin/index-pack.c:1118
 msgid "Receiving objects"
 msgstr ""
 
-#: builtin/index-pack.c:1109
+#: builtin/index-pack.c:1118
 msgid "Indexing objects"
 msgstr ""
 
-#: builtin/index-pack.c:1143
+#: builtin/index-pack.c:1152
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr ""
 
-#: builtin/index-pack.c:1148
+#: builtin/index-pack.c:1157
 msgid "cannot fstat packfile"
 msgstr ""
 
-#: builtin/index-pack.c:1151
+#: builtin/index-pack.c:1160
 msgid "pack has junk at the end"
 msgstr ""
 
-#: builtin/index-pack.c:1163
+#: builtin/index-pack.c:1172
 msgid "confusion beyond insanity in parse_pack_objects()"
 msgstr ""
 
-#: builtin/index-pack.c:1186
+#: builtin/index-pack.c:1195
 msgid "Resolving deltas"
 msgstr ""
 
-#: builtin/index-pack.c:1196 builtin/pack-objects.c:2492
+#: builtin/index-pack.c:1205 builtin/pack-objects.c:2497
 #, c-format
 msgid "unable to create thread: %s"
 msgstr ""
 
-#: builtin/index-pack.c:1237
+#: builtin/index-pack.c:1246
 msgid "confusion beyond insanity"
 msgstr ""
 
-#: builtin/index-pack.c:1243
+#: builtin/index-pack.c:1252
 #, c-format
 msgid "completed with %d local object"
 msgid_plural "completed with %d local objects"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:1255
+#: builtin/index-pack.c:1264
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
 msgstr ""
 
-#: builtin/index-pack.c:1259
+#: builtin/index-pack.c:1268
 #, c-format
 msgid "pack has %d unresolved delta"
 msgid_plural "pack has %d unresolved deltas"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:1283
+#: builtin/index-pack.c:1292
 #, c-format
 msgid "unable to deflate appended object (%d)"
 msgstr ""
 
-#: builtin/index-pack.c:1360
+#: builtin/index-pack.c:1388
 #, c-format
 msgid "local object %s is corrupt"
 msgstr ""
 
-#: builtin/index-pack.c:1374
+#: builtin/index-pack.c:1402
 #, c-format
 msgid "packfile name '%s' does not end with '.pack'"
 msgstr ""
 
-#: builtin/index-pack.c:1399
+#: builtin/index-pack.c:1427
 #, c-format
 msgid "cannot write %s file '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:1407
+#: builtin/index-pack.c:1435
 #, c-format
 msgid "cannot close written %s file '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:1431
+#: builtin/index-pack.c:1459
 msgid "error while closing pack file"
 msgstr ""
 
-#: builtin/index-pack.c:1445
+#: builtin/index-pack.c:1473
 msgid "cannot store pack file"
 msgstr ""
 
-#: builtin/index-pack.c:1453
+#: builtin/index-pack.c:1481
 msgid "cannot store index file"
 msgstr ""
 
-#: builtin/index-pack.c:1497 builtin/pack-objects.c:2727
+#: builtin/index-pack.c:1525 builtin/pack-objects.c:2736
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr ""
 
-#: builtin/index-pack.c:1565
+#: builtin/index-pack.c:1593
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:1567
+#: builtin/index-pack.c:1595
 #, c-format
 msgid "Cannot open existing pack idx file for '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:1615
+#: builtin/index-pack.c:1643
 #, c-format
 msgid "non delta: %d object"
 msgid_plural "non delta: %d objects"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:1622
+#: builtin/index-pack.c:1650
 #, c-format
 msgid "chain length = %d: %lu object"
 msgid_plural "chain length = %d: %lu objects"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:1659
+#: builtin/index-pack.c:1689
 msgid "Cannot come back to cwd"
 msgstr ""
 
-#: builtin/index-pack.c:1708 builtin/index-pack.c:1711
-#: builtin/index-pack.c:1727 builtin/index-pack.c:1731
+#: builtin/index-pack.c:1738 builtin/index-pack.c:1741
+#: builtin/index-pack.c:1757 builtin/index-pack.c:1761
 #, c-format
 msgid "bad %s"
 msgstr ""
 
-#: builtin/index-pack.c:1747
+#: builtin/index-pack.c:1777
 msgid "--fix-thin cannot be used without --stdin"
 msgstr ""
 
-#: builtin/index-pack.c:1749
+#: builtin/index-pack.c:1779
 msgid "--stdin requires a git repository"
 msgstr ""
 
-#: builtin/index-pack.c:1755
+#: builtin/index-pack.c:1785
 msgid "--verify with no packfile name given"
 msgstr ""
 
-#: builtin/index-pack.c:1803 builtin/unpack-objects.c:580
+#: builtin/index-pack.c:1833 builtin/unpack-objects.c:580
 msgid "fsck error in pack objects"
 msgstr ""
 
@@ -11335,635 +13270,627 @@ msgstr ""
 msgid "not copying templates from '%s': %s"
 msgstr ""
 
-#: builtin/init-db.c:329
+#: builtin/init-db.c:334
 #, c-format
 msgid "unable to handle file type %d"
 msgstr ""
 
-#: builtin/init-db.c:332
+#: builtin/init-db.c:337
 #, c-format
 msgid "unable to move %s to %s"
 msgstr ""
 
-#: builtin/init-db.c:349 builtin/init-db.c:352
+#: builtin/init-db.c:354 builtin/init-db.c:357
 #, c-format
 msgid "%s already exists"
 msgstr ""
 
-#: builtin/init-db.c:405
+#: builtin/init-db.c:413
 #, c-format
 msgid "Reinitialized existing shared Git repository in %s%s\n"
 msgstr ""
 
-#: builtin/init-db.c:406
+#: builtin/init-db.c:414
 #, c-format
 msgid "Reinitialized existing Git repository in %s%s\n"
 msgstr ""
 
-#: builtin/init-db.c:410
+#: builtin/init-db.c:418
 #, c-format
 msgid "Initialized empty shared Git repository in %s%s\n"
 msgstr ""
 
-#: builtin/init-db.c:411
+#: builtin/init-db.c:419
 #, c-format
 msgid "Initialized empty Git repository in %s%s\n"
 msgstr ""
 
-#: builtin/init-db.c:460
+#: builtin/init-db.c:468
 msgid ""
 "git init [-q | --quiet] [--bare] [--template=<template-directory>] [--"
 "shared[=<permissions>]] [<directory>]"
 msgstr ""
 
-#: builtin/init-db.c:483
+#: builtin/init-db.c:491
 msgid "permissions"
 msgstr ""
 
-#: builtin/init-db.c:484
+#: builtin/init-db.c:492
 msgid "specify that the git repository is to be shared amongst several users"
 msgstr ""
 
-#: builtin/init-db.c:518 builtin/init-db.c:523
+#: builtin/init-db.c:529 builtin/init-db.c:534
 #, c-format
 msgid "cannot mkdir %s"
 msgstr ""
 
-#: builtin/init-db.c:527
+#: builtin/init-db.c:538
 #, c-format
 msgid "cannot chdir to %s"
 msgstr ""
 
-#: builtin/init-db.c:548
+#: builtin/init-db.c:559
 #, c-format
 msgid ""
 "%s (or --work-tree=<directory>) not allowed without specifying %s (or --git-"
 "dir=<directory>)"
 msgstr ""
 
-#: builtin/init-db.c:576
+#: builtin/init-db.c:587
 #, c-format
 msgid "Cannot access work tree '%s'"
 msgstr ""
 
-#: builtin/interpret-trailers.c:15
+#: builtin/interpret-trailers.c:16
 msgid ""
 "git interpret-trailers [--in-place] [--trim-empty] [(--trailer "
 "<token>[(=|:)<value>])...] [<file>...]"
 msgstr ""
 
-#: builtin/interpret-trailers.c:94
+#: builtin/interpret-trailers.c:95
 msgid "edit files in place"
 msgstr ""
 
-#: builtin/interpret-trailers.c:95
+#: builtin/interpret-trailers.c:96
 msgid "trim empty trailers"
 msgstr ""
 
-#: builtin/interpret-trailers.c:98
+#: builtin/interpret-trailers.c:99
 msgid "where to place the new trailer"
 msgstr ""
 
-#: builtin/interpret-trailers.c:100
+#: builtin/interpret-trailers.c:101
 msgid "action if trailer already exists"
 msgstr ""
 
-#: builtin/interpret-trailers.c:102
+#: builtin/interpret-trailers.c:103
 msgid "action if trailer is missing"
 msgstr ""
 
-#: builtin/interpret-trailers.c:104
+#: builtin/interpret-trailers.c:105
 msgid "output only the trailers"
 msgstr ""
 
-#: builtin/interpret-trailers.c:105
+#: builtin/interpret-trailers.c:106
 msgid "do not apply config rules"
 msgstr ""
 
-#: builtin/interpret-trailers.c:106
+#: builtin/interpret-trailers.c:107
 msgid "join whitespace-continued values"
 msgstr ""
 
-#: builtin/interpret-trailers.c:107
+#: builtin/interpret-trailers.c:108
 msgid "set parsing options"
 msgstr ""
 
-#: builtin/interpret-trailers.c:109
+#: builtin/interpret-trailers.c:110
 msgid "do not treat --- specially"
 msgstr ""
 
-#: builtin/interpret-trailers.c:110
+#: builtin/interpret-trailers.c:111
 msgid "trailer"
 msgstr ""
 
-#: builtin/interpret-trailers.c:111
+#: builtin/interpret-trailers.c:112
 msgid "trailer(s) to add"
 msgstr ""
 
-#: builtin/interpret-trailers.c:120
+#: builtin/interpret-trailers.c:123
 msgid "--trailer with --only-input does not make sense"
 msgstr ""
 
-#: builtin/interpret-trailers.c:130
+#: builtin/interpret-trailers.c:133
 msgid "no input file given for in-place editing"
 msgstr ""
 
-#: builtin/log.c:54
+#: builtin/log.c:55
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr ""
 
-#: builtin/log.c:55
+#: builtin/log.c:56
 msgid "git show [<options>] <object>..."
 msgstr ""
 
-#: builtin/log.c:99
+#: builtin/log.c:109
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr ""
 
-#: builtin/log.c:162
-msgid "suppress diff output"
-msgstr ""
-
-#: builtin/log.c:163
+#: builtin/log.c:173
 msgid "show source"
 msgstr ""
 
-#: builtin/log.c:164
+#: builtin/log.c:174
 msgid "Use mail map file"
 msgstr ""
 
-#: builtin/log.c:166
+#: builtin/log.c:176
 msgid "only decorate refs that match <pattern>"
 msgstr ""
 
-#: builtin/log.c:168
+#: builtin/log.c:178
 msgid "do not decorate refs that match <pattern>"
 msgstr ""
 
-#: builtin/log.c:169
+#: builtin/log.c:179
 msgid "decorate options"
 msgstr ""
 
-#: builtin/log.c:172
+#: builtin/log.c:182
 msgid "Process line range n,m in file, counting from 1"
 msgstr ""
 
-#: builtin/log.c:270
+#: builtin/log.c:280
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr ""
 
-#: builtin/log.c:522
+#: builtin/log.c:534
 #, c-format
 msgid "git show %s: bad file"
 msgstr ""
 
-#: builtin/log.c:537 builtin/log.c:631
+#: builtin/log.c:549 builtin/log.c:643
 #, c-format
-msgid "Could not read object %s"
+msgid "could not read object %s"
 msgstr ""
 
-#: builtin/log.c:655
+#: builtin/log.c:668
 #, c-format
-msgid "Unknown type: %d"
+msgid "unknown type: %d"
 msgstr ""
 
-#: builtin/log.c:776
+#: builtin/log.c:791
 msgid "format.headers without value"
 msgstr ""
 
-#: builtin/log.c:877
+#: builtin/log.c:908
 msgid "name of output directory is too long"
 msgstr ""
 
-#: builtin/log.c:893
+#: builtin/log.c:924
 #, c-format
-msgid "Cannot open patch file %s"
+msgid "cannot open patch file %s"
+msgstr ""
+
+#: builtin/log.c:941
+msgid "need exactly one range"
 msgstr ""
 
-#: builtin/log.c:910
-msgid "Need exactly one range."
+#: builtin/log.c:951
+msgid "not a range"
 msgstr ""
 
-#: builtin/log.c:920
-msgid "Not a range."
+#: builtin/log.c:1074
+msgid "cover letter needs email format"
 msgstr ""
 
-#: builtin/log.c:1043
-msgid "Cover letter needs email format"
+#: builtin/log.c:1080
+msgid "failed to create cover-letter file"
 msgstr ""
 
-#: builtin/log.c:1119
+#: builtin/log.c:1159
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr ""
 
-#: builtin/log.c:1146
+#: builtin/log.c:1186
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr ""
 
-#: builtin/log.c:1204
-msgid "Two output directories?"
+#: builtin/log.c:1244
+msgid "two output directories?"
 msgstr ""
 
-#: builtin/log.c:1311 builtin/log.c:2054 builtin/log.c:2056 builtin/log.c:2068
+#: builtin/log.c:1355 builtin/log.c:2099 builtin/log.c:2101 builtin/log.c:2113
 #, c-format
-msgid "Unknown commit %s"
+msgid "unknown commit %s"
 msgstr ""
 
-#: builtin/log.c:1321 builtin/notes.c:894 builtin/tag.c:526
+#: builtin/log.c:1365 builtin/replace.c:58 builtin/replace.c:207
+#: builtin/replace.c:210
 #, c-format
-msgid "Failed to resolve '%s' as a valid ref."
+msgid "failed to resolve '%s' as a valid ref"
 msgstr ""
 
-#: builtin/log.c:1326
-msgid "Could not find exact merge base."
+#: builtin/log.c:1370
+msgid "could not find exact merge base"
 msgstr ""
 
-#: builtin/log.c:1330
+#: builtin/log.c:1374
 msgid ""
-"Failed to get upstream, if you want to record base commit automatically,\n"
+"failed to get upstream, if you want to record base commit automatically,\n"
 "please use git branch --set-upstream-to to track a remote branch.\n"
-"Or you could specify base commit by --base=<base-commit-id> manually."
+"Or you could specify base commit by --base=<base-commit-id> manually"
 msgstr ""
 
-#: builtin/log.c:1350
-msgid "Failed to find exact merge base"
+#: builtin/log.c:1394
+msgid "failed to find exact merge base"
 msgstr ""
 
-#: builtin/log.c:1361
+#: builtin/log.c:1405
 msgid "base commit should be the ancestor of revision list"
 msgstr ""
 
-#: builtin/log.c:1365
+#: builtin/log.c:1409
 msgid "base commit shouldn't be in revision list"
 msgstr ""
 
-#: builtin/log.c:1418
+#: builtin/log.c:1462
 msgid "cannot get patch id"
 msgstr ""
 
-#: builtin/log.c:1470
+#: builtin/log.c:1514
 msgid "failed to infer range-diff ranges"
 msgstr ""
 
-#: builtin/log.c:1515
+#: builtin/log.c:1559
 msgid "use [PATCH n/m] even with a single patch"
 msgstr ""
 
-#: builtin/log.c:1518
+#: builtin/log.c:1562
 msgid "use [PATCH] even with multiple patches"
 msgstr ""
 
-#: builtin/log.c:1522
+#: builtin/log.c:1566
 msgid "print patches to standard out"
 msgstr ""
 
-#: builtin/log.c:1524
+#: builtin/log.c:1568
 msgid "generate a cover letter"
 msgstr ""
 
-#: builtin/log.c:1526
+#: builtin/log.c:1570
 msgid "use simple number sequence for output file names"
 msgstr ""
 
-#: builtin/log.c:1527
+#: builtin/log.c:1571
 msgid "sfx"
 msgstr ""
 
-#: builtin/log.c:1528
+#: builtin/log.c:1572
 msgid "use <sfx> instead of '.patch'"
 msgstr ""
 
-#: builtin/log.c:1530
+#: builtin/log.c:1574
 msgid "start numbering patches at <n> instead of 1"
 msgstr ""
 
-#: builtin/log.c:1532
+#: builtin/log.c:1576
 msgid "mark the series as Nth re-roll"
 msgstr ""
 
-#: builtin/log.c:1534
+#: builtin/log.c:1578
 msgid "Use [RFC PATCH] instead of [PATCH]"
 msgstr ""
 
-#: builtin/log.c:1537
+#: builtin/log.c:1581
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr ""
 
-#: builtin/log.c:1540
+#: builtin/log.c:1584
 msgid "store resulting files in <dir>"
 msgstr ""
 
-#: builtin/log.c:1543
+#: builtin/log.c:1587
 msgid "don't strip/add [PATCH]"
 msgstr ""
 
-#: builtin/log.c:1546
+#: builtin/log.c:1590
 msgid "don't output binary diffs"
 msgstr ""
 
-#: builtin/log.c:1548
+#: builtin/log.c:1592
 msgid "output all-zero hash in From header"
 msgstr ""
 
-#: builtin/log.c:1550
+#: builtin/log.c:1594
 msgid "don't include a patch matching a commit upstream"
 msgstr ""
 
-#: builtin/log.c:1552
+#: builtin/log.c:1596
 msgid "show patch format instead of default (patch + stat)"
 msgstr ""
 
-#: builtin/log.c:1554
+#: builtin/log.c:1598
 msgid "Messaging"
 msgstr ""
 
-#: builtin/log.c:1555
+#: builtin/log.c:1599
 msgid "header"
 msgstr ""
 
-#: builtin/log.c:1556
+#: builtin/log.c:1600
 msgid "add email header"
 msgstr ""
 
-#: builtin/log.c:1557 builtin/log.c:1559
+#: builtin/log.c:1601 builtin/log.c:1603
 msgid "email"
 msgstr ""
 
-#: builtin/log.c:1557
+#: builtin/log.c:1601
 msgid "add To: header"
 msgstr ""
 
-#: builtin/log.c:1559
+#: builtin/log.c:1603
 msgid "add Cc: header"
 msgstr ""
 
-#: builtin/log.c:1561
+#: builtin/log.c:1605
 msgid "ident"
 msgstr ""
 
-#: builtin/log.c:1562
+#: builtin/log.c:1606
 msgid "set From address to <ident> (or committer ident if absent)"
 msgstr ""
 
-#: builtin/log.c:1564
+#: builtin/log.c:1608
 msgid "message-id"
 msgstr ""
 
-#: builtin/log.c:1565
+#: builtin/log.c:1609
 msgid "make first mail a reply to <message-id>"
 msgstr ""
 
-#: builtin/log.c:1566 builtin/log.c:1569
+#: builtin/log.c:1610 builtin/log.c:1613
 msgid "boundary"
 msgstr ""
 
-#: builtin/log.c:1567
+#: builtin/log.c:1611
 msgid "attach the patch"
 msgstr ""
 
-#: builtin/log.c:1570
+#: builtin/log.c:1614
 msgid "inline the patch"
 msgstr ""
 
-#: builtin/log.c:1574
+#: builtin/log.c:1618
 msgid "enable message threading, styles: shallow, deep"
 msgstr ""
 
-#: builtin/log.c:1576
+#: builtin/log.c:1620
 msgid "signature"
 msgstr ""
 
-#: builtin/log.c:1577
+#: builtin/log.c:1621
 msgid "add a signature"
 msgstr ""
 
-#: builtin/log.c:1578
+#: builtin/log.c:1622
 msgid "base-commit"
 msgstr ""
 
-#: builtin/log.c:1579
+#: builtin/log.c:1623
 msgid "add prerequisite tree info to the patch series"
 msgstr ""
 
-#: builtin/log.c:1581
+#: builtin/log.c:1625
 msgid "add a signature from a file"
 msgstr ""
 
-#: builtin/log.c:1582
+#: builtin/log.c:1626
 msgid "don't print the patch filenames"
 msgstr ""
 
-#: builtin/log.c:1584
+#: builtin/log.c:1628
 msgid "show progress while generating patches"
 msgstr ""
 
-#: builtin/log.c:1585
-msgid "rev"
-msgstr ""
-
-#: builtin/log.c:1586
+#: builtin/log.c:1630
 msgid "show changes against <rev> in cover letter or single patch"
 msgstr ""
 
-#: builtin/log.c:1589
+#: builtin/log.c:1633
 msgid "show changes against <refspec> in cover letter or single patch"
 msgstr ""
 
-#: builtin/log.c:1591
+#: builtin/log.c:1635
 msgid "percentage by which creation is weighted"
 msgstr ""
 
-#: builtin/log.c:1666
+#: builtin/log.c:1710
 #, c-format
 msgid "invalid ident line: %s"
 msgstr ""
 
-#: builtin/log.c:1681
+#: builtin/log.c:1725
 msgid "-n and -k are mutually exclusive"
 msgstr ""
 
-#: builtin/log.c:1683
+#: builtin/log.c:1727
 msgid "--subject-prefix/--rfc and -k are mutually exclusive"
 msgstr ""
 
-#: builtin/log.c:1691
+#: builtin/log.c:1735
 msgid "--name-only does not make sense"
 msgstr ""
 
-#: builtin/log.c:1693
+#: builtin/log.c:1737
 msgid "--name-status does not make sense"
 msgstr ""
 
-#: builtin/log.c:1695
+#: builtin/log.c:1739
 msgid "--check does not make sense"
 msgstr ""
 
-#: builtin/log.c:1727
+#: builtin/log.c:1771
 msgid "standard output, or directory, which one?"
 msgstr ""
 
-#: builtin/log.c:1729
-#, c-format
-msgid "Could not create directory '%s'"
-msgstr ""
-
-#: builtin/log.c:1816
+#: builtin/log.c:1860
 msgid "--interdiff requires --cover-letter or single patch"
 msgstr ""
 
-#: builtin/log.c:1820
+#: builtin/log.c:1864
 msgid "Interdiff:"
 msgstr ""
 
-#: builtin/log.c:1821
+#: builtin/log.c:1865
 #, c-format
 msgid "Interdiff against v%d:"
 msgstr ""
 
-#: builtin/log.c:1827
+#: builtin/log.c:1871
 msgid "--creation-factor requires --range-diff"
 msgstr ""
 
-#: builtin/log.c:1831
+#: builtin/log.c:1875
 msgid "--range-diff requires --cover-letter or single patch"
 msgstr ""
 
-#: builtin/log.c:1839
+#: builtin/log.c:1883
 msgid "Range-diff:"
 msgstr ""
 
-#: builtin/log.c:1840
+#: builtin/log.c:1884
 #, c-format
 msgid "Range-diff against v%d:"
 msgstr ""
 
-#: builtin/log.c:1851
+#: builtin/log.c:1895
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr ""
 
-#: builtin/log.c:1887
+#: builtin/log.c:1931
 msgid "Generating patches"
 msgstr ""
 
-#: builtin/log.c:1931
-msgid "Failed to create output files"
+#: builtin/log.c:1975
+msgid "failed to create output files"
 msgstr ""
 
-#: builtin/log.c:1989
+#: builtin/log.c:2034
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr ""
 
-#: builtin/log.c:2043
+#: builtin/log.c:2088
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
 msgstr ""
 
-#: builtin/ls-files.c:469
+#: builtin/ls-files.c:470
 msgid "git ls-files [<options>] [<file>...]"
 msgstr ""
 
-#: builtin/ls-files.c:525
+#: builtin/ls-files.c:526
 msgid "identify the file status with tags"
 msgstr ""
 
-#: builtin/ls-files.c:527
+#: builtin/ls-files.c:528
 msgid "use lowercase letters for 'assume unchanged' files"
 msgstr ""
 
-#: builtin/ls-files.c:529
+#: builtin/ls-files.c:530
 msgid "use lowercase letters for 'fsmonitor clean' files"
 msgstr ""
 
-#: builtin/ls-files.c:531
+#: builtin/ls-files.c:532
 msgid "show cached files in the output (default)"
 msgstr ""
 
-#: builtin/ls-files.c:533
+#: builtin/ls-files.c:534
 msgid "show deleted files in the output"
 msgstr ""
 
-#: builtin/ls-files.c:535
+#: builtin/ls-files.c:536
 msgid "show modified files in the output"
 msgstr ""
 
-#: builtin/ls-files.c:537
+#: builtin/ls-files.c:538
 msgid "show other files in the output"
 msgstr ""
 
-#: builtin/ls-files.c:539
+#: builtin/ls-files.c:540
 msgid "show ignored files in the output"
 msgstr ""
 
-#: builtin/ls-files.c:542
+#: builtin/ls-files.c:543
 msgid "show staged contents' object name in the output"
 msgstr ""
 
-#: builtin/ls-files.c:544
+#: builtin/ls-files.c:545
 msgid "show files on the filesystem that need to be removed"
 msgstr ""
 
-#: builtin/ls-files.c:546
+#: builtin/ls-files.c:547
 msgid "show 'other' directories' names only"
 msgstr ""
 
-#: builtin/ls-files.c:548
+#: builtin/ls-files.c:549
 msgid "show line endings of files"
 msgstr ""
 
-#: builtin/ls-files.c:550
+#: builtin/ls-files.c:551
 msgid "don't show empty directories"
 msgstr ""
 
-#: builtin/ls-files.c:553
+#: builtin/ls-files.c:554
 msgid "show unmerged files in the output"
 msgstr ""
 
-#: builtin/ls-files.c:555
+#: builtin/ls-files.c:556
 msgid "show resolve-undo information"
 msgstr ""
 
-#: builtin/ls-files.c:557
+#: builtin/ls-files.c:558
 msgid "skip files matching pattern"
 msgstr ""
 
-#: builtin/ls-files.c:560
+#: builtin/ls-files.c:561
 msgid "exclude patterns are read from <file>"
 msgstr ""
 
-#: builtin/ls-files.c:563
+#: builtin/ls-files.c:564
 msgid "read additional per-directory exclude patterns in <file>"
 msgstr ""
 
-#: builtin/ls-files.c:565
+#: builtin/ls-files.c:566
 msgid "add the standard git exclusions"
 msgstr ""
 
-#: builtin/ls-files.c:569
+#: builtin/ls-files.c:570
 msgid "make the output relative to the project top directory"
 msgstr ""
 
-#: builtin/ls-files.c:572
+#: builtin/ls-files.c:573
 msgid "recurse through submodules"
 msgstr ""
 
-#: builtin/ls-files.c:574
+#: builtin/ls-files.c:575
 msgid "if any <file> is not in the index, treat this as an error"
 msgstr ""
 
-#: builtin/ls-files.c:575
+#: builtin/ls-files.c:576
 msgid "tree-ish"
 msgstr ""
 
-#: builtin/ls-files.c:576
+#: builtin/ls-files.c:577
 msgid "pretend that paths removed since <tree-ish> are still present"
 msgstr ""
 
-#: builtin/ls-files.c:578
+#: builtin/ls-files.c:579
 msgid "show debugging data"
 msgstr ""
 
@@ -11978,7 +13905,7 @@ msgstr ""
 msgid "do not print remote URL"
 msgstr ""
 
-#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:885
+#: builtin/ls-remote.c:60 builtin/ls-remote.c:62 builtin/rebase.c:1464
 msgid "exec"
 msgstr ""
 
@@ -12002,11 +13929,11 @@ msgstr ""
 msgid "take url.<base>.insteadOf into account"
 msgstr ""
 
-#: builtin/ls-remote.c:73
+#: builtin/ls-remote.c:72
 msgid "exit with exit code 2 if no matching refs are found"
 msgstr ""
 
-#: builtin/ls-remote.c:76
+#: builtin/ls-remote.c:75
 msgid "show underlying ref in addition to the object pointed by it"
 msgstr ""
 
@@ -12051,348 +13978,373 @@ msgstr ""
 msgid "empty mbox: '%s'"
 msgstr ""
 
-#: builtin/merge.c:52
+#: builtin/merge.c:55
 msgid "git merge [<options>] [<commit>...]"
 msgstr ""
 
-#: builtin/merge.c:53
+#: builtin/merge.c:56
 msgid "git merge --abort"
 msgstr ""
 
-#: builtin/merge.c:54
+#: builtin/merge.c:57
 msgid "git merge --continue"
 msgstr ""
 
-#: builtin/merge.c:111
+#: builtin/merge.c:118
 msgid "switch `m' requires a value"
 msgstr ""
 
-#: builtin/merge.c:177
+#: builtin/merge.c:141
+#, c-format
+msgid "option `%s' requires a value"
+msgstr ""
+
+#: builtin/merge.c:187
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr ""
 
-#: builtin/merge.c:178
+#: builtin/merge.c:188
 #, c-format
 msgid "Available strategies are:"
 msgstr ""
 
-#: builtin/merge.c:183
+#: builtin/merge.c:193
 #, c-format
 msgid "Available custom strategies are:"
 msgstr ""
 
-#: builtin/merge.c:234 builtin/pull.c:143
+#: builtin/merge.c:244 builtin/pull.c:151
 msgid "do not show a diffstat at the end of the merge"
 msgstr ""
 
-#: builtin/merge.c:237 builtin/pull.c:146
+#: builtin/merge.c:247 builtin/pull.c:154
 msgid "show a diffstat at the end of the merge"
 msgstr ""
 
-#: builtin/merge.c:238 builtin/pull.c:149
+#: builtin/merge.c:248 builtin/pull.c:157
 msgid "(synonym to --stat)"
 msgstr ""
 
-#: builtin/merge.c:240 builtin/pull.c:152
+#: builtin/merge.c:250 builtin/pull.c:160
 msgid "add (at most <n>) entries from shortlog to merge commit message"
 msgstr ""
 
-#: builtin/merge.c:243 builtin/pull.c:158
+#: builtin/merge.c:253 builtin/pull.c:166
 msgid "create a single commit instead of doing a merge"
 msgstr ""
 
-#: builtin/merge.c:245 builtin/pull.c:161
+#: builtin/merge.c:255 builtin/pull.c:169
 msgid "perform a commit if the merge succeeds (default)"
 msgstr ""
 
-#: builtin/merge.c:247 builtin/pull.c:164
+#: builtin/merge.c:257 builtin/pull.c:172
 msgid "edit message before committing"
 msgstr ""
 
-#: builtin/merge.c:248
+#: builtin/merge.c:259
 msgid "allow fast-forward (default)"
 msgstr ""
 
-#: builtin/merge.c:250 builtin/pull.c:170
+#: builtin/merge.c:261 builtin/pull.c:179
 msgid "abort if fast-forward is not possible"
 msgstr ""
 
-#: builtin/merge.c:254 builtin/pull.c:173
+#: builtin/merge.c:265 builtin/pull.c:182
 msgid "verify that the named commit has a valid GPG signature"
 msgstr ""
 
-#: builtin/merge.c:255 builtin/notes.c:784 builtin/pull.c:177
-#: builtin/rebase.c:898 builtin/rebase--interactive.c:186 builtin/revert.c:110
+#: builtin/merge.c:266 builtin/notes.c:787 builtin/pull.c:186
+#: builtin/rebase.c:492 builtin/rebase.c:1477 builtin/revert.c:114
 msgid "strategy"
 msgstr ""
 
-#: builtin/merge.c:256 builtin/pull.c:178
+#: builtin/merge.c:267 builtin/pull.c:187
 msgid "merge strategy to use"
 msgstr ""
 
-#: builtin/merge.c:257 builtin/pull.c:181
+#: builtin/merge.c:268 builtin/pull.c:190
 msgid "option=value"
 msgstr ""
 
-#: builtin/merge.c:258 builtin/pull.c:182
+#: builtin/merge.c:269 builtin/pull.c:191
 msgid "option for selected merge strategy"
 msgstr ""
 
-#: builtin/merge.c:260
+#: builtin/merge.c:271
 msgid "merge commit message (for a non-fast-forward merge)"
 msgstr ""
 
-#: builtin/merge.c:267
+#: builtin/merge.c:278
 msgid "abort the current in-progress merge"
 msgstr ""
 
-#: builtin/merge.c:269
+#: builtin/merge.c:280
+msgid "--abort but leave index and working tree alone"
+msgstr ""
+
+#: builtin/merge.c:282
 msgid "continue the current in-progress merge"
 msgstr ""
 
-#: builtin/merge.c:271 builtin/pull.c:189
+#: builtin/merge.c:284 builtin/pull.c:198
 msgid "allow merging unrelated histories"
 msgstr ""
 
-#: builtin/merge.c:277
+#: builtin/merge.c:290
 msgid "verify commit-msg hook"
 msgstr ""
 
-#: builtin/merge.c:302
+#: builtin/merge.c:307
 msgid "could not run stash."
 msgstr ""
 
-#: builtin/merge.c:307
+#: builtin/merge.c:312
 msgid "stash failed"
 msgstr ""
 
-#: builtin/merge.c:312
+#: builtin/merge.c:317
 #, c-format
 msgid "not a valid object: %s"
 msgstr ""
 
-#: builtin/merge.c:334 builtin/merge.c:351
+#: builtin/merge.c:339 builtin/merge.c:356
 msgid "read-tree failed"
 msgstr ""
 
-#: builtin/merge.c:381
+#: builtin/merge.c:386
 msgid " (nothing to squash)"
 msgstr ""
 
-#: builtin/merge.c:392
+#: builtin/merge.c:397
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr ""
 
-#: builtin/merge.c:442
+#: builtin/merge.c:447
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr ""
 
-#: builtin/merge.c:493
+#: builtin/merge.c:498
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr ""
 
-#: builtin/merge.c:580
+#: builtin/merge.c:585
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr ""
 
-#: builtin/merge.c:701
+#: builtin/merge.c:708
 msgid "Not handling anything other than two heads merge."
 msgstr ""
 
-#: builtin/merge.c:715
+#: builtin/merge.c:722
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr ""
 
-#: builtin/merge.c:730
+#: builtin/merge.c:737
 #, c-format
 msgid "unable to write %s"
 msgstr ""
 
-#: builtin/merge.c:782
+#: builtin/merge.c:789
 #, c-format
 msgid "Could not read from '%s'"
 msgstr ""
 
-#: builtin/merge.c:791
+#: builtin/merge.c:798
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr ""
 
-#: builtin/merge.c:797
-#, c-format
+#: builtin/merge.c:804
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
 "especially if it merges an updated upstream into a topic branch.\n"
 "\n"
+msgstr ""
+
+#: builtin/merge.c:809
+msgid "An empty message aborts the commit.\n"
+msgstr ""
+
+#: builtin/merge.c:812
+#, c-format
+msgid ""
 "Lines starting with '%c' will be ignored, and an empty message aborts\n"
 "the commit.\n"
 msgstr ""
 
-#: builtin/merge.c:833
+#: builtin/merge.c:853
 msgid "Empty commit message."
 msgstr ""
 
-#: builtin/merge.c:852
+#: builtin/merge.c:872
 #, c-format
 msgid "Wonderful.\n"
 msgstr ""
 
-#: builtin/merge.c:905
+#: builtin/merge.c:933
 #, c-format
 msgid "Automatic merge failed; fix conflicts and then commit the result.\n"
 msgstr ""
 
-#: builtin/merge.c:944
+#: builtin/merge.c:972
 msgid "No current branch."
 msgstr ""
 
-#: builtin/merge.c:946
+#: builtin/merge.c:974
 msgid "No remote for the current branch."
 msgstr ""
 
-#: builtin/merge.c:948
+#: builtin/merge.c:976
 msgid "No default upstream defined for the current branch."
 msgstr ""
 
-#: builtin/merge.c:953
+#: builtin/merge.c:981
 #, c-format
 msgid "No remote-tracking branch for %s from %s"
 msgstr ""
 
-#: builtin/merge.c:1010
+#: builtin/merge.c:1038
 #, c-format
 msgid "Bad value '%s' in environment '%s'"
 msgstr ""
 
-#: builtin/merge.c:1113
+#: builtin/merge.c:1141
 #, c-format
 msgid "not something we can merge in %s: %s"
 msgstr ""
 
-#: builtin/merge.c:1147
+#: builtin/merge.c:1175
 msgid "not something we can merge"
 msgstr ""
 
-#: builtin/merge.c:1250
+#: builtin/merge.c:1278
 msgid "--abort expects no arguments"
 msgstr ""
 
-#: builtin/merge.c:1254
+#: builtin/merge.c:1282
 msgid "There is no merge to abort (MERGE_HEAD missing)."
 msgstr ""
 
-#: builtin/merge.c:1266
+#: builtin/merge.c:1291
+msgid "--quit expects no arguments"
+msgstr ""
+
+#: builtin/merge.c:1304
 msgid "--continue expects no arguments"
 msgstr ""
 
-#: builtin/merge.c:1270
+#: builtin/merge.c:1308
 msgid "There is no merge in progress (MERGE_HEAD missing)."
 msgstr ""
 
-#: builtin/merge.c:1286
+#: builtin/merge.c:1324
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
 msgstr ""
 
-#: builtin/merge.c:1293
+#: builtin/merge.c:1331
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
 msgstr ""
 
-#: builtin/merge.c:1296
+#: builtin/merge.c:1334
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
 msgstr ""
 
-#: builtin/merge.c:1305
+#: builtin/merge.c:1348
 msgid "You cannot combine --squash with --no-ff."
 msgstr ""
 
-#: builtin/merge.c:1313
+#: builtin/merge.c:1350
+msgid "You cannot combine --squash with --commit."
+msgstr ""
+
+#: builtin/merge.c:1366
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr ""
 
-#: builtin/merge.c:1330
+#: builtin/merge.c:1383
 msgid "Squash commit into empty head not supported yet"
 msgstr ""
 
-#: builtin/merge.c:1332
+#: builtin/merge.c:1385
 msgid "Non-fast-forward commit does not make sense into an empty head"
 msgstr ""
 
-#: builtin/merge.c:1337
+#: builtin/merge.c:1390
 #, c-format
 msgid "%s - not something we can merge"
 msgstr ""
 
-#: builtin/merge.c:1339
+#: builtin/merge.c:1392
 msgid "Can merge only exactly one commit into empty head"
 msgstr ""
 
-#: builtin/merge.c:1421
+#: builtin/merge.c:1471
 msgid "refusing to merge unrelated histories"
 msgstr ""
 
-#: builtin/merge.c:1430
+#: builtin/merge.c:1480
 msgid "Already up to date."
 msgstr ""
 
-#: builtin/merge.c:1440
+#: builtin/merge.c:1490
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr ""
 
-#: builtin/merge.c:1482
+#: builtin/merge.c:1532
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr ""
 
-#: builtin/merge.c:1489
+#: builtin/merge.c:1539
 #, c-format
 msgid "Nope.\n"
 msgstr ""
 
-#: builtin/merge.c:1514
+#: builtin/merge.c:1564
 msgid "Already up to date. Yeeah!"
 msgstr ""
 
-#: builtin/merge.c:1520
+#: builtin/merge.c:1570
 msgid "Not possible to fast-forward, aborting."
 msgstr ""
 
-#: builtin/merge.c:1543 builtin/merge.c:1622
+#: builtin/merge.c:1593 builtin/merge.c:1658
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr ""
 
-#: builtin/merge.c:1547
+#: builtin/merge.c:1597
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr ""
 
-#: builtin/merge.c:1613
+#: builtin/merge.c:1649
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr ""
 
-#: builtin/merge.c:1615
+#: builtin/merge.c:1651
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr ""
 
-#: builtin/merge.c:1624
+#: builtin/merge.c:1660
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
 msgstr ""
 
-#: builtin/merge.c:1636
+#: builtin/merge.c:1672
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -12475,33 +14427,33 @@ msgstr ""
 msgid "set labels for file1/orig-file/file2"
 msgstr ""
 
-#: builtin/merge-recursive.c:45
+#: builtin/merge-recursive.c:46
 #, c-format
 msgid "unknown option %s"
 msgstr ""
 
-#: builtin/merge-recursive.c:51
+#: builtin/merge-recursive.c:52
 #, c-format
 msgid "could not parse object '%s'"
 msgstr ""
 
-#: builtin/merge-recursive.c:55
+#: builtin/merge-recursive.c:56
 #, c-format
 msgid "cannot handle more than %d base. Ignoring %s."
 msgid_plural "cannot handle more than %d bases. Ignoring %s."
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/merge-recursive.c:63
+#: builtin/merge-recursive.c:64
 msgid "not handling anything other than two heads merge."
 msgstr ""
 
-#: builtin/merge-recursive.c:69 builtin/merge-recursive.c:71
+#: builtin/merge-recursive.c:70 builtin/merge-recursive.c:72
 #, c-format
 msgid "could not resolve ref '%s'"
 msgstr ""
 
-#: builtin/merge-recursive.c:77
+#: builtin/merge-recursive.c:78
 #, c-format
 msgid "Merging %s with %s\n"
 msgstr ""
@@ -12514,7 +14466,7 @@ msgstr ""
 msgid "input is NUL terminated"
 msgstr ""
 
-#: builtin/mktree.c:155 builtin/write-tree.c:25
+#: builtin/mktree.c:155 builtin/write-tree.c:26
 msgid "allow missing objects"
 msgstr ""
 
@@ -12522,156 +14474,168 @@ msgstr ""
 msgid "allow creation of more than one tree"
 msgstr ""
 
-#: builtin/multi-pack-index.c:8
-msgid "git multi-pack-index [--object-dir=<dir>] (write|verify)"
+#: builtin/multi-pack-index.c:9
+msgid ""
+"git multi-pack-index [--object-dir=<dir>] (write|verify|expire|repack --"
+"batch-size=<size>)"
 msgstr ""
 
-#: builtin/multi-pack-index.c:21
+#: builtin/multi-pack-index.c:23
 msgid "object directory containing set of packfile and pack-index pairs"
 msgstr ""
 
-#: builtin/multi-pack-index.c:39
+#: builtin/multi-pack-index.c:25
+msgid ""
+"during repack, collect pack-files of smaller size into a batch that is "
+"larger than this size"
+msgstr ""
+
+#: builtin/multi-pack-index.c:43 builtin/prune-packed.c:67
 msgid "too many arguments"
 msgstr ""
 
-#: builtin/multi-pack-index.c:48
+#: builtin/multi-pack-index.c:52
+msgid "--batch-size option is only for 'repack' subcommand"
+msgstr ""
+
+#: builtin/multi-pack-index.c:61
 #, c-format
-msgid "unrecognized verb: %s"
+msgid "unrecognized subcommand: %s"
 msgstr ""
 
-#: builtin/mv.c:17
+#: builtin/mv.c:18
 msgid "git mv [<options>] <source>... <destination>"
 msgstr ""
 
-#: builtin/mv.c:82
+#: builtin/mv.c:83
 #, c-format
 msgid "Directory %s is in index and no submodule?"
 msgstr ""
 
-#: builtin/mv.c:84
+#: builtin/mv.c:85
 msgid "Please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
 
-#: builtin/mv.c:102
+#: builtin/mv.c:103
 #, c-format
 msgid "%.*s is in index"
 msgstr ""
 
-#: builtin/mv.c:124
+#: builtin/mv.c:125
 msgid "force move/rename even if target exists"
 msgstr ""
 
-#: builtin/mv.c:126
+#: builtin/mv.c:127
 msgid "skip move/rename errors"
 msgstr ""
 
-#: builtin/mv.c:168
+#: builtin/mv.c:169
 #, c-format
 msgid "destination '%s' is not a directory"
 msgstr ""
 
-#: builtin/mv.c:179
+#: builtin/mv.c:180
 #, c-format
 msgid "Checking rename of '%s' to '%s'\n"
 msgstr ""
 
-#: builtin/mv.c:183
+#: builtin/mv.c:184
 msgid "bad source"
 msgstr ""
 
-#: builtin/mv.c:186
+#: builtin/mv.c:187
 msgid "can not move directory into itself"
 msgstr ""
 
-#: builtin/mv.c:189
+#: builtin/mv.c:190
 msgid "cannot move directory over file"
 msgstr ""
 
-#: builtin/mv.c:198
+#: builtin/mv.c:199
 msgid "source directory is empty"
 msgstr ""
 
-#: builtin/mv.c:223
+#: builtin/mv.c:224
 msgid "not under version control"
 msgstr ""
 
-#: builtin/mv.c:226
+#: builtin/mv.c:227
 msgid "destination exists"
 msgstr ""
 
-#: builtin/mv.c:234
+#: builtin/mv.c:235
 #, c-format
 msgid "overwriting '%s'"
 msgstr ""
 
-#: builtin/mv.c:237
+#: builtin/mv.c:238
 msgid "Cannot overwrite"
 msgstr ""
 
-#: builtin/mv.c:240
+#: builtin/mv.c:241
 msgid "multiple sources for the same target"
 msgstr ""
 
-#: builtin/mv.c:242
+#: builtin/mv.c:243
 msgid "destination directory does not exist"
 msgstr ""
 
-#: builtin/mv.c:249
+#: builtin/mv.c:250
 #, c-format
 msgid "%s, source=%s, destination=%s"
 msgstr ""
 
-#: builtin/mv.c:270
+#: builtin/mv.c:271
 #, c-format
 msgid "Renaming %s to %s\n"
 msgstr ""
 
-#: builtin/mv.c:276 builtin/remote.c:717 builtin/repack.c:511
+#: builtin/mv.c:277 builtin/remote.c:717 builtin/repack.c:510
 #, c-format
 msgid "renaming '%s' failed"
 msgstr ""
 
-#: builtin/name-rev.c:355
+#: builtin/name-rev.c:352
 msgid "git name-rev [<options>] <commit>..."
 msgstr ""
 
-#: builtin/name-rev.c:356
+#: builtin/name-rev.c:353
 msgid "git name-rev [<options>] --all"
 msgstr ""
 
-#: builtin/name-rev.c:357
+#: builtin/name-rev.c:354
 msgid "git name-rev [<options>] --stdin"
 msgstr ""
 
-#: builtin/name-rev.c:413
+#: builtin/name-rev.c:411
 msgid "print only names (no SHA-1)"
 msgstr ""
 
-#: builtin/name-rev.c:414
+#: builtin/name-rev.c:412
 msgid "only use tags to name the commits"
 msgstr ""
 
-#: builtin/name-rev.c:416
+#: builtin/name-rev.c:414
 msgid "only use refs matching <pattern>"
 msgstr ""
 
-#: builtin/name-rev.c:418
+#: builtin/name-rev.c:416
 msgid "ignore refs matching <pattern>"
 msgstr ""
 
-#: builtin/name-rev.c:420
+#: builtin/name-rev.c:418
 msgid "list all commits reachable from all refs"
 msgstr ""
 
-#: builtin/name-rev.c:421
+#: builtin/name-rev.c:419
 msgid "read from stdin"
 msgstr ""
 
-#: builtin/name-rev.c:422
+#: builtin/name-rev.c:420
 msgid "allow to print `undefined` names (default)"
 msgstr ""
 
-#: builtin/name-rev.c:428
+#: builtin/name-rev.c:426
 msgid "dereference tags in the input (internal use)"
 msgstr ""
 
@@ -12811,14 +14775,14 @@ msgstr ""
 msgid "the note contents have been left in %s"
 msgstr ""
 
-#: builtin/notes.c:242 builtin/tag.c:513
+#: builtin/notes.c:242 builtin/tag.c:532
 #, c-format
 msgid "could not open or read '%s'"
 msgstr ""
 
 #: builtin/notes.c:263 builtin/notes.c:313 builtin/notes.c:315
-#: builtin/notes.c:383 builtin/notes.c:438 builtin/notes.c:524
-#: builtin/notes.c:529 builtin/notes.c:607 builtin/notes.c:669
+#: builtin/notes.c:383 builtin/notes.c:438 builtin/notes.c:526
+#: builtin/notes.c:531 builtin/notes.c:610 builtin/notes.c:672
 #, c-format
 msgid "failed to resolve '%s' as a valid ref."
 msgstr ""
@@ -12851,38 +14815,38 @@ msgstr ""
 msgid "refusing to %s notes in %s (outside of refs/notes/)"
 msgstr ""
 
-#: builtin/notes.c:376 builtin/notes.c:431 builtin/notes.c:507
-#: builtin/notes.c:519 builtin/notes.c:595 builtin/notes.c:662
-#: builtin/notes.c:812 builtin/notes.c:959 builtin/notes.c:980
+#: builtin/notes.c:376 builtin/notes.c:431 builtin/notes.c:509
+#: builtin/notes.c:521 builtin/notes.c:598 builtin/notes.c:665
+#: builtin/notes.c:815 builtin/notes.c:963 builtin/notes.c:985
 msgid "too many parameters"
 msgstr ""
 
-#: builtin/notes.c:389 builtin/notes.c:675
+#: builtin/notes.c:389 builtin/notes.c:678
 #, c-format
 msgid "no note found for object %s."
 msgstr ""
 
-#: builtin/notes.c:410 builtin/notes.c:573
+#: builtin/notes.c:410 builtin/notes.c:576
 msgid "note contents as a string"
 msgstr ""
 
-#: builtin/notes.c:413 builtin/notes.c:576
+#: builtin/notes.c:413 builtin/notes.c:579
 msgid "note contents in a file"
 msgstr ""
 
-#: builtin/notes.c:416 builtin/notes.c:579
+#: builtin/notes.c:416 builtin/notes.c:582
 msgid "reuse and edit specified note object"
 msgstr ""
 
-#: builtin/notes.c:419 builtin/notes.c:582
+#: builtin/notes.c:419 builtin/notes.c:585
 msgid "reuse specified note object"
 msgstr ""
 
-#: builtin/notes.c:422 builtin/notes.c:585
+#: builtin/notes.c:422 builtin/notes.c:588
 msgid "allow storing empty note"
 msgstr ""
 
-#: builtin/notes.c:423 builtin/notes.c:494
+#: builtin/notes.c:423 builtin/notes.c:496
 msgid "replace existing notes"
 msgstr ""
 
@@ -12893,138 +14857,138 @@ msgid ""
 "existing notes"
 msgstr ""
 
-#: builtin/notes.c:463 builtin/notes.c:542
+#: builtin/notes.c:463 builtin/notes.c:544
 #, c-format
 msgid "Overwriting existing notes for object %s\n"
 msgstr ""
 
-#: builtin/notes.c:474 builtin/notes.c:634 builtin/notes.c:899
+#: builtin/notes.c:475 builtin/notes.c:637 builtin/notes.c:902
 #, c-format
 msgid "Removing note for object %s\n"
 msgstr ""
 
-#: builtin/notes.c:495
+#: builtin/notes.c:497
 msgid "read objects from stdin"
 msgstr ""
 
-#: builtin/notes.c:497
+#: builtin/notes.c:499
 msgid "load rewriting config for <command> (implies --stdin)"
 msgstr ""
 
-#: builtin/notes.c:515
+#: builtin/notes.c:517
 msgid "too few parameters"
 msgstr ""
 
-#: builtin/notes.c:536
+#: builtin/notes.c:538
 #, c-format
 msgid ""
 "Cannot copy notes. Found existing notes for object %s. Use '-f' to overwrite "
 "existing notes"
 msgstr ""
 
-#: builtin/notes.c:548
+#: builtin/notes.c:550
 #, c-format
 msgid "missing notes on source object %s. Cannot copy."
 msgstr ""
 
-#: builtin/notes.c:600
+#: builtin/notes.c:603
 #, c-format
 msgid ""
 "The -m/-F/-c/-C options have been deprecated for the 'edit' subcommand.\n"
 "Please use 'git notes add -f -m/-F/-c/-C' instead.\n"
 msgstr ""
 
-#: builtin/notes.c:695
+#: builtin/notes.c:698
 msgid "failed to delete ref NOTES_MERGE_PARTIAL"
 msgstr ""
 
-#: builtin/notes.c:697
+#: builtin/notes.c:700
 msgid "failed to delete ref NOTES_MERGE_REF"
 msgstr ""
 
-#: builtin/notes.c:699
+#: builtin/notes.c:702
 msgid "failed to remove 'git notes merge' worktree"
 msgstr ""
 
-#: builtin/notes.c:719
+#: builtin/notes.c:722
 msgid "failed to read ref NOTES_MERGE_PARTIAL"
 msgstr ""
 
-#: builtin/notes.c:721
+#: builtin/notes.c:724
 msgid "could not find commit from NOTES_MERGE_PARTIAL."
 msgstr ""
 
-#: builtin/notes.c:723
+#: builtin/notes.c:726
 msgid "could not parse commit from NOTES_MERGE_PARTIAL."
 msgstr ""
 
-#: builtin/notes.c:736
+#: builtin/notes.c:739
 msgid "failed to resolve NOTES_MERGE_REF"
 msgstr ""
 
-#: builtin/notes.c:739
+#: builtin/notes.c:742
 msgid "failed to finalize notes merge"
 msgstr ""
 
-#: builtin/notes.c:765
+#: builtin/notes.c:768
 #, c-format
 msgid "unknown notes merge strategy %s"
 msgstr ""
 
-#: builtin/notes.c:781
+#: builtin/notes.c:784
 msgid "General options"
 msgstr ""
 
-#: builtin/notes.c:783
+#: builtin/notes.c:786
 msgid "Merge options"
 msgstr ""
 
-#: builtin/notes.c:785
+#: builtin/notes.c:788
 msgid ""
 "resolve notes conflicts using the given strategy (manual/ours/theirs/union/"
 "cat_sort_uniq)"
 msgstr ""
 
-#: builtin/notes.c:787
+#: builtin/notes.c:790
 msgid "Committing unmerged notes"
 msgstr ""
 
-#: builtin/notes.c:789
+#: builtin/notes.c:792
 msgid "finalize notes merge by committing unmerged notes"
 msgstr ""
 
-#: builtin/notes.c:791
+#: builtin/notes.c:794
 msgid "Aborting notes merge resolution"
 msgstr ""
 
-#: builtin/notes.c:793
+#: builtin/notes.c:796
 msgid "abort notes merge"
 msgstr ""
 
-#: builtin/notes.c:804
+#: builtin/notes.c:807
 msgid "cannot mix --commit, --abort or -s/--strategy"
 msgstr ""
 
-#: builtin/notes.c:809
+#: builtin/notes.c:812
 msgid "must specify a notes ref to merge"
 msgstr ""
 
-#: builtin/notes.c:833
+#: builtin/notes.c:836
 #, c-format
 msgid "unknown -s/--strategy: %s"
 msgstr ""
 
-#: builtin/notes.c:870
+#: builtin/notes.c:873
 #, c-format
 msgid "a notes merge into %s is already in-progress at %s"
 msgstr ""
 
-#: builtin/notes.c:873
+#: builtin/notes.c:876
 #, c-format
 msgid "failed to store link to current notes ref (%s)"
 msgstr ""
 
-#: builtin/notes.c:875
+#: builtin/notes.c:878
 #, c-format
 msgid ""
 "Automatic notes merge failed. Fix conflicts in %s and commit the result with "
@@ -13032,422 +14996,435 @@ msgid ""
 "abort'.\n"
 msgstr ""
 
-#: builtin/notes.c:897
+#: builtin/notes.c:897 builtin/tag.c:545
+#, c-format
+msgid "Failed to resolve '%s' as a valid ref."
+msgstr ""
+
+#: builtin/notes.c:900
 #, c-format
 msgid "Object %s has no note\n"
 msgstr ""
 
-#: builtin/notes.c:909
+#: builtin/notes.c:912
 msgid "attempt to remove non-existent note is not an error"
 msgstr ""
 
-#: builtin/notes.c:912
+#: builtin/notes.c:915
 msgid "read object names from the standard input"
 msgstr ""
 
-#: builtin/notes.c:950 builtin/prune.c:108 builtin/worktree.c:164
+#: builtin/notes.c:954 builtin/prune.c:130 builtin/worktree.c:165
 msgid "do not remove, show only"
 msgstr ""
 
-#: builtin/notes.c:951
+#: builtin/notes.c:955
 msgid "report pruned notes"
 msgstr ""
 
-#: builtin/notes.c:993
+#: builtin/notes.c:998
 msgid "notes-ref"
 msgstr ""
 
-#: builtin/notes.c:994
+#: builtin/notes.c:999
 msgid "use notes from <notes-ref>"
 msgstr ""
 
-#: builtin/notes.c:1029
+#: builtin/notes.c:1034 builtin/stash.c:1598
 #, c-format
 msgid "unknown subcommand: %s"
 msgstr ""
 
-#: builtin/pack-objects.c:51
+#: builtin/pack-objects.c:52
 msgid ""
 "git pack-objects --stdout [<options>...] [< <ref-list> | < <object-list>]"
 msgstr ""
 
-#: builtin/pack-objects.c:52
+#: builtin/pack-objects.c:53
 msgid ""
 "git pack-objects [<options>...] <base-name> [< <ref-list> | < <object-list>]"
 msgstr ""
 
-#: builtin/pack-objects.c:422
+#: builtin/pack-objects.c:428
 #, c-format
 msgid "bad packed object CRC for %s"
 msgstr ""
 
-#: builtin/pack-objects.c:433
+#: builtin/pack-objects.c:439
 #, c-format
 msgid "corrupt packed object for %s"
 msgstr ""
 
-#: builtin/pack-objects.c:564
+#: builtin/pack-objects.c:570
 #, c-format
 msgid "recursive delta detected for object %s"
 msgstr ""
 
-#: builtin/pack-objects.c:775
+#: builtin/pack-objects.c:781
 #, c-format
 msgid "ordered %u objects, expected %<PRIu32>"
 msgstr ""
 
-#: builtin/pack-objects.c:788
+#: builtin/pack-objects.c:794
 #, c-format
 msgid "packfile is invalid: %s"
 msgstr ""
 
-#: builtin/pack-objects.c:792
+#: builtin/pack-objects.c:798
 #, c-format
 msgid "unable to open packfile for reuse: %s"
 msgstr ""
 
-#: builtin/pack-objects.c:796
+#: builtin/pack-objects.c:802
 msgid "unable to seek in reused packfile"
 msgstr ""
 
-#: builtin/pack-objects.c:807
+#: builtin/pack-objects.c:813
 msgid "unable to read from reused packfile"
 msgstr ""
 
-#: builtin/pack-objects.c:835
+#: builtin/pack-objects.c:841
 msgid "disabling bitmap writing, packs are split due to pack.packSizeLimit"
 msgstr ""
 
-#: builtin/pack-objects.c:848
+#: builtin/pack-objects.c:854
 msgid "Writing objects"
 msgstr ""
 
-#: builtin/pack-objects.c:910 builtin/update-index.c:88
+#: builtin/pack-objects.c:917 builtin/update-index.c:89
 #, c-format
 msgid "failed to stat %s"
 msgstr ""
 
-#: builtin/pack-objects.c:963
+#: builtin/pack-objects.c:970
 #, c-format
 msgid "wrote %<PRIu32> objects while expecting %<PRIu32>"
 msgstr ""
 
-#: builtin/pack-objects.c:1157
+#: builtin/pack-objects.c:1166
 msgid "disabling bitmap writing, as some objects are not being packed"
 msgstr ""
 
-#: builtin/pack-objects.c:1585
+#: builtin/pack-objects.c:1597
 #, c-format
 msgid "delta base offset overflow in pack for %s"
 msgstr ""
 
-#: builtin/pack-objects.c:1594
+#: builtin/pack-objects.c:1606
 #, c-format
 msgid "delta base offset out of bound for %s"
 msgstr ""
 
-#: builtin/pack-objects.c:1863
+#: builtin/pack-objects.c:1875
 msgid "Counting objects"
 msgstr ""
 
-#: builtin/pack-objects.c:1998
+#: builtin/pack-objects.c:2005
 #, c-format
 msgid "unable to get size of %s"
 msgstr ""
 
-#: builtin/pack-objects.c:2013
+#: builtin/pack-objects.c:2020
 #, c-format
 msgid "unable to parse object header of %s"
 msgstr ""
 
-#: builtin/pack-objects.c:2083 builtin/pack-objects.c:2099
-#: builtin/pack-objects.c:2109
+#: builtin/pack-objects.c:2090 builtin/pack-objects.c:2106
+#: builtin/pack-objects.c:2116
 #, c-format
 msgid "object %s cannot be read"
 msgstr ""
 
-#: builtin/pack-objects.c:2086 builtin/pack-objects.c:2113
+#: builtin/pack-objects.c:2093 builtin/pack-objects.c:2120
 #, c-format
 msgid "object %s inconsistent object length (%<PRIuMAX> vs %<PRIuMAX>)"
 msgstr ""
 
-#: builtin/pack-objects.c:2123
+#: builtin/pack-objects.c:2130
 msgid "suboptimal pack - out of memory"
 msgstr ""
 
-#: builtin/pack-objects.c:2451
+#: builtin/pack-objects.c:2456
 #, c-format
 msgid "Delta compression using up to %d threads"
 msgstr ""
 
-#: builtin/pack-objects.c:2583
+#: builtin/pack-objects.c:2588
 #, c-format
 msgid "unable to pack objects reachable from tag %s"
 msgstr ""
 
-#: builtin/pack-objects.c:2670
+#: builtin/pack-objects.c:2675
 msgid "Compressing objects"
 msgstr ""
 
-#: builtin/pack-objects.c:2676
+#: builtin/pack-objects.c:2681
 msgid "inconsistency with delta count"
 msgstr ""
 
-#: builtin/pack-objects.c:2753
+#: builtin/pack-objects.c:2762
 #, c-format
 msgid ""
 "expected edge object ID, got garbage:\n"
 " %s"
 msgstr ""
 
-#: builtin/pack-objects.c:2759
+#: builtin/pack-objects.c:2768
 #, c-format
 msgid ""
 "expected object ID, got garbage:\n"
 " %s"
 msgstr ""
 
-#: builtin/pack-objects.c:2855
+#: builtin/pack-objects.c:2866
 msgid "invalid value for --missing"
 msgstr ""
 
-#: builtin/pack-objects.c:2914 builtin/pack-objects.c:3022
+#: builtin/pack-objects.c:2925 builtin/pack-objects.c:3033
 msgid "cannot open pack index"
 msgstr ""
 
-#: builtin/pack-objects.c:2945
+#: builtin/pack-objects.c:2956
 #, c-format
 msgid "loose object at %s could not be examined"
 msgstr ""
 
-#: builtin/pack-objects.c:3030
+#: builtin/pack-objects.c:3041
 msgid "unable to force loose object"
 msgstr ""
 
-#: builtin/pack-objects.c:3120
+#: builtin/pack-objects.c:3133
 #, c-format
 msgid "not a rev '%s'"
 msgstr ""
 
-#: builtin/pack-objects.c:3123
+#: builtin/pack-objects.c:3136
 #, c-format
 msgid "bad revision '%s'"
 msgstr ""
 
-#: builtin/pack-objects.c:3148
+#: builtin/pack-objects.c:3161
 msgid "unable to add recent objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3201
+#: builtin/pack-objects.c:3214
 #, c-format
 msgid "unsupported index version %s"
 msgstr ""
 
-#: builtin/pack-objects.c:3205
+#: builtin/pack-objects.c:3218
 #, c-format
 msgid "bad index version '%s'"
 msgstr ""
 
-#: builtin/pack-objects.c:3235
+#: builtin/pack-objects.c:3248
 msgid "do not show progress meter"
 msgstr ""
 
-#: builtin/pack-objects.c:3237
+#: builtin/pack-objects.c:3250
 msgid "show progress meter"
 msgstr ""
 
-#: builtin/pack-objects.c:3239
+#: builtin/pack-objects.c:3252
 msgid "show progress meter during object writing phase"
 msgstr ""
 
-#: builtin/pack-objects.c:3242
+#: builtin/pack-objects.c:3255
 msgid "similar to --all-progress when progress meter is shown"
 msgstr ""
 
-#: builtin/pack-objects.c:3243
+#: builtin/pack-objects.c:3256
 msgid "<version>[,<offset>]"
 msgstr ""
 
-#: builtin/pack-objects.c:3244
+#: builtin/pack-objects.c:3257
 msgid "write the pack index file in the specified idx format version"
 msgstr ""
 
-#: builtin/pack-objects.c:3247
+#: builtin/pack-objects.c:3260
 msgid "maximum size of each output pack file"
 msgstr ""
 
-#: builtin/pack-objects.c:3249
+#: builtin/pack-objects.c:3262
 msgid "ignore borrowed objects from alternate object store"
 msgstr ""
 
-#: builtin/pack-objects.c:3251
+#: builtin/pack-objects.c:3264
 msgid "ignore packed objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3253
+#: builtin/pack-objects.c:3266
 msgid "limit pack window by objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3255
+#: builtin/pack-objects.c:3268
 msgid "limit pack window by memory in addition to object limit"
 msgstr ""
 
-#: builtin/pack-objects.c:3257
+#: builtin/pack-objects.c:3270
 msgid "maximum length of delta chain allowed in the resulting pack"
 msgstr ""
 
-#: builtin/pack-objects.c:3259
+#: builtin/pack-objects.c:3272
 msgid "reuse existing deltas"
 msgstr ""
 
-#: builtin/pack-objects.c:3261
+#: builtin/pack-objects.c:3274
 msgid "reuse existing objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3263
+#: builtin/pack-objects.c:3276
 msgid "use OFS_DELTA objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3265
+#: builtin/pack-objects.c:3278
 msgid "use threads when searching for best delta matches"
 msgstr ""
 
-#: builtin/pack-objects.c:3267
+#: builtin/pack-objects.c:3280
 msgid "do not create an empty pack output"
 msgstr ""
 
-#: builtin/pack-objects.c:3269
+#: builtin/pack-objects.c:3282
 msgid "read revision arguments from standard input"
 msgstr ""
 
-#: builtin/pack-objects.c:3271
+#: builtin/pack-objects.c:3284
 msgid "limit the objects to those that are not yet packed"
 msgstr ""
 
-#: builtin/pack-objects.c:3274
+#: builtin/pack-objects.c:3287
 msgid "include objects reachable from any reference"
 msgstr ""
 
-#: builtin/pack-objects.c:3277
+#: builtin/pack-objects.c:3290
 msgid "include objects referred by reflog entries"
 msgstr ""
 
-#: builtin/pack-objects.c:3280
+#: builtin/pack-objects.c:3293
 msgid "include objects referred to by the index"
 msgstr ""
 
-#: builtin/pack-objects.c:3283
+#: builtin/pack-objects.c:3296
 msgid "output pack to stdout"
 msgstr ""
 
-#: builtin/pack-objects.c:3285
+#: builtin/pack-objects.c:3298
 msgid "include tag objects that refer to objects to be packed"
 msgstr ""
 
-#: builtin/pack-objects.c:3287
+#: builtin/pack-objects.c:3300
 msgid "keep unreachable objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3289
+#: builtin/pack-objects.c:3302
 msgid "pack loose unreachable objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3291
+#: builtin/pack-objects.c:3304
 msgid "unpack unreachable objects newer than <time>"
 msgstr ""
 
-#: builtin/pack-objects.c:3294
+#: builtin/pack-objects.c:3307
+msgid "use the sparse reachability algorithm"
+msgstr ""
+
+#: builtin/pack-objects.c:3309
 msgid "create thin packs"
 msgstr ""
 
-#: builtin/pack-objects.c:3296
+#: builtin/pack-objects.c:3311
 msgid "create packs suitable for shallow fetches"
 msgstr ""
 
-#: builtin/pack-objects.c:3298
+#: builtin/pack-objects.c:3313
 msgid "ignore packs that have companion .keep file"
 msgstr ""
 
-#: builtin/pack-objects.c:3300
+#: builtin/pack-objects.c:3315
 msgid "ignore this pack"
 msgstr ""
 
-#: builtin/pack-objects.c:3302
+#: builtin/pack-objects.c:3317
 msgid "pack compression level"
 msgstr ""
 
-#: builtin/pack-objects.c:3304
+#: builtin/pack-objects.c:3319
 msgid "do not hide commits by grafts"
 msgstr ""
 
-#: builtin/pack-objects.c:3306
+#: builtin/pack-objects.c:3321
 msgid "use a bitmap index if available to speed up counting objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3308
+#: builtin/pack-objects.c:3323
 msgid "write a bitmap index together with the pack index"
 msgstr ""
 
-#: builtin/pack-objects.c:3311
+#: builtin/pack-objects.c:3327
+msgid "write a bitmap index if possible"
+msgstr ""
+
+#: builtin/pack-objects.c:3331
 msgid "handling for missing objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3314
+#: builtin/pack-objects.c:3334
 msgid "do not pack objects in promisor packfiles"
 msgstr ""
 
-#: builtin/pack-objects.c:3316
+#: builtin/pack-objects.c:3336
 msgid "respect islands during delta compression"
 msgstr ""
 
-#: builtin/pack-objects.c:3340
+#: builtin/pack-objects.c:3361
 #, c-format
 msgid "delta chain depth %d is too deep, forcing %d"
 msgstr ""
 
-#: builtin/pack-objects.c:3345
+#: builtin/pack-objects.c:3366
 #, c-format
 msgid "pack.deltaCacheLimit is too high, forcing %d"
 msgstr ""
 
-#: builtin/pack-objects.c:3399
+#: builtin/pack-objects.c:3420
 msgid "--max-pack-size cannot be used to build a pack for transfer"
 msgstr ""
 
-#: builtin/pack-objects.c:3401
+#: builtin/pack-objects.c:3422
 msgid "minimum pack size limit is 1 MiB"
 msgstr ""
 
-#: builtin/pack-objects.c:3406
+#: builtin/pack-objects.c:3427
 msgid "--thin cannot be used to build an indexable pack"
 msgstr ""
 
-#: builtin/pack-objects.c:3409
+#: builtin/pack-objects.c:3430
 msgid "--keep-unreachable and --unpack-unreachable are incompatible"
 msgstr ""
 
-#: builtin/pack-objects.c:3415
+#: builtin/pack-objects.c:3436
 msgid "cannot use --filter without --stdout"
 msgstr ""
 
-#: builtin/pack-objects.c:3474
+#: builtin/pack-objects.c:3497
 msgid "Enumerating objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3493
+#: builtin/pack-objects.c:3527
 #, c-format
 msgid "Total %<PRIu32> (delta %<PRIu32>), reused %<PRIu32> (delta %<PRIu32>)"
 msgstr ""
 
-#: builtin/pack-refs.c:7
+#: builtin/pack-refs.c:8
 msgid "git pack-refs [<options>]"
 msgstr ""
 
-#: builtin/pack-refs.c:15
+#: builtin/pack-refs.c:16
 msgid "pack everything"
 msgstr ""
 
-#: builtin/pack-refs.c:16
+#: builtin/pack-refs.c:17
 msgid "prune loose refs (default)"
 msgstr ""
 
@@ -13463,86 +15440,86 @@ msgstr ""
 msgid "git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]"
 msgstr ""
 
-#: builtin/prune.c:109
+#: builtin/prune.c:131
 msgid "report pruned objects"
 msgstr ""
 
-#: builtin/prune.c:112
+#: builtin/prune.c:134
 msgid "expire objects older than <time>"
 msgstr ""
 
-#: builtin/prune.c:114
+#: builtin/prune.c:136
 msgid "limit traversal to objects outside promisor packfiles"
 msgstr ""
 
-#: builtin/prune.c:129
+#: builtin/prune.c:150
 msgid "cannot prune in a precious-objects repo"
 msgstr ""
 
-#: builtin/pull.c:60 builtin/pull.c:62
+#: builtin/pull.c:66 builtin/pull.c:68
 #, c-format
 msgid "Invalid value for %s: %s"
 msgstr ""
 
-#: builtin/pull.c:82
+#: builtin/pull.c:88
 msgid "git pull [<options>] [<repository> [<refspec>...]]"
 msgstr ""
 
-#: builtin/pull.c:133
+#: builtin/pull.c:141
 msgid "control for recursive fetching of submodules"
 msgstr ""
 
-#: builtin/pull.c:137
+#: builtin/pull.c:145
 msgid "Options related to merging"
 msgstr ""
 
-#: builtin/pull.c:140
+#: builtin/pull.c:148
 msgid "incorporate changes by rebasing rather than merging"
 msgstr ""
 
-#: builtin/pull.c:167 builtin/rebase--interactive.c:147 builtin/revert.c:122
+#: builtin/pull.c:176 builtin/rebase.c:447 builtin/revert.c:126
 msgid "allow fast-forward"
 msgstr ""
 
-#: builtin/pull.c:176
+#: builtin/pull.c:185
 msgid "automatically stash/stash pop before and after rebase"
 msgstr ""
 
-#: builtin/pull.c:192
+#: builtin/pull.c:201
 msgid "Options related to fetching"
 msgstr ""
 
-#: builtin/pull.c:202
+#: builtin/pull.c:211
 msgid "force overwrite of local branch"
 msgstr ""
 
-#: builtin/pull.c:210
+#: builtin/pull.c:219
 msgid "number of submodules pulled in parallel"
 msgstr ""
 
-#: builtin/pull.c:305
+#: builtin/pull.c:316
 #, c-format
 msgid "Invalid value for pull.ff: %s"
 msgstr ""
 
-#: builtin/pull.c:421
+#: builtin/pull.c:433
 msgid ""
 "There is no candidate for rebasing against among the refs that you just "
 "fetched."
 msgstr ""
 
-#: builtin/pull.c:423
+#: builtin/pull.c:435
 msgid ""
 "There are no candidates for merging among the refs that you just fetched."
 msgstr ""
 
-#: builtin/pull.c:424
+#: builtin/pull.c:436
 msgid ""
 "Generally this means that you provided a wildcard refspec which had no\n"
 "matches on the remote end."
 msgstr ""
 
-#: builtin/pull.c:427
+#: builtin/pull.c:439
 #, c-format
 msgid ""
 "You asked to pull from the remote '%s', but did not specify\n"
@@ -13550,74 +15527,74 @@ msgid ""
 "for your current branch, you must specify a branch on the command line."
 msgstr ""
 
-#: builtin/pull.c:432 builtin/rebase.c:760 git-parse-remote.sh:73
+#: builtin/pull.c:444 builtin/rebase.c:1326 git-parse-remote.sh:73
 msgid "You are not currently on a branch."
 msgstr ""
 
-#: builtin/pull.c:434 builtin/pull.c:449 git-parse-remote.sh:79
+#: builtin/pull.c:446 builtin/pull.c:461 git-parse-remote.sh:79
 msgid "Please specify which branch you want to rebase against."
 msgstr ""
 
-#: builtin/pull.c:436 builtin/pull.c:451 git-parse-remote.sh:82
+#: builtin/pull.c:448 builtin/pull.c:463 git-parse-remote.sh:82
 msgid "Please specify which branch you want to merge with."
 msgstr ""
 
-#: builtin/pull.c:437 builtin/pull.c:452
+#: builtin/pull.c:449 builtin/pull.c:464
 msgid "See git-pull(1) for details."
 msgstr ""
 
-#: builtin/pull.c:439 builtin/pull.c:445 builtin/pull.c:454
-#: builtin/rebase.c:766 git-parse-remote.sh:64
+#: builtin/pull.c:451 builtin/pull.c:457 builtin/pull.c:466
+#: builtin/rebase.c:1332 git-parse-remote.sh:64
 msgid "<remote>"
 msgstr ""
 
-#: builtin/pull.c:439 builtin/pull.c:454 builtin/pull.c:459
-#: git-legacy-rebase.sh:548 git-parse-remote.sh:65
+#: builtin/pull.c:451 builtin/pull.c:466 builtin/pull.c:471
+#: git-parse-remote.sh:65
 msgid "<branch>"
 msgstr ""
 
-#: builtin/pull.c:447 builtin/rebase.c:758 git-parse-remote.sh:75
+#: builtin/pull.c:459 builtin/rebase.c:1324 git-parse-remote.sh:75
 msgid "There is no tracking information for the current branch."
 msgstr ""
 
-#: builtin/pull.c:456 git-parse-remote.sh:95
+#: builtin/pull.c:468 git-parse-remote.sh:95
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:"
 msgstr ""
 
-#: builtin/pull.c:461
+#: builtin/pull.c:473
 #, c-format
 msgid ""
 "Your configuration specifies to merge with the ref '%s'\n"
 "from the remote, but no such ref was fetched."
 msgstr ""
 
-#: builtin/pull.c:565
+#: builtin/pull.c:581
 #, c-format
 msgid "unable to access commit %s"
 msgstr ""
 
-#: builtin/pull.c:843
+#: builtin/pull.c:861
 msgid "ignoring --verify-signatures for rebase"
 msgstr ""
 
-#: builtin/pull.c:891
+#: builtin/pull.c:916
 msgid "--[no-]autostash option is only valid with --rebase."
 msgstr ""
 
-#: builtin/pull.c:899
+#: builtin/pull.c:924
 msgid "Updating an unborn branch with changes added to the index."
 msgstr ""
 
-#: builtin/pull.c:902
+#: builtin/pull.c:928
 msgid "pull with rebase"
 msgstr ""
 
-#: builtin/pull.c:903
+#: builtin/pull.c:929
 msgid "please commit or stash them."
 msgstr ""
 
-#: builtin/pull.c:928
+#: builtin/pull.c:954
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -13625,7 +15602,7 @@ msgid ""
 "commit %s."
 msgstr ""
 
-#: builtin/pull.c:934
+#: builtin/pull.c:960
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -13636,15 +15613,15 @@ msgid ""
 "to recover."
 msgstr ""
 
-#: builtin/pull.c:949
+#: builtin/pull.c:975
 msgid "Cannot merge multiple branches into empty head."
 msgstr ""
 
-#: builtin/pull.c:953
+#: builtin/pull.c:979
 msgid "Cannot rebase onto multiple branches."
 msgstr ""
 
-#: builtin/pull.c:960
+#: builtin/pull.c:986
 msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
 
@@ -13660,13 +15637,13 @@ msgstr ""
 msgid "--delete only accepts plain target ref names"
 msgstr ""
 
-#: builtin/push.c:165
+#: builtin/push.c:167
 msgid ""
 "\n"
 "To choose either option permanently, see push.default in 'git help config'."
 msgstr ""
 
-#: builtin/push.c:168
+#: builtin/push.c:170
 #, c-format
 msgid ""
 "The upstream branch of your current branch does not match\n"
@@ -13677,11 +15654,11 @@ msgid ""
 "\n"
 "To push to the branch of the same name on the remote, use\n"
 "\n"
-"    git push %s %s\n"
+"    git push %s HEAD\n"
 "%s"
 msgstr ""
 
-#: builtin/push.c:183
+#: builtin/push.c:185
 #, c-format
 msgid ""
 "You are not currently on a branch.\n"
@@ -13691,7 +15668,7 @@ msgid ""
 "    git push %s HEAD:<name-of-remote-branch>\n"
 msgstr ""
 
-#: builtin/push.c:197
+#: builtin/push.c:199
 #, c-format
 msgid ""
 "The current branch %s has no upstream branch.\n"
@@ -13700,12 +15677,12 @@ msgid ""
 "    git push --set-upstream %s %s\n"
 msgstr ""
 
-#: builtin/push.c:205
+#: builtin/push.c:207
 #, c-format
 msgid "The current branch %s has multiple upstream branches, refusing to push."
 msgstr ""
 
-#: builtin/push.c:208
+#: builtin/push.c:210
 #, c-format
 msgid ""
 "You are pushing to remote '%s', which is not the upstream of\n"
@@ -13713,12 +15690,12 @@ msgid ""
 "to update which remote branch."
 msgstr ""
 
-#: builtin/push.c:267
+#: builtin/push.c:269
 msgid ""
 "You didn't specify any refspecs to push, and push.default is \"nothing\"."
 msgstr ""
 
-#: builtin/push.c:274
+#: builtin/push.c:276
 msgid ""
 "Updates were rejected because the tip of your current branch is behind\n"
 "its remote counterpart. Integrate the remote changes (e.g.\n"
@@ -13726,7 +15703,7 @@ msgid ""
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
 
-#: builtin/push.c:280
+#: builtin/push.c:282
 msgid ""
 "Updates were rejected because a pushed branch tip is behind its remote\n"
 "counterpart. Check out this branch and integrate the remote changes\n"
@@ -13734,7 +15711,7 @@ msgid ""
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
 
-#: builtin/push.c:286
+#: builtin/push.c:288
 msgid ""
 "Updates were rejected because the remote contains work that you do\n"
 "not have locally. This is usually caused by another repository pushing\n"
@@ -13743,33 +15720,33 @@ msgid ""
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
 
-#: builtin/push.c:293
+#: builtin/push.c:295
 msgid "Updates were rejected because the tag already exists in the remote."
 msgstr ""
 
-#: builtin/push.c:296
+#: builtin/push.c:298
 msgid ""
 "You cannot update a remote ref that points at a non-commit object,\n"
 "or update a remote ref to make it point at a non-commit object,\n"
 "without using the '--force' option.\n"
 msgstr ""
 
-#: builtin/push.c:357
+#: builtin/push.c:359
 #, c-format
 msgid "Pushing to %s\n"
 msgstr ""
 
-#: builtin/push.c:361
+#: builtin/push.c:364
 #, c-format
 msgid "failed to push some refs to '%s'"
 msgstr ""
 
-#: builtin/push.c:395
+#: builtin/push.c:398
 #, c-format
 msgid "bad repository '%s'"
 msgstr ""
 
-#: builtin/push.c:396
+#: builtin/push.c:399
 msgid ""
 "No configured push destination.\n"
 "Either specify the URL from the command-line or configure a remote "
@@ -13782,104 +15759,104 @@ msgid ""
 "    git push <name>\n"
 msgstr ""
 
-#: builtin/push.c:551
+#: builtin/push.c:554
 msgid "repository"
 msgstr ""
 
-#: builtin/push.c:552 builtin/send-pack.c:164
+#: builtin/push.c:555 builtin/send-pack.c:164
 msgid "push all refs"
 msgstr ""
 
-#: builtin/push.c:553 builtin/send-pack.c:166
+#: builtin/push.c:556 builtin/send-pack.c:166
 msgid "mirror all refs"
 msgstr ""
 
-#: builtin/push.c:555
+#: builtin/push.c:558
 msgid "delete refs"
 msgstr ""
 
-#: builtin/push.c:556
+#: builtin/push.c:559
 msgid "push tags (can't be used with --all or --mirror)"
 msgstr ""
 
-#: builtin/push.c:559 builtin/send-pack.c:167
+#: builtin/push.c:562 builtin/send-pack.c:167
 msgid "force updates"
 msgstr ""
 
-#: builtin/push.c:561 builtin/send-pack.c:181
+#: builtin/push.c:564 builtin/send-pack.c:181
 msgid "<refname>:<expect>"
 msgstr ""
 
-#: builtin/push.c:562 builtin/send-pack.c:182
+#: builtin/push.c:565 builtin/send-pack.c:182
 msgid "require old value of ref to be at this value"
 msgstr ""
 
-#: builtin/push.c:565
+#: builtin/push.c:568
 msgid "control recursive pushing of submodules"
 msgstr ""
 
-#: builtin/push.c:567 builtin/send-pack.c:175
+#: builtin/push.c:570 builtin/send-pack.c:175
 msgid "use thin pack"
 msgstr ""
 
-#: builtin/push.c:568 builtin/push.c:569 builtin/send-pack.c:161
+#: builtin/push.c:571 builtin/push.c:572 builtin/send-pack.c:161
 #: builtin/send-pack.c:162
 msgid "receive pack program"
 msgstr ""
 
-#: builtin/push.c:570
+#: builtin/push.c:573
 msgid "set upstream for git pull/status"
 msgstr ""
 
-#: builtin/push.c:573
+#: builtin/push.c:576
 msgid "prune locally removed refs"
 msgstr ""
 
-#: builtin/push.c:575
+#: builtin/push.c:578
 msgid "bypass pre-push hook"
 msgstr ""
 
-#: builtin/push.c:576
+#: builtin/push.c:579
 msgid "push missing but relevant tags"
 msgstr ""
 
-#: builtin/push.c:579 builtin/send-pack.c:169
+#: builtin/push.c:582 builtin/send-pack.c:169
 msgid "GPG sign the push"
 msgstr ""
 
-#: builtin/push.c:581 builtin/send-pack.c:176
+#: builtin/push.c:584 builtin/send-pack.c:176
 msgid "request atomic transaction on remote side"
 msgstr ""
 
-#: builtin/push.c:599
+#: builtin/push.c:602
 msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr ""
 
-#: builtin/push.c:601
+#: builtin/push.c:604
 msgid "--delete doesn't make sense without any refs"
 msgstr ""
 
-#: builtin/push.c:604
+#: builtin/push.c:607
 msgid "--all and --tags are incompatible"
 msgstr ""
 
-#: builtin/push.c:606
+#: builtin/push.c:609
 msgid "--all can't be combined with refspecs"
 msgstr ""
 
-#: builtin/push.c:610
+#: builtin/push.c:613
 msgid "--mirror and --tags are incompatible"
 msgstr ""
 
-#: builtin/push.c:612
+#: builtin/push.c:615
 msgid "--mirror can't be combined with refspecs"
 msgstr ""
 
-#: builtin/push.c:615
+#: builtin/push.c:618
 msgid "--all and --mirror are incompatible"
 msgstr ""
 
-#: builtin/push.c:634
+#: builtin/push.c:637
 msgid "push options must not have new line characters"
 msgstr ""
 
@@ -13895,144 +15872,327 @@ msgstr ""
 msgid "git range-diff [<options>] <base> <old-tip> <new-tip>"
 msgstr ""
 
-#: builtin/range-diff.c:21
-msgid "Percentage by which creation is weighted"
+#: builtin/range-diff.c:21
+msgid "Percentage by which creation is weighted"
+msgstr ""
+
+#: builtin/range-diff.c:23
+msgid "use simple diff colors"
+msgstr ""
+
+#: builtin/range-diff.c:46 builtin/range-diff.c:50
+#, c-format
+msgid "no .. in range: '%s'"
+msgstr ""
+
+#: builtin/range-diff.c:60
+msgid "single arg format must be symmetric range"
+msgstr ""
+
+#: builtin/range-diff.c:75
+msgid "need two commit ranges"
+msgstr ""
+
+#: builtin/read-tree.c:41
+msgid ""
+"git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>) "
+"[-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--"
+"index-output=<file>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
+msgstr ""
+
+#: builtin/read-tree.c:124
+msgid "write resulting index to <file>"
+msgstr ""
+
+#: builtin/read-tree.c:127
+msgid "only empty the index"
+msgstr ""
+
+#: builtin/read-tree.c:129
+msgid "Merging"
+msgstr ""
+
+#: builtin/read-tree.c:131
+msgid "perform a merge in addition to a read"
+msgstr ""
+
+#: builtin/read-tree.c:133
+msgid "3-way merge if no file level merging required"
+msgstr ""
+
+#: builtin/read-tree.c:135
+msgid "3-way merge in presence of adds and removes"
+msgstr ""
+
+#: builtin/read-tree.c:137
+msgid "same as -m, but discard unmerged entries"
+msgstr ""
+
+#: builtin/read-tree.c:138
+msgid "<subdirectory>/"
+msgstr ""
+
+#: builtin/read-tree.c:139
+msgid "read the tree into the index under <subdirectory>/"
+msgstr ""
+
+#: builtin/read-tree.c:142
+msgid "update working tree with merge result"
+msgstr ""
+
+#: builtin/read-tree.c:144
+msgid "gitignore"
+msgstr ""
+
+#: builtin/read-tree.c:145
+msgid "allow explicitly ignored files to be overwritten"
+msgstr ""
+
+#: builtin/read-tree.c:148
+msgid "don't check the working tree after merging"
+msgstr ""
+
+#: builtin/read-tree.c:149
+msgid "don't update the index or the work tree"
+msgstr ""
+
+#: builtin/read-tree.c:151
+msgid "skip applying sparse checkout filter"
+msgstr ""
+
+#: builtin/read-tree.c:153
+msgid "debug unpack-trees"
+msgstr ""
+
+#: builtin/read-tree.c:157
+msgid "suppress feedback messages"
+msgstr ""
+
+#: builtin/rebase.c:32
+msgid ""
+"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] [<upstream>] "
+"[<branch>]"
+msgstr ""
+
+#: builtin/rebase.c:34
+msgid ""
+"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]"
+msgstr ""
+
+#: builtin/rebase.c:36
+msgid "git rebase --continue | --abort | --skip | --edit-todo"
+msgstr ""
+
+#: builtin/rebase.c:158 builtin/rebase.c:182 builtin/rebase.c:209
+#, c-format
+msgid "unusable todo list: '%s'"
+msgstr ""
+
+#: builtin/rebase.c:167 builtin/rebase.c:193 builtin/rebase.c:217
+#, c-format
+msgid "could not write '%s'."
+msgstr ""
+
+#: builtin/rebase.c:252
+msgid "no HEAD?"
+msgstr ""
+
+#: builtin/rebase.c:279
+#, c-format
+msgid "could not create temporary %s"
+msgstr ""
+
+#: builtin/rebase.c:285
+msgid "could not mark as interactive"
+msgstr ""
+
+#: builtin/rebase.c:343
+msgid "could not generate todo list"
+msgstr ""
+
+#: builtin/rebase.c:382
+msgid "a base commit must be provided with --upstream or --onto"
+msgstr ""
+
+#: builtin/rebase.c:437
+msgid "git rebase--interactive [<options>]"
+msgstr ""
+
+#: builtin/rebase.c:449
+msgid "keep empty commits"
+msgstr ""
+
+#: builtin/rebase.c:451 builtin/revert.c:128
+msgid "allow commits with empty messages"
+msgstr ""
+
+#: builtin/rebase.c:452
+msgid "rebase merge commits"
+msgstr ""
+
+#: builtin/rebase.c:454
+msgid "keep original branch points of cousins"
+msgstr ""
+
+#: builtin/rebase.c:456
+msgid "move commits that begin with squash!/fixup!"
+msgstr ""
+
+#: builtin/rebase.c:457
+msgid "sign commits"
+msgstr ""
+
+#: builtin/rebase.c:459 builtin/rebase.c:1403
+msgid "display a diffstat of what changed upstream"
+msgstr ""
+
+#: builtin/rebase.c:461
+msgid "continue rebase"
+msgstr ""
+
+#: builtin/rebase.c:463
+msgid "skip commit"
+msgstr ""
+
+#: builtin/rebase.c:464
+msgid "edit the todo list"
+msgstr ""
+
+#: builtin/rebase.c:466
+msgid "show the current patch"
 msgstr ""
 
-#: builtin/range-diff.c:23
-msgid "use simple diff colors"
+#: builtin/rebase.c:469
+msgid "shorten commit ids in the todo list"
 msgstr ""
 
-#: builtin/range-diff.c:61 builtin/range-diff.c:65
-#, c-format
-msgid "no .. in range: '%s'"
+#: builtin/rebase.c:471
+msgid "expand commit ids in the todo list"
 msgstr ""
 
-#: builtin/range-diff.c:75
-msgid "single arg format must be symmetric range"
+#: builtin/rebase.c:473
+msgid "check the todo list"
 msgstr ""
 
-#: builtin/range-diff.c:90
-msgid "need two commit ranges"
+#: builtin/rebase.c:475
+msgid "rearrange fixup/squash lines"
 msgstr ""
 
-#: builtin/read-tree.c:40
-msgid ""
-"git read-tree [(-m [--trivial] [--aggressive] | --reset | --prefix=<prefix>) "
-"[-u [--exclude-per-directory=<gitignore>] | -i]] [--no-sparse-checkout] [--"
-"index-output=<file>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
+#: builtin/rebase.c:477
+msgid "insert exec commands in todo list"
 msgstr ""
 
-#: builtin/read-tree.c:123
-msgid "write resulting index to <file>"
+#: builtin/rebase.c:478
+msgid "onto"
 msgstr ""
 
-#: builtin/read-tree.c:126
-msgid "only empty the index"
+#: builtin/rebase.c:481
+msgid "restrict-revision"
 msgstr ""
 
-#: builtin/read-tree.c:128
-msgid "Merging"
+#: builtin/rebase.c:481
+msgid "restrict revision"
 msgstr ""
 
-#: builtin/read-tree.c:130
-msgid "perform a merge in addition to a read"
+#: builtin/rebase.c:483
+msgid "squash-onto"
 msgstr ""
 
-#: builtin/read-tree.c:132
-msgid "3-way merge if no file level merging required"
+#: builtin/rebase.c:484
+msgid "squash onto"
 msgstr ""
 
-#: builtin/read-tree.c:134
-msgid "3-way merge in presence of adds and removes"
+#: builtin/rebase.c:486
+msgid "the upstream commit"
 msgstr ""
 
-#: builtin/read-tree.c:136
-msgid "same as -m, but discard unmerged entries"
+#: builtin/rebase.c:488
+msgid "head-name"
 msgstr ""
 
-#: builtin/read-tree.c:137
-msgid "<subdirectory>/"
+#: builtin/rebase.c:488
+msgid "head name"
 msgstr ""
 
-#: builtin/read-tree.c:138
-msgid "read the tree into the index under <subdirectory>/"
+#: builtin/rebase.c:493
+msgid "rebase strategy"
 msgstr ""
 
-#: builtin/read-tree.c:141
-msgid "update working tree with merge result"
+#: builtin/rebase.c:494
+msgid "strategy-opts"
 msgstr ""
 
-#: builtin/read-tree.c:143
-msgid "gitignore"
+#: builtin/rebase.c:495
+msgid "strategy options"
 msgstr ""
 
-#: builtin/read-tree.c:144
-msgid "allow explicitly ignored files to be overwritten"
+#: builtin/rebase.c:496
+msgid "switch-to"
 msgstr ""
 
-#: builtin/read-tree.c:147
-msgid "don't check the working tree after merging"
+#: builtin/rebase.c:497
+msgid "the branch or commit to checkout"
 msgstr ""
 
-#: builtin/read-tree.c:148
-msgid "don't update the index or the work tree"
+#: builtin/rebase.c:498
+msgid "onto-name"
 msgstr ""
 
-#: builtin/read-tree.c:150
-msgid "skip applying sparse checkout filter"
+#: builtin/rebase.c:498
+msgid "onto name"
 msgstr ""
 
-#: builtin/read-tree.c:152
-msgid "debug unpack-trees"
+#: builtin/rebase.c:499
+msgid "cmd"
 msgstr ""
 
-#: builtin/rebase.c:29
-msgid ""
-"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] [<upstream>] "
-"[<branch>]"
+#: builtin/rebase.c:499
+msgid "the command to run"
 msgstr ""
 
-#: builtin/rebase.c:31
-msgid ""
-"git rebase [-i] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]"
+#: builtin/rebase.c:502 builtin/rebase.c:1486
+msgid "automatically re-schedule any `exec` that fails"
 msgstr ""
 
-#: builtin/rebase.c:33
-msgid "git rebase --continue | --abort | --skip | --edit-todo"
+#: builtin/rebase.c:518
+msgid "--[no-]rebase-cousins has no effect without --rebase-merges"
 msgstr ""
 
-#: builtin/rebase.c:119
+#: builtin/rebase.c:534
 #, c-format
 msgid "%s requires an interactive rebase"
 msgstr ""
 
-#: builtin/rebase.c:171
+#: builtin/rebase.c:586
 #, c-format
 msgid "could not get 'onto': '%s'"
 msgstr ""
 
-#: builtin/rebase.c:186
+#: builtin/rebase.c:601
 #, c-format
 msgid "invalid orig-head: '%s'"
 msgstr ""
 
-#: builtin/rebase.c:214
+#: builtin/rebase.c:626
 #, c-format
 msgid "ignoring invalid allow_rerere_autoupdate: '%s'"
 msgstr ""
 
-#: builtin/rebase.c:259
+#: builtin/rebase.c:702
 #, c-format
 msgid "Could not read '%s'"
 msgstr ""
 
-#: builtin/rebase.c:277
+#: builtin/rebase.c:720
 #, c-format
 msgid "Cannot store %s"
 msgstr ""
 
-#: builtin/rebase.c:337
+#: builtin/rebase.c:827
+msgid "could not determine HEAD revision"
+msgstr ""
+
+#: builtin/rebase.c:950 git-rebase--preserve-merges.sh:81
 msgid ""
 "Resolve all conflicts manually, mark them as resolved with\n"
 "\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
@@ -14041,11 +16201,19 @@ msgid ""
 "abort\"."
 msgstr ""
 
-#: builtin/rebase.c:561
-msgid "could not determine HEAD revision"
+#: builtin/rebase.c:1031
+#, c-format
+msgid ""
+"\n"
+"git encountered an error while preparing the patches to replay\n"
+"these revisions:\n"
+"\n"
+"    %s\n"
+"\n"
+"As a result, git cannot rebase them."
 msgstr ""
 
-#: builtin/rebase.c:752
+#: builtin/rebase.c:1318
 #, c-format
 msgid ""
 "%s\n"
@@ -14056,7 +16224,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: builtin/rebase.c:768
+#: builtin/rebase.c:1334
 #, c-format
 msgid ""
 "If you wish to set tracking information for this branch you can do so with:\n"
@@ -14065,168 +16233,169 @@ msgid ""
 "\n"
 msgstr ""
 
-#: builtin/rebase.c:814
+#: builtin/rebase.c:1364
+msgid "exec commands cannot contain newlines"
+msgstr ""
+
+#: builtin/rebase.c:1368
+msgid "empty exec command"
+msgstr ""
+
+#: builtin/rebase.c:1396
 msgid "rebase onto given branch instead of upstream"
 msgstr ""
 
-#: builtin/rebase.c:816
+#: builtin/rebase.c:1398
 msgid "allow pre-rebase hook to run"
 msgstr ""
 
-#: builtin/rebase.c:818
+#: builtin/rebase.c:1400
 msgid "be quiet. implies --no-stat"
 msgstr ""
 
-#: builtin/rebase.c:821
-msgid "display a diffstat of what changed upstream"
-msgstr ""
-
-#: builtin/rebase.c:824
+#: builtin/rebase.c:1406
 msgid "do not show diffstat of what changed upstream"
 msgstr ""
 
-#: builtin/rebase.c:827
+#: builtin/rebase.c:1409
 msgid "add a Signed-off-by: line to each commit"
 msgstr ""
 
-#: builtin/rebase.c:829 builtin/rebase.c:833 builtin/rebase.c:835
+#: builtin/rebase.c:1411 builtin/rebase.c:1415 builtin/rebase.c:1417
 msgid "passed to 'git am'"
 msgstr ""
 
-#: builtin/rebase.c:837 builtin/rebase.c:839
+#: builtin/rebase.c:1419 builtin/rebase.c:1421
 msgid "passed to 'git apply'"
 msgstr ""
 
-#: builtin/rebase.c:841 builtin/rebase.c:844
+#: builtin/rebase.c:1423 builtin/rebase.c:1426
 msgid "cherry-pick all commits, even if unchanged"
 msgstr ""
 
-#: builtin/rebase.c:846
+#: builtin/rebase.c:1428
 msgid "continue"
 msgstr ""
 
-#: builtin/rebase.c:849
+#: builtin/rebase.c:1431
 msgid "skip current patch and continue"
 msgstr ""
 
-#: builtin/rebase.c:851
+#: builtin/rebase.c:1433
 msgid "abort and check out the original branch"
 msgstr ""
 
-#: builtin/rebase.c:854
+#: builtin/rebase.c:1436
 msgid "abort but keep HEAD where it is"
 msgstr ""
 
-#: builtin/rebase.c:855
+#: builtin/rebase.c:1437
 msgid "edit the todo list during an interactive rebase"
 msgstr ""
 
-#: builtin/rebase.c:858
+#: builtin/rebase.c:1440
 msgid "show the patch file being applied or merged"
 msgstr ""
 
-#: builtin/rebase.c:861
+#: builtin/rebase.c:1443
 msgid "use merging strategies to rebase"
 msgstr ""
 
-#: builtin/rebase.c:865
+#: builtin/rebase.c:1447
 msgid "let the user edit the list of commits to rebase"
 msgstr ""
 
-#: builtin/rebase.c:869
-msgid "try to recreate merges instead of ignoring them"
-msgstr ""
-
-#: builtin/rebase.c:873
-msgid "allow rerere to update index  with resolved conflict"
+#: builtin/rebase.c:1451
+msgid "(DEPRECATED) try to recreate merges instead of ignoring them"
 msgstr ""
 
-#: builtin/rebase.c:876
+#: builtin/rebase.c:1455
 msgid "preserve empty commits during rebase"
 msgstr ""
 
-#: builtin/rebase.c:878
+#: builtin/rebase.c:1457
 msgid "move commits that begin with squash!/fixup! under -i"
 msgstr ""
 
-#: builtin/rebase.c:884
+#: builtin/rebase.c:1463
 msgid "automatically stash/stash pop before and after"
 msgstr ""
 
-#: builtin/rebase.c:886
+#: builtin/rebase.c:1465
 msgid "add exec lines after each commit of the editable list"
 msgstr ""
 
-#: builtin/rebase.c:890
+#: builtin/rebase.c:1469
 msgid "allow rebasing commits with empty messages"
 msgstr ""
 
-#: builtin/rebase.c:893
+#: builtin/rebase.c:1472
 msgid "try to rebase merges instead of skipping them"
 msgstr ""
 
-#: builtin/rebase.c:896
+#: builtin/rebase.c:1475
 msgid "use 'merge-base --fork-point' to refine upstream"
 msgstr ""
 
-#: builtin/rebase.c:898
+#: builtin/rebase.c:1477
 msgid "use the given merge strategy"
 msgstr ""
 
-#: builtin/rebase.c:900 builtin/revert.c:111
+#: builtin/rebase.c:1479 builtin/revert.c:115
 msgid "option"
 msgstr ""
 
-#: builtin/rebase.c:901
+#: builtin/rebase.c:1480
 msgid "pass the argument through to the merge strategy"
 msgstr ""
 
-#: builtin/rebase.c:904
+#: builtin/rebase.c:1483
 msgid "rebase all reachable commits up to the root(s)"
 msgstr ""
 
-#: builtin/rebase.c:920
-#, c-format
-msgid "could not exec %s"
+#: builtin/rebase.c:1500
+msgid ""
+"the rebase.useBuiltin support has been removed!\n"
+"See its entry in 'git help config' for details."
 msgstr ""
 
-#: builtin/rebase.c:938 git-legacy-rebase.sh:213
+#: builtin/rebase.c:1506
 msgid "It looks like 'git am' is in progress. Cannot rebase."
 msgstr ""
 
-#: builtin/rebase.c:979 git-legacy-rebase.sh:387
+#: builtin/rebase.c:1547
+msgid ""
+"git rebase --preserve-merges is deprecated. Use --rebase-merges instead."
+msgstr ""
+
+#: builtin/rebase.c:1551
 msgid "No rebase in progress?"
 msgstr ""
 
-#: builtin/rebase.c:982 git-legacy-rebase.sh:398
+#: builtin/rebase.c:1555
 msgid "The --edit-todo action can only be used during interactive rebase."
 msgstr ""
 
-#: builtin/rebase.c:995 git-legacy-rebase.sh:405
+#: builtin/rebase.c:1578
 msgid "Cannot read HEAD"
 msgstr ""
 
-#: builtin/rebase.c:1008 git-legacy-rebase.sh:408
+#: builtin/rebase.c:1590
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
 msgstr ""
 
-#: builtin/rebase.c:1026
+#: builtin/rebase.c:1609
 msgid "could not discard worktree changes"
 msgstr ""
 
-#: builtin/rebase.c:1044
+#: builtin/rebase.c:1628
 #, c-format
 msgid "could not move back to %s"
 msgstr ""
 
-#: builtin/rebase.c:1055 builtin/rm.c:368
-#, c-format
-msgid "could not remove '%s'"
-msgstr ""
-
-#: builtin/rebase.c:1081
+#: builtin/rebase.c:1673
 #, c-format
 msgid ""
 "It seems that there is already a %s directory, and\n"
@@ -14239,332 +16408,171 @@ msgid ""
 "valuable there.\n"
 msgstr ""
 
-#: builtin/rebase.c:1102
+#: builtin/rebase.c:1694
 msgid "switch `C' expects a numerical value"
 msgstr ""
 
-#: builtin/rebase.c:1139
+#: builtin/rebase.c:1735
 #, c-format
 msgid "Unknown mode: %s"
 msgstr ""
 
-#: builtin/rebase.c:1161
+#: builtin/rebase.c:1757
 msgid "--strategy requires --merge or --interactive"
 msgstr ""
 
-#: builtin/rebase.c:1204
-#, c-format
-msgid ""
-"error: cannot combine interactive options (--interactive, --exec, --rebase-"
-"merges, --preserve-merges, --keep-empty, --root + --onto) with am options "
-"(%s)"
+#: builtin/rebase.c:1797
+msgid "--reschedule-failed-exec requires --exec or --interactive"
 msgstr ""
 
-#: builtin/rebase.c:1209
-#, c-format
-msgid ""
-"error: cannot combine merge options (--merge, --strategy, --strategy-option) "
-"with am options (%s)"
+#: builtin/rebase.c:1809
+msgid "cannot combine am options with either interactive or merge options"
+msgstr ""
+
+#: builtin/rebase.c:1828
+msgid "cannot combine '--preserve-merges' with '--rebase-merges'"
 msgstr ""
 
-#: builtin/rebase.c:1229 git-legacy-rebase.sh:528
-msgid "error: cannot combine '--preserve-merges' with '--rebase-merges'"
+#: builtin/rebase.c:1832
+msgid ""
+"error: cannot combine '--preserve-merges' with '--reschedule-failed-exec'"
 msgstr ""
 
-#: builtin/rebase.c:1234 git-legacy-rebase.sh:534
-msgid "error: cannot combine '--rebase-merges' with '--strategy-option'"
+#: builtin/rebase.c:1838
+msgid "cannot combine '--rebase-merges' with '--strategy-option'"
 msgstr ""
 
-#: builtin/rebase.c:1237 git-legacy-rebase.sh:536
-msgid "error: cannot combine '--rebase-merges' with '--strategy'"
+#: builtin/rebase.c:1841
+msgid "cannot combine '--rebase-merges' with '--strategy'"
 msgstr ""
 
-#: builtin/rebase.c:1261
+#: builtin/rebase.c:1865
 #, c-format
 msgid "invalid upstream '%s'"
 msgstr ""
 
-#: builtin/rebase.c:1267
+#: builtin/rebase.c:1871
 msgid "Could not create new root commit"
 msgstr ""
 
-#: builtin/rebase.c:1285
+#: builtin/rebase.c:1889
 #, c-format
 msgid "'%s': need exactly one merge base"
 msgstr ""
 
-#: builtin/rebase.c:1292
+#: builtin/rebase.c:1896
 #, c-format
 msgid "Does not point to a valid commit '%s'"
 msgstr ""
 
-#: builtin/rebase.c:1317
+#: builtin/rebase.c:1921
 #, c-format
 msgid "fatal: no such branch/commit '%s'"
 msgstr ""
 
-#: builtin/rebase.c:1325 builtin/submodule--helper.c:37
-#: builtin/submodule--helper.c:1930
+#: builtin/rebase.c:1929 builtin/submodule--helper.c:38
+#: builtin/submodule--helper.c:1934
 #, c-format
 msgid "No such ref: %s"
 msgstr ""
 
-#: builtin/rebase.c:1337
+#: builtin/rebase.c:1940
 msgid "Could not resolve HEAD to a revision"
 msgstr ""
 
-#: builtin/rebase.c:1377 git-legacy-rebase.sh:657
+#: builtin/rebase.c:1981
 msgid "Cannot autostash"
 msgstr ""
 
-#: builtin/rebase.c:1380
+#: builtin/rebase.c:1984
 #, c-format
 msgid "Unexpected stash response: '%s'"
 msgstr ""
 
-#: builtin/rebase.c:1386
+#: builtin/rebase.c:1990
 #, c-format
 msgid "Could not create directory for '%s'"
 msgstr ""
 
-#: builtin/rebase.c:1389
+#: builtin/rebase.c:1993
 #, c-format
 msgid "Created autostash: %s\n"
 msgstr ""
 
-#: builtin/rebase.c:1392
+#: builtin/rebase.c:1996
 msgid "could not reset --hard"
 msgstr ""
 
-#: builtin/rebase.c:1393 builtin/reset.c:113
+#: builtin/rebase.c:1997 builtin/reset.c:114
 #, c-format
 msgid "HEAD is now at %s"
 msgstr ""
 
-#: builtin/rebase.c:1409 git-legacy-rebase.sh:666
+#: builtin/rebase.c:2013
 msgid "Please commit or stash them."
 msgstr ""
 
-#: builtin/rebase.c:1436
+#: builtin/rebase.c:2040
 #, c-format
 msgid "could not parse '%s'"
 msgstr ""
 
-#: builtin/rebase.c:1447
+#: builtin/rebase.c:2053
 #, c-format
 msgid "could not switch to %s"
 msgstr ""
 
-#: builtin/rebase.c:1458 git-legacy-rebase.sh:689
-#, sh-format
+#: builtin/rebase.c:2064
 msgid "HEAD is up to date."
 msgstr ""
 
-#: builtin/rebase.c:1460
+#: builtin/rebase.c:2066
 #, c-format
 msgid "Current branch %s is up to date.\n"
 msgstr ""
 
-#: builtin/rebase.c:1468 git-legacy-rebase.sh:699
-#, sh-format
+#: builtin/rebase.c:2074
 msgid "HEAD is up to date, rebase forced."
 msgstr ""
 
-#: builtin/rebase.c:1470
+#: builtin/rebase.c:2076
 #, c-format
 msgid "Current branch %s is up to date, rebase forced.\n"
 msgstr ""
 
-#: builtin/rebase.c:1478 git-legacy-rebase.sh:208
+#: builtin/rebase.c:2084
 msgid "The pre-rebase hook refused to rebase."
 msgstr ""
 
-#: builtin/rebase.c:1484
-#, c-format
-msgid "Changes from %s to %s:\n"
-msgstr ""
-
-#: builtin/rebase.c:1507
+#: builtin/rebase.c:2091
 #, c-format
-msgid "First, rewinding head to replay your work on top of it...\n"
+msgid "Changes to %s:\n"
 msgstr ""
 
-#: builtin/rebase.c:1513
-msgid "Could not detach HEAD"
-msgstr ""
-
-#: builtin/rebase.c:1522
+#: builtin/rebase.c:2094
 #, c-format
-msgid "Fast-forwarded %s to %s. \n"
-msgstr ""
-
-#: builtin/rebase--interactive.c:24
-msgid "no HEAD?"
+msgid "Changes from %s to %s:\n"
 msgstr ""
 
-#: builtin/rebase--interactive.c:51
+#: builtin/rebase.c:2119
 #, c-format
-msgid "could not create temporary %s"
+msgid "First, rewinding head to replay your work on top of it...\n"
 msgstr ""
 
-#: builtin/rebase--interactive.c:57
-msgid "could not mark as interactive"
+#: builtin/rebase.c:2128
+msgid "Could not detach HEAD"
 msgstr ""
 
-#: builtin/rebase--interactive.c:101
+#: builtin/rebase.c:2137
 #, c-format
-msgid "could not open %s"
-msgstr ""
-
-#: builtin/rebase--interactive.c:114
-msgid "could not generate todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:129
-msgid "git rebase--interactive [<options>]"
-msgstr ""
-
-#: builtin/rebase--interactive.c:148
-msgid "keep empty commits"
-msgstr ""
-
-#: builtin/rebase--interactive.c:150 builtin/revert.c:124
-msgid "allow commits with empty messages"
-msgstr ""
-
-#: builtin/rebase--interactive.c:151
-msgid "rebase merge commits"
-msgstr ""
-
-#: builtin/rebase--interactive.c:153
-msgid "keep original branch points of cousins"
-msgstr ""
-
-#: builtin/rebase--interactive.c:155
-msgid "move commits that begin with squash!/fixup!"
-msgstr ""
-
-#: builtin/rebase--interactive.c:156
-msgid "sign commits"
-msgstr ""
-
-#: builtin/rebase--interactive.c:158
-msgid "continue rebase"
-msgstr ""
-
-#: builtin/rebase--interactive.c:160
-msgid "skip commit"
-msgstr ""
-
-#: builtin/rebase--interactive.c:161
-msgid "edit the todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:163
-msgid "show the current patch"
-msgstr ""
-
-#: builtin/rebase--interactive.c:166
-msgid "shorten commit ids in the todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:168
-msgid "expand commit ids in the todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:170
-msgid "check the todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:172
-msgid "rearrange fixup/squash lines"
-msgstr ""
-
-#: builtin/rebase--interactive.c:174
-msgid "insert exec commands in todo list"
-msgstr ""
-
-#: builtin/rebase--interactive.c:175
-msgid "onto"
-msgstr ""
-
-#: builtin/rebase--interactive.c:177
-msgid "restrict-revision"
-msgstr ""
-
-#: builtin/rebase--interactive.c:177
-msgid "restrict revision"
-msgstr ""
-
-#: builtin/rebase--interactive.c:178
-msgid "squash-onto"
-msgstr ""
-
-#: builtin/rebase--interactive.c:179
-msgid "squash onto"
-msgstr ""
-
-#: builtin/rebase--interactive.c:181
-msgid "the upstream commit"
+msgid "Fast-forwarded %s to %s.\n"
 msgstr ""
 
-#: builtin/rebase--interactive.c:182
-msgid "head-name"
-msgstr ""
-
-#: builtin/rebase--interactive.c:182
-msgid "head name"
-msgstr ""
-
-#: builtin/rebase--interactive.c:187
-msgid "rebase strategy"
-msgstr ""
-
-#: builtin/rebase--interactive.c:188
-msgid "strategy-opts"
-msgstr ""
-
-#: builtin/rebase--interactive.c:189
-msgid "strategy options"
-msgstr ""
-
-#: builtin/rebase--interactive.c:190
-msgid "switch-to"
-msgstr ""
-
-#: builtin/rebase--interactive.c:191
-msgid "the branch or commit to checkout"
-msgstr ""
-
-#: builtin/rebase--interactive.c:192
-msgid "onto-name"
-msgstr ""
-
-#: builtin/rebase--interactive.c:192
-msgid "onto name"
-msgstr ""
-
-#: builtin/rebase--interactive.c:193
-msgid "cmd"
-msgstr ""
-
-#: builtin/rebase--interactive.c:193
-msgid "the command to run"
-msgstr ""
-
-#: builtin/rebase--interactive.c:220
-msgid "--[no-]rebase-cousins has no effect without --rebase-merges"
-msgstr ""
-
-#: builtin/rebase--interactive.c:226
-msgid "a base commit must be provided with --upstream or --onto"
-msgstr ""
-
-#: builtin/receive-pack.c:33
+#: builtin/receive-pack.c:32
 msgid "git receive-pack <git-dir>"
 msgstr ""
 
-#: builtin/receive-pack.c:830
+#: builtin/receive-pack.c:832
 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"
@@ -14581,29 +16589,79 @@ msgid ""
 "'receive.denyCurrentBranch' configuration variable to 'refuse'."
 msgstr ""
 
-#: builtin/receive-pack.c:850
-msgid ""
-"By default, deleting the current branch is denied, because the next\n"
-"'git clone' won't result in any file checked out, causing confusion.\n"
-"\n"
-"You can set 'receive.denyDeleteCurrent' configuration variable to\n"
-"'warn' or 'ignore' in the remote repository to allow deleting the\n"
-"current branch, with or without a warning message.\n"
-"\n"
-"To squelch this message, you can set it to 'refuse'."
+#: builtin/receive-pack.c:852
+msgid ""
+"By default, deleting the current branch is denied, because the next\n"
+"'git clone' won't result in any file checked out, causing confusion.\n"
+"\n"
+"You can set 'receive.denyDeleteCurrent' configuration variable to\n"
+"'warn' or 'ignore' in the remote repository to allow deleting the\n"
+"current branch, with or without a warning message.\n"
+"\n"
+"To squelch this message, you can set it to 'refuse'."
+msgstr ""
+
+#: builtin/receive-pack.c:1938
+msgid "quiet"
+msgstr ""
+
+#: builtin/receive-pack.c:1952
+msgid "You must specify a directory."
+msgstr ""
+
+#: builtin/reflog.c:17
+msgid ""
+"git reflog expire [--expire=<time>] [--expire-unreachable=<time>] [--"
+"rewrite] [--updateref] [--stale-fix] [--dry-run | -n] [--verbose] [--all] "
+"<refs>..."
+msgstr ""
+
+#: builtin/reflog.c:22
+msgid ""
+"git reflog delete [--rewrite] [--updateref] [--dry-run | -n] [--verbose] "
+"<refs>..."
+msgstr ""
+
+#: builtin/reflog.c:25
+msgid "git reflog exists <ref>"
+msgstr ""
+
+#: builtin/reflog.c:567 builtin/reflog.c:572
+#, c-format
+msgid "'%s' is not a valid timestamp"
 msgstr ""
 
-#: builtin/receive-pack.c:1929
-msgid "quiet"
+#: builtin/reflog.c:605
+#, c-format
+msgid "Marking reachable objects..."
 msgstr ""
 
-#: builtin/receive-pack.c:1943
-msgid "You must specify a directory."
+#: builtin/reflog.c:643
+#, c-format
+msgid "%s points nowhere!"
+msgstr ""
+
+#: builtin/reflog.c:695
+msgid "no reflog specified to delete"
 msgstr ""
 
-#: builtin/reflog.c:563 builtin/reflog.c:568
+#: builtin/reflog.c:704
 #, c-format
-msgid "'%s' is not a valid timestamp"
+msgid "not a reflog: %s"
+msgstr ""
+
+#: builtin/reflog.c:709
+#, c-format
+msgid "no reflog for '%s'"
+msgstr ""
+
+#: builtin/reflog.c:755
+#, c-format
+msgid "invalid ref format: %s"
+msgstr ""
+
+#: builtin/reflog.c:764
+msgid "git reflog [ show | expire | delete | exists ]"
 msgstr ""
 
 #: builtin/remote.c:16
@@ -15110,95 +17168,123 @@ msgid ""
 "--no-write-bitmap-index or disable the pack.writebitmaps configuration."
 msgstr ""
 
-#: builtin/repack.c:294
+#: builtin/repack.c:190
+msgid "could not start pack-objects to repack promisor objects"
+msgstr ""
+
+#: builtin/repack.c:229 builtin/repack.c:408
+msgid "repack: Expecting full hex object ID lines only from pack-objects."
+msgstr ""
+
+#: builtin/repack.c:246
+msgid "could not finish pack-objects to repack promisor objects"
+msgstr ""
+
+#: builtin/repack.c:284
 msgid "pack everything in a single pack"
 msgstr ""
 
-#: builtin/repack.c:296
+#: builtin/repack.c:286
 msgid "same as -a, and turn unreachable objects loose"
 msgstr ""
 
-#: builtin/repack.c:299
+#: builtin/repack.c:289
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr ""
 
-#: builtin/repack.c:301
+#: builtin/repack.c:291
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr ""
 
-#: builtin/repack.c:303
+#: builtin/repack.c:293
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr ""
 
-#: builtin/repack.c:305
+#: builtin/repack.c:295
 msgid "do not run git-update-server-info"
 msgstr ""
 
-#: builtin/repack.c:308
+#: builtin/repack.c:298
 msgid "pass --local to git-pack-objects"
 msgstr ""
 
-#: builtin/repack.c:310
+#: builtin/repack.c:300
 msgid "write bitmap index"
 msgstr ""
 
-#: builtin/repack.c:312
+#: builtin/repack.c:302
 msgid "pass --delta-islands to git-pack-objects"
 msgstr ""
 
-#: builtin/repack.c:313
+#: builtin/repack.c:303
 msgid "approxidate"
 msgstr ""
 
-#: builtin/repack.c:314
+#: builtin/repack.c:304
 msgid "with -A, do not loosen objects older than this"
 msgstr ""
 
-#: builtin/repack.c:316
+#: builtin/repack.c:306
 msgid "with -a, repack unreachable objects"
 msgstr ""
 
-#: builtin/repack.c:318
+#: builtin/repack.c:308
 msgid "size of the window used for delta compression"
 msgstr ""
 
-#: builtin/repack.c:319 builtin/repack.c:325
+#: builtin/repack.c:309 builtin/repack.c:315
 msgid "bytes"
 msgstr ""
 
-#: builtin/repack.c:320
+#: builtin/repack.c:310
 msgid "same as the above, but limit memory size instead of entries count"
 msgstr ""
 
-#: builtin/repack.c:322
+#: builtin/repack.c:312
 msgid "limits the maximum delta depth"
 msgstr ""
 
-#: builtin/repack.c:324
+#: builtin/repack.c:314
 msgid "limits the maximum number of threads"
 msgstr ""
 
-#: builtin/repack.c:326
+#: builtin/repack.c:316
 msgid "maximum size of each packfile"
 msgstr ""
 
-#: builtin/repack.c:328
+#: builtin/repack.c:318
 msgid "repack objects in packs marked with .keep"
 msgstr ""
 
-#: builtin/repack.c:330
+#: builtin/repack.c:320
 msgid "do not repack this pack"
 msgstr ""
 
-#: builtin/repack.c:340
+#: builtin/repack.c:330
 msgid "cannot delete packs in a precious-objects repo"
 msgstr ""
 
-#: builtin/repack.c:344
+#: builtin/repack.c:334
 msgid "--keep-unreachable and -A are incompatible"
 msgstr ""
 
-#: builtin/repack.c:527
+#: builtin/repack.c:417
+msgid "Nothing new to pack."
+msgstr ""
+
+#: builtin/repack.c:478
+#, c-format
+msgid ""
+"WARNING: Some packs in use have been renamed by\n"
+"WARNING: prefixing old- to their name, in order to\n"
+"WARNING: replace them with the new version of the\n"
+"WARNING: file.  But the operation failed, and the\n"
+"WARNING: attempt to rename them back to their\n"
+"WARNING: original names also failed.\n"
+"WARNING: Please rename them in %s manually:\n"
+msgstr ""
+
+#: builtin/repack.c:526
 #, c-format
 msgid "failed to remove '%s'"
 msgstr ""
@@ -15227,39 +17313,34 @@ msgstr ""
 msgid "git replace [--format=<format>] [-l [<pattern>]]"
 msgstr ""
 
-#: builtin/replace.c:58 builtin/replace.c:203 builtin/replace.c:206
-#, c-format
-msgid "failed to resolve '%s' as a valid ref"
-msgstr ""
-
-#: builtin/replace.c:86
+#: builtin/replace.c:90
 #, c-format
 msgid ""
 "invalid replace format '%s'\n"
 "valid formats are 'short', 'medium' and 'long'"
 msgstr ""
 
-#: builtin/replace.c:121
+#: builtin/replace.c:125
 #, c-format
 msgid "replace ref '%s' not found"
 msgstr ""
 
-#: builtin/replace.c:137
+#: builtin/replace.c:141
 #, c-format
 msgid "Deleted replace ref '%s'"
 msgstr ""
 
-#: builtin/replace.c:149
+#: builtin/replace.c:153
 #, c-format
 msgid "'%s' is not a valid ref name"
 msgstr ""
 
-#: builtin/replace.c:154
+#: builtin/replace.c:158
 #, c-format
 msgid "replace ref '%s' already exists"
 msgstr ""
 
-#: builtin/replace.c:174
+#: builtin/replace.c:178
 #, c-format
 msgid ""
 "Objects must be of the same type.\n"
@@ -15267,178 +17348,183 @@ msgid ""
 "while '%s' points to a replacement object of type '%s'."
 msgstr ""
 
-#: builtin/replace.c:225
+#: builtin/replace.c:229
 #, c-format
 msgid "unable to open %s for writing"
 msgstr ""
 
-#: builtin/replace.c:238
+#: builtin/replace.c:242
 msgid "cat-file reported failure"
 msgstr ""
 
-#: builtin/replace.c:254
+#: builtin/replace.c:258
 #, c-format
 msgid "unable to open %s for reading"
 msgstr ""
 
-#: builtin/replace.c:268
+#: builtin/replace.c:272
 msgid "unable to spawn mktree"
 msgstr ""
 
-#: builtin/replace.c:272
+#: builtin/replace.c:276
 msgid "unable to read from mktree"
 msgstr ""
 
-#: builtin/replace.c:281
+#: builtin/replace.c:285
 msgid "mktree reported failure"
 msgstr ""
 
-#: builtin/replace.c:285
+#: builtin/replace.c:289
 msgid "mktree did not return an object name"
 msgstr ""
 
-#: builtin/replace.c:294
+#: builtin/replace.c:298
 #, c-format
 msgid "unable to fstat %s"
 msgstr ""
 
-#: builtin/replace.c:299
+#: builtin/replace.c:303
 msgid "unable to write object to database"
 msgstr ""
 
-#: builtin/replace.c:318 builtin/replace.c:371 builtin/replace.c:415
-#: builtin/replace.c:445
+#: builtin/replace.c:322 builtin/replace.c:377 builtin/replace.c:422
+#: builtin/replace.c:452
 #, c-format
 msgid "not a valid object name: '%s'"
 msgstr ""
 
-#: builtin/replace.c:322
+#: builtin/replace.c:326
 #, c-format
 msgid "unable to get object type for %s"
 msgstr ""
 
-#: builtin/replace.c:338
+#: builtin/replace.c:342
 msgid "editing object file failed"
 msgstr ""
 
-#: builtin/replace.c:347
+#: builtin/replace.c:351
 #, c-format
 msgid "new object is the same as the old one: '%s'"
 msgstr ""
 
-#: builtin/replace.c:407
+#: builtin/replace.c:383
+#, c-format
+msgid "could not parse %s as a commit"
+msgstr ""
+
+#: builtin/replace.c:414
 #, c-format
 msgid "bad mergetag in commit '%s'"
 msgstr ""
 
-#: builtin/replace.c:409
+#: builtin/replace.c:416
 #, c-format
 msgid "malformed mergetag in commit '%s'"
 msgstr ""
 
-#: builtin/replace.c:421
+#: builtin/replace.c:428
 #, c-format
 msgid ""
 "original commit '%s' contains mergetag '%s' that is discarded; use --edit "
 "instead of --graft"
 msgstr ""
 
-#: builtin/replace.c:460
+#: builtin/replace.c:467
 #, c-format
 msgid "the original commit '%s' has a gpg signature"
 msgstr ""
 
-#: builtin/replace.c:461
+#: builtin/replace.c:468
 msgid "the signature will be removed in the replacement commit!"
 msgstr ""
 
-#: builtin/replace.c:471
+#: builtin/replace.c:478
 #, c-format
 msgid "could not write replacement commit for: '%s'"
 msgstr ""
 
-#: builtin/replace.c:479
+#: builtin/replace.c:486
 #, c-format
 msgid "graft for '%s' unnecessary"
 msgstr ""
 
-#: builtin/replace.c:482
+#: builtin/replace.c:490
 #, c-format
 msgid "new commit is the same as the old one: '%s'"
 msgstr ""
 
-#: builtin/replace.c:514
+#: builtin/replace.c:525
 #, c-format
 msgid ""
 "could not convert the following graft(s):\n"
 "%s"
 msgstr ""
 
-#: builtin/replace.c:535
+#: builtin/replace.c:546
 msgid "list replace refs"
 msgstr ""
 
-#: builtin/replace.c:536
+#: builtin/replace.c:547
 msgid "delete replace refs"
 msgstr ""
 
-#: builtin/replace.c:537
+#: builtin/replace.c:548
 msgid "edit existing object"
 msgstr ""
 
-#: builtin/replace.c:538
+#: builtin/replace.c:549
 msgid "change a commit's parents"
 msgstr ""
 
-#: builtin/replace.c:539
+#: builtin/replace.c:550
 msgid "convert existing graft file"
 msgstr ""
 
-#: builtin/replace.c:540
+#: builtin/replace.c:551
 msgid "replace the ref if it exists"
 msgstr ""
 
-#: builtin/replace.c:542
+#: builtin/replace.c:553
 msgid "do not pretty-print contents for --edit"
 msgstr ""
 
-#: builtin/replace.c:543
+#: builtin/replace.c:554
 msgid "use this format"
 msgstr ""
 
-#: builtin/replace.c:556
+#: builtin/replace.c:567
 msgid "--format cannot be used when not listing"
 msgstr ""
 
-#: builtin/replace.c:564
+#: builtin/replace.c:575
 msgid "-f only makes sense when writing a replacement"
 msgstr ""
 
-#: builtin/replace.c:568
+#: builtin/replace.c:579
 msgid "--raw only makes sense with --edit"
 msgstr ""
 
-#: builtin/replace.c:574
+#: builtin/replace.c:585
 msgid "-d needs at least one argument"
 msgstr ""
 
-#: builtin/replace.c:580
+#: builtin/replace.c:591
 msgid "bad number of arguments"
 msgstr ""
 
-#: builtin/replace.c:586
+#: builtin/replace.c:597
 msgid "-e needs exactly one argument"
 msgstr ""
 
-#: builtin/replace.c:592
+#: builtin/replace.c:603
 msgid "-g needs at least one argument"
 msgstr ""
 
-#: builtin/replace.c:598
+#: builtin/replace.c:609
 msgid "--convert-graft-file takes no argument"
 msgstr ""
 
-#: builtin/replace.c:604
+#: builtin/replace.c:615
 msgid "only one pattern can be given with -l"
 msgstr ""
 
@@ -15454,123 +17540,124 @@ msgstr ""
 msgid "'git rerere forget' without paths is deprecated"
 msgstr ""
 
-#: builtin/rerere.c:111
+#: builtin/rerere.c:113
 #, c-format
 msgid "unable to generate diff for '%s'"
 msgstr ""
 
-#: builtin/reset.c:31
+#: builtin/reset.c:32
 msgid ""
 "git reset [--mixed | --soft | --hard | --merge | --keep] [-q] [<commit>]"
 msgstr ""
 
-#: builtin/reset.c:32
+#: builtin/reset.c:33
 msgid "git reset [-q] [<tree-ish>] [--] <paths>..."
 msgstr ""
 
-#: builtin/reset.c:33
+#: builtin/reset.c:34
 msgid "git reset --patch [<tree-ish>] [--] [<paths>...]"
 msgstr ""
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "mixed"
 msgstr ""
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "soft"
 msgstr ""
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "hard"
 msgstr ""
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "merge"
 msgstr ""
 
-#: builtin/reset.c:39
+#: builtin/reset.c:40
 msgid "keep"
 msgstr ""
 
-#: builtin/reset.c:80
+#: builtin/reset.c:81
 msgid "You do not have a valid HEAD."
 msgstr ""
 
-#: builtin/reset.c:82
+#: builtin/reset.c:83
 msgid "Failed to find tree of HEAD."
 msgstr ""
 
-#: builtin/reset.c:88
+#: builtin/reset.c:89
 #, c-format
 msgid "Failed to find tree of %s."
 msgstr ""
 
-#: builtin/reset.c:192
+#: builtin/reset.c:193
 #, c-format
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr ""
 
-#: builtin/reset.c:292
+#: builtin/reset.c:293 builtin/stash.c:514 builtin/stash.c:589
+#: builtin/stash.c:613
 msgid "be quiet, only report errors"
 msgstr ""
 
-#: builtin/reset.c:294
+#: builtin/reset.c:295
 msgid "reset HEAD and index"
 msgstr ""
 
-#: builtin/reset.c:295
+#: builtin/reset.c:296
 msgid "reset only HEAD"
 msgstr ""
 
-#: builtin/reset.c:297 builtin/reset.c:299
+#: builtin/reset.c:298 builtin/reset.c:300
 msgid "reset HEAD, index and working tree"
 msgstr ""
 
-#: builtin/reset.c:301
+#: builtin/reset.c:302
 msgid "reset HEAD but keep local changes"
 msgstr ""
 
-#: builtin/reset.c:307
+#: builtin/reset.c:308
 msgid "record only the fact that removed paths will be added later"
 msgstr ""
 
-#: builtin/reset.c:325
+#: builtin/reset.c:326
 #, c-format
 msgid "Failed to resolve '%s' as a valid revision."
 msgstr ""
 
-#: builtin/reset.c:333
+#: builtin/reset.c:334
 #, c-format
 msgid "Failed to resolve '%s' as a valid tree."
 msgstr ""
 
-#: builtin/reset.c:342
+#: builtin/reset.c:343
 msgid "--patch is incompatible with --{hard,mixed,soft}"
 msgstr ""
 
-#: builtin/reset.c:351
+#: builtin/reset.c:353
 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
 msgstr ""
 
-#: builtin/reset.c:353
+#: builtin/reset.c:355
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr ""
 
-#: builtin/reset.c:363
+#: builtin/reset.c:370
 #, c-format
 msgid "%s reset is not allowed in a bare repository"
 msgstr ""
 
-#: builtin/reset.c:367
+#: builtin/reset.c:374
 msgid "-N can only be used with --mixed"
 msgstr ""
 
-#: builtin/reset.c:387
+#: builtin/reset.c:395
 msgid "Unstaged changes after reset:"
 msgstr ""
 
-#: builtin/reset.c:390
+#: builtin/reset.c:398
 #, c-format
 msgid ""
 "\n"
@@ -15579,53 +17666,53 @@ msgid ""
 "to make this the default.\n"
 msgstr ""
 
-#: builtin/reset.c:400
+#: builtin/reset.c:408
 #, c-format
 msgid "Could not reset index file to revision '%s'."
 msgstr ""
 
-#: builtin/reset.c:404
+#: builtin/reset.c:412
 msgid "Could not write new index file."
 msgstr ""
 
-#: builtin/rev-list.c:403
+#: builtin/rev-list.c:412
 msgid "cannot combine --exclude-promisor-objects and --missing"
 msgstr ""
 
-#: builtin/rev-list.c:461
+#: builtin/rev-list.c:473
 msgid "object filtering requires --objects"
 msgstr ""
 
-#: builtin/rev-list.c:464
+#: builtin/rev-list.c:476
 #, c-format
 msgid "invalid sparse value '%s'"
 msgstr ""
 
-#: builtin/rev-list.c:505
+#: builtin/rev-list.c:527
 msgid "rev-list does not support display of notes"
 msgstr ""
 
-#: builtin/rev-list.c:508
+#: builtin/rev-list.c:530
 msgid "cannot combine --use-bitmap-index with object filtering"
 msgstr ""
 
-#: builtin/rev-parse.c:407
+#: builtin/rev-parse.c:408
 msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
 msgstr ""
 
-#: builtin/rev-parse.c:412
+#: builtin/rev-parse.c:413
 msgid "keep the `--` passed as an arg"
 msgstr ""
 
-#: builtin/rev-parse.c:414
+#: builtin/rev-parse.c:415
 msgid "stop parsing after the first non-option argument"
 msgstr ""
 
-#: builtin/rev-parse.c:417
+#: builtin/rev-parse.c:418
 msgid "output in stuck long form"
 msgstr ""
 
-#: builtin/rev-parse.c:550
+#: builtin/rev-parse.c:551
 msgid ""
 "git rev-parse --parseopt [<options>] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
@@ -15650,72 +17737,81 @@ msgstr ""
 msgid "git cherry-pick <subcommand>"
 msgstr ""
 
-#: builtin/revert.c:91
+#: builtin/revert.c:72
+#, c-format
+msgid "option `%s' expects a number greater than zero"
+msgstr ""
+
+#: builtin/revert.c:92
 #, c-format
 msgid "%s: %s cannot be used with %s"
 msgstr ""
 
-#: builtin/revert.c:100
+#: builtin/revert.c:102
 msgid "end revert or cherry-pick sequence"
 msgstr ""
 
-#: builtin/revert.c:101
+#: builtin/revert.c:103
 msgid "resume revert or cherry-pick sequence"
 msgstr ""
 
-#: builtin/revert.c:102
+#: builtin/revert.c:104
 msgid "cancel revert or cherry-pick sequence"
 msgstr ""
 
-#: builtin/revert.c:103
+#: builtin/revert.c:105
+msgid "skip current commit and continue"
+msgstr ""
+
+#: builtin/revert.c:107
 msgid "don't automatically commit"
 msgstr ""
 
-#: builtin/revert.c:104
+#: builtin/revert.c:108
 msgid "edit the commit message"
 msgstr ""
 
-#: builtin/revert.c:107
+#: builtin/revert.c:111
 msgid "parent-number"
 msgstr ""
 
-#: builtin/revert.c:108
+#: builtin/revert.c:112
 msgid "select mainline parent"
 msgstr ""
 
-#: builtin/revert.c:110
+#: builtin/revert.c:114
 msgid "merge strategy"
 msgstr ""
 
-#: builtin/revert.c:112
+#: builtin/revert.c:116
 msgid "option for merge strategy"
 msgstr ""
 
-#: builtin/revert.c:121
+#: builtin/revert.c:125
 msgid "append commit name"
 msgstr ""
 
-#: builtin/revert.c:123
+#: builtin/revert.c:127
 msgid "preserve initially empty commits"
 msgstr ""
 
-#: builtin/revert.c:125
+#: builtin/revert.c:129
 msgid "keep redundant, empty commits"
 msgstr ""
 
-#: builtin/revert.c:219
+#: builtin/revert.c:232
 msgid "revert failed"
 msgstr ""
 
-#: builtin/revert.c:232
+#: builtin/revert.c:245
 msgid "cherry-pick failed"
 msgstr ""
 
-#: builtin/rm.c:18
+#: builtin/rm.c:19
 msgid "git rm [<options>] [--] <file>..."
 msgstr ""
 
-#: builtin/rm.c:206
+#: builtin/rm.c:207
 msgid ""
 "the following file has staged content different from both the\n"
 "file and the HEAD:"
@@ -15725,60 +17821,60 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/rm.c:211
+#: builtin/rm.c:212
 msgid ""
 "\n"
 "(use -f to force removal)"
 msgstr ""
 
-#: builtin/rm.c:215
+#: builtin/rm.c:216
 msgid "the following file has changes staged in the index:"
 msgid_plural "the following files have changes staged in the index:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/rm.c:219 builtin/rm.c:228
+#: builtin/rm.c:220 builtin/rm.c:229
 msgid ""
 "\n"
 "(use --cached to keep the file, or -f to force removal)"
 msgstr ""
 
-#: builtin/rm.c:225
+#: builtin/rm.c:226
 msgid "the following file has local modifications:"
 msgid_plural "the following files have local modifications:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/rm.c:241
+#: builtin/rm.c:242
 msgid "do not list removed files"
 msgstr ""
 
-#: builtin/rm.c:242
+#: builtin/rm.c:243
 msgid "only remove from the index"
 msgstr ""
 
-#: builtin/rm.c:243
+#: builtin/rm.c:244
 msgid "override the up-to-date check"
 msgstr ""
 
-#: builtin/rm.c:244
+#: builtin/rm.c:245
 msgid "allow recursive removal"
 msgstr ""
 
-#: builtin/rm.c:246
+#: builtin/rm.c:247
 msgid "exit with a zero status even if nothing matched"
 msgstr ""
 
-#: builtin/rm.c:288
+#: builtin/rm.c:289
 msgid "please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
 
-#: builtin/rm.c:306
+#: builtin/rm.c:307
 #, c-format
 msgid "not removing '%s' recursively without -r"
 msgstr ""
 
-#: builtin/rm.c:345
+#: builtin/rm.c:346
 #, c-format
 msgid "git rm: unable to remove %s"
 msgstr ""
@@ -15807,18 +17903,6 @@ msgstr ""
 msgid "print status from remote helper"
 msgstr ""
 
-#: builtin/serve.c:7
-msgid "git serve [<options>]"
-msgstr ""
-
-#: builtin/serve.c:17 builtin/upload-pack.c:23
-msgid "quit after a single request/response exchange"
-msgstr ""
-
-#: builtin/serve.c:19
-msgid "exit immediately after advertising capabilities"
-msgstr ""
-
 #: builtin/shortlog.c:14
 msgid "git shortlog [<options>] [<revision-range>] [[--] <path>...]"
 msgstr ""
@@ -15851,7 +17935,7 @@ msgstr ""
 msgid "Linewrap output"
 msgstr ""
 
-#: builtin/shortlog.c:299
+#: builtin/shortlog.c:301
 msgid "too many arguments given outside repository"
 msgstr ""
 
@@ -15874,157 +17958,378 @@ msgid_plural "ignoring %s; cannot handle more than %d refs"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/show-branch.c:549
+#: builtin/show-branch.c:548
 #, c-format
 msgid "no matching refs with %s"
 msgstr ""
 
-#: builtin/show-branch.c:646
+#: builtin/show-branch.c:645
 msgid "show remote-tracking and local branches"
 msgstr ""
 
-#: builtin/show-branch.c:648
+#: builtin/show-branch.c:647
 msgid "show remote-tracking branches"
 msgstr ""
 
-#: builtin/show-branch.c:650
+#: builtin/show-branch.c:649
 msgid "color '*!+-' corresponding to the branch"
 msgstr ""
 
-#: builtin/show-branch.c:652
+#: builtin/show-branch.c:651
 msgid "show <n> more commits after the common ancestor"
 msgstr ""
 
-#: builtin/show-branch.c:654
+#: builtin/show-branch.c:653
 msgid "synonym to more=-1"
 msgstr ""
 
-#: builtin/show-branch.c:655
+#: builtin/show-branch.c:654
 msgid "suppress naming strings"
 msgstr ""
 
-#: builtin/show-branch.c:657
+#: builtin/show-branch.c:656
 msgid "include the current branch"
 msgstr ""
 
-#: builtin/show-branch.c:659
+#: builtin/show-branch.c:658
 msgid "name commits with their object names"
 msgstr ""
 
-#: builtin/show-branch.c:661
+#: builtin/show-branch.c:660
 msgid "show possible merge bases"
 msgstr ""
 
-#: builtin/show-branch.c:663
+#: builtin/show-branch.c:662
 msgid "show refs unreachable from any other ref"
 msgstr ""
 
-#: builtin/show-branch.c:665
+#: builtin/show-branch.c:664
 msgid "show commits in topological order"
 msgstr ""
 
-#: builtin/show-branch.c:668
+#: builtin/show-branch.c:667
 msgid "show only commits not on the first branch"
 msgstr ""
 
-#: builtin/show-branch.c:670
+#: builtin/show-branch.c:669
 msgid "show merges reachable from only one tip"
 msgstr ""
 
-#: builtin/show-branch.c:672
+#: builtin/show-branch.c:671
 msgid "topologically sort, maintaining date order where possible"
 msgstr ""
 
-#: builtin/show-branch.c:675
+#: builtin/show-branch.c:674
 msgid "<n>[,<base>]"
 msgstr ""
 
-#: builtin/show-branch.c:676
+#: builtin/show-branch.c:675
 msgid "show <n> most recent ref-log entries starting at base"
 msgstr ""
 
-#: builtin/show-branch.c:712
+#: builtin/show-branch.c:711
 msgid ""
 "--reflog is incompatible with --all, --remotes, --independent or --merge-base"
 msgstr ""
 
-#: builtin/show-branch.c:736
+#: builtin/show-branch.c:735
 msgid "no branches given, and HEAD is not valid"
 msgstr ""
 
-#: builtin/show-branch.c:739
+#: builtin/show-branch.c:738
 msgid "--reflog option needs one branch name"
 msgstr ""
 
-#: builtin/show-branch.c:742
+#: builtin/show-branch.c:741
 #, c-format
 msgid "only %d entry can be shown at one time."
 msgid_plural "only %d entries can be shown at one time."
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/show-branch.c:746
+#: builtin/show-branch.c:745
 #, c-format
 msgid "no such ref %s"
 msgstr ""
 
-#: builtin/show-branch.c:830
+#: builtin/show-branch.c:831
 #, c-format
 msgid "cannot handle more than %d rev."
 msgid_plural "cannot handle more than %d revs."
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/show-branch.c:834
+#: builtin/show-branch.c:835
 #, c-format
 msgid "'%s' is not a valid ref."
 msgstr ""
 
-#: builtin/show-branch.c:837
+#: builtin/show-branch.c:838
 #, c-format
 msgid "cannot find commit %s (%s)"
 msgstr ""
 
-#: builtin/show-ref.c:11
+#: builtin/show-ref.c:12
 msgid ""
 "git show-ref [-q | --quiet] [--verify] [--head] [-d | --dereference] [-s | --"
 "hash[=<n>]] [--abbrev[=<n>]] [--tags] [--heads] [--] [<pattern>...]"
 msgstr ""
 
-#: builtin/show-ref.c:12
+#: builtin/show-ref.c:13
 msgid "git show-ref --exclude-existing[=<pattern>]"
 msgstr ""
 
-#: builtin/show-ref.c:161
-msgid "only show tags (can be combined with heads)"
+#: builtin/show-ref.c:162
+msgid "only show tags (can be combined with heads)"
+msgstr ""
+
+#: builtin/show-ref.c:163
+msgid "only show heads (can be combined with tags)"
+msgstr ""
+
+#: builtin/show-ref.c:164
+msgid "stricter reference checking, requires exact ref path"
+msgstr ""
+
+#: builtin/show-ref.c:167 builtin/show-ref.c:169
+msgid "show the HEAD reference, even if it would be filtered out"
+msgstr ""
+
+#: builtin/show-ref.c:171
+msgid "dereference tags into object IDs"
+msgstr ""
+
+#: builtin/show-ref.c:173
+msgid "only show SHA1 hash using <n> digits"
+msgstr ""
+
+#: builtin/show-ref.c:177
+msgid "do not print results to stdout (useful with --verify)"
+msgstr ""
+
+#: builtin/show-ref.c:179
+msgid "show refs from stdin that aren't in local repository"
+msgstr ""
+
+#: builtin/stash.c:22 builtin/stash.c:37
+msgid "git stash list [<options>]"
+msgstr ""
+
+#: builtin/stash.c:23 builtin/stash.c:42
+msgid "git stash show [<options>] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:24 builtin/stash.c:47
+msgid "git stash drop [-q|--quiet] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:25
+msgid "git stash ( pop | apply ) [--index] [-q|--quiet] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:26 builtin/stash.c:62
+msgid "git stash branch <branchname> [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:27 builtin/stash.c:67
+msgid "git stash clear"
+msgstr ""
+
+#: builtin/stash.c:28 builtin/stash.c:77
+msgid ""
+"git stash [push [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [-m|--message <message>]\n"
+"          [--] [<pathspec>...]]"
+msgstr ""
+
+#: builtin/stash.c:31 builtin/stash.c:84
+msgid ""
+"git stash save [-p|--patch] [-k|--[no-]keep-index] [-q|--quiet]\n"
+"          [-u|--include-untracked] [-a|--all] [<message>]"
+msgstr ""
+
+#: builtin/stash.c:52
+msgid "git stash pop [--index] [-q|--quiet] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:57
+msgid "git stash apply [--index] [-q|--quiet] [<stash>]"
+msgstr ""
+
+#: builtin/stash.c:72
+msgid "git stash store [-m|--message <message>] [-q|--quiet] <commit>"
+msgstr ""
+
+#: builtin/stash.c:127
+#, c-format
+msgid "'%s' is not a stash-like commit"
+msgstr ""
+
+#: builtin/stash.c:147
+#, c-format
+msgid "Too many revisions specified:%s"
+msgstr ""
+
+#: builtin/stash.c:161 git-legacy-stash.sh:548
+msgid "No stash entries found."
+msgstr ""
+
+#: builtin/stash.c:175
+#, c-format
+msgid "%s is not a valid reference"
+msgstr ""
+
+#: builtin/stash.c:224 git-legacy-stash.sh:75
+msgid "git stash clear with parameters is unimplemented"
+msgstr ""
+
+#: builtin/stash.c:403
+msgid "cannot apply a stash in the middle of a merge"
+msgstr ""
+
+#: builtin/stash.c:414
+#, c-format
+msgid "could not generate diff %s^!."
+msgstr ""
+
+#: builtin/stash.c:421
+msgid "conflicts in index.Try without --index."
+msgstr ""
+
+#: builtin/stash.c:427
+msgid "could not save index tree"
+msgstr ""
+
+#: builtin/stash.c:434
+msgid "could not restore untracked files from stash"
+msgstr ""
+
+#: builtin/stash.c:448
+#, c-format
+msgid "Merging %s with %s"
+msgstr ""
+
+#: builtin/stash.c:458 git-legacy-stash.sh:680
+msgid "Index was not unstashed."
+msgstr ""
+
+#: builtin/stash.c:516 builtin/stash.c:615
+msgid "attempt to recreate the index"
+msgstr ""
+
+#: builtin/stash.c:549
+#, c-format
+msgid "Dropped %s (%s)"
+msgstr ""
+
+#: builtin/stash.c:552
+#, c-format
+msgid "%s: Could not drop stash entry"
+msgstr ""
+
+#: builtin/stash.c:577
+#, c-format
+msgid "'%s' is not a stash reference"
+msgstr ""
+
+#: builtin/stash.c:627 git-legacy-stash.sh:694
+msgid "The stash entry is kept in case you need it again."
+msgstr ""
+
+#: builtin/stash.c:650 git-legacy-stash.sh:712
+msgid "No branch name specified"
+msgstr ""
+
+#: builtin/stash.c:790 builtin/stash.c:827
+#, c-format
+msgid "Cannot update %s with %s"
+msgstr ""
+
+#: builtin/stash.c:808 builtin/stash.c:1461 builtin/stash.c:1497
+msgid "stash message"
+msgstr ""
+
+#: builtin/stash.c:818
+msgid "\"git stash store\" requires one <commit> argument"
+msgstr ""
+
+#: builtin/stash.c:1040 git-legacy-stash.sh:217
+msgid "No changes selected"
+msgstr ""
+
+#: builtin/stash.c:1136 git-legacy-stash.sh:150
+msgid "You do not have the initial commit yet"
+msgstr ""
+
+#: builtin/stash.c:1163 git-legacy-stash.sh:165
+msgid "Cannot save the current index state"
+msgstr ""
+
+#: builtin/stash.c:1172 git-legacy-stash.sh:180
+msgid "Cannot save the untracked files"
+msgstr ""
+
+#: builtin/stash.c:1183 builtin/stash.c:1192 git-legacy-stash.sh:200
+#: git-legacy-stash.sh:213
+msgid "Cannot save the current worktree state"
+msgstr ""
+
+#: builtin/stash.c:1220 git-legacy-stash.sh:233
+msgid "Cannot record working tree state"
+msgstr ""
+
+#: builtin/stash.c:1269 git-legacy-stash.sh:337
+msgid "Can't use --patch and --include-untracked or --all at the same time"
+msgstr ""
+
+#: builtin/stash.c:1285
+msgid "Did you forget to 'git add'?"
+msgstr ""
+
+#: builtin/stash.c:1300 git-legacy-stash.sh:345
+msgid "No local changes to save"
+msgstr ""
+
+#: builtin/stash.c:1307 git-legacy-stash.sh:350
+msgid "Cannot initialize stash"
+msgstr ""
+
+#: builtin/stash.c:1322 git-legacy-stash.sh:354
+msgid "Cannot save the current status"
+msgstr ""
+
+#: builtin/stash.c:1327
+#, c-format
+msgid "Saved working directory and index state %s"
 msgstr ""
 
-#: builtin/show-ref.c:162
-msgid "only show heads (can be combined with tags)"
+#: builtin/stash.c:1417 git-legacy-stash.sh:384
+msgid "Cannot remove worktree changes"
 msgstr ""
 
-#: builtin/show-ref.c:163
-msgid "stricter reference checking, requires exact ref path"
+#: builtin/stash.c:1452 builtin/stash.c:1488
+msgid "keep index"
 msgstr ""
 
-#: builtin/show-ref.c:166 builtin/show-ref.c:168
-msgid "show the HEAD reference, even if it would be filtered out"
+#: builtin/stash.c:1454 builtin/stash.c:1490
+msgid "stash in patch mode"
 msgstr ""
 
-#: builtin/show-ref.c:170
-msgid "dereference tags into object IDs"
+#: builtin/stash.c:1455 builtin/stash.c:1491
+msgid "quiet mode"
 msgstr ""
 
-#: builtin/show-ref.c:172
-msgid "only show SHA1 hash using <n> digits"
+#: builtin/stash.c:1457 builtin/stash.c:1493
+msgid "include untracked files in stash"
 msgstr ""
 
-#: builtin/show-ref.c:176
-msgid "do not print results to stdout (useful with --verify)"
+#: builtin/stash.c:1459 builtin/stash.c:1495
+msgid "include ignore files"
 msgstr ""
 
-#: builtin/show-ref.c:178
-msgid "show refs from stdin that aren't in local repository"
+#: builtin/stash.c:1555
+#, c-format
+msgid "could not exec %s"
 msgstr ""
 
 #: builtin/stripspace.c:18
@@ -16035,55 +18340,55 @@ msgstr ""
 msgid "git stripspace [-c | --comment-lines]"
 msgstr ""
 
-#: builtin/stripspace.c:36
+#: builtin/stripspace.c:37
 msgid "skip and remove all lines starting with comment character"
 msgstr ""
 
-#: builtin/stripspace.c:39
+#: builtin/stripspace.c:40
 msgid "prepend comment character and space to each line"
 msgstr ""
 
-#: builtin/submodule--helper.c:44 builtin/submodule--helper.c:1939
+#: builtin/submodule--helper.c:45 builtin/submodule--helper.c:1943
 #, c-format
 msgid "Expecting a full ref name, got %s"
 msgstr ""
 
-#: builtin/submodule--helper.c:61
+#: builtin/submodule--helper.c:62
 msgid "submodule--helper print-default-remote takes no arguments"
 msgstr ""
 
-#: builtin/submodule--helper.c:99
+#: builtin/submodule--helper.c:100
 #, c-format
 msgid "cannot strip one component off url '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:407 builtin/submodule--helper.c:1363
+#: builtin/submodule--helper.c:408 builtin/submodule--helper.c:1368
 msgid "alternative anchor for relative paths"
 msgstr ""
 
-#: builtin/submodule--helper.c:412
+#: builtin/submodule--helper.c:413
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
 msgstr ""
 
-#: builtin/submodule--helper.c:469 builtin/submodule--helper.c:626
-#: builtin/submodule--helper.c:649
+#: builtin/submodule--helper.c:470 builtin/submodule--helper.c:628
+#: builtin/submodule--helper.c:651
 #, c-format
 msgid "No url found for submodule path '%s' in .gitmodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:521
+#: builtin/submodule--helper.c:522
 #, c-format
 msgid "Entering '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:524
+#: builtin/submodule--helper.c:525
 #, c-format
 msgid ""
 "run_command returned non-zero status for %s\n"
 "."
 msgstr ""
 
-#: builtin/submodule--helper.c:545
+#: builtin/submodule--helper.c:547
 #, c-format
 msgid ""
 "run_command returned non-zero status while recursing in the nested "
@@ -16091,338 +18396,346 @@ msgid ""
 "."
 msgstr ""
 
-#: builtin/submodule--helper.c:561
+#: builtin/submodule--helper.c:563
 msgid "Suppress output of entering each submodule command"
 msgstr ""
 
-#: builtin/submodule--helper.c:563 builtin/submodule--helper.c:1048
+#: builtin/submodule--helper.c:565 builtin/submodule--helper.c:1050
 msgid "Recurse into nested submodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:568
-msgid "git submodule--helper foreach [--quiet] [--recursive] <command>"
+#: builtin/submodule--helper.c:570
+msgid "git submodule--helper foreach [--quiet] [--recursive] [--] <command>"
 msgstr ""
 
-#: builtin/submodule--helper.c:595
+#: builtin/submodule--helper.c:597
 #, c-format
 msgid ""
 "could not look up configuration '%s'. Assuming this repository is its own "
 "authoritative upstream."
 msgstr ""
 
-#: builtin/submodule--helper.c:663
+#: builtin/submodule--helper.c:665
 #, c-format
 msgid "Failed to register url for submodule path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:667
+#: builtin/submodule--helper.c:669
 #, c-format
 msgid "Submodule '%s' (%s) registered for path '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:677
+#: builtin/submodule--helper.c:679
 #, c-format
 msgid "warning: command update mode suggested for submodule '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:684
+#: builtin/submodule--helper.c:686
 #, c-format
 msgid "Failed to register update mode for submodule path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:706
+#: builtin/submodule--helper.c:708
 msgid "Suppress output for initializing a submodule"
 msgstr ""
 
-#: builtin/submodule--helper.c:711
-msgid "git submodule--helper init [<path>]"
+#: builtin/submodule--helper.c:713
+msgid "git submodule--helper init [<options>] [<path>]"
 msgstr ""
 
-#: builtin/submodule--helper.c:783 builtin/submodule--helper.c:909
+#: builtin/submodule--helper.c:785 builtin/submodule--helper.c:911
 #, c-format
 msgid "no submodule mapping found in .gitmodules for path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:822
+#: builtin/submodule--helper.c:824
 #, c-format
 msgid "could not resolve HEAD ref inside the submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:849 builtin/submodule--helper.c:1018
+#: builtin/submodule--helper.c:851 builtin/submodule--helper.c:1020
 #, c-format
 msgid "failed to recurse into submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:873 builtin/submodule--helper.c:1182
+#: builtin/submodule--helper.c:875 builtin/submodule--helper.c:1186
 msgid "Suppress submodule status output"
 msgstr ""
 
-#: builtin/submodule--helper.c:874
+#: builtin/submodule--helper.c:876
 msgid ""
 "Use commit stored in the index instead of the one stored in the submodule "
 "HEAD"
 msgstr ""
 
-#: builtin/submodule--helper.c:875
+#: builtin/submodule--helper.c:877
 msgid "recurse into nested submodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:880
+#: builtin/submodule--helper.c:882
 msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
 msgstr ""
 
-#: builtin/submodule--helper.c:904
+#: builtin/submodule--helper.c:906
 msgid "git submodule--helper name <path>"
 msgstr ""
 
-#: builtin/submodule--helper.c:968
+#: builtin/submodule--helper.c:970
 #, c-format
 msgid "Synchronizing submodule url for '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:974
+#: builtin/submodule--helper.c:976
 #, c-format
 msgid "failed to register url for submodule path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:988
+#: builtin/submodule--helper.c:990
 #, c-format
 msgid "failed to get the default remote for submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:999
+#: builtin/submodule--helper.c:1001
 #, c-format
 msgid "failed to update remote for submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:1046
+#: builtin/submodule--helper.c:1048
 msgid "Suppress output of synchronizing submodule url"
 msgstr ""
 
-#: builtin/submodule--helper.c:1053
+#: builtin/submodule--helper.c:1055
 msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
 msgstr ""
 
-#: builtin/submodule--helper.c:1107
+#: builtin/submodule--helper.c:1109
 #, c-format
 msgid ""
 "Submodule work tree '%s' contains a .git directory (use 'rm -rf' if you "
 "really want to remove it including all of its history)"
 msgstr ""
 
-#: builtin/submodule--helper.c:1119
+#: builtin/submodule--helper.c:1121
 #, c-format
 msgid ""
 "Submodule work tree '%s' contains local modifications; use '-f' to discard "
 "them"
 msgstr ""
 
-#: builtin/submodule--helper.c:1127
+#: builtin/submodule--helper.c:1129
 #, c-format
 msgid "Cleared directory '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:1129
+#: builtin/submodule--helper.c:1131
 #, c-format
 msgid "Could not remove submodule work tree '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:1138
+#: builtin/submodule--helper.c:1142
 #, c-format
 msgid "could not create empty submodule directory %s"
 msgstr ""
 
-#: builtin/submodule--helper.c:1154
+#: builtin/submodule--helper.c:1158
 #, c-format
 msgid "Submodule '%s' (%s) unregistered for path '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:1183
+#: builtin/submodule--helper.c:1187
 msgid "Remove submodule working trees even if they contain local changes"
 msgstr ""
 
-#: builtin/submodule--helper.c:1184
+#: builtin/submodule--helper.c:1188
 msgid "Unregister all submodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:1189
+#: builtin/submodule--helper.c:1193
 msgid ""
 "git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
 msgstr ""
 
-#: builtin/submodule--helper.c:1203
+#: builtin/submodule--helper.c:1207
 msgid "Use '--all' if you really want to deinitialize all submodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:1297 builtin/submodule--helper.c:1300
+#: builtin/submodule--helper.c:1302 builtin/submodule--helper.c:1305
 #, c-format
 msgid "submodule '%s' cannot add alternate: %s"
 msgstr ""
 
-#: builtin/submodule--helper.c:1336
+#: builtin/submodule--helper.c:1341
 #, c-format
 msgid "Value '%s' for submodule.alternateErrorStrategy is not recognized"
 msgstr ""
 
-#: builtin/submodule--helper.c:1343
+#: builtin/submodule--helper.c:1348
 #, c-format
 msgid "Value '%s' for submodule.alternateLocation is not recognized"
 msgstr ""
 
-#: builtin/submodule--helper.c:1366
+#: builtin/submodule--helper.c:1371
 msgid "where the new submodule will be cloned to"
 msgstr ""
 
-#: builtin/submodule--helper.c:1369
+#: builtin/submodule--helper.c:1374
 msgid "name of the new submodule"
 msgstr ""
 
-#: builtin/submodule--helper.c:1372
+#: builtin/submodule--helper.c:1377
 msgid "url where to clone the submodule from"
 msgstr ""
 
-#: builtin/submodule--helper.c:1380
+#: builtin/submodule--helper.c:1385
 msgid "depth for shallow clones"
 msgstr ""
 
-#: builtin/submodule--helper.c:1383 builtin/submodule--helper.c:1868
+#: builtin/submodule--helper.c:1388 builtin/submodule--helper.c:1872
 msgid "force cloning progress"
 msgstr ""
 
-#: builtin/submodule--helper.c:1388
+#: builtin/submodule--helper.c:1393
 msgid ""
 "git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
 "<repository>] [--name <name>] [--depth <depth>] --url <url> --path <path>"
 msgstr ""
 
-#: builtin/submodule--helper.c:1419
+#: builtin/submodule--helper.c:1424
 #, c-format
 msgid "clone of '%s' into submodule path '%s' failed"
 msgstr ""
 
-#: builtin/submodule--helper.c:1433
+#: builtin/submodule--helper.c:1438
 #, c-format
 msgid "could not get submodule directory for '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:1469
+#: builtin/submodule--helper.c:1474
 #, c-format
 msgid "Invalid update mode '%s' for submodule path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:1473
+#: builtin/submodule--helper.c:1478
 #, c-format
 msgid "Invalid update mode '%s' configured for submodule path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:1566
+#: builtin/submodule--helper.c:1571
 #, c-format
 msgid "Submodule path '%s' not initialized"
 msgstr ""
 
-#: builtin/submodule--helper.c:1570
+#: builtin/submodule--helper.c:1575
 msgid "Maybe you want to use 'update --init'?"
 msgstr ""
 
-#: builtin/submodule--helper.c:1600
+#: builtin/submodule--helper.c:1605
 #, c-format
 msgid "Skipping unmerged submodule %s"
 msgstr ""
 
-#: builtin/submodule--helper.c:1629
+#: builtin/submodule--helper.c:1634
 #, c-format
 msgid "Skipping submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:1773
+#: builtin/submodule--helper.c:1778
 #, c-format
 msgid "Failed to clone '%s'. Retry scheduled"
 msgstr ""
 
-#: builtin/submodule--helper.c:1784
+#: builtin/submodule--helper.c:1789
 #, c-format
 msgid "Failed to clone '%s' a second time, aborting"
 msgstr ""
 
-#: builtin/submodule--helper.c:1847 builtin/submodule--helper.c:2089
+#: builtin/submodule--helper.c:1851 builtin/submodule--helper.c:2093
 msgid "path into the working tree"
 msgstr ""
 
-#: builtin/submodule--helper.c:1850
+#: builtin/submodule--helper.c:1854
 msgid "path into the working tree, across nested submodule boundaries"
 msgstr ""
 
-#: builtin/submodule--helper.c:1854
+#: builtin/submodule--helper.c:1858
 msgid "rebase, merge, checkout or none"
 msgstr ""
 
-#: builtin/submodule--helper.c:1860
+#: builtin/submodule--helper.c:1864
 msgid "Create a shallow clone truncated to the specified number of revisions"
 msgstr ""
 
-#: builtin/submodule--helper.c:1863
+#: builtin/submodule--helper.c:1867
 msgid "parallel jobs"
 msgstr ""
 
-#: builtin/submodule--helper.c:1865
+#: builtin/submodule--helper.c:1869
 msgid "whether the initial clone should follow the shallow recommendation"
 msgstr ""
 
-#: builtin/submodule--helper.c:1866
+#: builtin/submodule--helper.c:1870
 msgid "don't print cloning progress"
 msgstr ""
 
-#: builtin/submodule--helper.c:1873
+#: builtin/submodule--helper.c:1877
 msgid "git submodule--helper update_clone [--prefix=<path>] [<path>...]"
 msgstr ""
 
-#: builtin/submodule--helper.c:1886
+#: builtin/submodule--helper.c:1890
 msgid "bad value for update parameter"
 msgstr ""
 
-#: builtin/submodule--helper.c:1934
+#: builtin/submodule--helper.c:1938
 #, c-format
 msgid ""
 "Submodule (%s) branch configured to inherit branch from superproject, but "
 "the superproject is not on any branch"
 msgstr ""
 
-#: builtin/submodule--helper.c:2057
+#: builtin/submodule--helper.c:2061
 #, c-format
 msgid "could not get a repository handle for submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:2090
+#: builtin/submodule--helper.c:2094
 msgid "recurse into submodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:2096
-msgid "git submodule--helper embed-git-dir [<path>...]"
+#: builtin/submodule--helper.c:2100
+msgid "git submodule--helper absorb-git-dirs [<options>] [<path>...]"
 msgstr ""
 
-#: builtin/submodule--helper.c:2152
+#: builtin/submodule--helper.c:2156
 msgid "check if it is safe to write to the .gitmodules file"
 msgstr ""
 
-#: builtin/submodule--helper.c:2157
-msgid "git submodule--helper config name [value]"
+#: builtin/submodule--helper.c:2159
+msgid "unset the config in the .gitmodules file"
+msgstr ""
+
+#: builtin/submodule--helper.c:2164
+msgid "git submodule--helper config <name> [<value>]"
+msgstr ""
+
+#: builtin/submodule--helper.c:2165
+msgid "git submodule--helper config --unset <name>"
 msgstr ""
 
-#: builtin/submodule--helper.c:2158
+#: builtin/submodule--helper.c:2166
 msgid "git submodule--helper config --check-writeable"
 msgstr ""
 
-#: builtin/submodule--helper.c:2175 git-submodule.sh:169
+#: builtin/submodule--helper.c:2185 git-submodule.sh:171
 #, sh-format
 msgid "please make sure that the .gitmodules file is in the working tree"
 msgstr ""
 
-#: builtin/submodule--helper.c:2225
+#: builtin/submodule--helper.c:2235 git.c:434 git.c:684
 #, c-format
 msgid "%s doesn't support --super-prefix"
 msgstr ""
 
-#: builtin/submodule--helper.c:2231
+#: builtin/submodule--helper.c:2241
 #, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
 msgstr ""
@@ -16457,36 +18770,36 @@ msgstr ""
 
 #: builtin/tag.c:25
 msgid ""
-"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>] <tagname> "
-"[<head>]"
+"git tag [-a | -s | -u <key-id>] [-f] [-m <msg> | -F <file>]\n"
+"\t\t<tagname> [<head>]"
 msgstr ""
 
-#: builtin/tag.c:26
+#: builtin/tag.c:27
 msgid "git tag -d <tagname>..."
 msgstr ""
 
-#: builtin/tag.c:27
+#: builtin/tag.c:28
 msgid ""
 "git tag -l [-n[<num>]] [--contains <commit>] [--no-contains <commit>] [--"
 "points-at <object>]\n"
 "\t\t[--format=<format>] [--[no-]merged [<commit>]] [<pattern>...]"
 msgstr ""
 
-#: builtin/tag.c:29
+#: builtin/tag.c:30
 msgid "git tag -v [--format=<format>] <tagname>..."
 msgstr ""
 
-#: builtin/tag.c:87
+#: builtin/tag.c:89
 #, c-format
 msgid "tag '%s' not found."
 msgstr ""
 
-#: builtin/tag.c:103
+#: builtin/tag.c:105
 #, c-format
 msgid "Deleted tag '%s' (was %s)\n"
 msgstr ""
 
-#: builtin/tag.c:133
+#: builtin/tag.c:135
 #, c-format
 msgid ""
 "\n"
@@ -16495,7 +18808,7 @@ msgid ""
 "Lines starting with '%c' will be ignored.\n"
 msgstr ""
 
-#: builtin/tag.c:137
+#: builtin/tag.c:139
 #, c-format
 msgid ""
 "\n"
@@ -16505,146 +18818,155 @@ msgid ""
 "want to.\n"
 msgstr ""
 
-#: builtin/tag.c:191
+#: builtin/tag.c:198
 msgid "unable to sign the tag"
 msgstr ""
 
-#: builtin/tag.c:193
+#: builtin/tag.c:200
 msgid "unable to write tag file"
 msgstr ""
 
-#: builtin/tag.c:218
+#: builtin/tag.c:216
+#, c-format
+msgid ""
+"You have created a nested tag. The object referred to by your new tag is\n"
+"already a tag. If you meant to tag the object that it points to, use:\n"
+"\n"
+"\tgit tag -f %s %s^{}"
+msgstr ""
+
+#: builtin/tag.c:232
 msgid "bad object type."
 msgstr ""
 
-#: builtin/tag.c:267
+#: builtin/tag.c:284
 msgid "no tag message?"
 msgstr ""
 
-#: builtin/tag.c:274
+#: builtin/tag.c:291
 #, c-format
 msgid "The tag message has been left in %s\n"
 msgstr ""
 
-#: builtin/tag.c:385
+#: builtin/tag.c:402
 msgid "list tag names"
 msgstr ""
 
-#: builtin/tag.c:387
+#: builtin/tag.c:404
 msgid "print <n> lines of each tag message"
 msgstr ""
 
-#: builtin/tag.c:389
+#: builtin/tag.c:406
 msgid "delete tags"
 msgstr ""
 
-#: builtin/tag.c:390
+#: builtin/tag.c:407
 msgid "verify tags"
 msgstr ""
 
-#: builtin/tag.c:392
+#: builtin/tag.c:409
 msgid "Tag creation options"
 msgstr ""
 
-#: builtin/tag.c:394
+#: builtin/tag.c:411
 msgid "annotated tag, needs a message"
 msgstr ""
 
-#: builtin/tag.c:396
+#: builtin/tag.c:413
 msgid "tag message"
 msgstr ""
 
-#: builtin/tag.c:398
+#: builtin/tag.c:415
 msgid "force edit of tag message"
 msgstr ""
 
-#: builtin/tag.c:399
+#: builtin/tag.c:416
 msgid "annotated and GPG-signed tag"
 msgstr ""
 
-#: builtin/tag.c:403
+#: builtin/tag.c:419
 msgid "use another key to sign the tag"
 msgstr ""
 
-#: builtin/tag.c:404
+#: builtin/tag.c:420
 msgid "replace the tag if exists"
 msgstr ""
 
-#: builtin/tag.c:405 builtin/update-ref.c:369
+#: builtin/tag.c:421 builtin/update-ref.c:369
 msgid "create a reflog"
 msgstr ""
 
-#: builtin/tag.c:407
+#: builtin/tag.c:423
 msgid "Tag listing options"
 msgstr ""
 
-#: builtin/tag.c:408
+#: builtin/tag.c:424
 msgid "show tag list in columns"
 msgstr ""
 
-#: builtin/tag.c:409 builtin/tag.c:411
+#: builtin/tag.c:425 builtin/tag.c:427
 msgid "print only tags that contain the commit"
 msgstr ""
 
-#: builtin/tag.c:410 builtin/tag.c:412
+#: builtin/tag.c:426 builtin/tag.c:428
 msgid "print only tags that don't contain the commit"
 msgstr ""
 
-#: builtin/tag.c:413
+#: builtin/tag.c:429
 msgid "print only tags that are merged"
 msgstr ""
 
-#: builtin/tag.c:414
+#: builtin/tag.c:430
 msgid "print only tags that are not merged"
 msgstr ""
 
-#: builtin/tag.c:419
+#: builtin/tag.c:434
 msgid "print only tags of the object"
 msgstr ""
 
-#: builtin/tag.c:463
+#: builtin/tag.c:482
 msgid "--column and -n are incompatible"
 msgstr ""
 
-#: builtin/tag.c:485
+#: builtin/tag.c:504
 msgid "-n option is only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:487
+#: builtin/tag.c:506
 msgid "--contains option is only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:489
+#: builtin/tag.c:508
 msgid "--no-contains option is only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:491
+#: builtin/tag.c:510
 msgid "--points-at option is only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:493
+#: builtin/tag.c:512
 msgid "--merged and --no-merged options are only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:504
+#: builtin/tag.c:523
 msgid "only one -F or -m option is allowed."
 msgstr ""
 
-#: builtin/tag.c:523
+#: builtin/tag.c:542
 msgid "too many params"
 msgstr ""
 
-#: builtin/tag.c:529
+#: builtin/tag.c:548
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr ""
 
-#: builtin/tag.c:534
+#: builtin/tag.c:553
 #, c-format
 msgid "tag '%s' already exists"
 msgstr ""
 
-#: builtin/tag.c:565
+#: builtin/tag.c:584
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr ""
@@ -16653,242 +18975,242 @@ msgstr ""
 msgid "Unpacking objects"
 msgstr ""
 
-#: builtin/update-index.c:82
+#: builtin/update-index.c:83
 #, c-format
 msgid "failed to create directory %s"
 msgstr ""
 
-#: builtin/update-index.c:98
+#: builtin/update-index.c:99
 #, c-format
 msgid "failed to create file %s"
 msgstr ""
 
-#: builtin/update-index.c:106
+#: builtin/update-index.c:107
 #, c-format
 msgid "failed to delete file %s"
 msgstr ""
 
-#: builtin/update-index.c:113 builtin/update-index.c:219
+#: builtin/update-index.c:114 builtin/update-index.c:220
 #, c-format
 msgid "failed to delete directory %s"
 msgstr ""
 
-#: builtin/update-index.c:138
+#: builtin/update-index.c:139
 #, c-format
 msgid "Testing mtime in '%s' "
 msgstr ""
 
-#: builtin/update-index.c:152
+#: builtin/update-index.c:153
 msgid "directory stat info does not change after adding a new file"
 msgstr ""
 
-#: builtin/update-index.c:165
+#: builtin/update-index.c:166
 msgid "directory stat info does not change after adding a new directory"
 msgstr ""
 
-#: builtin/update-index.c:178
+#: builtin/update-index.c:179
 msgid "directory stat info changes after updating a file"
 msgstr ""
 
-#: builtin/update-index.c:189
+#: builtin/update-index.c:190
 msgid "directory stat info changes after adding a file inside subdirectory"
 msgstr ""
 
-#: builtin/update-index.c:200
+#: builtin/update-index.c:201
 msgid "directory stat info does not change after deleting a file"
 msgstr ""
 
-#: builtin/update-index.c:213
+#: builtin/update-index.c:214
 msgid "directory stat info does not change after deleting a directory"
 msgstr ""
 
-#: builtin/update-index.c:220
+#: builtin/update-index.c:221
 msgid " OK"
 msgstr ""
 
-#: builtin/update-index.c:588
+#: builtin/update-index.c:589
 msgid "git update-index [<options>] [--] [<file>...]"
 msgstr ""
 
-#: builtin/update-index.c:961
+#: builtin/update-index.c:971
 msgid "continue refresh even when index needs update"
 msgstr ""
 
-#: builtin/update-index.c:964
+#: builtin/update-index.c:974
 msgid "refresh: ignore submodules"
 msgstr ""
 
-#: builtin/update-index.c:967
+#: builtin/update-index.c:977
 msgid "do not ignore new files"
 msgstr ""
 
-#: builtin/update-index.c:969
+#: builtin/update-index.c:979
 msgid "let files replace directories and vice-versa"
 msgstr ""
 
-#: builtin/update-index.c:971
+#: builtin/update-index.c:981
 msgid "notice files missing from worktree"
 msgstr ""
 
-#: builtin/update-index.c:973
+#: builtin/update-index.c:983
 msgid "refresh even if index contains unmerged entries"
 msgstr ""
 
-#: builtin/update-index.c:976
+#: builtin/update-index.c:986
 msgid "refresh stat information"
 msgstr ""
 
-#: builtin/update-index.c:980
+#: builtin/update-index.c:990
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr ""
 
-#: builtin/update-index.c:984
+#: builtin/update-index.c:994
 msgid "<mode>,<object>,<path>"
 msgstr ""
 
-#: builtin/update-index.c:985
+#: builtin/update-index.c:995
 msgid "add the specified entry to the index"
 msgstr ""
 
-#: builtin/update-index.c:994
+#: builtin/update-index.c:1005
 msgid "mark files as \"not changing\""
 msgstr ""
 
-#: builtin/update-index.c:997
+#: builtin/update-index.c:1008
 msgid "clear assumed-unchanged bit"
 msgstr ""
 
-#: builtin/update-index.c:1000
+#: builtin/update-index.c:1011
 msgid "mark files as \"index-only\""
 msgstr ""
 
-#: builtin/update-index.c:1003
+#: builtin/update-index.c:1014
 msgid "clear skip-worktree bit"
 msgstr ""
 
-#: builtin/update-index.c:1006
+#: builtin/update-index.c:1017
 msgid "add to index only; do not add content to object database"
 msgstr ""
 
-#: builtin/update-index.c:1008
+#: builtin/update-index.c:1019
 msgid "remove named paths even if present in worktree"
 msgstr ""
 
-#: builtin/update-index.c:1010
+#: builtin/update-index.c:1021
 msgid "with --stdin: input lines are terminated by null bytes"
 msgstr ""
 
-#: builtin/update-index.c:1012
+#: builtin/update-index.c:1023
 msgid "read list of paths to be updated from standard input"
 msgstr ""
 
-#: builtin/update-index.c:1016
+#: builtin/update-index.c:1027
 msgid "add entries from standard input to the index"
 msgstr ""
 
-#: builtin/update-index.c:1020
+#: builtin/update-index.c:1031
 msgid "repopulate stages #2 and #3 for the listed paths"
 msgstr ""
 
-#: builtin/update-index.c:1024
+#: builtin/update-index.c:1035
 msgid "only update entries that differ from HEAD"
 msgstr ""
 
-#: builtin/update-index.c:1028
+#: builtin/update-index.c:1039
 msgid "ignore files missing from worktree"
 msgstr ""
 
-#: builtin/update-index.c:1031
+#: builtin/update-index.c:1042
 msgid "report actions to standard output"
 msgstr ""
 
-#: builtin/update-index.c:1033
+#: builtin/update-index.c:1044
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr ""
 
-#: builtin/update-index.c:1037
+#: builtin/update-index.c:1048
 msgid "write index in this format"
 msgstr ""
 
-#: builtin/update-index.c:1039
+#: builtin/update-index.c:1050
 msgid "enable or disable split index"
 msgstr ""
 
-#: builtin/update-index.c:1041
+#: builtin/update-index.c:1052
 msgid "enable/disable untracked cache"
 msgstr ""
 
-#: builtin/update-index.c:1043
+#: builtin/update-index.c:1054
 msgid "test if the filesystem supports untracked cache"
 msgstr ""
 
-#: builtin/update-index.c:1045
+#: builtin/update-index.c:1056
 msgid "enable untracked cache without testing the filesystem"
 msgstr ""
 
-#: builtin/update-index.c:1047
+#: builtin/update-index.c:1058
 msgid "write out the index even if is not flagged as changed"
 msgstr ""
 
-#: builtin/update-index.c:1049
+#: builtin/update-index.c:1060
 msgid "enable or disable file system monitor"
 msgstr ""
 
-#: builtin/update-index.c:1051
+#: builtin/update-index.c:1062
 msgid "mark files as fsmonitor valid"
 msgstr ""
 
-#: builtin/update-index.c:1054
+#: builtin/update-index.c:1065
 msgid "clear fsmonitor valid bit"
 msgstr ""
 
-#: builtin/update-index.c:1153
+#: builtin/update-index.c:1168
 msgid ""
 "core.splitIndex is set to false; remove or change it, if you really want to "
 "enable split index"
 msgstr ""
 
-#: builtin/update-index.c:1162
+#: builtin/update-index.c:1177
 msgid ""
 "core.splitIndex is set to true; remove or change it, if you really want to "
 "disable split index"
 msgstr ""
 
-#: builtin/update-index.c:1173
+#: builtin/update-index.c:1188
 msgid ""
 "core.untrackedCache is set to true; remove or change it, if you really want "
 "to disable the untracked cache"
 msgstr ""
 
-#: builtin/update-index.c:1177
+#: builtin/update-index.c:1192
 msgid "Untracked cache disabled"
 msgstr ""
 
-#: builtin/update-index.c:1185
+#: builtin/update-index.c:1200
 msgid ""
 "core.untrackedCache is set to false; remove or change it, if you really want "
 "to enable the untracked cache"
 msgstr ""
 
-#: builtin/update-index.c:1189
+#: builtin/update-index.c:1204
 #, c-format
 msgid "Untracked cache enabled for '%s'"
 msgstr ""
 
-#: builtin/update-index.c:1197
+#: builtin/update-index.c:1212
 msgid "core.fsmonitor is unset; set it if you really want to enable fsmonitor"
 msgstr ""
 
-#: builtin/update-index.c:1201
+#: builtin/update-index.c:1216
 msgid "fsmonitor enabled"
 msgstr ""
 
-#: builtin/update-index.c:1204
+#: builtin/update-index.c:1219
 msgid ""
 "core.fsmonitor is set; remove it if you really want to disable fsmonitor"
 msgstr ""
 
-#: builtin/update-index.c:1208
+#: builtin/update-index.c:1223
 msgid "fsmonitor disabled"
 msgstr ""
 
@@ -16932,6 +19254,10 @@ msgstr ""
 msgid "git upload-pack [<options>] <dir>"
 msgstr ""
 
+#: builtin/upload-pack.c:23 t/helper/test-serve-v2.c:17
+msgid "quit after a single request/response exchange"
+msgstr ""
+
 #: builtin/upload-pack.c:25
 msgid "exit immediately after initial ref advertisement"
 msgstr ""
@@ -16944,15 +19270,15 @@ msgstr ""
 msgid "interrupt transfer after <n> seconds of inactivity"
 msgstr ""
 
-#: builtin/verify-commit.c:20
+#: builtin/verify-commit.c:19
 msgid "git verify-commit [-v | --verbose] <commit>..."
 msgstr ""
 
-#: builtin/verify-commit.c:76
+#: builtin/verify-commit.c:68
 msgid "print commit contents"
 msgstr ""
 
-#: builtin/verify-commit.c:77 builtin/verify-tag.c:38
+#: builtin/verify-commit.c:69 builtin/verify-tag.c:37
 msgid "print raw gpg status output"
 msgstr ""
 
@@ -16968,105 +19294,105 @@ msgstr ""
 msgid "show statistics only"
 msgstr ""
 
-#: builtin/verify-tag.c:19
+#: builtin/verify-tag.c:18
 msgid "git verify-tag [-v | --verbose] [--format=<format>] <tag>..."
 msgstr ""
 
-#: builtin/verify-tag.c:37
+#: builtin/verify-tag.c:36
 msgid "print tag contents"
 msgstr ""
 
-#: builtin/worktree.c:17
+#: builtin/worktree.c:18
 msgid "git worktree add [<options>] <path> [<commit-ish>]"
 msgstr ""
 
-#: builtin/worktree.c:18
+#: builtin/worktree.c:19
 msgid "git worktree list [<options>]"
 msgstr ""
 
-#: builtin/worktree.c:19
+#: builtin/worktree.c:20
 msgid "git worktree lock [<options>] <path>"
 msgstr ""
 
-#: builtin/worktree.c:20
+#: builtin/worktree.c:21
 msgid "git worktree move <worktree> <new-path>"
 msgstr ""
 
-#: builtin/worktree.c:21
+#: builtin/worktree.c:22
 msgid "git worktree prune [<options>]"
 msgstr ""
 
-#: builtin/worktree.c:22
+#: builtin/worktree.c:23
 msgid "git worktree remove [<options>] <worktree>"
 msgstr ""
 
-#: builtin/worktree.c:23
+#: builtin/worktree.c:24
 msgid "git worktree unlock <path>"
 msgstr ""
 
-#: builtin/worktree.c:60 builtin/worktree.c:871
+#: builtin/worktree.c:61 builtin/worktree.c:899
 #, c-format
 msgid "failed to delete '%s'"
 msgstr ""
 
-#: builtin/worktree.c:79
+#: builtin/worktree.c:80
 #, c-format
 msgid "Removing worktrees/%s: not a valid directory"
 msgstr ""
 
-#: builtin/worktree.c:85
+#: builtin/worktree.c:86
 #, c-format
 msgid "Removing worktrees/%s: gitdir file does not exist"
 msgstr ""
 
-#: builtin/worktree.c:90 builtin/worktree.c:99
+#: builtin/worktree.c:91 builtin/worktree.c:100
 #, c-format
 msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
 msgstr ""
 
-#: builtin/worktree.c:109
+#: builtin/worktree.c:110
 #, c-format
 msgid ""
 "Removing worktrees/%s: short read (expected %<PRIuMAX> bytes, read "
 "%<PRIuMAX>)"
 msgstr ""
 
-#: builtin/worktree.c:117
+#: builtin/worktree.c:118
 #, c-format
 msgid "Removing worktrees/%s: invalid gitdir file"
 msgstr ""
 
-#: builtin/worktree.c:126
+#: builtin/worktree.c:127
 #, c-format
 msgid "Removing worktrees/%s: gitdir file points to non-existent location"
 msgstr ""
 
-#: builtin/worktree.c:165
+#: builtin/worktree.c:166
 msgid "report pruned working trees"
 msgstr ""
 
-#: builtin/worktree.c:167
+#: builtin/worktree.c:168
 msgid "expire working trees older than <time>"
 msgstr ""
 
-#: builtin/worktree.c:234
+#: builtin/worktree.c:235
 #, c-format
 msgid "'%s' already exists"
 msgstr ""
 
-#: builtin/worktree.c:251
+#: builtin/worktree.c:252
 #, c-format
 msgid "unable to re-add worktree '%s'"
 msgstr ""
 
-#: builtin/worktree.c:256
+#: builtin/worktree.c:257
 #, c-format
 msgid ""
 "'%s' is a missing but locked worktree;\n"
 "use 'add -f -f' to override, or 'unlock' and 'prune' or 'remove' to clear"
 msgstr ""
 
-#: builtin/worktree.c:258
+#: builtin/worktree.c:259
 #, c-format
 msgid ""
 "'%s' is a missing but already registered worktree;\n"
@@ -17078,191 +19404,191 @@ msgstr ""
 msgid "could not create directory of '%s'"
 msgstr ""
 
-#: builtin/worktree.c:428 builtin/worktree.c:434
+#: builtin/worktree.c:440 builtin/worktree.c:446
 #, c-format
 msgid "Preparing worktree (new branch '%s')"
 msgstr ""
 
-#: builtin/worktree.c:430
+#: builtin/worktree.c:442
 #, c-format
 msgid "Preparing worktree (resetting branch '%s'; was at %s)"
 msgstr ""
 
-#: builtin/worktree.c:439
+#: builtin/worktree.c:451
 #, c-format
 msgid "Preparing worktree (checking out '%s')"
 msgstr ""
 
-#: builtin/worktree.c:445
+#: builtin/worktree.c:457
 #, c-format
 msgid "Preparing worktree (detached HEAD %s)"
 msgstr ""
 
-#: builtin/worktree.c:486
+#: builtin/worktree.c:498
 msgid "checkout <branch> even if already checked out in other worktree"
 msgstr ""
 
-#: builtin/worktree.c:489
+#: builtin/worktree.c:501
 msgid "create a new branch"
 msgstr ""
 
-#: builtin/worktree.c:491
+#: builtin/worktree.c:503
 msgid "create or reset a branch"
 msgstr ""
 
-#: builtin/worktree.c:493
+#: builtin/worktree.c:505
 msgid "populate the new working tree"
 msgstr ""
 
-#: builtin/worktree.c:494
+#: builtin/worktree.c:506
 msgid "keep the new working tree locked"
 msgstr ""
 
-#: builtin/worktree.c:497
+#: builtin/worktree.c:509
 msgid "set up tracking mode (see git-branch(1))"
 msgstr ""
 
-#: builtin/worktree.c:500
+#: builtin/worktree.c:512
 msgid "try to match the new branch name with a remote-tracking branch"
 msgstr ""
 
-#: builtin/worktree.c:508
+#: builtin/worktree.c:520
 msgid "-b, -B, and --detach are mutually exclusive"
 msgstr ""
 
-#: builtin/worktree.c:569
+#: builtin/worktree.c:581
 msgid "--[no-]track can only be used if a new branch is created"
 msgstr ""
 
-#: builtin/worktree.c:669
+#: builtin/worktree.c:681
 msgid "reason for locking"
 msgstr ""
 
-#: builtin/worktree.c:681 builtin/worktree.c:714 builtin/worktree.c:772
-#: builtin/worktree.c:899
+#: builtin/worktree.c:693 builtin/worktree.c:726 builtin/worktree.c:800
+#: builtin/worktree.c:927
 #, c-format
 msgid "'%s' is not a working tree"
 msgstr ""
 
-#: builtin/worktree.c:683 builtin/worktree.c:716
+#: builtin/worktree.c:695 builtin/worktree.c:728
 msgid "The main working tree cannot be locked or unlocked"
 msgstr ""
 
-#: builtin/worktree.c:688
+#: builtin/worktree.c:700
 #, c-format
 msgid "'%s' is already locked, reason: %s"
 msgstr ""
 
-#: builtin/worktree.c:690
+#: builtin/worktree.c:702
 #, c-format
 msgid "'%s' is already locked"
 msgstr ""
 
-#: builtin/worktree.c:718
+#: builtin/worktree.c:730
 #, c-format
 msgid "'%s' is not locked"
 msgstr ""
 
-#: builtin/worktree.c:743
+#: builtin/worktree.c:771
 msgid "working trees containing submodules cannot be moved or removed"
 msgstr ""
 
-#: builtin/worktree.c:751
+#: builtin/worktree.c:779
 msgid "force move even if worktree is dirty or locked"
 msgstr ""
 
-#: builtin/worktree.c:774 builtin/worktree.c:901
+#: builtin/worktree.c:802 builtin/worktree.c:929
 #, c-format
 msgid "'%s' is a main working tree"
 msgstr ""
 
-#: builtin/worktree.c:779
+#: builtin/worktree.c:807
 #, c-format
 msgid "could not figure out destination name from '%s'"
 msgstr ""
 
-#: builtin/worktree.c:785
+#: builtin/worktree.c:813
 #, c-format
 msgid "target '%s' already exists"
 msgstr ""
 
-#: builtin/worktree.c:793
+#: builtin/worktree.c:821
 #, c-format
 msgid ""
 "cannot move a locked working tree, lock reason: %s\n"
 "use 'move -f -f' to override or unlock first"
 msgstr ""
 
-#: builtin/worktree.c:795
+#: builtin/worktree.c:823
 msgid ""
 "cannot move a locked working tree;\n"
 "use 'move -f -f' to override or unlock first"
 msgstr ""
 
-#: builtin/worktree.c:798
+#: builtin/worktree.c:826
 #, c-format
 msgid "validation failed, cannot move working tree: %s"
 msgstr ""
 
-#: builtin/worktree.c:803
+#: builtin/worktree.c:831
 #, c-format
 msgid "failed to move '%s' to '%s'"
 msgstr ""
 
-#: builtin/worktree.c:851
+#: builtin/worktree.c:879
 #, c-format
 msgid "failed to run 'git status' on '%s'"
 msgstr ""
 
-#: builtin/worktree.c:855
+#: builtin/worktree.c:883
 #, c-format
 msgid "'%s' is dirty, use --force to delete it"
 msgstr ""
 
-#: builtin/worktree.c:860
+#: builtin/worktree.c:888
 #, c-format
 msgid "failed to run 'git status' on '%s', code %d"
 msgstr ""
 
-#: builtin/worktree.c:883
+#: builtin/worktree.c:911
 msgid "force removal even if worktree is dirty or locked"
 msgstr ""
 
-#: builtin/worktree.c:906
+#: builtin/worktree.c:934
 #, c-format
 msgid ""
 "cannot remove a locked working tree, lock reason: %s\n"
 "use 'remove -f -f' to override or unlock first"
 msgstr ""
 
-#: builtin/worktree.c:908
+#: builtin/worktree.c:936
 msgid ""
 "cannot remove a locked working tree;\n"
 "use 'remove -f -f' to override or unlock first"
 msgstr ""
 
-#: builtin/worktree.c:911
+#: builtin/worktree.c:939
 #, c-format
 msgid "validation failed, cannot remove working tree: %s"
 msgstr ""
 
-#: builtin/write-tree.c:14
+#: builtin/write-tree.c:15
 msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
 msgstr ""
 
-#: builtin/write-tree.c:27
+#: builtin/write-tree.c:28
 msgid "<prefix>/"
 msgstr ""
 
-#: builtin/write-tree.c:28
+#: builtin/write-tree.c:29
 msgid "write tree object for a subdirectory <prefix>"
 msgstr ""
 
-#: builtin/write-tree.c:30
+#: builtin/write-tree.c:31
 msgid "only useful for debugging"
 msgstr ""
 
-#: credential-cache--daemon.c:222
+#: credential-cache--daemon.c:223
 #, c-format
 msgid ""
 "The permissions on your socket directory are too loose; other\n"
@@ -17271,7 +19597,7 @@ msgid ""
 "\tchmod 0700 %s"
 msgstr ""
 
-#: credential-cache--daemon.c:271
+#: credential-cache--daemon.c:272
 msgid "print debugging messages to stderr"
 msgstr ""
 
@@ -17284,6 +19610,14 @@ msgstr ""
 msgid "too many commits marked reachable"
 msgstr ""
 
+#: t/helper/test-serve-v2.c:7
+msgid "test-tool serve-v2 [<options>]"
+msgstr ""
+
+#: t/helper/test-serve-v2.c:19
+msgid "exit immediately after advertising capabilities"
+msgstr ""
+
 #: git.c:27
 msgid ""
 "git [--version] [--help] [-C <path>] [-c <name>=<value>]\n"
@@ -17298,96 +19632,143 @@ msgstr ""
 msgid ""
 "'git help -a' and 'git help -g' list available subcommands and some\n"
 "concept guides. See 'git help <command>' or 'git help <concept>'\n"
-"to read about a specific subcommand or concept."
+"to read about a specific subcommand or concept.\n"
+"See 'git help git' for an overview of the system."
 msgstr ""
 
-#: git.c:173
+#: git.c:186
 #, c-format
 msgid "no directory given for --git-dir\n"
 msgstr ""
 
-#: git.c:187
+#: git.c:200
 #, c-format
 msgid "no namespace given for --namespace\n"
 msgstr ""
 
-#: git.c:201
+#: git.c:214
 #, c-format
 msgid "no directory given for --work-tree\n"
 msgstr ""
 
-#: git.c:215
+#: git.c:228
 #, c-format
 msgid "no prefix given for --super-prefix\n"
 msgstr ""
 
-#: git.c:237
+#: git.c:250
 #, c-format
 msgid "-c expects a configuration string\n"
 msgstr ""
 
-#: git.c:275
+#: git.c:288
 #, c-format
 msgid "no directory given for -C\n"
 msgstr ""
 
-#: git.c:300
+#: git.c:314
 #, c-format
 msgid "unknown option: %s\n"
 msgstr ""
 
-#: git.c:719
+#: git.c:360
+#, c-format
+msgid "while expanding alias '%s': '%s'"
+msgstr ""
+
+#: git.c:369
+#, c-format
+msgid ""
+"alias '%s' changes environment variables.\n"
+"You can use '!git' in the alias to do this"
+msgstr ""
+
+#: git.c:377
+#, c-format
+msgid "empty alias for %s"
+msgstr ""
+
+#: git.c:380
+#, c-format
+msgid "recursive alias: %s"
+msgstr ""
+
+#: git.c:460
+msgid "write failure on standard output"
+msgstr ""
+
+#: git.c:462
+msgid "unknown write failure on standard output"
+msgstr ""
+
+#: git.c:464
+msgid "close failed on standard output"
+msgstr ""
+
+#: git.c:793
 #, c-format
 msgid "alias loop detected: expansion of '%s' does not terminate:%s"
 msgstr ""
 
-#: git.c:802
+#: git.c:843
+#, c-format
+msgid "cannot handle %s as a builtin"
+msgstr ""
+
+#: git.c:856
+#, c-format
+msgid ""
+"usage: %s\n"
+"\n"
+msgstr ""
+
+#: git.c:876
 #, c-format
 msgid "expansion of alias '%s' failed; '%s' is not a git command\n"
 msgstr ""
 
-#: git.c:814
+#: git.c:888
 #, c-format
 msgid "failed to run command '%s': %s\n"
 msgstr ""
 
-#: http.c:374
+#: http.c:378
 #, c-format
 msgid "negative value for http.postbuffer; defaulting to %d"
 msgstr ""
 
-#: http.c:395
+#: http.c:399
 msgid "Delegation control is not supported with cURL < 7.22.0"
 msgstr ""
 
-#: http.c:404
+#: http.c:408
 msgid "Public key pinning not supported with cURL < 7.44.0"
 msgstr ""
 
-#: http.c:837
-msgid "CURLSSLOPT_NO_REVOKE not suported with cURL < 7.44.0"
+#: http.c:876
+msgid "CURLSSLOPT_NO_REVOKE not supported with cURL < 7.44.0"
 msgstr ""
 
-#: http.c:910
+#: http.c:949
 msgid "Protocol restrictions not supported with cURL < 7.19.4"
 msgstr ""
 
-#: http.c:1046
+#: http.c:1085
 #, c-format
 msgid "Unsupported SSL backend '%s'. Supported SSL backends:"
 msgstr ""
 
-#: http.c:1053
+#: http.c:1092
 #, c-format
 msgid "Could not set SSL backend to '%s': cURL was built without SSL backends"
 msgstr ""
 
-#: http.c:1057
+#: http.c:1096
 #, c-format
 msgid "Could not set SSL backend to '%s': already set"
 msgstr ""
 
-#: http.c:1921
+#: http.c:1965
 #, c-format
 msgid ""
 "unable to update url base from redirection:\n"
@@ -17395,39 +19776,167 @@ msgid ""
 "   redirect: %s"
 msgstr ""
 
-#: remote-curl.c:401
+#: remote-curl.c:157
+#, c-format
+msgid "invalid quoting in push-option value: '%s'"
+msgstr ""
+
+#: remote-curl.c:254
+#, c-format
+msgid "%sinfo/refs not valid: is this a git repository?"
+msgstr ""
+
+#: remote-curl.c:355
+msgid "invalid server response; expected service, got flush packet"
+msgstr ""
+
+#: remote-curl.c:386
+#, c-format
+msgid "invalid server response; got '%s'"
+msgstr ""
+
+#: remote-curl.c:446
+#, c-format
+msgid "repository '%s' not found"
+msgstr ""
+
+#: remote-curl.c:450
+#, c-format
+msgid "Authentication failed for '%s'"
+msgstr ""
+
+#: remote-curl.c:454
+#, c-format
+msgid "unable to access '%s': %s"
+msgstr ""
+
+#: remote-curl.c:460
 #, c-format
 msgid "redirecting to %s"
 msgstr ""
 
-#: list-objects-filter-options.h:60
-msgid "args"
+#: remote-curl.c:584
+msgid "shouldn't have EOF when not gentle on EOF"
+msgstr ""
+
+#: remote-curl.c:664
+msgid "unable to rewind rpc post data - try increasing http.postBuffer"
+msgstr ""
+
+#: remote-curl.c:724
+#, c-format
+msgid "RPC failed; %s"
+msgstr ""
+
+#: remote-curl.c:764
+msgid "cannot handle pushes this big"
+msgstr ""
+
+#: remote-curl.c:879
+#, c-format
+msgid "cannot deflate request; zlib deflate error %d"
+msgstr ""
+
+#: remote-curl.c:883
+#, c-format
+msgid "cannot deflate request; zlib end error %d"
+msgstr ""
+
+#: remote-curl.c:1014
+msgid "dumb http transport does not support shallow capabilities"
+msgstr ""
+
+#: remote-curl.c:1028
+msgid "fetch failed."
+msgstr ""
+
+#: remote-curl.c:1076
+msgid "cannot fetch by sha1 over smart http"
+msgstr ""
+
+#: remote-curl.c:1120 remote-curl.c:1126
+#, c-format
+msgid "protocol error: expected sha/ref, got '%s'"
+msgstr ""
+
+#: remote-curl.c:1138 remote-curl.c:1252
+#, c-format
+msgid "http transport does not support %s"
+msgstr ""
+
+#: remote-curl.c:1174
+msgid "git-http-push failed"
+msgstr ""
+
+#: remote-curl.c:1360
+msgid "remote-curl: usage: git remote-curl <remote> [<url>]"
+msgstr ""
+
+#: remote-curl.c:1392
+msgid "remote-curl: error reading command stream from git"
+msgstr ""
+
+#: remote-curl.c:1399
+msgid "remote-curl: fetch attempted without a local repo"
+msgstr ""
+
+#: remote-curl.c:1439
+#, c-format
+msgid "remote-curl: unknown command '%s' from git"
 msgstr ""
 
 #: list-objects-filter-options.h:61
+msgid "args"
+msgstr ""
+
+#: list-objects-filter-options.h:62
 msgid "object filtering"
 msgstr ""
 
-#: parse-options.h:154
+#: parse-options.h:170
 msgid "expiry-date"
 msgstr ""
 
-#: parse-options.h:169
+#: parse-options.h:184
 msgid "no-op (backward compatibility)"
 msgstr ""
 
-#: parse-options.h:261
+#: parse-options.h:305
 msgid "be more verbose"
 msgstr ""
 
-#: parse-options.h:263
+#: parse-options.h:307
 msgid "be more quiet"
 msgstr ""
 
-#: parse-options.h:269
+#: parse-options.h:313
 msgid "use <n> digits to display SHA-1s"
 msgstr ""
 
+#: parse-options.h:332
+msgid "how to strip spaces and #comments from message"
+msgstr ""
+
+#: ref-filter.h:101
+msgid "key"
+msgstr ""
+
+#: ref-filter.h:101
+msgid "field name to sort on"
+msgstr ""
+
+#: rerere.h:44
+msgid "update the index with reused conflict resolution if possible"
+msgstr ""
+
+#: wt-status.h:67
+msgid "HEAD detached at "
+msgstr ""
+
+#: wt-status.h:68
+msgid "HEAD detached from "
+msgstr ""
+
 #: command-list.h:50
 msgid "Add file contents to the index"
 msgstr ""
@@ -17681,7 +20190,7 @@ msgid "Instantly browse your working repository in gitweb"
 msgstr ""
 
 #: command-list.h:113
-msgid "add or parse structured information in commit messages"
+msgid "Add or parse structured information in commit messages"
 msgstr ""
 
 #: command-list.h:114
@@ -17853,221 +20362,225 @@ msgid "Reset current HEAD to the specified state"
 msgstr ""
 
 #: command-list.h:156
-msgid "Revert some existing commits"
+msgid "Restore working tree files"
 msgstr ""
 
 #: command-list.h:157
-msgid "Lists commit objects in reverse chronological order"
+msgid "Revert some existing commits"
 msgstr ""
 
 #: command-list.h:158
-msgid "Pick out and massage parameters"
+msgid "Lists commit objects in reverse chronological order"
 msgstr ""
 
 #: command-list.h:159
-msgid "Remove files from the working tree and from the index"
+msgid "Pick out and massage parameters"
 msgstr ""
 
 #: command-list.h:160
-msgid "Send a collection of patches as emails"
+msgid "Remove files from the working tree and from the index"
 msgstr ""
 
 #: command-list.h:161
-msgid "Push objects over Git protocol to another repository"
+msgid "Send a collection of patches as emails"
 msgstr ""
 
 #: command-list.h:162
-msgid "Restricted login shell for Git-only SSH access"
+msgid "Push objects over Git protocol to another repository"
 msgstr ""
 
 #: command-list.h:163
-msgid "Summarize 'git log' output"
+msgid "Restricted login shell for Git-only SSH access"
 msgstr ""
 
 #: command-list.h:164
-msgid "Show various types of objects"
+msgid "Summarize 'git log' output"
 msgstr ""
 
 #: command-list.h:165
-msgid "Show branches and their commits"
+msgid "Show various types of objects"
 msgstr ""
 
 #: command-list.h:166
-msgid "Show packed archive index"
+msgid "Show branches and their commits"
 msgstr ""
 
 #: command-list.h:167
-msgid "List references in a local repository"
+msgid "Show packed archive index"
 msgstr ""
 
 #: command-list.h:168
-msgid "Git's i18n setup code for shell scripts"
+msgid "List references in a local repository"
 msgstr ""
 
 #: command-list.h:169
-msgid "Common Git shell script setup code"
+msgid "Git's i18n setup code for shell scripts"
 msgstr ""
 
 #: command-list.h:170
-msgid "Stash the changes in a dirty working directory away"
+msgid "Common Git shell script setup code"
 msgstr ""
 
 #: command-list.h:171
-msgid "Add file contents to the staging area"
+msgid "Stash the changes in a dirty working directory away"
 msgstr ""
 
 #: command-list.h:172
-msgid "Show the working tree status"
+msgid "Add file contents to the staging area"
 msgstr ""
 
 #: command-list.h:173
-msgid "Remove unnecessary whitespace"
+msgid "Show the working tree status"
 msgstr ""
 
 #: command-list.h:174
-msgid "Initialize, update or inspect submodules"
+msgid "Remove unnecessary whitespace"
 msgstr ""
 
 #: command-list.h:175
-msgid "Bidirectional operation between a Subversion repository and Git"
+msgid "Initialize, update or inspect submodules"
 msgstr ""
 
 #: command-list.h:176
-msgid "Read, modify and delete symbolic refs"
+msgid "Bidirectional operation between a Subversion repository and Git"
 msgstr ""
 
 #: command-list.h:177
-msgid "Create, list, delete or verify a tag object signed with GPG"
+msgid "Switch branches"
 msgstr ""
 
 #: command-list.h:178
-msgid "Creates a temporary file with a blob's contents"
+msgid "Read, modify and delete symbolic refs"
 msgstr ""
 
 #: command-list.h:179
-msgid "Unpack objects from a packed archive"
+msgid "Create, list, delete or verify a tag object signed with GPG"
 msgstr ""
 
 #: command-list.h:180
-msgid "Register file contents in the working tree to the index"
+msgid "Creates a temporary file with a blob's contents"
 msgstr ""
 
 #: command-list.h:181
-msgid "Update the object name stored in a ref safely"
+msgid "Unpack objects from a packed archive"
 msgstr ""
 
 #: command-list.h:182
-msgid "Update auxiliary info file to help dumb servers"
+msgid "Register file contents in the working tree to the index"
 msgstr ""
 
 #: command-list.h:183
+msgid "Update the object name stored in a ref safely"
+msgstr ""
+
+#: command-list.h:184
+msgid "Update auxiliary info file to help dumb servers"
+msgstr ""
+
+#: command-list.h:185
 msgid "Send archive back to git-archive"
 msgstr ""
 
-#: command-list.h:184
+#: command-list.h:186
 msgid "Send objects packed back to git-fetch-pack"
 msgstr ""
 
-#: command-list.h:185
+#: command-list.h:187
 msgid "Show a Git logical variable"
 msgstr ""
 
-#: command-list.h:186
+#: command-list.h:188
 msgid "Check the GPG signature of commits"
 msgstr ""
 
-#: command-list.h:187
+#: command-list.h:189
 msgid "Validate packed Git archive files"
 msgstr ""
 
-#: command-list.h:188
+#: command-list.h:190
 msgid "Check the GPG signature of tags"
 msgstr ""
 
-#: command-list.h:189
+#: command-list.h:191
 msgid "Git web interface (web frontend to Git repositories)"
 msgstr ""
 
-#: command-list.h:190
+#: command-list.h:192
 msgid "Show logs with difference each commit introduces"
 msgstr ""
 
-#: command-list.h:191
+#: command-list.h:193
 msgid "Manage multiple working trees"
 msgstr ""
 
-#: command-list.h:192
+#: command-list.h:194
 msgid "Create a tree object from the current index"
 msgstr ""
 
-#: command-list.h:193
+#: command-list.h:195
 msgid "Defining attributes per path"
 msgstr ""
 
-#: command-list.h:194
+#: command-list.h:196
 msgid "Git command-line interface and conventions"
 msgstr ""
 
-#: command-list.h:195
+#: command-list.h:197
 msgid "A Git core tutorial for developers"
 msgstr ""
 
-#: command-list.h:196
+#: command-list.h:198
 msgid "Git for CVS users"
 msgstr ""
 
-#: command-list.h:197
+#: command-list.h:199
 msgid "Tweaking diff output"
 msgstr ""
 
-#: command-list.h:198
+#: command-list.h:200
 msgid "A useful minimum set of commands for Everyday Git"
 msgstr ""
 
-#: command-list.h:199
+#: command-list.h:201
 msgid "A Git Glossary"
 msgstr ""
 
-#: command-list.h:200
+#: command-list.h:202
 msgid "Hooks used by Git"
 msgstr ""
 
-#: command-list.h:201
+#: command-list.h:203
 msgid "Specifies intentionally untracked files to ignore"
 msgstr ""
 
-#: command-list.h:202
+#: command-list.h:204
 msgid "Defining submodule properties"
 msgstr ""
 
-#: command-list.h:203
+#: command-list.h:205
 msgid "Git namespaces"
 msgstr ""
 
-#: command-list.h:204
+#: command-list.h:206
 msgid "Git Repository Layout"
 msgstr ""
 
-#: command-list.h:205
+#: command-list.h:207
 msgid "Specifying revisions and ranges for Git"
 msgstr ""
 
-#: command-list.h:206
+#: command-list.h:208
 msgid "A tutorial introduction to Git: part two"
 msgstr ""
 
-#: command-list.h:207
+#: command-list.h:209
 msgid "A tutorial introduction to Git"
 msgstr ""
 
-#: command-list.h:208
+#: command-list.h:210
 msgid "An overview of recommended workflows with Git"
 msgstr ""
 
-#: rerere.h:44
-msgid "update the index with reused conflict resolution if possible"
-msgstr ""
-
 #: git-bisect.sh:54
 msgid "You need to start by \"git bisect start\""
 msgstr ""
@@ -18079,160 +20592,72 @@ msgstr ""
 msgid "Do you want me to do it for you [Y/n]? "
 msgstr ""
 
-#: git-bisect.sh:121
-#, sh-format
-msgid "unrecognised option: '$arg'"
-msgstr ""
-
-#: git-bisect.sh:125
-#, sh-format
-msgid "'$arg' does not appear to be a valid revision"
-msgstr ""
-
-#: git-bisect.sh:154
-msgid "Bad HEAD - I need a HEAD"
-msgstr ""
-
-#: git-bisect.sh:167
-#, sh-format
-msgid ""
-"Checking out '$start_head' failed. Try 'git bisect reset <valid-branch>'."
-msgstr ""
-
-#: git-bisect.sh:177
-msgid "won't bisect on cg-seek'ed tree"
-msgstr ""
-
-#: git-bisect.sh:181
-msgid "Bad HEAD - strange symbolic ref"
-msgstr ""
-
-#: git-bisect.sh:233
-#, sh-format
-msgid "Bad bisect_write argument: $state"
-msgstr ""
-
-#: git-bisect.sh:246
+#: git-bisect.sh:101
 #, sh-format
 msgid "Bad rev input: $arg"
 msgstr ""
 
-#: git-bisect.sh:265
+#: git-bisect.sh:121
 #, sh-format
 msgid "Bad rev input: $bisected_head"
 msgstr ""
 
-#: git-bisect.sh:274
+#: git-bisect.sh:130
 #, sh-format
 msgid "Bad rev input: $rev"
 msgstr ""
 
-#: git-bisect.sh:283
+#: git-bisect.sh:139
 #, sh-format
 msgid "'git bisect $TERM_BAD' can take only one argument."
 msgstr ""
 
-#: git-bisect.sh:306
-#, sh-format
-msgid "Warning: bisecting only with a $TERM_BAD commit."
-msgstr ""
-
-#. TRANSLATORS: Make sure to include [Y] and [n] in your
-#. translation. The program will only accept English input
-#. at this point.
-#: git-bisect.sh:312
-msgid "Are you sure [Y/n]? "
-msgstr ""
-
-#: git-bisect.sh:324
-#, sh-format
-msgid ""
-"You need to give me at least one $bad_syn and one $good_syn revision.\n"
-"(You can use \"git bisect $bad_syn\" and \"git bisect $good_syn\" for that.)"
-msgstr ""
-
-#: git-bisect.sh:327
-#, sh-format
-msgid ""
-"You need to start by \"git bisect start\".\n"
-"You then need to give me at least one $good_syn and one $bad_syn revision.\n"
-"(You can use \"git bisect $bad_syn\" and \"git bisect $good_syn\" for that.)"
-msgstr ""
-
-#: git-bisect.sh:398 git-bisect.sh:512
-msgid "We are not bisecting."
-msgstr ""
-
-#: git-bisect.sh:405
-#, sh-format
-msgid "'$invalid' is not a valid commit"
-msgstr ""
-
-#: git-bisect.sh:414
-#, sh-format
-msgid ""
-"Could not check out original HEAD '$branch'.\n"
-"Try 'git bisect reset <commit>'."
-msgstr ""
-
-#: git-bisect.sh:422
+#: git-bisect.sh:209
 msgid "No logfile given"
 msgstr ""
 
-#: git-bisect.sh:423
+#: git-bisect.sh:210
 #, sh-format
 msgid "cannot read $file for replaying"
 msgstr ""
 
-#: git-bisect.sh:444
+#: git-bisect.sh:232
 msgid "?? what are you talking about?"
 msgstr ""
 
-#: git-bisect.sh:453
+#: git-bisect.sh:241
 msgid "bisect run failed: no command provided."
 msgstr ""
 
-#: git-bisect.sh:458
+#: git-bisect.sh:246
 #, sh-format
 msgid "running $command"
 msgstr ""
 
-#: git-bisect.sh:465
+#: git-bisect.sh:253
 #, sh-format
 msgid ""
 "bisect run failed:\n"
 "exit code $res from '$command' is < 0 or >= 128"
 msgstr ""
 
-#: git-bisect.sh:491
+#: git-bisect.sh:279
 msgid "bisect run cannot continue any more"
 msgstr ""
 
-#: git-bisect.sh:497
+#: git-bisect.sh:285
 #, sh-format
 msgid ""
 "bisect run failed:\n"
 "'bisect_state $state' exited with error code $res"
 msgstr ""
 
-#: git-bisect.sh:504
+#: git-bisect.sh:292
 msgid "bisect run success"
 msgstr ""
 
-#: git-bisect.sh:533
-#, sh-format
-msgid "Invalid command: you're currently in a $TERM_BAD/$TERM_GOOD bisect."
-msgstr ""
-
-#: git-bisect.sh:567
-msgid "no terms defined"
-msgstr ""
-
-#: git-bisect.sh:584
-#, sh-format
-msgid ""
-"invalid argument $arg for 'git bisect terms'.\n"
-"Supported options are: --term-good|--term-old and --term-bad|--term-new."
+#: git-bisect.sh:300
+msgid "We are not bisecting."
 msgstr ""
 
 #: git-merge-octopus.sh:46
@@ -18273,248 +20698,113 @@ msgstr ""
 msgid "Simple merge did not work, trying automatic merge."
 msgstr ""
 
-#: git-legacy-rebase.sh:426
-#, sh-format
-msgid "Could not move back to $head_name"
-msgstr ""
-
-#: git-legacy-rebase.sh:452
-#, sh-format
-msgid ""
-"It seems that there is already a $state_dir_base directory, and\n"
-"I wonder if you are in the middle of another rebase.  If that is the\n"
-"case, please try\n"
-"\t$cmd_live_rebase\n"
-"If that is not the case, please\n"
-"\t$cmd_clear_stale_rebase\n"
-"and run me again.  I am stopping in case you still have something\n"
-"valuable there."
-msgstr ""
-
-#: git-legacy-rebase.sh:517
-msgid "error: cannot combine '--signoff' with '--preserve-merges'"
-msgstr ""
-
-#: git-legacy-rebase.sh:562
-#, sh-format
-msgid "invalid upstream '$upstream_name'"
-msgstr ""
-
-#: git-legacy-rebase.sh:586
-#, sh-format
-msgid "$onto_name: there are more than one merge bases"
-msgstr ""
-
-#: git-legacy-rebase.sh:589 git-legacy-rebase.sh:593
-#, sh-format
-msgid "$onto_name: there is no merge base"
-msgstr ""
-
-#: git-legacy-rebase.sh:598
-#, sh-format
-msgid "Does not point to a valid commit: $onto_name"
-msgstr ""
-
-#: git-legacy-rebase.sh:624
-#, sh-format
-msgid "fatal: no such branch/commit '$branch_name'"
-msgstr ""
-
-#: git-legacy-rebase.sh:662
-#, sh-format
-msgid "Created autostash: $stash_abbrev"
-msgstr ""
-
-#: git-legacy-rebase.sh:691
-#, sh-format
-msgid "Current branch $branch_name is up to date."
-msgstr ""
-
-#: git-legacy-rebase.sh:701
-#, sh-format
-msgid "Current branch $branch_name is up to date, rebase forced."
-msgstr ""
-
-#: git-legacy-rebase.sh:713
-#, sh-format
-msgid "Changes from $mb to $onto:"
-msgstr ""
-
-#: git-legacy-rebase.sh:722
-msgid "First, rewinding head to replay your work on top of it..."
-msgstr ""
-
-#: git-legacy-rebase.sh:732
-#, sh-format
-msgid "Fast-forwarded $branch_name to $onto_name."
-msgstr ""
-
-#: git-stash.sh:61
-msgid "git stash clear with parameters is unimplemented"
-msgstr ""
-
-#: git-stash.sh:108
-msgid "You do not have the initial commit yet"
-msgstr ""
-
-#: git-stash.sh:123
-msgid "Cannot save the current index state"
-msgstr ""
-
-#: git-stash.sh:138
-msgid "Cannot save the untracked files"
-msgstr ""
-
-#: git-stash.sh:158 git-stash.sh:171
-msgid "Cannot save the current worktree state"
-msgstr ""
-
-#: git-stash.sh:175
-msgid "No changes selected"
-msgstr ""
-
-#: git-stash.sh:178
+#: git-legacy-stash.sh:220
 msgid "Cannot remove temporary index (can't happen)"
 msgstr ""
 
-#: git-stash.sh:191
-msgid "Cannot record working tree state"
-msgstr ""
-
-#: git-stash.sh:229
+#: git-legacy-stash.sh:271
 #, sh-format
 msgid "Cannot update $ref_stash with $w_commit"
 msgstr ""
 
-#: git-stash.sh:281
+#: git-legacy-stash.sh:323
 #, sh-format
 msgid "error: unknown option for 'stash push': $option"
 msgstr ""
 
-#: git-stash.sh:295
-msgid "Can't use --patch and --include-untracked or --all at the same time"
-msgstr ""
-
-#: git-stash.sh:303
-msgid "No local changes to save"
-msgstr ""
-
-#: git-stash.sh:308
-msgid "Cannot initialize stash"
-msgstr ""
-
-#: git-stash.sh:312
-msgid "Cannot save the current status"
-msgstr ""
-
-#: git-stash.sh:313
+#: git-legacy-stash.sh:355
 #, sh-format
 msgid "Saved working directory and index state $stash_msg"
 msgstr ""
 
-#: git-stash.sh:342
-msgid "Cannot remove worktree changes"
-msgstr ""
-
-#: git-stash.sh:490
+#: git-legacy-stash.sh:535
 #, sh-format
 msgid "unknown option: $opt"
 msgstr ""
 
-#: git-stash.sh:503
-msgid "No stash entries found."
-msgstr ""
-
-#: git-stash.sh:510
+#: git-legacy-stash.sh:555
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr ""
 
-#: git-stash.sh:525
+#: git-legacy-stash.sh:570
 #, sh-format
 msgid "$reference is not a valid reference"
 msgstr ""
 
-#: git-stash.sh:553
+#: git-legacy-stash.sh:598
 #, sh-format
 msgid "'$args' is not a stash-like commit"
 msgstr ""
 
-#: git-stash.sh:564
+#: git-legacy-stash.sh:609
 #, sh-format
 msgid "'$args' is not a stash reference"
 msgstr ""
 
-#: git-stash.sh:572
+#: git-legacy-stash.sh:617
 msgid "unable to refresh index"
 msgstr ""
 
-#: git-stash.sh:576
+#: git-legacy-stash.sh:621
 msgid "Cannot apply a stash in the middle of a merge"
 msgstr ""
 
-#: git-stash.sh:584
+#: git-legacy-stash.sh:629
 msgid "Conflicts in index. Try without --index."
 msgstr ""
 
-#: git-stash.sh:586
+#: git-legacy-stash.sh:631
 msgid "Could not save index tree"
 msgstr ""
 
-#: git-stash.sh:595
+#: git-legacy-stash.sh:640
 msgid "Could not restore untracked files from stash entry"
 msgstr ""
 
-#: git-stash.sh:620
+#: git-legacy-stash.sh:665
 msgid "Cannot unstage modified files"
 msgstr ""
 
-#: git-stash.sh:635
-msgid "Index was not unstashed."
-msgstr ""
-
-#: git-stash.sh:649
-msgid "The stash entry is kept in case you need it again."
-msgstr ""
-
-#: git-stash.sh:658
+#: git-legacy-stash.sh:703
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr ""
 
-#: git-stash.sh:659
+#: git-legacy-stash.sh:704
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr ""
 
-#: git-stash.sh:667
-msgid "No branch name specified"
-msgstr ""
-
-#: git-stash.sh:746
+#: git-legacy-stash.sh:791
 msgid "(To restore them type \"git stash apply\")"
 msgstr ""
 
-#: git-submodule.sh:198
+#: git-submodule.sh:200
 msgid "Relative path can only be used from the toplevel of the working tree"
 msgstr ""
 
-#: git-submodule.sh:208
+#: git-submodule.sh:210
 #, sh-format
 msgid "repo URL: '$repo' must be absolute or begin with ./|../"
 msgstr ""
 
-#: git-submodule.sh:227
+#: git-submodule.sh:229
 #, sh-format
 msgid "'$sm_path' already exists in the index"
 msgstr ""
 
-#: git-submodule.sh:230
+#: git-submodule.sh:232
 #, sh-format
 msgid "'$sm_path' already exists in the index and is not a submodule"
 msgstr ""
 
-#: git-submodule.sh:236
+#: git-submodule.sh:239
+#, sh-format
+msgid "'$sm_path' does not have a commit checked out"
+msgstr ""
+
+#: git-submodule.sh:245
 #, sh-format
 msgid ""
 "The following path is ignored by one of your .gitignore files:\n"
@@ -18522,22 +20812,22 @@ msgid ""
 "Use -f if you really want to add it."
 msgstr ""
 
-#: git-submodule.sh:259
+#: git-submodule.sh:268
 #, sh-format
 msgid "Adding existing repo at '$sm_path' to the index"
 msgstr ""
 
-#: git-submodule.sh:261
+#: git-submodule.sh:270
 #, sh-format
 msgid "'$sm_path' already exists and is not a valid git repo"
 msgstr ""
 
-#: git-submodule.sh:269
+#: git-submodule.sh:278
 #, sh-format
 msgid "A git directory for '$sm_name' is found locally with remote(s):"
 msgstr ""
 
-#: git-submodule.sh:271
+#: git-submodule.sh:280
 #, sh-format
 msgid ""
 "If you want to reuse this local git directory instead of cloning again from\n"
@@ -18548,120 +20838,122 @@ msgid ""
 "option."
 msgstr ""
 
-#: git-submodule.sh:277
+#: git-submodule.sh:286
 #, sh-format
 msgid "Reactivating local git directory for submodule '$sm_name'."
 msgstr ""
 
-#: git-submodule.sh:289
+#: git-submodule.sh:298
 #, sh-format
 msgid "Unable to checkout submodule '$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:294
+#: git-submodule.sh:303
 #, sh-format
 msgid "Failed to add submodule '$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:303
+#: git-submodule.sh:312
 #, sh-format
 msgid "Failed to register submodule '$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:563
+#: git-submodule.sh:573
 #, sh-format
 msgid "Unable to find current revision in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:573
+#: git-submodule.sh:583
 #, sh-format
 msgid "Unable to fetch in submodule path '$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:578
+#: git-submodule.sh:588
 #, sh-format
 msgid ""
 "Unable to find current ${remote_name}/${branch} revision in submodule path "
 "'$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:596
+#: git-submodule.sh:606
 #, sh-format
-msgid "Unable to fetch in submodule path '$displaypath'"
+msgid ""
+"Unable to fetch in submodule path '$displaypath'; trying to directly fetch "
+"$sha1:"
 msgstr ""
 
-#: git-submodule.sh:602
+#: git-submodule.sh:612
 #, sh-format
 msgid ""
 "Fetched in submodule path '$displaypath', but it did not contain $sha1. "
 "Direct fetching of that commit failed."
 msgstr ""
 
-#: git-submodule.sh:609
+#: git-submodule.sh:619
 #, sh-format
 msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:610
+#: git-submodule.sh:620
 #, sh-format
 msgid "Submodule path '$displaypath': checked out '$sha1'"
 msgstr ""
 
-#: git-submodule.sh:614
+#: git-submodule.sh:624
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:615
+#: git-submodule.sh:625
 #, sh-format
 msgid "Submodule path '$displaypath': rebased into '$sha1'"
 msgstr ""
 
-#: git-submodule.sh:620
+#: git-submodule.sh:630
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:621
+#: git-submodule.sh:631
 #, sh-format
 msgid "Submodule path '$displaypath': merged in '$sha1'"
 msgstr ""
 
-#: git-submodule.sh:626
+#: git-submodule.sh:636
 #, sh-format
 msgid "Execution of '$command $sha1' failed in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:627
+#: git-submodule.sh:637
 #, sh-format
 msgid "Submodule path '$displaypath': '$command $sha1'"
 msgstr ""
 
-#: git-submodule.sh:658
+#: git-submodule.sh:668
 #, sh-format
 msgid "Failed to recurse into submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:754
+#: git-submodule.sh:830
 msgid "The --cached option cannot be used with the --files option"
 msgstr ""
 
-#: git-submodule.sh:806
+#: git-submodule.sh:882
 #, sh-format
 msgid "unexpected mode $mod_dst"
 msgstr ""
 
-#: git-submodule.sh:826
+#: git-submodule.sh:902
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_src"
 msgstr ""
 
-#: git-submodule.sh:829
+#: git-submodule.sh:905
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
 msgstr ""
 
-#: git-submodule.sh:832
+#: git-submodule.sh:908
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
 msgstr ""
@@ -18671,12 +20963,21 @@ msgstr ""
 msgid "See git-${cmd}(1) for details."
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:136
+#: git-rebase--preserve-merges.sh:109
+msgid "Applied autostash."
+msgstr ""
+
+#: git-rebase--preserve-merges.sh:112
+#, sh-format
+msgid "Cannot store $stash_sha1"
+msgstr ""
+
+#: git-rebase--preserve-merges.sh:191
 #, sh-format
 msgid "Rebasing ($new_count/$total)"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:152
+#: git-rebase--preserve-merges.sh:207
 msgid ""
 "\n"
 "Commands:\n"
@@ -18697,7 +20998,7 @@ msgid ""
 "These lines can be re-ordered; they are executed from top to bottom.\n"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:215
+#: git-rebase--preserve-merges.sh:270
 #, sh-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -18709,83 +21010,83 @@ msgid ""
 "\tgit rebase --continue"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:240
+#: git-rebase--preserve-merges.sh:295
 #, sh-format
 msgid "$sha1: not a commit that can be picked"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:279
+#: git-rebase--preserve-merges.sh:334
 #, sh-format
 msgid "Invalid commit name: $sha1"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:309
+#: git-rebase--preserve-merges.sh:364
 msgid "Cannot write current commit's replacement sha1"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:360
+#: git-rebase--preserve-merges.sh:415
 #, sh-format
 msgid "Fast-forward to $sha1"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:362
+#: git-rebase--preserve-merges.sh:417
 #, sh-format
 msgid "Cannot fast-forward to $sha1"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:371
+#: git-rebase--preserve-merges.sh:426
 #, sh-format
 msgid "Cannot move HEAD to $first_parent"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:376
+#: git-rebase--preserve-merges.sh:431
 #, sh-format
 msgid "Refusing to squash a merge: $sha1"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:394
+#: git-rebase--preserve-merges.sh:449
 #, sh-format
 msgid "Error redoing merge $sha1"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:403
+#: git-rebase--preserve-merges.sh:458
 #, sh-format
 msgid "Could not pick $sha1"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:412
+#: git-rebase--preserve-merges.sh:467
 #, sh-format
 msgid "This is the commit message #${n}:"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:417
+#: git-rebase--preserve-merges.sh:472
 #, sh-format
 msgid "The commit message #${n} will be skipped:"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:428
+#: git-rebase--preserve-merges.sh:483
 #, sh-format
 msgid "This is a combination of $count commit."
 msgid_plural "This is a combination of $count commits."
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-rebase--preserve-merges.sh:437
+#: git-rebase--preserve-merges.sh:492
 #, sh-format
 msgid "Cannot write $fixup_msg"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:440
+#: git-rebase--preserve-merges.sh:495
 msgid "This is a combination of 2 commits."
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:481 git-rebase--preserve-merges.sh:524
-#: git-rebase--preserve-merges.sh:527
+#: git-rebase--preserve-merges.sh:536 git-rebase--preserve-merges.sh:579
+#: git-rebase--preserve-merges.sh:582
 #, sh-format
 msgid "Could not apply $sha1... $rest"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:556
+#: git-rebase--preserve-merges.sh:611
 #, sh-format
 msgid ""
 "Could not amend commit after successfully picking $sha1... $rest\n"
@@ -18795,31 +21096,31 @@ msgid ""
 "you are able to reword the commit."
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:571
+#: git-rebase--preserve-merges.sh:626
 #, sh-format
 msgid "Stopped at $sha1_abbrev... $rest"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:586
+#: git-rebase--preserve-merges.sh:641
 #, sh-format
 msgid "Cannot '$squash_style' without a previous commit"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:628
+#: git-rebase--preserve-merges.sh:683
 #, sh-format
 msgid "Executing: $rest"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:636
+#: git-rebase--preserve-merges.sh:691
 #, sh-format
 msgid "Execution failed: $rest"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:638
+#: git-rebase--preserve-merges.sh:693
 msgid "and made changes to the index and/or the working tree"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:640
+#: git-rebase--preserve-merges.sh:695
 msgid ""
 "You can fix the problem, and then run\n"
 "\n"
@@ -18827,7 +21128,7 @@ msgid ""
 msgstr ""
 
 #. TRANSLATORS: after these lines is a command to be issued by the user
-#: git-rebase--preserve-merges.sh:653
+#: git-rebase--preserve-merges.sh:708
 #, sh-format
 msgid ""
 "Execution succeeded: $rest\n"
@@ -18837,25 +21138,25 @@ msgid ""
 "\tgit rebase --continue"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:664
+#: git-rebase--preserve-merges.sh:719
 #, sh-format
 msgid "Unknown command: $command $sha1 $rest"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:665
+#: git-rebase--preserve-merges.sh:720
 msgid "Please fix this using 'git rebase --edit-todo'."
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:700
+#: git-rebase--preserve-merges.sh:755
 #, sh-format
 msgid "Successfully rebased and updated $head_name."
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:757
+#: git-rebase--preserve-merges.sh:812
 msgid "Could not remove CHERRY_PICK_HEAD"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:762
+#: git-rebase--preserve-merges.sh:817
 #, sh-format
 msgid ""
 "You have staged changes in your working tree.\n"
@@ -18873,50 +21174,50 @@ msgid ""
 "  git rebase --continue\n"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:779
+#: git-rebase--preserve-merges.sh:834
 msgid "Error trying to find the author identity to amend commit"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:784
+#: git-rebase--preserve-merges.sh:839
 msgid ""
 "You have uncommitted changes in your working tree. Please commit them\n"
 "first and then run 'git rebase --continue' again."
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:789 git-rebase--preserve-merges.sh:793
+#: git-rebase--preserve-merges.sh:844 git-rebase--preserve-merges.sh:848
 msgid "Could not commit staged changes."
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:824 git-rebase--preserve-merges.sh:910
+#: git-rebase--preserve-merges.sh:879 git-rebase--preserve-merges.sh:965
 msgid "Could not execute editor"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:845
+#: git-rebase--preserve-merges.sh:900
 #, sh-format
 msgid "Could not checkout $switch_to"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:852
+#: git-rebase--preserve-merges.sh:907
 msgid "No HEAD?"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:853
+#: git-rebase--preserve-merges.sh:908
 #, sh-format
 msgid "Could not create temporary $state_dir"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:856
+#: git-rebase--preserve-merges.sh:911
 msgid "Could not mark as interactive"
 msgstr ""
 
-#: git-rebase--preserve-merges.sh:888
+#: git-rebase--preserve-merges.sh:943
 #, sh-format
 msgid "Rebase $shortrevisions onto $shortonto ($todocount command)"
 msgid_plural "Rebase $shortrevisions onto $shortonto ($todocount commands)"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-rebase--preserve-merges.sh:942 git-rebase--preserve-merges.sh:947
+#: git-rebase--preserve-merges.sh:997 git-rebase--preserve-merges.sh:1002
 msgid "Could not init rewritten commits"
 msgstr ""
 
@@ -18925,173 +21226,175 @@ msgstr ""
 msgid "usage: $dashless $USAGE"
 msgstr ""
 
-#: git-sh-setup.sh:190
+#: git-sh-setup.sh:191
 #, sh-format
 msgid "Cannot chdir to $cdup, the toplevel of the working tree"
 msgstr ""
 
-#: git-sh-setup.sh:199 git-sh-setup.sh:206
+#: git-sh-setup.sh:200 git-sh-setup.sh:207
 #, sh-format
 msgid "fatal: $program_name cannot be used without a working tree."
 msgstr ""
 
-#: git-sh-setup.sh:220
+#: git-sh-setup.sh:221
 msgid "Cannot rebase: You have unstaged changes."
 msgstr ""
 
-#: git-sh-setup.sh:223
+#: git-sh-setup.sh:224
 msgid "Cannot rewrite branches: You have unstaged changes."
 msgstr ""
 
-#: git-sh-setup.sh:226
+#: git-sh-setup.sh:227
 msgid "Cannot pull with rebase: You have unstaged changes."
 msgstr ""
 
-#: git-sh-setup.sh:229
+#: git-sh-setup.sh:230
 #, sh-format
 msgid "Cannot $action: You have unstaged changes."
 msgstr ""
 
-#: git-sh-setup.sh:242
+#: git-sh-setup.sh:243
 msgid "Cannot rebase: Your index contains uncommitted changes."
 msgstr ""
 
-#: git-sh-setup.sh:245
+#: git-sh-setup.sh:246
 msgid "Cannot pull with rebase: Your index contains uncommitted changes."
 msgstr ""
 
-#: git-sh-setup.sh:248
+#: git-sh-setup.sh:249
 #, sh-format
 msgid "Cannot $action: Your index contains uncommitted changes."
 msgstr ""
 
-#: git-sh-setup.sh:252
+#: git-sh-setup.sh:253
 msgid "Additionally, your index contains uncommitted changes."
 msgstr ""
 
-#: git-sh-setup.sh:372
+#: git-sh-setup.sh:373
 msgid "You need to run this command from the toplevel of the working tree."
 msgstr ""
 
-#: git-sh-setup.sh:377
+#: git-sh-setup.sh:378
 msgid "Unable to determine absolute path of git directory"
 msgstr ""
 
 #. TRANSLATORS: you can adjust this to align "git add -i" status menu
-#: git-add--interactive.perl:196
+#: git-add--interactive.perl:210
 #, perl-format
 msgid "%12s %12s %s"
 msgstr ""
 
-#: git-add--interactive.perl:197
+#: git-add--interactive.perl:211
 msgid "staged"
 msgstr ""
 
-#: git-add--interactive.perl:197
+#: git-add--interactive.perl:211
 msgid "unstaged"
 msgstr ""
 
-#: git-add--interactive.perl:253 git-add--interactive.perl:278
+#: git-add--interactive.perl:267 git-add--interactive.perl:292
 msgid "binary"
 msgstr ""
 
-#: git-add--interactive.perl:262 git-add--interactive.perl:316
+#: git-add--interactive.perl:276 git-add--interactive.perl:330
 msgid "nothing"
 msgstr ""
 
-#: git-add--interactive.perl:298 git-add--interactive.perl:313
+#: git-add--interactive.perl:312 git-add--interactive.perl:327
 msgid "unchanged"
 msgstr ""
 
-#: git-add--interactive.perl:609
+#: git-add--interactive.perl:623
 #, perl-format
 msgid "added %d path\n"
 msgid_plural "added %d paths\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:612
+#: git-add--interactive.perl:626
 #, perl-format
 msgid "updated %d path\n"
 msgid_plural "updated %d paths\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:615
+#: git-add--interactive.perl:629
 #, perl-format
 msgid "reverted %d path\n"
 msgid_plural "reverted %d paths\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:618
+#: git-add--interactive.perl:632
 #, perl-format
 msgid "touched %d path\n"
 msgid_plural "touched %d paths\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:627
+#: git-add--interactive.perl:641
 msgid "Update"
 msgstr ""
 
-#: git-add--interactive.perl:639
+#: git-add--interactive.perl:653
 msgid "Revert"
 msgstr ""
 
-#: git-add--interactive.perl:662
+#: git-add--interactive.perl:676
 #, perl-format
 msgid "note: %s is untracked now.\n"
 msgstr ""
 
-#: git-add--interactive.perl:673
+#: git-add--interactive.perl:687
 msgid "Add untracked"
 msgstr ""
 
-#: git-add--interactive.perl:679
+#: git-add--interactive.perl:693
 msgid "No untracked files.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1033
+#: git-add--interactive.perl:1051
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for staging."
 msgstr ""
 
-#: git-add--interactive.perl:1036
+#: git-add--interactive.perl:1054
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for stashing."
 msgstr ""
 
-#: git-add--interactive.perl:1039
+#: git-add--interactive.perl:1057
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for unstaging."
 msgstr ""
 
-#: git-add--interactive.perl:1042 git-add--interactive.perl:1051
+#: git-add--interactive.perl:1060 git-add--interactive.perl:1069
+#: git-add--interactive.perl:1075
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for applying."
 msgstr ""
 
-#: git-add--interactive.perl:1045 git-add--interactive.perl:1048
+#: git-add--interactive.perl:1063 git-add--interactive.perl:1066
+#: git-add--interactive.perl:1072
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for discarding."
 msgstr ""
 
-#: git-add--interactive.perl:1085
+#: git-add--interactive.perl:1109
 #, perl-format
 msgid "failed to open hunk edit file for writing: %s"
 msgstr ""
 
-#: git-add--interactive.perl:1086
+#: git-add--interactive.perl:1110
 msgid "Manual hunk edit mode -- see bottom for a quick guide.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1092
+#: git-add--interactive.perl:1116
 #, perl-format
 msgid ""
 "---\n"
@@ -19101,14 +21404,14 @@ msgid ""
 msgstr ""
 
 #. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
-#: git-add--interactive.perl:1100
+#: git-add--interactive.perl:1124
 msgid ""
 "If it does not apply cleanly, you will be given an opportunity to\n"
 "edit again.  If all lines of the hunk are removed, then the edit is\n"
 "aborted and the hunk is left unchanged.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1114
+#: git-add--interactive.perl:1138
 #, perl-format
 msgid "failed to open hunk edit file for reading: %s"
 msgstr ""
@@ -19119,12 +21422,12 @@ msgstr ""
 #. Consider translating (saying "no" discards!) as
 #. (saying "n" for "no" discards!) if the translation
 #. of the word "no" does not start with n.
-#: git-add--interactive.perl:1213
+#: git-add--interactive.perl:1237
 msgid ""
 "Your edited hunk does not apply. Edit again (saying \"no\" discards!) [y/n]? "
 msgstr ""
 
-#: git-add--interactive.perl:1222
+#: git-add--interactive.perl:1246
 msgid ""
 "y - stage this hunk\n"
 "n - do not stage this hunk\n"
@@ -19133,7 +21436,7 @@ msgid ""
 "d - do not stage this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1228
+#: git-add--interactive.perl:1252
 msgid ""
 "y - stash this hunk\n"
 "n - do not stash this hunk\n"
@@ -19142,7 +21445,7 @@ msgid ""
 "d - do not stash this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1234
+#: git-add--interactive.perl:1258
 msgid ""
 "y - unstage this hunk\n"
 "n - do not unstage this hunk\n"
@@ -19151,7 +21454,7 @@ msgid ""
 "d - do not unstage this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1240
+#: git-add--interactive.perl:1264
 msgid ""
 "y - apply this hunk to index\n"
 "n - do not apply this hunk to index\n"
@@ -19160,7 +21463,7 @@ msgid ""
 "d - do not apply this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1246
+#: git-add--interactive.perl:1270 git-add--interactive.perl:1288
 msgid ""
 "y - discard this hunk from worktree\n"
 "n - do not discard this hunk from worktree\n"
@@ -19169,7 +21472,7 @@ msgid ""
 "d - do not discard this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1252
+#: git-add--interactive.perl:1276
 msgid ""
 "y - discard this hunk from index and worktree\n"
 "n - do not discard this hunk from index and worktree\n"
@@ -19178,7 +21481,7 @@ msgid ""
 "d - do not discard this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1258
+#: git-add--interactive.perl:1282
 msgid ""
 "y - apply this hunk to index and worktree\n"
 "n - do not apply this hunk to index and worktree\n"
@@ -19187,7 +21490,16 @@ msgid ""
 "d - do not apply this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1273
+#: git-add--interactive.perl:1294
+msgid ""
+"y - apply this hunk to worktree\n"
+"n - do not apply this hunk to worktree\n"
+"q - quit; do not apply this hunk or any of the remaining ones\n"
+"a - apply this hunk and all later hunks in the file\n"
+"d - do not apply this hunk or any of the later hunks in the file"
+msgstr ""
+
+#: git-add--interactive.perl:1309
 msgid ""
 "g - select a hunk to go to\n"
 "/ - search for a hunk matching the given regex\n"
@@ -19200,211 +21512,226 @@ msgid ""
 "? - print help\n"
 msgstr ""
 
-#: git-add--interactive.perl:1304
+#: git-add--interactive.perl:1340
 msgid "The selected hunks do not apply to the index!\n"
 msgstr ""
 
-#: git-add--interactive.perl:1305
+#: git-add--interactive.perl:1341
 msgid "Apply them to the worktree anyway? "
 msgstr ""
 
-#: git-add--interactive.perl:1308
+#: git-add--interactive.perl:1344
 msgid "Nothing was applied.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1319
+#: git-add--interactive.perl:1355
 #, perl-format
 msgid "ignoring unmerged: %s\n"
 msgstr ""
 
-#: git-add--interactive.perl:1328
+#: git-add--interactive.perl:1364
 msgid "Only binary files changed.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1330
+#: git-add--interactive.perl:1366
 msgid "No changes.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1338
+#: git-add--interactive.perl:1374
 msgid "Patch update"
 msgstr ""
 
-#: git-add--interactive.perl:1390
+#: git-add--interactive.perl:1426
 #, perl-format
 msgid "Stage mode change [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1391
+#: git-add--interactive.perl:1427
 #, perl-format
 msgid "Stage deletion [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1392
+#: git-add--interactive.perl:1428
 #, perl-format
 msgid "Stage this hunk [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1395
+#: git-add--interactive.perl:1431
 #, perl-format
 msgid "Stash mode change [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1396
+#: git-add--interactive.perl:1432
 #, perl-format
 msgid "Stash deletion [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1397
+#: git-add--interactive.perl:1433
 #, perl-format
 msgid "Stash this hunk [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1400
+#: git-add--interactive.perl:1436
 #, perl-format
 msgid "Unstage mode change [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1401
+#: git-add--interactive.perl:1437
 #, perl-format
 msgid "Unstage deletion [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1402
+#: git-add--interactive.perl:1438
 #, perl-format
 msgid "Unstage this hunk [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1405
+#: git-add--interactive.perl:1441
 #, perl-format
 msgid "Apply mode change to index [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1406
+#: git-add--interactive.perl:1442
 #, perl-format
 msgid "Apply deletion to index [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1407
+#: git-add--interactive.perl:1443
 #, perl-format
 msgid "Apply this hunk to index [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1410
+#: git-add--interactive.perl:1446 git-add--interactive.perl:1461
 #, perl-format
 msgid "Discard mode change from worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1411
+#: git-add--interactive.perl:1447 git-add--interactive.perl:1462
 #, perl-format
 msgid "Discard deletion from worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1412
+#: git-add--interactive.perl:1448 git-add--interactive.perl:1463
 #, perl-format
 msgid "Discard this hunk from worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1415
+#: git-add--interactive.perl:1451
 #, perl-format
 msgid "Discard mode change from index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1416
+#: git-add--interactive.perl:1452
 #, perl-format
 msgid "Discard deletion from index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1417
+#: git-add--interactive.perl:1453
 #, perl-format
 msgid "Discard this hunk from index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1420
+#: git-add--interactive.perl:1456
 #, perl-format
 msgid "Apply mode change to index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1421
+#: git-add--interactive.perl:1457
 #, perl-format
 msgid "Apply deletion to index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1422
+#: git-add--interactive.perl:1458
 #, perl-format
 msgid "Apply this hunk to index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1522
+#: git-add--interactive.perl:1466
+#, perl-format
+msgid "Apply mode change to worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+
+#: git-add--interactive.perl:1467
+#, perl-format
+msgid "Apply deletion to worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+
+#: git-add--interactive.perl:1468
+#, perl-format
+msgid "Apply this hunk to worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+
+#: git-add--interactive.perl:1568
 msgid "No other hunks to goto\n"
 msgstr ""
 
-#: git-add--interactive.perl:1529
+#: git-add--interactive.perl:1575
 msgid "go to which hunk (<ret> to see more)? "
 msgstr ""
 
-#: git-add--interactive.perl:1531
+#: git-add--interactive.perl:1577
 msgid "go to which hunk? "
 msgstr ""
 
-#: git-add--interactive.perl:1540
+#: git-add--interactive.perl:1586
 #, perl-format
 msgid "Invalid number: '%s'\n"
 msgstr ""
 
-#: git-add--interactive.perl:1545
+#: git-add--interactive.perl:1591
 #, perl-format
 msgid "Sorry, only %d hunk available.\n"
 msgid_plural "Sorry, only %d hunks available.\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:1571
+#: git-add--interactive.perl:1617
 msgid "No other hunks to search\n"
 msgstr ""
 
-#: git-add--interactive.perl:1575
+#: git-add--interactive.perl:1621
 msgid "search for regex? "
 msgstr ""
 
-#: git-add--interactive.perl:1588
+#: git-add--interactive.perl:1634
 #, perl-format
 msgid "Malformed search regexp %s: %s\n"
 msgstr ""
 
-#: git-add--interactive.perl:1598
+#: git-add--interactive.perl:1644
 msgid "No hunk matches the given pattern\n"
 msgstr ""
 
-#: git-add--interactive.perl:1610 git-add--interactive.perl:1632
+#: git-add--interactive.perl:1656 git-add--interactive.perl:1678
 msgid "No previous hunk\n"
 msgstr ""
 
-#: git-add--interactive.perl:1619 git-add--interactive.perl:1638
+#: git-add--interactive.perl:1665 git-add--interactive.perl:1684
 msgid "No next hunk\n"
 msgstr ""
 
-#: git-add--interactive.perl:1644
+#: git-add--interactive.perl:1690
 msgid "Sorry, cannot split this hunk\n"
 msgstr ""
 
-#: git-add--interactive.perl:1650
+#: git-add--interactive.perl:1696
 #, perl-format
 msgid "Split into %d hunk.\n"
 msgid_plural "Split into %d hunks.\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:1660
+#: git-add--interactive.perl:1706
 msgid "Sorry, cannot edit this hunk\n"
 msgstr ""
 
-#: git-add--interactive.perl:1706
+#: git-add--interactive.perl:1752
 msgid "Review diff"
 msgstr ""
 
 #. TRANSLATORS: please do not translate the command names
 #. 'status', 'update', 'revert', etc.
-#: git-add--interactive.perl:1725
+#: git-add--interactive.perl:1771
 msgid ""
 "status        - show paths with changes\n"
 "update        - add working tree state to the staged set of changes\n"
@@ -19415,18 +21742,19 @@ msgid ""
 "changes\n"
 msgstr ""
 
-#: git-add--interactive.perl:1742 git-add--interactive.perl:1747
-#: git-add--interactive.perl:1750 git-add--interactive.perl:1757
-#: git-add--interactive.perl:1761 git-add--interactive.perl:1767
+#: git-add--interactive.perl:1788 git-add--interactive.perl:1793
+#: git-add--interactive.perl:1796 git-add--interactive.perl:1803
+#: git-add--interactive.perl:1806 git-add--interactive.perl:1813
+#: git-add--interactive.perl:1817 git-add--interactive.perl:1823
 msgid "missing --"
 msgstr ""
 
-#: git-add--interactive.perl:1763
+#: git-add--interactive.perl:1819
 #, perl-format
 msgid "unknown --patch mode: %s"
 msgstr ""
 
-#: git-add--interactive.perl:1769 git-add--interactive.perl:1775
+#: git-add--interactive.perl:1825 git-add--interactive.perl:1831
 #, perl-format
 msgid "invalid argument %s, expecting --"
 msgstr ""
@@ -19439,66 +21767,66 @@ msgstr ""
 msgid "local time offset greater than or equal to 24 hours\n"
 msgstr ""
 
-#: git-send-email.perl:219 git-send-email.perl:225
+#: git-send-email.perl:223 git-send-email.perl:229
 msgid "the editor exited uncleanly, aborting everything"
 msgstr ""
 
-#: git-send-email.perl:302
+#: git-send-email.perl:310
 #, perl-format
 msgid ""
 "'%s' contains an intermediate version of the email you were composing.\n"
 msgstr ""
 
-#: git-send-email.perl:307
+#: git-send-email.perl:315
 #, perl-format
 msgid "'%s.final' contains the composed email.\n"
 msgstr ""
 
-#: git-send-email.perl:326
+#: git-send-email.perl:408
 msgid "--dump-aliases incompatible with other options\n"
 msgstr ""
 
-#: git-send-email.perl:395 git-send-email.perl:650
+#: git-send-email.perl:481 git-send-email.perl:683
 msgid "Cannot run git format-patch from outside a repository\n"
 msgstr ""
 
-#: git-send-email.perl:398
+#: git-send-email.perl:484
 msgid ""
 "`batch-size` and `relogin` must be specified together (via command-line or "
 "configuration option)\n"
 msgstr ""
 
-#: git-send-email.perl:468
+#: git-send-email.perl:497
 #, perl-format
 msgid "Unknown --suppress-cc field: '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:497
+#: git-send-email.perl:528
 #, perl-format
 msgid "Unknown --confirm setting: '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:525
+#: git-send-email.perl:556
 #, perl-format
 msgid "warning: sendmail alias with quotes is not supported: %s\n"
 msgstr ""
 
-#: git-send-email.perl:527
+#: git-send-email.perl:558
 #, perl-format
 msgid "warning: `:include:` not supported: %s\n"
 msgstr ""
 
-#: git-send-email.perl:529
+#: git-send-email.perl:560
 #, perl-format
 msgid "warning: `/file` or `|pipe` redirection not supported: %s\n"
 msgstr ""
 
-#: git-send-email.perl:534
+#: git-send-email.perl:565
 #, perl-format
 msgid "warning: sendmail line is not recognized: %s\n"
 msgstr ""
 
-#: git-send-email.perl:616
+#: git-send-email.perl:649
 #, perl-format
 msgid ""
 "File '%s' exists but it could also be the range of commits\n"
@@ -19508,36 +21836,36 @@ msgid ""
 "    * Giving --format-patch option if you mean a range.\n"
 msgstr ""
 
-#: git-send-email.perl:637
+#: git-send-email.perl:670
 #, perl-format
 msgid "Failed to opendir %s: %s"
 msgstr ""
 
-#: git-send-email.perl:661
+#: git-send-email.perl:694
 #, perl-format
 msgid ""
 "fatal: %s: %s\n"
 "warning: no patches were sent\n"
 msgstr ""
 
-#: git-send-email.perl:672
+#: git-send-email.perl:705
 msgid ""
 "\n"
 "No patch files specified!\n"
 "\n"
 msgstr ""
 
-#: git-send-email.perl:685
+#: git-send-email.perl:718
 #, perl-format
 msgid "No subject line in %s?"
 msgstr ""
 
-#: git-send-email.perl:695
+#: git-send-email.perl:728
 #, perl-format
 msgid "Failed to open for writing %s: %s"
 msgstr ""
 
-#: git-send-email.perl:706
+#: git-send-email.perl:739
 msgid ""
 "Lines beginning in \"GIT:\" will be removed.\n"
 "Consider including an overall diffstat or table of contents\n"
@@ -19546,37 +21874,37 @@ msgid ""
 "Clear the body content if you don't wish to send a summary.\n"
 msgstr ""
 
-#: git-send-email.perl:730
+#: git-send-email.perl:763
 #, perl-format
 msgid "Failed to open %s: %s"
 msgstr ""
 
-#: git-send-email.perl:747
+#: git-send-email.perl:780
 #, perl-format
 msgid "Failed to open %s.final: %s"
 msgstr ""
 
-#: git-send-email.perl:790
+#: git-send-email.perl:823
 msgid "Summary email is empty, skipping it\n"
 msgstr ""
 
 #. TRANSLATORS: please keep [y/N] as is.
-#: git-send-email.perl:825
+#: git-send-email.perl:858
 #, perl-format
 msgid "Are you sure you want to use <%s> [y/N]? "
 msgstr ""
 
-#: git-send-email.perl:880
+#: git-send-email.perl:913
 msgid ""
 "The following files are 8bit, but do not declare a Content-Transfer-"
 "Encoding.\n"
 msgstr ""
 
-#: git-send-email.perl:885
+#: git-send-email.perl:918
 msgid "Which 8bit encoding should I declare [UTF-8]? "
 msgstr ""
 
-#: git-send-email.perl:893
+#: git-send-email.perl:926
 #, perl-format
 msgid ""
 "Refusing to send because the patch\n"
@@ -19585,20 +21913,20 @@ msgid ""
 "want to send.\n"
 msgstr ""
 
-#: git-send-email.perl:912
+#: git-send-email.perl:945
 msgid "To whom should the emails be sent (if anyone)?"
 msgstr ""
 
-#: git-send-email.perl:930
+#: git-send-email.perl:963
 #, perl-format
 msgid "fatal: alias '%s' expands to itself\n"
 msgstr ""
 
-#: git-send-email.perl:942
+#: git-send-email.perl:975
 msgid "Message-ID to be used as In-Reply-To for the first email (if any)? "
 msgstr ""
 
-#: git-send-email.perl:1000 git-send-email.perl:1008
+#: git-send-email.perl:1033 git-send-email.perl:1041
 #, perl-format
 msgid "error: unable to extract a valid address from: %s\n"
 msgstr ""
@@ -19606,16 +21934,16 @@ msgstr ""
 #. 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:1012
+#: git-send-email.perl:1045
 msgid "What to do with this address? ([q]uit|[d]rop|[e]dit): "
 msgstr ""
 
-#: git-send-email.perl:1329
+#: git-send-email.perl:1362
 #, perl-format
 msgid "CA path \"%s\" does not exist"
 msgstr ""
 
-#: git-send-email.perl:1412
+#: git-send-email.perl:1445
 msgid ""
 "    The Cc list above has been expanded by additional\n"
 "    addresses found in the patch commit message. By default\n"
@@ -19632,128 +21960,128 @@ msgstr ""
 #. TRANSLATORS: Make sure to include [y] [n] [e] [q] [a] in your
 #. translation. The program will only accept English input
 #. at this point.
-#: git-send-email.perl:1427
+#: git-send-email.perl:1460
 msgid "Send this email? ([y]es|[n]o|[e]dit|[q]uit|[a]ll): "
 msgstr ""
 
-#: git-send-email.perl:1430
+#: git-send-email.perl:1463
 msgid "Send this email reply required"
 msgstr ""
 
-#: git-send-email.perl:1458
+#: git-send-email.perl:1491
 msgid "The required SMTP server is not properly defined."
 msgstr ""
 
-#: git-send-email.perl:1505
+#: git-send-email.perl:1538
 #, perl-format
 msgid "Server does not support STARTTLS! %s"
 msgstr ""
 
-#: git-send-email.perl:1510 git-send-email.perl:1514
+#: git-send-email.perl:1543 git-send-email.perl:1547
 #, perl-format
 msgid "STARTTLS failed! %s"
 msgstr ""
 
-#: git-send-email.perl:1523
+#: git-send-email.perl:1556
 msgid "Unable to initialize SMTP properly. Check config and use --smtp-debug."
 msgstr ""
 
-#: git-send-email.perl:1541
+#: git-send-email.perl:1574
 #, perl-format
 msgid "Failed to send %s\n"
 msgstr ""
 
-#: git-send-email.perl:1544
+#: git-send-email.perl:1577
 #, perl-format
 msgid "Dry-Sent %s\n"
 msgstr ""
 
-#: git-send-email.perl:1544
+#: git-send-email.perl:1577
 #, perl-format
 msgid "Sent %s\n"
 msgstr ""
 
-#: git-send-email.perl:1546
+#: git-send-email.perl:1579
 msgid "Dry-OK. Log says:\n"
 msgstr ""
 
-#: git-send-email.perl:1546
+#: git-send-email.perl:1579
 msgid "OK. Log says:\n"
 msgstr ""
 
-#: git-send-email.perl:1558
+#: git-send-email.perl:1591
 msgid "Result: "
 msgstr ""
 
-#: git-send-email.perl:1561
+#: git-send-email.perl:1594
 msgid "Result: OK\n"
 msgstr ""
 
-#: git-send-email.perl:1579
+#: git-send-email.perl:1612
 #, perl-format
 msgid "can't open file %s"
 msgstr ""
 
-#: git-send-email.perl:1626 git-send-email.perl:1646
+#: git-send-email.perl:1659 git-send-email.perl:1679
 #, perl-format
 msgid "(mbox) Adding cc: %s from line '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1632
+#: git-send-email.perl:1665
 #, perl-format
 msgid "(mbox) Adding to: %s from line '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1685
+#: git-send-email.perl:1718
 #, perl-format
 msgid "(non-mbox) Adding cc: %s from line '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1720
+#: git-send-email.perl:1753
 #, perl-format
 msgid "(body) Adding cc: %s from line '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1831
+#: git-send-email.perl:1864
 #, perl-format
 msgid "(%s) Could not execute '%s'"
 msgstr ""
 
-#: git-send-email.perl:1838
+#: git-send-email.perl:1871
 #, perl-format
 msgid "(%s) Adding %s: %s from: '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1842
+#: git-send-email.perl:1875
 #, perl-format
 msgid "(%s) failed to close pipe to '%s'"
 msgstr ""
 
-#: git-send-email.perl:1872
+#: git-send-email.perl:1905
 msgid "cannot send message as 7bit"
 msgstr ""
 
-#: git-send-email.perl:1880
+#: git-send-email.perl:1913
 msgid "invalid transfer encoding"
 msgstr ""
 
-#: git-send-email.perl:1921 git-send-email.perl:1973 git-send-email.perl:1983
+#: git-send-email.perl:1954 git-send-email.perl:2006 git-send-email.perl:2016
 #, perl-format
 msgid "unable to open %s: %s\n"
 msgstr ""
 
-#: git-send-email.perl:1924
+#: git-send-email.perl:1957
 #, perl-format
 msgid "%s: patch contains a line longer than 998 characters"
 msgstr ""
 
-#: git-send-email.perl:1941
+#: git-send-email.perl:1974
 #, perl-format
 msgid "Skipping %s with backup suffix '%s'.\n"
 msgstr ""
 
 #. TRANSLATORS: please keep "[y|N]" as is.
-#: git-send-email.perl:1945
+#: git-send-email.perl:1978
 #, perl-format
 msgid "Do you really want to send %s? [y|N]: "
 msgstr ""