t4000-t4999: fix broken &&-chains
[gitweb.git] / po / git.pot
index 5d0b2354dcd063f4b19d924d8d646dca90e397a0..d4c7f0bec6e3d7bc34c718f23cd3f1871cc2f7fe 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: 2017-12-31 10:45+0800\n"
+"POT-Creation-Date: 2018-06-16 22:06+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,59 +18,59 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
 
-#: advice.c:62
+#: advice.c:92
 #, c-format
-msgid "hint: %.*s\n"
+msgid "%shint: %.*s%s\n"
 msgstr ""
 
-#: advice.c:90
+#: advice.c:137
 msgid "Cherry-picking is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:92
+#: advice.c:139
 msgid "Committing is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:94
+#: advice.c:141
 msgid "Merging is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:96
+#: advice.c:143
 msgid "Pulling is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:98
+#: advice.c:145
 msgid "Reverting is not possible because you have unmerged files."
 msgstr ""
 
-#: advice.c:100
+#: advice.c:147
 #, c-format
 msgid "It is not possible to %s because you have unmerged files."
 msgstr ""
 
-#: advice.c:108
+#: advice.c:155
 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:116
+#: advice.c:163
 msgid "Exiting because of an unresolved conflict."
 msgstr ""
 
-#: advice.c:121 builtin/merge.c:1213
+#: advice.c:168 builtin/merge.c:1250
 msgid "You have not concluded your merge (MERGE_HEAD exists)."
 msgstr ""
 
-#: advice.c:123
+#: advice.c:170
 msgid "Please, commit your changes before merging."
 msgstr ""
 
-#: advice.c:124
+#: advice.c:171
 msgid "Exiting because of unfinished merge."
 msgstr ""
 
-#: advice.c:130
+#: advice.c:177
 #, c-format
 msgid ""
 "Note: checking out '%s'.\n"
@@ -315,7 +315,7 @@ msgstr ""
 msgid "cannot checkout %s"
 msgstr ""
 
-#: apply.c:3396 apply.c:3407 apply.c:3453 setup.c:277
+#: apply.c:3396 apply.c:3407 apply.c:3453 setup.c:278
 #, c-format
 msgid "failed to read %s"
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "sha1 information is lacking or useless (%s)."
 msgstr ""
 
-#: apply.c:4095 builtin/checkout.c:236 builtin/reset.c:148
+#: apply.c:4095 builtin/checkout.c:235 builtin/reset.c:140
 #, c-format
 msgid "make_cache_entry failed for path '%s'"
 msgstr ""
@@ -514,7 +514,7 @@ msgstr[1] ""
 msgid "truncating .rej filename to %.*s.rej"
 msgstr ""
 
-#: apply.c:4545 builtin/fetch.c:761 builtin/fetch.c:1011
+#: apply.c:4545 builtin/fetch.c:786 builtin/fetch.c:1036
 #, c-format
 msgid "cannot open %s"
 msgstr ""
@@ -568,15 +568,15 @@ msgid_plural "%d lines applied after fixing whitespace errors."
 msgstr[0] ""
 msgstr[1] ""
 
-#: apply.c:4894 builtin/add.c:539 builtin/mv.c:298 builtin/rm.c:390
+#: apply.c:4894 builtin/add.c:538 builtin/mv.c:300 builtin/rm.c:389
 msgid "Unable to write new index file"
 msgstr ""
 
-#: apply.c:4921 apply.c:4924 builtin/am.c:2257 builtin/am.c:2260
-#: builtin/clone.c:116 builtin/fetch.c:116 builtin/pull.c:193
-#: builtin/submodule--helper.c:369 builtin/submodule--helper.c:860
-#: builtin/submodule--helper.c:863 builtin/submodule--helper.c:1230
-#: builtin/submodule--helper.c:1233 builtin/submodule--helper.c:1450
+#: apply.c:4921 apply.c:4924 builtin/am.c:2254 builtin/am.c:2257
+#: builtin/clone.c:120 builtin/fetch.c:126 builtin/pull.c:198
+#: builtin/submodule--helper.c:405 builtin/submodule--helper.c:1210
+#: builtin/submodule--helper.c:1213 builtin/submodule--helper.c:1584
+#: builtin/submodule--helper.c:1587 builtin/submodule--helper.c:1807
 #: git-add--interactive.perl:197
 msgid "path"
 msgstr ""
@@ -589,7 +589,7 @@ msgstr ""
 msgid "apply changes matching the given path"
 msgstr ""
 
-#: apply.c:4927 builtin/am.c:2266
+#: apply.c:4927 builtin/am.c:2263
 msgid "num"
 msgstr ""
 
@@ -629,75 +629,75 @@ msgstr ""
 msgid "accept a patch that touches outside the working area"
 msgstr ""
 
-#: apply.c:4949
+#: apply.c:4950
 msgid "also apply the patch (use with --stat/--summary/--check)"
 msgstr ""
 
-#: apply.c:4951
+#: apply.c:4952
 msgid "attempt three-way merge if a patch does not apply"
 msgstr ""
 
-#: apply.c:4953
+#: apply.c:4954
 msgid "build a temporary index based on embedded index information"
 msgstr ""
 
-#: apply.c:4956 builtin/checkout-index.c:168 builtin/ls-files.c:515
+#: apply.c:4957 builtin/checkout-index.c:168 builtin/ls-files.c:515
 msgid "paths are separated with NUL character"
 msgstr ""
 
-#: apply.c:4958
+#: apply.c:4959
 msgid "ensure at least <n> lines of context match"
 msgstr ""
 
-#: apply.c:4959 builtin/am.c:2245 builtin/interpret-trailers.c:95
+#: apply.c:4960 builtin/am.c:2242 builtin/interpret-trailers.c:95
 #: builtin/interpret-trailers.c:97 builtin/interpret-trailers.c:99
-#: builtin/pack-objects.c:3009
+#: builtin/pack-objects.c:3177
 msgid "action"
 msgstr ""
 
-#: apply.c:4960
+#: apply.c:4961
 msgid "detect new or modified lines that have whitespace errors"
 msgstr ""
 
-#: apply.c:4963 apply.c:4966
+#: apply.c:4964 apply.c:4967
 msgid "ignore changes in whitespace when finding context"
 msgstr ""
 
-#: apply.c:4969
+#: apply.c:4970
 msgid "apply the patch in reverse"
 msgstr ""
 
-#: apply.c:4971
+#: apply.c:4972
 msgid "don't expect at least one line of context"
 msgstr ""
 
-#: apply.c:4973
+#: apply.c:4974
 msgid "leave the rejected hunks in corresponding *.rej files"
 msgstr ""
 
-#: apply.c:4975
+#: apply.c:4976
 msgid "allow overlapping hunks"
 msgstr ""
 
-#: apply.c:4976 builtin/add.c:292 builtin/check-ignore.c:21
-#: builtin/commit.c:1361 builtin/count-objects.c:96 builtin/fsck.c:640
-#: builtin/log.c:1896 builtin/mv.c:123 builtin/read-tree.c:125
+#: apply.c:4977 builtin/add.c:290 builtin/check-ignore.c:21
+#: builtin/commit.c:1301 builtin/count-objects.c:98 builtin/fsck.c:666
+#: builtin/log.c:1901 builtin/mv.c:122 builtin/read-tree.c:124
 msgid "be verbose"
 msgstr ""
 
-#: apply.c:4978
+#: apply.c:4979
 msgid "tolerate incorrectly detected missing new-line at the end of file"
 msgstr ""
 
-#: apply.c:4981
+#: apply.c:4982
 msgid "do not trust the line counts in the hunk headers"
 msgstr ""
 
-#: apply.c:4983 builtin/am.c:2254
+#: apply.c:4984 builtin/am.c:2251
 msgid "root"
 msgstr ""
 
-#: apply.c:4984
+#: apply.c:4985
 msgid "prepend <root> to all filenames"
 msgstr ""
 
@@ -718,98 +718,98 @@ msgstr ""
 msgid "git archive --remote <repo> [--exec <cmd>] --list"
 msgstr ""
 
-#: archive.c:351 builtin/add.c:176 builtin/add.c:515 builtin/rm.c:299
+#: archive.c:351 builtin/add.c:176 builtin/add.c:514 builtin/rm.c:298
 #, c-format
 msgid "pathspec '%s' did not match any files"
 msgstr ""
 
-#: archive.c:436
+#: archive.c:434
 msgid "fmt"
 msgstr ""
 
-#: archive.c:436
+#: archive.c:434
 msgid "archive format"
 msgstr ""
 
-#: archive.c:437 builtin/log.c:1459
+#: archive.c:435 builtin/log.c:1462
 msgid "prefix"
 msgstr ""
 
-#: archive.c:438
+#: archive.c:436
 msgid "prepend prefix to each pathname in the archive"
 msgstr ""
 
-#: archive.c:439 builtin/blame.c:693 builtin/blame.c:694 builtin/config.c:62
-#: builtin/fast-export.c:1005 builtin/fast-export.c:1007 builtin/grep.c:861
-#: builtin/hash-object.c:102 builtin/ls-files.c:551 builtin/ls-files.c:554
-#: builtin/notes.c:405 builtin/notes.c:568 builtin/read-tree.c:120
-#: parse-options.h:153
+#: archive.c:437 builtin/blame.c:813 builtin/blame.c:814 builtin/config.c:127
+#: builtin/fast-export.c:1007 builtin/fast-export.c:1009 builtin/grep.c:869
+#: builtin/hash-object.c:103 builtin/ls-files.c:551 builtin/ls-files.c:554
+#: builtin/notes.c:405 builtin/notes.c:568 builtin/read-tree.c:119
+#: parse-options.h:165
 msgid "file"
 msgstr ""
 
-#: archive.c:440 builtin/archive.c:89
+#: archive.c:438 builtin/archive.c:89
 msgid "write the archive to this file"
 msgstr ""
 
-#: archive.c:442
+#: archive.c:440
 msgid "read .gitattributes in working directory"
 msgstr ""
 
-#: archive.c:443
+#: archive.c:441
 msgid "report archived files on stderr"
 msgstr ""
 
-#: archive.c:444
+#: archive.c:442
 msgid "store only"
 msgstr ""
 
-#: archive.c:445
+#: archive.c:443
 msgid "compress faster"
 msgstr ""
 
-#: archive.c:453
+#: archive.c:451
 msgid "compress better"
 msgstr ""
 
-#: archive.c:456
+#: archive.c:454
 msgid "list supported archive formats"
 msgstr ""
 
-#: archive.c:458 builtin/archive.c:90 builtin/clone.c:106 builtin/clone.c:109
-#: builtin/submodule--helper.c:872 builtin/submodule--helper.c:1239
+#: archive.c:456 builtin/archive.c:90 builtin/clone.c:110 builtin/clone.c:113
+#: builtin/submodule--helper.c:1222 builtin/submodule--helper.c:1593
 msgid "repo"
 msgstr ""
 
-#: archive.c:459 builtin/archive.c:91
+#: archive.c:457 builtin/archive.c:91
 msgid "retrieve the archive from remote repository <repo>"
 msgstr ""
 
-#: archive.c:460 builtin/archive.c:92 builtin/notes.c:489
+#: archive.c:458 builtin/archive.c:92 builtin/notes.c:489
 msgid "command"
 msgstr ""
 
-#: archive.c:461 builtin/archive.c:93
+#: archive.c:459 builtin/archive.c:93
 msgid "path to the remote git-upload-archive command"
 msgstr ""
 
-#: archive.c:468
+#: archive.c:466
 msgid "Unexpected option --remote"
 msgstr ""
 
-#: archive.c:470
+#: archive.c:468
 msgid "Option --exec can only be used together with --remote"
 msgstr ""
 
-#: archive.c:472
+#: archive.c:470
 msgid "Unexpected option --output"
 msgstr ""
 
-#: archive.c:494
+#: archive.c:492
 #, c-format
 msgid "Unknown archive format '%s'"
 msgstr ""
 
-#: archive.c:501
+#: archive.c:499
 #, c-format
 msgid "Argument not supported for format '%s': -%d"
 msgstr ""
@@ -825,43 +825,43 @@ msgid ""
 "Use '\\!' for literal leading exclamation."
 msgstr ""
 
-#: bisect.c:458
+#: bisect.c:461
 #, c-format
 msgid "Badly quoted content in file '%s': %s"
 msgstr ""
 
-#: bisect.c:666
+#: bisect.c:669
 #, c-format
 msgid "We cannot bisect more!\n"
 msgstr ""
 
-#: bisect.c:720
+#: bisect.c:723
 #, c-format
 msgid "Not a valid commit name %s"
 msgstr ""
 
-#: bisect.c:744
+#: bisect.c:747
 #, 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:749
+#: bisect.c:752
 #, c-format
 msgid ""
 "The merge base %s is new.\n"
 "The property has changed between %s and [%s].\n"
 msgstr ""
 
-#: bisect.c:754
+#: bisect.c:757
 #, 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:762
+#: bisect.c:765
 #, c-format
 msgid ""
 "Some %s revs are not ancestors of the %s rev.\n"
@@ -869,7 +869,7 @@ msgid ""
 "Maybe you mistook %s and %s revs?\n"
 msgstr ""
 
-#: bisect.c:775
+#: bisect.c:778
 #, c-format
 msgid ""
 "the merge base between %s and [%s] must be skipped.\n"
@@ -877,43 +877,43 @@ msgid ""
 "We continue anyway."
 msgstr ""
 
-#: bisect.c:810
+#: bisect.c:811
 #, c-format
 msgid "Bisecting: a merge base must be tested\n"
 msgstr ""
 
-#: bisect.c:862
+#: bisect.c:851
 #, c-format
 msgid "a %s revision is needed"
 msgstr ""
 
-#: bisect.c:879 builtin/notes.c:175 builtin/tag.c:234
+#: bisect.c:870 builtin/notes.c:175 builtin/tag.c:236
 #, c-format
 msgid "could not create file '%s'"
 msgstr ""
 
-#: bisect.c:930
+#: bisect.c:921
 #, c-format
 msgid "could not read file '%s'"
 msgstr ""
 
-#: bisect.c:960
+#: bisect.c:951
 msgid "reading bisect refs failed"
 msgstr ""
 
-#: bisect.c:979
+#: bisect.c:970
 #, c-format
 msgid "%s was both %s and %s\n"
 msgstr ""
 
-#: bisect.c:987
+#: bisect.c:978
 #, c-format
 msgid ""
 "No testable commit found.\n"
 "Maybe you started with bad path parameters?\n"
 msgstr ""
 
-#: bisect.c:1006
+#: bisect.c:997
 #, c-format
 msgid "(roughly %d step)"
 msgid_plural "(roughly %d steps)"
@@ -923,48 +923,48 @@ msgstr[1] ""
 #. TRANSLATORS: the last %s will be replaced with "(roughly %d
 #. steps)" translation.
 #.
-#: bisect.c:1012
+#: bisect.c:1003
 #, c-format
 msgid "Bisecting: %d revision left to test after this %s\n"
 msgid_plural "Bisecting: %d revisions left to test after this %s\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: blame.c:1757
+#: blame.c:1756
 msgid "--contents and --reverse do not blend well."
 msgstr ""
 
-#: blame.c:1768
+#: blame.c:1767
 msgid "cannot use --contents with final commit object name"
 msgstr ""
 
-#: blame.c:1788
+#: blame.c:1787
 msgid "--reverse and --first-parent together require specified latest commit"
 msgstr ""
 
-#: blame.c:1797 bundle.c:169 ref-filter.c:1981 sequencer.c:1179
-#: sequencer.c:2367 builtin/commit.c:1066 builtin/log.c:364 builtin/log.c:918
-#: builtin/log.c:1368 builtin/log.c:1697 builtin/log.c:1945 builtin/merge.c:369
-#: builtin/shortlog.c:191
+#: blame.c:1796 bundle.c:160 ref-filter.c:2075 sequencer.c:1861
+#: sequencer.c:3632 builtin/commit.c:981 builtin/log.c:366 builtin/log.c:920
+#: builtin/log.c:1371 builtin/log.c:1702 builtin/log.c:1950 builtin/merge.c:372
+#: builtin/shortlog.c:192
 msgid "revision walk setup failed"
 msgstr ""
 
-#: blame.c:1815
+#: blame.c:1814
 msgid ""
 "--reverse --first-parent together require range along first-parent chain"
 msgstr ""
 
-#: blame.c:1826
+#: blame.c:1825
 #, c-format
 msgid "no such path %s in %s"
 msgstr ""
 
-#: blame.c:1837
+#: blame.c:1836
 #, c-format
 msgid "cannot read blob %s for path %s"
 msgstr ""
 
-#: branch.c:53
+#: branch.c:54
 #, c-format
 msgid ""
 "\n"
@@ -973,85 +973,85 @@ msgid ""
 "\"git branch --set-upstream-to=%s%s%s\"."
 msgstr ""
 
-#: branch.c:67
+#: branch.c:68
 #, c-format
 msgid "Not setting branch %s as its own upstream."
 msgstr ""
 
-#: branch.c:93
+#: branch.c:94
 #, c-format
 msgid "Branch '%s' set up to track remote branch '%s' from '%s' by rebasing."
 msgstr ""
 
-#: branch.c:94
+#: branch.c:95
 #, c-format
 msgid "Branch '%s' set up to track remote branch '%s' from '%s'."
 msgstr ""
 
-#: branch.c:98
+#: branch.c:99
 #, c-format
 msgid "Branch '%s' set up to track local branch '%s' by rebasing."
 msgstr ""
 
-#: branch.c:99
+#: branch.c:100
 #, c-format
 msgid "Branch '%s' set up to track local branch '%s'."
 msgstr ""
 
-#: branch.c:104
+#: branch.c:105
 #, c-format
 msgid "Branch '%s' set up to track remote ref '%s' by rebasing."
 msgstr ""
 
-#: branch.c:105
+#: branch.c:106
 #, c-format
 msgid "Branch '%s' set up to track remote ref '%s'."
 msgstr ""
 
-#: branch.c:109
+#: branch.c:110
 #, c-format
 msgid "Branch '%s' set up to track local ref '%s' by rebasing."
 msgstr ""
 
-#: branch.c:110
+#: branch.c:111
 #, c-format
 msgid "Branch '%s' set up to track local ref '%s'."
 msgstr ""
 
-#: branch.c:119
+#: branch.c:120
 msgid "Unable to write upstream branch configuration"
 msgstr ""
 
-#: branch.c:156
+#: branch.c:157
 #, c-format
 msgid "Not tracking: ambiguous information for ref %s"
 msgstr ""
 
-#: branch.c:189
+#: branch.c:190
 #, c-format
 msgid "'%s' is not a valid branch name."
 msgstr ""
 
-#: branch.c:208
+#: branch.c:209
 #, c-format
 msgid "A branch named '%s' already exists."
 msgstr ""
 
-#: branch.c:213
+#: branch.c:214
 msgid "Cannot force update the current branch."
 msgstr ""
 
-#: branch.c:233
+#: branch.c:234
 #, c-format
 msgid "Cannot setup tracking information; starting point '%s' is not a branch."
 msgstr ""
 
-#: branch.c:235
+#: branch.c:236
 #, c-format
 msgid "the requested upstream branch '%s' does not exist"
 msgstr ""
 
-#: branch.c:237
+#: branch.c:238
 msgid ""
 "\n"
 "If you are planning on basing your work on an upstream\n"
@@ -1063,27 +1063,27 @@ msgid ""
 "\"git push -u\" to set the upstream config as you push."
 msgstr ""
 
-#: branch.c:280
+#: branch.c:281
 #, c-format
 msgid "Not a valid object name: '%s'."
 msgstr ""
 
-#: branch.c:300
+#: branch.c:301
 #, c-format
 msgid "Ambiguous object name: '%s'."
 msgstr ""
 
-#: branch.c:305
+#: branch.c:306
 #, c-format
 msgid "Not a valid branch point: '%s'."
 msgstr ""
 
-#: branch.c:359
+#: branch.c:360
 #, c-format
 msgid "'%s' is already checked out at '%s'"
 msgstr ""
 
-#: branch.c:382
+#: branch.c:383
 #, c-format
 msgid "HEAD of working tree %s is not updated"
 msgstr ""
@@ -1098,256 +1098,282 @@ msgstr ""
 msgid "unrecognized header: %s%s (%d)"
 msgstr ""
 
-#: bundle.c:88 sequencer.c:1357 sequencer.c:1804 sequencer.c:2631
-#: sequencer.c:2657 sequencer.c:2748 sequencer.c:2850 builtin/commit.c:782
+#: bundle.c:88 sequencer.c:2081 sequencer.c:2558 builtin/commit.c:755
 #, c-format
 msgid "could not open '%s'"
 msgstr ""
 
-#: bundle.c:140
+#: bundle.c:139
 msgid "Repository lacks these prerequisite commits:"
 msgstr ""
 
-#: bundle.c:193
+#: bundle.c:190
 #, c-format
 msgid "The bundle contains this ref:"
 msgid_plural "The bundle contains these %d refs:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: bundle.c:200
+#: bundle.c:197
 msgid "The bundle records a complete history."
 msgstr ""
 
-#: bundle.c:202
+#: bundle.c:199
 #, c-format
 msgid "The bundle requires this ref:"
 msgid_plural "The bundle requires these %d refs:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: bundle.c:261
+#: bundle.c:258
 msgid "Could not spawn pack-objects"
 msgstr ""
 
-#: bundle.c:272
+#: bundle.c:269
 msgid "pack-objects died"
 msgstr ""
 
-#: bundle.c:314
+#: bundle.c:311
 msgid "rev-list died"
 msgstr ""
 
-#: bundle.c:363
+#: bundle.c:360
 #, c-format
 msgid "ref '%s' is excluded by the rev-list options"
 msgstr ""
 
-#: bundle.c:453 builtin/log.c:181 builtin/log.c:1604 builtin/shortlog.c:296
+#: bundle.c:450 builtin/log.c:183 builtin/log.c:1607 builtin/shortlog.c:303
 #, c-format
 msgid "unrecognized argument: %s"
 msgstr ""
 
-#: bundle.c:461
+#: bundle.c:458
 msgid "Refusing to create empty bundle."
 msgstr ""
 
-#: bundle.c:473
+#: bundle.c:470
 #, c-format
 msgid "cannot create '%s'"
 msgstr ""
 
-#: bundle.c:501
+#: bundle.c:498
 msgid "index-pack died"
 msgstr ""
 
-#: color.c:301
+#: color.c:296
 #, c-format
 msgid "invalid color value: %.*s"
 msgstr ""
 
-#: commit.c:41 sequencer.c:1611 builtin/am.c:421 builtin/am.c:465
-#: builtin/am.c:1471 builtin/am.c:2106
+#: commit.c:43 sequencer.c:2364 builtin/am.c:421 builtin/am.c:465
+#: builtin/am.c:1436 builtin/am.c:2072 builtin/replace.c:376
+#: builtin/replace.c:448
 #, c-format
 msgid "could not parse %s"
 msgstr ""
 
-#: commit.c:43
+#: commit.c:45
 #, c-format
 msgid "%s %s is not a commit!"
 msgstr ""
 
-#: commit.c:1524
+#: commit.c:182
+msgid ""
+"Support for <GIT_DIR>/info/grafts is deprecated\n"
+"and will be removed in a future Git version.\n"
+"\n"
+"Please use \"git replace --convert-graft-file\"\n"
+"to convert the grafts into replace refs.\n"
+"\n"
+"Turn this message off by running\n"
+"\"git config advice.graftFileDeprecated false\""
+msgstr ""
+
+#: commit.c:1540
 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:669
+#, c-format
+msgid "the commit graph format cannot write %d commits"
+msgstr ""
+
+#: commit-graph.c:696
+msgid "too many commits to write graph"
+msgstr ""
+
+#: commit-graph.c:707 builtin/init-db.c:516 builtin/init-db.c:521
+#, c-format
+msgid "cannot mkdir %s"
+msgstr ""
+
 #: compat/obstack.c:405 compat/obstack.c:407
 msgid "memory exhausted"
 msgstr ""
 
-#: config.c:186
+#: config.c:187
 msgid "relative config include conditionals must come from files"
 msgstr ""
 
-#: config.c:720
+#: config.c:788
 #, c-format
 msgid "bad config line %d in blob %s"
 msgstr ""
 
-#: config.c:724
+#: config.c:792
 #, c-format
 msgid "bad config line %d in file %s"
 msgstr ""
 
-#: config.c:728
+#: config.c:796
 #, c-format
 msgid "bad config line %d in standard input"
 msgstr ""
 
-#: config.c:732
+#: config.c:800
 #, c-format
 msgid "bad config line %d in submodule-blob %s"
 msgstr ""
 
-#: config.c:736
+#: config.c:804
 #, c-format
 msgid "bad config line %d in command line %s"
 msgstr ""
 
-#: config.c:740
+#: config.c:808
 #, c-format
 msgid "bad config line %d in %s"
 msgstr ""
 
-#: config.c:868
+#: config.c:936
 msgid "out of range"
 msgstr ""
 
-#: config.c:868
+#: config.c:936
 msgid "invalid unit"
 msgstr ""
 
-#: config.c:874
+#: config.c:942
 #, c-format
 msgid "bad numeric config value '%s' for '%s': %s"
 msgstr ""
 
-#: config.c:879
+#: config.c:947
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in blob %s: %s"
 msgstr ""
 
-#: config.c:882
+#: config.c:950
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in file %s: %s"
 msgstr ""
 
-#: config.c:885
+#: config.c:953
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in standard input: %s"
 msgstr ""
 
-#: config.c:888
+#: config.c:956
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in submodule-blob %s: %s"
 msgstr ""
 
-#: config.c:891
+#: config.c:959
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in command line %s: %s"
 msgstr ""
 
-#: config.c:894
+#: config.c:962
 #, c-format
 msgid "bad numeric config value '%s' for '%s' in %s: %s"
 msgstr ""
 
-#: config.c:989
+#: config.c:1057
 #, c-format
 msgid "failed to expand user dir in: '%s'"
 msgstr ""
 
-#: config.c:998
+#: config.c:1066
 #, c-format
 msgid "'%s' for '%s' is not a valid timestamp"
 msgstr ""
 
-#: config.c:1094 config.c:1105
+#: config.c:1171 config.c:1182
 #, c-format
 msgid "bad zlib compression level %d"
 msgstr ""
 
-#: config.c:1222
+#: config.c:1307
 #, c-format
 msgid "invalid mode for object creation: %s"
 msgstr ""
 
-#: config.c:1378
+#: config.c:1473
 #, c-format
 msgid "bad pack compression level %d"
 msgstr ""
 
-#: config.c:1574
+#: config.c:1681
 msgid "unable to parse command-line config"
 msgstr ""
 
-#: config.c:1906
+#: config.c:2013
 msgid "unknown error occurred while reading the configuration files"
 msgstr ""
 
-#: config.c:2093
+#: config.c:2200
 #, c-format
 msgid "Invalid %s: '%s'"
 msgstr ""
 
-#: config.c:2136
+#: config.c:2243
 #, c-format
 msgid "unknown core.untrackedCache value '%s'; using 'keep' default value"
 msgstr ""
 
-#: config.c:2162
+#: config.c:2269
 #, c-format
 msgid "splitIndex.maxPercentChange value '%d' should be between 0 and 100"
 msgstr ""
 
-#: config.c:2187
+#: config.c:2294
 #, c-format
 msgid "unable to parse '%s' from command-line config"
 msgstr ""
 
-#: config.c:2189
+#: config.c:2296
 #, c-format
 msgid "bad config variable '%s' in file '%s' at line %d"
 msgstr ""
 
-#: config.c:2248
+#: config.c:2402
 #, c-format
 msgid "%s has multiple values"
 msgstr ""
 
-#: config.c:2591 config.c:2808
+#: config.c:2766 config.c:3019
 #, c-format
 msgid "fstat on %s failed"
 msgstr ""
 
-#: config.c:2698
+#: config.c:2905
 #, c-format
 msgid "could not set '%s' to '%s'"
 msgstr ""
 
-#: config.c:2700 builtin/remote.c:776
+#: config.c:2907 builtin/remote.c:779
 #, c-format
 msgid "could not unset '%s'"
 msgstr ""
 
-#: connect.c:52
+#: connect.c:61
 msgid "The remote end hung up upon initial contact"
 msgstr ""
 
-#: connect.c:54
+#: connect.c:63
 msgid ""
 "Could not read from remote repository.\n"
 "\n"
@@ -1355,44 +1381,82 @@ msgid ""
 "and the repository exists."
 msgstr ""
 
-#: connected.c:64 builtin/fsck.c:183 builtin/prune.c:141
+#: connected.c:66 builtin/fsck.c:201 builtin/prune.c:145
 msgid "Checking connectivity"
 msgstr ""
 
-#: connected.c:76
+#: connected.c:78
 msgid "Could not run 'git rev-list'"
 msgstr ""
 
-#: connected.c:96
+#: connected.c:98
 msgid "failed write to rev-list"
 msgstr ""
 
-#: connected.c:103
+#: connected.c:105
 msgid "failed to close rev-list's stdin"
 msgstr ""
 
-#: convert.c:205
+#: convert.c:206
+#, c-format
+msgid "CRLF would be replaced by LF in %s."
+msgstr ""
+
+#: 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:209
+#: convert.c:216
 #, c-format
-msgid "CRLF would be replaced by LF in %s."
+msgid "LF would be replaced by CRLF in %s"
 msgstr ""
 
-#: convert.c:215
+#: 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:219
+#: convert.c:279
 #, c-format
-msgid "LF would be replaced by CRLF in %s"
+msgid "BOM is prohibited in '%s' if encoded as %s"
+msgstr ""
+
+#: 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:304
+#, c-format
+msgid "BOM is required in '%s' if encoded as %s"
+msgstr ""
+
+#: 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:424
+#, c-format
+msgid "failed to encode '%s' from %s to %s"
+msgstr ""
+
+#: convert.c:467
+#, c-format
+msgid "encoding '%s' from %s to %s and back is not the same"
+msgstr ""
+
+#: convert.c:1225
+msgid "true/false are no valid working-tree-encodings"
 msgstr ""
 
 #: date.c:116
@@ -1505,59 +1569,68 @@ msgid ""
 "%s"
 msgstr ""
 
-#: diff.c:3799
+#: diff.c:3823
 #, c-format
 msgid "external diff died, stopping at %s"
 msgstr ""
 
-#: diff.c:4127
+#: diff.c:4153
 msgid "--name-only, --name-status, --check and -s are mutually exclusive"
 msgstr ""
 
-#: diff.c:4215
+#: diff.c:4156
+msgid "-G, -S and --find-object are mutually exclusive"
+msgstr ""
+
+#: diff.c:4244
 msgid "--follow requires exactly one pathspec"
 msgstr ""
 
-#: diff.c:4381
+#: diff.c:4410
 #, c-format
 msgid ""
 "Failed to parse --dirstat/-X option parameter:\n"
 "%s"
 msgstr ""
 
-#: diff.c:4395
+#: diff.c:4424
 #, c-format
 msgid "Failed to parse --submodule option parameter: '%s'"
 msgstr ""
 
-#: diff.c:5446
+#: diff.c:5500
 msgid "inexact rename detection was skipped due to too many files."
 msgstr ""
 
-#: diff.c:5449
+#: diff.c:5503
 msgid "only found copies from modified paths due to too many files."
 msgstr ""
 
-#: diff.c:5452
+#: diff.c:5506
 #, c-format
 msgid ""
 "you may want to set your %s variable to at least %d and retry the command."
 msgstr ""
 
-#: dir.c:2100
+#: dir.c:1867
+#, c-format
+msgid "could not open directory '%s'"
+msgstr ""
+
+#: dir.c:2109
 msgid "failed to get kernel name and information"
 msgstr ""
 
-#: dir.c:2219
+#: dir.c:2233
 msgid "Untracked cache is disabled on this system or location."
 msgstr ""
 
-#: dir.c:3002 dir.c:3007
+#: dir.c:3075 dir.c:3080
 #, c-format
 msgid "could not create directories for %s"
 msgstr ""
 
-#: dir.c:3032
+#: dir.c:3109
 #, c-format
 msgid "could not migrate git directory from '%s' to '%s'"
 msgstr ""
@@ -1576,197 +1649,209 @@ msgstr ""
 msgid "could not stat file '%s'"
 msgstr ""
 
-#: fetch-pack.c:252
+#: fetch-object.c:17
+msgid "Remote with no URL"
+msgstr ""
+
+#: fetch-pack.c:254
 msgid "git fetch-pack: expected shallow list"
 msgstr ""
 
-#: fetch-pack.c:264
-msgid "git fetch-pack: expected ACK/NAK, got EOF"
+#: fetch-pack.c:266
+msgid "git fetch-pack: expected ACK/NAK, got a flush packet"
 msgstr ""
 
-#: fetch-pack.c:283 builtin/archive.c:63
+#: fetch-pack.c:285 builtin/archive.c:63
 #, c-format
 msgid "remote error: %s"
 msgstr ""
 
-#: fetch-pack.c:284
+#: fetch-pack.c:286
 #, c-format
 msgid "git fetch-pack: expected ACK/NAK, got '%s'"
 msgstr ""
 
-#: fetch-pack.c:336
+#: fetch-pack.c:338
 msgid "--stateless-rpc requires multi_ack_detailed"
 msgstr ""
 
-#: fetch-pack.c:422
+#: fetch-pack.c:429 fetch-pack.c:1310
 #, c-format
 msgid "invalid shallow line: %s"
 msgstr ""
 
-#: fetch-pack.c:428
+#: fetch-pack.c:435 fetch-pack.c:1316
 #, c-format
 msgid "invalid unshallow line: %s"
 msgstr ""
 
-#: fetch-pack.c:430
+#: fetch-pack.c:437 fetch-pack.c:1318
 #, c-format
 msgid "object not found: %s"
 msgstr ""
 
-#: fetch-pack.c:433
+#: fetch-pack.c:440 fetch-pack.c:1321
 #, c-format
 msgid "error in object: %s"
 msgstr ""
 
-#: fetch-pack.c:435
+#: fetch-pack.c:442 fetch-pack.c:1323
 #, c-format
 msgid "no shallow found: %s"
 msgstr ""
 
-#: fetch-pack.c:438
+#: fetch-pack.c:445 fetch-pack.c:1326
 #, c-format
 msgid "expected shallow/unshallow, got %s"
 msgstr ""
 
-#: fetch-pack.c:477
+#: fetch-pack.c:486
 #, c-format
 msgid "got %s %d %s"
 msgstr ""
 
-#: fetch-pack.c:491
+#: fetch-pack.c:500
 #, c-format
 msgid "invalid commit %s"
 msgstr ""
 
-#: fetch-pack.c:524
+#: fetch-pack.c:533
 msgid "giving up"
 msgstr ""
 
-#: fetch-pack.c:534 progress.c:229
+#: fetch-pack.c:543 progress.c:229
 msgid "done"
 msgstr ""
 
-#: fetch-pack.c:546
+#: fetch-pack.c:555
 #, c-format
 msgid "got %s (%d) %s"
 msgstr ""
 
-#: fetch-pack.c:592
+#: fetch-pack.c:601
 #, c-format
 msgid "Marking %s as complete"
 msgstr ""
 
-#: fetch-pack.c:777
+#: fetch-pack.c:828
 #, c-format
 msgid "already have %s (%s)"
 msgstr ""
 
-#: fetch-pack.c:815
+#: fetch-pack.c:869
 msgid "fetch-pack: unable to fork off sideband demultiplexer"
 msgstr ""
 
-#: fetch-pack.c:823
+#: fetch-pack.c:877
 msgid "protocol error: bad pack header"
 msgstr ""
 
-#: fetch-pack.c:879
+#: fetch-pack.c:944
 #, c-format
 msgid "fetch-pack: unable to fork off %s"
 msgstr ""
 
-#: fetch-pack.c:895
+#: fetch-pack.c:960
 #, c-format
 msgid "%s failed"
 msgstr ""
 
-#: fetch-pack.c:897
+#: fetch-pack.c:962
 msgid "error in sideband demultiplexer"
 msgstr ""
 
-#: fetch-pack.c:924
+#: fetch-pack.c:989
 msgid "Server does not support shallow clients"
 msgstr ""
 
-#: fetch-pack.c:928
+#: fetch-pack.c:993
 msgid "Server supports multi_ack_detailed"
 msgstr ""
 
-#: fetch-pack.c:931
+#: fetch-pack.c:996
 msgid "Server supports no-done"
 msgstr ""
 
-#: fetch-pack.c:937
+#: fetch-pack.c:1002
 msgid "Server supports multi_ack"
 msgstr ""
 
-#: fetch-pack.c:941
+#: fetch-pack.c:1006
 msgid "Server supports side-band-64k"
 msgstr ""
 
-#: fetch-pack.c:945
+#: fetch-pack.c:1010
 msgid "Server supports side-band"
 msgstr ""
 
-#: fetch-pack.c:949
+#: fetch-pack.c:1014
 msgid "Server supports allow-tip-sha1-in-want"
 msgstr ""
 
-#: fetch-pack.c:953
+#: fetch-pack.c:1018
 msgid "Server supports allow-reachable-sha1-in-want"
 msgstr ""
 
-#: fetch-pack.c:963
+#: fetch-pack.c:1028
 msgid "Server supports ofs-delta"
 msgstr ""
 
-#: fetch-pack.c:970
+#: fetch-pack.c:1034 fetch-pack.c:1204
+msgid "Server supports filter"
+msgstr ""
+
+#: fetch-pack.c:1042
 #, c-format
 msgid "Server version is %.*s"
 msgstr ""
 
-#: fetch-pack.c:976
+#: fetch-pack.c:1048
 msgid "Server does not support --shallow-since"
 msgstr ""
 
-#: fetch-pack.c:980
+#: fetch-pack.c:1052
 msgid "Server does not support --shallow-exclude"
 msgstr ""
 
-#: fetch-pack.c:982
+#: fetch-pack.c:1054
 msgid "Server does not support --deepen"
 msgstr ""
 
-#: fetch-pack.c:993
+#: fetch-pack.c:1065
 msgid "no common commits"
 msgstr ""
 
-#: fetch-pack.c:1005
+#: fetch-pack.c:1077 fetch-pack.c:1414
 msgid "git fetch-pack: fetch failed."
 msgstr ""
 
-#: fetch-pack.c:1167
+#: fetch-pack.c:1199
+msgid "Server does not support shallow requests"
+msgstr ""
+
+#: fetch-pack.c:1584
 msgid "no matching remote head"
 msgstr ""
 
-#: fetch-pack.c:1189
+#: fetch-pack.c:1610
 #, c-format
 msgid "no such remote ref %s"
 msgstr ""
 
-#: fetch-pack.c:1192
+#: fetch-pack.c:1613
 #, c-format
 msgid "Server does not allow request for unadvertised object %s"
 msgstr ""
 
-#: gpg-interface.c:181
+#: gpg-interface.c:185
 msgid "gpg failed to sign the data"
 msgstr ""
 
-#: gpg-interface.c:211
+#: gpg-interface.c:210
 msgid "could not create temporary file"
 msgstr ""
 
-#: gpg-interface.c:214
+#: gpg-interface.c:213
 #, c-format
 msgid "failed writing detached signature to '%s'"
 msgstr ""
@@ -1776,66 +1861,128 @@ msgstr ""
 msgid "ignore invalid color '%.*s' in log.graphColors"
 msgstr ""
 
-#: grep.c:2017
+#: grep.c:2020
 #, c-format
 msgid "'%s': unable to read %s"
 msgstr ""
 
-#: grep.c:2034 builtin/clone.c:404 builtin/diff.c:81 builtin/rm.c:134
+#: grep.c:2037 setup.c:164 builtin/clone.c:409 builtin/diff.c:81
+#: builtin/rm.c:134
 #, c-format
 msgid "failed to stat '%s'"
 msgstr ""
 
-#: grep.c:2045
+#: grep.c:2048
 #, c-format
 msgid "'%s': short read"
 msgstr ""
 
-#: help.c:179
+#: help.c:23
+msgid "start a working area (see also: git help tutorial)"
+msgstr ""
+
+#: help.c:24
+msgid "work on the current change (see also: git help everyday)"
+msgstr ""
+
+#: help.c:25
+msgid "examine the history and state (see also: git help revisions)"
+msgstr ""
+
+#: help.c:26
+msgid "grow, mark and tweak your common history"
+msgstr ""
+
+#: help.c:27
+msgid "collaborate (see also: git help workflows)"
+msgstr ""
+
+#: help.c:31
+msgid "Main Porcelain Commands"
+msgstr ""
+
+#: help.c:32
+msgid "Ancillary Commands / Manipulators"
+msgstr ""
+
+#: help.c:33
+msgid "Ancillary Commands / Interrogators"
+msgstr ""
+
+#: help.c:34
+msgid "Interacting with Others"
+msgstr ""
+
+#: help.c:35
+msgid "Low-level Commands / Manipulators"
+msgstr ""
+
+#: help.c:36
+msgid "Low-level Commands / Interrogators"
+msgstr ""
+
+#: help.c:37
+msgid "Low-level Commands / Synching Repositories"
+msgstr ""
+
+#: help.c:38
+msgid "Low-level Commands / Internal Helpers"
+msgstr ""
+
+#: help.c:293
 #, c-format
 msgid "available git commands in '%s'"
 msgstr ""
 
-#: help.c:186
+#: help.c:300
 msgid "git commands available from elsewhere on your $PATH"
 msgstr ""
 
-#: help.c:217
+#: help.c:309
 msgid "These are common Git commands used in various situations:"
 msgstr ""
 
-#: help.c:281
+#: help.c:358 git.c:90
+#, c-format
+msgid "unsupported command listing type '%s'"
+msgstr ""
+
+#: help.c:405
+msgid "The common Git guides are:"
+msgstr ""
+
+#: help.c:467
 #, 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:336
+#: help.c:526
 msgid "Uh oh. Your system reports no Git commands at all."
 msgstr ""
 
-#: help.c:358
+#: help.c:548
 #, c-format
 msgid "WARNING: You called a Git command named '%s', which does not exist."
 msgstr ""
 
-#: help.c:363
+#: help.c:553
 #, c-format
 msgid "Continuing under the assumption that you meant '%s'."
 msgstr ""
 
-#: help.c:368
+#: help.c:558
 #, c-format
 msgid "Continuing in %0.1f seconds, assuming that you meant '%s'."
 msgstr ""
 
-#: help.c:376
+#: help.c:566
 #, c-format
 msgid "git: '%s' is not a git command. See 'git --help'."
 msgstr ""
 
-#: help.c:380
+#: help.c:570
 msgid ""
 "\n"
 "The most similar command is"
@@ -1845,16 +1992,16 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: help.c:395
+#: help.c:585
 msgid "git version [<options>]"
 msgstr ""
 
-#: help.c:462
+#: help.c:652
 #, c-format
 msgid "%s: %s - %s"
 msgstr ""
 
-#: help.c:466
+#: help.c:656
 msgid ""
 "\n"
 "Did you mean this?"
@@ -1907,18 +2054,17 @@ msgstr ""
 msgid "name consists only of disallowed characters: %s"
 msgstr ""
 
-#: ident.c:416 builtin/commit.c:616
+#: ident.c:416 builtin/commit.c:587
 #, c-format
 msgid "invalid date format: %s"
 msgstr ""
 
-#: list-objects-filter-options.c:30
-msgid "multiple object filter types cannot be combined"
+#: list-objects-filter-options.c:36
+msgid "multiple filter-specs cannot be combined"
 msgstr ""
 
-#: list-objects-filter-options.c:41 list-objects-filter-options.c:68
-#, c-format
-msgid "invalid filter-spec expression '%s'"
+#: list-objects-filter-options.c:126
+msgid "cannot change partial clone promisor remote"
 msgstr ""
 
 #: lockfile.c:151
@@ -1938,256 +2084,378 @@ msgstr ""
 msgid "Unable to create '%s.lock': %s"
 msgstr ""
 
-#: merge.c:41
+#: merge.c:71
 msgid "failed to read the cache"
 msgstr ""
 
-#: merge.c:95 builtin/am.c:1980 builtin/am.c:2014 builtin/checkout.c:379
-#: builtin/checkout.c:600 builtin/clone.c:754
+#: merge.c:136 builtin/am.c:1946 builtin/am.c:1980 builtin/checkout.c:378
+#: builtin/checkout.c:606 builtin/clone.c:761
 msgid "unable to write new index file"
 msgstr ""
 
-#: merge-recursive.c:235
+#: merge-recursive.c:298
 msgid "(bad commit)\n"
 msgstr ""
 
-#: merge-recursive.c:257 merge-recursive.c:265
+#: merge-recursive.c:320
+#, c-format
+msgid "add_cacheinfo failed for path '%s'; merge aborting."
+msgstr ""
+
+#: merge-recursive.c:328
 #, c-format
-msgid "addinfo_cache failed for path '%s'"
+msgid "add_cacheinfo failed to refresh for path '%s'; merge aborting."
 msgstr ""
 
-#: merge-recursive.c:329
+#: merge-recursive.c:410
 msgid "error building trees"
 msgstr ""
 
-#: merge-recursive.c:752
+#: merge-recursive.c:881
 #, c-format
 msgid "failed to create path '%s'%s"
 msgstr ""
 
-#: merge-recursive.c:763
+#: merge-recursive.c:892
 #, c-format
 msgid "Removing %s to make room for subdirectory\n"
 msgstr ""
 
-#: merge-recursive.c:777 merge-recursive.c:796
+#: merge-recursive.c:906 merge-recursive.c:925
 msgid ": perhaps a D/F conflict?"
 msgstr ""
 
-#: merge-recursive.c:786
+#: merge-recursive.c:915
 #, c-format
 msgid "refusing to lose untracked file at '%s'"
 msgstr ""
 
-#: merge-recursive.c:828 builtin/cat-file.c:37
+#: merge-recursive.c:957 builtin/cat-file.c:37
 #, c-format
 msgid "cannot read object %s '%s'"
 msgstr ""
 
-#: merge-recursive.c:830
+#: merge-recursive.c:959
 #, c-format
 msgid "blob expected for %s '%s'"
 msgstr ""
 
-#: merge-recursive.c:854
+#: merge-recursive.c:983
 #, c-format
 msgid "failed to open '%s': %s"
 msgstr ""
 
-#: merge-recursive.c:865
+#: merge-recursive.c:994
 #, c-format
 msgid "failed to symlink '%s': %s"
 msgstr ""
 
-#: merge-recursive.c:870
+#: merge-recursive.c:999
 #, c-format
 msgid "do not know what to do with %06o %s '%s'"
 msgstr ""
 
-#: merge-recursive.c:1010
+#: merge-recursive.c:1186
+#, c-format
+msgid "Failed to merge submodule %s (not checked out)"
+msgstr ""
+
+#: merge-recursive.c:1193
+#, c-format
+msgid "Failed to merge submodule %s (commits not present)"
+msgstr ""
+
+#: merge-recursive.c:1200
+#, c-format
+msgid "Failed to merge submodule %s (commits don't follow merge-base)"
+msgstr ""
+
+#: merge-recursive.c:1208 merge-recursive.c:1220
+#, c-format
+msgid "Fast-forwarding submodule %s to the following commit:"
+msgstr ""
+
+#: merge-recursive.c:1211 merge-recursive.c:1223
+#, c-format
+msgid "Fast-forwarding submodule %s"
+msgstr ""
+
+#: merge-recursive.c:1245
+#, c-format
+msgid "Failed to merge submodule %s (merge following commits not found)"
+msgstr ""
+
+#: merge-recursive.c:1249
+#, c-format
+msgid "Failed to merge submodule %s (not fast-forward)"
+msgstr ""
+
+#: merge-recursive.c:1250
+msgid "Found a possible merge resolution for the submodule:\n"
+msgstr ""
+
+#: merge-recursive.c:1253
+#, c-format
+msgid ""
+"If this is correct simply add it to the index for example\n"
+"by using:\n"
+"\n"
+"  git update-index --cacheinfo 160000 %s \"%s\"\n"
+"\n"
+"which will accept this suggestion.\n"
+msgstr ""
+
+#: merge-recursive.c:1262
+#, c-format
+msgid "Failed to merge submodule %s (multiple merges found)"
+msgstr ""
+
+#: merge-recursive.c:1321
 msgid "Failed to execute internal merge"
 msgstr ""
 
-#: merge-recursive.c:1014
+#: merge-recursive.c:1326
 #, c-format
 msgid "Unable to add %s to database"
 msgstr ""
 
-#: merge-recursive.c:1117
+#: merge-recursive.c:1358
+#, c-format
+msgid "Auto-merging %s"
+msgstr ""
+
+#: merge-recursive.c:1423
+#, c-format
+msgid "Error: Refusing to lose untracked file at %s; writing to %s instead."
+msgstr ""
+
+#: merge-recursive.c:1475
 #, 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:1122
+#: merge-recursive.c:1480
 #, 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:1129
+#: merge-recursive.c:1487
 #, 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:1134
+#: merge-recursive.c:1492
 #, 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:1168
+#: merge-recursive.c:1526
 msgid "rename"
 msgstr ""
 
-#: merge-recursive.c:1168
+#: merge-recursive.c:1526
 msgid "renamed"
 msgstr ""
 
-#: merge-recursive.c:1225
+#: merge-recursive.c:1580 merge-recursive.c:1736 merge-recursive.c:2368
+#: merge-recursive.c:3086
+#, c-format
+msgid "Refusing to lose dirty file at %s"
+msgstr ""
+
+#: merge-recursive.c:1594
 #, c-format
 msgid "%s is a directory in %s adding as %s instead"
 msgstr ""
 
-#: merge-recursive.c:1250
+#: merge-recursive.c:1599
+#, c-format
+msgid "Refusing to lose untracked file at %s; adding as %s instead"
+msgstr ""
+
+#: merge-recursive.c:1625
 #, c-format
 msgid ""
 "CONFLICT (rename/rename): Rename \"%s\"->\"%s\" in branch \"%s\" rename \"%s"
 "\"->\"%s\" in \"%s\"%s"
 msgstr ""
 
-#: merge-recursive.c:1255
+#: merge-recursive.c:1630
 msgid " (left unresolved)"
 msgstr ""
 
-#: merge-recursive.c:1317
+#: merge-recursive.c:1694
 #, c-format
 msgid "CONFLICT (rename/rename): Rename %s->%s in %s. Rename %s->%s in %s"
 msgstr ""
 
-#: merge-recursive.c:1350
+#: merge-recursive.c:1733
 #, c-format
 msgid "Renaming %s to %s and %s to %s instead"
 msgstr ""
 
-#: merge-recursive.c:1553
+#: merge-recursive.c:1745
+#, c-format
+msgid "Refusing to lose untracked file at %s, even though it's in the way."
+msgstr ""
+
+#: merge-recursive.c:1951
+#, c-format
+msgid ""
+"CONFLICT (directory rename split): Unclear where to place %s because "
+"directory %s was renamed to multiple other directories, with no destination "
+"getting a majority of the files."
+msgstr ""
+
+#: merge-recursive.c:1983
+#, 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:1993
+#, 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:2085
+#, c-format
+msgid ""
+"CONFLICT (rename/rename): Rename directory %s->%s in %s. Rename directory %s-"
+">%s in %s"
+msgstr ""
+
+#: merge-recursive.c:2330
+#, c-format
+msgid ""
+"WARNING: Avoiding applying %s -> %s rename to %s, because %s itself was "
+"renamed."
+msgstr ""
+
+#: merge-recursive.c:2736
 #, c-format
 msgid "CONFLICT (rename/add): Rename %s->%s in %s. %s added in %s"
 msgstr ""
 
-#: merge-recursive.c:1568
+#: merge-recursive.c:2751
 #, c-format
 msgid "Adding merged %s"
 msgstr ""
 
-#: merge-recursive.c:1575 merge-recursive.c:1805
+#: merge-recursive.c:2758 merge-recursive.c:3089
 #, c-format
 msgid "Adding as %s instead"
 msgstr ""
 
-#: merge-recursive.c:1632
+#: merge-recursive.c:2914
 #, c-format
 msgid "cannot read object %s"
 msgstr ""
 
-#: merge-recursive.c:1635
+#: merge-recursive.c:2917
 #, c-format
 msgid "object %s is not a blob"
 msgstr ""
 
-#: merge-recursive.c:1704
+#: merge-recursive.c:2986
 msgid "modify"
 msgstr ""
 
-#: merge-recursive.c:1704
+#: merge-recursive.c:2986
 msgid "modified"
 msgstr ""
 
-#: merge-recursive.c:1714
+#: merge-recursive.c:2997
 msgid "content"
 msgstr ""
 
-#: merge-recursive.c:1721
+#: merge-recursive.c:3004
 msgid "add/add"
 msgstr ""
 
-#: merge-recursive.c:1757
+#: merge-recursive.c:3046
 #, c-format
 msgid "Skipped %s (merged same as existing)"
 msgstr ""
 
-#: merge-recursive.c:1771
-#, c-format
-msgid "Auto-merging %s"
-msgstr ""
-
-#: merge-recursive.c:1775 git-submodule.sh:932
+#: merge-recursive.c:3055 git-submodule.sh:895
 msgid "submodule"
 msgstr ""
 
-#: merge-recursive.c:1776
+#: merge-recursive.c:3056
 #, c-format
 msgid "CONFLICT (%s): Merge conflict in %s"
 msgstr ""
 
-#: merge-recursive.c:1870
+#: merge-recursive.c:3178
 #, c-format
 msgid "Removing %s"
 msgstr ""
 
-#: merge-recursive.c:1896
+#: merge-recursive.c:3204
 msgid "file/directory"
 msgstr ""
 
-#: merge-recursive.c:1902
+#: merge-recursive.c:3210
 msgid "directory/file"
 msgstr ""
 
-#: merge-recursive.c:1909
+#: merge-recursive.c:3217
 #, c-format
 msgid "CONFLICT (%s): There is a directory with name %s in %s. Adding %s as %s"
 msgstr ""
 
-#: merge-recursive.c:1918
+#: merge-recursive.c:3226
 #, c-format
 msgid "Adding %s"
 msgstr ""
 
-#: merge-recursive.c:1955
+#: merge-recursive.c:3267
+#, c-format
+msgid "Dirty index: cannot merge (dirty: %s)"
+msgstr ""
+
+#: merge-recursive.c:3271
 msgid "Already up to date!"
 msgstr ""
 
-#: merge-recursive.c:1964
+#: merge-recursive.c:3280
 #, c-format
 msgid "merging of trees %s and %s failed"
 msgstr ""
 
-#: merge-recursive.c:2061
+#: merge-recursive.c:3379
 msgid "Merging:"
 msgstr ""
 
-#: merge-recursive.c:2074
+#: merge-recursive.c:3392
 #, c-format
 msgid "found %u common ancestor:"
 msgid_plural "found %u common ancestors:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: merge-recursive.c:2113
+#: merge-recursive.c:3431
 msgid "merge returned no commit"
 msgstr ""
 
-#: merge-recursive.c:2176
+#: merge-recursive.c:3495
 #, c-format
 msgid "Could not parse object '%s'"
 msgstr ""
 
-#: merge-recursive.c:2190 builtin/merge.c:656 builtin/merge.c:815
+#: merge-recursive.c:3511 builtin/merge.c:659 builtin/merge.c:816
 msgid "Unable to write index."
 msgstr ""
 
@@ -2204,16 +2472,16 @@ msgstr ""
 msgid "You have not concluded your notes merge (%s exists)."
 msgstr ""
 
-#: notes-utils.c:42
+#: notes-utils.c:43
 msgid "Cannot commit uninitialized/unreferenced notes tree"
 msgstr ""
 
-#: notes-utils.c:101
+#: notes-utils.c:102
 #, c-format
 msgid "Bad notes.rewriteMode value: '%s'"
 msgstr ""
 
-#: notes-utils.c:111
+#: notes-utils.c:112
 #, c-format
 msgid "Refusing to rewrite notes in %s (outside of refs/notes/)"
 msgstr ""
@@ -2222,35 +2490,35 @@ msgstr ""
 #. the environment variable, the second %s is
 #. its value.
 #.
-#: notes-utils.c:141
+#: notes-utils.c:142
 #, c-format
 msgid "Bad %s value: '%s'"
 msgstr ""
 
-#: object.c:239
+#: object.c:242
 #, c-format
 msgid "unable to parse object: %s"
 msgstr ""
 
-#: packfile.c:556
+#: packfile.c:563
 msgid "offset before end of packfile (broken .idx?)"
 msgstr ""
 
-#: packfile.c:1683
+#: packfile.c:1742
 #, c-format
 msgid "offset before start of pack index for %s (corrupt index?)"
 msgstr ""
 
-#: packfile.c:1687
+#: packfile.c:1746
 #, c-format
 msgid "offset beyond end of pack index for %s (truncated index?)"
 msgstr ""
 
-#: parse-options.c:573
+#: parse-options.c:621
 msgid "..."
 msgstr ""
 
-#: parse-options.c:592
+#: parse-options.c:640
 #, c-format
 msgid "usage: %s"
 msgstr ""
@@ -2258,26 +2526,31 @@ msgstr ""
 #. TRANSLATORS: the colon here should align with the
 #. one in "usage: %s" translation.
 #.
-#: parse-options.c:598
+#: parse-options.c:646
 #, c-format
 msgid "   or: %s"
 msgstr ""
 
-#: parse-options.c:601
+#: parse-options.c:649
 #, c-format
 msgid "    %s"
 msgstr ""
 
-#: parse-options.c:640
+#: parse-options.c:688
 msgid "-NUM"
 msgstr ""
 
-#: parse-options-cb.c:108
+#: parse-options-cb.c:44
+#, c-format
+msgid "malformed expiration date '%s'"
+msgstr ""
+
+#: parse-options-cb.c:112
 #, c-format
 msgid "malformed object name '%s'"
 msgstr ""
 
-#: path.c:891
+#: path.c:892
 #, c-format
 msgid "Could not make %s writable by group"
 msgstr ""
@@ -2357,66 +2630,67 @@ msgstr ""
 msgid "unable to parse --pretty format"
 msgstr ""
 
-#: read-cache.c:1472
+#: read-cache.c:1500
 #, c-format
 msgid ""
 "index.version set, but the value is invalid.\n"
 "Using version %i"
 msgstr ""
 
-#: read-cache.c:1482
+#: read-cache.c:1510
 #, c-format
 msgid ""
 "GIT_INDEX_VERSION set, but the value is invalid.\n"
 "Using version %i"
 msgstr ""
 
-#: read-cache.c:2370 sequencer.c:2725 wrapper.c:658 builtin/merge.c:1048
+#: read-cache.c:2404 sequencer.c:4338 wrapper.c:658 builtin/merge.c:1048
 #, c-format
 msgid "could not close '%s'"
 msgstr ""
 
-#: read-cache.c:2442 sequencer.c:1366 sequencer.c:2093
+#: read-cache.c:2477 sequencer.c:2102 sequencer.c:3234
 #, c-format
 msgid "could not stat '%s'"
 msgstr ""
 
-#: read-cache.c:2455
+#: read-cache.c:2490
 #, c-format
 msgid "unable to open git dir: %s"
 msgstr ""
 
-#: read-cache.c:2467
+#: read-cache.c:2502
 #, c-format
 msgid "unable to unlink: %s"
 msgstr ""
 
-#: refs.c:706
+#: refs.c:732 sequencer.c:4334 sequencer.c:4393 wrapper.c:225 wrapper.c:395
+#: builtin/am.c:779
 #, c-format
-msgid "Could not open '%s' for writing"
+msgid "could not open '%s' for writing"
 msgstr ""
 
-#: refs.c:1850
+#: refs.c:1880
 msgid "ref updates forbidden inside quarantine environment"
 msgstr ""
 
-#: refs/files-backend.c:1189
+#: refs/files-backend.c:1191
 #, c-format
 msgid "could not remove reference %s"
 msgstr ""
 
-#: refs/files-backend.c:1203 refs/packed-backend.c:1524
-#: refs/packed-backend.c:1534
+#: refs/files-backend.c:1205 refs/packed-backend.c:1531
+#: refs/packed-backend.c:1541
 #, c-format
 msgid "could not delete reference %s: %s"
 msgstr ""
 
-#: refs/files-backend.c:1206 refs/packed-backend.c:1537
+#: refs/files-backend.c:1208 refs/packed-backend.c:1544
 #, c-format
 msgid "could not delete references: %s"
 msgstr ""
 
-#: ref-filter.c:35 wt-status.c:1816
+#: ref-filter.c:35 wt-status.c:1850
 msgid "gone"
 msgstr ""
 
@@ -2435,157 +2709,162 @@ msgstr ""
 msgid "ahead %d, behind %d"
 msgstr ""
 
-#: ref-filter.c:107
+#: ref-filter.c:121
 #, c-format
 msgid "expected format: %%(color:<color>)"
 msgstr ""
 
-#: ref-filter.c:109
+#: ref-filter.c:123
 #, c-format
 msgid "unrecognized color: %%(color:%s)"
 msgstr ""
 
-#: ref-filter.c:129
+#: ref-filter.c:145
 #, c-format
 msgid "Integer value expected refname:lstrip=%s"
 msgstr ""
 
-#: ref-filter.c:133
+#: ref-filter.c:149
 #, c-format
 msgid "Integer value expected refname:rstrip=%s"
 msgstr ""
 
-#: ref-filter.c:135
+#: ref-filter.c:151
 #, c-format
 msgid "unrecognized %%(%s) argument: %s"
 msgstr ""
 
-#: ref-filter.c:184
+#: ref-filter.c:206
 #, c-format
 msgid "%%(body) does not take arguments"
 msgstr ""
 
-#: ref-filter.c:191
+#: ref-filter.c:215
 #, c-format
 msgid "%%(subject) does not take arguments"
 msgstr ""
 
-#: ref-filter.c:209
+#: ref-filter.c:235
 #, c-format
 msgid "unknown %%(trailers) argument: %s"
 msgstr ""
 
-#: ref-filter.c:232
+#: ref-filter.c:264
 #, c-format
 msgid "positive value expected contents:lines=%s"
 msgstr ""
 
-#: ref-filter.c:234
+#: ref-filter.c:266
 #, c-format
 msgid "unrecognized %%(contents) argument: %s"
 msgstr ""
 
-#: ref-filter.c:247
+#: ref-filter.c:281
 #, c-format
 msgid "positive value expected objectname:short=%s"
 msgstr ""
 
-#: ref-filter.c:251
+#: ref-filter.c:285
 #, c-format
 msgid "unrecognized %%(objectname) argument: %s"
 msgstr ""
 
-#: ref-filter.c:278
+#: ref-filter.c:315
 #, c-format
 msgid "expected format: %%(align:<width>,<position>)"
 msgstr ""
 
-#: ref-filter.c:290
+#: ref-filter.c:327
 #, c-format
 msgid "unrecognized position:%s"
 msgstr ""
 
-#: ref-filter.c:294
+#: ref-filter.c:334
 #, c-format
 msgid "unrecognized width:%s"
 msgstr ""
 
-#: ref-filter.c:300
+#: ref-filter.c:343
 #, c-format
 msgid "unrecognized %%(align) argument: %s"
 msgstr ""
 
-#: ref-filter.c:304
+#: ref-filter.c:351
 #, c-format
 msgid "positive width expected with the %%(align) atom"
 msgstr ""
 
-#: ref-filter.c:319
+#: ref-filter.c:369
 #, c-format
 msgid "unrecognized %%(if) argument: %s"
 msgstr ""
 
-#: ref-filter.c:409
+#: ref-filter.c:464
 #, c-format
 msgid "malformed field name: %.*s"
 msgstr ""
 
-#: ref-filter.c:435
+#: ref-filter.c:491
 #, c-format
 msgid "unknown field name: %.*s"
 msgstr ""
 
-#: ref-filter.c:547
+#: ref-filter.c:608
 #, c-format
 msgid "format: %%(if) atom used without a %%(then) atom"
 msgstr ""
 
-#: ref-filter.c:607
+#: ref-filter.c:671
 #, c-format
 msgid "format: %%(then) atom used without an %%(if) atom"
 msgstr ""
 
-#: ref-filter.c:609
+#: ref-filter.c:673
 #, c-format
 msgid "format: %%(then) atom used more than once"
 msgstr ""
 
-#: ref-filter.c:611
+#: ref-filter.c:675
 #, c-format
 msgid "format: %%(then) atom used after %%(else)"
 msgstr ""
 
-#: ref-filter.c:637
+#: ref-filter.c:703
 #, c-format
 msgid "format: %%(else) atom used without an %%(if) atom"
 msgstr ""
 
-#: ref-filter.c:639
+#: ref-filter.c:705
 #, c-format
 msgid "format: %%(else) atom used without a %%(then) atom"
 msgstr ""
 
-#: ref-filter.c:641
+#: ref-filter.c:707
 #, c-format
 msgid "format: %%(else) atom used more than once"
 msgstr ""
 
-#: ref-filter.c:654
+#: ref-filter.c:722
 #, c-format
 msgid "format: %%(end) atom used without corresponding atom"
 msgstr ""
 
-#: ref-filter.c:709
+#: ref-filter.c:779
 #, c-format
 msgid "malformed format string %s"
 msgstr ""
 
-#: ref-filter.c:1313
+#: ref-filter.c:1387
 #, c-format
 msgid "(no branch, rebasing %s)"
 msgstr ""
 
-#: ref-filter.c:1316
+#: ref-filter.c:1390
+#, c-format
+msgid "(no branch, rebasing detached HEAD %s)"
+msgstr ""
+
+#: ref-filter.c:1393
 #, c-format
 msgid "(no branch, bisect started on %s)"
 msgstr ""
@@ -2593,7 +2872,7 @@ msgstr ""
 #. TRANSLATORS: make sure this matches "HEAD
 #. detached at " in wt-status.c
 #.
-#: ref-filter.c:1324
+#: ref-filter.c:1401
 #, c-format
 msgid "(HEAD detached at %s)"
 msgstr ""
@@ -2601,137 +2880,147 @@ msgstr ""
 #. TRANSLATORS: make sure this matches "HEAD
 #. detached from " in wt-status.c
 #.
-#: ref-filter.c:1331
+#: ref-filter.c:1408
 #, c-format
 msgid "(HEAD detached from %s)"
 msgstr ""
 
-#: ref-filter.c:1335
+#: ref-filter.c:1412
 msgid "(no branch)"
 msgstr ""
 
-#: ref-filter.c:1488 ref-filter.c:1519
+#: ref-filter.c:1442
 #, c-format
 msgid "missing object %s for %s"
 msgstr ""
 
-#: ref-filter.c:1491 ref-filter.c:1522
+#: ref-filter.c:1445
 #, c-format
 msgid "parse_object_buffer failed on %s for %s"
 msgstr ""
 
-#: ref-filter.c:1822
+#: ref-filter.c:1902
 #, c-format
 msgid "malformed object at '%s'"
 msgstr ""
 
-#: ref-filter.c:1889
+#: ref-filter.c:1984
 #, c-format
 msgid "ignoring ref with broken name %s"
 msgstr ""
 
-#: ref-filter.c:1894
+#: ref-filter.c:1989
 #, c-format
 msgid "ignoring broken ref %s"
 msgstr ""
 
-#: ref-filter.c:2156
+#: ref-filter.c:2261
 #, c-format
 msgid "format: %%(end) atom missing"
 msgstr ""
 
-#: ref-filter.c:2250
+#: ref-filter.c:2365
 #, c-format
 msgid "malformed object name %s"
 msgstr ""
 
-#: remote.c:780
+#: remote.c:605
 #, c-format
 msgid "Cannot fetch both %s and %s to %s"
 msgstr ""
 
-#: remote.c:784
+#: remote.c:609
 #, c-format
 msgid "%s usually tracks %s, not %s"
 msgstr ""
 
-#: remote.c:788
+#: remote.c:613
 #, c-format
 msgid "%s tracks both %s and %s"
 msgstr ""
 
-#: remote.c:796
+#: remote.c:621
 msgid "Internal error"
 msgstr ""
 
-#: remote.c:1711 remote.c:1813
+#: remote.c:1534 remote.c:1635
 msgid "HEAD does not point to a branch"
 msgstr ""
 
-#: remote.c:1720
+#: remote.c:1543
 #, c-format
 msgid "no such branch: '%s'"
 msgstr ""
 
-#: remote.c:1723
+#: remote.c:1546
 #, c-format
 msgid "no upstream configured for branch '%s'"
 msgstr ""
 
-#: remote.c:1729
+#: remote.c:1552
 #, c-format
 msgid "upstream branch '%s' not stored as a remote-tracking branch"
 msgstr ""
 
-#: remote.c:1744
+#: remote.c:1567
 #, c-format
 msgid "push destination '%s' on remote '%s' has no local tracking branch"
 msgstr ""
 
-#: remote.c:1756
+#: remote.c:1579
 #, c-format
 msgid "branch '%s' has no remote for pushing"
 msgstr ""
 
-#: remote.c:1767
+#: remote.c:1589
 #, c-format
 msgid "push refspecs for '%s' do not include '%s'"
 msgstr ""
 
-#: remote.c:1780
+#: remote.c:1602
 msgid "push has no destination (push.default is 'nothing')"
 msgstr ""
 
-#: remote.c:1802
+#: remote.c:1624
 msgid "cannot resolve 'simple' push to a single destination"
 msgstr ""
 
-#: remote.c:2106
+#: remote.c:1939
 #, c-format
 msgid "Your branch is based on '%s', but the upstream is gone.\n"
 msgstr ""
 
-#: remote.c:2110
+#: remote.c:1943
 msgid "  (use \"git branch --unset-upstream\" to fixup)\n"
 msgstr ""
 
-#: remote.c:2113
+#: remote.c:1946
 #, c-format
 msgid "Your branch is up to date with '%s'.\n"
 msgstr ""
 
-#: remote.c:2117
+#: remote.c:1950
+#, c-format
+msgid "Your branch and '%s' refer to different commits.\n"
+msgstr ""
+
+#: remote.c:1953
+#, c-format
+msgid "  (use \"%s\" for details)\n"
+msgstr ""
+
+#: remote.c:1957
 #, 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:2123
+#: remote.c:1963
 msgid "  (use \"git push\" to publish your local commits)\n"
 msgstr ""
 
-#: remote.c:2126
+#: remote.c:1966
 #, c-format
 msgid "Your branch is behind '%s' by %d commit, and can be fast-forwarded.\n"
 msgid_plural ""
@@ -2739,11 +3028,11 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: remote.c:2134
+#: remote.c:1974
 msgid "  (use \"git pull\" to update your local branch)\n"
 msgstr ""
 
-#: remote.c:2137
+#: remote.c:1977
 #, c-format
 msgid ""
 "Your branch and '%s' have diverged,\n"
@@ -2754,133 +3043,149 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: remote.c:2147
+#: remote.c:1987
 msgid "  (use \"git pull\" to merge the remote branch into yours)\n"
 msgstr ""
 
-#: revision.c:2268
+#: revision.c:2289
 msgid "your current branch appears to be broken"
 msgstr ""
 
-#: revision.c:2271
+#: revision.c:2292
 #, c-format
 msgid "your current branch '%s' does not have any commits yet"
 msgstr ""
 
-#: revision.c:2465
+#: revision.c:2489
 msgid "--first-parent is incompatible with --bisect"
 msgstr ""
 
-#: run-command.c:645
+#: run-command.c:728
 msgid "open /dev/null failed"
 msgstr ""
 
-#: run-command.c:1188
+#: run-command.c:1271
 #, 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:151
+#: send-pack.c:141
+msgid "unexpected flush packet while reading remote unpack status"
+msgstr ""
+
+#: send-pack.c:143
 #, c-format
 msgid "unable to parse remote unpack status: %s"
 msgstr ""
 
-#: send-pack.c:153
+#: send-pack.c:145
 #, c-format
 msgid "remote unpack failed: %s"
 msgstr ""
 
-#: send-pack.c:316
+#: send-pack.c:308
 msgid "failed to sign the push certificate"
 msgstr ""
 
-#: send-pack.c:429
+#: send-pack.c:421
 msgid "the receiving end does not support --signed push"
 msgstr ""
 
-#: send-pack.c:431
+#: send-pack.c:423
 msgid ""
 "not sending a push certificate since the receiving end does not support --"
 "signed push"
 msgstr ""
 
-#: send-pack.c:443
+#: send-pack.c:435
 msgid "the receiving end does not support --atomic push"
 msgstr ""
 
-#: send-pack.c:448
+#: send-pack.c:440
 msgid "the receiving end does not support push options"
 msgstr ""
 
-#: sequencer.c:218
+#: sequencer.c:175
+#, c-format
+msgid "invalid commit message cleanup mode '%s'"
+msgstr ""
+
+#: sequencer.c:275
+#, c-format
+msgid "could not delete '%s'"
+msgstr ""
+
+#: sequencer.c:301
 msgid "revert"
 msgstr ""
 
-#: sequencer.c:220
+#: sequencer.c:303
 msgid "cherry-pick"
 msgstr ""
 
-#: sequencer.c:222
+#: sequencer.c:305
 msgid "rebase -i"
 msgstr ""
 
-#: sequencer.c:224
+#: sequencer.c:307
 #, c-format
 msgid "Unknown action: %d"
 msgstr ""
 
-#: sequencer.c:281
+#: sequencer.c:364
 msgid ""
 "after resolving the conflicts, mark the corrected paths\n"
 "with 'git add <paths>' or 'git rm <paths>'"
 msgstr ""
 
-#: sequencer.c:284
+#: sequencer.c:367
 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:297 sequencer.c:1715
+#: sequencer.c:380 sequencer.c:2468
 #, c-format
 msgid "could not lock '%s'"
 msgstr ""
 
-#: sequencer.c:300 sequencer.c:1592 sequencer.c:1720 sequencer.c:1734
-#: sequencer.c:2723 sequencer.c:2794 wrapper.c:656
+#: sequencer.c:382 sequencer.c:2346 sequencer.c:2472 sequencer.c:2486
+#: sequencer.c:2694 sequencer.c:4336 sequencer.c:4399 wrapper.c:656
 #, c-format
 msgid "could not write to '%s'"
 msgstr ""
 
-#: sequencer.c:304
+#: sequencer.c:387
 #, c-format
 msgid "could not write eol to '%s'"
 msgstr ""
 
-#: sequencer.c:308 sequencer.c:1597 sequencer.c:1722
+#: sequencer.c:392 sequencer.c:2351 sequencer.c:2474 sequencer.c:2488
+#: sequencer.c:2702
 #, c-format
-msgid "failed to finalize '%s'."
+msgid "failed to finalize '%s'"
 msgstr ""
 
-#: sequencer.c:332 sequencer.c:829 sequencer.c:1618 builtin/am.c:259
-#: builtin/commit.c:754 builtin/merge.c:1046
+#: sequencer.c:415 sequencer.c:804 sequencer.c:1493 sequencer.c:2371
+#: sequencer.c:2684 sequencer.c:2788 builtin/am.c:259 builtin/commit.c:727
+#: builtin/merge.c:1046
 #, c-format
 msgid "could not read '%s'"
 msgstr ""
 
-#: sequencer.c:358
+#: sequencer.c:441
 #, c-format
 msgid "your local changes would be overwritten by %s."
 msgstr ""
 
-#: sequencer.c:362
+#: sequencer.c:445
 msgid "commit your changes or stash them to proceed."
 msgstr ""
 
-#: sequencer.c:391
+#: sequencer.c:474
 #, c-format
 msgid "%s: fast-forward"
 msgstr ""
@@ -2888,20 +3193,20 @@ msgstr ""
 #. TRANSLATORS: %s will be "revert", "cherry-pick" or
 #. "rebase -i".
 #.
-#: sequencer.c:477
+#: sequencer.c:563
 #, c-format
 msgid "%s: Unable to write new index file"
 msgstr ""
 
-#: sequencer.c:496
-msgid "could not resolve HEAD commit\n"
+#: sequencer.c:579
+msgid "unable to update cache tree"
 msgstr ""
 
-#: sequencer.c:516
-msgid "unable to update cache tree\n"
+#: sequencer.c:592
+msgid "could not resolve HEAD commit"
 msgstr ""
 
-#: sequencer.c:600
+#: sequencer.c:749
 #, c-format
 msgid ""
 "you have staged changes in your working tree\n"
@@ -2918,256 +3223,350 @@ msgid ""
 "  git rebase --continue\n"
 msgstr ""
 
-#: sequencer.c:702
-#, c-format
-msgid "could not parse commit %s\n"
+#: sequencer.c:818
+msgid "writing root commit"
 msgstr ""
 
-#: sequencer.c:707
-#, c-format
-msgid "could not parse parent commit %s\n"
+#: sequencer.c:1043
+msgid "'prepare-commit-msg' hook failed"
 msgstr ""
 
-#: sequencer.c:836
-#, c-format
+#: sequencer.c:1050
 msgid ""
-"unexpected 1st line of squash message:\n"
+"Your name and email address were configured automatically based\n"
+"on your username and hostname. Please check that they are accurate.\n"
+"You can suppress this message by setting them explicitly. Run the\n"
+"following command and follow the instructions in your editor to edit\n"
+"your configuration file:\n"
+"\n"
+"    git config --global --edit\n"
+"\n"
+"After doing this, you may fix the identity used for this commit with:\n"
 "\n"
-"\t%.*s"
+"    git commit --amend --reset-author\n"
 msgstr ""
 
-#: sequencer.c:842
-#, c-format
+#: sequencer.c:1063
 msgid ""
-"invalid 1st line of squash message:\n"
+"Your name and email address were configured automatically based\n"
+"on your username and hostname. Please check that they are accurate.\n"
+"You can suppress this message by setting them explicitly:\n"
 "\n"
-"\t%.*s"
+"    git config --global user.name \"Your Name\"\n"
+"    git config --global user.email you@example.com\n"
+"\n"
+"After doing this, you may fix the identity used for this commit with:\n"
+"\n"
+"    git commit --amend --reset-author\n"
 msgstr ""
 
-#: sequencer.c:848 sequencer.c:873
-#, c-format
-msgid "This is a combination of %d commits."
+#: sequencer.c:1103
+msgid "couldn't look up newly created commit"
 msgstr ""
 
-#: sequencer.c:857 sequencer.c:2742
-msgid "need a HEAD to fixup"
+#: sequencer.c:1105
+msgid "could not parse newly created commit"
 msgstr ""
 
-#: sequencer.c:859
-msgid "could not read HEAD"
+#: sequencer.c:1151
+msgid "unable to resolve HEAD after creating commit"
 msgstr ""
 
-#: sequencer.c:861
-msgid "could not read HEAD's commit message"
+#: sequencer.c:1153
+msgid "detached HEAD"
 msgstr ""
 
-#: sequencer.c:867
-#, c-format
-msgid "cannot write '%s'"
+#: sequencer.c:1157
+msgid " (root-commit)"
 msgstr ""
 
-#: sequencer.c:876 git-rebase--interactive.sh:446
-msgid "This is the 1st commit message:"
+#: sequencer.c:1178
+msgid "could not parse HEAD"
 msgstr ""
 
-#: sequencer.c:884
+#: sequencer.c:1180
 #, c-format
-msgid "could not read commit message of %s"
+msgid "HEAD %s is not a commit!"
 msgstr ""
 
-#: sequencer.c:891
-#, c-format
-msgid "This is the commit message #%d:"
+#: sequencer.c:1184 builtin/commit.c:1528
+msgid "could not parse HEAD commit"
 msgstr ""
 
-#: sequencer.c:896
-#, c-format
+#: sequencer.c:1235 sequencer.c:1832
+msgid "unable to parse commit author"
+msgstr ""
+
+#: sequencer.c:1245 builtin/am.c:1630 builtin/merge.c:645
+msgid "git write-tree failed to write a tree"
+msgstr ""
+
+#: sequencer.c:1262 sequencer.c:1317
+#, c-format
+msgid "unable to read commit message from '%s'"
+msgstr ""
+
+#: sequencer.c:1284 builtin/am.c:1650 builtin/commit.c:1631 builtin/merge.c:825
+#: builtin/merge.c:850
+msgid "failed to write commit object"
+msgstr ""
+
+#: sequencer.c:1344
+#, c-format
+msgid "could not parse commit %s"
+msgstr ""
+
+#: sequencer.c:1349
+#, c-format
+msgid "could not parse parent commit %s"
+msgstr ""
+
+#: sequencer.c:1500 sequencer.c:1525
+#, c-format
+msgid "This is a combination of %d commits."
+msgstr ""
+
+#: sequencer.c:1510 sequencer.c:4355
+msgid "need a HEAD to fixup"
+msgstr ""
+
+#: sequencer.c:1512 sequencer.c:2729
+msgid "could not read HEAD"
+msgstr ""
+
+#: sequencer.c:1514
+msgid "could not read HEAD's commit message"
+msgstr ""
+
+#: sequencer.c:1520
+#, c-format
+msgid "cannot write '%s'"
+msgstr ""
+
+#: sequencer.c:1527 git-rebase--interactive.sh:457
+msgid "This is the 1st commit message:"
+msgstr ""
+
+#: sequencer.c:1535
+#, c-format
+msgid "could not read commit message of %s"
+msgstr ""
+
+#: sequencer.c:1542
+#, c-format
+msgid "This is the commit message #%d:"
+msgstr ""
+
+#: sequencer.c:1548
+#, c-format
 msgid "The commit message #%d will be skipped:"
 msgstr ""
 
-#: sequencer.c:901
+#: sequencer.c:1553
 #, c-format
 msgid "unknown command: %d"
 msgstr ""
 
-#: sequencer.c:967
+#: sequencer.c:1631
 msgid "your index file is unmerged."
 msgstr ""
 
-#: sequencer.c:986
+#: sequencer.c:1638
+msgid "cannot fixup root commit"
+msgstr ""
+
+#: sequencer.c:1657
 #, c-format
 msgid "commit %s is a merge but no -m option was given."
 msgstr ""
 
-#: sequencer.c:994
+#: sequencer.c:1665
 #, c-format
 msgid "commit %s does not have parent %d"
 msgstr ""
 
-#: sequencer.c:998
+#: sequencer.c:1669
 #, c-format
 msgid "mainline was specified but commit %s is not a merge."
 msgstr ""
 
-#: sequencer.c:1004
+#: sequencer.c:1675
 #, 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:1025
+#: sequencer.c:1694
 #, c-format
 msgid "%s: cannot parse parent commit %s"
 msgstr ""
 
-#: sequencer.c:1088 sequencer.c:1864
+#: sequencer.c:1759
 #, c-format
 msgid "could not rename '%s' to '%s'"
 msgstr ""
 
-#: sequencer.c:1139
+#: sequencer.c:1813
 #, c-format
 msgid "could not revert %s... %s"
 msgstr ""
 
-#: sequencer.c:1140
+#: sequencer.c:1814
 #, c-format
 msgid "could not apply %s... %s"
 msgstr ""
 
-#: sequencer.c:1182
+#: sequencer.c:1864
 msgid "empty commit set passed"
 msgstr ""
 
-#: sequencer.c:1192
+#: sequencer.c:1874
 #, c-format
 msgid "git %s: failed to read the index"
 msgstr ""
 
-#: sequencer.c:1198
+#: sequencer.c:1881
 #, c-format
 msgid "git %s: failed to refresh the index"
 msgstr ""
 
-#: sequencer.c:1319
+#: sequencer.c:1961
+#, c-format
+msgid "%s does not accept arguments: '%s'"
+msgstr ""
+
+#: sequencer.c:1970
+#, c-format
+msgid "missing arguments for %s"
+msgstr ""
+
+#: sequencer.c:2029
 #, c-format
 msgid "invalid line %d: %.*s"
 msgstr ""
 
-#: sequencer.c:1327
+#: sequencer.c:2037
 #, c-format
 msgid "cannot '%s' without a previous commit"
 msgstr ""
 
-#: sequencer.c:1360 sequencer.c:2522 sequencer.c:2557 sequencer.c:2636
-#: sequencer.c:2662 sequencer.c:2752 sequencer.c:2853
+#: sequencer.c:2085 sequencer.c:4138 sequencer.c:4173
 #, c-format
 msgid "could not read '%s'."
 msgstr ""
 
-#: sequencer.c:1372
+#: sequencer.c:2108
 msgid "please fix this using 'git rebase --edit-todo'."
 msgstr ""
 
-#: sequencer.c:1374
+#: sequencer.c:2110
 #, c-format
 msgid "unusable instruction sheet: '%s'"
 msgstr ""
 
-#: sequencer.c:1379
+#: sequencer.c:2115
 msgid "no commits parsed."
 msgstr ""
 
-#: sequencer.c:1390
+#: sequencer.c:2126
 msgid "cannot cherry-pick during a revert."
 msgstr ""
 
-#: sequencer.c:1392
+#: sequencer.c:2128
 msgid "cannot revert during a cherry-pick."
 msgstr ""
 
-#: sequencer.c:1459
+#: sequencer.c:2195
 #, c-format
 msgid "invalid key: %s"
 msgstr ""
 
-#: sequencer.c:1462
+#: sequencer.c:2198
 #, c-format
 msgid "invalid value for %s: %s"
 msgstr ""
 
-#: sequencer.c:1528
+#: sequencer.c:2269
+msgid "unusable squash-onto"
+msgstr ""
+
+#: sequencer.c:2285
 #, c-format
 msgid "malformed options sheet: '%s'"
 msgstr ""
 
-#: sequencer.c:1566
+#: sequencer.c:2323
 msgid "a cherry-pick or revert is already in progress"
 msgstr ""
 
-#: sequencer.c:1567
+#: sequencer.c:2324
 msgid "try \"git cherry-pick (--continue | --quit | --abort)\""
 msgstr ""
 
-#: sequencer.c:1570
+#: sequencer.c:2327
 #, c-format
 msgid "could not create sequencer directory '%s'"
 msgstr ""
 
-#: sequencer.c:1585
+#: sequencer.c:2341
 msgid "could not lock HEAD"
 msgstr ""
 
-#: sequencer.c:1643 sequencer.c:2227
+#: sequencer.c:2396 sequencer.c:3403
 msgid "no cherry-pick or revert in progress"
 msgstr ""
 
-#: sequencer.c:1645
+#: sequencer.c:2398
 msgid "cannot resolve HEAD"
 msgstr ""
 
-#: sequencer.c:1647 sequencer.c:1682
+#: sequencer.c:2400 sequencer.c:2435
 msgid "cannot abort from a branch yet to be born"
 msgstr ""
 
-#: sequencer.c:1668 builtin/grep.c:713
+#: sequencer.c:2421 builtin/grep.c:720
 #, c-format
 msgid "cannot open '%s'"
 msgstr ""
 
-#: sequencer.c:1670
+#: sequencer.c:2423
 #, c-format
 msgid "cannot read '%s': %s"
 msgstr ""
 
-#: sequencer.c:1671
+#: sequencer.c:2424
 msgid "unexpected end of file"
 msgstr ""
 
-#: sequencer.c:1677
+#: sequencer.c:2430
 #, c-format
 msgid "stored pre-cherry-pick HEAD file '%s' is corrupt"
 msgstr ""
 
-#: sequencer.c:1688
+#: sequencer.c:2441
 msgid "You seem to have moved HEAD. Not rewinding, check your HEAD!"
 msgstr ""
 
-#: sequencer.c:1829 sequencer.c:2125
+#: sequencer.c:2545 sequencer.c:3321
+#, c-format
+msgid "could not update %s"
+msgstr ""
+
+#: sequencer.c:2583 sequencer.c:3301
 msgid "cannot read HEAD"
 msgstr ""
 
-#: sequencer.c:1869 builtin/difftool.c:639
+#: sequencer.c:2618 sequencer.c:2622 builtin/difftool.c:639
 #, c-format
 msgid "could not copy '%s' to '%s'"
 msgstr ""
 
-#: sequencer.c:1888
+#: sequencer.c:2641
 msgid "could not read index"
 msgstr ""
 
-#: sequencer.c:1893
+#: sequencer.c:2646
 #, c-format
 msgid ""
 "execution failed: %s\n"
@@ -3177,11 +3576,11 @@ msgid ""
 "\n"
 msgstr ""
 
-#: sequencer.c:1899
+#: sequencer.c:2652
 msgid "and made changes to the index and/or the working tree\n"
 msgstr ""
 
-#: sequencer.c:1905
+#: sequencer.c:2658
 #, c-format
 msgid ""
 "execution succeeded: %s\n"
@@ -3192,17 +3591,62 @@ msgid ""
 "\n"
 msgstr ""
 
-#: sequencer.c:1964
+#: sequencer.c:2771
+msgid "writing fake root commit"
+msgstr ""
+
+#: sequencer.c:2776
+msgid "writing squash-onto"
+msgstr ""
+
+#: sequencer.c:2811
+#, c-format
+msgid "failed to find tree of %s"
+msgstr ""
+
+#: sequencer.c:2829
+msgid "could not write index"
+msgstr ""
+
+#: sequencer.c:2861
+msgid "cannot merge without a current revision"
+msgstr ""
+
+#: sequencer.c:2884
+#, c-format
+msgid "could not resolve '%s'"
+msgstr ""
+
+#: sequencer.c:2906
+#, c-format
+msgid "could not get commit message of '%s'"
+msgstr ""
+
+#: sequencer.c:2916 sequencer.c:2941
+#, c-format
+msgid "could not write '%s'"
+msgstr ""
+
+#: sequencer.c:3005
+#, c-format
+msgid "could not even attempt to merge '%.*s'"
+msgstr ""
+
+#: sequencer.c:3021
+msgid "merge: Unable to write new index file"
+msgstr ""
+
+#: sequencer.c:3088
 #, c-format
 msgid "Applied autostash.\n"
 msgstr ""
 
-#: sequencer.c:1976
+#: sequencer.c:3100
 #, c-format
 msgid "cannot store %s"
 msgstr ""
 
-#: sequencer.c:1979 git-rebase.sh:175
+#: sequencer.c:3103 git-rebase.sh:188
 #, c-format
 msgid ""
 "Applying autostash resulted in conflicts.\n"
@@ -3210,108 +3654,121 @@ msgid ""
 "You can run \"git stash pop\" or \"git stash drop\" at any time.\n"
 msgstr ""
 
-#: sequencer.c:2061
+#: sequencer.c:3134
+#, c-format
+msgid ""
+"Could not execute the todo command\n"
+"\n"
+"    %.*s\n"
+"It has been rescheduled; To edit the command before continuing, please\n"
+"edit the todo list first:\n"
+"\n"
+"    git rebase --edit-todo\n"
+"    git rebase --continue\n"
+msgstr ""
+
+#: sequencer.c:3202
 #, c-format
 msgid "Stopped at %s...  %.*s\n"
 msgstr ""
 
-#: sequencer.c:2103
+#: sequencer.c:3264
 #, c-format
 msgid "unknown command %d"
 msgstr ""
 
-#: sequencer.c:2133
+#: sequencer.c:3309
 msgid "could not read orig-head"
 msgstr ""
 
-#: sequencer.c:2138 sequencer.c:2739
+#: sequencer.c:3314 sequencer.c:4352
 msgid "could not read 'onto'"
 msgstr ""
 
-#: sequencer.c:2145
-#, c-format
-msgid "could not update %s"
-msgstr ""
-
-#: sequencer.c:2152
+#: sequencer.c:3328
 #, c-format
 msgid "could not update HEAD to %s"
 msgstr ""
 
-#: sequencer.c:2236
+#: sequencer.c:3414
 msgid "cannot rebase: You have unstaged changes."
 msgstr ""
 
-#: sequencer.c:2241
-msgid "could not remove CHERRY_PICK_HEAD"
-msgstr ""
-
-#: sequencer.c:2250
+#: sequencer.c:3423
 msgid "cannot amend non-existing commit"
 msgstr ""
 
-#: sequencer.c:2252
+#: sequencer.c:3425
 #, c-format
 msgid "invalid file: '%s'"
 msgstr ""
 
-#: sequencer.c:2254
+#: sequencer.c:3427
 #, c-format
 msgid "invalid contents: '%s'"
 msgstr ""
 
-#: sequencer.c:2257
+#: sequencer.c:3430
 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:2267
+#: sequencer.c:3455 sequencer.c:3493
+#, c-format
+msgid "could not write file: '%s'"
+msgstr ""
+
+#: sequencer.c:3508
+msgid "could not remove CHERRY_PICK_HEAD"
+msgstr ""
+
+#: sequencer.c:3515
 msgid "could not commit staged changes."
 msgstr ""
 
-#: sequencer.c:2347
+#: sequencer.c:3612
 #, c-format
 msgid "%s: can't cherry-pick a %s"
 msgstr ""
 
-#: sequencer.c:2351
+#: sequencer.c:3616
 #, c-format
 msgid "%s: bad revision"
 msgstr ""
 
-#: sequencer.c:2384
+#: sequencer.c:3649
 msgid "can't revert as initial commit"
 msgstr ""
 
-#: sequencer.c:2489
+#: sequencer.c:4098
 msgid "make_script: unhandled options"
 msgstr ""
 
-#: sequencer.c:2492
+#: sequencer.c:4101
 msgid "make_script: error preparing revisions"
 msgstr ""
 
-#: sequencer.c:2526 sequencer.c:2561
+#: sequencer.c:4142 sequencer.c:4177
 #, c-format
 msgid "unusable todo list: '%s'"
 msgstr ""
 
-#: sequencer.c:2609
+#: sequencer.c:4236
 #, c-format
 msgid ""
 "unrecognized setting %s for option rebase.missingCommitsCheck. Ignoring."
 msgstr ""
 
-#: sequencer.c:2689
+#: sequencer.c:4302
 #, c-format
 msgid ""
 "Warning: some commits may have been dropped accidentally.\n"
 "Dropped commits (newer to older):\n"
 msgstr ""
 
-#: sequencer.c:2696
+#: sequencer.c:4309
 #, c-format
 msgid ""
 "To avoid this message, use \"drop\" to explicitly remove a commit.\n"
@@ -3322,7 +3779,7 @@ msgid ""
 "\n"
 msgstr ""
 
-#: sequencer.c:2708
+#: sequencer.c:4321
 #, c-format
 msgid ""
 "You can fix this with 'git rebase --edit-todo' and then run 'git rebase --"
@@ -3330,29 +3787,28 @@ msgid ""
 "Or you can abort the rebase with 'git rebase --abort'.\n"
 msgstr ""
 
-#: sequencer.c:2721 sequencer.c:2788 wrapper.c:225 wrapper.c:395
-#: builtin/am.c:779
-#, c-format
-msgid "could not open '%s' for writing"
-msgstr ""
-
-#: sequencer.c:2769
+#: sequencer.c:4375
 #, c-format
 msgid "could not parse commit '%s'"
 msgstr ""
 
-#: sequencer.c:2891
+#: sequencer.c:4490
 msgid "the script was already rearranged."
 msgstr ""
 
-#: setup.c:171
+#: setup.c:123
+#, c-format
+msgid "'%s' is outside repository"
+msgstr ""
+
+#: setup.c:172
 #, 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:184
+#: setup.c:185
 #, c-format
 msgid ""
 "ambiguous argument '%s': unknown revision or path not in the working tree.\n"
@@ -3360,7 +3816,12 @@ msgid ""
 "'git <command> [<revision>...] -- [<file>...]'"
 msgstr ""
 
-#: setup.c:252
+#: setup.c:234
+#, c-format
+msgid "option '%s' must come before non-option arguments"
+msgstr ""
+
+#: setup.c:253
 #, c-format
 msgid ""
 "ambiguous argument '%s': both revision and filename\n"
@@ -3368,82 +3829,152 @@ msgid ""
 "'git <command> [<revision>...] -- [<file>...]'"
 msgstr ""
 
-#: setup.c:501
+#: setup.c:389
+msgid "unable to set up work tree using invalid config"
+msgstr ""
+
+#: setup.c:393
+msgid "this operation must be run in a work tree"
+msgstr ""
+
+#: setup.c:503
 #, c-format
 msgid "Expected git repo version <= %d, found %d"
 msgstr ""
 
-#: setup.c:509
+#: setup.c:511
 msgid "unknown repository extensions found:"
 msgstr ""
 
-#: setup.c:811
+#: setup.c:530
 #, c-format
-msgid "Not a git repository (or any of the parent directories): %s"
+msgid "error opening '%s'"
 msgstr ""
 
-#: setup.c:813 builtin/index-pack.c:1653
-msgid "Cannot come back to cwd"
+#: setup.c:532
+#, c-format
+msgid "too large to be a .git file: '%s'"
+msgstr ""
+
+#: setup.c:534
+#, c-format
+msgid "error reading %s"
+msgstr ""
+
+#: setup.c:536
+#, c-format
+msgid "invalid gitfile format: %s"
+msgstr ""
+
+#: setup.c:538
+#, c-format
+msgid "no path in gitfile: %s"
+msgstr ""
+
+#: setup.c:540
+#, c-format
+msgid "not a git repository: %s"
+msgstr ""
+
+#: setup.c:639
+#, c-format
+msgid "'$%s' too big"
+msgstr ""
+
+#: setup.c:653
+#, c-format
+msgid "not a git repository: '%s'"
+msgstr ""
+
+#: setup.c:682 setup.c:684 setup.c:715
+#, c-format
+msgid "cannot chdir to '%s'"
 msgstr ""
 
-#: setup.c:1052
+#: setup.c:687 setup.c:743 setup.c:753 setup.c:792 setup.c:800 setup.c:815
+msgid "cannot come back to cwd"
+msgstr ""
+
+#: setup.c:813
+#, c-format
+msgid "not a git repository (or any of the parent directories): %s"
+msgstr ""
+
+#: setup.c:824
+#, c-format
+msgid "failed to stat '%*s%s%s'"
+msgstr ""
+
+#: setup.c:1054
 msgid "Unable to read current working directory"
 msgstr ""
 
-#: setup.c:1064 setup.c:1070
+#: setup.c:1066 setup.c:1072
 #, c-format
-msgid "Cannot change to '%s'"
+msgid "cannot change to '%s'"
 msgstr ""
 
-#: setup.c:1083
+#: setup.c:1085
 #, c-format
 msgid ""
-"Not a git repository (or any parent up to mount point %s)\n"
+"not a git repository (or any parent up to mount point %s)\n"
 "Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set)."
 msgstr ""
 
-#: setup.c:1167
+#: setup.c:1168
 #, c-format
 msgid ""
-"Problem with core.sharedRepository filemode value (0%.3o).\n"
+"problem with core.sharedRepository filemode value (0%.3o).\n"
 "The owner of files must always have read and write permissions."
 msgstr ""
 
-#: sha1_file.c:598
+#: setup.c:1211
+msgid "open /dev/null or dup failed"
+msgstr ""
+
+#: setup.c:1226
+msgid "fork failed"
+msgstr ""
+
+#: setup.c:1231
+msgid "setsid failed"
+msgstr ""
+
+#: sha1-file.c:625
 #, c-format
 msgid "path '%s' does not exist"
 msgstr ""
 
-#: sha1_file.c:624
+#: sha1-file.c:651
 #, c-format
 msgid "reference repository '%s' as a linked checkout is not supported yet."
 msgstr ""
 
-#: sha1_file.c:630
+#: sha1-file.c:657
 #, c-format
 msgid "reference repository '%s' is not a local repository."
 msgstr ""
 
-#: sha1_file.c:636
+#: sha1-file.c:663
 #, c-format
 msgid "reference repository '%s' is shallow"
 msgstr ""
 
-#: sha1_file.c:644
+#: sha1-file.c:671
 #, c-format
 msgid "reference repository '%s' is grafted"
 msgstr ""
 
-#: sha1_name.c:422
+#: sha1-name.c:442
 #, c-format
 msgid "short SHA1 %s is ambiguous"
 msgstr ""
 
-#: sha1_name.c:433
+#: sha1-name.c:453
 msgid "The candidates are:"
 msgstr ""
 
-#: sha1_name.c:693
+#: sha1-name.c:695
 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"
@@ -3456,86 +3987,86 @@ msgid ""
 "running \"git config advice.objectNameWarning false\""
 msgstr ""
 
-#: submodule.c:96 submodule.c:130
+#: submodule.c:97 submodule.c:131
 msgid "Cannot change unmerged .gitmodules, resolve merge conflicts first"
 msgstr ""
 
-#: submodule.c:100 submodule.c:134
+#: submodule.c:101 submodule.c:135
 #, c-format
 msgid "Could not find section in .gitmodules where path=%s"
 msgstr ""
 
-#: submodule.c:108
+#: submodule.c:109
 #, c-format
 msgid "Could not update .gitmodules entry %s"
 msgstr ""
 
-#: submodule.c:141
+#: submodule.c:142
 #, c-format
 msgid "Could not remove .gitmodules entry for %s"
 msgstr ""
 
-#: submodule.c:152
+#: submodule.c:153
 msgid "staging updated .gitmodules failed"
 msgstr ""
 
-#: submodule.c:312
+#: submodule.c:315
 #, c-format
 msgid "in unpopulated submodule '%s'"
 msgstr ""
 
-#: submodule.c:343
+#: submodule.c:346
 #, c-format
 msgid "Pathspec '%s' is in submodule '%.*s'"
 msgstr ""
 
-#: submodule.c:833
+#: submodule.c:837
 #, c-format
 msgid "submodule entry '%s' (%s) is a %s, not a commit"
 msgstr ""
 
-#: submodule.c:1065 builtin/branch.c:648 builtin/submodule--helper.c:1387
+#: submodule.c:1069 builtin/branch.c:651 builtin/submodule--helper.c:1743
 msgid "Failed to resolve HEAD as a valid ref."
 msgstr ""
 
-#: submodule.c:1370
+#: submodule.c:1375
 #, c-format
 msgid "'%s' not recognized as a git repository"
 msgstr ""
 
-#: submodule.c:1508
+#: submodule.c:1513
 #, c-format
 msgid "could not start 'git status' in submodule '%s'"
 msgstr ""
 
-#: submodule.c:1521
+#: submodule.c:1526
 #, c-format
 msgid "could not run 'git status' in submodule '%s'"
 msgstr ""
 
-#: submodule.c:1614
+#: submodule.c:1619
 #, c-format
 msgid "submodule '%s' has dirty index"
 msgstr ""
 
-#: submodule.c:1876
+#: submodule.c:1718
 #, c-format
 msgid ""
 "relocate_gitdir for submodule '%s' with more than one worktree not supported"
 msgstr ""
 
-#: submodule.c:1888 submodule.c:1944
+#: submodule.c:1730 submodule.c:1786
 #, c-format
 msgid "could not lookup name for submodule '%s'"
 msgstr ""
 
-#: submodule.c:1892 builtin/submodule--helper.c:909
-#: builtin/submodule--helper.c:919
+#: submodule.c:1734 builtin/submodule--helper.c:1261
+#: builtin/submodule--helper.c:1271
 #, c-format
 msgid "could not create directory '%s'"
 msgstr ""
 
-#: submodule.c:1895
+#: submodule.c:1737
 #, c-format
 msgid ""
 "Migrating git directory of '%s%s' from\n"
@@ -3543,29 +4074,30 @@ msgid ""
 "'%s'\n"
 msgstr ""
 
-#: submodule.c:1979
+#: submodule.c:1821
 #, c-format
 msgid "could not recurse into submodule '%s'"
 msgstr ""
 
-#: submodule.c:2023
+#: submodule.c:1865
 msgid "could not start ls-files in .."
 msgstr ""
 
-#: submodule.c:2043
-msgid "BUG: returned path string doesn't match cwd?"
+#: submodule.c:1904
+#, c-format
+msgid "ls-tree returned unexpected return code %d"
 msgstr ""
 
-#: submodule.c:2062
+#: submodule-config.c:230
 #, c-format
-msgid "ls-tree returned unexpected return code %d"
+msgid "ignoring suspicious submodule name: %s"
 msgstr ""
 
-#: submodule-config.c:263
+#: submodule-config.c:294
 msgid "negative values not allowed for submodule.fetchjobs"
 msgstr ""
 
-#: submodule-config.c:436
+#: submodule-config.c:467
 #, c-format
 msgid "invalid value for %s"
 msgstr ""
@@ -3581,7 +4113,7 @@ msgstr ""
 msgid "unknown value '%s' for key '%s'"
 msgstr ""
 
-#: trailer.c:539 trailer.c:544 builtin/remote.c:290
+#: trailer.c:539 trailer.c:544 builtin/remote.c:293
 #, c-format
 msgid "more than one %s"
 msgstr ""
@@ -3624,24 +4156,28 @@ msgstr ""
 msgid "could not rename temporary file to %s"
 msgstr ""
 
-#: transport.c:63
+#: transport.c:116
 #, c-format
 msgid "Would set upstream of '%s' to '%s' of '%s'\n"
 msgstr ""
 
-#: transport.c:152
+#: transport.c:208
 #, c-format
 msgid "transport: invalid depth option '%s'"
 msgstr ""
 
-#: transport.c:904
+#: transport.c:584
+msgid "could not parse transport.color.* config"
+msgstr ""
+
+#: transport.c:996
 #, c-format
 msgid ""
 "The following submodule paths contain changes that can\n"
 "not be found on any remote:\n"
 msgstr ""
 
-#: transport.c:908
+#: transport.c:1000
 #, c-format
 msgid ""
 "\n"
@@ -3657,11 +4193,11 @@ msgid ""
 "\n"
 msgstr ""
 
-#: transport.c:916
+#: transport.c:1008
 msgid "Aborting."
 msgstr ""
 
-#: transport-helper.c:1074
+#: transport-helper.c:1087
 #, c-format
 msgid "Could not read ref %s"
 msgstr ""
@@ -3678,102 +4214,102 @@ msgstr ""
 msgid "empty filename in tree entry"
 msgstr ""
 
-#: tree-walk.c:114
+#: tree-walk.c:113
 msgid "too-short tree file"
 msgstr ""
 
-#: unpack-trees.c:107
+#: 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:109
+#: 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:112
+#: 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:114
+#: 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:117
+#: 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:119
+#: 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:124
+#: unpack-trees.c:128
 #, c-format
 msgid ""
 "Updating the following directories would lose untracked files in them:\n"
 "%s"
 msgstr ""
 
-#: unpack-trees.c:128
+#: 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:130
+#: unpack-trees.c:134
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by checkout:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:133
+#: 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:135
+#: unpack-trees.c:139
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by merge:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:138
+#: 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:140
+#: unpack-trees.c:144
 #, c-format
 msgid ""
 "The following untracked working tree files would be removed by %s:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:145
+#: unpack-trees.c:150
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -3781,7 +4317,7 @@ msgid ""
 "%%sPlease move or remove them before you switch branches."
 msgstr ""
 
-#: unpack-trees.c:147
+#: unpack-trees.c:152
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by "
@@ -3789,47 +4325,47 @@ msgid ""
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:150
+#: 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:152
+#: unpack-trees.c:157
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by merge:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:155
+#: 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:157
+#: unpack-trees.c:162
 #, c-format
 msgid ""
 "The following untracked working tree files would be overwritten by %s:\n"
 "%%s"
 msgstr ""
 
-#: unpack-trees.c:164
+#: unpack-trees.c:170
 #, c-format
 msgid "Entry '%s' overlaps with '%s'.  Cannot bind."
 msgstr ""
 
-#: unpack-trees.c:167
+#: 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:169
+#: unpack-trees.c:175
 #, c-format
 msgid ""
 "The following working tree files would be overwritten by sparse checkout "
@@ -3837,7 +4373,7 @@ msgid ""
 "%s"
 msgstr ""
 
-#: unpack-trees.c:171
+#: unpack-trees.c:177
 #, c-format
 msgid ""
 "The following working tree files would be removed by sparse checkout "
@@ -3845,19 +4381,19 @@ msgid ""
 "%s"
 msgstr ""
 
-#: unpack-trees.c:173
+#: unpack-trees.c:179
 #, c-format
 msgid ""
 "Cannot update submodule:\n"
 "%s"
 msgstr ""
 
-#: unpack-trees.c:250
+#: unpack-trees.c:262
 #, c-format
 msgid "Aborting\n"
 msgstr ""
 
-#: unpack-trees.c:332
+#: unpack-trees.c:344
 msgid "Checking out files"
 msgstr ""
 
@@ -3890,11 +4426,36 @@ msgstr ""
 msgid "invalid '..' path segment"
 msgstr ""
 
-#: worktree.c:245
+#: worktree.c:245 builtin/am.c:2147
 #, c-format
 msgid "failed to read '%s'"
 msgstr ""
 
+#: worktree.c:291
+#, c-format
+msgid "'%s' at main working tree is not the repository directory"
+msgstr ""
+
+#: worktree.c:302
+#, c-format
+msgid "'%s' file does not contain absolute path to the working tree location"
+msgstr ""
+
+#: worktree.c:314
+#, c-format
+msgid "'%s' does not exist"
+msgstr ""
+
+#: worktree.c:320
+#, c-format
+msgid "'%s' is not a .git file, error code %d"
+msgstr ""
+
+#: worktree.c:328
+#, c-format
+msgid "'%s' does not point back to '%s'"
+msgstr ""
+
 #: wrapper.c:223 wrapper.c:393
 #, c-format
 msgid "could not open '%s' for reading and writing"
@@ -3915,374 +4476,374 @@ msgstr ""
 msgid "unable to get current working directory"
 msgstr ""
 
-#: wt-status.c:150
+#: wt-status.c:154
 msgid "Unmerged paths:"
 msgstr ""
 
-#: wt-status.c:177 wt-status.c:204
+#: wt-status.c:181 wt-status.c:208
 #, c-format
 msgid "  (use \"git reset %s <file>...\" to unstage)"
 msgstr ""
 
-#: wt-status.c:179 wt-status.c:206
+#: wt-status.c:183 wt-status.c:210
 msgid "  (use \"git rm --cached <file>...\" to unstage)"
 msgstr ""
 
-#: wt-status.c:183
+#: wt-status.c:187
 msgid "  (use \"git add <file>...\" to mark resolution)"
 msgstr ""
 
-#: wt-status.c:185 wt-status.c:189
+#: wt-status.c:189 wt-status.c:193
 msgid "  (use \"git add/rm <file>...\" as appropriate to mark resolution)"
 msgstr ""
 
-#: wt-status.c:187
+#: wt-status.c:191
 msgid "  (use \"git rm <file>...\" to mark resolution)"
 msgstr ""
 
-#: wt-status.c:198 wt-status.c:984
+#: wt-status.c:202 wt-status.c:1015
 msgid "Changes to be committed:"
 msgstr ""
 
-#: wt-status.c:216 wt-status.c:993
+#: wt-status.c:220 wt-status.c:1024
 msgid "Changes not staged for commit:"
 msgstr ""
 
-#: wt-status.c:220
+#: wt-status.c:224
 msgid "  (use \"git add <file>...\" to update what will be committed)"
 msgstr ""
 
-#: wt-status.c:222
+#: wt-status.c:226
 msgid "  (use \"git add/rm <file>...\" to update what will be committed)"
 msgstr ""
 
-#: wt-status.c:223
+#: wt-status.c:227
 msgid ""
 "  (use \"git checkout -- <file>...\" to discard changes in working directory)"
 msgstr ""
 
-#: wt-status.c:225
+#: wt-status.c:229
 msgid "  (commit or discard the untracked or modified content in submodules)"
 msgstr ""
 
-#: wt-status.c:237
+#: wt-status.c:241
 #, c-format
 msgid "  (use \"git %s <file>...\" to include in what will be committed)"
 msgstr ""
 
-#: wt-status.c:252
+#: wt-status.c:256
 msgid "both deleted:"
 msgstr ""
 
-#: wt-status.c:254
+#: wt-status.c:258
 msgid "added by us:"
 msgstr ""
 
-#: wt-status.c:256
+#: wt-status.c:260
 msgid "deleted by them:"
 msgstr ""
 
-#: wt-status.c:258
+#: wt-status.c:262
 msgid "added by them:"
 msgstr ""
 
-#: wt-status.c:260
+#: wt-status.c:264
 msgid "deleted by us:"
 msgstr ""
 
-#: wt-status.c:262
+#: wt-status.c:266
 msgid "both added:"
 msgstr ""
 
-#: wt-status.c:264
+#: wt-status.c:268
 msgid "both modified:"
 msgstr ""
 
-#: wt-status.c:274
+#: wt-status.c:278
 msgid "new file:"
 msgstr ""
 
-#: wt-status.c:276
+#: wt-status.c:280
 msgid "copied:"
 msgstr ""
 
-#: wt-status.c:278
+#: wt-status.c:282
 msgid "deleted:"
 msgstr ""
 
-#: wt-status.c:280
+#: wt-status.c:284
 msgid "modified:"
 msgstr ""
 
-#: wt-status.c:282
+#: wt-status.c:286
 msgid "renamed:"
 msgstr ""
 
-#: wt-status.c:284
+#: wt-status.c:288
 msgid "typechange:"
 msgstr ""
 
-#: wt-status.c:286
+#: wt-status.c:290
 msgid "unknown:"
 msgstr ""
 
-#: wt-status.c:288
+#: wt-status.c:292
 msgid "unmerged:"
 msgstr ""
 
-#: wt-status.c:370
+#: wt-status.c:372
 msgid "new commits, "
 msgstr ""
 
-#: wt-status.c:372
+#: wt-status.c:374
 msgid "modified content, "
 msgstr ""
 
-#: wt-status.c:374
+#: wt-status.c:376
 msgid "untracked content, "
 msgstr ""
 
-#: wt-status.c:824
+#: wt-status.c:853
 #, c-format
 msgid "Your stash currently has %d entry"
 msgid_plural "Your stash currently has %d entries"
 msgstr[0] ""
 msgstr[1] ""
 
-#: wt-status.c:856
+#: wt-status.c:885
 msgid "Submodules changed but not updated:"
 msgstr ""
 
-#: wt-status.c:858
+#: wt-status.c:887
 msgid "Submodule changes to be committed:"
 msgstr ""
 
-#: wt-status.c:940
+#: wt-status.c:969
 msgid ""
 "Do not modify or remove the line above.\n"
 "Everything below it will be ignored."
 msgstr ""
 
-#: wt-status.c:1053
+#: wt-status.c:1084
 msgid "You have unmerged paths."
 msgstr ""
 
-#: wt-status.c:1056
+#: wt-status.c:1087
 msgid "  (fix conflicts and run \"git commit\")"
 msgstr ""
 
-#: wt-status.c:1058
+#: wt-status.c:1089
 msgid "  (use \"git merge --abort\" to abort the merge)"
 msgstr ""
 
-#: wt-status.c:1063
+#: wt-status.c:1094
 msgid "All conflicts fixed but you are still merging."
 msgstr ""
 
-#: wt-status.c:1066
+#: wt-status.c:1097
 msgid "  (use \"git commit\" to conclude merge)"
 msgstr ""
 
-#: wt-status.c:1076
+#: wt-status.c:1107
 msgid "You are in the middle of an am session."
 msgstr ""
 
-#: wt-status.c:1079
+#: wt-status.c:1110
 msgid "The current patch is empty."
 msgstr ""
 
-#: wt-status.c:1083
+#: wt-status.c:1114
 msgid "  (fix conflicts and then run \"git am --continue\")"
 msgstr ""
 
-#: wt-status.c:1085
+#: wt-status.c:1116
 msgid "  (use \"git am --skip\" to skip this patch)"
 msgstr ""
 
-#: wt-status.c:1087
+#: wt-status.c:1118
 msgid "  (use \"git am --abort\" to restore the original branch)"
 msgstr ""
 
-#: wt-status.c:1219
+#: wt-status.c:1250
 msgid "git-rebase-todo is missing."
 msgstr ""
 
-#: wt-status.c:1221
+#: wt-status.c:1252
 msgid "No commands done."
 msgstr ""
 
-#: wt-status.c:1224
+#: wt-status.c:1255
 #, c-format
 msgid "Last command done (%d command done):"
 msgid_plural "Last commands done (%d commands done):"
 msgstr[0] ""
 msgstr[1] ""
 
-#: wt-status.c:1235
+#: wt-status.c:1266
 #, c-format
 msgid "  (see more in file %s)"
 msgstr ""
 
-#: wt-status.c:1240
+#: wt-status.c:1271
 msgid "No commands remaining."
 msgstr ""
 
-#: wt-status.c:1243
+#: wt-status.c:1274
 #, 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:1251
+#: wt-status.c:1282
 msgid "  (use \"git rebase --edit-todo\" to view and edit)"
 msgstr ""
 
-#: wt-status.c:1264
+#: wt-status.c:1295
 #, c-format
 msgid "You are currently rebasing branch '%s' on '%s'."
 msgstr ""
 
-#: wt-status.c:1269
+#: wt-status.c:1300
 msgid "You are currently rebasing."
 msgstr ""
 
-#: wt-status.c:1283
+#: wt-status.c:1314
 msgid "  (fix conflicts and then run \"git rebase --continue\")"
 msgstr ""
 
-#: wt-status.c:1285
+#: wt-status.c:1316
 msgid "  (use \"git rebase --skip\" to skip this patch)"
 msgstr ""
 
-#: wt-status.c:1287
+#: wt-status.c:1318
 msgid "  (use \"git rebase --abort\" to check out the original branch)"
 msgstr ""
 
-#: wt-status.c:1293
+#: wt-status.c:1324
 msgid "  (all conflicts fixed: run \"git rebase --continue\")"
 msgstr ""
 
-#: wt-status.c:1297
+#: wt-status.c:1328
 #, c-format
 msgid ""
 "You are currently splitting a commit while rebasing branch '%s' on '%s'."
 msgstr ""
 
-#: wt-status.c:1302
+#: wt-status.c:1333
 msgid "You are currently splitting a commit during a rebase."
 msgstr ""
 
-#: wt-status.c:1305
+#: wt-status.c:1336
 msgid "  (Once your working directory is clean, run \"git rebase --continue\")"
 msgstr ""
 
-#: wt-status.c:1309
+#: wt-status.c:1340
 #, c-format
 msgid "You are currently editing a commit while rebasing branch '%s' on '%s'."
 msgstr ""
 
-#: wt-status.c:1314
+#: wt-status.c:1345
 msgid "You are currently editing a commit during a rebase."
 msgstr ""
 
-#: wt-status.c:1317
+#: wt-status.c:1348
 msgid "  (use \"git commit --amend\" to amend the current commit)"
 msgstr ""
 
-#: wt-status.c:1319
+#: wt-status.c:1350
 msgid ""
 "  (use \"git rebase --continue\" once you are satisfied with your changes)"
 msgstr ""
 
-#: wt-status.c:1329
+#: wt-status.c:1360
 #, c-format
 msgid "You are currently cherry-picking commit %s."
 msgstr ""
 
-#: wt-status.c:1334
+#: wt-status.c:1365
 msgid "  (fix conflicts and run \"git cherry-pick --continue\")"
 msgstr ""
 
-#: wt-status.c:1337
+#: wt-status.c:1368
 msgid "  (all conflicts fixed: run \"git cherry-pick --continue\")"
 msgstr ""
 
-#: wt-status.c:1339
+#: wt-status.c:1370
 msgid "  (use \"git cherry-pick --abort\" to cancel the cherry-pick operation)"
 msgstr ""
 
-#: wt-status.c:1348
+#: wt-status.c:1379
 #, c-format
 msgid "You are currently reverting commit %s."
 msgstr ""
 
-#: wt-status.c:1353
+#: wt-status.c:1384
 msgid "  (fix conflicts and run \"git revert --continue\")"
 msgstr ""
 
-#: wt-status.c:1356
+#: wt-status.c:1387
 msgid "  (all conflicts fixed: run \"git revert --continue\")"
 msgstr ""
 
-#: wt-status.c:1358
+#: wt-status.c:1389
 msgid "  (use \"git revert --abort\" to cancel the revert operation)"
 msgstr ""
 
-#: wt-status.c:1369
+#: wt-status.c:1400
 #, c-format
 msgid "You are currently bisecting, started from branch '%s'."
 msgstr ""
 
-#: wt-status.c:1373
+#: wt-status.c:1404
 msgid "You are currently bisecting."
 msgstr ""
 
-#: wt-status.c:1376
+#: wt-status.c:1407
 msgid "  (use \"git bisect reset\" to get back to the original branch)"
 msgstr ""
 
-#: wt-status.c:1573
+#: wt-status.c:1604
 msgid "On branch "
 msgstr ""
 
-#: wt-status.c:1579
+#: wt-status.c:1610
 msgid "interactive rebase in progress; onto "
 msgstr ""
 
-#: wt-status.c:1581
+#: wt-status.c:1612
 msgid "rebase in progress; onto "
 msgstr ""
 
-#: wt-status.c:1586
+#: wt-status.c:1617
 msgid "HEAD detached at "
 msgstr ""
 
-#: wt-status.c:1588
+#: wt-status.c:1619
 msgid "HEAD detached from "
 msgstr ""
 
-#: wt-status.c:1591
+#: wt-status.c:1622
 msgid "Not currently on any branch."
 msgstr ""
 
-#: wt-status.c:1611
+#: wt-status.c:1642
 msgid "Initial commit"
 msgstr ""
 
-#: wt-status.c:1612
+#: wt-status.c:1643
 msgid "No commits yet"
 msgstr ""
 
-#: wt-status.c:1626
+#: wt-status.c:1657
 msgid "Untracked files"
 msgstr ""
 
-#: wt-status.c:1628
+#: wt-status.c:1659
 msgid "Ignored files"
 msgstr ""
 
-#: wt-status.c:1632
+#: wt-status.c:1663
 #, c-format
 msgid ""
 "It took %.2f seconds to enumerate untracked files. 'status -uno'\n"
@@ -4290,93 +4851,97 @@ msgid ""
 "new files yourself (see 'git help status')."
 msgstr ""
 
-#: wt-status.c:1638
+#: wt-status.c:1669
 #, c-format
 msgid "Untracked files not listed%s"
 msgstr ""
 
-#: wt-status.c:1640
+#: wt-status.c:1671
 msgid " (use -u option to show untracked files)"
 msgstr ""
 
-#: wt-status.c:1646
+#: wt-status.c:1677
 msgid "No changes"
 msgstr ""
 
-#: wt-status.c:1651
+#: wt-status.c:1682
 #, c-format
 msgid "no changes added to commit (use \"git add\" and/or \"git commit -a\")\n"
 msgstr ""
 
-#: wt-status.c:1654
+#: wt-status.c:1685
 #, c-format
 msgid "no changes added to commit\n"
 msgstr ""
 
-#: wt-status.c:1657
+#: wt-status.c:1688
 #, c-format
 msgid ""
 "nothing added to commit but untracked files present (use \"git add\" to "
 "track)\n"
 msgstr ""
 
-#: wt-status.c:1660
+#: wt-status.c:1691
 #, c-format
 msgid "nothing added to commit but untracked files present\n"
 msgstr ""
 
-#: wt-status.c:1663
+#: wt-status.c:1694
 #, c-format
 msgid "nothing to commit (create/copy files and use \"git add\" to track)\n"
 msgstr ""
 
-#: wt-status.c:1666 wt-status.c:1671
+#: wt-status.c:1697 wt-status.c:1702
 #, c-format
 msgid "nothing to commit\n"
 msgstr ""
 
-#: wt-status.c:1669
+#: wt-status.c:1700
 #, c-format
 msgid "nothing to commit (use -u to show untracked files)\n"
 msgstr ""
 
-#: wt-status.c:1673
+#: wt-status.c:1704
 #, c-format
 msgid "nothing to commit, working tree clean\n"
 msgstr ""
 
-#: wt-status.c:1785
+#: wt-status.c:1817
 msgid "No commits yet on "
 msgstr ""
 
-#: wt-status.c:1789
+#: wt-status.c:1821
 msgid "HEAD (no branch)"
 msgstr ""
 
-#: wt-status.c:1818 wt-status.c:1826
+#: wt-status.c:1852
+msgid "different"
+msgstr ""
+
+#: wt-status.c:1854 wt-status.c:1862
 msgid "behind "
 msgstr ""
 
-#: wt-status.c:1821 wt-status.c:1824
+#: wt-status.c:1857 wt-status.c:1860
 msgid "ahead "
 msgstr ""
 
 #. TRANSLATORS: the action is e.g. "pull with rebase"
-#: wt-status.c:2318
+#: wt-status.c:2366
 #, c-format
 msgid "cannot %s: You have unstaged changes."
 msgstr ""
 
-#: wt-status.c:2324
+#: wt-status.c:2372
 msgid "additionally, your index contains uncommitted changes."
 msgstr ""
 
-#: wt-status.c:2326
+#: wt-status.c:2374
 #, c-format
 msgid "cannot %s: Your index contains uncommitted changes."
 msgstr ""
 
-#: compat/precompose_utf8.c:58 builtin/clone.c:437
+#: compat/precompose_utf8.c:58 builtin/clone.c:442
 #, c-format
 msgid "failed to unlink '%s'"
 msgstr ""
@@ -4390,7 +4955,7 @@ msgstr ""
 msgid "unexpected diff status %c"
 msgstr ""
 
-#: builtin/add.c:88 builtin/commit.c:291
+#: builtin/add.c:88 builtin/commit.c:266
 msgid "updating files failed"
 msgstr ""
 
@@ -4403,7 +4968,7 @@ msgstr ""
 msgid "Unstaged changes after refreshing the index:"
 msgstr ""
 
-#: builtin/add.c:233 builtin/rev-parse.c:888
+#: builtin/add.c:233 builtin/rev-parse.c:892
 msgid "Could not read the index"
 msgstr ""
 
@@ -4434,77 +4999,77 @@ msgstr ""
 msgid "Could not apply '%s'"
 msgstr ""
 
-#: builtin/add.c:271
+#: builtin/add.c:269
 msgid "The following paths are ignored by one of your .gitignore files:\n"
 msgstr ""
 
-#: builtin/add.c:291 builtin/clean.c:911 builtin/fetch.c:133 builtin/mv.c:124
-#: builtin/prune-packed.c:55 builtin/pull.c:207 builtin/push.c:541
-#: builtin/remote.c:1333 builtin/rm.c:242 builtin/send-pack.c:164
+#: builtin/add.c:289 builtin/clean.c:911 builtin/fetch.c:145 builtin/mv.c:123
+#: builtin/prune-packed.c:55 builtin/pull.c:212 builtin/push.c:557
+#: builtin/remote.c:1342 builtin/rm.c:240 builtin/send-pack.c:165
 msgid "dry run"
 msgstr ""
 
-#: builtin/add.c:294
+#: builtin/add.c:292
 msgid "interactive picking"
 msgstr ""
 
-#: builtin/add.c:295 builtin/checkout.c:1137 builtin/reset.c:310
+#: builtin/add.c:293 builtin/checkout.c:1135 builtin/reset.c:302
 msgid "select hunks interactively"
 msgstr ""
 
-#: builtin/add.c:296
+#: builtin/add.c:294
 msgid "edit current diff and apply"
 msgstr ""
 
-#: builtin/add.c:297
+#: builtin/add.c:295
 msgid "allow adding otherwise ignored files"
 msgstr ""
 
-#: builtin/add.c:298
+#: builtin/add.c:296
 msgid "update tracked files"
 msgstr ""
 
-#: builtin/add.c:299
+#: builtin/add.c:297
 msgid "renormalize EOL of tracked files (implies -u)"
 msgstr ""
 
-#: builtin/add.c:300
+#: builtin/add.c:298
 msgid "record only the fact that the path will be added later"
 msgstr ""
 
-#: builtin/add.c:301
+#: builtin/add.c:299
 msgid "add changes from all tracked and untracked files"
 msgstr ""
 
-#: builtin/add.c:304
+#: builtin/add.c:302
 msgid "ignore paths removed in the working tree (same as --no-all)"
 msgstr ""
 
-#: builtin/add.c:306
+#: builtin/add.c:304
 msgid "don't add, only refresh the index"
 msgstr ""
 
-#: builtin/add.c:307
+#: builtin/add.c:305
 msgid "just skip files which cannot be added because of errors"
 msgstr ""
 
-#: builtin/add.c:308
+#: builtin/add.c:306
 msgid "check if - even missing - files are ignored in dry run"
 msgstr ""
 
-#: builtin/add.c:309 builtin/update-index.c:964
+#: builtin/add.c:307 builtin/update-index.c:974
 msgid "(+/-)x"
 msgstr ""
 
-#: builtin/add.c:309 builtin/update-index.c:965
+#: builtin/add.c:307 builtin/update-index.c:975
 msgid "override the executable bit of the listed files"
 msgstr ""
 
-#: builtin/add.c:311
+#: builtin/add.c:309
 msgid "warn when adding an embedded repository"
 msgstr ""
 
-#: builtin/add.c:326
+#: builtin/add.c:324
 #, c-format
 msgid ""
 "You've added another git repository inside your current repository.\n"
@@ -4522,47 +5087,47 @@ msgid ""
 "See \"git help submodule\" for more information."
 msgstr ""
 
-#: builtin/add.c:354
+#: builtin/add.c:352
 #, c-format
 msgid "adding embedded git repository: %s"
 msgstr ""
 
-#: builtin/add.c:372
+#: builtin/add.c:370
 #, c-format
 msgid "Use -f if you really want to add them.\n"
 msgstr ""
 
-#: builtin/add.c:380
+#: builtin/add.c:378
 msgid "adding files failed"
 msgstr ""
 
-#: builtin/add.c:417
+#: builtin/add.c:416
 msgid "-A and -u are mutually incompatible"
 msgstr ""
 
-#: builtin/add.c:424
+#: builtin/add.c:423
 msgid "Option --ignore-missing can only be used together with --dry-run"
 msgstr ""
 
-#: builtin/add.c:428
+#: builtin/add.c:427
 #, c-format
 msgid "--chmod param '%s' must be either -x or +x"
 msgstr ""
 
-#: builtin/add.c:443
+#: builtin/add.c:442
 #, c-format
 msgid "Nothing specified, nothing added.\n"
 msgstr ""
 
-#: builtin/add.c:444
+#: builtin/add.c:443
 #, c-format
 msgid "Maybe you wanted to say 'git add .'?\n"
 msgstr ""
 
-#: builtin/add.c:449 builtin/check-ignore.c:176 builtin/checkout.c:281
-#: builtin/checkout.c:484 builtin/clean.c:958 builtin/commit.c:350
-#: builtin/diff-tree.c:114 builtin/mv.c:143 builtin/reset.c:249
-#: builtin/rm.c:271 builtin/submodule--helper.c:311
+#: builtin/add.c:448 builtin/check-ignore.c:177 builtin/checkout.c:280
+#: builtin/checkout.c:483 builtin/clean.c:958 builtin/commit.c:325
+#: builtin/diff-tree.c:114 builtin/mv.c:144 builtin/reset.c:241
+#: builtin/rm.c:270 builtin/submodule--helper.c:328
 msgid "index file corrupt"
 msgstr ""
 
@@ -4614,93 +5179,84 @@ msgstr ""
 msgid "Patch format detection failed."
 msgstr ""
 
-#: builtin/am.c:1013 builtin/clone.c:402
+#: builtin/am.c:1013 builtin/clone.c:407
 #, c-format
 msgid "failed to create directory '%s'"
 msgstr ""
 
-#: builtin/am.c:1017
+#: builtin/am.c:1018
 msgid "Failed to split patches."
 msgstr ""
 
-#: builtin/am.c:1146 builtin/commit.c:376
+#: builtin/am.c:1148 builtin/commit.c:351
 msgid "unable to write index file"
 msgstr ""
 
-#: builtin/am.c:1197
+#: builtin/am.c:1162
 #, c-format
 msgid "When you have resolved this problem, run \"%s --continue\"."
 msgstr ""
 
-#: builtin/am.c:1198
+#: builtin/am.c:1163
 #, c-format
 msgid "If you prefer to skip this patch, run \"%s --skip\" instead."
 msgstr ""
 
-#: builtin/am.c:1199
+#: builtin/am.c:1164
 #, c-format
 msgid "To restore the original branch and stop patching, run \"%s --abort\"."
 msgstr ""
 
-#: builtin/am.c:1306
+#: builtin/am.c:1271
 msgid "Patch is empty."
 msgstr ""
 
-#: builtin/am.c:1372
+#: builtin/am.c:1337
 #, c-format
 msgid "invalid ident line: %.*s"
 msgstr ""
 
-#: builtin/am.c:1394
+#: builtin/am.c:1359
 #, c-format
 msgid "unable to parse commit %s"
 msgstr ""
 
-#: builtin/am.c:1587
+#: builtin/am.c:1554
 msgid "Repository lacks necessary blobs to fall back on 3-way merge."
 msgstr ""
 
-#: builtin/am.c:1589
+#: builtin/am.c:1556
 msgid "Using index info to reconstruct a base tree..."
 msgstr ""
 
-#: builtin/am.c:1608
+#: builtin/am.c:1575
 msgid ""
 "Did you hand edit your patch?\n"
 "It does not apply to blobs recorded in its index."
 msgstr ""
 
-#: builtin/am.c:1614
+#: builtin/am.c:1581
 msgid "Falling back to patching base and 3-way merge..."
 msgstr ""
 
-#: builtin/am.c:1639
+#: builtin/am.c:1606
 msgid "Failed to merge in the changes."
 msgstr ""
 
-#: builtin/am.c:1663 builtin/merge.c:642
-msgid "git write-tree failed to write a tree"
+#: builtin/am.c:1637
+msgid "applying to an empty history"
 msgstr ""
 
-#: builtin/am.c:1670
-msgid "applying to an empty history"
+#: builtin/am.c:1683 builtin/am.c:1687
+#, c-format
+msgid "cannot resume: %s does not exist."
 msgstr ""
 
-#: builtin/am.c:1683 builtin/commit.c:1798 builtin/merge.c:825
-#: builtin/merge.c:850
-msgid "failed to write commit object"
-msgstr ""
-
-#: builtin/am.c:1716 builtin/am.c:1720
-#, c-format
-msgid "cannot resume: %s does not exist."
-msgstr ""
-
-#: builtin/am.c:1736
+#: builtin/am.c:1703
 msgid "cannot be interactive without stdin connected to a terminal."
 msgstr ""
 
-#: builtin/am.c:1741
+#: builtin/am.c:1708
 msgid "Commit Body is:"
 msgstr ""
 
@@ -4708,42 +5264,41 @@ msgstr ""
 #. in your translation. The program will only accept English
 #. input at this point.
 #.
-#: builtin/am.c:1751
+#: builtin/am.c:1718
 msgid "Apply? [y]es/[n]o/[e]dit/[v]iew patch/[a]ccept all: "
 msgstr ""
 
-#: builtin/am.c:1801
+#: builtin/am.c:1768
 #, c-format
 msgid "Dirty index: cannot apply patches (dirty: %s)"
 msgstr ""
 
-#: builtin/am.c:1841 builtin/am.c:1913
+#: builtin/am.c:1808 builtin/am.c:1879
 #, c-format
 msgid "Applying: %.*s"
 msgstr ""
 
-#: builtin/am.c:1857
+#: builtin/am.c:1824
 msgid "No changes -- Patch already applied."
 msgstr ""
 
-#: builtin/am.c:1865
+#: builtin/am.c:1832
 #, c-format
 msgid "Patch failed at %s %.*s"
 msgstr ""
 
-#: builtin/am.c:1871
-#, c-format
-msgid "The copy of the patch that failed is found in: %s"
+#: builtin/am.c:1838
+msgid "Use 'git am --show-current-patch' to see the failed patch"
 msgstr ""
 
-#: builtin/am.c:1916
+#: builtin/am.c:1882
 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:1923
+#: builtin/am.c:1889
 msgid ""
 "You still have unmerged paths in your index.\n"
 "You should 'git add' each file with resolved conflicts to mark them as "
@@ -4751,171 +5306,180 @@ msgid ""
 "You might run `git rm` on a file to accept \"deleted by them\" for it."
 msgstr ""
 
-#: builtin/am.c:2030 builtin/am.c:2034 builtin/am.c:2046 builtin/reset.c:332
-#: builtin/reset.c:340
+#: builtin/am.c:1996 builtin/am.c:2000 builtin/am.c:2012 builtin/reset.c:324
+#: builtin/reset.c:332
 #, c-format
 msgid "Could not parse object '%s'."
 msgstr ""
 
-#: builtin/am.c:2082
+#: builtin/am.c:2048
 msgid "failed to clean index"
 msgstr ""
 
-#: builtin/am.c:2117
+#: builtin/am.c:2083
 msgid ""
 "You seem to have moved HEAD since the last 'am' failure.\n"
 "Not rewinding to ORIG_HEAD"
 msgstr ""
 
-#: builtin/am.c:2180
+#: builtin/am.c:2174
 #, c-format
 msgid "Invalid value for --patch-format: %s"
 msgstr ""
 
-#: builtin/am.c:2213
+#: builtin/am.c:2210
 msgid "git am [<options>] [(<mbox> | <Maildir>)...]"
 msgstr ""
 
-#: builtin/am.c:2214
+#: builtin/am.c:2211
 msgid "git am [<options>] (--continue | --skip | --abort)"
 msgstr ""
 
-#: builtin/am.c:2220
+#: builtin/am.c:2217
 msgid "run interactively"
 msgstr ""
 
-#: builtin/am.c:2222
+#: builtin/am.c:2219
 msgid "historical option -- no-op"
 msgstr ""
 
-#: builtin/am.c:2224
+#: builtin/am.c:2221
 msgid "allow fall back on 3way merging if needed"
 msgstr ""
 
-#: builtin/am.c:2225 builtin/init-db.c:484 builtin/prune-packed.c:57
-#: builtin/repack.c:180
+#: builtin/am.c:2222 builtin/init-db.c:484 builtin/prune-packed.c:57
+#: builtin/repack.c:192
 msgid "be quiet"
 msgstr ""
 
-#: builtin/am.c:2227
+#: builtin/am.c:2224
 msgid "add a Signed-off-by line to the commit message"
 msgstr ""
 
-#: builtin/am.c:2230
+#: builtin/am.c:2227
 msgid "recode into utf8 (default)"
 msgstr ""
 
-#: builtin/am.c:2232
+#: builtin/am.c:2229
 msgid "pass -k flag to git-mailinfo"
 msgstr ""
 
-#: builtin/am.c:2234
+#: builtin/am.c:2231
 msgid "pass -b flag to git-mailinfo"
 msgstr ""
 
-#: builtin/am.c:2236
+#: builtin/am.c:2233
 msgid "pass -m flag to git-mailinfo"
 msgstr ""
 
-#: builtin/am.c:2238
+#: builtin/am.c:2235
 msgid "pass --keep-cr flag to git-mailsplit for mbox format"
 msgstr ""
 
-#: builtin/am.c:2241
+#: builtin/am.c:2238
 msgid "do not pass --keep-cr flag to git-mailsplit independent of am.keepcr"
 msgstr ""
 
-#: builtin/am.c:2244
+#: builtin/am.c:2241
 msgid "strip everything before a scissors line"
 msgstr ""
 
-#: builtin/am.c:2246 builtin/am.c:2249 builtin/am.c:2252 builtin/am.c:2255
-#: builtin/am.c:2258 builtin/am.c:2261 builtin/am.c:2264 builtin/am.c:2267
-#: builtin/am.c:2273
+#: builtin/am.c:2243 builtin/am.c:2246 builtin/am.c:2249 builtin/am.c:2252
+#: builtin/am.c:2255 builtin/am.c:2258 builtin/am.c:2261 builtin/am.c:2264
+#: builtin/am.c:2270
 msgid "pass it through git-apply"
 msgstr ""
 
-#: builtin/am.c:2263 builtin/fmt-merge-msg.c:665 builtin/fmt-merge-msg.c:668
-#: builtin/grep.c:845 builtin/merge.c:205 builtin/pull.c:145 builtin/pull.c:203
-#: builtin/repack.c:189 builtin/repack.c:193 builtin/repack.c:195
-#: builtin/show-branch.c:631 builtin/show-ref.c:169 builtin/tag.c:377
-#: parse-options.h:132 parse-options.h:134 parse-options.h:245
+#: builtin/am.c:2260 builtin/commit.c:1332 builtin/fmt-merge-msg.c:665
+#: builtin/fmt-merge-msg.c:668 builtin/grep.c:853 builtin/merge.c:208
+#: builtin/pull.c:150 builtin/pull.c:208 builtin/repack.c:201
+#: builtin/repack.c:205 builtin/repack.c:207 builtin/show-branch.c:631
+#: builtin/show-ref.c:169 builtin/tag.c:383 parse-options.h:144
+#: parse-options.h:146 parse-options.h:258
 msgid "n"
 msgstr ""
 
-#: builtin/am.c:2269 builtin/branch.c:629 builtin/for-each-ref.c:38
-#: builtin/replace.c:444 builtin/tag.c:412 builtin/verify-tag.c:39
+#: builtin/am.c:2266 builtin/branch.c:632 builtin/for-each-ref.c:38
+#: builtin/replace.c:543 builtin/tag.c:419 builtin/verify-tag.c:39
 msgid "format"
 msgstr ""
 
-#: builtin/am.c:2270
+#: builtin/am.c:2267
 msgid "format the patch(es) are in"
 msgstr ""
 
-#: builtin/am.c:2276
+#: builtin/am.c:2273
 msgid "override error message when patch failure occurs"
 msgstr ""
 
-#: builtin/am.c:2278
+#: builtin/am.c:2275
 msgid "continue applying patches after resolving a conflict"
 msgstr ""
 
-#: builtin/am.c:2281
+#: builtin/am.c:2278
 msgid "synonyms for --continue"
 msgstr ""
 
-#: builtin/am.c:2284
+#: builtin/am.c:2281
 msgid "skip the current patch"
 msgstr ""
 
-#: builtin/am.c:2287
+#: builtin/am.c:2284
 msgid "restore the original branch and abort the patching operation."
 msgstr ""
 
-#: builtin/am.c:2291
+#: builtin/am.c:2287
+msgid "abort the patching operation but keep HEAD where it is."
+msgstr ""
+
+#: builtin/am.c:2290
+msgid "show the patch being applied."
+msgstr ""
+
+#: builtin/am.c:2294
 msgid "lie about committer date"
 msgstr ""
 
-#: builtin/am.c:2293
+#: builtin/am.c:2296
 msgid "use current timestamp for author date"
 msgstr ""
 
-#: builtin/am.c:2295 builtin/commit.c:1636 builtin/merge.c:236
-#: builtin/pull.c:178 builtin/revert.c:112 builtin/tag.c:392
+#: builtin/am.c:2298 builtin/commit.c:1468 builtin/merge.c:239
+#: builtin/pull.c:183 builtin/revert.c:112 builtin/tag.c:399
 msgid "key-id"
 msgstr ""
 
-#: builtin/am.c:2296
+#: builtin/am.c:2299
 msgid "GPG-sign commits"
 msgstr ""
 
-#: builtin/am.c:2299
+#: builtin/am.c:2302
 msgid "(internal use for git-rebase)"
 msgstr ""
 
-#: builtin/am.c:2317
+#: builtin/am.c:2320
 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:2324
+#: builtin/am.c:2327
 msgid "failed to read the index"
 msgstr ""
 
-#: builtin/am.c:2339
+#: builtin/am.c:2342
 #, c-format
 msgid "previous rebase directory %s still exists but mbox given."
 msgstr ""
 
-#: builtin/am.c:2363
+#: builtin/am.c:2366
 #, c-format
 msgid ""
 "Stray %s directory found.\n"
 "Use \"git am --abort\" to remove it."
 msgstr ""
 
-#: builtin/am.c:2369
+#: builtin/am.c:2372
 msgid "Resolve operation not in progress, we are not resuming."
 msgstr ""
 
@@ -4937,7 +5501,7 @@ msgid "git archive: Remote with no URL"
 msgstr ""
 
 #: builtin/archive.c:58
-msgid "git archive: expected ACK/NAK, got EOF"
+msgid "git archive: expected ACK/NAK, got a flush packet"
 msgstr ""
 
 #: builtin/archive.c:61
@@ -5016,115 +5580,141 @@ msgstr ""
 msgid "--bisect-clean-state requires no arguments"
 msgstr ""
 
-#: builtin/blame.c:27
+#: builtin/blame.c:29
 msgid "git blame [<options>] [<rev-opts>] [<rev>] [--] <file>"
 msgstr ""
 
-#: builtin/blame.c:32
+#: builtin/blame.c:34
 msgid "<rev-opts> are documented in git-rev-list(1)"
 msgstr ""
 
-#: builtin/blame.c:668
+#: builtin/blame.c:404
+#, c-format
+msgid "expecting a color: %s"
+msgstr ""
+
+#: builtin/blame.c:411
+msgid "must end with a color"
+msgstr ""
+
+#: builtin/blame.c:697
+#, c-format
+msgid "invalid color '%s' in color.blame.repeatedLines"
+msgstr ""
+
+#: builtin/blame.c:715
+msgid "invalid value for blame.coloring"
+msgstr ""
+
+#: builtin/blame.c:786
 msgid "Show blame entries as we find them, incrementally"
 msgstr ""
 
-#: builtin/blame.c:669
+#: builtin/blame.c:787
 msgid "Show blank SHA-1 for boundary commits (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:670
+#: builtin/blame.c:788
 msgid "Do not treat root commits as boundaries (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:671
+#: builtin/blame.c:789
 msgid "Show work cost statistics"
 msgstr ""
 
-#: builtin/blame.c:672
+#: builtin/blame.c:790
 msgid "Force progress reporting"
 msgstr ""
 
-#: builtin/blame.c:673
+#: builtin/blame.c:791
 msgid "Show output score for blame entries"
 msgstr ""
 
-#: builtin/blame.c:674
+#: builtin/blame.c:792
 msgid "Show original filename (Default: auto)"
 msgstr ""
 
-#: builtin/blame.c:675
+#: builtin/blame.c:793
 msgid "Show original linenumber (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:676
+#: builtin/blame.c:794
 msgid "Show in a format designed for machine consumption"
 msgstr ""
 
-#: builtin/blame.c:677
+#: builtin/blame.c:795
 msgid "Show porcelain format with per-line commit information"
 msgstr ""
 
-#: builtin/blame.c:678
+#: builtin/blame.c:796
 msgid "Use the same output mode as git-annotate (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:679
+#: builtin/blame.c:797
 msgid "Show raw timestamp (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:680
+#: builtin/blame.c:798
 msgid "Show long commit SHA1 (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:681
+#: builtin/blame.c:799
 msgid "Suppress author name and timestamp (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:682
+#: builtin/blame.c:800
 msgid "Show author email instead of name (Default: off)"
 msgstr ""
 
-#: builtin/blame.c:683
+#: builtin/blame.c:801
 msgid "Ignore whitespace differences"
 msgstr ""
 
-#: builtin/blame.c:690
+#: builtin/blame.c:802
+msgid "color redundant metadata from previous line differently"
+msgstr ""
+
+#: builtin/blame.c:803
+msgid "color lines by age"
+msgstr ""
+
+#: builtin/blame.c:810
 msgid "Use an experimental heuristic to improve diffs"
 msgstr ""
 
-#: builtin/blame.c:692
+#: builtin/blame.c:812
 msgid "Spend extra cycles to find better match"
 msgstr ""
 
-#: builtin/blame.c:693
+#: builtin/blame.c:813
 msgid "Use revisions from <file> instead of calling git-rev-list"
 msgstr ""
 
-#: builtin/blame.c:694
+#: builtin/blame.c:814
 msgid "Use <file>'s contents as the final image"
 msgstr ""
 
-#: builtin/blame.c:695 builtin/blame.c:696
+#: builtin/blame.c:815 builtin/blame.c:816
 msgid "score"
 msgstr ""
 
-#: builtin/blame.c:695
+#: builtin/blame.c:815
 msgid "Find line copies within and across files"
 msgstr ""
 
-#: builtin/blame.c:696
+#: builtin/blame.c:816
 msgid "Find line movements within and across files"
 msgstr ""
 
-#: builtin/blame.c:697
+#: builtin/blame.c:817
 msgid "n,m"
 msgstr ""
 
-#: builtin/blame.c:697
+#: builtin/blame.c:817
 msgid "Process only line range n,m, counting from 1"
 msgstr ""
 
-#: builtin/blame.c:744
+#: builtin/blame.c:866
 msgid "--progress can't be used with --incremental or porcelain formats"
 msgstr ""
 
@@ -5136,18 +5726,18 @@ msgstr ""
 #. your language may need more or fewer display
 #. columns.
 #.
-#: builtin/blame.c:795
+#: builtin/blame.c:917
 msgid "4 years, 11 months ago"
 msgstr ""
 
-#: builtin/blame.c:882
+#: builtin/blame.c:1003
 #, c-format
 msgid "file %s has only %lu line"
 msgid_plural "file %s has only %lu lines"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/blame.c:928
+#: builtin/blame.c:1049
 msgid "Blaming lines"
 msgstr ""
 
@@ -5252,65 +5842,65 @@ msgstr ""
 msgid "Deleted branch %s (was %s).\n"
 msgstr ""
 
-#: builtin/branch.c:417 builtin/tag.c:58
+#: builtin/branch.c:416 builtin/tag.c:58
 msgid "unable to parse format string"
 msgstr ""
 
-#: builtin/branch.c:450
+#: builtin/branch.c:453
 #, c-format
 msgid "Branch %s is being rebased at %s"
 msgstr ""
 
-#: builtin/branch.c:454
+#: builtin/branch.c:457
 #, c-format
 msgid "Branch %s is being bisected at %s"
 msgstr ""
 
-#: builtin/branch.c:471
+#: builtin/branch.c:474
 msgid "cannot copy the current branch while not on any."
 msgstr ""
 
-#: builtin/branch.c:473
+#: builtin/branch.c:476
 msgid "cannot rename the current branch while not on any."
 msgstr ""
 
-#: builtin/branch.c:484
+#: builtin/branch.c:487
 #, c-format
 msgid "Invalid branch name: '%s'"
 msgstr ""
 
-#: builtin/branch.c:511
+#: builtin/branch.c:514
 msgid "Branch rename failed"
 msgstr ""
 
-#: builtin/branch.c:513
+#: builtin/branch.c:516
 msgid "Branch copy failed"
 msgstr ""
 
-#: builtin/branch.c:517
+#: builtin/branch.c:520
 #, c-format
 msgid "Created a copy of a misnamed branch '%s'"
 msgstr ""
 
-#: builtin/branch.c:520
+#: builtin/branch.c:523
 #, c-format
 msgid "Renamed a misnamed branch '%s' away"
 msgstr ""
 
-#: builtin/branch.c:526
+#: builtin/branch.c:529
 #, c-format
 msgid "Branch renamed to %s, but HEAD is not updated!"
 msgstr ""
 
-#: builtin/branch.c:535
+#: builtin/branch.c:538
 msgid "Branch is renamed, but update of config-file failed"
 msgstr ""
 
-#: builtin/branch.c:537
+#: builtin/branch.c:540
 msgid "Branch is copied, but update of config-file failed"
 msgstr ""
 
-#: builtin/branch.c:553
+#: builtin/branch.c:556
 #, c-format
 msgid ""
 "Please edit the description for the branch\n"
@@ -5318,217 +5908,219 @@ msgid ""
 "Lines starting with '%c' will be stripped.\n"
 msgstr ""
 
-#: builtin/branch.c:586
+#: builtin/branch.c:589
 msgid "Generic options"
 msgstr ""
 
-#: builtin/branch.c:588
+#: builtin/branch.c:591
 msgid "show hash and subject, give twice for upstream branch"
 msgstr ""
 
-#: builtin/branch.c:589
+#: builtin/branch.c:592
 msgid "suppress informational messages"
 msgstr ""
 
-#: builtin/branch.c:590
+#: builtin/branch.c:593
 msgid "set up tracking mode (see git-pull(1))"
 msgstr ""
 
-#: builtin/branch.c:592
+#: builtin/branch.c:595
 msgid "do not use"
 msgstr ""
 
-#: builtin/branch.c:594
+#: builtin/branch.c:597
 msgid "upstream"
 msgstr ""
 
-#: builtin/branch.c:594
+#: builtin/branch.c:597
 msgid "change the upstream info"
 msgstr ""
 
-#: builtin/branch.c:595
+#: builtin/branch.c:598
 msgid "Unset the upstream info"
 msgstr ""
 
-#: builtin/branch.c:596
+#: builtin/branch.c:599
 msgid "use colored output"
 msgstr ""
 
-#: builtin/branch.c:597
+#: builtin/branch.c:600
 msgid "act on remote-tracking branches"
 msgstr ""
 
-#: builtin/branch.c:599 builtin/branch.c:601
+#: builtin/branch.c:602 builtin/branch.c:604
 msgid "print only branches that contain the commit"
 msgstr ""
 
-#: builtin/branch.c:600 builtin/branch.c:602
+#: builtin/branch.c:603 builtin/branch.c:605
 msgid "print only branches that don't contain the commit"
 msgstr ""
 
-#: builtin/branch.c:605
+#: builtin/branch.c:608
 msgid "Specific git-branch actions:"
 msgstr ""
 
-#: builtin/branch.c:606
+#: builtin/branch.c:609
 msgid "list both remote-tracking and local branches"
 msgstr ""
 
-#: builtin/branch.c:608
+#: builtin/branch.c:611
 msgid "delete fully merged branch"
 msgstr ""
 
-#: builtin/branch.c:609
+#: builtin/branch.c:612
 msgid "delete branch (even if not merged)"
 msgstr ""
 
-#: builtin/branch.c:610
+#: builtin/branch.c:613
 msgid "move/rename a branch and its reflog"
 msgstr ""
 
-#: builtin/branch.c:611
+#: builtin/branch.c:614
 msgid "move/rename a branch, even if target exists"
 msgstr ""
 
-#: builtin/branch.c:612
+#: builtin/branch.c:615
 msgid "copy a branch and its reflog"
 msgstr ""
 
-#: builtin/branch.c:613
+#: builtin/branch.c:616
 msgid "copy a branch, even if target exists"
 msgstr ""
 
-#: builtin/branch.c:614
+#: builtin/branch.c:617
 msgid "list branch names"
 msgstr ""
 
-#: builtin/branch.c:615
+#: builtin/branch.c:618
 msgid "create the branch's reflog"
 msgstr ""
 
-#: builtin/branch.c:617
+#: builtin/branch.c:620
 msgid "edit the description for the branch"
 msgstr ""
 
-#: builtin/branch.c:618
+#: builtin/branch.c:621
 msgid "force creation, move/rename, deletion"
 msgstr ""
 
-#: builtin/branch.c:619
+#: builtin/branch.c:622
 msgid "print only branches that are merged"
 msgstr ""
 
-#: builtin/branch.c:620
+#: builtin/branch.c:623
 msgid "print only branches that are not merged"
 msgstr ""
 
-#: builtin/branch.c:621
+#: builtin/branch.c:624
 msgid "list branches in columns"
 msgstr ""
 
-#: builtin/branch.c:622 builtin/for-each-ref.c:40 builtin/tag.c:405
+#: builtin/branch.c:625 builtin/for-each-ref.c:40 builtin/ls-remote.c:70
+#: builtin/tag.c:412
 msgid "key"
 msgstr ""
 
-#: builtin/branch.c:623 builtin/for-each-ref.c:41 builtin/tag.c:406
+#: builtin/branch.c:626 builtin/for-each-ref.c:41 builtin/ls-remote.c:71
+#: builtin/tag.c:413
 msgid "field name to sort on"
 msgstr ""
 
-#: builtin/branch.c:625 builtin/for-each-ref.c:43 builtin/notes.c:408
+#: builtin/branch.c:628 builtin/for-each-ref.c:43 builtin/notes.c:408
 #: builtin/notes.c:411 builtin/notes.c:571 builtin/notes.c:574
-#: builtin/tag.c:408
+#: builtin/tag.c:415
 msgid "object"
 msgstr ""
 
-#: builtin/branch.c:626
+#: builtin/branch.c:629
 msgid "print only branches of the object"
 msgstr ""
 
-#: builtin/branch.c:628 builtin/for-each-ref.c:49 builtin/tag.c:415
+#: builtin/branch.c:631 builtin/for-each-ref.c:49 builtin/tag.c:422
 msgid "sorting and filtering are case insensitive"
 msgstr ""
 
-#: builtin/branch.c:629 builtin/for-each-ref.c:38 builtin/tag.c:413
+#: builtin/branch.c:632 builtin/for-each-ref.c:38 builtin/tag.c:420
 #: builtin/verify-tag.c:39
 msgid "format to use for the output"
 msgstr ""
 
-#: builtin/branch.c:652 builtin/clone.c:730
+#: builtin/branch.c:655 builtin/clone.c:737
 msgid "HEAD not found below refs/heads!"
 msgstr ""
 
-#: builtin/branch.c:675
+#: builtin/branch.c:678
 msgid "--column and --verbose are incompatible"
 msgstr ""
 
-#: builtin/branch.c:690 builtin/branch.c:742 builtin/branch.c:751
+#: builtin/branch.c:693 builtin/branch.c:745 builtin/branch.c:754
 msgid "branch name required"
 msgstr ""
 
-#: builtin/branch.c:718
+#: builtin/branch.c:721
 msgid "Cannot give description to detached HEAD"
 msgstr ""
 
-#: builtin/branch.c:723
+#: builtin/branch.c:726
 msgid "cannot edit description of more than one branch"
 msgstr ""
 
-#: builtin/branch.c:730
+#: builtin/branch.c:733
 #, c-format
 msgid "No commit on branch '%s' yet."
 msgstr ""
 
-#: builtin/branch.c:733
+#: builtin/branch.c:736
 #, c-format
 msgid "No branch named '%s'."
 msgstr ""
 
-#: builtin/branch.c:748
+#: builtin/branch.c:751
 msgid "too many branches for a copy operation"
 msgstr ""
 
-#: builtin/branch.c:757
+#: builtin/branch.c:760
 msgid "too many arguments for a rename operation"
 msgstr ""
 
-#: builtin/branch.c:762
+#: builtin/branch.c:765
 msgid "too many arguments to set new upstream"
 msgstr ""
 
-#: builtin/branch.c:766
+#: builtin/branch.c:769
 #, c-format
 msgid ""
 "could not set upstream of HEAD to %s when it does not point to any branch."
 msgstr ""
 
-#: builtin/branch.c:769 builtin/branch.c:791 builtin/branch.c:807
+#: builtin/branch.c:772 builtin/branch.c:794 builtin/branch.c:810
 #, c-format
 msgid "no such branch '%s'"
 msgstr ""
 
-#: builtin/branch.c:773
+#: builtin/branch.c:776
 #, c-format
 msgid "branch '%s' does not exist"
 msgstr ""
 
-#: builtin/branch.c:785
+#: builtin/branch.c:788
 msgid "too many arguments to unset upstream"
 msgstr ""
 
-#: builtin/branch.c:789
+#: builtin/branch.c:792
 msgid "could not unset upstream of HEAD when it does not point to any branch."
 msgstr ""
 
-#: builtin/branch.c:795
+#: builtin/branch.c:798
 #, c-format
 msgid "Branch '%s' has no upstream information"
 msgstr ""
 
-#: builtin/branch.c:810
+#: builtin/branch.c:813
 msgid "-a and -r options to 'git branch' do not make sense with a branch name"
 msgstr ""
 
-#: builtin/branch.c:813
+#: builtin/branch.c:816
 msgid ""
 "the '--set-upstream' option is no longer supported. Please use '--track' or "
 "'--set-upstream-to' instead."
@@ -5547,75 +6139,75 @@ msgstr ""
 msgid "Need a repository to unbundle."
 msgstr ""
 
-#: builtin/cat-file.c:521
+#: builtin/cat-file.c:525
 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:522
+#: builtin/cat-file.c:526
 msgid ""
 "git cat-file (--batch | --batch-check) [--follow-symlinks] [--textconv | --"
 "filters]"
 msgstr ""
 
-#: builtin/cat-file.c:559
+#: builtin/cat-file.c:563
 msgid "<type> can be one of: blob, tree, commit, tag"
 msgstr ""
 
-#: builtin/cat-file.c:560
+#: builtin/cat-file.c:564
 msgid "show object type"
 msgstr ""
 
-#: builtin/cat-file.c:561
+#: builtin/cat-file.c:565
 msgid "show object size"
 msgstr ""
 
-#: builtin/cat-file.c:563
+#: builtin/cat-file.c:567
 msgid "exit with zero when there's no error"
 msgstr ""
 
-#: builtin/cat-file.c:564
+#: builtin/cat-file.c:568
 msgid "pretty-print object's content"
 msgstr ""
 
-#: builtin/cat-file.c:566
+#: builtin/cat-file.c:570
 msgid "for blob objects, run textconv on object's content"
 msgstr ""
 
-#: builtin/cat-file.c:568
+#: builtin/cat-file.c:572
 msgid "for blob objects, run filters on object's content"
 msgstr ""
 
-#: builtin/cat-file.c:569 git-submodule.sh:931
+#: builtin/cat-file.c:573 git-submodule.sh:894
 msgid "blob"
 msgstr ""
 
-#: builtin/cat-file.c:570
+#: builtin/cat-file.c:574
 msgid "use a specific path for --textconv/--filters"
 msgstr ""
 
-#: builtin/cat-file.c:572
+#: builtin/cat-file.c:576
 msgid "allow -s and -t to work with broken/corrupt objects"
 msgstr ""
 
-#: builtin/cat-file.c:573
+#: builtin/cat-file.c:577
 msgid "buffer --batch output"
 msgstr ""
 
-#: builtin/cat-file.c:575
+#: builtin/cat-file.c:579
 msgid "show info and content of objects fed from the standard input"
 msgstr ""
 
-#: builtin/cat-file.c:578
+#: builtin/cat-file.c:582
 msgid "show info about objects fed from the standard input"
 msgstr ""
 
-#: builtin/cat-file.c:581
+#: builtin/cat-file.c:585
 msgid "follow in-tree symlinks (used with --batch or --batch-check)"
 msgstr ""
 
-#: builtin/cat-file.c:583
+#: builtin/cat-file.c:587
 msgid "show all objects with --batch or --batch-check"
 msgstr ""
 
@@ -5635,7 +6227,7 @@ msgstr ""
 msgid "use .gitattributes only from the index"
 msgstr ""
 
-#: builtin/check-attr.c:22 builtin/check-ignore.c:24 builtin/hash-object.c:99
+#: builtin/check-attr.c:22 builtin/check-ignore.c:24 builtin/hash-object.c:100
 msgid "read file names from stdin"
 msgstr ""
 
@@ -5643,7 +6235,7 @@ msgstr ""
 msgid "terminate input and output records by a NUL character"
 msgstr ""
 
-#: builtin/check-ignore.c:20 builtin/checkout.c:1118 builtin/gc.c:358
+#: builtin/check-ignore.c:20 builtin/checkout.c:1113 builtin/gc.c:500
 msgid "suppress progress reporting"
 msgstr ""
 
@@ -5655,27 +6247,27 @@ msgstr ""
 msgid "ignore index when checking"
 msgstr ""
 
-#: builtin/check-ignore.c:158
+#: builtin/check-ignore.c:159
 msgid "cannot specify pathnames with --stdin"
 msgstr ""
 
-#: builtin/check-ignore.c:161
+#: builtin/check-ignore.c:162
 msgid "-z only makes sense with --stdin"
 msgstr ""
 
-#: builtin/check-ignore.c:163
+#: builtin/check-ignore.c:164
 msgid "no path specified"
 msgstr ""
 
-#: builtin/check-ignore.c:167
+#: builtin/check-ignore.c:168
 msgid "--quiet is only valid with a single pathname"
 msgstr ""
 
-#: builtin/check-ignore.c:169
+#: builtin/check-ignore.c:170
 msgid "cannot have both --quiet and --verbose"
 msgstr ""
 
-#: builtin/check-ignore.c:172
+#: builtin/check-ignore.c:173
 msgid "--non-matching is only valid with --verbose"
 msgstr ""
 
@@ -5733,9 +6325,9 @@ msgid "write the content to temporary files"
 msgstr ""
 
 #: builtin/checkout-index.c:173 builtin/column.c:31
-#: builtin/submodule--helper.c:866 builtin/submodule--helper.c:869
-#: builtin/submodule--helper.c:875 builtin/submodule--helper.c:1237
-#: builtin/worktree.c:552
+#: builtin/submodule--helper.c:1216 builtin/submodule--helper.c:1219
+#: builtin/submodule--helper.c:1227 builtin/submodule--helper.c:1591
+#: builtin/worktree.c:610
 msgid "string"
 msgstr ""
 
@@ -5780,28 +6372,28 @@ msgstr ""
 msgid "path '%s': cannot merge"
 msgstr ""
 
-#: builtin/checkout.c:232
+#: builtin/checkout.c:231
 #, c-format
 msgid "Unable to add merge result for '%s'"
 msgstr ""
 
-#: builtin/checkout.c:254 builtin/checkout.c:257 builtin/checkout.c:260
-#: builtin/checkout.c:263
+#: builtin/checkout.c:253 builtin/checkout.c:256 builtin/checkout.c:259
+#: builtin/checkout.c:262
 #, c-format
 msgid "'%s' cannot be used with updating paths"
 msgstr ""
 
-#: builtin/checkout.c:266 builtin/checkout.c:269
+#: builtin/checkout.c:265 builtin/checkout.c:268
 #, c-format
 msgid "'%s' cannot be used with %s"
 msgstr ""
 
-#: builtin/checkout.c:272
+#: builtin/checkout.c:271
 #, c-format
 msgid "Cannot update paths and switch to branch '%s' at the same time."
 msgstr ""
 
-#: builtin/checkout.c:341 builtin/checkout.c:348
+#: builtin/checkout.c:340 builtin/checkout.c:347
 #, c-format
 msgid "path '%s' is unmerged"
 msgstr ""
@@ -5810,50 +6402,50 @@ msgstr ""
 msgid "you need to resolve your current index first"
 msgstr ""
 
-#: builtin/checkout.c:637
+#: builtin/checkout.c:643
 #, c-format
 msgid "Can not do reflog for '%s': %s\n"
 msgstr ""
 
-#: builtin/checkout.c:678
+#: builtin/checkout.c:684
 msgid "HEAD is now at"
 msgstr ""
 
-#: builtin/checkout.c:682 builtin/clone.c:684
+#: builtin/checkout.c:688 builtin/clone.c:691
 msgid "unable to update HEAD"
 msgstr ""
 
-#: builtin/checkout.c:686
+#: builtin/checkout.c:692
 #, c-format
 msgid "Reset branch '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:689
+#: builtin/checkout.c:695
 #, c-format
 msgid "Already on '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:693
+#: builtin/checkout.c:699
 #, c-format
 msgid "Switched to and reset branch '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:695 builtin/checkout.c:1051
+#: builtin/checkout.c:701 builtin/checkout.c:1046
 #, c-format
 msgid "Switched to a new branch '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:697
+#: builtin/checkout.c:703
 #, c-format
 msgid "Switched to branch '%s'\n"
 msgstr ""
 
-#: builtin/checkout.c:748
+#: builtin/checkout.c:754
 #, c-format
 msgid " ... and %d more.\n"
 msgstr ""
 
-#: builtin/checkout.c:754
+#: builtin/checkout.c:760
 #, c-format
 msgid ""
 "Warning: you are leaving %d commit behind, not connected to\n"
@@ -5868,7 +6460,7 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/checkout.c:773
+#: builtin/checkout.c:779
 #, c-format
 msgid ""
 "If you want to keep it by creating a new branch, this may be a good time\n"
@@ -5885,160 +6477,160 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/checkout.c:814
+#: builtin/checkout.c:811
 msgid "internal error in revision walk"
 msgstr ""
 
-#: builtin/checkout.c:818
+#: builtin/checkout.c:815
 msgid "Previous HEAD position was"
 msgstr ""
 
-#: builtin/checkout.c:848 builtin/checkout.c:1046
+#: builtin/checkout.c:843 builtin/checkout.c:1041
 msgid "You are on a branch yet to be born"
 msgstr ""
 
-#: builtin/checkout.c:952
+#: builtin/checkout.c:947
 #, c-format
 msgid "only one reference expected, %d given."
 msgstr ""
 
-#: builtin/checkout.c:992 builtin/worktree.c:247
+#: builtin/checkout.c:987 builtin/worktree.c:240 builtin/worktree.c:389
 #, c-format
 msgid "invalid reference: %s"
 msgstr ""
 
-#: builtin/checkout.c:1021
+#: builtin/checkout.c:1016
 #, c-format
 msgid "reference is not a tree: %s"
 msgstr ""
 
-#: builtin/checkout.c:1060
+#: builtin/checkout.c:1055
 msgid "paths cannot be used with switching branches"
 msgstr ""
 
-#: builtin/checkout.c:1063 builtin/checkout.c:1067
+#: builtin/checkout.c:1058 builtin/checkout.c:1062
 #, c-format
 msgid "'%s' cannot be used with switching branches"
 msgstr ""
 
-#: builtin/checkout.c:1071 builtin/checkout.c:1074 builtin/checkout.c:1079
-#: builtin/checkout.c:1082
+#: builtin/checkout.c:1066 builtin/checkout.c:1069 builtin/checkout.c:1074
+#: builtin/checkout.c:1077
 #, c-format
 msgid "'%s' cannot be used with '%s'"
 msgstr ""
 
-#: builtin/checkout.c:1087
+#: builtin/checkout.c:1082
 #, c-format
 msgid "Cannot switch branch to a non-commit '%s'"
 msgstr ""
 
-#: builtin/checkout.c:1119 builtin/checkout.c:1121 builtin/clone.c:114
-#: builtin/remote.c:166 builtin/remote.c:168 builtin/worktree.c:369
-#: builtin/worktree.c:371
+#: builtin/checkout.c:1114 builtin/checkout.c:1116 builtin/clone.c:118
+#: builtin/remote.c:167 builtin/remote.c:169 builtin/worktree.c:433
+#: builtin/worktree.c:435
 msgid "branch"
 msgstr ""
 
-#: builtin/checkout.c:1120
+#: builtin/checkout.c:1115
 msgid "create and checkout a new branch"
 msgstr ""
 
-#: builtin/checkout.c:1122
+#: builtin/checkout.c:1117
 msgid "create/reset and checkout a branch"
 msgstr ""
 
-#: builtin/checkout.c:1123
+#: builtin/checkout.c:1118
 msgid "create reflog for new branch"
 msgstr ""
 
-#: builtin/checkout.c:1124 builtin/worktree.c:373
+#: builtin/checkout.c:1119 builtin/worktree.c:437
 msgid "detach HEAD at named commit"
 msgstr ""
 
-#: builtin/checkout.c:1125
+#: builtin/checkout.c:1120
 msgid "set upstream info for new branch"
 msgstr ""
 
-#: builtin/checkout.c:1127
+#: builtin/checkout.c:1122
 msgid "new-branch"
 msgstr ""
 
-#: builtin/checkout.c:1127
+#: builtin/checkout.c:1122
 msgid "new unparented branch"
 msgstr ""
 
-#: builtin/checkout.c:1128
+#: builtin/checkout.c:1123
 msgid "checkout our version for unmerged files"
 msgstr ""
 
-#: builtin/checkout.c:1130
+#: builtin/checkout.c:1125
 msgid "checkout their version for unmerged files"
 msgstr ""
 
-#: builtin/checkout.c:1132
+#: builtin/checkout.c:1127
 msgid "force checkout (throw away local modifications)"
 msgstr ""
 
-#: builtin/checkout.c:1133
+#: builtin/checkout.c:1129
 msgid "perform a 3-way merge with the new branch"
 msgstr ""
 
-#: builtin/checkout.c:1134 builtin/merge.c:238
+#: builtin/checkout.c:1131 builtin/merge.c:241
 msgid "update ignored files (default)"
 msgstr ""
 
-#: builtin/checkout.c:1135 builtin/log.c:1496 parse-options.h:251
+#: builtin/checkout.c:1133 builtin/log.c:1499 parse-options.h:264
 msgid "style"
 msgstr ""
 
-#: builtin/checkout.c:1136
+#: builtin/checkout.c:1134
 msgid "conflict style (merge or diff3)"
 msgstr ""
 
-#: builtin/checkout.c:1139
+#: builtin/checkout.c:1137
 msgid "do not limit pathspecs to sparse entries only"
 msgstr ""
 
-#: builtin/checkout.c:1141
+#: builtin/checkout.c:1139
 msgid "second guess 'git checkout <no-such-branch>'"
 msgstr ""
 
-#: builtin/checkout.c:1143
+#: builtin/checkout.c:1141
 msgid "do not check if another worktree is holding the given ref"
 msgstr ""
 
-#: builtin/checkout.c:1147 builtin/clone.c:81 builtin/fetch.c:137
-#: builtin/merge.c:235 builtin/pull.c:123 builtin/push.c:556
-#: builtin/send-pack.c:173
+#: builtin/checkout.c:1145 builtin/clone.c:85 builtin/fetch.c:149
+#: builtin/merge.c:238 builtin/pull.c:128 builtin/push.c:572
+#: builtin/send-pack.c:174
 msgid "force progress reporting"
 msgstr ""
 
-#: builtin/checkout.c:1177
+#: builtin/checkout.c:1175
 msgid "-b, -B and --orphan are mutually exclusive"
 msgstr ""
 
-#: builtin/checkout.c:1194
+#: builtin/checkout.c:1192
 msgid "--track needs a branch name"
 msgstr ""
 
-#: builtin/checkout.c:1199
+#: builtin/checkout.c:1197
 msgid "Missing branch name; try -b"
 msgstr ""
 
-#: builtin/checkout.c:1235
+#: builtin/checkout.c:1233
 msgid "invalid path specification"
 msgstr ""
 
-#: builtin/checkout.c:1242
+#: builtin/checkout.c:1240
 #, c-format
 msgid "'%s' is not a commit and a branch '%s' cannot be created from it"
 msgstr ""
 
-#: builtin/checkout.c:1246
+#: builtin/checkout.c:1244
 #, c-format
 msgid "git checkout: --detach does not take a path argument '%s'"
 msgstr ""
 
-#: builtin/checkout.c:1250
+#: builtin/checkout.c:1248
 msgid ""
 "git checkout: --ours/--theirs, --force and --merge are incompatible when\n"
 "checking out of the index."
@@ -6074,7 +6666,7 @@ msgstr ""
 msgid "failed to remove %s"
 msgstr ""
 
-#: builtin/clean.c:302 git-add--interactive.perl:572
+#: builtin/clean.c:302 git-add--interactive.perl:579
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -6083,7 +6675,7 @@ msgid ""
 "           - (empty) select nothing\n"
 msgstr ""
 
-#: builtin/clean.c:306 git-add--interactive.perl:581
+#: builtin/clean.c:306 git-add--interactive.perl:588
 #, c-format
 msgid ""
 "Prompt help:\n"
@@ -6096,8 +6688,8 @@ msgid ""
 "           - (empty) finish selecting\n"
 msgstr ""
 
-#: builtin/clean.c:522 git-add--interactive.perl:547
-#: git-add--interactive.perl:552
+#: builtin/clean.c:522 git-add--interactive.perl:554
+#: git-add--interactive.perl:559
 #, c-format, perl-format
 msgid "Huh (%s)?\n"
 msgstr ""
@@ -6122,7 +6714,7 @@ msgstr ""
 msgid "Remove %s [y/N]? "
 msgstr ""
 
-#: builtin/clean.c:788 git-add--interactive.perl:1616
+#: builtin/clean.c:788 git-add--interactive.perl:1717
 #, c-format
 msgid "Bye.\n"
 msgstr ""
@@ -6138,11 +6730,11 @@ msgid ""
 "?                   - help for prompt selection"
 msgstr ""
 
-#: builtin/clean.c:823 git-add--interactive.perl:1692
+#: builtin/clean.c:823 git-add--interactive.perl:1793
 msgid "*** Commands ***"
 msgstr ""
 
-#: builtin/clean.c:824 git-add--interactive.perl:1689
+#: builtin/clean.c:824 git-add--interactive.perl:1790
 msgid "What now"
 msgstr ""
 
@@ -6172,8 +6764,8 @@ msgstr ""
 msgid "remove whole directories"
 msgstr ""
 
-#: builtin/clean.c:916 builtin/describe.c:530 builtin/describe.c:532
-#: builtin/grep.c:863 builtin/log.c:155 builtin/log.c:157
+#: builtin/clean.c:916 builtin/describe.c:533 builtin/describe.c:535
+#: builtin/grep.c:871 builtin/log.c:157 builtin/log.c:159
 #: builtin/ls-files.c:548 builtin/name-rev.c:397 builtin/name-rev.c:399
 #: builtin/show-ref.c:176
 msgid "pattern"
@@ -6207,315 +6799,321 @@ msgid ""
 "refusing to clean"
 msgstr ""
 
-#: builtin/clone.c:39
+#: builtin/clone.c:42
 msgid "git clone [<options>] [--] <repo> [<dir>]"
 msgstr ""
 
-#: builtin/clone.c:83
+#: builtin/clone.c:87
 msgid "don't create a checkout"
 msgstr ""
 
-#: builtin/clone.c:84 builtin/clone.c:86 builtin/init-db.c:479
+#: builtin/clone.c:88 builtin/clone.c:90 builtin/init-db.c:479
 msgid "create a bare repository"
 msgstr ""
 
-#: builtin/clone.c:88
+#: builtin/clone.c:92
 msgid "create a mirror repository (implies bare)"
 msgstr ""
 
-#: builtin/clone.c:90
+#: builtin/clone.c:94
 msgid "to clone from a local repository"
 msgstr ""
 
-#: builtin/clone.c:92
+#: builtin/clone.c:96
 msgid "don't use local hardlinks, always copy"
 msgstr ""
 
-#: builtin/clone.c:94
+#: builtin/clone.c:98
 msgid "setup as shared repository"
 msgstr ""
 
-#: builtin/clone.c:96 builtin/clone.c:100
+#: builtin/clone.c:100 builtin/clone.c:104
 msgid "pathspec"
 msgstr ""
 
-#: builtin/clone.c:96 builtin/clone.c:100
+#: builtin/clone.c:100 builtin/clone.c:104
 msgid "initialize submodules in the clone"
 msgstr ""
 
-#: builtin/clone.c:103
+#: builtin/clone.c:107
 msgid "number of submodules cloned in parallel"
 msgstr ""
 
-#: builtin/clone.c:104 builtin/init-db.c:476
+#: builtin/clone.c:108 builtin/init-db.c:476
 msgid "template-directory"
 msgstr ""
 
-#: builtin/clone.c:105 builtin/init-db.c:477
+#: builtin/clone.c:109 builtin/init-db.c:477
 msgid "directory from which templates will be used"
 msgstr ""
 
-#: builtin/clone.c:107 builtin/clone.c:109 builtin/submodule--helper.c:873
-#: builtin/submodule--helper.c:1240
+#: builtin/clone.c:111 builtin/clone.c:113 builtin/submodule--helper.c:1223
+#: builtin/submodule--helper.c:1594
 msgid "reference repository"
 msgstr ""
 
-#: builtin/clone.c:111
+#: builtin/clone.c:115 builtin/submodule--helper.c:1225
+#: builtin/submodule--helper.c:1596
 msgid "use --reference only while cloning"
 msgstr ""
 
-#: builtin/clone.c:112 builtin/column.c:27 builtin/merge-file.c:44
+#: builtin/clone.c:116 builtin/column.c:27 builtin/merge-file.c:44
+#: builtin/pack-objects.c:3166 builtin/repack.c:213
 msgid "name"
 msgstr ""
 
-#: builtin/clone.c:113
+#: builtin/clone.c:117
 msgid "use <name> instead of 'origin' to track upstream"
 msgstr ""
 
-#: builtin/clone.c:115
+#: builtin/clone.c:119
 msgid "checkout <branch> instead of the remote's HEAD"
 msgstr ""
 
-#: builtin/clone.c:117
+#: builtin/clone.c:121
 msgid "path to git-upload-pack on the remote"
 msgstr ""
 
-#: builtin/clone.c:118 builtin/fetch.c:138 builtin/grep.c:806
-#: builtin/pull.c:211
+#: builtin/clone.c:122 builtin/fetch.c:150 builtin/grep.c:813
+#: builtin/pull.c:216
 msgid "depth"
 msgstr ""
 
-#: builtin/clone.c:119
+#: builtin/clone.c:123
 msgid "create a shallow clone of that depth"
 msgstr ""
 
-#: builtin/clone.c:120 builtin/fetch.c:140 builtin/pack-objects.c:2991
-#: parse-options.h:142
+#: builtin/clone.c:124 builtin/fetch.c:152 builtin/pack-objects.c:3157
+#: parse-options.h:154
 msgid "time"
 msgstr ""
 
-#: builtin/clone.c:121
+#: builtin/clone.c:125
 msgid "create a shallow clone since a specific time"
 msgstr ""
 
-#: builtin/clone.c:122 builtin/fetch.c:142
+#: builtin/clone.c:126 builtin/fetch.c:154
 msgid "revision"
 msgstr ""
 
-#: builtin/clone.c:123 builtin/fetch.c:143
+#: builtin/clone.c:127 builtin/fetch.c:155
 msgid "deepen history of shallow clone, excluding rev"
 msgstr ""
 
-#: builtin/clone.c:125
+#: builtin/clone.c:129
 msgid "clone only one branch, HEAD or --branch"
 msgstr ""
 
-#: builtin/clone.c:127
+#: builtin/clone.c:131
 msgid "don't clone any tags, and make later fetches not to follow them"
 msgstr ""
 
-#: builtin/clone.c:129
+#: builtin/clone.c:133
 msgid "any cloned submodules will be shallow"
 msgstr ""
 
-#: builtin/clone.c:130 builtin/init-db.c:485
+#: builtin/clone.c:134 builtin/init-db.c:485
 msgid "gitdir"
 msgstr ""
 
-#: builtin/clone.c:131 builtin/init-db.c:486
+#: builtin/clone.c:135 builtin/init-db.c:486
 msgid "separate git dir from working tree"
 msgstr ""
 
-#: builtin/clone.c:132
+#: builtin/clone.c:136
 msgid "key=value"
 msgstr ""
 
-#: builtin/clone.c:133
+#: builtin/clone.c:137
 msgid "set config inside the new repository"
 msgstr ""
 
-#: builtin/clone.c:134 builtin/fetch.c:160 builtin/pull.c:224
-#: builtin/push.c:567
+#: builtin/clone.c:138 builtin/fetch.c:173 builtin/pull.c:229
+#: builtin/push.c:583
 msgid "use IPv4 addresses only"
 msgstr ""
 
-#: builtin/clone.c:136 builtin/fetch.c:162 builtin/pull.c:227
-#: builtin/push.c:569
+#: builtin/clone.c:140 builtin/fetch.c:175 builtin/pull.c:232
+#: builtin/push.c:585
 msgid "use IPv6 addresses only"
 msgstr ""
 
-#: builtin/clone.c:273
+#: builtin/clone.c:278
 msgid ""
 "No directory name could be guessed.\n"
 "Please specify a directory on the command line"
 msgstr ""
 
-#: builtin/clone.c:326
+#: builtin/clone.c:331
 #, c-format
 msgid "info: Could not add alternate for '%s': %s\n"
 msgstr ""
 
-#: builtin/clone.c:398
+#: builtin/clone.c:403
 #, c-format
 msgid "failed to open '%s'"
 msgstr ""
 
-#: builtin/clone.c:406
+#: builtin/clone.c:411
 #, c-format
 msgid "%s exists and is not a directory"
 msgstr ""
 
-#: builtin/clone.c:420
+#: builtin/clone.c:425
 #, c-format
 msgid "failed to stat %s\n"
 msgstr ""
 
-#: builtin/clone.c:442
+#: builtin/clone.c:447
 #, c-format
 msgid "failed to create link '%s'"
 msgstr ""
 
-#: builtin/clone.c:446
+#: builtin/clone.c:451
 #, c-format
 msgid "failed to copy file to '%s'"
 msgstr ""
 
-#: builtin/clone.c:472
+#: builtin/clone.c:477
 #, c-format
 msgid "done.\n"
 msgstr ""
 
-#: builtin/clone.c:484
+#: builtin/clone.c:491
 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"
 msgstr ""
 
-#: builtin/clone.c:561
+#: builtin/clone.c:568
 #, c-format
 msgid "Could not find remote branch %s to clone."
 msgstr ""
 
-#: builtin/clone.c:656
+#: builtin/clone.c:663
 msgid "remote did not send all necessary objects"
 msgstr ""
 
-#: builtin/clone.c:672
+#: builtin/clone.c:679
 #, c-format
 msgid "unable to update %s"
 msgstr ""
 
-#: builtin/clone.c:721
+#: builtin/clone.c:728
 msgid "remote HEAD refers to nonexistent ref, unable to checkout.\n"
 msgstr ""
 
-#: builtin/clone.c:751
+#: builtin/clone.c:758
 msgid "unable to checkout working tree"
 msgstr ""
 
-#: builtin/clone.c:796
+#: builtin/clone.c:803
 msgid "unable to write parameters to config file"
 msgstr ""
 
-#: builtin/clone.c:859
+#: builtin/clone.c:866
 msgid "cannot repack to clean up"
 msgstr ""
 
-#: builtin/clone.c:861
+#: builtin/clone.c:868
 msgid "cannot unlink temporary alternates file"
 msgstr ""
 
-#: builtin/clone.c:894 builtin/receive-pack.c:1945
+#: builtin/clone.c:907 builtin/receive-pack.c:1947
 msgid "Too many arguments."
 msgstr ""
 
-#: builtin/clone.c:898
+#: builtin/clone.c:911
 msgid "You must specify a repository to clone."
 msgstr ""
 
-#: builtin/clone.c:911
+#: builtin/clone.c:924
 #, c-format
 msgid "--bare and --origin %s options are incompatible."
 msgstr ""
 
-#: builtin/clone.c:914
+#: builtin/clone.c:927
 msgid "--bare and --separate-git-dir are incompatible."
 msgstr ""
 
-#: builtin/clone.c:927
+#: builtin/clone.c:940
 #, c-format
 msgid "repository '%s' does not exist"
 msgstr ""
 
-#: builtin/clone.c:933 builtin/fetch.c:1358
+#: builtin/clone.c:946 builtin/fetch.c:1460
 #, c-format
 msgid "depth %s is not a positive number"
 msgstr ""
 
-#: builtin/clone.c:943
+#: builtin/clone.c:956
 #, c-format
 msgid "destination path '%s' already exists and is not an empty directory."
 msgstr ""
 
-#: builtin/clone.c:953
+#: builtin/clone.c:966
 #, c-format
 msgid "working tree '%s' already exists."
 msgstr ""
 
-#: builtin/clone.c:968 builtin/clone.c:979 builtin/difftool.c:270
-#: builtin/worktree.c:253 builtin/worktree.c:283
+#: builtin/clone.c:981 builtin/clone.c:1002 builtin/difftool.c:270
+#: builtin/worktree.c:246 builtin/worktree.c:276
 #, c-format
 msgid "could not create leading directories of '%s'"
 msgstr ""
 
-#: builtin/clone.c:971
+#: builtin/clone.c:986
 #, c-format
 msgid "could not create work tree dir '%s'"
 msgstr ""
 
-#: builtin/clone.c:983
+#: builtin/clone.c:1006
 #, c-format
 msgid "Cloning into bare repository '%s'...\n"
 msgstr ""
 
-#: builtin/clone.c:985
+#: builtin/clone.c:1008
 #, c-format
 msgid "Cloning into '%s'...\n"
 msgstr ""
 
-#: builtin/clone.c:1009
+#: builtin/clone.c:1032
 msgid ""
 "clone --recursive is not compatible with both --reference and --reference-if-"
 "able"
 msgstr ""
 
-#: builtin/clone.c:1071
+#: builtin/clone.c:1093
 msgid "--depth is ignored in local clones; use file:// instead."
 msgstr ""
 
-#: builtin/clone.c:1073
+#: builtin/clone.c:1095
 msgid "--shallow-since is ignored in local clones; use file:// instead."
 msgstr ""
 
-#: builtin/clone.c:1075
+#: builtin/clone.c:1097
 msgid "--shallow-exclude is ignored in local clones; use file:// instead."
 msgstr ""
 
-#: builtin/clone.c:1078
+#: builtin/clone.c:1099
+msgid "--filter is ignored in local clones; use file:// instead."
+msgstr ""
+
+#: builtin/clone.c:1102
 msgid "source repository is shallow, ignoring --local"
 msgstr ""
 
-#: builtin/clone.c:1083
+#: builtin/clone.c:1107
 msgid "--local is ignored"
 msgstr ""
 
-#: builtin/clone.c:1139 builtin/clone.c:1147
+#: builtin/clone.c:1169 builtin/clone.c:1177
 #, c-format
 msgid "Remote branch %s not found in upstream %s"
 msgstr ""
 
-#: builtin/clone.c:1150
+#: builtin/clone.c:1180
 msgid "You appear to have cloned an empty repository."
 msgstr ""
 
@@ -6547,55 +7145,26 @@ msgstr ""
 msgid "Padding space between columns"
 msgstr ""
 
-#: builtin/column.c:52
+#: builtin/column.c:51
 msgid "--command must be the first argument"
 msgstr ""
 
-#: builtin/commit.c:39
+#: builtin/commit.c:37
 msgid "git commit [<options>] [--] <pathspec>..."
 msgstr ""
 
-#: builtin/commit.c:44
+#: builtin/commit.c:42
 msgid "git status [<options>] [--] <pathspec>..."
 msgstr ""
 
-#: builtin/commit.c:49
-msgid ""
-"Your name and email address were configured automatically based\n"
-"on your username and hostname. Please check that they are accurate.\n"
-"You can suppress this message by setting them explicitly. Run the\n"
-"following command and follow the instructions in your editor to edit\n"
-"your configuration file:\n"
-"\n"
-"    git config --global --edit\n"
-"\n"
-"After doing this, you may fix the identity used for this commit with:\n"
-"\n"
-"    git commit --amend --reset-author\n"
-msgstr ""
-
-#: builtin/commit.c:62
-msgid ""
-"Your name and email address were configured automatically based\n"
-"on your username and hostname. Please check that they are accurate.\n"
-"You can suppress this message by setting them explicitly:\n"
-"\n"
-"    git config --global user.name \"Your Name\"\n"
-"    git config --global user.email you@example.com\n"
-"\n"
-"After doing this, you may fix the identity used for this commit with:\n"
-"\n"
-"    git commit --amend --reset-author\n"
-msgstr ""
-
-#: builtin/commit.c:74
+#: builtin/commit.c:47
 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:79
+#: builtin/commit.c:52
 msgid ""
 "The previous cherry-pick is now empty, possibly due to conflict resolution.\n"
 "If you wish to commit it anyway, use:\n"
@@ -6604,11 +7173,11 @@ msgid ""
 "\n"
 msgstr ""
 
-#: builtin/commit.c:86
+#: builtin/commit.c:59
 msgid "Otherwise, please use 'git reset'\n"
 msgstr ""
 
-#: builtin/commit.c:89
+#: builtin/commit.c:62
 msgid ""
 "If you wish to skip this commit, use:\n"
 "\n"
@@ -6618,98 +7187,98 @@ msgid ""
 "the remaining commits.\n"
 msgstr ""
 
-#: builtin/commit.c:318
+#: builtin/commit.c:293
 msgid "failed to unpack HEAD tree object"
 msgstr ""
 
-#: builtin/commit.c:359
+#: builtin/commit.c:334
 msgid "unable to create temporary index"
 msgstr ""
 
-#: builtin/commit.c:365
+#: builtin/commit.c:340
 msgid "interactive add failed"
 msgstr ""
 
-#: builtin/commit.c:378
+#: builtin/commit.c:353
 msgid "unable to update temporary index"
 msgstr ""
 
-#: builtin/commit.c:380
+#: builtin/commit.c:355
 msgid "Failed to update main cache tree"
 msgstr ""
 
-#: builtin/commit.c:405 builtin/commit.c:429 builtin/commit.c:478
+#: builtin/commit.c:380 builtin/commit.c:403 builtin/commit.c:449
 msgid "unable to write new_index file"
 msgstr ""
 
-#: builtin/commit.c:461
+#: builtin/commit.c:432
 msgid "cannot do a partial commit during a merge."
 msgstr ""
 
-#: builtin/commit.c:463
+#: builtin/commit.c:434
 msgid "cannot do a partial commit during a cherry-pick."
 msgstr ""
 
-#: builtin/commit.c:471
+#: builtin/commit.c:442
 msgid "cannot read the index"
 msgstr ""
 
-#: builtin/commit.c:490
+#: builtin/commit.c:461
 msgid "unable to write temporary index file"
 msgstr ""
 
-#: builtin/commit.c:587
+#: builtin/commit.c:558
 #, c-format
 msgid "commit '%s' lacks author header"
 msgstr ""
 
-#: builtin/commit.c:589
+#: builtin/commit.c:560
 #, c-format
 msgid "commit '%s' has malformed author line"
 msgstr ""
 
-#: builtin/commit.c:608
+#: builtin/commit.c:579
 msgid "malformed --author parameter"
 msgstr ""
 
-#: builtin/commit.c:660
+#: builtin/commit.c:631
 msgid ""
 "unable to select a comment character that is not used\n"
 "in the current commit message"
 msgstr ""
 
-#: builtin/commit.c:697 builtin/commit.c:730 builtin/commit.c:1114
+#: builtin/commit.c:668 builtin/commit.c:701 builtin/commit.c:1029
 #, c-format
 msgid "could not lookup commit %s"
 msgstr ""
 
-#: builtin/commit.c:709 builtin/shortlog.c:309
+#: builtin/commit.c:680 builtin/shortlog.c:316
 #, c-format
 msgid "(reading log message from standard input)\n"
 msgstr ""
 
-#: builtin/commit.c:711
+#: builtin/commit.c:682
 msgid "could not read log from standard input"
 msgstr ""
 
-#: builtin/commit.c:715
+#: builtin/commit.c:686
 #, c-format
 msgid "could not read log file '%s'"
 msgstr ""
 
-#: builtin/commit.c:742 builtin/commit.c:750
+#: builtin/commit.c:715 builtin/commit.c:723
 msgid "could not read SQUASH_MSG"
 msgstr ""
 
-#: builtin/commit.c:747
+#: builtin/commit.c:720
 msgid "could not read MERGE_MSG"
 msgstr ""
 
-#: builtin/commit.c:801
+#: builtin/commit.c:774
 msgid "could not write commit template"
 msgstr ""
 
-#: builtin/commit.c:819
+#: builtin/commit.c:792
 #, c-format
 msgid ""
 "\n"
@@ -6719,7 +7288,7 @@ msgid ""
 "and try again.\n"
 msgstr ""
 
-#: builtin/commit.c:824
+#: builtin/commit.c:797
 #, c-format
 msgid ""
 "\n"
@@ -6729,14 +7298,14 @@ msgid ""
 "and try again.\n"
 msgstr ""
 
-#: builtin/commit.c:837
+#: builtin/commit.c:810
 #, 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:844
+#: builtin/commit.c:818
 #, c-format
 msgid ""
 "Please enter the commit message for your changes. Lines starting\n"
@@ -6744,504 +7313,554 @@ msgid ""
 "An empty message aborts the commit.\n"
 msgstr ""
 
-#: builtin/commit.c:861
+#: builtin/commit.c:835
 #, c-format
 msgid "%sAuthor:    %.*s <%.*s>"
 msgstr ""
 
-#: builtin/commit.c:869
+#: builtin/commit.c:843
 #, c-format
 msgid "%sDate:      %s"
 msgstr ""
 
-#: builtin/commit.c:876
+#: builtin/commit.c:850
 #, c-format
 msgid "%sCommitter: %.*s <%.*s>"
 msgstr ""
 
-#: builtin/commit.c:893
+#: builtin/commit.c:867
 msgid "Cannot read index"
 msgstr ""
 
-#: builtin/commit.c:959
+#: builtin/commit.c:933
 msgid "Error building trees"
 msgstr ""
 
-#: builtin/commit.c:973 builtin/tag.c:252
+#: builtin/commit.c:947 builtin/tag.c:257
 #, c-format
 msgid "Please supply the message using either -m or -F option.\n"
 msgstr ""
 
-#: builtin/commit.c:1076
+#: builtin/commit.c:991
 #, c-format
 msgid "--author '%s' is not 'Name <email>' and matches no existing author"
 msgstr ""
 
-#: builtin/commit.c:1090
+#: builtin/commit.c:1005
 #, c-format
 msgid "Invalid ignored mode '%s'"
 msgstr ""
 
-#: builtin/commit.c:1104 builtin/commit.c:1349
+#: builtin/commit.c:1019 builtin/commit.c:1269
 #, c-format
 msgid "Invalid untracked files mode '%s'"
 msgstr ""
 
-#: builtin/commit.c:1142
+#: builtin/commit.c:1057
 msgid "--long and -z are incompatible"
 msgstr ""
 
-#: builtin/commit.c:1172
+#: builtin/commit.c:1090
 msgid "Using both --reset-author and --author does not make sense"
 msgstr ""
 
-#: builtin/commit.c:1181
+#: builtin/commit.c:1099
 msgid "You have nothing to amend."
 msgstr ""
 
-#: builtin/commit.c:1184
+#: builtin/commit.c:1102
 msgid "You are in the middle of a merge -- cannot amend."
 msgstr ""
 
-#: builtin/commit.c:1186
+#: builtin/commit.c:1104
 msgid "You are in the middle of a cherry-pick -- cannot amend."
 msgstr ""
 
-#: builtin/commit.c:1189
+#: builtin/commit.c:1107
 msgid "Options --squash and --fixup cannot be used together"
 msgstr ""
 
-#: builtin/commit.c:1199
+#: builtin/commit.c:1117
 msgid "Only one of -c/-C/-F/--fixup can be used."
 msgstr ""
 
-#: builtin/commit.c:1201
-msgid "Option -m cannot be combined with -c/-C/-F/--fixup."
+#: builtin/commit.c:1119
+msgid "Option -m cannot be combined with -c/-C/-F."
 msgstr ""
 
-#: builtin/commit.c:1209
+#: builtin/commit.c:1127
 msgid "--reset-author can be used only with -C, -c or --amend."
 msgstr ""
 
-#: builtin/commit.c:1226
+#: builtin/commit.c:1144
 msgid "Only one of --include/--only/--all/--interactive/--patch can be used."
 msgstr ""
 
-#: builtin/commit.c:1228
+#: builtin/commit.c:1146
 msgid "No paths with --include/--only does not make sense."
 msgstr ""
 
-#: builtin/commit.c:1240 builtin/tag.c:535
+#: builtin/commit.c:1160 builtin/tag.c:543
 #, c-format
 msgid "Invalid cleanup mode %s"
 msgstr ""
 
-#: builtin/commit.c:1245
+#: builtin/commit.c:1165
 msgid "Paths with -a does not make sense."
 msgstr ""
 
-#: builtin/commit.c:1363 builtin/commit.c:1648
+#: builtin/commit.c:1303 builtin/commit.c:1480
 msgid "show status concisely"
 msgstr ""
 
-#: builtin/commit.c:1365 builtin/commit.c:1650
+#: builtin/commit.c:1305 builtin/commit.c:1482
 msgid "show branch information"
 msgstr ""
 
-#: builtin/commit.c:1367
+#: builtin/commit.c:1307
 msgid "show stash information"
 msgstr ""
 
-#: builtin/commit.c:1369
+#: builtin/commit.c:1309 builtin/commit.c:1484
+msgid "compute full ahead/behind values"
+msgstr ""
+
+#: builtin/commit.c:1311
 msgid "version"
 msgstr ""
 
-#: builtin/commit.c:1369 builtin/commit.c:1652 builtin/push.c:542
-#: builtin/worktree.c:523
+#: builtin/commit.c:1311 builtin/commit.c:1486 builtin/push.c:558
+#: builtin/worktree.c:581
 msgid "machine-readable output"
 msgstr ""
 
-#: builtin/commit.c:1372 builtin/commit.c:1654
+#: builtin/commit.c:1314 builtin/commit.c:1488
 msgid "show status in long format (default)"
 msgstr ""
 
-#: builtin/commit.c:1375 builtin/commit.c:1657
+#: builtin/commit.c:1317 builtin/commit.c:1491
 msgid "terminate entries with NUL"
 msgstr ""
 
-#: builtin/commit.c:1377 builtin/commit.c:1381 builtin/commit.c:1660
-#: builtin/fast-export.c:999 builtin/fast-export.c:1002 builtin/tag.c:390
+#: builtin/commit.c:1319 builtin/commit.c:1323 builtin/commit.c:1494
+#: builtin/fast-export.c:1001 builtin/fast-export.c:1004 builtin/tag.c:397
 msgid "mode"
 msgstr ""
 
-#: builtin/commit.c:1378 builtin/commit.c:1660
+#: builtin/commit.c:1320 builtin/commit.c:1494
 msgid "show untracked files, optional modes: all, normal, no. (Default: all)"
 msgstr ""
 
-#: builtin/commit.c:1382
+#: builtin/commit.c:1324
 msgid ""
 "show ignored files, optional modes: traditional, matching, no. (Default: "
 "traditional)"
 msgstr ""
 
-#: builtin/commit.c:1384 parse-options.h:155
+#: builtin/commit.c:1326 parse-options.h:167
 msgid "when"
 msgstr ""
 
-#: builtin/commit.c:1385
+#: builtin/commit.c:1327
 msgid ""
 "ignore changes to submodules, optional when: all, dirty, untracked. "
 "(Default: all)"
 msgstr ""
 
-#: builtin/commit.c:1387
+#: builtin/commit.c:1329
 msgid "list untracked files in columns"
 msgstr ""
 
-#: builtin/commit.c:1406
-msgid "Unsupported combination of ignored and untracked-files arguments"
-msgstr ""
-
-#: builtin/commit.c:1469
-msgid "couldn't look up newly created commit"
-msgstr ""
-
-#: builtin/commit.c:1471
-msgid "could not parse newly created commit"
-msgstr ""
-
-#: builtin/commit.c:1516
-msgid "unable to resolve HEAD after creating commit"
+#: builtin/commit.c:1330
+msgid "do not detect renames"
 msgstr ""
 
-#: builtin/commit.c:1518
-msgid "detached HEAD"
+#: builtin/commit.c:1332
+msgid "detect renames, optionally set similarity index"
 msgstr ""
 
-#: builtin/commit.c:1521
-msgid " (root-commit)"
+#: builtin/commit.c:1352
+msgid "Unsupported combination of ignored and untracked-files arguments"
 msgstr ""
 
-#: builtin/commit.c:1618
+#: builtin/commit.c:1450
 msgid "suppress summary after successful commit"
 msgstr ""
 
-#: builtin/commit.c:1619
+#: builtin/commit.c:1451
 msgid "show diff in commit message template"
 msgstr ""
 
-#: builtin/commit.c:1621
+#: builtin/commit.c:1453
 msgid "Commit message options"
 msgstr ""
 
-#: builtin/commit.c:1622 builtin/tag.c:388
+#: builtin/commit.c:1454 builtin/tag.c:394
 msgid "read message from file"
 msgstr ""
 
-#: builtin/commit.c:1623
+#: builtin/commit.c:1455
 msgid "author"
 msgstr ""
 
-#: builtin/commit.c:1623
+#: builtin/commit.c:1455
 msgid "override author for commit"
 msgstr ""
 
-#: builtin/commit.c:1624 builtin/gc.c:359
+#: builtin/commit.c:1456 builtin/gc.c:501
 msgid "date"
 msgstr ""
 
-#: builtin/commit.c:1624
+#: builtin/commit.c:1456
 msgid "override date for commit"
 msgstr ""
 
-#: builtin/commit.c:1625 builtin/merge.c:225 builtin/notes.c:402
-#: builtin/notes.c:565 builtin/tag.c:386
+#: builtin/commit.c:1457 builtin/merge.c:228 builtin/notes.c:402
+#: builtin/notes.c:565 builtin/tag.c:392
 msgid "message"
 msgstr ""
 
-#: builtin/commit.c:1625
+#: builtin/commit.c:1457
 msgid "commit message"
 msgstr ""
 
-#: builtin/commit.c:1626 builtin/commit.c:1627 builtin/commit.c:1628
-#: builtin/commit.c:1629 parse-options.h:257 ref-filter.h:92
+#: builtin/commit.c:1458 builtin/commit.c:1459 builtin/commit.c:1460
+#: builtin/commit.c:1461 parse-options.h:270 ref-filter.h:92
 msgid "commit"
 msgstr ""
 
-#: builtin/commit.c:1626
+#: builtin/commit.c:1458
 msgid "reuse and edit message from specified commit"
 msgstr ""
 
-#: builtin/commit.c:1627
+#: builtin/commit.c:1459
 msgid "reuse message from specified commit"
 msgstr ""
 
-#: builtin/commit.c:1628
+#: builtin/commit.c:1460
 msgid "use autosquash formatted message to fixup specified commit"
 msgstr ""
 
-#: builtin/commit.c:1629
+#: builtin/commit.c:1461
 msgid "use autosquash formatted message to squash specified commit"
 msgstr ""
 
-#: builtin/commit.c:1630
+#: builtin/commit.c:1462
 msgid "the commit is authored by me now (used with -C/-c/--amend)"
 msgstr ""
 
-#: builtin/commit.c:1631 builtin/log.c:1443 builtin/merge.c:239
-#: builtin/pull.c:149 builtin/revert.c:105
+#: builtin/commit.c:1463 builtin/log.c:1446 builtin/merge.c:242
+#: builtin/pull.c:154 builtin/revert.c:105
 msgid "add Signed-off-by:"
 msgstr ""
 
-#: builtin/commit.c:1632
+#: builtin/commit.c:1464
 msgid "use specified template file"
 msgstr ""
 
-#: builtin/commit.c:1633
+#: builtin/commit.c:1465
 msgid "force edit of commit"
 msgstr ""
 
-#: builtin/commit.c:1634
+#: builtin/commit.c:1466
 msgid "default"
 msgstr ""
 
-#: builtin/commit.c:1634 builtin/tag.c:391
+#: builtin/commit.c:1466 builtin/tag.c:398
 msgid "how to strip spaces and #comments from message"
 msgstr ""
 
-#: builtin/commit.c:1635
+#: builtin/commit.c:1467
 msgid "include status in commit message template"
 msgstr ""
 
-#: builtin/commit.c:1637 builtin/merge.c:237 builtin/pull.c:179
+#: builtin/commit.c:1469 builtin/merge.c:240 builtin/pull.c:184
 #: builtin/revert.c:113
 msgid "GPG sign commit"
 msgstr ""
 
-#: builtin/commit.c:1640
+#: builtin/commit.c:1472
 msgid "Commit contents options"
 msgstr ""
 
-#: builtin/commit.c:1641
+#: builtin/commit.c:1473
 msgid "commit all changed files"
 msgstr ""
 
-#: builtin/commit.c:1642
+#: builtin/commit.c:1474
 msgid "add specified files to index for commit"
 msgstr ""
 
-#: builtin/commit.c:1643
+#: builtin/commit.c:1475
 msgid "interactively add files"
 msgstr ""
 
-#: builtin/commit.c:1644
+#: builtin/commit.c:1476
 msgid "interactively add changes"
 msgstr ""
 
-#: builtin/commit.c:1645
+#: builtin/commit.c:1477
 msgid "commit only specified files"
 msgstr ""
 
-#: builtin/commit.c:1646
+#: builtin/commit.c:1478
 msgid "bypass pre-commit and commit-msg hooks"
 msgstr ""
 
-#: builtin/commit.c:1647
+#: builtin/commit.c:1479
 msgid "show what would be committed"
 msgstr ""
 
-#: builtin/commit.c:1658
+#: builtin/commit.c:1492
 msgid "amend previous commit"
 msgstr ""
 
-#: builtin/commit.c:1659
+#: builtin/commit.c:1493
 msgid "bypass post-rewrite hook"
 msgstr ""
 
-#: builtin/commit.c:1664
+#: builtin/commit.c:1498
 msgid "ok to record an empty change"
 msgstr ""
 
-#: builtin/commit.c:1666
+#: builtin/commit.c:1500
 msgid "ok to record a change with an empty message"
 msgstr ""
 
-#: builtin/commit.c:1696
-msgid "could not parse HEAD commit"
-msgstr ""
-
-#: builtin/commit.c:1741
+#: builtin/commit.c:1573
 #, c-format
 msgid "Corrupt MERGE_HEAD file (%s)"
 msgstr ""
 
-#: builtin/commit.c:1748
+#: builtin/commit.c:1580
 msgid "could not read MERGE_MODE"
 msgstr ""
 
-#: builtin/commit.c:1767
+#: builtin/commit.c:1599
 #, c-format
 msgid "could not read commit message: %s"
 msgstr ""
 
-#: builtin/commit.c:1778
+#: builtin/commit.c:1610
 #, c-format
 msgid "Aborting commit due to empty commit message.\n"
 msgstr ""
 
-#: builtin/commit.c:1783
+#: builtin/commit.c:1615
 #, c-format
 msgid "Aborting commit; you did not edit the message.\n"
 msgstr ""
 
-#: builtin/commit.c:1831
+#: builtin/commit.c:1650
 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."
 msgstr ""
 
+#: builtin/commit-graph.c:9
+msgid "git commit-graph [--object-dir <objdir>]"
+msgstr ""
+
+#: builtin/commit-graph.c:10 builtin/commit-graph.c:16
+msgid "git commit-graph read [--object-dir <objdir>]"
+msgstr ""
+
+#: builtin/commit-graph.c:11 builtin/commit-graph.c:21
+msgid ""
+"git commit-graph write [--object-dir <objdir>] [--append] [--stdin-packs|--"
+"stdin-commits]"
+msgstr ""
+
+#: builtin/commit-graph.c:39 builtin/commit-graph.c:92
+#: builtin/commit-graph.c:147 builtin/fetch.c:161 builtin/log.c:1466
+msgid "dir"
+msgstr ""
+
+#: builtin/commit-graph.c:40 builtin/commit-graph.c:93
+#: builtin/commit-graph.c:148
+msgid "The object directory to store the graph"
+msgstr ""
+
+#: builtin/commit-graph.c:95
+msgid "scan pack-indexes listed by stdin for commits"
+msgstr ""
+
+#: builtin/commit-graph.c:97
+msgid "start walk at commits listed by stdin"
+msgstr ""
+
+#: builtin/commit-graph.c:99
+msgid "include all commits already in the commit-graph file"
+msgstr ""
+
+#: builtin/commit-graph.c:108
+msgid "cannot use both --stdin-commits and --stdin-packs"
+msgstr ""
+
 #: builtin/config.c:10
 msgid "git config [<options>]"
 msgstr ""
 
-#: builtin/config.c:58
+#: builtin/config.c:101
+#, c-format
+msgid "unrecognized --type argument, %s"
+msgstr ""
+
+#: builtin/config.c:123
 msgid "Config file location"
 msgstr ""
 
-#: builtin/config.c:59
+#: builtin/config.c:124
 msgid "use global config file"
 msgstr ""
 
-#: builtin/config.c:60
+#: builtin/config.c:125
 msgid "use system config file"
 msgstr ""
 
-#: builtin/config.c:61
+#: builtin/config.c:126
 msgid "use repository config file"
 msgstr ""
 
-#: builtin/config.c:62
+#: builtin/config.c:127
 msgid "use given config file"
 msgstr ""
 
-#: builtin/config.c:63
+#: builtin/config.c:128
 msgid "blob-id"
 msgstr ""
 
-#: builtin/config.c:63
+#: builtin/config.c:128
 msgid "read config from given blob object"
 msgstr ""
 
-#: builtin/config.c:64
+#: builtin/config.c:129
 msgid "Action"
 msgstr ""
 
-#: builtin/config.c:65
+#: builtin/config.c:130
 msgid "get value: name [value-regex]"
 msgstr ""
 
-#: builtin/config.c:66
+#: builtin/config.c:131
 msgid "get all values: key [value-regex]"
 msgstr ""
 
-#: builtin/config.c:67
+#: builtin/config.c:132
 msgid "get values for regexp: name-regex [value-regex]"
 msgstr ""
 
-#: builtin/config.c:68
+#: builtin/config.c:133
 msgid "get value specific for the URL: section[.var] URL"
 msgstr ""
 
-#: builtin/config.c:69
+#: builtin/config.c:134
 msgid "replace all matching variables: name value [value_regex]"
 msgstr ""
 
-#: builtin/config.c:70
+#: builtin/config.c:135
 msgid "add a new variable: name value"
 msgstr ""
 
-#: builtin/config.c:71
+#: builtin/config.c:136
 msgid "remove a variable: name [value-regex]"
 msgstr ""
 
-#: builtin/config.c:72
+#: builtin/config.c:137
 msgid "remove all matches: name [value-regex]"
 msgstr ""
 
-#: builtin/config.c:73
+#: builtin/config.c:138
 msgid "rename section: old-name new-name"
 msgstr ""
 
-#: builtin/config.c:74
+#: builtin/config.c:139
 msgid "remove a section: name"
 msgstr ""
 
-#: builtin/config.c:75
+#: builtin/config.c:140
 msgid "list all"
 msgstr ""
 
-#: builtin/config.c:76
+#: builtin/config.c:141
 msgid "open an editor"
 msgstr ""
 
-#: builtin/config.c:77
+#: builtin/config.c:142
 msgid "find the color configured: slot [default]"
 msgstr ""
 
-#: builtin/config.c:78
+#: builtin/config.c:143
 msgid "find the color setting: slot [stdout-is-tty]"
 msgstr ""
 
-#: builtin/config.c:79
+#: builtin/config.c:144
 msgid "Type"
 msgstr ""
 
-#: builtin/config.c:80
+#: builtin/config.c:145
+msgid "value is given this type"
+msgstr ""
+
+#: builtin/config.c:146
 msgid "value is \"true\" or \"false\""
 msgstr ""
 
-#: builtin/config.c:81
+#: builtin/config.c:147
 msgid "value is decimal number"
 msgstr ""
 
-#: builtin/config.c:82
+#: builtin/config.c:148
 msgid "value is --bool or --int"
 msgstr ""
 
-#: builtin/config.c:83
+#: builtin/config.c:149
 msgid "value is a path (file or directory name)"
 msgstr ""
 
-#: builtin/config.c:84
+#: builtin/config.c:150
 msgid "value is an expiry date"
 msgstr ""
 
-#: builtin/config.c:85
+#: builtin/config.c:151
 msgid "Other"
 msgstr ""
 
-#: builtin/config.c:86
+#: builtin/config.c:152
 msgid "terminate values with NUL byte"
 msgstr ""
 
-#: builtin/config.c:87
+#: builtin/config.c:153
 msgid "show variable names only"
 msgstr ""
 
-#: builtin/config.c:88
+#: builtin/config.c:154
 msgid "respect include directives on lookup"
 msgstr ""
 
-#: builtin/config.c:89
+#: builtin/config.c:155
 msgid "show origin of config (file, standard input, blob, command line)"
 msgstr ""
 
-#: builtin/config.c:335
+#: builtin/config.c:156
+msgid "value"
+msgstr ""
+
+#: builtin/config.c:156
+msgid "with --get, use default value when missing entry"
+msgstr ""
+
+#: builtin/config.c:332
+#, c-format
+msgid "failed to format default config value: %s"
+msgstr ""
+
+#: builtin/config.c:431
 msgid "unable to parse default color value"
 msgstr ""
 
-#: builtin/config.c:479
+#: builtin/config.c:575
 #, c-format
 msgid ""
 "# This is Git's per-user configuration file.\n"
@@ -7251,27 +7870,31 @@ msgid ""
 "#\temail = %s\n"
 msgstr ""
 
-#: builtin/config.c:507
+#: builtin/config.c:603
 msgid "--local can only be used inside a git repository"
 msgstr ""
 
-#: builtin/config.c:632
+#: builtin/config.c:606
+msgid "--blob can only be used inside a git repository"
+msgstr ""
+
+#: builtin/config.c:735
 #, c-format
 msgid "cannot create configuration file %s"
 msgstr ""
 
-#: builtin/config.c:645
+#: builtin/config.c:748
 #, c-format
 msgid ""
 "cannot overwrite multiple values with a single value\n"
 "       Use a regexp, --add or --replace-all to change %s."
 msgstr ""
 
-#: builtin/count-objects.c:88
+#: builtin/count-objects.c:90
 msgid "git count-objects [-v] [-H | --human-readable]"
 msgstr ""
 
-#: builtin/count-objects.c:98
+#: builtin/count-objects.c:100
 msgid "print sizes in human readable format"
 msgstr ""
 
@@ -7310,131 +7933,131 @@ msgstr ""
 msgid "tag '%s' is really '%s' here"
 msgstr ""
 
-#: builtin/describe.c:314
+#: builtin/describe.c:317
 #, c-format
 msgid "no tag exactly matches '%s'"
 msgstr ""
 
-#: builtin/describe.c:316
+#: builtin/describe.c:319
 #, c-format
 msgid "No exact match on refs or tags, searching to describe\n"
 msgstr ""
 
-#: builtin/describe.c:363
+#: builtin/describe.c:366
 #, c-format
 msgid "finished search at %s\n"
 msgstr ""
 
-#: builtin/describe.c:389
+#: builtin/describe.c:392
 #, c-format
 msgid ""
 "No annotated tags can describe '%s'.\n"
 "However, there were unannotated tags: try --tags."
 msgstr ""
 
-#: builtin/describe.c:393
+#: builtin/describe.c:396
 #, c-format
 msgid ""
 "No tags can describe '%s'.\n"
 "Try --always, or create some tags."
 msgstr ""
 
-#: builtin/describe.c:423
+#: builtin/describe.c:426
 #, c-format
 msgid "traversed %lu commits\n"
 msgstr ""
 
-#: builtin/describe.c:426
+#: builtin/describe.c:429
 #, c-format
 msgid ""
 "more than %i tags found; listed %i most recent\n"
 "gave up search at %s\n"
 msgstr ""
 
-#: builtin/describe.c:494
+#: builtin/describe.c:497
 #, c-format
 msgid "describe %s\n"
 msgstr ""
 
-#: builtin/describe.c:497 builtin/log.c:500
+#: builtin/describe.c:500 builtin/log.c:502
 #, c-format
 msgid "Not a valid object name %s"
 msgstr ""
 
-#: builtin/describe.c:505
+#: builtin/describe.c:508
 #, c-format
 msgid "%s is neither a commit nor blob"
 msgstr ""
 
-#: builtin/describe.c:519
+#: builtin/describe.c:522
 msgid "find the tag that comes after the commit"
 msgstr ""
 
-#: builtin/describe.c:520
+#: builtin/describe.c:523
 msgid "debug search strategy on stderr"
 msgstr ""
 
-#: builtin/describe.c:521
+#: builtin/describe.c:524
 msgid "use any ref"
 msgstr ""
 
-#: builtin/describe.c:522
+#: builtin/describe.c:525
 msgid "use any tag, even unannotated"
 msgstr ""
 
-#: builtin/describe.c:523
+#: builtin/describe.c:526
 msgid "always use long format"
 msgstr ""
 
-#: builtin/describe.c:524
+#: builtin/describe.c:527
 msgid "only follow first parent"
 msgstr ""
 
-#: builtin/describe.c:527
+#: builtin/describe.c:530
 msgid "only output exact matches"
 msgstr ""
 
-#: builtin/describe.c:529
+#: builtin/describe.c:532
 msgid "consider <n> most recent tags (default: 10)"
 msgstr ""
 
-#: builtin/describe.c:531
+#: builtin/describe.c:534
 msgid "only consider tags matching <pattern>"
 msgstr ""
 
-#: builtin/describe.c:533
+#: builtin/describe.c:536
 msgid "do not consider tags matching <pattern>"
 msgstr ""
 
-#: builtin/describe.c:535 builtin/name-rev.c:406
+#: builtin/describe.c:538 builtin/name-rev.c:406
 msgid "show abbreviated commit object as fallback"
 msgstr ""
 
-#: builtin/describe.c:536 builtin/describe.c:539
+#: builtin/describe.c:539 builtin/describe.c:542
 msgid "mark"
 msgstr ""
 
-#: builtin/describe.c:537
+#: builtin/describe.c:540
 msgid "append <mark> on dirty working tree (default: \"-dirty\")"
 msgstr ""
 
-#: builtin/describe.c:540
+#: builtin/describe.c:543
 msgid "append <mark> on broken working tree (default: \"-broken\")"
 msgstr ""
 
-#: builtin/describe.c:558
+#: builtin/describe.c:561
 msgid "--long is incompatible with --abbrev=0"
 msgstr ""
 
-#: builtin/describe.c:587
+#: builtin/describe.c:590
 msgid "No names found, cannot describe anything."
 msgstr ""
 
-#: builtin/describe.c:637
+#: builtin/describe.c:640
 msgid "--dirty is incompatible with commit-ishes"
 msgstr ""
 
-#: builtin/describe.c:639
+#: builtin/describe.c:642
 msgid "--broken is incompatible with commit-ishes"
 msgstr ""
 
@@ -7527,362 +8150,377 @@ msgstr ""
 msgid "do not prompt before launching a diff tool"
 msgstr ""
 
-#: builtin/difftool.c:705
+#: builtin/difftool.c:704
 msgid "use symlinks in dir-diff mode"
 msgstr ""
 
-#: builtin/difftool.c:706
+#: builtin/difftool.c:705
 msgid "<tool>"
 msgstr ""
 
-#: builtin/difftool.c:707
+#: builtin/difftool.c:706
 msgid "use the specified diff tool"
 msgstr ""
 
-#: builtin/difftool.c:709
+#: builtin/difftool.c:708
 msgid "print a list of diff tools that may be used with `--tool`"
 msgstr ""
 
-#: builtin/difftool.c:712
+#: builtin/difftool.c:711
 msgid ""
 "make 'git-difftool' exit when an invoked diff tool returns a non - zero exit "
 "code"
 msgstr ""
 
-#: builtin/difftool.c:714
+#: builtin/difftool.c:713
 msgid "<command>"
 msgstr ""
 
-#: builtin/difftool.c:715
+#: builtin/difftool.c:714
 msgid "specify a custom command for viewing diffs"
 msgstr ""
 
-#: builtin/difftool.c:739
+#: builtin/difftool.c:738
 msgid "no <tool> given for --tool=<tool>"
 msgstr ""
 
-#: builtin/difftool.c:746
+#: builtin/difftool.c:745
 msgid "no <cmd> given for --extcmd=<cmd>"
 msgstr ""
 
-#: builtin/fast-export.c:26
+#: builtin/fast-export.c:27
 msgid "git fast-export [rev-list-opts]"
 msgstr ""
 
-#: builtin/fast-export.c:998
+#: builtin/fast-export.c:1000
 msgid "show progress after <n> objects"
 msgstr ""
 
-#: builtin/fast-export.c:1000
+#: builtin/fast-export.c:1002
 msgid "select handling of signed tags"
 msgstr ""
 
-#: builtin/fast-export.c:1003
+#: builtin/fast-export.c:1005
 msgid "select handling of tags that tag filtered objects"
 msgstr ""
 
-#: builtin/fast-export.c:1006
+#: builtin/fast-export.c:1008
 msgid "Dump marks to this file"
 msgstr ""
 
-#: builtin/fast-export.c:1008
+#: builtin/fast-export.c:1010
 msgid "Import marks from this file"
 msgstr ""
 
-#: builtin/fast-export.c:1010
+#: builtin/fast-export.c:1012
 msgid "Fake a tagger when tags lack one"
 msgstr ""
 
-#: builtin/fast-export.c:1012
+#: builtin/fast-export.c:1014
 msgid "Output full tree for each commit"
 msgstr ""
 
-#: builtin/fast-export.c:1014
+#: builtin/fast-export.c:1016
 msgid "Use the done feature to terminate the stream"
 msgstr ""
 
-#: builtin/fast-export.c:1015
+#: builtin/fast-export.c:1017
 msgid "Skip output of blob data"
 msgstr ""
 
-#: builtin/fast-export.c:1016
+#: builtin/fast-export.c:1018
 msgid "refspec"
 msgstr ""
 
-#: builtin/fast-export.c:1017
+#: builtin/fast-export.c:1019
 msgid "Apply refspec to exported refs"
 msgstr ""
 
-#: builtin/fast-export.c:1018
+#: builtin/fast-export.c:1020
 msgid "anonymize output"
 msgstr ""
 
-#: builtin/fetch.c:24
+#: builtin/fetch.c:26
 msgid "git fetch [<options>] [<repository> [<refspec>...]]"
 msgstr ""
 
-#: builtin/fetch.c:25
+#: builtin/fetch.c:27
 msgid "git fetch [<options>] <group>"
 msgstr ""
 
-#: builtin/fetch.c:26
+#: builtin/fetch.c:28
 msgid "git fetch --multiple [<options>] [(<repository> | <group>)...]"
 msgstr ""
 
-#: builtin/fetch.c:27
+#: builtin/fetch.c:29
 msgid "git fetch --all [<options>]"
 msgstr ""
 
-#: builtin/fetch.c:113 builtin/pull.c:188
+#: builtin/fetch.c:123 builtin/pull.c:193
 msgid "fetch from all remotes"
 msgstr ""
 
-#: builtin/fetch.c:115 builtin/pull.c:191
+#: builtin/fetch.c:125 builtin/pull.c:196
 msgid "append to .git/FETCH_HEAD instead of overwriting"
 msgstr ""
 
-#: builtin/fetch.c:117 builtin/pull.c:194
+#: builtin/fetch.c:127 builtin/pull.c:199
 msgid "path to upload pack on remote end"
 msgstr ""
 
-#: builtin/fetch.c:118 builtin/pull.c:196
+#: builtin/fetch.c:128 builtin/pull.c:201
 msgid "force overwrite of local branch"
 msgstr ""
 
-#: builtin/fetch.c:120
+#: builtin/fetch.c:130
 msgid "fetch from multiple remotes"
 msgstr ""
 
-#: builtin/fetch.c:122 builtin/pull.c:198
+#: builtin/fetch.c:132 builtin/pull.c:203
 msgid "fetch all tags and associated objects"
 msgstr ""
 
-#: builtin/fetch.c:124
+#: builtin/fetch.c:134
 msgid "do not fetch all tags (--no-tags)"
 msgstr ""
 
-#: builtin/fetch.c:126
+#: builtin/fetch.c:136
 msgid "number of submodules fetched in parallel"
 msgstr ""
 
-#: builtin/fetch.c:128 builtin/pull.c:201
+#: builtin/fetch.c:138 builtin/pull.c:206
 msgid "prune remote-tracking branches no longer on remote"
 msgstr ""
 
-#: builtin/fetch.c:129 builtin/fetch.c:152 builtin/pull.c:126
+#: builtin/fetch.c:140
+msgid "prune local tags no longer on remote and clobber changed tags"
+msgstr ""
+
+#: builtin/fetch.c:141 builtin/fetch.c:164 builtin/pull.c:131
 msgid "on-demand"
 msgstr ""
 
-#: builtin/fetch.c:130
+#: builtin/fetch.c:142
 msgid "control recursive fetching of submodules"
 msgstr ""
 
-#: builtin/fetch.c:134 builtin/pull.c:209
+#: builtin/fetch.c:146 builtin/pull.c:214
 msgid "keep downloaded pack"
 msgstr ""
 
-#: builtin/fetch.c:136
+#: builtin/fetch.c:148
 msgid "allow updating of HEAD ref"
 msgstr ""
 
-#: builtin/fetch.c:139 builtin/fetch.c:145 builtin/pull.c:212
+#: builtin/fetch.c:151 builtin/fetch.c:157 builtin/pull.c:217
 msgid "deepen history of shallow clone"
 msgstr ""
 
-#: builtin/fetch.c:141
+#: builtin/fetch.c:153
 msgid "deepen history of shallow repository based on time"
 msgstr ""
 
-#: builtin/fetch.c:147 builtin/pull.c:215
+#: builtin/fetch.c:159 builtin/pull.c:220
 msgid "convert to a complete repository"
 msgstr ""
 
-#: builtin/fetch.c:149 builtin/log.c:1463
-msgid "dir"
-msgstr ""
-
-#: builtin/fetch.c:150
+#: builtin/fetch.c:162
 msgid "prepend this to submodule path output"
 msgstr ""
 
-#: builtin/fetch.c:153
+#: builtin/fetch.c:165
 msgid ""
 "default for recursive fetching of submodules (lower priority than config "
 "files)"
 msgstr ""
 
-#: builtin/fetch.c:157 builtin/pull.c:218
+#: builtin/fetch.c:169 builtin/pull.c:223
 msgid "accept refs that update .git/shallow"
 msgstr ""
 
-#: builtin/fetch.c:158 builtin/pull.c:220
+#: builtin/fetch.c:170 builtin/pull.c:225
 msgid "refmap"
 msgstr ""
 
-#: builtin/fetch.c:159 builtin/pull.c:221
+#: builtin/fetch.c:171 builtin/pull.c:226
 msgid "specify fetch refmap"
 msgstr ""
 
-#: builtin/fetch.c:417
+#: builtin/fetch.c:172 builtin/ls-remote.c:77 builtin/push.c:582
+#: builtin/send-pack.c:172
+msgid "server-specific"
+msgstr ""
+
+#: builtin/fetch.c:172 builtin/ls-remote.c:77 builtin/push.c:582
+#: builtin/send-pack.c:173
+msgid "option to transmit"
+msgstr ""
+
+#: builtin/fetch.c:442
 msgid "Couldn't find remote ref HEAD"
 msgstr ""
 
-#: builtin/fetch.c:535
+#: builtin/fetch.c:560
 #, c-format
 msgid "configuration fetch.output contains invalid value %s"
 msgstr ""
 
-#: builtin/fetch.c:628
+#: builtin/fetch.c:653
 #, c-format
 msgid "object %s not found"
 msgstr ""
 
-#: builtin/fetch.c:632
+#: builtin/fetch.c:657
 msgid "[up to date]"
 msgstr ""
 
-#: builtin/fetch.c:645 builtin/fetch.c:725
+#: builtin/fetch.c:670 builtin/fetch.c:750
 msgid "[rejected]"
 msgstr ""
 
-#: builtin/fetch.c:646
+#: builtin/fetch.c:671
 msgid "can't fetch in current branch"
 msgstr ""
 
-#: builtin/fetch.c:655
+#: builtin/fetch.c:680
 msgid "[tag update]"
 msgstr ""
 
-#: builtin/fetch.c:656 builtin/fetch.c:689 builtin/fetch.c:705
-#: builtin/fetch.c:720
+#: builtin/fetch.c:681 builtin/fetch.c:714 builtin/fetch.c:730
+#: builtin/fetch.c:745
 msgid "unable to update local ref"
 msgstr ""
 
-#: builtin/fetch.c:675
+#: builtin/fetch.c:700
 msgid "[new tag]"
 msgstr ""
 
-#: builtin/fetch.c:678
+#: builtin/fetch.c:703
 msgid "[new branch]"
 msgstr ""
 
-#: builtin/fetch.c:681
+#: builtin/fetch.c:706
 msgid "[new ref]"
 msgstr ""
 
-#: builtin/fetch.c:720
+#: builtin/fetch.c:745
 msgid "forced update"
 msgstr ""
 
-#: builtin/fetch.c:725
+#: builtin/fetch.c:750
 msgid "non-fast-forward"
 msgstr ""
 
-#: builtin/fetch.c:770
+#: builtin/fetch.c:795
 #, c-format
 msgid "%s did not send all necessary objects\n"
 msgstr ""
 
-#: builtin/fetch.c:790
+#: builtin/fetch.c:815
 #, c-format
 msgid "reject %s because shallow roots are not allowed to be updated"
 msgstr ""
 
-#: builtin/fetch.c:878 builtin/fetch.c:974
+#: builtin/fetch.c:903 builtin/fetch.c:999
 #, c-format
 msgid "From %.*s\n"
 msgstr ""
 
-#: builtin/fetch.c:889
+#: builtin/fetch.c:914
 #, 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:944
+#: builtin/fetch.c:969
 #, c-format
 msgid "   (%s will become dangling)"
 msgstr ""
 
-#: builtin/fetch.c:945
+#: builtin/fetch.c:970
 #, c-format
 msgid "   (%s has become dangling)"
 msgstr ""
 
-#: builtin/fetch.c:977
+#: builtin/fetch.c:1002
 msgid "[deleted]"
 msgstr ""
 
-#: builtin/fetch.c:978 builtin/remote.c:1024
+#: builtin/fetch.c:1003 builtin/remote.c:1033
 msgid "(none)"
 msgstr ""
 
-#: builtin/fetch.c:1001
+#: builtin/fetch.c:1026
 #, c-format
 msgid "Refusing to fetch into current branch %s of non-bare repository"
 msgstr ""
 
-#: builtin/fetch.c:1020
+#: builtin/fetch.c:1045
 #, c-format
 msgid "Option \"%s\" value \"%s\" is not valid for %s"
 msgstr ""
 
-#: builtin/fetch.c:1023
+#: builtin/fetch.c:1048
 #, c-format
 msgid "Option \"%s\" is ignored for %s\n"
 msgstr ""
 
-#: builtin/fetch.c:1256
+#: builtin/fetch.c:1287
 #, c-format
 msgid "Fetching %s\n"
 msgstr ""
 
-#: builtin/fetch.c:1258 builtin/remote.c:97
+#: builtin/fetch.c:1289 builtin/remote.c:98
 #, c-format
 msgid "Could not fetch %s"
 msgstr ""
 
-#: builtin/fetch.c:1276
+#: builtin/fetch.c:1335 builtin/fetch.c:1503
+msgid ""
+"--filter can only be used with the remote configured in core.partialClone"
+msgstr ""
+
+#: builtin/fetch.c:1358
 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:1299
+#: builtin/fetch.c:1395
 msgid "You need to specify a tag name."
 msgstr ""
 
-#: builtin/fetch.c:1342
+#: builtin/fetch.c:1444
 msgid "Negative depth in --deepen is not supported"
 msgstr ""
 
-#: builtin/fetch.c:1344
+#: builtin/fetch.c:1446
 msgid "--deepen and --depth are mutually exclusive"
 msgstr ""
 
-#: builtin/fetch.c:1349
+#: builtin/fetch.c:1451
 msgid "--depth and --unshallow cannot be used together"
 msgstr ""
 
-#: builtin/fetch.c:1351
+#: builtin/fetch.c:1453
 msgid "--unshallow on a complete repository does not make sense"
 msgstr ""
 
-#: builtin/fetch.c:1364
+#: builtin/fetch.c:1469
 msgid "fetch --all does not take a repository argument"
 msgstr ""
 
-#: builtin/fetch.c:1366
+#: builtin/fetch.c:1471
 msgid "fetch --all does not make sense with refspecs"
 msgstr ""
 
-#: builtin/fetch.c:1377
+#: builtin/fetch.c:1480
 #, c-format
 msgid "No such remote or remote group: %s"
 msgstr ""
 
-#: builtin/fetch.c:1385
+#: builtin/fetch.c:1487
 msgid "Fetching a group and specifying refspecs does not make sense"
 msgstr ""
 
@@ -7947,7 +8585,7 @@ msgstr ""
 msgid "show only <n> matched refs"
 msgstr ""
 
-#: builtin/for-each-ref.c:39 builtin/tag.c:414
+#: builtin/for-each-ref.c:39 builtin/tag.c:421
 msgid "respect format colors"
 msgstr ""
 
@@ -7971,81 +8609,81 @@ msgstr ""
 msgid "print only refs which don't contain the commit"
 msgstr ""
 
-#: builtin/fsck.c:543
+#: builtin/fsck.c:569
 msgid "Checking object directories"
 msgstr ""
 
-#: builtin/fsck.c:635
+#: builtin/fsck.c:661
 msgid "git fsck [<options>] [<object>...]"
 msgstr ""
 
-#: builtin/fsck.c:641
+#: builtin/fsck.c:667
 msgid "show unreachable objects"
 msgstr ""
 
-#: builtin/fsck.c:642
+#: builtin/fsck.c:668
 msgid "show dangling objects"
 msgstr ""
 
-#: builtin/fsck.c:643
+#: builtin/fsck.c:669
 msgid "report tags"
 msgstr ""
 
-#: builtin/fsck.c:644
+#: builtin/fsck.c:670
 msgid "report root nodes"
 msgstr ""
 
-#: builtin/fsck.c:645
+#: builtin/fsck.c:671
 msgid "make index objects head nodes"
 msgstr ""
 
-#: builtin/fsck.c:646
+#: builtin/fsck.c:672
 msgid "make reflogs head nodes (default)"
 msgstr ""
 
-#: builtin/fsck.c:647
+#: builtin/fsck.c:673
 msgid "also consider packs and alternate objects"
 msgstr ""
 
-#: builtin/fsck.c:648
+#: builtin/fsck.c:674
 msgid "check only connectivity"
 msgstr ""
 
-#: builtin/fsck.c:649
+#: builtin/fsck.c:675
 msgid "enable more strict checking"
 msgstr ""
 
-#: builtin/fsck.c:651
+#: builtin/fsck.c:677
 msgid "write dangling objects in .git/lost-found"
 msgstr ""
 
-#: builtin/fsck.c:652 builtin/prune.c:107
+#: builtin/fsck.c:678 builtin/prune.c:109
 msgid "show progress"
 msgstr ""
 
-#: builtin/fsck.c:653
+#: builtin/fsck.c:679
 msgid "show verbose names for reachable objects"
 msgstr ""
 
-#: builtin/fsck.c:714
+#: builtin/fsck.c:745
 msgid "Checking objects"
 msgstr ""
 
-#: builtin/gc.c:27
+#: builtin/gc.c:33
 msgid "git gc [<options>]"
 msgstr ""
 
-#: builtin/gc.c:80
+#: builtin/gc.c:88
 #, c-format
 msgid "Failed to fstat %s: %s"
 msgstr ""
 
-#: builtin/gc.c:312
+#: builtin/gc.c:452
 #, c-format
 msgid "Can't stat %s"
 msgstr ""
 
-#: builtin/gc.c:321
+#: builtin/gc.c:461
 #, c-format
 msgid ""
 "The last gc run reported the following. Please correct the root cause\n"
@@ -8055,54 +8693,63 @@ msgid ""
 "%s"
 msgstr ""
 
-#: builtin/gc.c:360
+#: builtin/gc.c:502
 msgid "prune unreferenced objects"
 msgstr ""
 
-#: builtin/gc.c:362
+#: builtin/gc.c:504
 msgid "be more thorough (increased runtime)"
 msgstr ""
 
-#: builtin/gc.c:363
+#: builtin/gc.c:505
 msgid "enable auto-gc mode"
 msgstr ""
 
-#: builtin/gc.c:364
+#: builtin/gc.c:508
 msgid "force running gc even if there may be another gc running"
 msgstr ""
 
-#: builtin/gc.c:381
+#: builtin/gc.c:511
+msgid "repack all other packs except the largest pack"
+msgstr ""
+
+#: builtin/gc.c:528
+#, c-format
+msgid "failed to parse gc.logexpiry value %s"
+msgstr ""
+
+#: builtin/gc.c:539
 #, c-format
-msgid "Failed to parse gc.logexpiry value %s"
+msgid "failed to parse prune expiry value %s"
 msgstr ""
 
-#: builtin/gc.c:409
+#: builtin/gc.c:559
 #, c-format
 msgid "Auto packing the repository in background for optimum performance.\n"
 msgstr ""
 
-#: builtin/gc.c:411
+#: builtin/gc.c:561
 #, c-format
 msgid "Auto packing the repository for optimum performance.\n"
 msgstr ""
 
-#: builtin/gc.c:412
+#: builtin/gc.c:562
 #, c-format
 msgid "See \"git help gc\" for manual housekeeping.\n"
 msgstr ""
 
-#: builtin/gc.c:437
+#: builtin/gc.c:598
 #, c-format
 msgid ""
 "gc is already running on machine '%s' pid %<PRIuMAX> (use --force if not)"
 msgstr ""
 
-#: builtin/gc.c:481
+#: builtin/gc.c:645
 msgid ""
 "There are too many unreachable loose objects; run 'git prune' to remove them."
 msgstr ""
 
-#: builtin/grep.c:27
+#: builtin/grep.c:28
 msgid "git grep [<options>] [-e] <pattern> [<rev>...] [[--] <path>...]"
 msgstr ""
 
@@ -8120,696 +8767,672 @@ msgstr ""
 #. variable for tweaking threads, currently
 #. grep.threads
 #.
-#: builtin/grep.c:293 builtin/index-pack.c:1495 builtin/index-pack.c:1688
+#: builtin/grep.c:293 builtin/index-pack.c:1535 builtin/index-pack.c:1727
 #, c-format
 msgid "no threads support, ignoring %s"
 msgstr ""
 
-#: builtin/grep.c:453 builtin/grep.c:573 builtin/grep.c:615
+#: builtin/grep.c:461 builtin/grep.c:582 builtin/grep.c:623
 #, c-format
 msgid "unable to read tree (%s)"
 msgstr ""
 
-#: builtin/grep.c:630
+#: builtin/grep.c:638
 #, c-format
 msgid "unable to grep from object of type %s"
 msgstr ""
 
-#: builtin/grep.c:696
+#: builtin/grep.c:703
 #, c-format
 msgid "switch `%c' expects a numerical value"
 msgstr ""
 
-#: builtin/grep.c:783
+#: builtin/grep.c:790
 msgid "search in index instead of in the work tree"
 msgstr ""
 
-#: builtin/grep.c:785
+#: builtin/grep.c:792
 msgid "find in contents not managed by git"
 msgstr ""
 
-#: builtin/grep.c:787
+#: builtin/grep.c:794
 msgid "search in both tracked and untracked files"
 msgstr ""
 
-#: builtin/grep.c:789
+#: builtin/grep.c:796
 msgid "ignore files specified via '.gitignore'"
 msgstr ""
 
-#: builtin/grep.c:791
+#: builtin/grep.c:798
 msgid "recursively search in each submodule"
 msgstr ""
 
-#: builtin/grep.c:794
+#: builtin/grep.c:801
 msgid "show non-matching lines"
 msgstr ""
 
-#: builtin/grep.c:796
+#: builtin/grep.c:803
 msgid "case insensitive matching"
 msgstr ""
 
-#: builtin/grep.c:798
+#: builtin/grep.c:805
 msgid "match patterns only at word boundaries"
 msgstr ""
 
-#: builtin/grep.c:800
+#: builtin/grep.c:807
 msgid "process binary files as text"
 msgstr ""
 
-#: builtin/grep.c:802
+#: builtin/grep.c:809
 msgid "don't match patterns in binary files"
 msgstr ""
 
-#: builtin/grep.c:805
+#: builtin/grep.c:812
 msgid "process binary files with textconv filters"
 msgstr ""
 
-#: builtin/grep.c:807
+#: builtin/grep.c:814
 msgid "descend at most <depth> levels"
 msgstr ""
 
-#: builtin/grep.c:811
+#: builtin/grep.c:818
 msgid "use extended POSIX regular expressions"
 msgstr ""
 
-#: builtin/grep.c:814
+#: builtin/grep.c:821
 msgid "use basic POSIX regular expressions (default)"
 msgstr ""
 
-#: builtin/grep.c:817
+#: builtin/grep.c:824
 msgid "interpret patterns as fixed strings"
 msgstr ""
 
-#: builtin/grep.c:820
+#: builtin/grep.c:827
 msgid "use Perl-compatible regular expressions"
 msgstr ""
 
-#: builtin/grep.c:823
+#: builtin/grep.c:830
 msgid "show line numbers"
 msgstr ""
 
-#: builtin/grep.c:824
+#: builtin/grep.c:831
 msgid "don't show filenames"
 msgstr ""
 
-#: builtin/grep.c:825
+#: builtin/grep.c:832
 msgid "show filenames"
 msgstr ""
 
-#: builtin/grep.c:827
+#: builtin/grep.c:834
 msgid "show filenames relative to top directory"
 msgstr ""
 
-#: builtin/grep.c:829
+#: builtin/grep.c:836
 msgid "show only filenames instead of matching lines"
 msgstr ""
 
-#: builtin/grep.c:831
+#: builtin/grep.c:838
 msgid "synonym for --files-with-matches"
 msgstr ""
 
-#: builtin/grep.c:834
+#: builtin/grep.c:841
 msgid "show only the names of files without match"
 msgstr ""
 
-#: builtin/grep.c:836
+#: builtin/grep.c:843
 msgid "print NUL after filenames"
 msgstr ""
 
-#: builtin/grep.c:838
+#: builtin/grep.c:846
 msgid "show the number of matches instead of matching lines"
 msgstr ""
 
-#: builtin/grep.c:839
+#: builtin/grep.c:847
 msgid "highlight matches"
 msgstr ""
 
-#: builtin/grep.c:841
+#: builtin/grep.c:849
 msgid "print empty line between matches from different files"
 msgstr ""
 
-#: builtin/grep.c:843
+#: builtin/grep.c:851
 msgid "show filename only once above matches from same file"
 msgstr ""
 
-#: builtin/grep.c:846
+#: builtin/grep.c:854
 msgid "show <n> context lines before and after matches"
 msgstr ""
 
-#: builtin/grep.c:849
+#: builtin/grep.c:857
 msgid "show <n> context lines before matches"
 msgstr ""
 
-#: builtin/grep.c:851
+#: builtin/grep.c:859
 msgid "show <n> context lines after matches"
 msgstr ""
 
-#: builtin/grep.c:853
+#: builtin/grep.c:861
 msgid "use <n> worker threads"
 msgstr ""
 
-#: builtin/grep.c:854
+#: builtin/grep.c:862
 msgid "shortcut for -C NUM"
 msgstr ""
 
-#: builtin/grep.c:857
+#: builtin/grep.c:865
 msgid "show a line with the function name before matches"
 msgstr ""
 
-#: builtin/grep.c:859
+#: builtin/grep.c:867
 msgid "show the surrounding function"
 msgstr ""
 
-#: builtin/grep.c:862
+#: builtin/grep.c:870
 msgid "read patterns from file"
 msgstr ""
 
-#: builtin/grep.c:864
+#: builtin/grep.c:872
 msgid "match <pattern>"
 msgstr ""
 
-#: builtin/grep.c:866
+#: builtin/grep.c:874
 msgid "combine patterns specified with -e"
 msgstr ""
 
-#: builtin/grep.c:878
+#: builtin/grep.c:886
 msgid "indicate hit with exit status without output"
 msgstr ""
 
-#: builtin/grep.c:880
+#: builtin/grep.c:888
 msgid "show only matches from files that match all patterns"
 msgstr ""
 
-#: builtin/grep.c:882
+#: builtin/grep.c:890
 msgid "show parse tree for grep expression"
 msgstr ""
 
-#: builtin/grep.c:886
+#: builtin/grep.c:894
 msgid "pager"
 msgstr ""
 
-#: builtin/grep.c:886
+#: builtin/grep.c:894
 msgid "show matching files in the pager"
 msgstr ""
 
-#: builtin/grep.c:889
+#: builtin/grep.c:898
 msgid "allow calling of grep(1) (ignored by this build)"
 msgstr ""
 
-#: builtin/grep.c:952
+#: builtin/grep.c:962
 msgid "no pattern given."
 msgstr ""
 
-#: builtin/grep.c:984
+#: builtin/grep.c:994
 msgid "--no-index or --untracked cannot be used with revs"
 msgstr ""
 
-#: builtin/grep.c:991
+#: builtin/grep.c:1001
 #, c-format
 msgid "unable to resolve revision: %s"
 msgstr ""
 
-#: builtin/grep.c:1026 builtin/index-pack.c:1491
+#: builtin/grep.c:1036 builtin/index-pack.c:1531
 #, c-format
 msgid "invalid number of threads specified (%d)"
 msgstr ""
 
-#: builtin/grep.c:1031
+#: builtin/grep.c:1041
 msgid "no threads support, ignoring --threads"
 msgstr ""
 
-#: builtin/grep.c:1055
+#: builtin/grep.c:1065
 msgid "--open-files-in-pager only works on the worktree"
 msgstr ""
 
-#: builtin/grep.c:1078
+#: builtin/grep.c:1088
 msgid "option not supported with --recurse-submodules."
 msgstr ""
 
-#: builtin/grep.c:1084
+#: builtin/grep.c:1094
 msgid "--cached or --untracked cannot be used with --no-index."
 msgstr ""
 
-#: builtin/grep.c:1090
+#: builtin/grep.c:1100
 msgid "--[no-]exclude-standard cannot be used for tracked contents."
 msgstr ""
 
-#: builtin/grep.c:1098
+#: builtin/grep.c:1108
 msgid "both --cached and trees are given."
 msgstr ""
 
-#: builtin/hash-object.c:82
+#: builtin/hash-object.c:83
 msgid ""
 "git hash-object [-t <type>] [-w] [--path=<file> | --no-filters] [--stdin] "
 "[--] <file>..."
 msgstr ""
 
-#: builtin/hash-object.c:83
+#: builtin/hash-object.c:84
 msgid "git hash-object  --stdin-paths"
 msgstr ""
 
-#: builtin/hash-object.c:95
+#: builtin/hash-object.c:96
 msgid "type"
 msgstr ""
 
-#: builtin/hash-object.c:95
+#: builtin/hash-object.c:96
 msgid "object type"
 msgstr ""
 
-#: builtin/hash-object.c:96
+#: builtin/hash-object.c:97
 msgid "write the object into the object database"
 msgstr ""
 
-#: builtin/hash-object.c:98
+#: builtin/hash-object.c:99
 msgid "read the object from stdin"
 msgstr ""
 
-#: builtin/hash-object.c:100
+#: builtin/hash-object.c:101
 msgid "store file as is without filters"
 msgstr ""
 
-#: builtin/hash-object.c:101
+#: builtin/hash-object.c:102
 msgid ""
 "just hash any random garbage to create corrupt objects for debugging Git"
 msgstr ""
 
-#: builtin/hash-object.c:102
+#: builtin/hash-object.c:103
 msgid "process file as it were from this path"
 msgstr ""
 
-#: builtin/help.c:43
+#: builtin/help.c:45
 msgid "print all available commands"
 msgstr ""
 
-#: builtin/help.c:44
+#: builtin/help.c:46
 msgid "exclude guides"
 msgstr ""
 
-#: builtin/help.c:45
+#: builtin/help.c:47
 msgid "print list of useful guides"
 msgstr ""
 
-#: builtin/help.c:46
+#: builtin/help.c:48
 msgid "show man page"
 msgstr ""
 
-#: builtin/help.c:47
+#: builtin/help.c:49
 msgid "show manual in web browser"
 msgstr ""
 
-#: builtin/help.c:49
+#: builtin/help.c:51
 msgid "show info page"
 msgstr ""
 
-#: builtin/help.c:55
+#: builtin/help.c:53
+msgid "print command description"
+msgstr ""
+
+#: builtin/help.c:58
 msgid "git help [--all] [--guides] [--man | --web | --info] [<command>]"
 msgstr ""
 
-#: builtin/help.c:67
+#: builtin/help.c:70
 #, c-format
 msgid "unrecognized help format '%s'"
 msgstr ""
 
-#: builtin/help.c:94
+#: builtin/help.c:97
 msgid "Failed to start emacsclient."
 msgstr ""
 
-#: builtin/help.c:107
+#: builtin/help.c:110
 msgid "Failed to parse emacsclient version."
 msgstr ""
 
-#: builtin/help.c:115
+#: builtin/help.c:118
 #, c-format
 msgid "emacsclient version '%d' too old (< 22)."
 msgstr ""
 
-#: builtin/help.c:133 builtin/help.c:155 builtin/help.c:165 builtin/help.c:173
+#: builtin/help.c:136 builtin/help.c:158 builtin/help.c:168 builtin/help.c:176
 #, c-format
 msgid "failed to exec '%s'"
 msgstr ""
 
-#: builtin/help.c:211
+#: builtin/help.c:214
 #, c-format
 msgid ""
 "'%s': path for unsupported man viewer.\n"
 "Please consider using 'man.<tool>.cmd' instead."
 msgstr ""
 
-#: builtin/help.c:223
+#: builtin/help.c:226
 #, c-format
 msgid ""
 "'%s': cmd for supported man viewer.\n"
 "Please consider using 'man.<tool>.path' instead."
 msgstr ""
 
-#: builtin/help.c:340
+#: builtin/help.c:343
 #, c-format
 msgid "'%s': unknown man viewer."
 msgstr ""
 
-#: builtin/help.c:357
+#: builtin/help.c:360
 msgid "no man viewer handled the request"
 msgstr ""
 
-#: builtin/help.c:365
+#: builtin/help.c:368
 msgid "no info viewer handled the request"
 msgstr ""
 
-#: builtin/help.c:407
-msgid "Defining attributes per path"
-msgstr ""
-
-#: builtin/help.c:408
-msgid "Everyday Git With 20 Commands Or So"
-msgstr ""
-
-#: builtin/help.c:409
-msgid "A Git glossary"
-msgstr ""
-
-#: builtin/help.c:410
-msgid "Specifies intentionally untracked files to ignore"
-msgstr ""
-
-#: builtin/help.c:411
-msgid "Defining submodule properties"
-msgstr ""
-
-#: builtin/help.c:412
-msgid "Specifying revisions and ranges for Git"
-msgstr ""
-
-#: builtin/help.c:413
-msgid "A tutorial introduction to Git (for version 1.5.1 or newer)"
-msgstr ""
-
-#: builtin/help.c:414
-msgid "An overview of recommended workflows with Git"
-msgstr ""
-
-#: builtin/help.c:426
-msgid "The common Git guides are:\n"
-msgstr ""
-
-#: builtin/help.c:444
+#: builtin/help.c:415
 #, c-format
 msgid "'%s' is aliased to '%s'"
 msgstr ""
 
-#: builtin/help.c:466 builtin/help.c:483
+#: builtin/help.c:442 builtin/help.c:459
 #, c-format
 msgid "usage: %s%s"
 msgstr ""
 
-#: builtin/index-pack.c:156
+#: builtin/index-pack.c:158
 #, c-format
 msgid "unable to open %s"
 msgstr ""
 
-#: builtin/index-pack.c:206
+#: builtin/index-pack.c:208
 #, c-format
 msgid "object type mismatch at %s"
 msgstr ""
 
-#: builtin/index-pack.c:226
+#: builtin/index-pack.c:228
 #, c-format
 msgid "did not receive expected object %s"
 msgstr ""
 
-#: builtin/index-pack.c:229
+#: builtin/index-pack.c:231
 #, c-format
 msgid "object %s: expected type %s, found %s"
 msgstr ""
 
-#: builtin/index-pack.c:271
+#: builtin/index-pack.c:273
 #, c-format
 msgid "cannot fill %d byte"
 msgid_plural "cannot fill %d bytes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:281
+#: builtin/index-pack.c:283
 msgid "early EOF"
 msgstr ""
 
-#: builtin/index-pack.c:282
+#: builtin/index-pack.c:284
 msgid "read error on input"
 msgstr ""
 
-#: builtin/index-pack.c:294
+#: builtin/index-pack.c:296
 msgid "used more bytes than were available"
 msgstr ""
 
-#: builtin/index-pack.c:301
+#: builtin/index-pack.c:303
 msgid "pack too large for current definition of off_t"
 msgstr ""
 
-#: builtin/index-pack.c:304 builtin/unpack-objects.c:93
+#: builtin/index-pack.c:306 builtin/unpack-objects.c:93
 msgid "pack exceeds maximum allowed size"
 msgstr ""
 
-#: builtin/index-pack.c:319
+#: builtin/index-pack.c:321
 #, c-format
 msgid "unable to create '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:325
+#: builtin/index-pack.c:327
 #, c-format
 msgid "cannot open packfile '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:339
+#: builtin/index-pack.c:341
 msgid "pack signature mismatch"
 msgstr ""
 
-#: builtin/index-pack.c:341
+#: builtin/index-pack.c:343
 #, c-format
 msgid "pack version %<PRIu32> unsupported"
 msgstr ""
 
-#: builtin/index-pack.c:359
+#: builtin/index-pack.c:361
 #, c-format
 msgid "pack has bad object at offset %<PRIuMAX>: %s"
 msgstr ""
 
-#: builtin/index-pack.c:480
+#: builtin/index-pack.c:482
 #, c-format
 msgid "inflate returned %d"
 msgstr ""
 
-#: builtin/index-pack.c:529
+#: builtin/index-pack.c:531
 msgid "offset value overflow for delta base object"
 msgstr ""
 
-#: builtin/index-pack.c:537
+#: builtin/index-pack.c:539
 msgid "delta base offset is out of bound"
 msgstr ""
 
-#: builtin/index-pack.c:545
+#: builtin/index-pack.c:547
 #, c-format
 msgid "unknown object type %d"
 msgstr ""
 
-#: builtin/index-pack.c:576
+#: builtin/index-pack.c:578
 msgid "cannot pread pack file"
 msgstr ""
 
-#: builtin/index-pack.c:578
+#: builtin/index-pack.c:580
 #, 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:604
+#: builtin/index-pack.c:606
 msgid "serious inflate inconsistency"
 msgstr ""
 
-#: builtin/index-pack.c:749 builtin/index-pack.c:755 builtin/index-pack.c:778
-#: builtin/index-pack.c:817 builtin/index-pack.c:826
+#: builtin/index-pack.c:751 builtin/index-pack.c:757 builtin/index-pack.c:780
+#: builtin/index-pack.c:819 builtin/index-pack.c:828
 #, c-format
 msgid "SHA1 COLLISION FOUND WITH %s !"
 msgstr ""
 
-#: builtin/index-pack.c:752 builtin/pack-objects.c:179
-#: builtin/pack-objects.c:273
+#: builtin/index-pack.c:754 builtin/pack-objects.c:198
+#: builtin/pack-objects.c:292
 #, c-format
 msgid "unable to read %s"
 msgstr ""
 
-#: builtin/index-pack.c:815
+#: builtin/index-pack.c:817
 #, c-format
 msgid "cannot read existing object info %s"
 msgstr ""
 
-#: builtin/index-pack.c:823
+#: builtin/index-pack.c:825
 #, c-format
 msgid "cannot read existing object %s"
 msgstr ""
 
-#: builtin/index-pack.c:837
+#: builtin/index-pack.c:839
 #, c-format
 msgid "invalid blob object %s"
 msgstr ""
 
-#: builtin/index-pack.c:852
-#, c-format
-msgid "invalid %s"
+#: builtin/index-pack.c:842 builtin/index-pack.c:860
+msgid "fsck error in packed object"
 msgstr ""
 
-#: builtin/index-pack.c:855
-msgid "Error in object"
+#: builtin/index-pack.c:857
+#, c-format
+msgid "invalid %s"
 msgstr ""
 
-#: builtin/index-pack.c:857
+#: builtin/index-pack.c:862
 #, c-format
 msgid "Not all child objects of %s are reachable"
 msgstr ""
 
-#: builtin/index-pack.c:929 builtin/index-pack.c:960
+#: builtin/index-pack.c:934 builtin/index-pack.c:965
 msgid "failed to apply delta"
 msgstr ""
 
-#: builtin/index-pack.c:1131
+#: builtin/index-pack.c:1135
 msgid "Receiving objects"
 msgstr ""
 
-#: builtin/index-pack.c:1131
+#: builtin/index-pack.c:1135
 msgid "Indexing objects"
 msgstr ""
 
-#: builtin/index-pack.c:1165
+#: builtin/index-pack.c:1169
 msgid "pack is corrupted (SHA1 mismatch)"
 msgstr ""
 
-#: builtin/index-pack.c:1170
+#: builtin/index-pack.c:1174
 msgid "cannot fstat packfile"
 msgstr ""
 
-#: builtin/index-pack.c:1173
+#: builtin/index-pack.c:1177
 msgid "pack has junk at the end"
 msgstr ""
 
-#: builtin/index-pack.c:1185
+#: builtin/index-pack.c:1189
 msgid "confusion beyond insanity in parse_pack_objects()"
 msgstr ""
 
-#: builtin/index-pack.c:1208
+#: builtin/index-pack.c:1212
 msgid "Resolving deltas"
 msgstr ""
 
-#: builtin/index-pack.c:1219
+#: builtin/index-pack.c:1223
 #, c-format
 msgid "unable to create thread: %s"
 msgstr ""
 
-#: builtin/index-pack.c:1261
+#: builtin/index-pack.c:1265
 msgid "confusion beyond insanity"
 msgstr ""
 
-#: builtin/index-pack.c:1267
+#: builtin/index-pack.c:1271
 #, c-format
 msgid "completed with %d local object"
 msgid_plural "completed with %d local objects"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:1279
+#: builtin/index-pack.c:1283
 #, c-format
 msgid "Unexpected tail checksum for %s (disk corruption?)"
 msgstr ""
 
-#: builtin/index-pack.c:1283
+#: builtin/index-pack.c:1287
 #, c-format
 msgid "pack has %d unresolved delta"
 msgid_plural "pack has %d unresolved deltas"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:1307
+#: builtin/index-pack.c:1311
 #, c-format
 msgid "unable to deflate appended object (%d)"
 msgstr ""
 
-#: builtin/index-pack.c:1383
+#: builtin/index-pack.c:1388
 #, c-format
 msgid "local object %s is corrupt"
 msgstr ""
 
-#: builtin/index-pack.c:1409
-msgid "error while closing pack file"
+#: builtin/index-pack.c:1402
+#, c-format
+msgid "packfile name '%s' does not end with '.pack'"
 msgstr ""
 
-#: builtin/index-pack.c:1421
+#: builtin/index-pack.c:1427
 #, c-format
-msgid "cannot write keep file '%s'"
+msgid "cannot write %s file '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:1429
+#: builtin/index-pack.c:1435
 #, c-format
-msgid "cannot close written keep file '%s'"
+msgid "cannot close written %s file '%s'"
+msgstr ""
+
+#: builtin/index-pack.c:1459
+msgid "error while closing pack file"
 msgstr ""
 
-#: builtin/index-pack.c:1439
+#: builtin/index-pack.c:1473
 msgid "cannot store pack file"
 msgstr ""
 
-#: builtin/index-pack.c:1447
+#: builtin/index-pack.c:1481
 msgid "cannot store index file"
 msgstr ""
 
-#: builtin/index-pack.c:1485
+#: builtin/index-pack.c:1525
 #, c-format
 msgid "bad pack.indexversion=%<PRIu32>"
 msgstr ""
 
-#: builtin/index-pack.c:1553
+#: builtin/index-pack.c:1594
 #, c-format
 msgid "Cannot open existing pack file '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:1555
+#: builtin/index-pack.c:1596
 #, c-format
 msgid "Cannot open existing pack idx file for '%s'"
 msgstr ""
 
-#: builtin/index-pack.c:1603
+#: builtin/index-pack.c:1644
 #, c-format
 msgid "non delta: %d object"
 msgid_plural "non delta: %d objects"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:1610
+#: builtin/index-pack.c:1651
 #, c-format
 msgid "chain length = %d: %lu object"
 msgid_plural "chain length = %d: %lu objects"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/index-pack.c:1623
-#, c-format
-msgid "packfile name '%s' does not end with '.pack'"
+#: builtin/index-pack.c:1688
+msgid "Cannot come back to cwd"
 msgstr ""
 
-#: builtin/index-pack.c:1700 builtin/index-pack.c:1703
-#: builtin/index-pack.c:1719 builtin/index-pack.c:1723
+#: builtin/index-pack.c:1739 builtin/index-pack.c:1742
+#: builtin/index-pack.c:1758 builtin/index-pack.c:1762
 #, c-format
 msgid "bad %s"
 msgstr ""
 
-#: builtin/index-pack.c:1739
+#: builtin/index-pack.c:1778
 msgid "--fix-thin cannot be used without --stdin"
 msgstr ""
 
-#: builtin/index-pack.c:1741
+#: builtin/index-pack.c:1780
 msgid "--stdin requires a git repository"
 msgstr ""
 
-#: builtin/index-pack.c:1749
+#: builtin/index-pack.c:1786
 msgid "--verify with no packfile name given"
 msgstr ""
 
+#: builtin/index-pack.c:1836 builtin/unpack-objects.c:578
+msgid "fsck error in pack objects"
+msgstr ""
+
 #: builtin/init-db.c:55
 #, c-format
 msgid "cannot stat '%s'"
@@ -8847,7 +9470,7 @@ msgstr ""
 
 #: builtin/init-db.c:120
 #, c-format
-msgid "templates not found %s"
+msgid "templates not found in %s"
 msgstr ""
 
 #: builtin/init-db.c:135
@@ -8904,11 +9527,6 @@ msgstr ""
 msgid "specify that the git repository is to be shared amongst several users"
 msgstr ""
 
-#: builtin/init-db.c:516 builtin/init-db.c:521
-#, c-format
-msgid "cannot mkdir %s"
-msgstr ""
-
 #: builtin/init-db.c:525
 #, c-format
 msgid "cannot chdir to %s"
@@ -8984,346 +9602,346 @@ msgstr ""
 msgid "no input file given for in-place editing"
 msgstr ""
 
-#: builtin/log.c:46
+#: builtin/log.c:48
 msgid "git log [<options>] [<revision-range>] [[--] <path>...]"
 msgstr ""
 
-#: builtin/log.c:47
+#: builtin/log.c:49
 msgid "git show [<options>] <object>..."
 msgstr ""
 
-#: builtin/log.c:91
+#: builtin/log.c:93
 #, c-format
 msgid "invalid --decorate option: %s"
 msgstr ""
 
-#: builtin/log.c:151
+#: builtin/log.c:153
 msgid "suppress diff output"
 msgstr ""
 
-#: builtin/log.c:152
+#: builtin/log.c:154
 msgid "show source"
 msgstr ""
 
-#: builtin/log.c:153
+#: builtin/log.c:155
 msgid "Use mail map file"
 msgstr ""
 
-#: builtin/log.c:155
+#: builtin/log.c:157
 msgid "only decorate refs that match <pattern>"
 msgstr ""
 
-#: builtin/log.c:157
+#: builtin/log.c:159
 msgid "do not decorate refs that match <pattern>"
 msgstr ""
 
-#: builtin/log.c:158
+#: builtin/log.c:160
 msgid "decorate options"
 msgstr ""
 
-#: builtin/log.c:161
+#: builtin/log.c:163
 msgid "Process line range n,m in file, counting from 1"
 msgstr ""
 
-#: builtin/log.c:257
+#: builtin/log.c:259
 #, c-format
 msgid "Final output: %d %s\n"
 msgstr ""
 
-#: builtin/log.c:508
+#: builtin/log.c:510
 #, c-format
 msgid "git show %s: bad file"
 msgstr ""
 
-#: builtin/log.c:523 builtin/log.c:617
+#: builtin/log.c:525 builtin/log.c:619
 #, c-format
 msgid "Could not read object %s"
 msgstr ""
 
-#: builtin/log.c:641
+#: builtin/log.c:643
 #, c-format
 msgid "Unknown type: %d"
 msgstr ""
 
-#: builtin/log.c:762
+#: builtin/log.c:764
 msgid "format.headers without value"
 msgstr ""
 
-#: builtin/log.c:863
+#: builtin/log.c:865
 msgid "name of output directory is too long"
 msgstr ""
 
-#: builtin/log.c:879
+#: builtin/log.c:881
 #, c-format
 msgid "Cannot open patch file %s"
 msgstr ""
 
-#: builtin/log.c:896
+#: builtin/log.c:898
 msgid "Need exactly one range."
 msgstr ""
 
-#: builtin/log.c:906
+#: builtin/log.c:908
 msgid "Not a range."
 msgstr ""
 
-#: builtin/log.c:1012
+#: builtin/log.c:1014
 msgid "Cover letter needs email format"
 msgstr ""
 
-#: builtin/log.c:1092
+#: builtin/log.c:1095
 #, c-format
 msgid "insane in-reply-to: %s"
 msgstr ""
 
-#: builtin/log.c:1119
+#: builtin/log.c:1122
 msgid "git format-patch [<options>] [<since> | <revision-range>]"
 msgstr ""
 
-#: builtin/log.c:1169
+#: builtin/log.c:1172
 msgid "Two output directories?"
 msgstr ""
 
-#: builtin/log.c:1276 builtin/log.c:1927 builtin/log.c:1929 builtin/log.c:1941
+#: builtin/log.c:1279 builtin/log.c:1932 builtin/log.c:1934 builtin/log.c:1946
 #, c-format
 msgid "Unknown commit %s"
 msgstr ""
 
-#: builtin/log.c:1286 builtin/notes.c:887 builtin/tag.c:516
+#: builtin/log.c:1289 builtin/notes.c:887 builtin/tag.c:523
 #, c-format
 msgid "Failed to resolve '%s' as a valid ref."
 msgstr ""
 
-#: builtin/log.c:1291
+#: builtin/log.c:1294
 msgid "Could not find exact merge base."
 msgstr ""
 
-#: builtin/log.c:1295
+#: builtin/log.c:1298
 msgid ""
 "Failed to get upstream, if you want to record base commit automatically,\n"
 "please use git branch --set-upstream-to to track a remote branch.\n"
 "Or you could specify base commit by --base=<base-commit-id> manually."
 msgstr ""
 
-#: builtin/log.c:1315
+#: builtin/log.c:1318
 msgid "Failed to find exact merge base"
 msgstr ""
 
-#: builtin/log.c:1326
+#: builtin/log.c:1329
 msgid "base commit should be the ancestor of revision list"
 msgstr ""
 
-#: builtin/log.c:1330
+#: builtin/log.c:1333
 msgid "base commit shouldn't be in revision list"
 msgstr ""
 
-#: builtin/log.c:1379
+#: builtin/log.c:1382
 msgid "cannot get patch id"
 msgstr ""
 
-#: builtin/log.c:1438
+#: builtin/log.c:1441
 msgid "use [PATCH n/m] even with a single patch"
 msgstr ""
 
-#: builtin/log.c:1441
+#: builtin/log.c:1444
 msgid "use [PATCH] even with multiple patches"
 msgstr ""
 
-#: builtin/log.c:1445
+#: builtin/log.c:1448
 msgid "print patches to standard out"
 msgstr ""
 
-#: builtin/log.c:1447
+#: builtin/log.c:1450
 msgid "generate a cover letter"
 msgstr ""
 
-#: builtin/log.c:1449
+#: builtin/log.c:1452
 msgid "use simple number sequence for output file names"
 msgstr ""
 
-#: builtin/log.c:1450
+#: builtin/log.c:1453
 msgid "sfx"
 msgstr ""
 
-#: builtin/log.c:1451
+#: builtin/log.c:1454
 msgid "use <sfx> instead of '.patch'"
 msgstr ""
 
-#: builtin/log.c:1453
+#: builtin/log.c:1456
 msgid "start numbering patches at <n> instead of 1"
 msgstr ""
 
-#: builtin/log.c:1455
+#: builtin/log.c:1458
 msgid "mark the series as Nth re-roll"
 msgstr ""
 
-#: builtin/log.c:1457
+#: builtin/log.c:1460
 msgid "Use [RFC PATCH] instead of [PATCH]"
 msgstr ""
 
-#: builtin/log.c:1460
+#: builtin/log.c:1463
 msgid "Use [<prefix>] instead of [PATCH]"
 msgstr ""
 
-#: builtin/log.c:1463
+#: builtin/log.c:1466
 msgid "store resulting files in <dir>"
 msgstr ""
 
-#: builtin/log.c:1466
+#: builtin/log.c:1469
 msgid "don't strip/add [PATCH]"
 msgstr ""
 
-#: builtin/log.c:1469
+#: builtin/log.c:1472
 msgid "don't output binary diffs"
 msgstr ""
 
-#: builtin/log.c:1471
+#: builtin/log.c:1474
 msgid "output all-zero hash in From header"
 msgstr ""
 
-#: builtin/log.c:1473
+#: builtin/log.c:1476
 msgid "don't include a patch matching a commit upstream"
 msgstr ""
 
-#: builtin/log.c:1475
+#: builtin/log.c:1478
 msgid "show patch format instead of default (patch + stat)"
 msgstr ""
 
-#: builtin/log.c:1477
+#: builtin/log.c:1480
 msgid "Messaging"
 msgstr ""
 
-#: builtin/log.c:1478
+#: builtin/log.c:1481
 msgid "header"
 msgstr ""
 
-#: builtin/log.c:1479
+#: builtin/log.c:1482
 msgid "add email header"
 msgstr ""
 
-#: builtin/log.c:1480 builtin/log.c:1482
+#: builtin/log.c:1483 builtin/log.c:1485
 msgid "email"
 msgstr ""
 
-#: builtin/log.c:1480
+#: builtin/log.c:1483
 msgid "add To: header"
 msgstr ""
 
-#: builtin/log.c:1482
+#: builtin/log.c:1485
 msgid "add Cc: header"
 msgstr ""
 
-#: builtin/log.c:1484
+#: builtin/log.c:1487
 msgid "ident"
 msgstr ""
 
-#: builtin/log.c:1485
+#: builtin/log.c:1488
 msgid "set From address to <ident> (or committer ident if absent)"
 msgstr ""
 
-#: builtin/log.c:1487
+#: builtin/log.c:1490
 msgid "message-id"
 msgstr ""
 
-#: builtin/log.c:1488
+#: builtin/log.c:1491
 msgid "make first mail a reply to <message-id>"
 msgstr ""
 
-#: builtin/log.c:1489 builtin/log.c:1492
+#: builtin/log.c:1492 builtin/log.c:1495
 msgid "boundary"
 msgstr ""
 
-#: builtin/log.c:1490
+#: builtin/log.c:1493
 msgid "attach the patch"
 msgstr ""
 
-#: builtin/log.c:1493
+#: builtin/log.c:1496
 msgid "inline the patch"
 msgstr ""
 
-#: builtin/log.c:1497
+#: builtin/log.c:1500
 msgid "enable message threading, styles: shallow, deep"
 msgstr ""
 
-#: builtin/log.c:1499
+#: builtin/log.c:1502
 msgid "signature"
 msgstr ""
 
-#: builtin/log.c:1500
+#: builtin/log.c:1503
 msgid "add a signature"
 msgstr ""
 
-#: builtin/log.c:1501
+#: builtin/log.c:1504
 msgid "base-commit"
 msgstr ""
 
-#: builtin/log.c:1502
+#: builtin/log.c:1505
 msgid "add prerequisite tree info to the patch series"
 msgstr ""
 
-#: builtin/log.c:1504
+#: builtin/log.c:1507
 msgid "add a signature from a file"
 msgstr ""
 
-#: builtin/log.c:1505
+#: builtin/log.c:1508
 msgid "don't print the patch filenames"
 msgstr ""
 
-#: builtin/log.c:1507
+#: builtin/log.c:1510
 msgid "show progress while generating patches"
 msgstr ""
 
-#: builtin/log.c:1582
+#: builtin/log.c:1585
 #, c-format
 msgid "invalid ident line: %s"
 msgstr ""
 
-#: builtin/log.c:1597
+#: builtin/log.c:1600
 msgid "-n and -k are mutually exclusive."
 msgstr ""
 
-#: builtin/log.c:1599
+#: builtin/log.c:1602
 msgid "--subject-prefix/--rfc and -k are mutually exclusive."
 msgstr ""
 
-#: builtin/log.c:1607
+#: builtin/log.c:1610
 msgid "--name-only does not make sense"
 msgstr ""
 
-#: builtin/log.c:1609
+#: builtin/log.c:1612
 msgid "--name-status does not make sense"
 msgstr ""
 
-#: builtin/log.c:1611
+#: builtin/log.c:1614
 msgid "--check does not make sense"
 msgstr ""
 
-#: builtin/log.c:1641
+#: builtin/log.c:1646
 msgid "standard output, or directory, which one?"
 msgstr ""
 
-#: builtin/log.c:1643
+#: builtin/log.c:1648
 #, c-format
 msgid "Could not create directory '%s'"
 msgstr ""
 
-#: builtin/log.c:1736
+#: builtin/log.c:1741
 #, c-format
 msgid "unable to read signature file '%s'"
 msgstr ""
 
-#: builtin/log.c:1768
+#: builtin/log.c:1773
 msgid "Generating patches"
 msgstr ""
 
-#: builtin/log.c:1812
+#: builtin/log.c:1817
 msgid "Failed to create output files"
 msgstr ""
 
-#: builtin/log.c:1862
+#: builtin/log.c:1867
 msgid "git cherry [-v] [<upstream> [<head> [<limit>]]]"
 msgstr ""
 
-#: builtin/log.c:1916
+#: builtin/log.c:1921
 #, c-format
 msgid ""
 "Could not find a tracked remote branch, please specify <upstream> manually.\n"
@@ -9433,46 +10051,46 @@ msgstr ""
 msgid "show debugging data"
 msgstr ""
 
-#: builtin/ls-remote.c:7
+#: builtin/ls-remote.c:9
 msgid ""
 "git ls-remote [--heads] [--tags] [--refs] [--upload-pack=<exec>]\n"
 "                     [-q | --quiet] [--exit-code] [--get-url]\n"
 "                     [--symref] [<repository> [<refs>...]]"
 msgstr ""
 
-#: builtin/ls-remote.c:52
+#: builtin/ls-remote.c:59
 msgid "do not print remote URL"
 msgstr ""
 
-#: builtin/ls-remote.c:53 builtin/ls-remote.c:55
+#: builtin/ls-remote.c:60 builtin/ls-remote.c:62
 msgid "exec"
 msgstr ""
 
-#: builtin/ls-remote.c:54 builtin/ls-remote.c:56
+#: builtin/ls-remote.c:61 builtin/ls-remote.c:63
 msgid "path of git-upload-pack on the remote host"
 msgstr ""
 
-#: builtin/ls-remote.c:58
+#: builtin/ls-remote.c:65
 msgid "limit to tags"
 msgstr ""
 
-#: builtin/ls-remote.c:59
+#: builtin/ls-remote.c:66
 msgid "limit to heads"
 msgstr ""
 
-#: builtin/ls-remote.c:60
+#: builtin/ls-remote.c:67
 msgid "do not show peeled tags"
 msgstr ""
 
-#: builtin/ls-remote.c:62
+#: builtin/ls-remote.c:69
 msgid "take url.<base>.insteadOf into account"
 msgstr ""
 
-#: builtin/ls-remote.c:64
+#: builtin/ls-remote.c:73
 msgid "exit with exit code 2 if no matching refs are found"
 msgstr ""
 
-#: builtin/ls-remote.c:66
+#: builtin/ls-remote.c:76
 msgid "show underlying ref in addition to the object pointed by it"
 msgstr ""
 
@@ -9517,180 +10135,180 @@ msgstr ""
 msgid "empty mbox: '%s'"
 msgstr ""
 
-#: builtin/merge.c:48
+#: builtin/merge.c:51
 msgid "git merge [<options>] [<commit>...]"
 msgstr ""
 
-#: builtin/merge.c:49
+#: builtin/merge.c:52
 msgid "git merge --abort"
 msgstr ""
 
-#: builtin/merge.c:50
+#: builtin/merge.c:53
 msgid "git merge --continue"
 msgstr ""
 
-#: builtin/merge.c:107
+#: builtin/merge.c:110
 msgid "switch `m' requires a value"
 msgstr ""
 
-#: builtin/merge.c:144
+#: builtin/merge.c:147
 #, c-format
 msgid "Could not find merge strategy '%s'.\n"
 msgstr ""
 
-#: builtin/merge.c:145
+#: builtin/merge.c:148
 #, c-format
 msgid "Available strategies are:"
 msgstr ""
 
-#: builtin/merge.c:150
+#: builtin/merge.c:153
 #, c-format
 msgid "Available custom strategies are:"
 msgstr ""
 
-#: builtin/merge.c:200 builtin/pull.c:137
+#: builtin/merge.c:203 builtin/pull.c:142
 msgid "do not show a diffstat at the end of the merge"
 msgstr ""
 
-#: builtin/merge.c:203 builtin/pull.c:140
+#: builtin/merge.c:206 builtin/pull.c:145
 msgid "show a diffstat at the end of the merge"
 msgstr ""
 
-#: builtin/merge.c:204 builtin/pull.c:143
+#: builtin/merge.c:207 builtin/pull.c:148
 msgid "(synonym to --stat)"
 msgstr ""
 
-#: builtin/merge.c:206 builtin/pull.c:146
+#: builtin/merge.c:209 builtin/pull.c:151
 msgid "add (at most <n>) entries from shortlog to merge commit message"
 msgstr ""
 
-#: builtin/merge.c:209 builtin/pull.c:152
+#: builtin/merge.c:212 builtin/pull.c:157
 msgid "create a single commit instead of doing a merge"
 msgstr ""
 
-#: builtin/merge.c:211 builtin/pull.c:155
+#: builtin/merge.c:214 builtin/pull.c:160
 msgid "perform a commit if the merge succeeds (default)"
 msgstr ""
 
-#: builtin/merge.c:213 builtin/pull.c:158
+#: builtin/merge.c:216 builtin/pull.c:163
 msgid "edit message before committing"
 msgstr ""
 
-#: builtin/merge.c:214
+#: builtin/merge.c:217
 msgid "allow fast-forward (default)"
 msgstr ""
 
-#: builtin/merge.c:216 builtin/pull.c:164
+#: builtin/merge.c:219 builtin/pull.c:169
 msgid "abort if fast-forward is not possible"
 msgstr ""
 
-#: builtin/merge.c:220 builtin/pull.c:167
+#: builtin/merge.c:223 builtin/pull.c:172
 msgid "verify that the named commit has a valid GPG signature"
 msgstr ""
 
-#: builtin/merge.c:221 builtin/notes.c:777 builtin/pull.c:171
+#: builtin/merge.c:224 builtin/notes.c:777 builtin/pull.c:176
 #: builtin/revert.c:109
 msgid "strategy"
 msgstr ""
 
-#: builtin/merge.c:222 builtin/pull.c:172
+#: builtin/merge.c:225 builtin/pull.c:177
 msgid "merge strategy to use"
 msgstr ""
 
-#: builtin/merge.c:223 builtin/pull.c:175
+#: builtin/merge.c:226 builtin/pull.c:180
 msgid "option=value"
 msgstr ""
 
-#: builtin/merge.c:224 builtin/pull.c:176
+#: builtin/merge.c:227 builtin/pull.c:181
 msgid "option for selected merge strategy"
 msgstr ""
 
-#: builtin/merge.c:226
+#: builtin/merge.c:229
 msgid "merge commit message (for a non-fast-forward merge)"
 msgstr ""
 
-#: builtin/merge.c:230
+#: builtin/merge.c:233
 msgid "abort the current in-progress merge"
 msgstr ""
 
-#: builtin/merge.c:232
+#: builtin/merge.c:235
 msgid "continue the current in-progress merge"
 msgstr ""
 
-#: builtin/merge.c:234 builtin/pull.c:183
+#: builtin/merge.c:237 builtin/pull.c:188
 msgid "allow merging unrelated histories"
 msgstr ""
 
-#: builtin/merge.c:240
+#: builtin/merge.c:243
 msgid "verify commit-msg hook"
 msgstr ""
 
-#: builtin/merge.c:265
+#: builtin/merge.c:268
 msgid "could not run stash."
 msgstr ""
 
-#: builtin/merge.c:270
+#: builtin/merge.c:273
 msgid "stash failed"
 msgstr ""
 
-#: builtin/merge.c:275
+#: builtin/merge.c:278
 #, c-format
 msgid "not a valid object: %s"
 msgstr ""
 
-#: builtin/merge.c:297 builtin/merge.c:314
+#: builtin/merge.c:300 builtin/merge.c:317
 msgid "read-tree failed"
 msgstr ""
 
-#: builtin/merge.c:344
+#: builtin/merge.c:347
 msgid " (nothing to squash)"
 msgstr ""
 
-#: builtin/merge.c:355
+#: builtin/merge.c:358
 #, c-format
 msgid "Squash commit -- not updating HEAD\n"
 msgstr ""
 
-#: builtin/merge.c:405
+#: builtin/merge.c:408
 #, c-format
 msgid "No merge message -- not updating HEAD\n"
 msgstr ""
 
-#: builtin/merge.c:455
+#: builtin/merge.c:458
 #, c-format
 msgid "'%s' does not point to a commit"
 msgstr ""
 
-#: builtin/merge.c:545
+#: builtin/merge.c:548
 #, c-format
 msgid "Bad branch.%s.mergeoptions string: %s"
 msgstr ""
 
-#: builtin/merge.c:667
+#: builtin/merge.c:669
 msgid "Not handling anything other than two heads merge."
 msgstr ""
 
-#: builtin/merge.c:681
+#: builtin/merge.c:683
 #, c-format
 msgid "Unknown option for merge-recursive: -X%s"
 msgstr ""
 
-#: builtin/merge.c:696
+#: builtin/merge.c:698
 #, c-format
 msgid "unable to write %s"
 msgstr ""
 
-#: builtin/merge.c:748
+#: builtin/merge.c:749
 #, c-format
 msgid "Could not read from '%s'"
 msgstr ""
 
-#: builtin/merge.c:757
+#: builtin/merge.c:758
 #, c-format
 msgid "Not committing merge; use 'git commit' to complete the merge.\n"
 msgstr ""
 
-#: builtin/merge.c:763
+#: builtin/merge.c:764
 #, c-format
 msgid ""
 "Please enter a commit message to explain why this merge is necessary,\n"
@@ -9700,7 +10318,7 @@ msgid ""
 "the commit.\n"
 msgstr ""
 
-#: builtin/merge.c:799
+#: builtin/merge.c:800
 msgid "Empty commit message."
 msgstr ""
 
@@ -9745,140 +10363,140 @@ msgstr ""
 msgid "not something we can merge"
 msgstr ""
 
-#: builtin/merge.c:1174
+#: builtin/merge.c:1211
 msgid "--abort expects no arguments"
 msgstr ""
 
-#: builtin/merge.c:1178
+#: builtin/merge.c:1215
 msgid "There is no merge to abort (MERGE_HEAD missing)."
 msgstr ""
 
-#: builtin/merge.c:1190
+#: builtin/merge.c:1227
 msgid "--continue expects no arguments"
 msgstr ""
 
-#: builtin/merge.c:1194
+#: builtin/merge.c:1231
 msgid "There is no merge in progress (MERGE_HEAD missing)."
 msgstr ""
 
-#: builtin/merge.c:1210
+#: builtin/merge.c:1247
 msgid ""
 "You have not concluded your merge (MERGE_HEAD exists).\n"
 "Please, commit your changes before you merge."
 msgstr ""
 
-#: builtin/merge.c:1217
+#: builtin/merge.c:1254
 msgid ""
 "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).\n"
 "Please, commit your changes before you merge."
 msgstr ""
 
-#: builtin/merge.c:1220
+#: builtin/merge.c:1257
 msgid "You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists)."
 msgstr ""
 
-#: builtin/merge.c:1229
+#: builtin/merge.c:1266
 msgid "You cannot combine --squash with --no-ff."
 msgstr ""
 
-#: builtin/merge.c:1237
+#: builtin/merge.c:1274
 msgid "No commit specified and merge.defaultToUpstream not set."
 msgstr ""
 
-#: builtin/merge.c:1254
+#: builtin/merge.c:1291
 msgid "Squash commit into empty head not supported yet"
 msgstr ""
 
-#: builtin/merge.c:1256
+#: builtin/merge.c:1293
 msgid "Non-fast-forward commit does not make sense into an empty head"
 msgstr ""
 
-#: builtin/merge.c:1261
+#: builtin/merge.c:1298
 #, c-format
 msgid "%s - not something we can merge"
 msgstr ""
 
-#: builtin/merge.c:1263
+#: builtin/merge.c:1300
 msgid "Can merge only exactly one commit into empty head"
 msgstr ""
 
-#: builtin/merge.c:1297
+#: builtin/merge.c:1334
 #, c-format
 msgid "Commit %s has an untrusted GPG signature, allegedly by %s."
 msgstr ""
 
-#: builtin/merge.c:1300
+#: builtin/merge.c:1337
 #, c-format
 msgid "Commit %s has a bad GPG signature allegedly by %s."
 msgstr ""
 
-#: builtin/merge.c:1303
+#: builtin/merge.c:1340
 #, c-format
 msgid "Commit %s does not have a GPG signature."
 msgstr ""
 
-#: builtin/merge.c:1306
+#: builtin/merge.c:1343
 #, c-format
 msgid "Commit %s has a good GPG signature by %s\n"
 msgstr ""
 
-#: builtin/merge.c:1368
+#: builtin/merge.c:1402
 msgid "refusing to merge unrelated histories"
 msgstr ""
 
-#: builtin/merge.c:1377
+#: builtin/merge.c:1411
 msgid "Already up to date."
 msgstr ""
 
-#: builtin/merge.c:1387
+#: builtin/merge.c:1421
 #, c-format
 msgid "Updating %s..%s\n"
 msgstr ""
 
-#: builtin/merge.c:1428
+#: builtin/merge.c:1462
 #, c-format
 msgid "Trying really trivial in-index merge...\n"
 msgstr ""
 
-#: builtin/merge.c:1435
+#: builtin/merge.c:1469
 #, c-format
 msgid "Nope.\n"
 msgstr ""
 
-#: builtin/merge.c:1460
+#: builtin/merge.c:1494
 msgid "Already up to date. Yeeah!"
 msgstr ""
 
-#: builtin/merge.c:1466
+#: builtin/merge.c:1500
 msgid "Not possible to fast-forward, aborting."
 msgstr ""
 
-#: builtin/merge.c:1489 builtin/merge.c:1568
+#: builtin/merge.c:1523 builtin/merge.c:1602
 #, c-format
 msgid "Rewinding the tree to pristine...\n"
 msgstr ""
 
-#: builtin/merge.c:1493
+#: builtin/merge.c:1527
 #, c-format
 msgid "Trying merge strategy %s...\n"
 msgstr ""
 
-#: builtin/merge.c:1559
+#: builtin/merge.c:1593
 #, c-format
 msgid "No merge strategy handled the merge.\n"
 msgstr ""
 
-#: builtin/merge.c:1561
+#: builtin/merge.c:1595
 #, c-format
 msgid "Merge with strategy %s failed.\n"
 msgstr ""
 
-#: builtin/merge.c:1570
+#: builtin/merge.c:1604
 #, c-format
 msgid "Using the %s to prepare resolving by hand.\n"
 msgstr ""
 
-#: builtin/merge.c:1582
+#: builtin/merge.c:1616
 #, c-format
 msgid "Automatic merge went well; stopped before committing as requested\n"
 msgstr ""
@@ -10012,21 +10630,21 @@ msgstr ""
 msgid "git mv [<options>] <source>... <destination>"
 msgstr ""
 
-#: builtin/mv.c:83
+#: builtin/mv.c:82
 #, c-format
 msgid "Directory %s is in index and no submodule?"
 msgstr ""
 
-#: builtin/mv.c:85 builtin/rm.c:289
+#: builtin/mv.c:84 builtin/rm.c:288
 msgid "Please stage your changes to .gitmodules or stash them to proceed"
 msgstr ""
 
-#: builtin/mv.c:103
+#: builtin/mv.c:102
 #, c-format
 msgid "%.*s is in index"
 msgstr ""
 
-#: builtin/mv.c:125
+#: builtin/mv.c:124
 msgid "force move/rename even if target exists"
 msgstr ""
 
@@ -10034,68 +10652,68 @@ msgstr ""
 msgid "skip move/rename errors"
 msgstr ""
 
-#: builtin/mv.c:167
+#: builtin/mv.c:168
 #, c-format
 msgid "destination '%s' is not a directory"
 msgstr ""
 
-#: builtin/mv.c:178
+#: builtin/mv.c:179
 #, c-format
 msgid "Checking rename of '%s' to '%s'\n"
 msgstr ""
 
-#: builtin/mv.c:182
+#: builtin/mv.c:183
 msgid "bad source"
 msgstr ""
 
-#: builtin/mv.c:185
+#: builtin/mv.c:186
 msgid "can not move directory into itself"
 msgstr ""
 
-#: builtin/mv.c:188
+#: builtin/mv.c:189
 msgid "cannot move directory over file"
 msgstr ""
 
-#: builtin/mv.c:197
+#: builtin/mv.c:198
 msgid "source directory is empty"
 msgstr ""
 
-#: builtin/mv.c:222
+#: builtin/mv.c:223
 msgid "not under version control"
 msgstr ""
 
-#: builtin/mv.c:225
+#: builtin/mv.c:226
 msgid "destination exists"
 msgstr ""
 
-#: builtin/mv.c:233
+#: builtin/mv.c:234
 #, c-format
 msgid "overwriting '%s'"
 msgstr ""
 
-#: builtin/mv.c:236
+#: builtin/mv.c:237
 msgid "Cannot overwrite"
 msgstr ""
 
-#: builtin/mv.c:239
+#: builtin/mv.c:240
 msgid "multiple sources for the same target"
 msgstr ""
 
-#: builtin/mv.c:241
+#: builtin/mv.c:242
 msgid "destination directory does not exist"
 msgstr ""
 
-#: builtin/mv.c:248
+#: builtin/mv.c:249
 #, c-format
 msgid "%s, source=%s, destination=%s"
 msgstr ""
 
-#: builtin/mv.c:269
+#: builtin/mv.c:270
 #, c-format
 msgid "Renaming %s to %s\n"
 msgstr ""
 
-#: builtin/mv.c:275 builtin/remote.c:712 builtin/repack.c:390
+#: builtin/mv.c:276 builtin/remote.c:715 builtin/repack.c:409
 #, c-format
 msgid "renaming '%s' failed"
 msgstr ""
@@ -10280,12 +10898,12 @@ msgstr ""
 msgid "the note contents have been left in %s"
 msgstr ""
 
-#: builtin/notes.c:234 builtin/tag.c:500
+#: builtin/notes.c:234 builtin/tag.c:507
 #, c-format
 msgid "cannot read '%s'"
 msgstr ""
 
-#: builtin/notes.c:236 builtin/tag.c:503
+#: builtin/notes.c:236 builtin/tag.c:510
 #, c-format
 msgid "could not open or read '%s'"
 msgstr ""
@@ -10519,7 +11137,7 @@ msgstr ""
 msgid "read object names from the standard input"
 msgstr ""
 
-#: builtin/notes.c:943 builtin/prune.c:105 builtin/worktree.c:158
+#: builtin/notes.c:943 builtin/prune.c:107 builtin/worktree.c:151
 msgid "do not remove, show only"
 msgstr ""
 
@@ -10540,204 +11158,236 @@ msgstr ""
 msgid "unknown subcommand: %s"
 msgstr ""
 
-#: builtin/pack-objects.c:33
+#: builtin/pack-objects.c:48
 msgid ""
 "git pack-objects --stdout [<options>...] [< <ref-list> | < <object-list>]"
 msgstr ""
 
-#: builtin/pack-objects.c:34
+#: builtin/pack-objects.c:49
 msgid ""
 "git pack-objects [<options>...] <base-name> [< <ref-list> | < <object-list>]"
 msgstr ""
 
-#: builtin/pack-objects.c:192 builtin/pack-objects.c:195
+#: builtin/pack-objects.c:211 builtin/pack-objects.c:214
 #, c-format
 msgid "deflate error (%d)"
 msgstr ""
 
-#: builtin/pack-objects.c:788
+#: builtin/pack-objects.c:810
 msgid "disabling bitmap writing, packs are split due to pack.packSizeLimit"
 msgstr ""
 
-#: builtin/pack-objects.c:801
+#: builtin/pack-objects.c:823
 msgid "Writing objects"
 msgstr ""
 
-#: builtin/pack-objects.c:1081
+#: builtin/pack-objects.c:1106
 msgid "disabling bitmap writing, as some objects are not being packed"
 msgstr ""
 
-#: builtin/pack-objects.c:2451
+#: builtin/pack-objects.c:1765
+msgid "Counting objects"
+msgstr ""
+
+#: builtin/pack-objects.c:1895
+#, c-format
+msgid "unable to get size of %s"
+msgstr ""
+
+#: builtin/pack-objects.c:1910
+#, c-format
+msgid "unable to parse object header of %s"
+msgstr ""
+
+#: builtin/pack-objects.c:2564
 msgid "Compressing objects"
 msgstr ""
 
-#: builtin/pack-objects.c:2599
+#: builtin/pack-objects.c:2735
 msgid "invalid value for --missing"
 msgstr ""
 
-#: builtin/pack-objects.c:2902
+#: builtin/pack-objects.c:3067
 #, c-format
 msgid "unsupported index version %s"
 msgstr ""
 
-#: builtin/pack-objects.c:2906
+#: builtin/pack-objects.c:3071
 #, c-format
 msgid "bad index version '%s'"
 msgstr ""
 
-#: builtin/pack-objects.c:2936
+#: builtin/pack-objects.c:3102
 msgid "do not show progress meter"
 msgstr ""
 
-#: builtin/pack-objects.c:2938
+#: builtin/pack-objects.c:3104
 msgid "show progress meter"
 msgstr ""
 
-#: builtin/pack-objects.c:2940
+#: builtin/pack-objects.c:3106
 msgid "show progress meter during object writing phase"
 msgstr ""
 
-#: builtin/pack-objects.c:2943
+#: builtin/pack-objects.c:3109
 msgid "similar to --all-progress when progress meter is shown"
 msgstr ""
 
-#: builtin/pack-objects.c:2944
+#: builtin/pack-objects.c:3110
 msgid "version[,offset]"
 msgstr ""
 
-#: builtin/pack-objects.c:2945
+#: builtin/pack-objects.c:3111
 msgid "write the pack index file in the specified idx format version"
 msgstr ""
 
-#: builtin/pack-objects.c:2948
+#: builtin/pack-objects.c:3114
 msgid "maximum size of each output pack file"
 msgstr ""
 
-#: builtin/pack-objects.c:2950
+#: builtin/pack-objects.c:3116
 msgid "ignore borrowed objects from alternate object store"
 msgstr ""
 
-#: builtin/pack-objects.c:2952
+#: builtin/pack-objects.c:3118
 msgid "ignore packed objects"
 msgstr ""
 
-#: builtin/pack-objects.c:2954
+#: builtin/pack-objects.c:3120
 msgid "limit pack window by objects"
 msgstr ""
 
-#: builtin/pack-objects.c:2956
+#: builtin/pack-objects.c:3122
 msgid "limit pack window by memory in addition to object limit"
 msgstr ""
 
-#: builtin/pack-objects.c:2958
+#: builtin/pack-objects.c:3124
 msgid "maximum length of delta chain allowed in the resulting pack"
 msgstr ""
 
-#: builtin/pack-objects.c:2960
+#: builtin/pack-objects.c:3126
 msgid "reuse existing deltas"
 msgstr ""
 
-#: builtin/pack-objects.c:2962
+#: builtin/pack-objects.c:3128
 msgid "reuse existing objects"
 msgstr ""
 
-#: builtin/pack-objects.c:2964
+#: builtin/pack-objects.c:3130
 msgid "use OFS_DELTA objects"
 msgstr ""
 
-#: builtin/pack-objects.c:2966
+#: builtin/pack-objects.c:3132
 msgid "use threads when searching for best delta matches"
 msgstr ""
 
-#: builtin/pack-objects.c:2968
+#: builtin/pack-objects.c:3134
 msgid "do not create an empty pack output"
 msgstr ""
 
-#: builtin/pack-objects.c:2970
+#: builtin/pack-objects.c:3136
 msgid "read revision arguments from standard input"
 msgstr ""
 
-#: builtin/pack-objects.c:2972
+#: builtin/pack-objects.c:3138
 msgid "limit the objects to those that are not yet packed"
 msgstr ""
 
-#: builtin/pack-objects.c:2975
+#: builtin/pack-objects.c:3141
 msgid "include objects reachable from any reference"
 msgstr ""
 
-#: builtin/pack-objects.c:2978
+#: builtin/pack-objects.c:3144
 msgid "include objects referred by reflog entries"
 msgstr ""
 
-#: builtin/pack-objects.c:2981
+#: builtin/pack-objects.c:3147
 msgid "include objects referred to by the index"
 msgstr ""
 
-#: builtin/pack-objects.c:2984
+#: builtin/pack-objects.c:3150
 msgid "output pack to stdout"
 msgstr ""
 
-#: builtin/pack-objects.c:2986
+#: builtin/pack-objects.c:3152
 msgid "include tag objects that refer to objects to be packed"
 msgstr ""
 
-#: builtin/pack-objects.c:2988
+#: builtin/pack-objects.c:3154
 msgid "keep unreachable objects"
 msgstr ""
 
-#: builtin/pack-objects.c:2990
+#: builtin/pack-objects.c:3156
 msgid "pack loose unreachable objects"
 msgstr ""
 
-#: builtin/pack-objects.c:2992
+#: builtin/pack-objects.c:3158
 msgid "unpack unreachable objects newer than <time>"
 msgstr ""
 
-#: builtin/pack-objects.c:2995
+#: builtin/pack-objects.c:3161
 msgid "create thin packs"
 msgstr ""
 
-#: builtin/pack-objects.c:2997
+#: builtin/pack-objects.c:3163
 msgid "create packs suitable for shallow fetches"
 msgstr ""
 
-#: builtin/pack-objects.c:2999
+#: builtin/pack-objects.c:3165
 msgid "ignore packs that have companion .keep file"
 msgstr ""
 
-#: builtin/pack-objects.c:3001
+#: builtin/pack-objects.c:3167
+msgid "ignore this pack"
+msgstr ""
+
+#: builtin/pack-objects.c:3169
 msgid "pack compression level"
 msgstr ""
 
-#: builtin/pack-objects.c:3003
+#: builtin/pack-objects.c:3171
 msgid "do not hide commits by grafts"
 msgstr ""
 
-#: builtin/pack-objects.c:3005
+#: builtin/pack-objects.c:3173
 msgid "use a bitmap index if available to speed up counting objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3007
+#: builtin/pack-objects.c:3175
 msgid "write a bitmap index together with the pack index"
 msgstr ""
 
-#: builtin/pack-objects.c:3010
+#: builtin/pack-objects.c:3178
 msgid "handling for missing objects"
 msgstr ""
 
-#: builtin/pack-objects.c:3144
-msgid "Counting objects"
+#: builtin/pack-objects.c:3181
+msgid "do not pack objects in promisor packfiles"
+msgstr ""
+
+#: builtin/pack-objects.c:3205
+#, c-format
+msgid "delta chain depth %d is too deep, forcing %d"
+msgstr ""
+
+#: builtin/pack-objects.c:3210
+#, c-format
+msgid "pack.deltaCacheLimit is too high, forcing %d"
 msgstr ""
 
-#: builtin/pack-refs.c:6
+#: builtin/pack-objects.c:3338
+msgid "Enumerating objects"
+msgstr ""
+
+#: builtin/pack-refs.c:7
 msgid "git pack-refs [<options>]"
 msgstr ""
 
-#: builtin/pack-refs.c:14
+#: builtin/pack-refs.c:15
 msgid "pack everything"
 msgstr ""
 
-#: builtin/pack-refs.c:15
+#: builtin/pack-refs.c:16
 msgid "prune loose refs (default)"
 msgstr ""
 
@@ -10753,78 +11403,82 @@ msgstr ""
 msgid "git prune [-n] [-v] [--progress] [--expire <time>] [--] [<head>...]"
 msgstr ""
 
-#: builtin/prune.c:106
+#: builtin/prune.c:108
 msgid "report pruned objects"
 msgstr ""
 
-#: builtin/prune.c:109
+#: builtin/prune.c:111
 msgid "expire objects older than <time>"
 msgstr ""
 
-#: builtin/prune.c:123
+#: builtin/prune.c:113
+msgid "limit traversal to objects outside promisor packfiles"
+msgstr ""
+
+#: builtin/prune.c:127
 msgid "cannot prune in a precious-objects repo"
 msgstr ""
 
-#: builtin/pull.c:54 builtin/pull.c:56
+#: builtin/pull.c:59 builtin/pull.c:61
 #, c-format
 msgid "Invalid value for %s: %s"
 msgstr ""
 
-#: builtin/pull.c:76
+#: builtin/pull.c:81
 msgid "git pull [<options>] [<repository> [<refspec>...]]"
 msgstr ""
 
-#: builtin/pull.c:127
+#: builtin/pull.c:132
 msgid "control for recursive fetching of submodules"
 msgstr ""
 
-#: builtin/pull.c:131
+#: builtin/pull.c:136
 msgid "Options related to merging"
 msgstr ""
 
-#: builtin/pull.c:134
+#: builtin/pull.c:139
 msgid "incorporate changes by rebasing rather than merging"
 msgstr ""
 
-#: builtin/pull.c:161 builtin/rebase--helper.c:23 builtin/revert.c:121
+#: builtin/pull.c:166 builtin/rebase--helper.c:23 builtin/revert.c:121
 msgid "allow fast-forward"
 msgstr ""
 
-#: builtin/pull.c:170
+#: builtin/pull.c:175
 msgid "automatically stash/stash pop before and after rebase"
 msgstr ""
 
-#: builtin/pull.c:186
+#: builtin/pull.c:191
 msgid "Options related to fetching"
 msgstr ""
 
-#: builtin/pull.c:204
+#: builtin/pull.c:209
 msgid "number of submodules pulled in parallel"
 msgstr ""
 
-#: builtin/pull.c:299
+#: builtin/pull.c:304
 #, c-format
 msgid "Invalid value for pull.ff: %s"
 msgstr ""
 
-#: builtin/pull.c:415
+#: builtin/pull.c:420
 msgid ""
 "There is no candidate for rebasing against among the refs that you just "
 "fetched."
 msgstr ""
 
-#: builtin/pull.c:417
+#: builtin/pull.c:422
 msgid ""
 "There are no candidates for merging among the refs that you just fetched."
 msgstr ""
 
-#: builtin/pull.c:418
+#: builtin/pull.c:423
 msgid ""
 "Generally this means that you provided a wildcard refspec which had no\n"
 "matches on the remote end."
 msgstr ""
 
-#: builtin/pull.c:421
+#: builtin/pull.c:426
 #, c-format
 msgid ""
 "You asked to pull from the remote '%s', but did not specify\n"
@@ -10832,69 +11486,69 @@ msgid ""
 "for your current branch, you must specify a branch on the command line."
 msgstr ""
 
-#: builtin/pull.c:426 git-parse-remote.sh:73
+#: builtin/pull.c:431 git-parse-remote.sh:73
 msgid "You are not currently on a branch."
 msgstr ""
 
-#: builtin/pull.c:428 builtin/pull.c:443 git-parse-remote.sh:79
+#: builtin/pull.c:433 builtin/pull.c:448 git-parse-remote.sh:79
 msgid "Please specify which branch you want to rebase against."
 msgstr ""
 
-#: builtin/pull.c:430 builtin/pull.c:445 git-parse-remote.sh:82
+#: builtin/pull.c:435 builtin/pull.c:450 git-parse-remote.sh:82
 msgid "Please specify which branch you want to merge with."
 msgstr ""
 
-#: builtin/pull.c:431 builtin/pull.c:446
+#: builtin/pull.c:436 builtin/pull.c:451
 msgid "See git-pull(1) for details."
 msgstr ""
 
-#: builtin/pull.c:433 builtin/pull.c:439 builtin/pull.c:448
+#: builtin/pull.c:438 builtin/pull.c:444 builtin/pull.c:453
 #: git-parse-remote.sh:64
 msgid "<remote>"
 msgstr ""
 
-#: builtin/pull.c:433 builtin/pull.c:448 builtin/pull.c:453 git-rebase.sh:466
+#: builtin/pull.c:438 builtin/pull.c:453 builtin/pull.c:458 git-rebase.sh:523
 #: git-parse-remote.sh:65
 msgid "<branch>"
 msgstr ""
 
-#: builtin/pull.c:441 git-parse-remote.sh:75
+#: builtin/pull.c:446 git-parse-remote.sh:75
 msgid "There is no tracking information for the current branch."
 msgstr ""
 
-#: builtin/pull.c:450 git-parse-remote.sh:95
+#: builtin/pull.c:455 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:455
+#: builtin/pull.c:460
 #, 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:817
+#: builtin/pull.c:826
 msgid "ignoring --verify-signatures for rebase"
 msgstr ""
 
-#: builtin/pull.c:865
+#: builtin/pull.c:874
 msgid "--[no-]autostash option is only valid with --rebase."
 msgstr ""
 
-#: builtin/pull.c:873
+#: builtin/pull.c:882
 msgid "Updating an unborn branch with changes added to the index."
 msgstr ""
 
-#: builtin/pull.c:876
+#: builtin/pull.c:885
 msgid "pull with rebase"
 msgstr ""
 
-#: builtin/pull.c:877
+#: builtin/pull.c:886
 msgid "please commit or stash them."
 msgstr ""
 
-#: builtin/pull.c:902
+#: builtin/pull.c:911
 #, c-format
 msgid ""
 "fetch updated the current branch head.\n"
@@ -10902,7 +11556,7 @@ msgid ""
 "commit %s."
 msgstr ""
 
-#: builtin/pull.c:907
+#: builtin/pull.c:916
 #, c-format
 msgid ""
 "Cannot fast-forward your working tree.\n"
@@ -10913,37 +11567,37 @@ msgid ""
 "to recover."
 msgstr ""
 
-#: builtin/pull.c:922
+#: builtin/pull.c:931
 msgid "Cannot merge multiple branches into empty head."
 msgstr ""
 
-#: builtin/pull.c:926
+#: builtin/pull.c:935
 msgid "Cannot rebase onto multiple branches."
 msgstr ""
 
-#: builtin/pull.c:933
+#: builtin/pull.c:942
 msgid "cannot rebase with locally recorded submodule modifications"
 msgstr ""
 
-#: builtin/push.c:17
+#: builtin/push.c:19
 msgid "git push [<options>] [<repository> [<refspec>...]]"
 msgstr ""
 
-#: builtin/push.c:92
+#: builtin/push.c:111
 msgid "tag shorthand without <tag>"
 msgstr ""
 
-#: builtin/push.c:102
+#: builtin/push.c:121
 msgid "--delete only accepts plain target ref names"
 msgstr ""
 
-#: builtin/push.c:146
+#: builtin/push.c:165
 msgid ""
 "\n"
 "To choose either option permanently, see push.default in 'git help config'."
 msgstr ""
 
-#: builtin/push.c:149
+#: builtin/push.c:168
 #, c-format
 msgid ""
 "The upstream branch of your current branch does not match\n"
@@ -10958,7 +11612,7 @@ msgid ""
 "%s"
 msgstr ""
 
-#: builtin/push.c:164
+#: builtin/push.c:183
 #, c-format
 msgid ""
 "You are not currently on a branch.\n"
@@ -10968,7 +11622,7 @@ msgid ""
 "    git push %s HEAD:<name-of-remote-branch>\n"
 msgstr ""
 
-#: builtin/push.c:178
+#: builtin/push.c:197
 #, c-format
 msgid ""
 "The current branch %s has no upstream branch.\n"
@@ -10977,12 +11631,12 @@ msgid ""
 "    git push --set-upstream %s %s\n"
 msgstr ""
 
-#: builtin/push.c:186
+#: builtin/push.c:205
 #, c-format
 msgid "The current branch %s has multiple upstream branches, refusing to push."
 msgstr ""
 
-#: builtin/push.c:189
+#: builtin/push.c:208
 #, c-format
 msgid ""
 "You are pushing to remote '%s', which is not the upstream of\n"
@@ -10990,12 +11644,12 @@ msgid ""
 "to update which remote branch."
 msgstr ""
 
-#: builtin/push.c:248
+#: builtin/push.c:267
 msgid ""
 "You didn't specify any refspecs to push, and push.default is \"nothing\"."
 msgstr ""
 
-#: builtin/push.c:255
+#: builtin/push.c:274
 msgid ""
 "Updates were rejected because the tip of your current branch is behind\n"
 "its remote counterpart. Integrate the remote changes (e.g.\n"
@@ -11003,7 +11657,7 @@ msgid ""
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
 
-#: builtin/push.c:261
+#: builtin/push.c:280
 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"
@@ -11011,7 +11665,7 @@ msgid ""
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
 
-#: builtin/push.c:267
+#: builtin/push.c:286
 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"
@@ -11020,33 +11674,33 @@ msgid ""
 "See the 'Note about fast-forwards' in 'git push --help' for details."
 msgstr ""
 
-#: builtin/push.c:274
+#: builtin/push.c:293
 msgid "Updates were rejected because the tag already exists in the remote."
 msgstr ""
 
-#: builtin/push.c:277
+#: builtin/push.c:296
 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:337
+#: builtin/push.c:357
 #, c-format
 msgid "Pushing to %s\n"
 msgstr ""
 
-#: builtin/push.c:341
+#: builtin/push.c:361
 #, c-format
 msgid "failed to push some refs to '%s'"
 msgstr ""
 
-#: builtin/push.c:372
+#: builtin/push.c:395
 #, c-format
 msgid "bad repository '%s'"
 msgstr ""
 
-#: builtin/push.c:373
+#: builtin/push.c:396
 msgid ""
 "No configured push destination.\n"
 "Either specify the URL from the command-line or configure a remote "
@@ -11059,112 +11713,104 @@ msgid ""
 "    git push <name>\n"
 msgstr ""
 
-#: builtin/push.c:391
-msgid "--all and --tags are incompatible"
+#: builtin/push.c:551
+msgid "repository"
 msgstr ""
 
-#: builtin/push.c:392
-msgid "--all can't be combined with refspecs"
+#: builtin/push.c:552 builtin/send-pack.c:164
+msgid "push all refs"
 msgstr ""
 
-#: builtin/push.c:397
-msgid "--mirror and --tags are incompatible"
+#: builtin/push.c:553 builtin/send-pack.c:166
+msgid "mirror all refs"
 msgstr ""
 
-#: builtin/push.c:398
-msgid "--mirror can't be combined with refspecs"
+#: builtin/push.c:555
+msgid "delete refs"
 msgstr ""
 
-#: builtin/push.c:403
-msgid "--all and --mirror are incompatible"
+#: builtin/push.c:556
+msgid "push tags (can't be used with --all or --mirror)"
 msgstr ""
 
-#: builtin/push.c:535
-msgid "repository"
+#: builtin/push.c:559 builtin/send-pack.c:167
+msgid "force updates"
 msgstr ""
 
-#: builtin/push.c:536 builtin/send-pack.c:163
-msgid "push all refs"
+#: builtin/push.c:561 builtin/send-pack.c:181
+msgid "refname>:<expect"
 msgstr ""
 
-#: builtin/push.c:537 builtin/send-pack.c:165
-msgid "mirror all refs"
-msgstr ""
-
-#: builtin/push.c:539
-msgid "delete refs"
-msgstr ""
-
-#: builtin/push.c:540
-msgid "push tags (can't be used with --all or --mirror)"
-msgstr ""
-
-#: builtin/push.c:543 builtin/send-pack.c:166
-msgid "force updates"
-msgstr ""
-
-#: builtin/push.c:545 builtin/send-pack.c:180
-msgid "refname>:<expect"
-msgstr ""
-
-#: builtin/push.c:546 builtin/send-pack.c:181
+#: builtin/push.c:562 builtin/send-pack.c:182
 msgid "require old value of ref to be at this value"
 msgstr ""
 
-#: builtin/push.c:549
+#: builtin/push.c:565
 msgid "control recursive pushing of submodules"
 msgstr ""
 
-#: builtin/push.c:551 builtin/send-pack.c:174
+#: builtin/push.c:567 builtin/send-pack.c:175
 msgid "use thin pack"
 msgstr ""
 
-#: builtin/push.c:552 builtin/push.c:553 builtin/send-pack.c:160
-#: builtin/send-pack.c:161
+#: builtin/push.c:568 builtin/push.c:569 builtin/send-pack.c:161
+#: builtin/send-pack.c:162
 msgid "receive pack program"
 msgstr ""
 
-#: builtin/push.c:554
+#: builtin/push.c:570
 msgid "set upstream for git pull/status"
 msgstr ""
 
-#: builtin/push.c:557
+#: builtin/push.c:573
 msgid "prune locally removed refs"
 msgstr ""
 
-#: builtin/push.c:559
+#: builtin/push.c:575
 msgid "bypass pre-push hook"
 msgstr ""
 
-#: builtin/push.c:560
+#: builtin/push.c:576
 msgid "push missing but relevant tags"
 msgstr ""
 
-#: builtin/push.c:563 builtin/send-pack.c:168
+#: builtin/push.c:579 builtin/send-pack.c:169
 msgid "GPG sign the push"
 msgstr ""
 
-#: builtin/push.c:565 builtin/send-pack.c:175
+#: builtin/push.c:581 builtin/send-pack.c:176
 msgid "request atomic transaction on remote side"
 msgstr ""
 
-#: builtin/push.c:566 builtin/send-pack.c:171
-msgid "server-specific"
+#: builtin/push.c:599
+msgid "--delete is incompatible with --all, --mirror and --tags"
 msgstr ""
 
-#: builtin/push.c:566 builtin/send-pack.c:172
-msgid "option to transmit"
+#: builtin/push.c:601
+msgid "--delete doesn't make sense without any refs"
 msgstr ""
 
-#: builtin/push.c:583
-msgid "--delete is incompatible with --all, --mirror and --tags"
+#: builtin/push.c:604
+msgid "--all and --tags are incompatible"
 msgstr ""
 
-#: builtin/push.c:585
-msgid "--delete doesn't make sense without any refs"
+#: builtin/push.c:606
+msgid "--all can't be combined with refspecs"
 msgstr ""
 
-#: builtin/push.c:604
+#: builtin/push.c:610
+msgid "--mirror and --tags are incompatible"
+msgstr ""
+
+#: builtin/push.c:612
+msgid "--mirror can't be combined with refspecs"
+msgstr ""
+
+#: builtin/push.c:615
+msgid "--all and --mirror are incompatible"
+msgstr ""
+
+#: builtin/push.c:634
 msgid "push options must not have new line characters"
 msgstr ""
 
@@ -11175,67 +11821,67 @@ msgid ""
 "index-output=<file>] (--empty | <tree-ish1> [<tree-ish2> [<tree-ish3>]])"
 msgstr ""
 
-#: builtin/read-tree.c:121
+#: builtin/read-tree.c:120
 msgid "write resulting index to <file>"
 msgstr ""
 
-#: builtin/read-tree.c:124
+#: builtin/read-tree.c:123
 msgid "only empty the index"
 msgstr ""
 
-#: builtin/read-tree.c:126
+#: builtin/read-tree.c:125
 msgid "Merging"
 msgstr ""
 
-#: builtin/read-tree.c:128
+#: builtin/read-tree.c:127
 msgid "perform a merge in addition to a read"
 msgstr ""
 
-#: builtin/read-tree.c:130
+#: builtin/read-tree.c:129
 msgid "3-way merge if no file level merging required"
 msgstr ""
 
-#: builtin/read-tree.c:132
+#: builtin/read-tree.c:131
 msgid "3-way merge in presence of adds and removes"
 msgstr ""
 
-#: builtin/read-tree.c:134
+#: builtin/read-tree.c:133
 msgid "same as -m, but discard unmerged entries"
 msgstr ""
 
-#: builtin/read-tree.c:135
+#: builtin/read-tree.c:134
 msgid "<subdirectory>/"
 msgstr ""
 
-#: builtin/read-tree.c:136
+#: builtin/read-tree.c:135
 msgid "read the tree into the index under <subdirectory>/"
 msgstr ""
 
-#: builtin/read-tree.c:139
+#: builtin/read-tree.c:138
 msgid "update working tree with merge result"
 msgstr ""
 
-#: builtin/read-tree.c:141
+#: builtin/read-tree.c:140
 msgid "gitignore"
 msgstr ""
 
-#: builtin/read-tree.c:142
+#: builtin/read-tree.c:141
 msgid "allow explicitly ignored files to be overwritten"
 msgstr ""
 
-#: builtin/read-tree.c:145
+#: builtin/read-tree.c:144
 msgid "don't check the working tree after merging"
 msgstr ""
 
-#: builtin/read-tree.c:146
+#: builtin/read-tree.c:145
 msgid "don't update the index or the work tree"
 msgstr ""
 
-#: builtin/read-tree.c:148
+#: builtin/read-tree.c:147
 msgid "skip applying sparse checkout filter"
 msgstr ""
 
-#: builtin/read-tree.c:150
+#: builtin/read-tree.c:149
 msgid "debug unpack-trees"
 msgstr ""
 
@@ -11247,47 +11893,63 @@ msgstr ""
 msgid "keep empty commits"
 msgstr ""
 
-#: builtin/rebase--helper.c:25
-msgid "continue rebase"
+#: builtin/rebase--helper.c:26 builtin/revert.c:123
+msgid "allow commits with empty messages"
 msgstr ""
 
 #: builtin/rebase--helper.c:27
-msgid "abort rebase"
+msgid "rebase merge commits"
+msgstr ""
+
+#: builtin/rebase--helper.c:29
+msgid "keep original branch points of cousins"
 msgstr ""
 
 #: builtin/rebase--helper.c:30
-msgid "make rebase script"
+msgid "continue rebase"
 msgstr ""
 
 #: builtin/rebase--helper.c:32
+msgid "abort rebase"
+msgstr ""
+
+#: builtin/rebase--helper.c:35
+msgid "make rebase script"
+msgstr ""
+
+#: builtin/rebase--helper.c:37
 msgid "shorten commit ids in the todo list"
 msgstr ""
 
-#: builtin/rebase--helper.c:34
+#: builtin/rebase--helper.c:39
 msgid "expand commit ids in the todo list"
 msgstr ""
 
-#: builtin/rebase--helper.c:36
+#: builtin/rebase--helper.c:41
 msgid "check the todo list"
 msgstr ""
 
-#: builtin/rebase--helper.c:38
+#: builtin/rebase--helper.c:43
 msgid "skip unnecessary picks"
 msgstr ""
 
-#: builtin/rebase--helper.c:40
+#: builtin/rebase--helper.c:45
 msgid "rearrange fixup/squash lines"
 msgstr ""
 
-#: builtin/rebase--helper.c:42
+#: builtin/rebase--helper.c:47
 msgid "insert exec commands in todo list"
 msgstr ""
 
-#: builtin/receive-pack.c:30
+#: builtin/rebase--helper.c:68
+msgid "--[no-]rebase-cousins has no effect without --rebase-merges"
+msgstr ""
+
+#: builtin/receive-pack.c:31
 msgid "git receive-pack <git-dir>"
 msgstr ""
 
-#: builtin/receive-pack.c:840
+#: builtin/receive-pack.c:842
 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"
@@ -11304,7 +11966,7 @@ msgid ""
 "'receive.denyCurrentBranch' configuration variable to 'refuse'."
 msgstr ""
 
-#: builtin/receive-pack.c:860
+#: builtin/receive-pack.c:862
 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"
@@ -11316,189 +11978,189 @@ msgid ""
 "To squelch this message, you can set it to 'refuse'."
 msgstr ""
 
-#: builtin/receive-pack.c:1933
+#: builtin/receive-pack.c:1935
 msgid "quiet"
 msgstr ""
 
-#: builtin/receive-pack.c:1947
+#: builtin/receive-pack.c:1949
 msgid "You must specify a directory."
 msgstr ""
 
-#: builtin/reflog.c:531 builtin/reflog.c:536
+#: builtin/reflog.c:532 builtin/reflog.c:537
 #, c-format
 msgid "'%s' is not a valid timestamp"
 msgstr ""
 
-#: builtin/remote.c:13
+#: builtin/remote.c:14
 msgid "git remote [-v | --verbose]"
 msgstr ""
 
-#: builtin/remote.c:14
+#: builtin/remote.c:15
 msgid ""
 "git remote add [-t <branch>] [-m <master>] [-f] [--tags | --no-tags] [--"
 "mirror=<fetch|push>] <name> <url>"
 msgstr ""
 
-#: builtin/remote.c:15 builtin/remote.c:35
+#: builtin/remote.c:16 builtin/remote.c:36
 msgid "git remote rename <old> <new>"
 msgstr ""
 
-#: builtin/remote.c:16 builtin/remote.c:40
+#: builtin/remote.c:17 builtin/remote.c:41
 msgid "git remote remove <name>"
 msgstr ""
 
-#: builtin/remote.c:17 builtin/remote.c:45
+#: builtin/remote.c:18 builtin/remote.c:46
 msgid "git remote set-head <name> (-a | --auto | -d | --delete | <branch>)"
 msgstr ""
 
-#: builtin/remote.c:18
+#: builtin/remote.c:19
 msgid "git remote [-v | --verbose] show [-n] <name>"
 msgstr ""
 
-#: builtin/remote.c:19
+#: builtin/remote.c:20
 msgid "git remote prune [-n | --dry-run] <name>"
 msgstr ""
 
-#: builtin/remote.c:20
+#: builtin/remote.c:21
 msgid ""
 "git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)...]"
 msgstr ""
 
-#: builtin/remote.c:21
+#: builtin/remote.c:22
 msgid "git remote set-branches [--add] <name> <branch>..."
 msgstr ""
 
-#: builtin/remote.c:22 builtin/remote.c:71
+#: builtin/remote.c:23 builtin/remote.c:72
 msgid "git remote get-url [--push] [--all] <name>"
 msgstr ""
 
-#: builtin/remote.c:23 builtin/remote.c:76
+#: builtin/remote.c:24 builtin/remote.c:77
 msgid "git remote set-url [--push] <name> <newurl> [<oldurl>]"
 msgstr ""
 
-#: builtin/remote.c:24 builtin/remote.c:77
+#: builtin/remote.c:25 builtin/remote.c:78
 msgid "git remote set-url --add <name> <newurl>"
 msgstr ""
 
-#: builtin/remote.c:25 builtin/remote.c:78
+#: builtin/remote.c:26 builtin/remote.c:79
 msgid "git remote set-url --delete <name> <url>"
 msgstr ""
 
-#: builtin/remote.c:30
+#: builtin/remote.c:31
 msgid "git remote add [<options>] <name> <url>"
 msgstr ""
 
-#: builtin/remote.c:50
+#: builtin/remote.c:51
 msgid "git remote set-branches <name> <branch>..."
 msgstr ""
 
-#: builtin/remote.c:51
+#: builtin/remote.c:52
 msgid "git remote set-branches --add <name> <branch>..."
 msgstr ""
 
-#: builtin/remote.c:56
+#: builtin/remote.c:57
 msgid "git remote show [<options>] <name>"
 msgstr ""
 
-#: builtin/remote.c:61
+#: builtin/remote.c:62
 msgid "git remote prune [<options>] <name>"
 msgstr ""
 
-#: builtin/remote.c:66
+#: builtin/remote.c:67
 msgid "git remote update [<options>] [<group> | <remote>]..."
 msgstr ""
 
-#: builtin/remote.c:95
+#: builtin/remote.c:96
 #, c-format
 msgid "Updating %s"
 msgstr ""
 
-#: builtin/remote.c:127
+#: builtin/remote.c:128
 msgid ""
 "--mirror is dangerous and deprecated; please\n"
 "\t use --mirror=fetch or --mirror=push instead"
 msgstr ""
 
-#: builtin/remote.c:144
+#: builtin/remote.c:145
 #, c-format
 msgid "unknown mirror argument: %s"
 msgstr ""
 
-#: builtin/remote.c:160
+#: builtin/remote.c:161
 msgid "fetch the remote branches"
 msgstr ""
 
-#: builtin/remote.c:162
+#: builtin/remote.c:163
 msgid "import all tags and associated objects when fetching"
 msgstr ""
 
-#: builtin/remote.c:165
+#: builtin/remote.c:166
 msgid "or do not fetch any tag at all (--no-tags)"
 msgstr ""
 
-#: builtin/remote.c:167
+#: builtin/remote.c:168
 msgid "branch(es) to track"
 msgstr ""
 
-#: builtin/remote.c:168
+#: builtin/remote.c:169
 msgid "master branch"
 msgstr ""
 
-#: builtin/remote.c:169
+#: builtin/remote.c:170
 msgid "push|fetch"
 msgstr ""
 
-#: builtin/remote.c:170
+#: builtin/remote.c:171
 msgid "set up remote as a mirror to push to or fetch from"
 msgstr ""
 
-#: builtin/remote.c:182
+#: builtin/remote.c:183
 msgid "specifying a master branch makes no sense with --mirror"
 msgstr ""
 
-#: builtin/remote.c:184
+#: builtin/remote.c:185
 msgid "specifying branches to track makes sense only with fetch mirrors"
 msgstr ""
 
-#: builtin/remote.c:191 builtin/remote.c:631
+#: builtin/remote.c:192 builtin/remote.c:634
 #, c-format
 msgid "remote %s already exists."
 msgstr ""
 
-#: builtin/remote.c:195 builtin/remote.c:635
+#: builtin/remote.c:196 builtin/remote.c:638
 #, c-format
 msgid "'%s' is not a valid remote name"
 msgstr ""
 
-#: builtin/remote.c:235
+#: builtin/remote.c:236
 #, c-format
 msgid "Could not setup master '%s'"
 msgstr ""
 
-#: builtin/remote.c:337
+#: builtin/remote.c:342
 #, c-format
 msgid "Could not get fetch map for refspec %s"
 msgstr ""
 
-#: builtin/remote.c:438 builtin/remote.c:446
+#: builtin/remote.c:441 builtin/remote.c:449
 msgid "(matching)"
 msgstr ""
 
-#: builtin/remote.c:450
+#: builtin/remote.c:453
 msgid "(delete)"
 msgstr ""
 
-#: builtin/remote.c:624 builtin/remote.c:759 builtin/remote.c:858
+#: builtin/remote.c:627 builtin/remote.c:762 builtin/remote.c:861
 #, c-format
 msgid "No such remote: %s"
 msgstr ""
 
-#: builtin/remote.c:641
+#: builtin/remote.c:644
 #, c-format
 msgid "Could not rename config section '%s' to '%s'"
 msgstr ""
 
-#: builtin/remote.c:661
+#: builtin/remote.c:664
 #, c-format
 msgid ""
 "Not updating non-default fetch refspec\n"
@@ -11506,17 +12168,17 @@ msgid ""
 "\tPlease update the configuration manually if necessary."
 msgstr ""
 
-#: builtin/remote.c:697
+#: builtin/remote.c:700
 #, c-format
 msgid "deleting '%s' failed"
 msgstr ""
 
-#: builtin/remote.c:731
+#: builtin/remote.c:734
 #, c-format
 msgid "creating '%s' failed"
 msgstr ""
 
-#: builtin/remote.c:796
+#: builtin/remote.c:799
 msgid ""
 "Note: A branch outside the refs/remotes/ hierarchy was not removed;\n"
 "to delete it, use:"
@@ -11526,113 +12188,118 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/remote.c:810
+#: builtin/remote.c:813
 #, c-format
 msgid "Could not remove config section '%s'"
 msgstr ""
 
-#: builtin/remote.c:911
+#: builtin/remote.c:914
 #, c-format
 msgid " new (next fetch will store in remotes/%s)"
 msgstr ""
 
-#: builtin/remote.c:914
+#: builtin/remote.c:917
 msgid " tracked"
 msgstr ""
 
-#: builtin/remote.c:916
+#: builtin/remote.c:919
 msgid " stale (use 'git remote prune' to remove)"
 msgstr ""
 
-#: builtin/remote.c:918
+#: builtin/remote.c:921
 msgid " ???"
 msgstr ""
 
-#: builtin/remote.c:959
+#: builtin/remote.c:962
 #, c-format
 msgid "invalid branch.%s.merge; cannot rebase onto > 1 branch"
 msgstr ""
 
-#: builtin/remote.c:967
+#: builtin/remote.c:971
 #, c-format
 msgid "rebases interactively onto remote %s"
 msgstr ""
 
-#: builtin/remote.c:968
+#: builtin/remote.c:973
+#, c-format
+msgid "rebases interactively (with merges) onto remote %s"
+msgstr ""
+
+#: builtin/remote.c:976
 #, c-format
 msgid "rebases onto remote %s"
 msgstr ""
 
-#: builtin/remote.c:971
+#: builtin/remote.c:980
 #, c-format
 msgid " merges with remote %s"
 msgstr ""
 
-#: builtin/remote.c:974
+#: builtin/remote.c:983
 #, c-format
 msgid "merges with remote %s"
 msgstr ""
 
-#: builtin/remote.c:977
+#: builtin/remote.c:986
 #, c-format
 msgid "%-*s    and with remote %s\n"
 msgstr ""
 
-#: builtin/remote.c:1020
+#: builtin/remote.c:1029
 msgid "create"
 msgstr ""
 
-#: builtin/remote.c:1023
+#: builtin/remote.c:1032
 msgid "delete"
 msgstr ""
 
-#: builtin/remote.c:1027
+#: builtin/remote.c:1036
 msgid "up to date"
 msgstr ""
 
-#: builtin/remote.c:1030
+#: builtin/remote.c:1039
 msgid "fast-forwardable"
 msgstr ""
 
-#: builtin/remote.c:1033
+#: builtin/remote.c:1042
 msgid "local out of date"
 msgstr ""
 
-#: builtin/remote.c:1040
+#: builtin/remote.c:1049
 #, c-format
 msgid "    %-*s forces to %-*s (%s)"
 msgstr ""
 
-#: builtin/remote.c:1043
+#: builtin/remote.c:1052
 #, c-format
 msgid "    %-*s pushes to %-*s (%s)"
 msgstr ""
 
-#: builtin/remote.c:1047
+#: builtin/remote.c:1056
 #, c-format
 msgid "    %-*s forces to %s"
 msgstr ""
 
-#: builtin/remote.c:1050
+#: builtin/remote.c:1059
 #, c-format
 msgid "    %-*s pushes to %s"
 msgstr ""
 
-#: builtin/remote.c:1118
+#: builtin/remote.c:1127
 msgid "do not query remotes"
 msgstr ""
 
-#: builtin/remote.c:1145
+#: builtin/remote.c:1154
 #, c-format
 msgid "* remote %s"
 msgstr ""
 
-#: builtin/remote.c:1146
+#: builtin/remote.c:1155
 #, c-format
 msgid "  Fetch URL: %s"
 msgstr ""
 
-#: builtin/remote.c:1147 builtin/remote.c:1163 builtin/remote.c:1302
+#: builtin/remote.c:1156 builtin/remote.c:1172 builtin/remote.c:1311
 msgid "(no URL)"
 msgstr ""
 
@@ -11640,184 +12307,184 @@ msgstr ""
 #. with the one in " Fetch URL: %s"
 #. translation.
 #.
-#: builtin/remote.c:1161 builtin/remote.c:1163
+#: builtin/remote.c:1170 builtin/remote.c:1172
 #, c-format
 msgid "  Push  URL: %s"
 msgstr ""
 
-#: builtin/remote.c:1165 builtin/remote.c:1167 builtin/remote.c:1169
+#: builtin/remote.c:1174 builtin/remote.c:1176 builtin/remote.c:1178
 #, c-format
 msgid "  HEAD branch: %s"
 msgstr ""
 
-#: builtin/remote.c:1165
+#: builtin/remote.c:1174
 msgid "(not queried)"
 msgstr ""
 
-#: builtin/remote.c:1167
+#: builtin/remote.c:1176
 msgid "(unknown)"
 msgstr ""
 
-#: builtin/remote.c:1171
+#: builtin/remote.c:1180
 #, c-format
 msgid ""
 "  HEAD branch (remote HEAD is ambiguous, may be one of the following):\n"
 msgstr ""
 
-#: builtin/remote.c:1183
+#: builtin/remote.c:1192
 #, c-format
 msgid "  Remote branch:%s"
 msgid_plural "  Remote branches:%s"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/remote.c:1186 builtin/remote.c:1212
+#: builtin/remote.c:1195 builtin/remote.c:1221
 msgid " (status not queried)"
 msgstr ""
 
-#: builtin/remote.c:1195
+#: builtin/remote.c:1204
 msgid "  Local branch configured for 'git pull':"
 msgid_plural "  Local branches configured for 'git pull':"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/remote.c:1203
+#: builtin/remote.c:1212
 msgid "  Local refs will be mirrored by 'git push'"
 msgstr ""
 
-#: builtin/remote.c:1209
+#: builtin/remote.c:1218
 #, c-format
 msgid "  Local ref configured for 'git push'%s:"
 msgid_plural "  Local refs configured for 'git push'%s:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/remote.c:1230
+#: builtin/remote.c:1239
 msgid "set refs/remotes/<name>/HEAD according to remote"
 msgstr ""
 
-#: builtin/remote.c:1232
+#: builtin/remote.c:1241
 msgid "delete refs/remotes/<name>/HEAD"
 msgstr ""
 
-#: builtin/remote.c:1247
+#: builtin/remote.c:1256
 msgid "Cannot determine remote HEAD"
 msgstr ""
 
-#: builtin/remote.c:1249
+#: builtin/remote.c:1258
 msgid "Multiple remote HEAD branches. Please choose one explicitly with:"
 msgstr ""
 
-#: builtin/remote.c:1259
+#: builtin/remote.c:1268
 #, c-format
 msgid "Could not delete %s"
 msgstr ""
 
-#: builtin/remote.c:1267
+#: builtin/remote.c:1276
 #, c-format
 msgid "Not a valid ref: %s"
 msgstr ""
 
-#: builtin/remote.c:1269
+#: builtin/remote.c:1278
 #, c-format
 msgid "Could not setup %s"
 msgstr ""
 
-#: builtin/remote.c:1287
+#: builtin/remote.c:1296
 #, c-format
 msgid " %s will become dangling!"
 msgstr ""
 
-#: builtin/remote.c:1288
+#: builtin/remote.c:1297
 #, c-format
 msgid " %s has become dangling!"
 msgstr ""
 
-#: builtin/remote.c:1298
+#: builtin/remote.c:1307
 #, c-format
 msgid "Pruning %s"
 msgstr ""
 
-#: builtin/remote.c:1299
+#: builtin/remote.c:1308
 #, c-format
 msgid "URL: %s"
 msgstr ""
 
-#: builtin/remote.c:1315
+#: builtin/remote.c:1324
 #, c-format
 msgid " * [would prune] %s"
 msgstr ""
 
-#: builtin/remote.c:1318
+#: builtin/remote.c:1327
 #, c-format
 msgid " * [pruned] %s"
 msgstr ""
 
-#: builtin/remote.c:1363
+#: builtin/remote.c:1372
 msgid "prune remotes after fetching"
 msgstr ""
 
-#: builtin/remote.c:1426 builtin/remote.c:1480 builtin/remote.c:1548
+#: builtin/remote.c:1435 builtin/remote.c:1489 builtin/remote.c:1557
 #, c-format
 msgid "No such remote '%s'"
 msgstr ""
 
-#: builtin/remote.c:1442
+#: builtin/remote.c:1451
 msgid "add branch"
 msgstr ""
 
-#: builtin/remote.c:1449
+#: builtin/remote.c:1458
 msgid "no remote specified"
 msgstr ""
 
-#: builtin/remote.c:1466
+#: builtin/remote.c:1475
 msgid "query push URLs rather than fetch URLs"
 msgstr ""
 
-#: builtin/remote.c:1468
+#: builtin/remote.c:1477
 msgid "return all URLs"
 msgstr ""
 
-#: builtin/remote.c:1496
+#: builtin/remote.c:1505
 #, c-format
 msgid "no URLs configured for remote '%s'"
 msgstr ""
 
-#: builtin/remote.c:1522
+#: builtin/remote.c:1531
 msgid "manipulate push URLs"
 msgstr ""
 
-#: builtin/remote.c:1524
+#: builtin/remote.c:1533
 msgid "add URL"
 msgstr ""
 
-#: builtin/remote.c:1526
+#: builtin/remote.c:1535
 msgid "delete URLs"
 msgstr ""
 
-#: builtin/remote.c:1533
+#: builtin/remote.c:1542
 msgid "--add --delete doesn't make sense"
 msgstr ""
 
-#: builtin/remote.c:1572
+#: builtin/remote.c:1581
 #, c-format
 msgid "Invalid old URL pattern: %s"
 msgstr ""
 
-#: builtin/remote.c:1580
+#: builtin/remote.c:1589
 #, c-format
 msgid "No such URL found: %s"
 msgstr ""
 
-#: builtin/remote.c:1582
+#: builtin/remote.c:1591
 msgid "Will not delete all non-push URLs"
 msgstr ""
 
-#: builtin/remote.c:1598
+#: builtin/remote.c:1607
 msgid "be verbose; must be placed before a subcommand"
 msgstr ""
 
-#: builtin/remote.c:1629
+#: builtin/remote.c:1638
 #, c-format
 msgid "Unknown subcommand: %s"
 msgstr ""
@@ -11832,172 +12499,191 @@ msgid ""
 "--no-write-bitmap-index or disable the pack.writebitmaps configuration."
 msgstr ""
 
-#: builtin/repack.c:168
+#: builtin/repack.c:180
 msgid "pack everything in a single pack"
 msgstr ""
 
-#: builtin/repack.c:170
+#: builtin/repack.c:182
 msgid "same as -a, and turn unreachable objects loose"
 msgstr ""
 
-#: builtin/repack.c:173
+#: builtin/repack.c:185
 msgid "remove redundant packs, and run git-prune-packed"
 msgstr ""
 
-#: builtin/repack.c:175
+#: builtin/repack.c:187
 msgid "pass --no-reuse-delta to git-pack-objects"
 msgstr ""
 
-#: builtin/repack.c:177
+#: builtin/repack.c:189
 msgid "pass --no-reuse-object to git-pack-objects"
 msgstr ""
 
-#: builtin/repack.c:179
+#: builtin/repack.c:191
 msgid "do not run git-update-server-info"
 msgstr ""
 
-#: builtin/repack.c:182
+#: builtin/repack.c:194
 msgid "pass --local to git-pack-objects"
 msgstr ""
 
-#: builtin/repack.c:184
+#: builtin/repack.c:196
 msgid "write bitmap index"
 msgstr ""
 
-#: builtin/repack.c:185
+#: builtin/repack.c:197
 msgid "approxidate"
 msgstr ""
 
-#: builtin/repack.c:186
+#: builtin/repack.c:198
 msgid "with -A, do not loosen objects older than this"
 msgstr ""
 
-#: builtin/repack.c:188
+#: builtin/repack.c:200
 msgid "with -a, repack unreachable objects"
 msgstr ""
 
-#: builtin/repack.c:190
+#: builtin/repack.c:202
 msgid "size of the window used for delta compression"
 msgstr ""
 
-#: builtin/repack.c:191 builtin/repack.c:197
+#: builtin/repack.c:203 builtin/repack.c:209
 msgid "bytes"
 msgstr ""
 
-#: builtin/repack.c:192
+#: builtin/repack.c:204
 msgid "same as the above, but limit memory size instead of entries count"
 msgstr ""
 
-#: builtin/repack.c:194
+#: builtin/repack.c:206
 msgid "limits the maximum delta depth"
 msgstr ""
 
-#: builtin/repack.c:196
+#: builtin/repack.c:208
 msgid "limits the maximum number of threads"
 msgstr ""
 
-#: builtin/repack.c:198
+#: builtin/repack.c:210
 msgid "maximum size of each packfile"
 msgstr ""
 
-#: builtin/repack.c:200
+#: builtin/repack.c:212
 msgid "repack objects in packs marked with .keep"
 msgstr ""
 
-#: builtin/repack.c:210
+#: builtin/repack.c:214
+msgid "do not repack this pack"
+msgstr ""
+
+#: builtin/repack.c:224
 msgid "cannot delete packs in a precious-objects repo"
 msgstr ""
 
-#: builtin/repack.c:214
+#: builtin/repack.c:228
 msgid "--keep-unreachable and -A are incompatible"
 msgstr ""
 
-#: builtin/repack.c:406 builtin/worktree.c:146
+#: builtin/repack.c:425 builtin/worktree.c:139
 #, c-format
 msgid "failed to remove '%s'"
 msgstr ""
 
-#: builtin/replace.c:20
+#: builtin/replace.c:22
 msgid "git replace [-f] <object> <replacement>"
 msgstr ""
 
-#: builtin/replace.c:21
+#: builtin/replace.c:23
 msgid "git replace [-f] --edit <object>"
 msgstr ""
 
-#: builtin/replace.c:22
+#: builtin/replace.c:24
 msgid "git replace [-f] --graft <commit> [<parent>...]"
 msgstr ""
 
-#: builtin/replace.c:23
+#: builtin/replace.c:25
+msgid "git replace [-f] --convert-graft-file"
+msgstr ""
+
+#: builtin/replace.c:26
 msgid "git replace -d <object>..."
 msgstr ""
 
-#: builtin/replace.c:24
+#: builtin/replace.c:27
 msgid "git replace [--format=<format>] [-l [<pattern>]]"
 msgstr ""
 
-#: builtin/replace.c:331 builtin/replace.c:369 builtin/replace.c:397
+#: builtin/replace.c:371 builtin/replace.c:415 builtin/replace.c:445
 #, c-format
 msgid "Not a valid object name: '%s'"
 msgstr ""
 
-#: builtin/replace.c:361
+#: builtin/replace.c:407
 #, c-format
 msgid "bad mergetag in commit '%s'"
 msgstr ""
 
-#: builtin/replace.c:363
+#: builtin/replace.c:409
 #, c-format
 msgid "malformed mergetag in commit '%s'"
 msgstr ""
 
-#: builtin/replace.c:374
+#: builtin/replace.c:421
 #, c-format
 msgid ""
 "original commit '%s' contains mergetag '%s' that is discarded; use --edit "
 "instead of --graft"
 msgstr ""
 
-#: builtin/replace.c:407
+#: builtin/replace.c:460
 #, c-format
 msgid "the original commit '%s' has a gpg signature."
 msgstr ""
 
-#: builtin/replace.c:408
+#: builtin/replace.c:461
 msgid "the signature will be removed in the replacement commit!"
 msgstr ""
 
-#: builtin/replace.c:414
+#: builtin/replace.c:471
 #, c-format
 msgid "could not write replacement commit for: '%s'"
 msgstr ""
 
-#: builtin/replace.c:438
+#: builtin/replace.c:514
+#, c-format
+msgid ""
+"could not convert the following graft(s):\n"
+"%s"
+msgstr ""
+
+#: builtin/replace.c:535
 msgid "list replace refs"
 msgstr ""
 
-#: builtin/replace.c:439
+#: builtin/replace.c:536
 msgid "delete replace refs"
 msgstr ""
 
-#: builtin/replace.c:440
+#: builtin/replace.c:537
 msgid "edit existing object"
 msgstr ""
 
-#: builtin/replace.c:441
+#: builtin/replace.c:538
 msgid "change a commit's parents"
 msgstr ""
 
-#: builtin/replace.c:442
+#: builtin/replace.c:539
+msgid "convert existing graft file"
+msgstr ""
+
+#: builtin/replace.c:540
 msgid "replace the ref if it exists"
 msgstr ""
 
-#: builtin/replace.c:443
+#: builtin/replace.c:542
 msgid "do not pretty-print contents for --edit"
 msgstr ""
 
-#: builtin/replace.c:444
+#: builtin/replace.c:543
 msgid "use this format"
 msgstr ""
 
@@ -12055,119 +12741,123 @@ msgstr ""
 msgid "Failed to find tree of %s."
 msgstr ""
 
-#: builtin/reset.c:113
+#: builtin/reset.c:111
 #, c-format
 msgid "HEAD is now at %s"
 msgstr ""
 
-#: builtin/reset.c:197
+#: builtin/reset.c:189
 #, c-format
 msgid "Cannot do a %s reset in the middle of a merge."
 msgstr ""
 
-#: builtin/reset.c:297
+#: builtin/reset.c:289
 msgid "be quiet, only report errors"
 msgstr ""
 
-#: builtin/reset.c:299
+#: builtin/reset.c:291
 msgid "reset HEAD and index"
 msgstr ""
 
-#: builtin/reset.c:300
+#: builtin/reset.c:292
 msgid "reset only HEAD"
 msgstr ""
 
-#: builtin/reset.c:302 builtin/reset.c:304
+#: builtin/reset.c:294 builtin/reset.c:296
 msgid "reset HEAD, index and working tree"
 msgstr ""
 
-#: builtin/reset.c:306
+#: builtin/reset.c:298
 msgid "reset HEAD but keep local changes"
 msgstr ""
 
-#: builtin/reset.c:312
+#: builtin/reset.c:304
 msgid "record only the fact that removed paths will be added later"
 msgstr ""
 
-#: builtin/reset.c:329
+#: builtin/reset.c:321
 #, c-format
 msgid "Failed to resolve '%s' as a valid revision."
 msgstr ""
 
-#: builtin/reset.c:337
+#: builtin/reset.c:329
 #, c-format
 msgid "Failed to resolve '%s' as a valid tree."
 msgstr ""
 
-#: builtin/reset.c:346
+#: builtin/reset.c:338
 msgid "--patch is incompatible with --{hard,mixed,soft}"
 msgstr ""
 
-#: builtin/reset.c:355
+#: builtin/reset.c:347
 msgid "--mixed with paths is deprecated; use 'git reset -- <paths>' instead."
 msgstr ""
 
-#: builtin/reset.c:357
+#: builtin/reset.c:349
 #, c-format
 msgid "Cannot do %s reset with paths."
 msgstr ""
 
-#: builtin/reset.c:367
+#: builtin/reset.c:359
 #, c-format
 msgid "%s reset is not allowed in a bare repository"
 msgstr ""
 
-#: builtin/reset.c:371
+#: builtin/reset.c:363
 msgid "-N can only be used with --mixed"
 msgstr ""
 
-#: builtin/reset.c:388
+#: builtin/reset.c:380
 msgid "Unstaged changes after reset:"
 msgstr ""
 
-#: builtin/reset.c:394
+#: builtin/reset.c:386
 #, c-format
 msgid "Could not reset index file to revision '%s'."
 msgstr ""
 
-#: builtin/reset.c:398
+#: builtin/reset.c:390
 msgid "Could not write new index file."
 msgstr ""
 
-#: builtin/rev-list.c:399
+#: builtin/rev-list.c:397
+msgid "cannot combine --exclude-promisor-objects and --missing"
+msgstr ""
+
+#: builtin/rev-list.c:455
 msgid "object filtering requires --objects"
 msgstr ""
 
-#: builtin/rev-list.c:402
+#: builtin/rev-list.c:458
 #, c-format
 msgid "invalid sparse value '%s'"
 msgstr ""
 
-#: builtin/rev-list.c:442
+#: builtin/rev-list.c:499
 msgid "rev-list does not support display of notes"
 msgstr ""
 
-#: builtin/rev-list.c:445
+#: builtin/rev-list.c:502
 msgid "cannot combine --use-bitmap-index with object filtering"
 msgstr ""
 
-#: builtin/rev-parse.c:402
+#: builtin/rev-parse.c:406
 msgid "git rev-parse --parseopt [<options>] -- [<args>...]"
 msgstr ""
 
-#: builtin/rev-parse.c:407
+#: builtin/rev-parse.c:411
 msgid "keep the `--` passed as an arg"
 msgstr ""
 
-#: builtin/rev-parse.c:409
+#: builtin/rev-parse.c:413
 msgid "stop parsing after the first non-option argument"
 msgstr ""
 
-#: builtin/rev-parse.c:412
+#: builtin/rev-parse.c:416
 msgid "output in stuck long form"
 msgstr ""
 
-#: builtin/rev-parse.c:545
+#: builtin/rev-parse.c:549
 msgid ""
 "git rev-parse --parseopt [<options>] -- [<args>...]\n"
 "   or: git rev-parse --sq-quote [<arg>...]\n"
@@ -12245,10 +12935,6 @@ msgstr ""
 msgid "preserve initially empty commits"
 msgstr ""
 
-#: builtin/revert.c:123
-msgid "allow commits with empty messages"
-msgstr ""
-
 #: builtin/revert.c:124
 msgid "keep redundant, empty commits"
 msgstr ""
@@ -12299,42 +12985,42 @@ msgid_plural "the following files have local modifications:"
 msgstr[0] ""
 msgstr[1] ""
 
-#: builtin/rm.c:243
+#: builtin/rm.c:241
 msgid "do not list removed files"
 msgstr ""
 
-#: builtin/rm.c:244
+#: builtin/rm.c:242
 msgid "only remove from the index"
 msgstr ""
 
-#: builtin/rm.c:245
+#: builtin/rm.c:243
 msgid "override the up-to-date check"
 msgstr ""
 
-#: builtin/rm.c:246
+#: builtin/rm.c:244
 msgid "allow recursive removal"
 msgstr ""
 
-#: builtin/rm.c:248
+#: builtin/rm.c:246
 msgid "exit with a zero status even if nothing matched"
 msgstr ""
 
-#: builtin/rm.c:307
+#: builtin/rm.c:306
 #, c-format
 msgid "not removing '%s' recursively without -r"
 msgstr ""
 
-#: builtin/rm.c:346
+#: builtin/rm.c:345
 #, c-format
 msgid "git rm: unable to remove %s"
 msgstr ""
 
-#: builtin/rm.c:369
+#: builtin/rm.c:368
 #, c-format
 msgid "could not remove '%s'"
 msgstr ""
 
-#: builtin/send-pack.c:19
+#: builtin/send-pack.c:20
 msgid ""
 "git send-pack [--all | --mirror] [--dry-run] [--force] [--receive-pack=<git-"
 "receive-pack>] [--verbose] [--thin] [--atomic] [<host>:]<directory> "
@@ -12342,50 +13028,70 @@ msgid ""
 "  --all and explicit <ref> specification are mutually exclusive."
 msgstr ""
 
-#: builtin/send-pack.c:162
+#: builtin/send-pack.c:163
 msgid "remote name"
 msgstr ""
 
-#: builtin/send-pack.c:176
+#: builtin/send-pack.c:177
 msgid "use stateless RPC protocol"
 msgstr ""
 
-#: builtin/send-pack.c:177
+#: builtin/send-pack.c:178
 msgid "read refs from stdin"
 msgstr ""
 
-#: builtin/send-pack.c:178
+#: builtin/send-pack.c:179
 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>...]]"
+msgid "git shortlog [<options>] [<revision-range>] [[--] <path>...]"
+msgstr ""
+
+#: builtin/shortlog.c:15
+msgid "git log --pretty=short | git shortlog [<options>]"
 msgstr ""
 
-#: builtin/shortlog.c:263
+#: builtin/shortlog.c:264
 msgid "Group by committer rather than author"
 msgstr ""
 
-#: builtin/shortlog.c:265
+#: builtin/shortlog.c:266
 msgid "sort output according to the number of commits per author"
 msgstr ""
 
-#: builtin/shortlog.c:267
+#: builtin/shortlog.c:268
 msgid "Suppress commit descriptions, only provides commit count"
 msgstr ""
 
-#: builtin/shortlog.c:269
+#: builtin/shortlog.c:270
 msgid "Show the email address of each author"
 msgstr ""
 
-#: builtin/shortlog.c:270
+#: builtin/shortlog.c:271
 msgid "w[,i1[,i2]]"
 msgstr ""
 
-#: builtin/shortlog.c:271
+#: builtin/shortlog.c:272
 msgid "Linewrap output"
 msgstr ""
 
+#: builtin/shortlog.c:298
+msgid "too many arguments given outside repository"
+msgstr ""
+
 #: builtin/show-branch.c:12
 msgid ""
 "git show-branch [-a | --all] [-r | --remotes] [--topo-order | --date-order]\n"
@@ -12574,243 +13280,330 @@ msgstr ""
 msgid "prepend comment character and space to each line"
 msgstr ""
 
-#: builtin/submodule--helper.c:34 builtin/submodule--helper.c:1332
+#: builtin/submodule--helper.c:37 builtin/submodule--helper.c:1688
 #, c-format
 msgid "No such ref: %s"
 msgstr ""
 
-#: builtin/submodule--helper.c:41 builtin/submodule--helper.c:1341
+#: builtin/submodule--helper.c:44 builtin/submodule--helper.c:1697
 #, c-format
 msgid "Expecting a full ref name, got %s"
 msgstr ""
 
-#: builtin/submodule--helper.c:81
+#: builtin/submodule--helper.c:61
+msgid "submodule--helper print-default-remote takes no arguments"
+msgstr ""
+
+#: builtin/submodule--helper.c:98
 #, c-format
 msgid "cannot strip one component off url '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:370 builtin/submodule--helper.c:861
+#: builtin/submodule--helper.c:406 builtin/submodule--helper.c:1211
 msgid "alternative anchor for relative paths"
 msgstr ""
 
-#: builtin/submodule--helper.c:375
+#: builtin/submodule--helper.c:411
 msgid "git submodule--helper list [--prefix=<path>] [<path>...]"
 msgstr ""
 
-#: builtin/submodule--helper.c:426 builtin/submodule--helper.c:449
+#: builtin/submodule--helper.c:462 builtin/submodule--helper.c:485
 #, c-format
 msgid "No url found for submodule path '%s' in .gitmodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:464
+#: builtin/submodule--helper.c:500
 #, c-format
 msgid ""
 "could not lookup configuration '%s'. Assuming this repository is its own "
 "authoritative upstream."
 msgstr ""
 
-#: builtin/submodule--helper.c:475
+#: builtin/submodule--helper.c:511
 #, c-format
 msgid "Failed to register url for submodule path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:479
+#: builtin/submodule--helper.c:515
 #, c-format
 msgid "Submodule '%s' (%s) registered for path '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:489
+#: builtin/submodule--helper.c:525
 #, c-format
 msgid "warning: command update mode suggested for submodule '%s'\n"
 msgstr ""
 
-#: builtin/submodule--helper.c:496
+#: builtin/submodule--helper.c:532
 #, c-format
 msgid "Failed to register update mode for submodule path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:518
+#: builtin/submodule--helper.c:554
 msgid "Suppress output for initializing a submodule"
 msgstr ""
 
-#: builtin/submodule--helper.c:523
+#: builtin/submodule--helper.c:559
 msgid "git submodule--helper init [<path>]"
 msgstr ""
 
-#: builtin/submodule--helper.c:591 builtin/submodule--helper.c:713
+#: builtin/submodule--helper.c:631 builtin/submodule--helper.c:757
 #, c-format
 msgid "no submodule mapping found in .gitmodules for path '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:626
+#: builtin/submodule--helper.c:670
 #, c-format
 msgid "could not resolve HEAD ref inside the submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:653
+#: builtin/submodule--helper.c:697 builtin/submodule--helper.c:866
 #, c-format
 msgid "failed to recurse into submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:677
+#: builtin/submodule--helper.c:721 builtin/submodule--helper.c:1031
 msgid "Suppress submodule status output"
 msgstr ""
 
-#: builtin/submodule--helper.c:678
+#: builtin/submodule--helper.c:722
 msgid ""
 "Use commit stored in the index instead of the one stored in the submodule "
 "HEAD"
 msgstr ""
 
-#: builtin/submodule--helper.c:679
+#: builtin/submodule--helper.c:723
 msgid "recurse into nested submodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:684
+#: builtin/submodule--helper.c:728
 msgid "git submodule status [--quiet] [--cached] [--recursive] [<path>...]"
 msgstr ""
 
-#: builtin/submodule--helper.c:708
+#: builtin/submodule--helper.c:752
 msgid "git submodule--helper name <path>"
 msgstr ""
 
-#: builtin/submodule--helper.c:796 builtin/submodule--helper.c:799
+#: builtin/submodule--helper.c:816
+#, c-format
+msgid "Synchronizing submodule url for '%s'\n"
+msgstr ""
+
+#: builtin/submodule--helper.c:822
+#, c-format
+msgid "failed to register url for submodule path '%s'"
+msgstr ""
+
+#: builtin/submodule--helper.c:836
+#, c-format
+msgid "failed to get the default remote for submodule '%s'"
+msgstr ""
+
+#: builtin/submodule--helper.c:847
+#, c-format
+msgid "failed to update remote for submodule '%s'"
+msgstr ""
+
+#: builtin/submodule--helper.c:895
+msgid "Suppress output of synchronizing submodule url"
+msgstr ""
+
+#: builtin/submodule--helper.c:897
+msgid "Recurse into nested submodules"
+msgstr ""
+
+#: builtin/submodule--helper.c:902
+msgid "git submodule--helper sync [--quiet] [--recursive] [<path>]"
+msgstr ""
+
+#: builtin/submodule--helper.c:956
+#, 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:968
+#, c-format
+msgid ""
+"Submodule work tree '%s' contains local modifications; use '-f' to discard "
+"them"
+msgstr ""
+
+#: builtin/submodule--helper.c:976
+#, c-format
+msgid "Cleared directory '%s'\n"
+msgstr ""
+
+#: builtin/submodule--helper.c:978
+#, c-format
+msgid "Could not remove submodule work tree '%s'\n"
+msgstr ""
+
+#: builtin/submodule--helper.c:987
+#, c-format
+msgid "could not create empty submodule directory %s"
+msgstr ""
+
+#: builtin/submodule--helper.c:1003
+#, c-format
+msgid "Submodule '%s' (%s) unregistered for path '%s'\n"
+msgstr ""
+
+#: builtin/submodule--helper.c:1032
+msgid "Remove submodule working trees even if they contain local changes"
+msgstr ""
+
+#: builtin/submodule--helper.c:1033
+msgid "Unregister all submodules"
+msgstr ""
+
+#: builtin/submodule--helper.c:1038
+msgid ""
+"git submodule deinit [--quiet] [-f | --force] [--all | [--] [<path>...]]"
+msgstr ""
+
+#: builtin/submodule--helper.c:1052
+msgid "Use '--all' if you really want to deinitialize all submodules"
+msgstr ""
+
+#: builtin/submodule--helper.c:1145 builtin/submodule--helper.c:1148
 #, c-format
 msgid "submodule '%s' cannot add alternate: %s"
 msgstr ""
 
-#: builtin/submodule--helper.c:835
+#: builtin/submodule--helper.c:1184
 #, c-format
 msgid "Value '%s' for submodule.alternateErrorStrategy is not recognized"
 msgstr ""
 
-#: builtin/submodule--helper.c:842
+#: builtin/submodule--helper.c:1191
 #, c-format
 msgid "Value '%s' for submodule.alternateLocation is not recognized"
 msgstr ""
 
-#: builtin/submodule--helper.c:864
+#: builtin/submodule--helper.c:1214
 msgid "where the new submodule will be cloned to"
 msgstr ""
 
-#: builtin/submodule--helper.c:867
+#: builtin/submodule--helper.c:1217
 msgid "name of the new submodule"
 msgstr ""
 
-#: builtin/submodule--helper.c:870
+#: builtin/submodule--helper.c:1220
 msgid "url where to clone the submodule from"
 msgstr ""
 
-#: builtin/submodule--helper.c:876
+#: builtin/submodule--helper.c:1228
 msgid "depth for shallow clones"
 msgstr ""
 
-#: builtin/submodule--helper.c:879 builtin/submodule--helper.c:1250
+#: builtin/submodule--helper.c:1231 builtin/submodule--helper.c:1606
 msgid "force cloning progress"
 msgstr ""
 
-#: builtin/submodule--helper.c:884
+#: builtin/submodule--helper.c:1236
 msgid ""
 "git submodule--helper clone [--prefix=<path>] [--quiet] [--reference "
 "<repository>] [--name <name>] [--depth <depth>] --url <url> --path <path>"
 msgstr ""
 
-#: builtin/submodule--helper.c:915
+#: builtin/submodule--helper.c:1267
 #, c-format
 msgid "clone of '%s' into submodule path '%s' failed"
 msgstr ""
 
-#: builtin/submodule--helper.c:930
+#: builtin/submodule--helper.c:1281
 #, c-format
 msgid "could not get submodule directory for '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:995
+#: builtin/submodule--helper.c:1347
 #, c-format
 msgid "Submodule path '%s' not initialized"
 msgstr ""
 
-#: builtin/submodule--helper.c:999
+#: builtin/submodule--helper.c:1351
 msgid "Maybe you want to use 'update --init'?"
 msgstr ""
 
-#: builtin/submodule--helper.c:1028
+#: builtin/submodule--helper.c:1380
 #, c-format
 msgid "Skipping unmerged submodule %s"
 msgstr ""
 
-#: builtin/submodule--helper.c:1057
+#: builtin/submodule--helper.c:1409
 #, c-format
 msgid "Skipping submodule '%s'"
 msgstr ""
 
-#: builtin/submodule--helper.c:1190
+#: builtin/submodule--helper.c:1544
 #, c-format
 msgid "Failed to clone '%s'. Retry scheduled"
 msgstr ""
 
-#: builtin/submodule--helper.c:1201
+#: builtin/submodule--helper.c:1555
 #, c-format
 msgid "Failed to clone '%s' a second time, aborting"
 msgstr ""
 
-#: builtin/submodule--helper.c:1231 builtin/submodule--helper.c:1451
+#: builtin/submodule--helper.c:1585 builtin/submodule--helper.c:1808
 msgid "path into the working tree"
 msgstr ""
 
-#: builtin/submodule--helper.c:1234
+#: builtin/submodule--helper.c:1588
 msgid "path into the working tree, across nested submodule boundaries"
 msgstr ""
 
-#: builtin/submodule--helper.c:1238
+#: builtin/submodule--helper.c:1592
 msgid "rebase, merge, checkout or none"
 msgstr ""
 
-#: builtin/submodule--helper.c:1242
+#: builtin/submodule--helper.c:1598
 msgid "Create a shallow clone truncated to the specified number of revisions"
 msgstr ""
 
-#: builtin/submodule--helper.c:1245
+#: builtin/submodule--helper.c:1601
 msgid "parallel jobs"
 msgstr ""
 
-#: builtin/submodule--helper.c:1247
+#: builtin/submodule--helper.c:1603
 msgid "whether the initial clone should follow the shallow recommendation"
 msgstr ""
 
-#: builtin/submodule--helper.c:1248
+#: builtin/submodule--helper.c:1604
 msgid "don't print cloning progress"
 msgstr ""
 
-#: builtin/submodule--helper.c:1255
+#: builtin/submodule--helper.c:1611
 msgid "git submodule--helper update_clone [--prefix=<path>] [<path>...]"
 msgstr ""
 
-#: builtin/submodule--helper.c:1268
+#: builtin/submodule--helper.c:1624
 msgid "bad value for update parameter"
 msgstr ""
 
-#: builtin/submodule--helper.c:1336
+#: builtin/submodule--helper.c:1692
 #, 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:1452
+#: builtin/submodule--helper.c:1809
 msgid "recurse into submodules"
 msgstr ""
 
-#: builtin/submodule--helper.c:1458
+#: builtin/submodule--helper.c:1815
 msgid "git submodule--helper embed-git-dir [<path>...]"
 msgstr ""
 
-#: builtin/submodule--helper.c:1517
+#: builtin/submodule--helper.c:1901
 #, c-format
 msgid "%s doesn't support --super-prefix"
 msgstr ""
 
-#: builtin/submodule--helper.c:1523
+#: builtin/submodule--helper.c:1907
 #, c-format
 msgid "'%s' is not a valid submodule--helper subcommand"
 msgstr ""
@@ -12874,7 +13667,7 @@ msgstr ""
 msgid "Deleted tag '%s' (was %s)\n"
 msgstr ""
 
-#: builtin/tag.c:131
+#: builtin/tag.c:132
 #, c-format
 msgid ""
 "\n"
@@ -12883,7 +13676,7 @@ msgid ""
 "Lines starting with '%c' will be ignored.\n"
 msgstr ""
 
-#: builtin/tag.c:135
+#: builtin/tag.c:136
 #, c-format
 msgid ""
 "\n"
@@ -12893,147 +13686,151 @@ msgid ""
 "want to.\n"
 msgstr ""
 
-#: builtin/tag.c:189
+#: builtin/tag.c:190
 msgid "unable to sign the tag"
 msgstr ""
 
-#: builtin/tag.c:191
+#: builtin/tag.c:192
 msgid "unable to write tag file"
 msgstr ""
 
-#: builtin/tag.c:215
+#: builtin/tag.c:217
 msgid "bad object type."
 msgstr ""
 
-#: builtin/tag.c:261
+#: builtin/tag.c:266
 msgid "no tag message?"
 msgstr ""
 
-#: builtin/tag.c:268
+#: builtin/tag.c:273
 #, c-format
 msgid "The tag message has been left in %s\n"
 msgstr ""
 
-#: builtin/tag.c:376
+#: builtin/tag.c:382
 msgid "list tag names"
 msgstr ""
 
-#: builtin/tag.c:378
+#: builtin/tag.c:384
 msgid "print <n> lines of each tag message"
 msgstr ""
 
-#: builtin/tag.c:380
+#: builtin/tag.c:386
 msgid "delete tags"
 msgstr ""
 
-#: builtin/tag.c:381
+#: builtin/tag.c:387
 msgid "verify tags"
 msgstr ""
 
-#: builtin/tag.c:383
+#: builtin/tag.c:389
 msgid "Tag creation options"
 msgstr ""
 
-#: builtin/tag.c:385
+#: builtin/tag.c:391
 msgid "annotated tag, needs a message"
 msgstr ""
 
-#: builtin/tag.c:387
+#: builtin/tag.c:393
 msgid "tag message"
 msgstr ""
 
-#: builtin/tag.c:389
+#: builtin/tag.c:395
+msgid "force edit of tag message"
+msgstr ""
+
+#: builtin/tag.c:396
 msgid "annotated and GPG-signed tag"
 msgstr ""
 
-#: builtin/tag.c:393
+#: builtin/tag.c:400
 msgid "use another key to sign the tag"
 msgstr ""
 
-#: builtin/tag.c:394
+#: builtin/tag.c:401
 msgid "replace the tag if exists"
 msgstr ""
 
-#: builtin/tag.c:395 builtin/update-ref.c:368
+#: builtin/tag.c:402 builtin/update-ref.c:368
 msgid "create a reflog"
 msgstr ""
 
-#: builtin/tag.c:397
+#: builtin/tag.c:404
 msgid "Tag listing options"
 msgstr ""
 
-#: builtin/tag.c:398
+#: builtin/tag.c:405
 msgid "show tag list in columns"
 msgstr ""
 
-#: builtin/tag.c:399 builtin/tag.c:401
+#: builtin/tag.c:406 builtin/tag.c:408
 msgid "print only tags that contain the commit"
 msgstr ""
 
-#: builtin/tag.c:400 builtin/tag.c:402
+#: builtin/tag.c:407 builtin/tag.c:409
 msgid "print only tags that don't contain the commit"
 msgstr ""
 
-#: builtin/tag.c:403
+#: builtin/tag.c:410
 msgid "print only tags that are merged"
 msgstr ""
 
-#: builtin/tag.c:404
+#: builtin/tag.c:411
 msgid "print only tags that are not merged"
 msgstr ""
 
-#: builtin/tag.c:409
+#: builtin/tag.c:416
 msgid "print only tags of the object"
 msgstr ""
 
-#: builtin/tag.c:453
+#: builtin/tag.c:460
 msgid "--column and -n are incompatible"
 msgstr ""
 
-#: builtin/tag.c:475
+#: builtin/tag.c:482
 msgid "-n option is only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:477
+#: builtin/tag.c:484
 msgid "--contains option is only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:479
+#: builtin/tag.c:486
 msgid "--no-contains option is only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:481
+#: builtin/tag.c:488
 msgid "--points-at option is only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:483
+#: builtin/tag.c:490
 msgid "--merged and --no-merged options are only allowed in list mode"
 msgstr ""
 
-#: builtin/tag.c:494
+#: builtin/tag.c:501
 msgid "only one -F or -m option is allowed."
 msgstr ""
 
-#: builtin/tag.c:513
+#: builtin/tag.c:520
 msgid "too many params"
 msgstr ""
 
-#: builtin/tag.c:519
+#: builtin/tag.c:526
 #, c-format
 msgid "'%s' is not a valid tag name."
 msgstr ""
 
-#: builtin/tag.c:524
+#: builtin/tag.c:531
 #, c-format
 msgid "tag '%s' already exists"
 msgstr ""
 
-#: builtin/tag.c:554
+#: builtin/tag.c:562
 #, c-format
 msgid "Updated tag '%s' (was %s)\n"
 msgstr ""
 
-#: builtin/unpack-objects.c:494
+#: builtin/unpack-objects.c:498
 msgid "Unpacking objects"
 msgstr ""
 
@@ -13095,189 +13892,189 @@ msgstr ""
 msgid " OK"
 msgstr ""
 
-#: builtin/update-index.c:579
+#: builtin/update-index.c:589
 msgid "git update-index [<options>] [--] [<file>...]"
 msgstr ""
 
-#: builtin/update-index.c:936
+#: builtin/update-index.c:946
 msgid "continue refresh even when index needs update"
 msgstr ""
 
-#: builtin/update-index.c:939
+#: builtin/update-index.c:949
 msgid "refresh: ignore submodules"
 msgstr ""
 
-#: builtin/update-index.c:942
+#: builtin/update-index.c:952
 msgid "do not ignore new files"
 msgstr ""
 
-#: builtin/update-index.c:944
+#: builtin/update-index.c:954
 msgid "let files replace directories and vice-versa"
 msgstr ""
 
-#: builtin/update-index.c:946
+#: builtin/update-index.c:956
 msgid "notice files missing from worktree"
 msgstr ""
 
-#: builtin/update-index.c:948
+#: builtin/update-index.c:958
 msgid "refresh even if index contains unmerged entries"
 msgstr ""
 
-#: builtin/update-index.c:951
+#: builtin/update-index.c:961
 msgid "refresh stat information"
 msgstr ""
 
-#: builtin/update-index.c:955
+#: builtin/update-index.c:965
 msgid "like --refresh, but ignore assume-unchanged setting"
 msgstr ""
 
-#: builtin/update-index.c:959
+#: builtin/update-index.c:969
 msgid "<mode>,<object>,<path>"
 msgstr ""
 
-#: builtin/update-index.c:960
+#: builtin/update-index.c:970
 msgid "add the specified entry to the index"
 msgstr ""
 
-#: builtin/update-index.c:969
+#: builtin/update-index.c:979
 msgid "mark files as \"not changing\""
 msgstr ""
 
-#: builtin/update-index.c:972
+#: builtin/update-index.c:982
 msgid "clear assumed-unchanged bit"
 msgstr ""
 
-#: builtin/update-index.c:975
+#: builtin/update-index.c:985
 msgid "mark files as \"index-only\""
 msgstr ""
 
-#: builtin/update-index.c:978
+#: builtin/update-index.c:988
 msgid "clear skip-worktree bit"
 msgstr ""
 
-#: builtin/update-index.c:981
+#: builtin/update-index.c:991
 msgid "add to index only; do not add content to object database"
 msgstr ""
 
-#: builtin/update-index.c:983
+#: builtin/update-index.c:993
 msgid "remove named paths even if present in worktree"
 msgstr ""
 
-#: builtin/update-index.c:985
+#: builtin/update-index.c:995
 msgid "with --stdin: input lines are terminated by null bytes"
 msgstr ""
 
-#: builtin/update-index.c:987
+#: builtin/update-index.c:997
 msgid "read list of paths to be updated from standard input"
 msgstr ""
 
-#: builtin/update-index.c:991
+#: builtin/update-index.c:1001
 msgid "add entries from standard input to the index"
 msgstr ""
 
-#: builtin/update-index.c:995
+#: builtin/update-index.c:1005
 msgid "repopulate stages #2 and #3 for the listed paths"
 msgstr ""
 
-#: builtin/update-index.c:999
+#: builtin/update-index.c:1009
 msgid "only update entries that differ from HEAD"
 msgstr ""
 
-#: builtin/update-index.c:1003
+#: builtin/update-index.c:1013
 msgid "ignore files missing from worktree"
 msgstr ""
 
-#: builtin/update-index.c:1006
+#: builtin/update-index.c:1016
 msgid "report actions to standard output"
 msgstr ""
 
-#: builtin/update-index.c:1008
+#: builtin/update-index.c:1018
 msgid "(for porcelains) forget saved unresolved conflicts"
 msgstr ""
 
-#: builtin/update-index.c:1012
+#: builtin/update-index.c:1022
 msgid "write index in this format"
 msgstr ""
 
-#: builtin/update-index.c:1014
+#: builtin/update-index.c:1024
 msgid "enable or disable split index"
 msgstr ""
 
-#: builtin/update-index.c:1016
+#: builtin/update-index.c:1026
 msgid "enable/disable untracked cache"
 msgstr ""
 
-#: builtin/update-index.c:1018
+#: builtin/update-index.c:1028
 msgid "test if the filesystem supports untracked cache"
 msgstr ""
 
-#: builtin/update-index.c:1020
+#: builtin/update-index.c:1030
 msgid "enable untracked cache without testing the filesystem"
 msgstr ""
 
-#: builtin/update-index.c:1022
+#: builtin/update-index.c:1032
 msgid "write out the index even if is not flagged as changed"
 msgstr ""
 
-#: builtin/update-index.c:1024
+#: builtin/update-index.c:1034
 msgid "enable or disable file system monitor"
 msgstr ""
 
-#: builtin/update-index.c:1026
+#: builtin/update-index.c:1036
 msgid "mark files as fsmonitor valid"
 msgstr ""
 
-#: builtin/update-index.c:1029
+#: builtin/update-index.c:1039
 msgid "clear fsmonitor valid bit"
 msgstr ""
 
-#: builtin/update-index.c:1127
+#: builtin/update-index.c:1138
 msgid ""
 "core.splitIndex is set to false; remove or change it, if you really want to "
 "enable split index"
 msgstr ""
 
-#: builtin/update-index.c:1136
+#: builtin/update-index.c:1147
 msgid ""
 "core.splitIndex is set to true; remove or change it, if you really want to "
 "disable split index"
 msgstr ""
 
-#: builtin/update-index.c:1147
+#: builtin/update-index.c:1158
 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:1151
+#: builtin/update-index.c:1162
 msgid "Untracked cache disabled"
 msgstr ""
 
-#: builtin/update-index.c:1159
+#: builtin/update-index.c:1170
 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:1163
+#: builtin/update-index.c:1174
 #, c-format
 msgid "Untracked cache enabled for '%s'"
 msgstr ""
 
-#: builtin/update-index.c:1171
+#: builtin/update-index.c:1182
 msgid "core.fsmonitor is unset; set it if you really want to enable fsmonitor"
 msgstr ""
 
-#: builtin/update-index.c:1175
+#: builtin/update-index.c:1186
 msgid "fsmonitor enabled"
 msgstr ""
 
-#: builtin/update-index.c:1178
+#: builtin/update-index.c:1189
 msgid ""
 "core.fsmonitor is set; remove it if you really want to disable fsmonitor"
 msgstr ""
 
-#: builtin/update-index.c:1182
+#: builtin/update-index.c:1193
 msgid "fsmonitor disabled"
 msgstr ""
 
@@ -13297,409 +14094,1084 @@ msgstr ""
 msgid "delete the reference"
 msgstr ""
 
-#: builtin/update-ref.c:365
-msgid "update <refname> not the one it points to"
+#: builtin/update-ref.c:365
+msgid "update <refname> not the one it points to"
+msgstr ""
+
+#: builtin/update-ref.c:366
+msgid "stdin has NUL-terminated arguments"
+msgstr ""
+
+#: builtin/update-ref.c:367
+msgid "read updates from stdin"
+msgstr ""
+
+#: builtin/update-server-info.c:7
+msgid "git update-server-info [--force]"
+msgstr ""
+
+#: builtin/update-server-info.c:15
+msgid "update the info files from scratch"
+msgstr ""
+
+#: builtin/upload-pack.c:11
+msgid "git upload-pack [<options>] <dir>"
+msgstr ""
+
+#: builtin/upload-pack.c:25
+msgid "exit immediately after initial ref advertisement"
+msgstr ""
+
+#: builtin/upload-pack.c:27
+msgid "do not try <directory>/.git/ if <directory> is no Git directory"
+msgstr ""
+
+#: builtin/upload-pack.c:29
+msgid "interrupt transfer after <n> seconds of inactivity"
+msgstr ""
+
+#: builtin/verify-commit.c:18
+msgid "git verify-commit [-v | --verbose] <commit>..."
+msgstr ""
+
+#: builtin/verify-commit.c:73
+msgid "print commit contents"
+msgstr ""
+
+#: builtin/verify-commit.c:74 builtin/verify-tag.c:38
+msgid "print raw gpg status output"
+msgstr ""
+
+#: builtin/verify-pack.c:55
+msgid "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
+msgstr ""
+
+#: builtin/verify-pack.c:65
+msgid "verbose"
+msgstr ""
+
+#: builtin/verify-pack.c:67
+msgid "show statistics only"
+msgstr ""
+
+#: builtin/verify-tag.c:19
+msgid "git verify-tag [-v | --verbose] [--format=<format>] <tag>..."
+msgstr ""
+
+#: builtin/verify-tag.c:37
+msgid "print tag contents"
+msgstr ""
+
+#: builtin/worktree.c:17
+msgid "git worktree add [<options>] <path> [<commit-ish>]"
+msgstr ""
+
+#: builtin/worktree.c:18
+msgid "git worktree list [<options>]"
+msgstr ""
+
+#: builtin/worktree.c:19
+msgid "git worktree lock [<options>] <path>"
+msgstr ""
+
+#: builtin/worktree.c:20
+msgid "git worktree move <worktree> <new-path>"
+msgstr ""
+
+#: builtin/worktree.c:21
+msgid "git worktree prune [<options>]"
+msgstr ""
+
+#: builtin/worktree.c:22
+msgid "git worktree remove [<options>] <worktree>"
+msgstr ""
+
+#: builtin/worktree.c:23
+msgid "git worktree unlock <path>"
+msgstr ""
+
+#: builtin/worktree.c:58
+#, c-format
+msgid "Removing worktrees/%s: not a valid directory"
+msgstr ""
+
+#: builtin/worktree.c:64
+#, c-format
+msgid "Removing worktrees/%s: gitdir file does not exist"
+msgstr ""
+
+#: builtin/worktree.c:69 builtin/worktree.c:78
+#, c-format
+msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
+msgstr ""
+
+#: builtin/worktree.c:88
+#, c-format
+msgid ""
+"Removing worktrees/%s: short read (expected %<PRIuMAX> bytes, read "
+"%<PRIuMAX>)"
+msgstr ""
+
+#: builtin/worktree.c:96
+#, c-format
+msgid "Removing worktrees/%s: invalid gitdir file"
+msgstr ""
+
+#: builtin/worktree.c:105
+#, c-format
+msgid "Removing worktrees/%s: gitdir file points to non-existent location"
+msgstr ""
+
+#: builtin/worktree.c:152
+msgid "report pruned working trees"
+msgstr ""
+
+#: builtin/worktree.c:154
+msgid "expire working trees older than <time>"
+msgstr ""
+
+#: builtin/worktree.c:229
+#, c-format
+msgid "'%s' already exists"
+msgstr ""
+
+#: builtin/worktree.c:260
+#, c-format
+msgid "could not create directory of '%s'"
+msgstr ""
+
+#: builtin/worktree.c:373 builtin/worktree.c:379
+#, c-format
+msgid "Preparing worktree (new branch '%s')"
+msgstr ""
+
+#: builtin/worktree.c:375
+#, c-format
+msgid "Preparing worktree (resetting branch '%s'; was at %s)"
+msgstr ""
+
+#: builtin/worktree.c:384
+#, c-format
+msgid "Preparing worktree (checking out '%s')"
+msgstr ""
+
+#: builtin/worktree.c:390
+#, c-format
+msgid "Preparing worktree (detached HEAD %s)"
+msgstr ""
+
+#: builtin/worktree.c:431
+msgid "checkout <branch> even if already checked out in other worktree"
+msgstr ""
+
+#: builtin/worktree.c:434
+msgid "create a new branch"
+msgstr ""
+
+#: builtin/worktree.c:436
+msgid "create or reset a branch"
+msgstr ""
+
+#: builtin/worktree.c:438
+msgid "populate the new working tree"
+msgstr ""
+
+#: builtin/worktree.c:439
+msgid "keep the new working tree locked"
+msgstr ""
+
+#: builtin/worktree.c:441
+msgid "set up tracking mode (see git-branch(1))"
+msgstr ""
+
+#: builtin/worktree.c:444
+msgid "try to match the new branch name with a remote-tracking branch"
+msgstr ""
+
+#: builtin/worktree.c:452
+msgid "-b, -B, and --detach are mutually exclusive"
+msgstr ""
+
+#: builtin/worktree.c:511
+msgid "--[no-]track can only be used if a new branch is created"
+msgstr ""
+
+#: builtin/worktree.c:611
+msgid "reason for locking"
+msgstr ""
+
+#: builtin/worktree.c:623 builtin/worktree.c:656 builtin/worktree.c:710
+#: builtin/worktree.c:850
+#, c-format
+msgid "'%s' is not a working tree"
+msgstr ""
+
+#: builtin/worktree.c:625 builtin/worktree.c:658
+msgid "The main working tree cannot be locked or unlocked"
+msgstr ""
+
+#: builtin/worktree.c:630
+#, c-format
+msgid "'%s' is already locked, reason: %s"
+msgstr ""
+
+#: builtin/worktree.c:632
+#, c-format
+msgid "'%s' is already locked"
+msgstr ""
+
+#: builtin/worktree.c:660
+#, c-format
+msgid "'%s' is not locked"
+msgstr ""
+
+#: builtin/worktree.c:685
+msgid "working trees containing submodules cannot be moved or removed"
+msgstr ""
+
+#: builtin/worktree.c:712 builtin/worktree.c:852
+#, c-format
+msgid "'%s' is a main working tree"
+msgstr ""
+
+#: builtin/worktree.c:717
+#, c-format
+msgid "could not figure out destination name from '%s'"
+msgstr ""
+
+#: builtin/worktree.c:723
+#, c-format
+msgid "target '%s' already exists"
+msgstr ""
+
+#: builtin/worktree.c:730
+#, c-format
+msgid "cannot move a locked working tree, lock reason: %s"
+msgstr ""
+
+#: builtin/worktree.c:732
+msgid "cannot move a locked working tree"
+msgstr ""
+
+#: builtin/worktree.c:735
+#, c-format
+msgid "validation failed, cannot move working tree: %s"
+msgstr ""
+
+#: builtin/worktree.c:740
+#, c-format
+msgid "failed to move '%s' to '%s'"
+msgstr ""
+
+#: builtin/worktree.c:788
+#, c-format
+msgid "failed to run 'git status' on '%s'"
+msgstr ""
+
+#: builtin/worktree.c:792
+#, c-format
+msgid "'%s' is dirty, use --force to delete it"
+msgstr ""
+
+#: builtin/worktree.c:797
+#, c-format
+msgid "failed to run 'git status' on '%s', code %d"
+msgstr ""
+
+#: builtin/worktree.c:808 builtin/worktree.c:822
+#, c-format
+msgid "failed to delete '%s'"
+msgstr ""
+
+#: builtin/worktree.c:834
+msgid "force removing even if the worktree is dirty"
+msgstr ""
+
+#: builtin/worktree.c:856
+#, c-format
+msgid "cannot remove a locked working tree, lock reason: %s"
+msgstr ""
+
+#: builtin/worktree.c:858
+msgid "cannot remove a locked working tree"
+msgstr ""
+
+#: builtin/worktree.c:861
+#, c-format
+msgid "validation failed, cannot remove working tree: %s"
+msgstr ""
+
+#: builtin/write-tree.c:14
+msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
+msgstr ""
+
+#: builtin/write-tree.c:27
+msgid "<prefix>/"
+msgstr ""
+
+#: builtin/write-tree.c:28
+msgid "write tree object for a subdirectory <prefix>"
+msgstr ""
+
+#: builtin/write-tree.c:31
+msgid "only useful for debugging"
+msgstr ""
+
+#: credential-cache--daemon.c:222
+#, c-format
+msgid ""
+"The permissions on your socket directory are too loose; other\n"
+"users may be able to read your cached credentials. Consider running:\n"
+"\n"
+"\tchmod 0700 %s"
+msgstr ""
+
+#: credential-cache--daemon.c:271
+msgid "print debugging messages to stderr"
+msgstr ""
+
+#: git.c:27
+msgid ""
+"git [--version] [--help] [-C <path>] [-c <name>=<value>]\n"
+"           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]\n"
+"           [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--"
+"bare]\n"
+"           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]\n"
+"           <command> [<args>]"
+msgstr ""
+
+#: git.c:34
+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."
+msgstr ""
+
+#: git.c:173
+#, c-format
+msgid "no directory given for --git-dir\n"
+msgstr ""
+
+#: git.c:187
+#, c-format
+msgid "no namespace given for --namespace\n"
+msgstr ""
+
+#: git.c:201
+#, c-format
+msgid "no directory given for --work-tree\n"
+msgstr ""
+
+#: git.c:215
+#, c-format
+msgid "no prefix given for --super-prefix\n"
+msgstr ""
+
+#: git.c:237
+#, c-format
+msgid "-c expects a configuration string\n"
+msgstr ""
+
+#: git.c:275
+#, c-format
+msgid "no directory given for -C\n"
+msgstr ""
+
+#: git.c:300
+#, c-format
+msgid "unknown option: %s\n"
+msgstr ""
+
+#: git.c:765
+#, c-format
+msgid "expansion of alias '%s' failed; '%s' is not a git command\n"
+msgstr ""
+
+#: git.c:777
+#, c-format
+msgid "failed to run command '%s': %s\n"
+msgstr ""
+
+#: http.c:348
+#, c-format
+msgid "negative value for http.postbuffer; defaulting to %d"
+msgstr ""
+
+#: http.c:369
+msgid "Delegation control is not supported with cURL < 7.22.0"
+msgstr ""
+
+#: http.c:378
+msgid "Public key pinning not supported with cURL < 7.44.0"
+msgstr ""
+
+#: http.c:1854
+#, c-format
+msgid ""
+"unable to update url base from redirection:\n"
+"  asked for: %s\n"
+"   redirect: %s"
+msgstr ""
+
+#: remote-curl.c:401
+#, c-format
+msgid "redirecting to %s"
+msgstr ""
+
+#: list-objects-filter-options.h:59
+msgid "args"
+msgstr ""
+
+#: list-objects-filter-options.h:60
+msgid "object filtering"
+msgstr ""
+
+#: parse-options.h:157
+msgid "expiry-date"
+msgstr ""
+
+#: parse-options.h:172
+msgid "no-op (backward compatibility)"
+msgstr ""
+
+#: parse-options.h:251
+msgid "be more verbose"
+msgstr ""
+
+#: parse-options.h:253
+msgid "be more quiet"
+msgstr ""
+
+#: parse-options.h:259
+msgid "use <n> digits to display SHA-1s"
+msgstr ""
+
+#: command-list.h:50
+msgid "Add file contents to the index"
+msgstr ""
+
+#: command-list.h:51
+msgid "Apply a series of patches from a mailbox"
+msgstr ""
+
+#: command-list.h:52
+msgid "Annotate file lines with commit information"
+msgstr ""
+
+#: command-list.h:53
+msgid "Apply a patch to files and/or to the index"
+msgstr ""
+
+#: command-list.h:54
+msgid "Import an Arch repository into Git"
+msgstr ""
+
+#: command-list.h:55
+msgid "Create an archive of files from a named tree"
+msgstr ""
+
+#: command-list.h:56
+msgid "Use binary search to find the commit that introduced a bug"
+msgstr ""
+
+#: command-list.h:57
+msgid "Show what revision and author last modified each line of a file"
+msgstr ""
+
+#: command-list.h:58
+msgid "List, create, or delete branches"
+msgstr ""
+
+#: command-list.h:59
+msgid "Move objects and refs by archive"
+msgstr ""
+
+#: command-list.h:60
+msgid "Provide content or type and size information for repository objects"
+msgstr ""
+
+#: command-list.h:61
+msgid "Display gitattributes information"
+msgstr ""
+
+#: command-list.h:62
+msgid "Debug gitignore / exclude files"
+msgstr ""
+
+#: command-list.h:63
+msgid "Show canonical names and email addresses of contacts"
+msgstr ""
+
+#: command-list.h:64
+msgid "Switch branches or restore working tree files"
+msgstr ""
+
+#: command-list.h:65
+msgid "Copy files from the index to the working tree"
+msgstr ""
+
+#: command-list.h:66
+msgid "Ensures that a reference name is well formed"
+msgstr ""
+
+#: command-list.h:67
+msgid "Find commits yet to be applied to upstream"
+msgstr ""
+
+#: command-list.h:68
+msgid "Apply the changes introduced by some existing commits"
+msgstr ""
+
+#: command-list.h:69
+msgid "Graphical alternative to git-commit"
+msgstr ""
+
+#: command-list.h:70
+msgid "Remove untracked files from the working tree"
+msgstr ""
+
+#: command-list.h:71
+msgid "Clone a repository into a new directory"
+msgstr ""
+
+#: command-list.h:72
+msgid "Display data in columns"
+msgstr ""
+
+#: command-list.h:73
+msgid "Record changes to the repository"
+msgstr ""
+
+#: command-list.h:74
+msgid "Write and verify Git commit graph files"
+msgstr ""
+
+#: command-list.h:75
+msgid "Create a new commit object"
+msgstr ""
+
+#: command-list.h:76
+msgid "Get and set repository or global options"
+msgstr ""
+
+#: command-list.h:77
+msgid "Count unpacked number of objects and their disk consumption"
+msgstr ""
+
+#: command-list.h:78
+msgid "Retrieve and store user credentials"
+msgstr ""
+
+#: command-list.h:79
+msgid "Helper to temporarily store passwords in memory"
+msgstr ""
+
+#: command-list.h:80
+msgid "Helper to store credentials on disk"
+msgstr ""
+
+#: command-list.h:81
+msgid "Export a single commit to a CVS checkout"
+msgstr ""
+
+#: command-list.h:82
+msgid "Salvage your data out of another SCM people love to hate"
+msgstr ""
+
+#: command-list.h:83
+msgid "A CVS server emulator for Git"
+msgstr ""
+
+#: command-list.h:84
+msgid "A really simple server for Git repositories"
+msgstr ""
+
+#: command-list.h:85
+msgid "Give an object a human readable name based on an available ref"
+msgstr ""
+
+#: command-list.h:86
+msgid "Show changes between commits, commit and working tree, etc"
+msgstr ""
+
+#: command-list.h:87
+msgid "Compares files in the working tree and the index"
+msgstr ""
+
+#: command-list.h:88
+msgid "Compare a tree to the working tree or index"
+msgstr ""
+
+#: command-list.h:89
+msgid "Compares the content and mode of blobs found via two tree objects"
+msgstr ""
+
+#: command-list.h:90
+msgid "Show changes using common diff tools"
+msgstr ""
+
+#: command-list.h:91
+msgid "Git data exporter"
+msgstr ""
+
+#: command-list.h:92
+msgid "Backend for fast Git data importers"
+msgstr ""
+
+#: command-list.h:93
+msgid "Download objects and refs from another repository"
+msgstr ""
+
+#: command-list.h:94
+msgid "Receive missing objects from another repository"
+msgstr ""
+
+#: command-list.h:95
+msgid "Rewrite branches"
+msgstr ""
+
+#: command-list.h:96
+msgid "Produce a merge commit message"
+msgstr ""
+
+#: command-list.h:97
+msgid "Output information on each ref"
+msgstr ""
+
+#: command-list.h:98
+msgid "Prepare patches for e-mail submission"
+msgstr ""
+
+#: command-list.h:99
+msgid "Verifies the connectivity and validity of the objects in the database"
+msgstr ""
+
+#: command-list.h:100
+msgid "Cleanup unnecessary files and optimize the local repository"
+msgstr ""
+
+#: command-list.h:101
+msgid "Extract commit ID from an archive created using git-archive"
+msgstr ""
+
+#: command-list.h:102
+msgid "Print lines matching a pattern"
+msgstr ""
+
+#: command-list.h:103
+msgid "A portable graphical interface to Git"
+msgstr ""
+
+#: command-list.h:104
+msgid "Compute object ID and optionally creates a blob from a file"
+msgstr ""
+
+#: command-list.h:105
+msgid "Display help information about Git"
+msgstr ""
+
+#: command-list.h:106
+msgid "Server side implementation of Git over HTTP"
+msgstr ""
+
+#: command-list.h:107
+msgid "Download from a remote Git repository via HTTP"
+msgstr ""
+
+#: command-list.h:108
+msgid "Push objects over HTTP/DAV to another repository"
+msgstr ""
+
+#: command-list.h:109
+msgid "Send a collection of patches from stdin to an IMAP folder"
+msgstr ""
+
+#: command-list.h:110
+msgid "Build pack index file for an existing packed archive"
+msgstr ""
+
+#: command-list.h:111
+msgid "Create an empty Git repository or reinitialize an existing one"
+msgstr ""
+
+#: command-list.h:112
+msgid "Instantly browse your working repository in gitweb"
+msgstr ""
+
+#: command-list.h:113
+msgid "add or parse structured information in commit messages"
 msgstr ""
 
-#: builtin/update-ref.c:366
-msgid "stdin has NUL-terminated arguments"
+#: command-list.h:114
+msgid "The Git repository browser"
 msgstr ""
 
-#: builtin/update-ref.c:367
-msgid "read updates from stdin"
+#: command-list.h:115
+msgid "Show commit logs"
 msgstr ""
 
-#: builtin/update-server-info.c:7
-msgid "git update-server-info [--force]"
+#: command-list.h:116
+msgid "Show information about files in the index and the working tree"
 msgstr ""
 
-#: builtin/update-server-info.c:15
-msgid "update the info files from scratch"
+#: command-list.h:117
+msgid "List references in a remote repository"
 msgstr ""
 
-#: builtin/verify-commit.c:18
-msgid "git verify-commit [-v | --verbose] <commit>..."
+#: command-list.h:118
+msgid "List the contents of a tree object"
 msgstr ""
 
-#: builtin/verify-commit.c:73
-msgid "print commit contents"
+#: command-list.h:119
+msgid "Extracts patch and authorship from a single e-mail message"
 msgstr ""
 
-#: builtin/verify-commit.c:74 builtin/verify-tag.c:38
-msgid "print raw gpg status output"
+#: command-list.h:120
+msgid "Simple UNIX mbox splitter program"
 msgstr ""
 
-#: builtin/verify-pack.c:55
-msgid "git verify-pack [-v | --verbose] [-s | --stat-only] <pack>..."
+#: command-list.h:121
+msgid "Join two or more development histories together"
 msgstr ""
 
-#: builtin/verify-pack.c:65
-msgid "verbose"
+#: command-list.h:122
+msgid "Find as good common ancestors as possible for a merge"
 msgstr ""
 
-#: builtin/verify-pack.c:67
-msgid "show statistics only"
+#: command-list.h:123
+msgid "Run a three-way file merge"
 msgstr ""
 
-#: builtin/verify-tag.c:19
-msgid "git verify-tag [-v | --verbose] [--format=<format>] <tag>..."
+#: command-list.h:124
+msgid "Run a merge for files needing merging"
 msgstr ""
 
-#: builtin/verify-tag.c:37
-msgid "print tag contents"
+#: command-list.h:125
+msgid "The standard helper program to use with git-merge-index"
 msgstr ""
 
-#: builtin/worktree.c:17
-msgid "git worktree add [<options>] <path> [<branch>]"
+#: command-list.h:126
+msgid "Run merge conflict resolution tools to resolve merge conflicts"
 msgstr ""
 
-#: builtin/worktree.c:18
-msgid "git worktree list [<options>]"
+#: command-list.h:127
+msgid "Show three-way merge without touching index"
 msgstr ""
 
-#: builtin/worktree.c:19
-msgid "git worktree lock [<options>] <path>"
+#: command-list.h:128
+msgid "Creates a tag object"
 msgstr ""
 
-#: builtin/worktree.c:20
-msgid "git worktree prune [<options>]"
+#: command-list.h:129
+msgid "Build a tree-object from ls-tree formatted text"
 msgstr ""
 
-#: builtin/worktree.c:21
-msgid "git worktree unlock <path>"
+#: command-list.h:130
+msgid "Move or rename a file, a directory, or a symlink"
 msgstr ""
 
-#: builtin/worktree.c:58
-#, c-format
-msgid "Removing worktrees/%s: not a valid directory"
+#: command-list.h:131
+msgid "Find symbolic names for given revs"
 msgstr ""
 
-#: builtin/worktree.c:64
-#, c-format
-msgid "Removing worktrees/%s: gitdir file does not exist"
+#: command-list.h:132
+msgid "Add or inspect object notes"
 msgstr ""
 
-#: builtin/worktree.c:69 builtin/worktree.c:78
-#, c-format
-msgid "Removing worktrees/%s: unable to read gitdir file (%s)"
+#: command-list.h:133
+msgid "Import from and submit to Perforce repositories"
 msgstr ""
 
-#: builtin/worktree.c:88
-#, c-format
-msgid ""
-"Removing worktrees/%s: short read (expected %<PRIuMAX> bytes, read "
-"%<PRIuMAX>)"
+#: command-list.h:134
+msgid "Create a packed archive of objects"
 msgstr ""
 
-#: builtin/worktree.c:96
-#, c-format
-msgid "Removing worktrees/%s: invalid gitdir file"
+#: command-list.h:135
+msgid "Find redundant pack files"
 msgstr ""
 
-#: builtin/worktree.c:112
-#, c-format
-msgid "Removing worktrees/%s: gitdir file points to non-existent location"
+#: command-list.h:136
+msgid "Pack heads and tags for efficient repository access"
 msgstr ""
 
-#: builtin/worktree.c:159
-msgid "report pruned working trees"
+#: command-list.h:137
+msgid "Routines to help parsing remote repository access parameters"
 msgstr ""
 
-#: builtin/worktree.c:161
-msgid "expire working trees older than <time>"
+#: command-list.h:138
+msgid "Compute unique ID for a patch"
 msgstr ""
 
-#: builtin/worktree.c:236
-#, c-format
-msgid "'%s' already exists"
+#: command-list.h:139
+msgid "Prune all unreachable objects from the object database"
 msgstr ""
 
-#: builtin/worktree.c:267
-#, c-format
-msgid "could not create directory of '%s'"
+#: command-list.h:140
+msgid "Remove extra objects that are already in pack files"
 msgstr ""
 
-#: builtin/worktree.c:306
-#, c-format
-msgid "Preparing %s (identifier %s)"
+#: command-list.h:141
+msgid "Fetch from and integrate with another repository or a local branch"
 msgstr ""
 
-#: builtin/worktree.c:368
-msgid "checkout <branch> even if already checked out in other worktree"
+#: command-list.h:142
+msgid "Update remote refs along with associated objects"
 msgstr ""
 
-#: builtin/worktree.c:370
-msgid "create a new branch"
+#: command-list.h:143
+msgid "Applies a quilt patchset onto the current branch"
 msgstr ""
 
-#: builtin/worktree.c:372
-msgid "create or reset a branch"
+#: command-list.h:144
+msgid "Reads tree information into the index"
 msgstr ""
 
-#: builtin/worktree.c:374
-msgid "populate the new working tree"
+#: command-list.h:145
+msgid "Reapply commits on top of another base tip"
 msgstr ""
 
-#: builtin/worktree.c:375
-msgid "keep the new working tree locked"
+#: command-list.h:146
+msgid "Receive what is pushed into the repository"
 msgstr ""
 
-#: builtin/worktree.c:377
-msgid "set up tracking mode (see git-branch(1))"
+#: command-list.h:147
+msgid "Manage reflog information"
 msgstr ""
 
-#: builtin/worktree.c:380
-msgid "try to match the new branch name with a remote-tracking branch"
+#: command-list.h:148
+msgid "Manage set of tracked repositories"
 msgstr ""
 
-#: builtin/worktree.c:388
-msgid "-b, -B, and --detach are mutually exclusive"
+#: command-list.h:149
+msgid "Pack unpacked objects in a repository"
 msgstr ""
 
-#: builtin/worktree.c:453
-msgid "--[no-]track can only be used if a new branch is created"
+#: command-list.h:150
+msgid "Create, list, delete refs to replace objects"
 msgstr ""
 
-#: builtin/worktree.c:553
-msgid "reason for locking"
+#: command-list.h:151
+msgid "Generates a summary of pending changes"
 msgstr ""
 
-#: builtin/worktree.c:565 builtin/worktree.c:598
-#, c-format
-msgid "'%s' is not a working tree"
+#: command-list.h:152
+msgid "Reuse recorded resolution of conflicted merges"
 msgstr ""
 
-#: builtin/worktree.c:567 builtin/worktree.c:600
-msgid "The main working tree cannot be locked or unlocked"
+#: command-list.h:153
+msgid "Reset current HEAD to the specified state"
 msgstr ""
 
-#: builtin/worktree.c:572
-#, c-format
-msgid "'%s' is already locked, reason: %s"
+#: command-list.h:154
+msgid "Revert some existing commits"
 msgstr ""
 
-#: builtin/worktree.c:574
-#, c-format
-msgid "'%s' is already locked"
+#: command-list.h:155
+msgid "Lists commit objects in reverse chronological order"
 msgstr ""
 
-#: builtin/worktree.c:602
-#, c-format
-msgid "'%s' is not locked"
+#: command-list.h:156
+msgid "Pick out and massage parameters"
 msgstr ""
 
-#: builtin/write-tree.c:14
-msgid "git write-tree [--missing-ok] [--prefix=<prefix>/]"
+#: command-list.h:157
+msgid "Remove files from the working tree and from the index"
 msgstr ""
 
-#: builtin/write-tree.c:27
-msgid "<prefix>/"
+#: command-list.h:158
+msgid "Send a collection of patches as emails"
 msgstr ""
 
-#: builtin/write-tree.c:28
-msgid "write tree object for a subdirectory <prefix>"
+#: command-list.h:159
+msgid "Push objects over Git protocol to another repository"
 msgstr ""
 
-#: builtin/write-tree.c:31
-msgid "only useful for debugging"
+#: command-list.h:160
+msgid "Restricted login shell for Git-only SSH access"
 msgstr ""
 
-#: upload-pack.c:24
-msgid "git upload-pack [<options>] <dir>"
+#: command-list.h:161
+msgid "Summarize 'git log' output"
 msgstr ""
 
-#: upload-pack.c:1041
-msgid "quit after a single request/response exchange"
+#: command-list.h:162
+msgid "Show various types of objects"
 msgstr ""
 
-#: upload-pack.c:1043
-msgid "exit immediately after initial ref advertisement"
+#: command-list.h:163
+msgid "Show branches and their commits"
 msgstr ""
 
-#: upload-pack.c:1045
-msgid "do not try <directory>/.git/ if <directory> is no Git directory"
+#: command-list.h:164
+msgid "Show packed archive index"
 msgstr ""
 
-#: upload-pack.c:1047
-msgid "interrupt transfer after <n> seconds of inactivity"
+#: command-list.h:165
+msgid "List references in a local repository"
 msgstr ""
 
-#: credential-cache--daemon.c:222
-#, c-format
-msgid ""
-"The permissions on your socket directory are too loose; other\n"
-"users may be able to read your cached credentials. Consider running:\n"
-"\n"
-"\tchmod 0700 %s"
+#: command-list.h:166
+msgid "Git's i18n setup code for shell scripts"
 msgstr ""
 
-#: credential-cache--daemon.c:271
-msgid "print debugging messages to stderr"
+#: command-list.h:167
+msgid "Common Git shell script setup code"
 msgstr ""
 
-#: git.c:15
-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."
+#: command-list.h:168
+msgid "Stash the changes in a dirty working directory away"
 msgstr ""
 
-#: http.c:339
-#, c-format
-msgid "negative value for http.postbuffer; defaulting to %d"
+#: command-list.h:169
+msgid "Add file contents to the staging area"
 msgstr ""
 
-#: http.c:360
-msgid "Delegation control is not supported with cURL < 7.22.0"
+#: command-list.h:170
+msgid "Show the working tree status"
 msgstr ""
 
-#: http.c:369
-msgid "Public key pinning not supported with cURL < 7.44.0"
+#: command-list.h:171
+msgid "Remove unnecessary whitespace"
 msgstr ""
 
-#: http.c:1791
-#, c-format
-msgid ""
-"unable to update url base from redirection:\n"
-"  asked for: %s\n"
-"   redirect: %s"
+#: command-list.h:172
+msgid "Initialize, update or inspect submodules"
 msgstr ""
 
-#: remote-curl.c:324
-#, c-format
-msgid "redirecting to %s"
+#: command-list.h:173
+msgid "Bidirectional operation between a Subversion repository and Git"
 msgstr ""
 
-#: list-objects-filter-options.h:54
-msgid "args"
+#: command-list.h:174
+msgid "Read, modify and delete symbolic refs"
 msgstr ""
 
-#: list-objects-filter-options.h:55
-msgid "object filtering"
+#: command-list.h:175
+msgid "Create, list, delete or verify a tag object signed with GPG"
 msgstr ""
 
-#: common-cmds.h:9
-msgid "start a working area (see also: git help tutorial)"
+#: command-list.h:176
+msgid "Creates a temporary file with a blob's contents"
 msgstr ""
 
-#: common-cmds.h:10
-msgid "work on the current change (see also: git help everyday)"
+#: command-list.h:177
+msgid "Unpack objects from a packed archive"
 msgstr ""
 
-#: common-cmds.h:11
-msgid "examine the history and state (see also: git help revisions)"
+#: command-list.h:178
+msgid "Register file contents in the working tree to the index"
 msgstr ""
 
-#: common-cmds.h:12
-msgid "grow, mark and tweak your common history"
+#: command-list.h:179
+msgid "Update the object name stored in a ref safely"
 msgstr ""
 
-#: common-cmds.h:13
-msgid "collaborate (see also: git help workflows)"
+#: command-list.h:180
+msgid "Update auxiliary info file to help dumb servers"
 msgstr ""
 
-#: common-cmds.h:17
-msgid "Add file contents to the index"
+#: command-list.h:181
+msgid "Send archive back to git-archive"
 msgstr ""
 
-#: common-cmds.h:18
-msgid "Use binary search to find the commit that introduced a bug"
+#: command-list.h:182
+msgid "Send objects packed back to git-fetch-pack"
 msgstr ""
 
-#: common-cmds.h:19
-msgid "List, create, or delete branches"
+#: command-list.h:183
+msgid "Show a Git logical variable"
 msgstr ""
 
-#: common-cmds.h:20
-msgid "Switch branches or restore working tree files"
+#: command-list.h:184
+msgid "Check the GPG signature of commits"
 msgstr ""
 
-#: common-cmds.h:21
-msgid "Clone a repository into a new directory"
+#: command-list.h:185
+msgid "Validate packed Git archive files"
 msgstr ""
 
-#: common-cmds.h:22
-msgid "Record changes to the repository"
+#: command-list.h:186
+msgid "Check the GPG signature of tags"
 msgstr ""
 
-#: common-cmds.h:23
-msgid "Show changes between commits, commit and working tree, etc"
+#: command-list.h:187
+msgid "Git web interface (web frontend to Git repositories)"
 msgstr ""
 
-#: common-cmds.h:24
-msgid "Download objects and refs from another repository"
+#: command-list.h:188
+msgid "Show logs with difference each commit introduces"
 msgstr ""
 
-#: common-cmds.h:25
-msgid "Print lines matching a pattern"
+#: command-list.h:189
+msgid "Manage multiple working trees"
 msgstr ""
 
-#: common-cmds.h:26
-msgid "Create an empty Git repository or reinitialize an existing one"
+#: command-list.h:190
+msgid "Create a tree object from the current index"
 msgstr ""
 
-#: common-cmds.h:27
-msgid "Show commit logs"
+#: command-list.h:191
+msgid "Defining attributes per path"
 msgstr ""
 
-#: common-cmds.h:28
-msgid "Join two or more development histories together"
+#: command-list.h:192
+msgid "Git command-line interface and conventions"
 msgstr ""
 
-#: common-cmds.h:29
-msgid "Move or rename a file, a directory, or a symlink"
+#: command-list.h:193
+msgid "A Git core tutorial for developers"
 msgstr ""
 
-#: common-cmds.h:30
-msgid "Fetch from and integrate with another repository or a local branch"
+#: command-list.h:194
+msgid "Git for CVS users"
 msgstr ""
 
-#: common-cmds.h:31
-msgid "Update remote refs along with associated objects"
+#: command-list.h:195
+msgid "Tweaking diff output"
 msgstr ""
 
-#: common-cmds.h:32
-msgid "Reapply commits on top of another base tip"
+#: command-list.h:196
+msgid "A useful minimum set of commands for Everyday Git"
 msgstr ""
 
-#: common-cmds.h:33
-msgid "Reset current HEAD to the specified state"
+#: command-list.h:197
+msgid "A Git Glossary"
 msgstr ""
 
-#: common-cmds.h:34
-msgid "Remove files from the working tree and from the index"
+#: command-list.h:198
+msgid "Hooks used by Git"
 msgstr ""
 
-#: common-cmds.h:35
-msgid "Show various types of objects"
+#: command-list.h:199
+msgid "Specifies intentionally untracked files to ignore"
 msgstr ""
 
-#: common-cmds.h:36
-msgid "Show the working tree status"
+#: command-list.h:200
+msgid "Defining submodule properties"
 msgstr ""
 
-#: common-cmds.h:37
-msgid "Create, list, delete or verify a tag object signed with GPG"
+#: command-list.h:201
+msgid "Git namespaces"
 msgstr ""
 
-#: parse-options.h:145
-msgid "expiry-date"
+#: command-list.h:202
+msgid "Git Repository Layout"
 msgstr ""
 
-#: parse-options.h:160
-msgid "no-op (backward compatibility)"
+#: command-list.h:203
+msgid "Specifying revisions and ranges for Git"
 msgstr ""
 
-#: parse-options.h:238
-msgid "be more verbose"
+#: command-list.h:204
+msgid "A tutorial introduction to Git: part two"
 msgstr ""
 
-#: parse-options.h:240
-msgid "be more quiet"
+#: command-list.h:205
+msgid "A tutorial introduction to Git"
 msgstr ""
 
-#: parse-options.h:246
-msgid "use <n> digits to display SHA-1s"
+#: command-list.h:206
+msgid "An overview of recommended workflows with Git"
 msgstr ""
 
 #: rerere.h:40
@@ -13911,7 +15383,7 @@ msgstr ""
 msgid "Simple merge did not work, trying automatic merge."
 msgstr ""
 
-#: git-rebase.sh:58
+#: git-rebase.sh:61
 msgid ""
 "Resolve all conflicts manually, mark them as resolved with\n"
 "\"git add/rm <conflicted_files>\", then run \"git rebase --continue\".\n"
@@ -13920,47 +15392,47 @@ msgid ""
 "abort\"."
 msgstr ""
 
-#: git-rebase.sh:160 git-rebase.sh:402
+#: git-rebase.sh:173 git-rebase.sh:442
 #, sh-format
 msgid "Could not move back to $head_name"
 msgstr ""
 
-#: git-rebase.sh:171
+#: git-rebase.sh:184
 msgid "Applied autostash."
 msgstr ""
 
-#: git-rebase.sh:174
+#: git-rebase.sh:187
 #, sh-format
 msgid "Cannot store $stash_sha1"
 msgstr ""
 
-#: git-rebase.sh:214
+#: git-rebase.sh:229
 msgid "The pre-rebase hook refused to rebase."
 msgstr ""
 
-#: git-rebase.sh:219
+#: git-rebase.sh:234
 msgid "It looks like 'git am' is in progress. Cannot rebase."
 msgstr ""
 
-#: git-rebase.sh:363
+#: git-rebase.sh:403
 msgid "No rebase in progress?"
 msgstr ""
 
-#: git-rebase.sh:374
+#: git-rebase.sh:414
 msgid "The --edit-todo action can only be used during interactive rebase."
 msgstr ""
 
-#: git-rebase.sh:381
+#: git-rebase.sh:421
 msgid "Cannot read HEAD"
 msgstr ""
 
-#: git-rebase.sh:384
+#: git-rebase.sh:424
 msgid ""
 "You must edit all merge conflicts and then\n"
 "mark them as resolved using git add"
 msgstr ""
 
-#: git-rebase.sh:424
+#: git-rebase.sh:468
 #, sh-format
 msgid ""
 "It seems that there is already a $state_dir_base directory, and\n"
@@ -13973,74 +15445,78 @@ msgid ""
 "valuable there."
 msgstr ""
 
-#: git-rebase.sh:480
+#: git-rebase.sh:509
+msgid "error: cannot combine '--signoff' with '--preserve-merges'"
+msgstr ""
+
+#: git-rebase.sh:537
 #, sh-format
 msgid "invalid upstream '$upstream_name'"
 msgstr ""
 
-#: git-rebase.sh:504
+#: git-rebase.sh:561
 #, sh-format
 msgid "$onto_name: there are more than one merge bases"
 msgstr ""
 
-#: git-rebase.sh:507 git-rebase.sh:511
+#: git-rebase.sh:564 git-rebase.sh:568
 #, sh-format
 msgid "$onto_name: there is no merge base"
 msgstr ""
 
-#: git-rebase.sh:516
+#: git-rebase.sh:573
 #, sh-format
 msgid "Does not point to a valid commit: $onto_name"
 msgstr ""
 
-#: git-rebase.sh:542
+#: git-rebase.sh:599
 #, sh-format
 msgid "fatal: no such branch/commit '$branch_name'"
 msgstr ""
 
-#: git-rebase.sh:575
+#: git-rebase.sh:632
 msgid "Cannot autostash"
 msgstr ""
 
-#: git-rebase.sh:580
+#: git-rebase.sh:637
 #, sh-format
 msgid "Created autostash: $stash_abbrev"
 msgstr ""
 
-#: git-rebase.sh:584
+#: git-rebase.sh:641
 msgid "Please commit or stash them."
 msgstr ""
 
-#: git-rebase.sh:607
+#: git-rebase.sh:664
 #, sh-format
 msgid "HEAD is up to date."
 msgstr ""
 
-#: git-rebase.sh:609
+#: git-rebase.sh:666
 #, sh-format
 msgid "Current branch $branch_name is up to date."
 msgstr ""
 
-#: git-rebase.sh:617
+#: git-rebase.sh:674
 #, sh-format
 msgid "HEAD is up to date, rebase forced."
 msgstr ""
 
-#: git-rebase.sh:619
+#: git-rebase.sh:676
 #, sh-format
 msgid "Current branch $branch_name is up to date, rebase forced."
 msgstr ""
 
-#: git-rebase.sh:631
+#: git-rebase.sh:688
 #, sh-format
 msgid "Changes from $mb to $onto:"
 msgstr ""
 
-#: git-rebase.sh:640
+#: git-rebase.sh:697
 msgid "First, rewinding head to replay your work on top of it..."
 msgstr ""
 
-#: git-rebase.sh:650
+#: git-rebase.sh:707
 #, sh-format
 msgid "Fast-forwarded $branch_name to $onto_name."
 msgstr ""
@@ -14108,109 +15584,109 @@ msgstr ""
 msgid "Saved working directory and index state $stash_msg"
 msgstr ""
 
-#: git-stash.sh:341
+#: git-stash.sh:342
 msgid "Cannot remove worktree changes"
 msgstr ""
 
-#: git-stash.sh:489
+#: git-stash.sh:490
 #, sh-format
 msgid "unknown option: $opt"
 msgstr ""
 
-#: git-stash.sh:502
+#: git-stash.sh:503
 msgid "No stash entries found."
 msgstr ""
 
-#: git-stash.sh:509
+#: git-stash.sh:510
 #, sh-format
 msgid "Too many revisions specified: $REV"
 msgstr ""
 
-#: git-stash.sh:524
+#: git-stash.sh:525
 #, sh-format
 msgid "$reference is not a valid reference"
 msgstr ""
 
-#: git-stash.sh:552
+#: git-stash.sh:553
 #, sh-format
 msgid "'$args' is not a stash-like commit"
 msgstr ""
 
-#: git-stash.sh:563
+#: git-stash.sh:564
 #, sh-format
 msgid "'$args' is not a stash reference"
 msgstr ""
 
-#: git-stash.sh:571
+#: git-stash.sh:572
 msgid "unable to refresh index"
 msgstr ""
 
-#: git-stash.sh:575
+#: git-stash.sh:576
 msgid "Cannot apply a stash in the middle of a merge"
 msgstr ""
 
-#: git-stash.sh:583
+#: git-stash.sh:584
 msgid "Conflicts in index. Try without --index."
 msgstr ""
 
-#: git-stash.sh:585
+#: git-stash.sh:586
 msgid "Could not save index tree"
 msgstr ""
 
-#: git-stash.sh:594
+#: git-stash.sh:595
 msgid "Could not restore untracked files from stash entry"
 msgstr ""
 
-#: git-stash.sh:619
+#: git-stash.sh:620
 msgid "Cannot unstage modified files"
 msgstr ""
 
-#: git-stash.sh:634
+#: git-stash.sh:635
 msgid "Index was not unstashed."
 msgstr ""
 
-#: git-stash.sh:648
+#: git-stash.sh:649
 msgid "The stash entry is kept in case you need it again."
 msgstr ""
 
-#: git-stash.sh:657
+#: git-stash.sh:658
 #, sh-format
 msgid "Dropped ${REV} ($s)"
 msgstr ""
 
-#: git-stash.sh:658
+#: git-stash.sh:659
 #, sh-format
 msgid "${REV}: Could not drop stash entry"
 msgstr ""
 
-#: git-stash.sh:666
+#: git-stash.sh:667
 msgid "No branch name specified"
 msgstr ""
 
-#: git-stash.sh:745
+#: git-stash.sh:746
 msgid "(To restore them type \"git stash apply\")"
 msgstr ""
 
-#: git-submodule.sh:181
+#: git-submodule.sh:188
 msgid "Relative path can only be used from the toplevel of the working tree"
 msgstr ""
 
-#: git-submodule.sh:191
+#: git-submodule.sh:198
 #, sh-format
 msgid "repo URL: '$repo' must be absolute or begin with ./|../"
 msgstr ""
 
-#: git-submodule.sh:210
+#: git-submodule.sh:217
 #, sh-format
 msgid "'$sm_path' already exists in the index"
 msgstr ""
 
-#: git-submodule.sh:213
+#: git-submodule.sh:220
 #, sh-format
 msgid "'$sm_path' already exists in the index and is not a submodule"
 msgstr ""
 
-#: git-submodule.sh:219
+#: git-submodule.sh:226
 #, sh-format
 msgid ""
 "The following path is ignored by one of your .gitignore files:\n"
@@ -14218,22 +15694,22 @@ msgid ""
 "Use -f if you really want to add it."
 msgstr ""
 
-#: git-submodule.sh:237
+#: git-submodule.sh:249
 #, sh-format
 msgid "Adding existing repo at '$sm_path' to the index"
 msgstr ""
 
-#: git-submodule.sh:239
+#: git-submodule.sh:251
 #, sh-format
 msgid "'$sm_path' already exists and is not a valid git repo"
 msgstr ""
 
-#: git-submodule.sh:247
+#: git-submodule.sh:259
 #, sh-format
 msgid "A git directory for '$sm_name' is found locally with remote(s):"
 msgstr ""
 
-#: git-submodule.sh:249
+#: git-submodule.sh:261
 #, sh-format
 msgid ""
 "If you want to reuse this local git directory instead of cloning again from\n"
@@ -14244,221 +15720,178 @@ msgid ""
 "option."
 msgstr ""
 
-#: git-submodule.sh:255
+#: git-submodule.sh:267
 #, sh-format
 msgid "Reactivating local git directory for submodule '$sm_name'."
 msgstr ""
 
-#: git-submodule.sh:267
+#: git-submodule.sh:279
 #, sh-format
 msgid "Unable to checkout submodule '$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:272
+#: git-submodule.sh:284
 #, sh-format
 msgid "Failed to add submodule '$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:281
+#: git-submodule.sh:293
 #, sh-format
 msgid "Failed to register submodule '$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:342
+#: git-submodule.sh:354
 #, sh-format
 msgid "Entering '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:362
+#: git-submodule.sh:374
 #, sh-format
 msgid "Stopping at '$displaypath'; script returned non-zero status."
 msgstr ""
 
-#: git-submodule.sh:433
-#, sh-format
-msgid "pathspec and --all are incompatible"
-msgstr ""
-
-#: git-submodule.sh:438
-#, sh-format
-msgid "Use '--all' if you really want to deinitialize all submodules"
-msgstr ""
-
-#: git-submodule.sh:458
-#, sh-format
-msgid ""
-"Submodule work tree '$displaypath' contains a .git directory\n"
-"(use 'rm -rf' if you really want to remove it including all of its history)"
-msgstr ""
-
-#: git-submodule.sh:466
-#, sh-format
-msgid ""
-"Submodule work tree '$displaypath' contains local modifications; use '-f' to "
-"discard them"
-msgstr ""
-
-#: git-submodule.sh:469
-#, sh-format
-msgid "Cleared directory '$displaypath'"
-msgstr ""
-
-#: git-submodule.sh:470
-#, sh-format
-msgid "Could not remove submodule work tree '$displaypath'"
-msgstr ""
-
-#: git-submodule.sh:473
-#, sh-format
-msgid "Could not create empty submodule directory '$displaypath'"
-msgstr ""
-
-#: git-submodule.sh:482
-#, sh-format
-msgid "Submodule '$name' ($url) unregistered for path '$displaypath'"
-msgstr ""
-
-#: git-submodule.sh:637
+#: git-submodule.sh:600
 #, sh-format
 msgid "Unable to find current revision in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:647
+#: git-submodule.sh:610
 #, sh-format
 msgid "Unable to fetch in submodule path '$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:652
+#: git-submodule.sh:615
 #, sh-format
 msgid ""
 "Unable to find current ${remote_name}/${branch} revision in submodule path "
 "'$sm_path'"
 msgstr ""
 
-#: git-submodule.sh:670
+#: git-submodule.sh:633
 #, sh-format
 msgid "Unable to fetch in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:676
+#: git-submodule.sh:639
 #, sh-format
 msgid ""
 "Fetched in submodule path '$displaypath', but it did not contain $sha1. "
 "Direct fetching of that commit failed."
 msgstr ""
 
-#: git-submodule.sh:683
+#: git-submodule.sh:646
 #, sh-format
 msgid "Unable to checkout '$sha1' in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:684
+#: git-submodule.sh:647
 #, sh-format
 msgid "Submodule path '$displaypath': checked out '$sha1'"
 msgstr ""
 
-#: git-submodule.sh:688
+#: git-submodule.sh:651
 #, sh-format
 msgid "Unable to rebase '$sha1' in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:689
+#: git-submodule.sh:652
 #, sh-format
 msgid "Submodule path '$displaypath': rebased into '$sha1'"
 msgstr ""
 
-#: git-submodule.sh:694
+#: git-submodule.sh:657
 #, sh-format
 msgid "Unable to merge '$sha1' in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:695
+#: git-submodule.sh:658
 #, sh-format
 msgid "Submodule path '$displaypath': merged in '$sha1'"
 msgstr ""
 
-#: git-submodule.sh:700
+#: git-submodule.sh:663
 #, sh-format
 msgid "Execution of '$command $sha1' failed in submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:701
+#: git-submodule.sh:664
 #, sh-format
 msgid "Submodule path '$displaypath': '$command $sha1'"
 msgstr ""
 
-#: git-submodule.sh:732
+#: git-submodule.sh:695
 #, sh-format
 msgid "Failed to recurse into submodule path '$displaypath'"
 msgstr ""
 
-#: git-submodule.sh:828
+#: git-submodule.sh:791
 msgid "The --cached option cannot be used with the --files option"
 msgstr ""
 
-#: git-submodule.sh:880
+#: git-submodule.sh:843
 #, sh-format
 msgid "unexpected mode $mod_dst"
 msgstr ""
 
-#: git-submodule.sh:900
+#: git-submodule.sh:863
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_src"
 msgstr ""
 
-#: git-submodule.sh:903
+#: git-submodule.sh:866
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commit $sha1_dst"
 msgstr ""
 
-#: git-submodule.sh:906
+#: git-submodule.sh:869
 #, sh-format
 msgid "  Warn: $display_name doesn't contain commits $sha1_src and $sha1_dst"
 msgstr ""
 
-#: git-submodule.sh:1077
-#, sh-format
-msgid "Synchronizing submodule url for '$displaypath'"
-msgstr ""
-
 #: git-parse-remote.sh:89
 #, sh-format
 msgid "See git-${cmd}(1) for details."
 msgstr ""
 
-#: git-rebase--interactive.sh:140
+#: git-rebase--interactive.sh:142
 #, sh-format
 msgid "Rebasing ($new_count/$total)"
 msgstr ""
 
-#: git-rebase--interactive.sh:156
+#: git-rebase--interactive.sh:158
 msgid ""
 "\n"
 "Commands:\n"
-"p, pick = use commit\n"
-"r, reword = use commit, but edit the commit message\n"
-"e, edit = use commit, but stop for amending\n"
-"s, squash = use commit, but meld into previous commit\n"
-"f, fixup = like \"squash\", but discard this commit's log message\n"
-"x, exec = run command (the rest of the line) using shell\n"
-"d, drop = remove commit\n"
+"p, pick <commit> = use commit\n"
+"r, reword <commit> = use commit, but edit the commit message\n"
+"e, edit <commit> = use commit, but stop for amending\n"
+"s, squash <commit> = use commit, but meld into previous commit\n"
+"f, fixup <commit> = like \"squash\", but discard this commit's log message\n"
+"x, exec <command> = run command (the rest of the line) using shell\n"
+"d, drop <commit> = remove commit\n"
+"l, label <label> = label current HEAD with a name\n"
+"t, reset <label> = reset HEAD to a label\n"
+"m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]\n"
+".       create a merge commit using the original merge commit's\n"
+".       message (or the oneline, if no original merge commit was\n"
+".       specified). Use -c <commit> to reword the commit message.\n"
 "\n"
 "These lines can be re-ordered; they are executed from top to bottom.\n"
 msgstr ""
 
-#: git-rebase--interactive.sh:171
+#: git-rebase--interactive.sh:179
 msgid ""
 "\n"
 "Do not remove any line. Use 'drop' explicitly to remove a commit.\n"
 msgstr ""
 
-#: git-rebase--interactive.sh:175
+#: git-rebase--interactive.sh:183
 msgid ""
 "\n"
 "If you remove a line here THAT COMMIT WILL BE LOST.\n"
 msgstr ""
 
-#: git-rebase--interactive.sh:211
+#: git-rebase--interactive.sh:221
 #, sh-format
 msgid ""
 "You can amend the commit now, with\n"
@@ -14470,83 +15903,83 @@ msgid ""
 "\tgit rebase --continue"
 msgstr ""
 
-#: git-rebase--interactive.sh:236
+#: git-rebase--interactive.sh:246
 #, sh-format
 msgid "$sha1: not a commit that can be picked"
 msgstr ""
 
-#: git-rebase--interactive.sh:275
+#: git-rebase--interactive.sh:285
 #, sh-format
 msgid "Invalid commit name: $sha1"
 msgstr ""
 
-#: git-rebase--interactive.sh:317
+#: git-rebase--interactive.sh:325
 msgid "Cannot write current commit's replacement sha1"
 msgstr ""
 
-#: git-rebase--interactive.sh:369
+#: git-rebase--interactive.sh:376
 #, sh-format
 msgid "Fast-forward to $sha1"
 msgstr ""
 
-#: git-rebase--interactive.sh:371
+#: git-rebase--interactive.sh:378
 #, sh-format
 msgid "Cannot fast-forward to $sha1"
 msgstr ""
 
-#: git-rebase--interactive.sh:380
+#: git-rebase--interactive.sh:387
 #, sh-format
 msgid "Cannot move HEAD to $first_parent"
 msgstr ""
 
-#: git-rebase--interactive.sh:385
+#: git-rebase--interactive.sh:392
 #, sh-format
 msgid "Refusing to squash a merge: $sha1"
 msgstr ""
 
-#: git-rebase--interactive.sh:400
+#: git-rebase--interactive.sh:410
 #, sh-format
 msgid "Error redoing merge $sha1"
 msgstr ""
 
-#: git-rebase--interactive.sh:408
+#: git-rebase--interactive.sh:419
 #, sh-format
 msgid "Could not pick $sha1"
 msgstr ""
 
-#: git-rebase--interactive.sh:417
+#: git-rebase--interactive.sh:428
 #, sh-format
 msgid "This is the commit message #${n}:"
 msgstr ""
 
-#: git-rebase--interactive.sh:422
+#: git-rebase--interactive.sh:433
 #, sh-format
 msgid "The commit message #${n} will be skipped:"
 msgstr ""
 
-#: git-rebase--interactive.sh:433
+#: git-rebase--interactive.sh:444
 #, 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--interactive.sh:442
+#: git-rebase--interactive.sh:453
 #, sh-format
 msgid "Cannot write $fixup_msg"
 msgstr ""
 
-#: git-rebase--interactive.sh:445
+#: git-rebase--interactive.sh:456
 msgid "This is a combination of 2 commits."
 msgstr ""
 
-#: git-rebase--interactive.sh:486 git-rebase--interactive.sh:529
-#: git-rebase--interactive.sh:532
+#: git-rebase--interactive.sh:497 git-rebase--interactive.sh:540
+#: git-rebase--interactive.sh:543
 #, sh-format
 msgid "Could not apply $sha1... $rest"
 msgstr ""
 
-#: git-rebase--interactive.sh:560
+#: git-rebase--interactive.sh:572
 #, sh-format
 msgid ""
 "Could not amend commit after successfully picking $sha1... $rest\n"
@@ -14556,31 +15989,31 @@ msgid ""
 "you are able to reword the commit."
 msgstr ""
 
-#: git-rebase--interactive.sh:575
+#: git-rebase--interactive.sh:587
 #, sh-format
 msgid "Stopped at $sha1_abbrev... $rest"
 msgstr ""
 
-#: git-rebase--interactive.sh:590
+#: git-rebase--interactive.sh:602
 #, sh-format
 msgid "Cannot '$squash_style' without a previous commit"
 msgstr ""
 
-#: git-rebase--interactive.sh:632
+#: git-rebase--interactive.sh:644
 #, sh-format
 msgid "Executing: $rest"
 msgstr ""
 
-#: git-rebase--interactive.sh:640
+#: git-rebase--interactive.sh:652
 #, sh-format
 msgid "Execution failed: $rest"
 msgstr ""
 
-#: git-rebase--interactive.sh:642
+#: git-rebase--interactive.sh:654
 msgid "and made changes to the index and/or the working tree"
 msgstr ""
 
-#: git-rebase--interactive.sh:644
+#: git-rebase--interactive.sh:656
 msgid ""
 "You can fix the problem, and then run\n"
 "\n"
@@ -14588,7 +16021,7 @@ msgid ""
 msgstr ""
 
 #. TRANSLATORS: after these lines is a command to be issued by the user
-#: git-rebase--interactive.sh:657
+#: git-rebase--interactive.sh:669
 #, sh-format
 msgid ""
 "Execution succeeded: $rest\n"
@@ -14598,29 +16031,29 @@ msgid ""
 "\tgit rebase --continue"
 msgstr ""
 
-#: git-rebase--interactive.sh:668
+#: git-rebase--interactive.sh:680
 #, sh-format
 msgid "Unknown command: $command $sha1 $rest"
 msgstr ""
 
-#: git-rebase--interactive.sh:669
+#: git-rebase--interactive.sh:681
 msgid "Please fix this using 'git rebase --edit-todo'."
 msgstr ""
 
-#: git-rebase--interactive.sh:704
+#: git-rebase--interactive.sh:716
 #, sh-format
 msgid "Successfully rebased and updated $head_name."
 msgstr ""
 
-#: git-rebase--interactive.sh:728
+#: git-rebase--interactive.sh:740
 msgid "could not detach HEAD"
 msgstr ""
 
-#: git-rebase--interactive.sh:763
+#: git-rebase--interactive.sh:778
 msgid "Could not remove CHERRY_PICK_HEAD"
 msgstr ""
 
-#: git-rebase--interactive.sh:768
+#: git-rebase--interactive.sh:783
 #, sh-format
 msgid ""
 "You have staged changes in your working tree.\n"
@@ -14638,21 +16071,21 @@ msgid ""
 "  git rebase --continue\n"
 msgstr ""
 
-#: git-rebase--interactive.sh:785
+#: git-rebase--interactive.sh:800
 msgid "Error trying to find the author identity to amend commit"
 msgstr ""
 
-#: git-rebase--interactive.sh:790
+#: git-rebase--interactive.sh:805
 msgid ""
 "You have uncommitted changes in your working tree. Please commit them\n"
 "first and then run 'git rebase --continue' again."
 msgstr ""
 
-#: git-rebase--interactive.sh:795 git-rebase--interactive.sh:799
+#: git-rebase--interactive.sh:810 git-rebase--interactive.sh:814
 msgid "Could not commit staged changes."
 msgstr ""
 
-#: git-rebase--interactive.sh:827
+#: git-rebase--interactive.sh:843
 msgid ""
 "\n"
 "You are editing the todo file of an ongoing interactive rebase.\n"
@@ -14661,50 +16094,55 @@ msgid ""
 "\n"
 msgstr ""
 
-#: git-rebase--interactive.sh:835 git-rebase--interactive.sh:994
+#: git-rebase--interactive.sh:851 git-rebase--interactive.sh:937
 msgid "Could not execute editor"
 msgstr ""
 
-#: git-rebase--interactive.sh:848
+#: git-rebase--interactive.sh:872
 #, sh-format
 msgid "Could not checkout $switch_to"
 msgstr ""
 
-#: git-rebase--interactive.sh:853
+#: git-rebase--interactive.sh:879
 msgid "No HEAD?"
 msgstr ""
 
-#: git-rebase--interactive.sh:854
+#: git-rebase--interactive.sh:880
 #, sh-format
 msgid "Could not create temporary $state_dir"
 msgstr ""
 
-#: git-rebase--interactive.sh:856
+#: git-rebase--interactive.sh:883
 msgid "Could not mark as interactive"
 msgstr ""
 
-#: git-rebase--interactive.sh:866 git-rebase--interactive.sh:871
-msgid "Could not init rewritten commits"
-msgstr ""
-
-#: git-rebase--interactive.sh:972
+#: git-rebase--interactive.sh:915
 #, sh-format
 msgid "Rebase $shortrevisions onto $shortonto ($todocount command)"
 msgid_plural "Rebase $shortrevisions onto $shortonto ($todocount commands)"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-rebase--interactive.sh:977
+#: git-rebase--interactive.sh:920
 msgid ""
 "\n"
-"However, if you remove everything, the rebase will be aborted.\n"
+"\tHowever, if you remove everything, the rebase will be aborted.\n"
 "\n"
+"\t"
 msgstr ""
 
-#: git-rebase--interactive.sh:984
+#: git-rebase--interactive.sh:927
 msgid "Note that empty commits are commented out"
 msgstr ""
 
+#: git-rebase--interactive.sh:980
+msgid "Could not generate todo list"
+msgstr ""
+
+#: git-rebase--interactive.sh:1001 git-rebase--interactive.sh:1006
+msgid "Could not init rewritten commits"
+msgstr ""
+
 #: git-sh-setup.sh:89 git-sh-setup.sh:94
 #, sh-format
 msgid "usage: $dashless $USAGE"
@@ -14776,107 +16214,107 @@ msgstr ""
 msgid "unstaged"
 msgstr ""
 
-#: git-add--interactive.perl:246 git-add--interactive.perl:271
+#: git-add--interactive.perl:253 git-add--interactive.perl:278
 msgid "binary"
 msgstr ""
 
-#: git-add--interactive.perl:255 git-add--interactive.perl:309
+#: git-add--interactive.perl:262 git-add--interactive.perl:316
 msgid "nothing"
 msgstr ""
 
-#: git-add--interactive.perl:291 git-add--interactive.perl:306
+#: git-add--interactive.perl:298 git-add--interactive.perl:313
 msgid "unchanged"
 msgstr ""
 
-#: git-add--interactive.perl:602
+#: git-add--interactive.perl:609
 #, perl-format
 msgid "added %d path\n"
 msgid_plural "added %d paths\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:605
+#: git-add--interactive.perl:612
 #, perl-format
 msgid "updated %d path\n"
 msgid_plural "updated %d paths\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:608
+#: git-add--interactive.perl:615
 #, perl-format
 msgid "reverted %d path\n"
 msgid_plural "reverted %d paths\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:611
+#: git-add--interactive.perl:618
 #, perl-format
 msgid "touched %d path\n"
 msgid_plural "touched %d paths\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:620
+#: git-add--interactive.perl:627
 msgid "Update"
 msgstr ""
 
-#: git-add--interactive.perl:632
+#: git-add--interactive.perl:639
 msgid "Revert"
 msgstr ""
 
-#: git-add--interactive.perl:655
+#: git-add--interactive.perl:662
 #, perl-format
 msgid "note: %s is untracked now.\n"
 msgstr ""
 
-#: git-add--interactive.perl:666
+#: git-add--interactive.perl:673
 msgid "Add untracked"
 msgstr ""
 
-#: git-add--interactive.perl:672
+#: git-add--interactive.perl:679
 msgid "No untracked files.\n"
 msgstr ""
 
-#: git-add--interactive.perl:985
+#: git-add--interactive.perl:1033
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for staging."
 msgstr ""
 
-#: git-add--interactive.perl:988
+#: git-add--interactive.perl:1036
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for stashing."
 msgstr ""
 
-#: git-add--interactive.perl:991
+#: git-add--interactive.perl:1039
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for unstaging."
 msgstr ""
 
-#: git-add--interactive.perl:994 git-add--interactive.perl:1003
+#: git-add--interactive.perl:1042 git-add--interactive.perl:1051
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for applying."
 msgstr ""
 
-#: git-add--interactive.perl:997 git-add--interactive.perl:1000
+#: git-add--interactive.perl:1045 git-add--interactive.perl:1048
 msgid ""
 "If the patch applies cleanly, the edited hunk will immediately be\n"
 "marked for discarding."
 msgstr ""
 
-#: git-add--interactive.perl:1013
+#: git-add--interactive.perl:1085
 #, perl-format
 msgid "failed to open hunk edit file for writing: %s"
 msgstr ""
 
-#: git-add--interactive.perl:1014
+#: git-add--interactive.perl:1086
 msgid "Manual hunk edit mode -- see bottom for a quick guide.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1020
+#: git-add--interactive.perl:1092
 #, perl-format
 msgid ""
 "---\n"
@@ -14886,14 +16324,14 @@ msgid ""
 msgstr ""
 
 #. TRANSLATORS: 'it' refers to the patch mentioned in the previous messages.
-#: git-add--interactive.perl:1028
+#: git-add--interactive.perl:1100
 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:1042
+#: git-add--interactive.perl:1114
 #, perl-format
 msgid "failed to open hunk edit file for reading: %s"
 msgstr ""
@@ -14904,12 +16342,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:1134
+#: git-add--interactive.perl:1213
 msgid ""
 "Your edited hunk does not apply. Edit again (saying \"no\" discards!) [y/n]? "
 msgstr ""
 
-#: git-add--interactive.perl:1143
+#: git-add--interactive.perl:1222
 msgid ""
 "y - stage this hunk\n"
 "n - do not stage this hunk\n"
@@ -14918,7 +16356,7 @@ msgid ""
 "d - do not stage this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1149
+#: git-add--interactive.perl:1228
 msgid ""
 "y - stash this hunk\n"
 "n - do not stash this hunk\n"
@@ -14927,7 +16365,7 @@ msgid ""
 "d - do not stash this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1155
+#: git-add--interactive.perl:1234
 msgid ""
 "y - unstage this hunk\n"
 "n - do not unstage this hunk\n"
@@ -14936,7 +16374,7 @@ msgid ""
 "d - do not unstage this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1161
+#: git-add--interactive.perl:1240
 msgid ""
 "y - apply this hunk to index\n"
 "n - do not apply this hunk to index\n"
@@ -14945,7 +16383,7 @@ msgid ""
 "d - do not apply this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1167
+#: git-add--interactive.perl:1246
 msgid ""
 "y - discard this hunk from worktree\n"
 "n - do not discard this hunk from worktree\n"
@@ -14954,7 +16392,7 @@ msgid ""
 "d - do not discard this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1173
+#: git-add--interactive.perl:1252
 msgid ""
 "y - discard this hunk from index and worktree\n"
 "n - do not discard this hunk from index and worktree\n"
@@ -14963,7 +16401,7 @@ msgid ""
 "d - do not discard this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1179
+#: git-add--interactive.perl:1258
 msgid ""
 "y - apply this hunk to index and worktree\n"
 "n - do not apply this hunk to index and worktree\n"
@@ -14972,7 +16410,7 @@ msgid ""
 "d - do not apply this hunk or any of the later hunks in the file"
 msgstr ""
 
-#: git-add--interactive.perl:1188
+#: git-add--interactive.perl:1273
 msgid ""
 "g - select a hunk to go to\n"
 "/ - search for a hunk matching the given regex\n"
@@ -14985,195 +16423,211 @@ msgid ""
 "? - print help\n"
 msgstr ""
 
-#: git-add--interactive.perl:1219
+#: git-add--interactive.perl:1304
 msgid "The selected hunks do not apply to the index!\n"
 msgstr ""
 
-#: git-add--interactive.perl:1220
+#: git-add--interactive.perl:1305
 msgid "Apply them to the worktree anyway? "
 msgstr ""
 
-#: git-add--interactive.perl:1223
+#: git-add--interactive.perl:1308
 msgid "Nothing was applied.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1234
+#: git-add--interactive.perl:1319
 #, perl-format
 msgid "ignoring unmerged: %s\n"
 msgstr ""
 
-#: git-add--interactive.perl:1243
+#: git-add--interactive.perl:1328
 msgid "Only binary files changed.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1245
+#: git-add--interactive.perl:1330
 msgid "No changes.\n"
 msgstr ""
 
-#: git-add--interactive.perl:1253
+#: git-add--interactive.perl:1338
 msgid "Patch update"
 msgstr ""
 
-#: git-add--interactive.perl:1305
+#: git-add--interactive.perl:1390
 #, perl-format
-msgid "Stage mode change [y,n,q,a,d,/%s,?]? "
+msgid "Stage mode change [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1306
+#: git-add--interactive.perl:1391
 #, perl-format
-msgid "Stage deletion [y,n,q,a,d,/%s,?]? "
+msgid "Stage deletion [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1307
+#: git-add--interactive.perl:1392
 #, perl-format
-msgid "Stage this hunk [y,n,q,a,d,/%s,?]? "
+msgid "Stage this hunk [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1310
+#: git-add--interactive.perl:1395
 #, perl-format
-msgid "Stash mode change [y,n,q,a,d,/%s,?]? "
+msgid "Stash mode change [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1311
+#: git-add--interactive.perl:1396
 #, perl-format
-msgid "Stash deletion [y,n,q,a,d,/%s,?]? "
+msgid "Stash deletion [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1312
+#: git-add--interactive.perl:1397
 #, perl-format
-msgid "Stash this hunk [y,n,q,a,d,/%s,?]? "
+msgid "Stash this hunk [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1315
+#: git-add--interactive.perl:1400
 #, perl-format
-msgid "Unstage mode change [y,n,q,a,d,/%s,?]? "
+msgid "Unstage mode change [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1316
+#: git-add--interactive.perl:1401
 #, perl-format
-msgid "Unstage deletion [y,n,q,a,d,/%s,?]? "
+msgid "Unstage deletion [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1317
+#: git-add--interactive.perl:1402
 #, perl-format
-msgid "Unstage this hunk [y,n,q,a,d,/%s,?]? "
+msgid "Unstage this hunk [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1320
+#: git-add--interactive.perl:1405
 #, perl-format
-msgid "Apply mode change to index [y,n,q,a,d,/%s,?]? "
+msgid "Apply mode change to index [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1321
+#: git-add--interactive.perl:1406
 #, perl-format
-msgid "Apply deletion to index [y,n,q,a,d,/%s,?]? "
+msgid "Apply deletion to index [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1322
+#: git-add--interactive.perl:1407
 #, perl-format
-msgid "Apply this hunk to index [y,n,q,a,d,/%s,?]? "
+msgid "Apply this hunk to index [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1325
+#: git-add--interactive.perl:1410
 #, perl-format
-msgid "Discard mode change from worktree [y,n,q,a,d,/%s,?]? "
+msgid "Discard mode change from worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1326
+#: git-add--interactive.perl:1411
 #, perl-format
-msgid "Discard deletion from worktree [y,n,q,a,d,/%s,?]? "
+msgid "Discard deletion from worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1327
+#: git-add--interactive.perl:1412
 #, perl-format
-msgid "Discard this hunk from worktree [y,n,q,a,d,/%s,?]? "
+msgid "Discard this hunk from worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1330
+#: git-add--interactive.perl:1415
 #, perl-format
-msgid "Discard mode change from index and worktree [y,n,q,a,d,/%s,?]? "
+msgid "Discard mode change from index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1331
+#: git-add--interactive.perl:1416
 #, perl-format
-msgid "Discard deletion from index and worktree [y,n,q,a,d,/%s,?]? "
+msgid "Discard deletion from index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1332
+#: git-add--interactive.perl:1417
 #, perl-format
-msgid "Discard this hunk from index and worktree [y,n,q,a,d,/%s,?]? "
+msgid "Discard this hunk from index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1335
+#: git-add--interactive.perl:1420
 #, perl-format
-msgid "Apply mode change to index and worktree [y,n,q,a,d,/%s,?]? "
+msgid "Apply mode change to index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1336
+#: git-add--interactive.perl:1421
 #, perl-format
-msgid "Apply deletion to index and worktree [y,n,q,a,d,/%s,?]? "
+msgid "Apply deletion to index and worktree [y,n,q,a,d%s,?]? "
 msgstr ""
 
-#: git-add--interactive.perl:1337
+#: git-add--interactive.perl:1422
 #, perl-format
-msgid "Apply this hunk to index and worktree [y,n,q,a,d,/%s,?]? "
+msgid "Apply this hunk to index and worktree [y,n,q,a,d%s,?]? "
+msgstr ""
+
+#: git-add--interactive.perl:1522
+msgid "No other hunks to goto\n"
 msgstr ""
 
-#: git-add--interactive.perl:1440
+#: git-add--interactive.perl:1529
 msgid "go to which hunk (<ret> to see more)? "
 msgstr ""
 
-#: git-add--interactive.perl:1442
+#: git-add--interactive.perl:1531
 msgid "go to which hunk? "
 msgstr ""
 
-#: git-add--interactive.perl:1451
+#: git-add--interactive.perl:1540
 #, perl-format
 msgid "Invalid number: '%s'\n"
 msgstr ""
 
-#: git-add--interactive.perl:1456
+#: git-add--interactive.perl:1545
 #, 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:1482
+#: git-add--interactive.perl:1571
+msgid "No other hunks to search\n"
+msgstr ""
+
+#: git-add--interactive.perl:1575
 msgid "search for regex? "
 msgstr ""
 
-#: git-add--interactive.perl:1495
+#: git-add--interactive.perl:1588
 #, perl-format
 msgid "Malformed search regexp %s: %s\n"
 msgstr ""
 
-#: git-add--interactive.perl:1505
+#: git-add--interactive.perl:1598
 msgid "No hunk matches the given pattern\n"
 msgstr ""
 
-#: git-add--interactive.perl:1517 git-add--interactive.perl:1539
+#: git-add--interactive.perl:1610 git-add--interactive.perl:1632
 msgid "No previous hunk\n"
 msgstr ""
 
-#: git-add--interactive.perl:1526 git-add--interactive.perl:1545
+#: git-add--interactive.perl:1619 git-add--interactive.perl:1638
 msgid "No next hunk\n"
 msgstr ""
 
-#: git-add--interactive.perl:1553
+#: git-add--interactive.perl:1644
+msgid "Sorry, cannot split this hunk\n"
+msgstr ""
+
+#: git-add--interactive.perl:1650
 #, perl-format
 msgid "Split into %d hunk.\n"
 msgid_plural "Split into %d hunks.\n"
 msgstr[0] ""
 msgstr[1] ""
 
-#: git-add--interactive.perl:1605
+#: git-add--interactive.perl:1660
+msgid "Sorry, cannot edit this hunk\n"
+msgstr ""
+
+#: git-add--interactive.perl:1706
 msgid "Review diff"
 msgstr ""
 
 #. TRANSLATORS: please do not translate the command names
 #. 'status', 'update', 'revert', etc.
-#: git-add--interactive.perl:1624
+#: git-add--interactive.perl:1725
 msgid ""
 "status        - show paths with changes\n"
 "update        - add working tree state to the staged set of changes\n"
@@ -15184,84 +16638,90 @@ msgid ""
 "changes\n"
 msgstr ""
 
-#: git-add--interactive.perl:1641 git-add--interactive.perl:1646
-#: git-add--interactive.perl:1649 git-add--interactive.perl:1656
-#: git-add--interactive.perl:1660 git-add--interactive.perl:1666
+#: 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
 msgid "missing --"
 msgstr ""
 
-#: git-add--interactive.perl:1662
+#: git-add--interactive.perl:1763
 #, perl-format
 msgid "unknown --patch mode: %s"
 msgstr ""
 
-#: git-add--interactive.perl:1668 git-add--interactive.perl:1674
+#: git-add--interactive.perl:1769 git-add--interactive.perl:1775
 #, perl-format
 msgid "invalid argument %s, expecting --"
 msgstr ""
 
-#: git-send-email.perl:126
+#: git-send-email.perl:130
 msgid "local zone differs from GMT by a non-minute interval\n"
 msgstr ""
 
-#: git-send-email.perl:133 git-send-email.perl:139
+#: git-send-email.perl:137 git-send-email.perl:143
 msgid "local time offset greater than or equal to 24 hours\n"
 msgstr ""
 
-#: git-send-email.perl:207 git-send-email.perl:213
+#: git-send-email.perl:211 git-send-email.perl:217
 msgid "the editor exited uncleanly, aborting everything"
 msgstr ""
 
-#: git-send-email.perl:290
+#: git-send-email.perl:294
 #, perl-format
 msgid ""
 "'%s' contains an intermediate version of the email you were composing.\n"
 msgstr ""
 
-#: git-send-email.perl:295
+#: git-send-email.perl:299
 #, perl-format
 msgid "'%s.final' contains the composed email.\n"
 msgstr ""
 
-#: git-send-email.perl:313
+#: git-send-email.perl:317
 msgid "--dump-aliases incompatible with other options\n"
 msgstr ""
 
-#: git-send-email.perl:378 git-send-email.perl:629
+#: git-send-email.perl:383 git-send-email.perl:638
 msgid "Cannot run git format-patch from outside a repository\n"
 msgstr ""
 
-#: git-send-email.perl:447
+#: git-send-email.perl:386
+msgid ""
+"`batch-size` and `relogin` must be specified together (via command-line or "
+"configuration option)\n"
+msgstr ""
+
+#: git-send-email.perl:456
 #, perl-format
 msgid "Unknown --suppress-cc field: '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:476
+#: git-send-email.perl:485
 #, perl-format
 msgid "Unknown --confirm setting: '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:504
+#: git-send-email.perl:513
 #, perl-format
 msgid "warning: sendmail alias with quotes is not supported: %s\n"
 msgstr ""
 
-#: git-send-email.perl:506
+#: git-send-email.perl:515
 #, perl-format
 msgid "warning: `:include:` not supported: %s\n"
 msgstr ""
 
-#: git-send-email.perl:508
+#: git-send-email.perl:517
 #, perl-format
 msgid "warning: `/file` or `|pipe` redirection not supported: %s\n"
 msgstr ""
 
-#: git-send-email.perl:513
+#: git-send-email.perl:522
 #, perl-format
 msgid "warning: sendmail line is not recognized: %s\n"
 msgstr ""
 
-#: git-send-email.perl:595
+#: git-send-email.perl:604
 #, perl-format
 msgid ""
 "File '%s' exists but it could also be the range of commits\n"
@@ -15271,36 +16731,36 @@ msgid ""
 "    * Giving --format-patch option if you mean a range.\n"
 msgstr ""
 
-#: git-send-email.perl:616
+#: git-send-email.perl:625
 #, perl-format
 msgid "Failed to opendir %s: %s"
 msgstr ""
 
-#: git-send-email.perl:640
+#: git-send-email.perl:649
 #, perl-format
 msgid ""
 "fatal: %s: %s\n"
 "warning: no patches were sent\n"
 msgstr ""
 
-#: git-send-email.perl:651
+#: git-send-email.perl:660
 msgid ""
 "\n"
 "No patch files specified!\n"
 "\n"
 msgstr ""
 
-#: git-send-email.perl:664
+#: git-send-email.perl:673
 #, perl-format
 msgid "No subject line in %s?"
 msgstr ""
 
-#: git-send-email.perl:674
+#: git-send-email.perl:683
 #, perl-format
 msgid "Failed to open for writing %s: %s"
 msgstr ""
 
-#: git-send-email.perl:684
+#: git-send-email.perl:694
 msgid ""
 "Lines beginning in \"GIT:\" will be removed.\n"
 "Consider including an overall diffstat or table of contents\n"
@@ -15309,41 +16769,37 @@ msgid ""
 "Clear the body content if you don't wish to send a summary.\n"
 msgstr ""
 
-#: git-send-email.perl:707
-#, perl-format
-msgid "Failed to open %s.final: %s"
-msgstr ""
-
-#: git-send-email.perl:710
+#: git-send-email.perl:718
 #, perl-format
 msgid "Failed to open %s: %s"
 msgstr ""
 
-#: git-send-email.perl:745
-msgid "To/Cc/Bcc fields are not interpreted yet, they have been ignored\n"
+#: git-send-email.perl:735
+#, perl-format
+msgid "Failed to open %s.final: %s"
 msgstr ""
 
-#: git-send-email.perl:754
+#: git-send-email.perl:778
 msgid "Summary email is empty, skipping it\n"
 msgstr ""
 
 #. TRANSLATORS: please keep [y/N] as is.
-#: git-send-email.perl:786
+#: git-send-email.perl:813
 #, perl-format
 msgid "Are you sure you want to use <%s> [y/N]? "
 msgstr ""
 
-#: git-send-email.perl:815
+#: git-send-email.perl:868
 msgid ""
 "The following files are 8bit, but do not declare a Content-Transfer-"
 "Encoding.\n"
 msgstr ""
 
-#: git-send-email.perl:820
+#: git-send-email.perl:873
 msgid "Which 8bit encoding should I declare [UTF-8]? "
 msgstr ""
 
-#: git-send-email.perl:828
+#: git-send-email.perl:881
 #, perl-format
 msgid ""
 "Refusing to send because the patch\n"
@@ -15352,20 +16808,20 @@ msgid ""
 "want to send.\n"
 msgstr ""
 
-#: git-send-email.perl:847
+#: git-send-email.perl:900
 msgid "To whom should the emails be sent (if anyone)?"
 msgstr ""
 
-#: git-send-email.perl:865
+#: git-send-email.perl:918
 #, perl-format
 msgid "fatal: alias '%s' expands to itself\n"
 msgstr ""
 
-#: git-send-email.perl:877
+#: git-send-email.perl:930
 msgid "Message-ID to be used as In-Reply-To for the first email (if any)? "
 msgstr ""
 
-#: git-send-email.perl:929 git-send-email.perl:937
+#: git-send-email.perl:988 git-send-email.perl:996
 #, perl-format
 msgid "error: unable to extract a valid address from: %s\n"
 msgstr ""
@@ -15373,16 +16829,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:941
+#: git-send-email.perl:1000
 msgid "What to do with this address? ([q]uit|[d]rop|[e]dit): "
 msgstr ""
 
-#: git-send-email.perl:1262
+#: git-send-email.perl:1317
 #, perl-format
 msgid "CA path \"%s\" does not exist"
 msgstr ""
 
-#: git-send-email.perl:1337
+#: git-send-email.perl:1400
 msgid ""
 "    The Cc list above has been expanded by additional\n"
 "    addresses found in the patch commit message. By default\n"
@@ -15396,131 +16852,131 @@ msgid ""
 "\n"
 msgstr ""
 
-#. TRANSLATORS: Make sure to include [y] [n] [q] [a] in your
+#. 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:1352
-msgid "Send this email? ([y]es|[n]o|[q]uit|[a]ll): "
+#: git-send-email.perl:1415
+msgid "Send this email? ([y]es|[n]o|[e]dit|[q]uit|[a]ll): "
 msgstr ""
 
-#: git-send-email.perl:1355
+#: git-send-email.perl:1418
 msgid "Send this email reply required"
 msgstr ""
 
-#: git-send-email.perl:1381
+#: git-send-email.perl:1446
 msgid "The required SMTP server is not properly defined."
 msgstr ""
 
-#: git-send-email.perl:1428
+#: git-send-email.perl:1493
 #, perl-format
 msgid "Server does not support STARTTLS! %s"
 msgstr ""
 
-#: git-send-email.perl:1433 git-send-email.perl:1437
+#: git-send-email.perl:1498 git-send-email.perl:1502
 #, perl-format
 msgid "STARTTLS failed! %s"
 msgstr ""
 
-#: git-send-email.perl:1447
+#: git-send-email.perl:1512
 msgid "Unable to initialize SMTP properly. Check config and use --smtp-debug."
 msgstr ""
 
-#: git-send-email.perl:1465
+#: git-send-email.perl:1530
 #, perl-format
 msgid "Failed to send %s\n"
 msgstr ""
 
-#: git-send-email.perl:1468
+#: git-send-email.perl:1533
 #, perl-format
 msgid "Dry-Sent %s\n"
 msgstr ""
 
-#: git-send-email.perl:1468
+#: git-send-email.perl:1533
 #, perl-format
 msgid "Sent %s\n"
 msgstr ""
 
-#: git-send-email.perl:1470
+#: git-send-email.perl:1535
 msgid "Dry-OK. Log says:\n"
 msgstr ""
 
-#: git-send-email.perl:1470
+#: git-send-email.perl:1535
 msgid "OK. Log says:\n"
 msgstr ""
 
-#: git-send-email.perl:1482
+#: git-send-email.perl:1547
 msgid "Result: "
 msgstr ""
 
-#: git-send-email.perl:1485
+#: git-send-email.perl:1550
 msgid "Result: OK\n"
 msgstr ""
 
-#: git-send-email.perl:1498
+#: git-send-email.perl:1568
 #, perl-format
 msgid "can't open file %s"
 msgstr ""
 
-#: git-send-email.perl:1545 git-send-email.perl:1565
+#: git-send-email.perl:1615 git-send-email.perl:1635
 #, perl-format
 msgid "(mbox) Adding cc: %s from line '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1551
+#: git-send-email.perl:1621
 #, perl-format
 msgid "(mbox) Adding to: %s from line '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1599
+#: git-send-email.perl:1674
 #, perl-format
 msgid "(non-mbox) Adding cc: %s from line '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1624
+#: git-send-email.perl:1699
 #, perl-format
 msgid "(body) Adding cc: %s from line '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1730
+#: git-send-email.perl:1817
 #, perl-format
 msgid "(%s) Could not execute '%s'"
 msgstr ""
 
-#: git-send-email.perl:1737
+#: git-send-email.perl:1824
 #, perl-format
 msgid "(%s) Adding %s: %s from: '%s'\n"
 msgstr ""
 
-#: git-send-email.perl:1741
+#: git-send-email.perl:1828
 #, perl-format
 msgid "(%s) failed to close pipe to '%s'"
 msgstr ""
 
-#: git-send-email.perl:1768
+#: git-send-email.perl:1855
 msgid "cannot send message as 7bit"
 msgstr ""
 
-#: git-send-email.perl:1776
+#: git-send-email.perl:1863
 msgid "invalid transfer encoding"
 msgstr ""
 
-#: git-send-email.perl:1814 git-send-email.perl:1865 git-send-email.perl:1875
+#: git-send-email.perl:1901 git-send-email.perl:1952 git-send-email.perl:1962
 #, perl-format
 msgid "unable to open %s: %s\n"
 msgstr ""
 
-#: git-send-email.perl:1817
+#: git-send-email.perl:1904
 #, perl-format
 msgid "%s: patch contains a line longer than 998 characters"
 msgstr ""
 
-#: git-send-email.perl:1833
+#: git-send-email.perl:1920
 #, perl-format
 msgid "Skipping %s with backup suffix '%s'.\n"
 msgstr ""
 
 #. TRANSLATORS: please keep "[y|N]" as is.
-#: git-send-email.perl:1837
+#: git-send-email.perl:1924
 #, perl-format
 msgid "Do you really want to send %s? [y|N]: "
 msgstr ""